逻辑回归(Logistic Regression)
逻辑回归(Logistic Regression)
一、分类问题
1.1 举例(二元)
①判断一封电子邮件是否是垃圾邮件
②判断一次金融交易是否是欺诈
③判断一个肿瘤是恶性的还是良性的
1.2逻辑回归算法
将所有训练样本的标签y都等于0或1
二、假说表示
2.1 线性模型
①当hθ ≥ 0.5时,预测y=1
②当hθ<0.5时,预测y=0
2.2 逻辑回归
逻辑回归模型假设:hθ(x)=g(θTX)
X:特征向量
g:一个常用的逻辑函数,S形函数,公式为:g(z)=
综上,
hθ(x)用于对给定的输入变量,根据选择的参数计算输出变量=1的可能性,即:hθ(x)=P(y=1|x;θ)
例如,对于给定的x,通过确定的参数计算得出hθ(x)=0.7,则表示有70%的几率y为正向类,相应的y为负向类的几率为1-0.7=0.3。
我们将因变量可能属于的两个类分别成为负向类和正向类,则因变量y∈{0,1},其中0表示负向类,1表示正向类。
三、判定边界
3.1 模型
在逻辑回归中,我们预测:
①当hθ ≥ 0.5时,预测y=1
②当hθ<0.5时,预测y=0
根据图像可知:
当 z = 0 时 g(z)= 0.5
当 z > 0 时 g(z)> 0.5
当 z < 0 时 g(z)< 0.5
因为z=θTX,即:
θTX ≥ 0 时,预测 y = 1
θTX < 0 时,预测 y = 0
3.2 举例
①
θ=[-3,1,1].
当-3+x1+x2=0,即x1+x2=3,这条线即为模型的分界线,将预测为1的区域和预测为0的区域分隔开
②
假设函数如下图所示,θ=[-1,0,0,1,1],-1+x12+x22=0,x12+x22=1,即那么得到的判定边界是圆点在原点且半径为1的圆形。
四、代价函数
4.1 定义
线性回归的代价函数为:
重新定义逻辑回归的代价函数:
其中:
hθ(x)与Cost(hθ(x),y)之间的关系如下图所示。
4.2 Cost化简带入
Cost(hθ(x),y)可化简为:
带入函数得:
4.3 梯度下降
用梯度下降算法求使代价函数最小的参数:
求导后得:
注意:
线性回归中的梯度下降算法中hθ(x)=θTX
逻辑回归中的梯度下降算法中hθ(x)=g(θTX)
具体可查看上述分析
五、简化的成本函数和梯度下降
重述
逻辑回归的代价函数
简化Cost之后
得到逻辑回归的代价函数
根据代价函数,拟合函数,试图寻找让J(θ)取得最小值的参数θ,即使用梯度下降算法。
将J(θ)带入后求导,得到:
注意:
对于线性回归假设函数:hθ(x)= θTX,
对于逻辑函数假设函数:
同时需要考虑到特征缩放
六、多类别分类
如图,用三种不同的符号代表三个类别,使用学习算法进行分类。
算法思想:“一对余”方法
方法:将训练集分成三个二元分类问题。
①新建一个“伪”训练集,类型2,3定义为负类,类型1定义为正类(y=1),该模型记作hθ(1)(x)
②类似的选择另一个类标记为正向类(y=2),将这个模型记作hθ(2)(x),以此类推。
③最后,在需要做预测时,将所有的分类机都运行一遍,对每一个输入变量,选择最高可能性的输出变量