文章目录
- 前言
- 1、logistic模型原理
- 2、LR模型为什么不用MSE做损失函数?
前言
logistic模型是基本线性回归模型的扩展,为了解决其无法对非线性问题分类,进行函数变换得到logistic模型,但logistic模型只能处理二分类问题,softmax在logistic模型的基础上进行改进,可以进行多分类。
1、logistic模型原理
基本线性回归模型公式如下:
其中是参数向量,x是样本,b为偏置项。
为了得到非线性效果,进行函数变换得到对数线性回归模型:
以二分类为例,我们想要得到预测结果为0,1的函数,则需要找到一个能把结果映射到0到1范围内的映射函数,同时该映射函数导数性质要好,能构造出损失函数,并通过求导优化参数。sigmoid函数完全满足以上条件,其表达式如下:
设h(x)=sigmoid(x), 可推出sigmoid()函数有如下导数性质:
推导过程如下:
因此Logistic回归模型可以表示如下:
设
合并上式可得:
其中,y取值0或1,构造似然函数如下:
似然函数取最大既可求得,最优的w值。为了方便求解,对上式加负号并取对数转为求函数的极小值,即可得到交叉熵损失:
记,上式对w求导:
其中,,代入可得:
采用梯度下降法对参数进行更新,经过多次迭代即可求得最优参数w。
相对于原始的线性模型,Logistic模型通过sigmoid函数映射后,将数据压缩到了0~1之间,因此可以很好的解决异常点分类问题。
过拟合与正则项
为了防止模型过拟合,可以通过添加正则项的方式解决该问题,常用的正则项有:L1正则,L2正则,或结合L1和L2正则的弹性网。
添加L1正则的损失函数如下:
添加L2正则的损失函数如下:
添加弹性网Elastic net后的损失函数如下:
其中,n为样本数,d为属性或特征数。, 。第一部分为经验风险(原损失函数),第二部分为结构风险(正则项)。
2、LR模型为什么不用MSE做损失函数?
- 当 的值稍微大些或稍微小写的时候, 很容易趋近于1或0,造成会很小,导致
- 损失函数的极小值点特别多,与特征维度的平方成正相关,这对初始化 w 就有很大的要求