转载请注明出处
逻辑回归(一句话说明)
逻辑回归又称为对数几率回归,是一种用于分类问题的对数线性判别式模型,其形式为参数化的逻辑斯蒂分布。其参数估计可当作最大似然参数估计计算,进而转化为最优化问题。并由于得到的似然函数是一个高阶可导连续凸函数,可使用梯度下降法、牛顿法优化算法求最优解。
引题
上一节,我们介绍了使用线性模型进行回归学习,那现在遇到一种新的机器学习任务分类应该怎么做那?
分类:【男,女】、【优秀、良好、及格、差】等这种将结果分为几个类别。前者属于二分类;后者属于多分类。
设想:找一个单调可微函数将分类任务的真实标签与线性回归模型的预测值联系在一起。
下面以二分类任务介绍逻辑回归。
sigmoid函数
考虑到线性回归模型输出的预测值是实值,但是二分类任务输出标记为 y ∈ 0 , 1 y \in {0,1} y∈0,1,所以我们需要将模型预测值做一次转换。这里使用的函数为sigmoid函数: y = 1 1 + e − x y = \frac{1}{1+e^{-x}} y=1+e−x1
其图像为:
从图可以看出sigmoid函数的值域为[0,1],可以将输入映射为介于0,1之间的数值。这时可以使用分段函数表示假设的输出:
{ H θ ( X ) = 1 , θ T X ≥ 0 H θ ( X ) = 0 , θ T X < 1 \begin{cases} H_\theta(X)=1, \theta^TX\geq0\\ H_\theta(X)=0, \theta^TX<1 \end{cases} {
Hθ(X)=1,θTX≥0Hθ(X)=0,θTX<1
逻辑回归
假设
即: H θ ( X ) = 1 1 + e − θ T X H_\theta(X)=\frac{1}{1+e^{-\theta^TX}} Hθ(X)=1+e−θTX1
实质上是在求取输入空间到输出空间的非线性函数映射。
代价函数
逻辑回归的代价函数为: J θ = 1 m s u m i = 1 m − y i l o g ( h θ ( x i ) ) − ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) J_\theta = \frac{1}{m}sum^m_{i=1}-y^ilog(h_\theta(x^i))-(1-y^i)log(1-h_\theta(x^i)) Jθ=m1sumi=1m−yilog(hθ(xi))−(1−yi)log(1−hθ(xi))
代价函数公式推导(极大似然估计)
令 P ( y = 1 ∣ x , θ ) = h θ ( x ) P(y=1|x,\theta)=h_\theta(x) P(y=1∣x,θ)=hθ(x)
上式表示当给定输入,标签为1的概率,我们将之定义为 h θ ( x ) h_\theta(x) hθ(x)所表示的意义。
当 y = 1 , P ( y ∣ x ) = h θ ( x ) y=1,P(y|x)=h_\theta(x) y=1,P(y∣x)=hθ(x),当 y = 0 , P ( y ∣ x ) = 1 − h θ ( x ) y=0,P(y|x)=1-h_\theta(x) y=0,P(y∣x)=1−hθ(x)。将二者结合一起表示为: P ( y ∣ x ) = h θ ( x