逻辑回归全攻略:原理、实现与评估指标深度解析

逻辑回归算法

在分类任务中最典型的算法就是逻辑回归算法,主要应用于二分类的场景.

对应sklearn.linear_model.LogisticRegressionAPI

什么是逻辑回归算法呢?

就是将线性回归计算的连续值使用Sigmid函数将其转化成0-1之间的正类概率值.

Sigmoid函数公式:

最小化交叉熵损失函数

最小化交叉熵损失函数本质就是伯努利分布函数对其求-对数得到最小化损失.

交叉熵是衡量两个概率分布(真实分布y和预测分布p)差异的指标

最小化交叉熵公式:

API讲解

sklearn.linear_model.LogisticRegression(solver='liblinear',C=1.0)

  1. solver损失函数优化方法:
    • liblinear对小数据集场景训练速度更快,sag,saga对大数据集更快
    • sag,saga支持L2正则化或者没有正则化
    • liblinear和saga支持L1正则化
  2. C 正则化力度,越小正则化越强,惩罚力度也越大.模型更倾向欠拟合

分类问题评估

了解分类问题之前需要学习到什么是混淆矩阵

混淆矩阵

什么是混淆矩阵呢?

混淆矩阵就是对模型的预测结果与实际标签的对比情况

精确率: 是指预测为正例中真正正例的占比

对应sklearn.metrics.precision_score

计算公式: P = TP/(TP+FP)

召回率: 是指真正正例中被预测为正例的占比

对应sklearn.metrics.recall_score

计算公式: P = TP/(TP+FN)

f1-分数: 对精确率和召回率的综合

对应sklearn.metrics.f1_score

计算公式: P = 2 ∗Precision ∗Recall/(Precision+Recall)

ROC曲线和AUC面积

对应sklearn.metrics.roc_auc_score

了解ROC曲线之间需要明白真正率和假正率是什么?

真正率TPR和假正率FPR

  1. 正样本中被预测为正样本的概率TPR (True Positive Rate)
  2. 负样本中被预测为正样本的概率FPR (False Positive Rate)
    通过这两个指标可以描述模型对正/负样本的分辨能力

什么是ROC曲线呢?

ROC曲线是一种评估分类模型性能的一种可视化工具,他的X轴是FPR,Y轴是TPR,

它可以将模型在不同阈值下的表现以曲线的形式展示.

  • 点(0, 0) :所有的负样本都预测正确,所有的正样本都预测错误。相当于点的(FPR值0, TPR值0)
  • 点(1, 0) :所有的负样本都预测错误,所有的正样本都预测错误。相当于点的(FPR值1, TPR值0)
    (1, 0) - 最不好的效果!!!
  • 点(1, 1):所有的负样本都预测错误,表示所有的正样本都预测正确。相当于点的(FPR值1,TPR值1)
  • 点(0, 1):所有的负样本都预测正确,表示所有的正样本都预测正确。相当于点的(FPR值0,TPR值1)
    (0, 1) - 最好的效果!!!

什么是AUC呢?

AUC其实就是ROC曲线与X轴和X=1两条直线相交的面积,

当AUC=0的时候,是模型最差的时候

当AUC=0.5的时候,表示模型现在类似于抛硬币每次都是0.5的概率随机抽样

当AUC=1的时候,是模型最好的时候,此时模型完美判断出正例和假例

分类评估报告

对应sklearn.metrics.classification_report(y_true, y_pred, labels=\[\], target_names=None )

y_true:真实目标值

y_pred:估计器预测目标值

labels:指定类别对应的数字

target_names:目标类别名称

return:每个类别精确率与召回率

它可以直观每个类别的数量以及精确率和召回率还有准确率.

效果如下:

其中macro avg: 宏平均,就是对每个分类指标的简单平均值

weighted avg: 加权平均,考虑类别样本数后的平均值

相关推荐
营养充电站3 小时前
VS Code Git 工作树:解锁多分支并行开发的高效体验
leetcode·决策树·逻辑回归·散列表·模拟退火算法
晨之清风10 天前
线性回归与逻辑回归的5折交叉验证
逻辑回归·线性回归·5折交叉验证
2601_9609067211 天前
一致行动人合计持股比例变动超过1%整数倍
人工智能·逻辑回归·爬山算法·散列表·启发式算法·广度优先
骊城英雄12 天前
彩笔运维勇闯机器学习--逻辑回归
运维·机器学习·逻辑回归
青山木15 天前
Hot 100 --- 电话号码的字母组合
java·数据结构·算法·leetcode·逻辑回归
孤魂23320 天前
逻辑回归算法
算法·机器学习·逻辑回归
金融小师妹1 个月前
AI多因子模型解析PPI信号:PPI数据降温紧缩加息预期,推动黄金回升——机器学习宏观预测框架
大数据·逻辑回归·线性回归
幂丽管理8881 个月前
新版通达信顶天立地1主1副1选股套装工具
elasticsearch·逻辑回归·启发式算法·memcached
想会飞的蒲公英1 个月前
逻辑回归为什么叫回归,却用来做分类
人工智能·python·分类·回归·逻辑回归
星马梦缘1 个月前
机器学习与模式识别 第二章 机器学习基本定义与概述 模拟卷及答案
人工智能·机器学习·逻辑回归·线性回归