吴恩达-机器学习课程--06: Logistic Regression的学习总结:
逻辑回归是一种分类算法
二元分类问题中,y为0或1,用线性回归模型并不适用,因为hθ(x)值可能远大于1或远小于0。
我们希望假设函数hθ(x)的值在0到1之间。
在逻辑回归中,我们设置
其中g(z) = 1/(1 + e^-z),被称为sigmoid fuction或logistic function,如下图所示,满足值位于0到1之间的性质:
sigmoid fuctiong(z)假设函数hθ(x)的值可解释为:当输入样本x时,y=1的概率估计值
用概率形式可书写为:hθ(x) = P(y=1|x ;θ)
易知:P(y=1|x ; θ) +P(y=0|x ;θ) = 1
P(y=0|x ;θ) = 1 - P(y=1|x ;θ)
判定边界(decision boundary)
假设hθ(x) = P(y=1|x ;θ)>=0.5时,预测y=1,hθ(x) = P(y=1|x ;θ)<0.5时,预测y=0。
hθ(x)=g((θ^Tx)),g(z) = 1/(1 + e^-z)根据g(z)的图形可知:
z>=0,g(z)>=0.5,即θ^Tx>=0,hθ(x)>=0.5,预测y=1。z<0同理。
hθ(x) =g(θ0+θ1x1+θ2x2)假设已经计算出θ0=-3、θ1= 1、θ2= 1
θT = [-3,1,1]
当θ^Tx>=0,即-3x0+x1+x2>= 0(x0=1),即x1 + x2>= 3时,hθ(x)>=0.5,预测y=1
可通过下图直观显示:
决策边界为x1 + x2= 3这条直线,对应hθ(x)=0.5
决策边界如果假设函数包含高阶多项式,如hθ(x) = g(θ0 +θ1+θ3 +θ4),决策边界也可能是非线性的或很复杂的。
逻辑回归的代价函数
线性回归代价函数如下:
线性回归代价函数我们定义J(θ)如下:
costg(z) = 1/(1 + e^-z),并不是简单的线性函数。导致J(θ)最终为非凸函数,有很多局部最优值。而我们希望 J(θ)是凸函数,以便在使用梯度下降法时,可以得到全局最优值。
逻辑回归的代价函数如下:
逻辑回归的代价函数y=1 的情况:画出-log(hθ(x) )如下图,(0<=hθ(x) <=1)
-log(hθ(x))当hθ(x)=1,y=1时,cost=0,而hθ(x)=1,y=0时,cost趋于无穷,用非常大的代价惩罚这个算法。
y=0的情况相似,未作记录。
简化代价函数:
逻辑回归代价函数可简化为:,
梯度下降法:
简化后代价函数如下:
代价函数虽然hθ(x)=g((θ^Tx))和线性回归的假设函数不同,但忽略求导过程,最终式子如下,和线性回归的式子的相同。
梯度下降法求θ逻辑回归解决多类别分类问题:
可将上图分成三个二元分类的问题,训练出三个分类器
分别在三个分类器中输入x值,选择hθ(x)值最大的那个。
网友评论