逻辑算法回归算法梳理2

本文主要探讨了逻辑回归与线性回归的区别,如变量分布、因变量类型和线性关系的要求。逻辑回归作为广义线性模型的一种,适用于二分类问题。介绍了逻辑回归的原理,包括sigmoid函数和损失函数的优化方法。还涉及模型评估指标,如错误率、精度、查准率、查全率和F1分数,以及ROC曲线和AUC。文章还讨论了逻辑回归的优缺点,如鲁棒性好但易欠拟合,并提出了解决样本不均衡问题的策略,如欠采样、过采样和阈值移动。最后,概述了Sklearn库中LogisticRegression的参数配置。
摘要由CSDN通过智能技术生成

逻辑回归算法梳理2

 

  1.        逻辑回归与线性回归的联系和区别

——线性回归要求变量服从正态分布,logistic回归对变量分布没有要求;

——线性回归要求因变量是连续性数值变量,而logistic回归要求因变量是分类型变量;

——线性回归要求自变量和因变量呈线性关系,而logistic回归不要求自变量和因变量呈线性关系;

——logistic回归是分析因变量取某个值的概率与自变量的关系,而线性回归是直接分析因变量与自变量的关系
logistic回归与线性回归都属于广义线性模型(generalized linear model),不同的就是因变量不同,如果是连续的,就是多重线性回归,如果是二项分布,就是logistic回归。logistic回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释。所以实际中最为常用的就是二分类的logistic回归。

  1.        逻辑回归的原理

逻辑回归是利用回归类似的方法来解决分类问题。假设有一个二分类问题,输出y{0,1},而线性模型(下文将展示这个模型)的的预测值z是实数值,我们希望找到一个阶跃函数将实数z映射为{0,1},这样我们就能很好的处理分类问题了。用对数几率函数sigmoid函数:https://camo.githubusercontent.com/c1670bcffcf0971f22313e6d27832aae4ca0be6e/687474703a2f2f6c617465782e636f6465636f67732e636f6d2f6769662e6c617465783f67287a293d2535436672616325374231253744253742312b652535452537422d7a253744253744

  1.        逻辑回归损失函数推导及优化

 

优化:梯度下降;向量化

  1.        正则化与模型评估指标

正则化:过拟合的解决方法:减少模型复杂度(正则化)、增加训练集个数。

正则化以最小化损失和复杂度为目标(结构风险最小化),对逻辑回归来说可以在目标函数(经验风险)中加上一个λ*正则化项(L1或L2范数)。

模型评估指标:

错误率:分类错误的样本数/样本总数

精度:分类正确的样本数/样本总数

查准率/准确率(precision):P = TP/(TP+FP),即正确预测的正例数 /预测正例总数

查全率/召回率(recall):R = TP/(TP+FN),即正确预测的正例数 /实际正例总数

F1:F1=2PR/(P+R),即查准率和查全率的调和平均

ROC曲线:纵轴是“真正例率”(TPR = TP/(TP+FN)),横轴是“假正例率”(FPR = FP/(TN+FP))

AUC:可通过对ROC曲线下各部分面积求和而得,考虑样本预测的排序质量

  1.        逻辑回归的优缺点

优点:1)适合需要得到一个分类概率的场景。2)计算代价不高,容易理解实现。LR在时间和内存需求上相当高效。它可以应用于分布式数据,并且还有在线算法实现,用较少的资源处理大型数据。3LR对于数据中小噪声的鲁棒性很好,并且不会受到轻微的多重共线性的特别影响。(严重的多重共线性则可以使用逻辑回归结合L2正则化来解决,但是若要得到一个简约模型,L2正则化并不是最好的选择,因为它建立的模型涵盖了全部的特征。)

 缺点:1)容易欠拟合,分类精度不高。2)数据特征有缺失或者特征空间很大时表现效果并不好。

  1.        样本不均衡问题解决办法

欠采样(undersampling):去除一些反例使得正、反例数目接近。不能随机丢弃反例,比如可以通过EasyEnsemble算法,利用集成学习机制将反例划分为若干个集合供不同学习器使用,这样看来对每个学习器都进行了欠采样,但是在全局看来却不会丢失重要信息。

过采样(oversampling):增加一些正例使得正、反例数目接近。不能简单对正例样本进行重复采样,可以通过SMOTE算法对训练集的正例进行插值来产生额外的正值

阈值移动(threshold-moving):直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,基于样本中正反例比例对预测值进行调整。

 

  1.        Sklearn参数

Sklearn.linear_model.LogisticRegression

(penalty=’l2’, dual=False, tol=0.0001, C=1.0, fit_intercept=True,intercept_scaling=1, class_weight=None, random_state=None, solver=’liblinear’, max_iter=100, multi_class=’ovr’,verbose=0, warm_start=False, n_jobs=1)

 

penalty:’l1’ or ‘l2’ ,默认’l2’ #惩罚

dual:bool 默认False ‘双配方仅用于利用liblinear解算器的l2惩罚。’

tol: float, 默认: 1e-4 ‘公差停止标准’

C:float 默认:1.0 正则化强度, 与支持向量机一样,较小的值指定更强的正则化。

fit_intercept: bool 默认:True 指定是否应将常量(a.k.a. bias或intercept)添加到决策函数中。

intercept_scaling:float ,默认:1 仅在使用求解器“liblinear”且self.fit_intercept设置为True时有用。 在这种情况下,x变为[x,self.intercept_scaling],即具有等于intercept_scaling的常数值的“合成”特征被附加到实例矢量。 截距变为intercept_scaling * synthetic_feature_weight

class_weight: dict or ‘balanced’ 默认:None

random_state:int,RandomState实例或None,可选,默认值:None

solver:{‘newton-cg’,’lbfgs’,’liblinear’,’sag’,’saga’}

max_iter: int 默认:100 仅适用于newton-cg,sag和lbfgs求解器。 求解器收敛的最大迭代次数。

muti_class:str,{‘ovr’:’multinomial’},默认:’ovr’

verbose: int,默认:0 对于liblinear和lbfgs求解器,将verbose设置为任何正数以表示详细程度。

warm_start:bool 默认:False

n_jobs: int,默认:1

 

 

逻辑回归是一种分类算法,它的主要思想是根据现有数据对分类边界线(Decision Boundary)建立回归公式,以此进行分类。 与线性回归相似,逻辑回归通过一组预测器变量来预测特征与输出结果。但逻辑回归更适用于二分类问题,输出结果为0或1。通过方程系数,我们可以估计模型中自变量的比率。这使得逻辑回归可以用于确定某个事件的可能性。 逻辑回归和多重线性回归的区别在于因变量的不同。多重线性回归的因变量只有一个,而逻辑回归的因变量可以是二分类,也可以是多分类。广义线性模型家族中的模型基本形式相似,主要区别在于因变量的不同。例如,如果因变量是连续的,那么就是多重线性回归;如果因变量是二项分布,那就是逻辑回归;如果因变量是泊松分布,那就是泊松回归。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [逻辑回归算法梳理](https://blog.csdn.net/pandawang830/article/details/88867221)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [逻辑回归算法](https://blog.csdn.net/qq_39691463/article/details/119257621)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值