逻辑回归的两种数学表达

LR两种表达

表达一

假设样本集$\brace{(\x^{(i)},y^{(i)})}_{i=1}^m$ ,特征$\x\in \R^n$,类别$y\in\brace{0,1}$,则LR模型:

所谓“几率”(odds),反映了$x$作为正例的相对可能性。对几率取对数则得到“对数几率”(log odds,即logit),是一个线性函数:

设 $p(y=1\vert\x,\w)=\pi(\x), \quad p(y=0\vert\x,\w)=1-\pi(x)$,则MLE:

单个样本求梯度:

CS229第一章P18是这种写法: http://cs229.stanford.edu/notes/cs229-notes1.pdf

表达二

假设样本集$\brace{(\x^{(i)},y^{(i)})}_{i=1}^m$ ,特征$\x\in \R^n$,类别$y\in\brace{-1,1}$,则LR模型:

MLE:

单个样本求梯度:

Spark里的一个LR demo(无正则):

val data = spark.textFile(...).map(readPoint).cache()
var w = Vector.random(D)
for (i <- 1 to ITERATIONS) {
  val gradient = data.map(p =>
    (1 / (1 + exp(-p.y*(w dot p.x))) - 1) * p.y * p.x
  ).reduce(_ + _)
  w -= gradient
}
println("Final w: " + w)

参考