7.3 分类 —— 预测一个类别

本章学习目标

  • 理解分类的本质:预测一个离散的类别
  • 掌握逻辑回归、决策树分类、随机森林分类的基本思想
  • 掌握分类模型的核心评估指标(准确率、精确率、召回率、F1、混淆矩阵、ROC-AUC)
  • 核心能力:知道什么时候用分类、如何评估分类模型好坏

一、分类是什么?

1.1 分类的定义

分类 是一种监督学习算法,用于预测数据属于哪个类别

对比维度 回归 分类
预测输出 数字(连续) 标签(离散)
输出形式 "65000元" "会流失/不会流失"
问题类型 "是多少?" "是哪一类?"

1.2 分类能解决什么问题?

业务场景 分类应用 输出
银行 判断是否批准贷款 批准 / 拒绝
营销 预测用户是否会响应活动 会响应 / 不会响应
风控 识别欺诈交易 欺诈 / 正常
客服 工单自动分类 投诉 / 咨询 / 售后
医疗 辅助诊断 患病 / 健康

1.3 分类的类型

类型 定义 例子
二分类 只有两个类别 流失/不流失、垃圾邮件/正常邮件
多分类 三个及以上类别 手写数字识别(0-9)、新闻分类

本章聚焦最常用的二分类问题。

1.4 一个生活化的例子:邮件分类

复制代码
输入(特征)                        输出(类别)
发件人:unknown@xxx.com      →    
邮件中包含"中奖"一词        →    模型    →    垃圾邮件
邮件中包含"免费"一词        →    
有可疑链接                  →    

这就是一个二分类问题:垃圾邮件 vs 正常邮件。

二、逻辑回归

2.1 为什么叫"逻辑回归"?

这个名字容易让人困惑------它叫"回归",但做的是分类

关键理解:逻辑回归先计算一个"可能性分数"(0到1之间的连续值),然后根据这个分数决定类别。

2.2 逻辑回归的核心思想

一句话概括:计算一个"是"的概率(0到1之间),概率大于0.5就归为正类,小于0.5归为负类。

工作原理(三步走)

步骤 说明 二手车例子的类比
1. 线性组合 把特征加权求和 分数 = 1.2×车龄 + 0.8×里程 + ...
2. 转换为概率 用Sigmoid函数压缩到0-1之间 分数100 → 概率0.95
3. 分类决策 概率大于0.5 → 正类 概率0.95 > 0.5 → "会流失"

2.3 逻辑回归的输出解读

输出形式:概率值(0到1之间)。

输出概率 含义
0.95 95%的把握是正类
0.60 60%的把握是正类
0.30 30%的把握是正类(即70%把握是负类)

业务价值:概率比单纯的"是/否"更有价值------你可以排序、设置不同阈值。

2.4 逻辑回归的优缺点

优点 缺点
输出概率,可解释性强 只能学习线性决策边界
简单快速,不易过拟合 对非线性关系效果差
特征重要性可解释 需要特征独立
工业界应用广泛 ---

2.5 什么时候用逻辑回归?

适合 不适合
需要解释"为什么" 存在明显的非线性关系
二分类基线模型 特征高度相关
快速验证 类别极度不平衡

三、决策树分类

3.1 核心思想

和回归树一样,只是叶子节点输出类别(而不是数值)。

分类示例

复制代码
                所有用户
                    │
        ┌───────────┴───────────┐
        │   活跃天数 > 5天?     │
        │                       │
      是 ↓                       ↓ 否
     ┌─────┐                  ┌─────┐
     │活跃用户│                │不活跃用户│
     └──┬──┘                  └──┬──┘
        │                        │
   ┌────┴────┐              ┌────┴────┐
   │消费>100元?│              │注册>30天?│
   │         │              │         │
 是 ↓       ↓ 否          是 ↓       ↓ 否
┌─────┐  ┌─────┐        ┌─────┐  ┌─────┐
│高价值│  │中价值│        │潜在 │  │流失 │
│ 用户│  │ 用户│        │ 用户│  │ 用户│
└─────┘  └─────┘        └─────┘  └─────┘
     流失预测               激活策略

