线性模型(Linear Model)是机器学习中应用最广泛的模型,指通过样本 特征的线性组合来进行预测的模型。本系列文章会介绍四种线性模型函数的推导和优化过程。
两分类与多分类
两类分类(Binary Classification)
类别标签y只有两种取值,通常设为{0,1}
线性判别函数,即形如 y = w^T*x + b
分割超平面(hyper plane),由满足f(w,x)=0的点组成
决策边界(Decision boundary)、决策平面(Decision surface):即分分割超平面,决策边界将特征空间一分为二,划分成两个区域,每个区域对应一个类别。
有向距离(signed distance)
多样分类(Multi-class Classification)
分类的类别个数大于2,多分类一般需要多个线性判别函数,但设计这些判别函数有很多方式。eg:
一对其余:属于和不属于
一对一
argmax(改进的一对其余):属于每个类别的概率,找概率最大值
参考:多分类实现方式介绍和在Spark上实现多分类逻辑回归
Logistic回归
LR回归
Logistic回归(Logistic Regression,LR)是一种常见的处理二分类的线性回归模型。
为了解决连续的线性回归函数不适合做分类的问题,引入函数g:R^d -> (0,1)来预测类别标签的后验概率p(y=1 | x)
其中g(.)通常称为激活函数(activation function),其作用是把线性函数的值域从实数区间“挤压”到了(0,1)之间,可以用概率表示。在统计文献中,g(.)的逆函数g(.)^-1也称为联系函数(Link Function)
在逻辑回归中使用Logistic作为激活函数,标签y=1的后验概率为(公式-1):
标签 y=0的后验概率为(公式-2):
将公式-1进行等价变换,可得(公式-3):
其中
为样本x正反例后验概率的比例,称为几率(odds),几率的对数称为对数几率(log odds或者logit),公式-3中第一个表达式,左边是线性函数,logistic回归可以看做是预测值为“标签的对数几率”的线性回归模型,因为Logistic回归也称为对数几率回归(Logit Regression)。
附公式-1到公式-3的推导:
参数学习
LR回归采用交叉熵作为损失函数,并使用梯度下降法对参数进行优化。给定N个训练样本{x_i,y_i},i<=N,使用LR对每个样本进行预测,并用输出x_i的标签为1的后验概率,记为y’_i(x) (公式-4)
由于y_i属于{0,1},样本{x_i,y_i}的真实概率可以表示为(公式-5):
使用交叉熵损失函数,其风险函数为(公式-6):
风险函数R(w)关于参数w的导数为(公式-7):
采用梯度下降算法,Logistic的回归训练过程为:初始化w_0 为0,然后通过下式来更新迭代参数(公式-8)。
其中a是学习率,y_{wt}’是当参数为w_t 时,Logistic回归的输出。
从公式-6可知,风险函数R(w)是关于参数w的连续可导的凸函数,因此除了梯度下降算法外,Logistic还可以使用高阶的优化算法,比如牛顿法来进行优化。
说明:
两个未知数相乘求导:
sigmoid函数求导后为:
参考
https://zhuanlan.zhihu.com/p/44591359
https://blog.csdn.net/wgdzz/article/details/48816307
在这浮躁的社会沉静,用心记录,用心学习!
Be First to Comment