第三讲:分类、回归、聚类和降维
1. 先给直觉
机器学习任务可以先粗略分成两大类:
有标签:监督学习
没标签:无监督学习
在监督学习里,最常见的是:
分类:预测类别
回归:预测数值
在无监督学习里,最常见的是:
聚类:把相似样本分组
降维:把复杂数据压缩成更简单的表示
2. 分类:预测类别
分类任务的输出是一个类别。
例子:
| 任务 | 输入 | 输出 |
|---|---|---|
| 垃圾邮件识别 | 邮件内容 | 垃圾/非垃圾 |
| 图像分类 | 一张图片 | 猫/狗/车/人 |
| 情感分析 | 一段评论 | 正面/负面/中性 |
| 疾病筛查 | 检查指标 | 有病/无病 |
分类的标签通常是离散的。
垃圾邮件、非垃圾邮件
猫、狗、车、人
正面、负面、中性
3. 二分类、多分类、多标签分类
分类还可以继续细分:
| 类型 | 含义 | 例子 |
|---|---|---|
| 二分类 | 两个类别中选一个 | 垃圾/非垃圾 |
| 多分类 | 多个类别中选一个 | 猫/狗/车/人 |
| 多标签分类 | 一个样本可以有多个标签 | 图片里同时有车、人、树 |
注意:
多分类是“多选一”
多标签分类是“可以多选”
4. 回归:预测数值
回归任务的输出是一个连续数值。
例子:
| 任务 | 输入 | 输出 |
|---|---|---|
| 房价预测 | 房屋信息 | 成交价格 |
| 销量预测 | 历史销售数据 | 下月销量 |
| 温度预测 | 天气数据 | 明天温度 |
| 延迟预测 | 系统指标 | 请求耗时 |
回归的标签通常是数值:
1000000 元
36.5 摄氏度
2300 件
120 毫秒
5. 分类和回归的关键区别
核心区别看输出:
分类:输出类别
回归:输出数值
例如同样是房子:
预测这套房属于高价/中价/低价 -> 分类
预测这套房具体卖多少钱 -> 回归
同样是邮件:
预测是否垃圾邮件 -> 分类
预测这封邮件被投诉的概率 -> 可以看成回归或概率预测
6. 聚类:把相似样本分组
聚类是无监督学习任务,没有人工给出的类别标签。
模型要做的是根据相似性把样本分组。
例子:
给一批用户行为数据,不告诉模型用户类型。
模型可能把用户分成:
- 高频购买用户
- 价格敏感用户
- 只浏览不购买用户
这些分组不是人工提前告诉模型的,而是模型根据数据相似性发现的。
7. 降维:把复杂数据压缩
现实数据经常有很多特征。
例如一个用户可能有几百个行为特征,一张图片可能有上百万个像素,一个文本 embedding 可能有几千维。
降维的目标是:
尽量保留重要信息,同时把数据变得更简单。
降维常用于:
- 可视化:把高维数据压缩到二维或三维画出来。
- 去噪:去掉不重要的变化。
- 压缩:减少计算成本。
- 表示学习:得到更有用的低维表示。
8. 和后面内容的关系
这些概念后面会反复出现。
YOLO 里同时有分类和回归:
分类:这个框里是什么物体
回归:这个框的位置坐标是多少
大语言模型的 next-token prediction 本质上也可以看成一个巨大分类问题:
从词表里的所有 token 中,预测下一个 token 是哪一个
embedding 可视化时经常会用降维:
把几百维或几千维向量压到二维,观察相似样本是否靠近
用户画像、文档分组、图片检索中经常会用聚类。
9. 本节最小闭环
只需要记住:
分类:预测类别
回归:预测数值
聚类:无标签分组
降维:压缩复杂数据表示
以及:
分类和回归通常属于监督学习
聚类和降维通常属于无监督学习
10. 易混点
易混点一:数字标签不一定是回归
如果数字只是类别编号,那还是分类。
例如:
0 = 猫
1 = 狗
2 = 车
这里的 0、1、2 只是类别编码,不表示连续数值大小。
易混点二:分类模型也可能输出概率
垃圾邮件模型可能输出:
垃圾邮件概率 = 0.92
但最终任务仍然是分类,因为目标是判断类别。
易混点三:聚类结果不一定天然有业务含义
模型可以把样本分成几组,但这些组代表什么,通常还需要人解释。
11. 理解检查
请尝试回答:
- 判断垃圾邮件属于分类还是回归?为什么?
- 预测房价属于分类还是回归?为什么?
- 如果把用户按购买行为自动分组,这属于什么任务?
- 降维主要解决什么问题?
- YOLO 为什么同时涉及分类和回归?