七天算法梳理之逻辑回归
逻辑回归与线性回归的联系与区别
逻辑回归事实上是将线性回归的输出进行了非线性函数的映射,而这个映射即是:
逻辑回归的原理
逻辑回归的主要原理是将之前的线性空间通过非线性函数进行再输出,让对应的输出范围集中在要么靠近0,要么靠近1的区域内,从而完成将对应的数据分类的目的
3、逻辑回归损失函数推导及优化
假设
P(y=1|x,θ)=hθ(x)
P(y=0|x,θ)=1−hθ(x)
则有
P(y|x,θ)=hθ(x)y(1−hθ(x))1−y
很容易得到似然函数表达式:
L(θ)=∏i=1m(hθ(x(i)))y(i)(1−hθ(x(i)))1−y(i)
取对数得:
J(θ)=−lnL(θ)=−∑i=1m(y(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i))))
4、 正则化与模型评估指标
逻辑回归也需要处理过拟合的问题那么正则化的方法提供了一个很好地思路
逻辑回归的L1正则化的损失函数表达式如下,相比普通的逻辑回归损失函数,增加了L1的范数做作为惩罚,超参数α作为惩罚系数,调节惩罚项的大小。
二元逻辑回归的L1正则化损失函数表达式如下:
J(θ)=−Y⊙loghθ(X)−(E−Y)⊙log(E−hθ(X))+||θ||1
其中||θ||1为θ的L1范数。
二元逻辑回归的L2正则化损失函数表达式如下:
J(θ)=−Y⊙loghθ(X)−(E−Y)⊙log(E−hθ(X))+12α||θ||22
其中||θ||2为θ的L2范数。
5、逻辑回归的优缺点
优点:可以给出概率,解释性较好
缺点:容易欠拟合,对于非线性的特征还需要进一步的转化,
6、样本不均衡问题解决办法
类别不平衡问题指的是当正反例的数目偏差过大的时候,所造成的困扰
类别不平衡的一个基本策略是-再缩放(rescaling)
主要有三个途径:
- 对训练集中的反类样例进行欠采样,去除一些反例
- 对训练集里的正例进行过采样
直接学习但在预测的时候进行阀值的改变
类别不平衡学习通常是较小类的代价更高,sklearn参数
逻辑回归具体的位置在:
from sklearn.linear_model import LogisticRegression
主要有C penalty tol solver 等几个参数
C:正则化系数的倒数,默认为1
penalty:用来指定正则化的参数
tol:迭代终止的误差范围
solver:决定使用什么样的优化方法
版权声明:本文由littleji.com创作并发表,转载请注明作者及出处,欢迎关注公众号:littleji_com
本文遵守CC BY0SA 4.0
if you have any questions, please leave a message behind or give an issue
本文链接为:https://blog.littleji.com/2018/12/22/20181222MLReview2/