3.2 决策树分类的优缺点

优点 缺点
规则清晰,业务可理解 容易过拟合
可处理非线性关系 对数据微小变化敏感
无需特征缩放 类别不平衡时表现差

四、随机森林分类

4.1 核心思想

和回归森林一样:多棵决策树投票决定类别。

复制代码
         ┌─────┐
树1 ───→│ 流失 │
         ├─────┤
树2 ───→│ 正常 │  ──→ 投票 ──→ 最终结果:流失(3票对2票)
         ├─────┤
树3 ───→│ 流失 │
         ├─────┤
树4 ───→│ 正常 │
         ├─────┤
树5 ───→│ 流失 │
         └─────┘

4.2 随机森林分类的优缺点

优点 缺点
预测精度高 可解释性差
不容易过拟合 训练慢
输出特征重要性 内存占用大
处理非线性 类别不平衡需特殊处理

五、分类模型评估指标

5.1 核心问题:准确率够用吗?

准确率不一定是好的评估指标,尤其是在不平衡数据下。

一个极端例子

  • 1000个用户,20个流失(2%流失率)
  • 一个"傻瓜模型"把所有用户都预测为"不流失"
  • 准确率 = 980/1000 = 98%!

结论:准确率98%看起来很厉害,但这个模型完全没有识别出任何一个流失用户。我们需要更全面的评估指标。

5.2 混淆矩阵 ------ 所有指标的基础

复制代码
                真实情况
             正类    负类
           ┌─────┬─────┐
预测正类   │ TP  │ FP  │
           ├─────┼─────┤
预测负类   │ FN  │ TN  │
           └─────┴─────┘
缩写 全称 含义 流失预测例子
TP True Positive 预测正确------正类 预测会流失,真的流失了 ✅
TN True Negative 预测正确------负类 预测不会流失,真的没流失 ✅
FP False Positive 预测错误------误报 预测会流失,实际没流失 ❌
FN False Negative 预测错误------漏报 预测不会流失,实际流失了 ❌

5.3 四个核心指标

指标 公式 问的问题 流失预测例子
准确率 (TP+TN)/(TP+TN+FP+FN) 所有预测中,多少对了? 98%
精确率 TP/(TP+FP) 预测会流失的人中,多少真的流失了? 80%
召回率 TP/(TP+FN) 真正流失的人中,我抓住了多少? 60%
F1分数 2×P×R/(P+R) 精确率和召回率的调和平均 68%

5.4 精确率 vs 召回率 ------ 业务视角

这是一个权衡(Trade-off)。

场景 更看重什么 为什么
欺诈检测 召回率 宁可误报几个正常交易,也不能漏掉欺诈
垃圾邮件过滤 精确率 宁可漏掉几封垃圾邮件,也不能把正常邮件归为垃圾
流失预警 召回率 宁可误报,也要抓住真正要流失的用户
疾病筛查 召回率 宁可误诊,也不能漏掉患者

5.5 ROC曲线和AUC

混淆矩阵和上面的指标依赖一个"阈值"选择。不同阈值会得到不同的精确率/召回率。

ROC曲线:展示模型在所有阈值下的表现------真正率(TPR) vs 假正率(FPR)。

曲线特征 含义
曲线下的面积(AUC) 数值越大(越接近1),模型越好
AUC = 0.5 跟瞎猜没区别
AUC > 0.7 一般可用
AUC > 0.8 良好
AUC > 0.9 优秀

业务价值 :AUC不依赖阈值选择,是衡量模型排序能力的综合指标。

六、分类算法对比总结

对比维度 逻辑回归 决策树 随机森林
核心思想 计算概率 层层切分 多棵树投票
可解释性 ⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐
预测精度 ⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐
过拟合风险
非线性处理
类别不平衡 一般 一般(可用class_weight)

如何选择?

你的需求 推荐算法
快速基线,需要可解释 逻辑回归
业务需要清晰规则 决策树
追求最高精度 随机森林

