LR(Logistic Regression)算法是一种经典的分类算法,其原理如下:
假设函数:LR算法假设分类结果服从逻辑分布,即Sigmoid函数,其形式为:hθ(x)=11+e−θTxhθ(x)=1+e−θTx1 其中,θθ是模型参数,xx是输入特征向量。
损失函数:LR算法使用最大似然估计方法来确定模型参数。对于给定的训练数据集,假设样本的标签为yiyi,则样本的似然函数为:L(θ)=∏i=1mhθ(xi)yi(1−hθ(xi))1−yiL(θ)=∏i=1mhθ(xi)yi(1−hθ(xi))1−yi 对数似然函数为:l(θ)=∑i=1m[yilog(hθ(xi))+(1−yi)log(1−hθ(xi))]l(θ)=∑i=1m[yilog(hθ(xi))+(1−yi)log(1−hθ(xi))] 损失函数为:J(θ)=−1ml(θ)J(θ)=−m1l(θ)
梯度下降:LR算法使用梯度下降法来最小化损失函数。梯度下降的更新公式为:θj=θj−α∂J(θ)∂θjθj=θj−α∂θj∂J(θ) 其中,αα是学习率,∂J(θ)∂θj∂θj∂J(θ)是损失函数对参数θjθj的偏导数。
正则化:为了防止过拟合,LR算法通常会使用正则化方法。常用的正则化方法有L1正则化和L2正则化。
LR算法的主要思想是通过训练数据集来确定模型参数,从而实现对新样本的分类。它具有简单、易于实现、计算量小等优点,在实际应用中得到了广泛的应用。
、算法原理
LR算法:通过线性映射和sigmoid转换确定{0,1}间条件概率。
1.1 模型表达(Objective Function)
逻辑回归也被称为对数几率回归,用条件概率分布的形式表示 P(Y|X),这里随机变量 X 取值为 n 维特征向量,例如x=(x(1),x(2),...,x(n))x=(x(1),x(2),...,x(n))。
当Y 取值为 1时:
当Y 取值为 0时:
等价地,对于z=wTx+b,通过Sigmoid函数实现实数值z到0/1值概率的转化:
or
1.2 损失函数(Cost Function)
1.3 模型求解
二、超参数(结合sklearn. linear_model.LogisticRegression)
2.1 penalty(正则化策略, default ='l2' )
如果为'l2',则优化目标函数为:为极大似然函数。
如果为'l1',则优化目标函数为:为极大似然函数。
2.2 c(惩罚系数, default = 1)
c指定了惩罚系数的倒数。如果它的值越小,则正则化越大。
2.3 solver(最优化算法,default=’liblinear