七、实战案例:客户流失预测预览

7.1 问题定义

电信运营商希望预测哪些客户可能会流失,以便提前干预。

项目 内容
问题类型 二分类
标签 是否流失(是/否)
特征 使用时长、月费、套餐类型、投诉次数等

7.2 模型训练与评估

模型 准确率 精确率 召回率 AUC
逻辑回归 0.82 0.65 0.55 0.78
随机森林 0.85 0.72 0.62 0.84

7.3 业务应用

输出:每个用户的流失概率,例如:

用户 流失概率 干预策略
用户A 0.92 赠送优惠券,专属客服回访
用户B 0.65 推送满意度调查,了解问题
用户C 0.18 暂不干预

八、如何向AI描述分类建模需求

你的需求 你应该这样告诉AI
训练模型 "用随机森林训练一个客户流失预测分类模型"
评估模型 "输出混淆矩阵、精确率、召回率、F1、AUC"
不平衡处理 "数据中流失用户只占5%,用class_weight处理不平衡"
输出概率 "输出每个用户的流失概率,按概率从高到低排序"
对比模型 "同时训练逻辑回归和随机森林,对比它们的AUC"

九、本章总结

分类核心概念速记

概念 一句话
分类 预测"是哪一类"
逻辑回归 先算概率,再定类别
混淆矩阵 评估的基础
精确率 预测为正的里面,有多少是对的
召回率 真正的正例里面,抓到了多少
F1 精确率和召回率的调和平均
AUC 模型排序能力(不依赖阈值)

评估指标选择速记

场景 看什么
快速汇报 准确率(如果数据平衡)
欺诈/流失预警 召回率
垃圾邮件过滤 精确率
模型综合比较 AUC

核心心法

"分类问题中,准确率往往是最具欺骗性的指标。在不平衡数据上,一定要看精确率、召回率和AUC。"

十、思考题

  1. 一个刷脸门禁系统,目标是"只有本人才能进入"。你希望这个系统精确率高还是召回率高?为什么?

  2. 一个罕见病筛查模型,发病率仅为0.1%。如果模型准确率达到99.9%,你觉得这个模型好吗?为什么?

  3. 流失预测模型中,召回率=80%,精确率=30%。如果成本允许,你会把这个模型用于实际营销吗?为什么?

  4. 逻辑回归和决策树,哪个更可能捕捉到"青年用户+高消费+低活跃度"这种组合规则?为什么?

  5. 某模型AUC=0.95,另一个模型AUC=0.85。你能说第一个模型一定比第二个好吗?还需要考虑什么?


下一节预告:7.4 聚类 ------ 发现自然分组 ------ 当没有"正确答案"时,如何让数据自己说话,发现隐藏的用户群体?

相关推荐
babe小鑫2 小时前
咨询行业转行数据分析指南
数据挖掘·数据分析
web守墓人2 小时前
【深度学习】Pytorch gpu加速原理探究
人工智能·pytorch·深度学习
babe小鑫2 小时前
2026金融行业学数据分析的价值
金融·数据挖掘·数据分析
落叶无情2 小时前
从语义驱动到认知架构驱动:论ICEF框架对AI认知能力的系统化重构
人工智能
落羽的落羽2 小时前
【算法札记】练习 | Week3
linux·服务器·数据结构·c++·人工智能·算法·动态规划
HackTwoHub2 小时前
网络设备基线检查AI工具、内置专业基线库批量配置合规检测、自动生成安全整改报告
人工智能·安全·web安全·网络安全·系统安全·安全架构
147API2 小时前
GPT 上线指标怎么设计:采纳率、错误率和调用成本
人工智能·gpt
沪漂阿龙2 小时前
面试题:循环神经网络(RNN)是什么?词嵌入、时序建模、梯度消失、LSTM/GRU 一文讲透
人工智能·rnn·深度学习·gru·lstm
恋猫de小郭2 小时前
2026 Android I/O ,全新 AI 手机、 Android PC 和自动驾驶
android·人工智能·智能手机