(3)机器学习-模型介绍
1. 为什么要把“模型”当成“工具箱”?
想想你手里有一大盒子,里面装着各种工具:螺丝刀、锤子、扳手、卷尺。不同的工作需要选不同的工具。机器学习也是如此——模型是用来解决不同“问题”的工具。
你把自己的任务(预测房价、识别猫狗、推荐电影)放进箱子里,找出最合适的工具来完成。
重点:先搞清楚你想做的是什么(监督、无监督、强化),再从模型箱里挑选合适的“工具”。
2. 机器学习的三大范畴
范畴 | 代表问题 | 典型模型 | 你可能会遇到的例子 |
---|---|---|---|
监督学习 | 输入‑输出映射 | 线性回归、决策树、随机森林、SVM、神经网络 | 房价预测、垃圾邮件检测、图像分类 |
无监督学习 | 发现数据结构 | K‑均值、DBSCAN、PCA、t‑SNE、自动编码器 | 客户分群、异常检测、降维可视化 |
强化学习 | 通过试错得到最优策略 | Q‑学习、Deep Q‑网络、策略梯度 | 游戏 AI、机器人导航、广告投放 |
小贴士:如果你知道答案(标签)就去监督学习;如果你想找“规律”就去无监
督;如果你想做“决策”就去强化。
3. 监督学习模型一览
3.1 线性回归(Linear Regression)
- 目标:预测连续数值(房价、温度)
- 原理:用一条直线或超平面最小化误差
- 优点:解释性好、实现简单、计算快
- 缺点:只能处理线性关系,受噪声影响大
- 挑选时机:数据量不大、特征间关系大致线性、你想解释模型输出
大白话:把“价格随面积”想成一条斜线,用“最短路”把点拉近这条线。
3.2 逻辑回归(Logistic Regression)
- 目标:分类(二分类、三分类)
- 原理:把线性模型的输出映射到 0‑1 的概率
- 优点:概率解释、适合文本分类、计算快
- 缺点:对特征尺度敏感、不能处理复杂模式
- 挑选时机:你想得到“是否是好房”之类的概率,且特征是数值型或经过
One‑Hot 的分类特征。
3.3 k‑近邻(k‑Nearest Neighbors, k‑NN)
- 目标:分类或回归
- 原理:寻找最近的 k 个样本,取它们的“多数”或平均值
- 优点:“懒学习”——不需要训练,只用存储;对小数据友好
- 缺点:预测慢、对噪声敏感、需要标准化
- 挑选时机:样本量不大,特征不太多,想快速试验。
大白话:给你一个新图片,去找“最近的”10 张图片,看看它们是猫还是狗。
3.4 决策树(Decision Tree)
- 目标:分类或回归
- 原理:把特征空间按阈值切分成若干块,树的每个叶子代表一个类别或数值
- 优点:可解释、支持非数值特征
- 缺点:易过拟合、对小扰动不稳
- 挑选时机:你需要解释“为什么这么分类”,或者想快速原型。
大白话:想像一张问答树:你问“身高>170?”如果是,就往下走;如果不是,
就往另一条路。
3.5 随机森林(Random Forest)
- 目标:分类/回归
- 原理:集合多棵决策树(Bootstrap + 随机特征)
- 优点:鲁棒、抗噪、内置特征重要性
- 缺点:模型大、解释性下降、预测慢
- 挑选时机:你想保留树的可解释性,又不想让单棵树过拟合。
大白话:你把很多“树”拼起来,让它们一起投票,结果更稳。
3.6 梯度提升树(Gradient Boosting: XGBoost / LightGBM / CatBoost)
- 目标:分类/回归
- 原理:逐步拟合残差,每一步用新树改进上一步的错误
- 优点:极高的预测性能、支持稀疏特征
- 缺点:训练慢、调参多、模型大
- 挑选时机:你想得到最优性能,数据量不太小且有足够时间调参。
变种 | 特色 |
---|---|
XGBoost | 经典、广泛使用、支持多种损失 |
LightGBM | 速度快、内存占用低、支持大规模数据 |
CatBoost | 专门处理类别特征、训练更稳定 |
大白话:像拼图一样,先放一块,观察残差,再放下一块,直到残差足够小。
3.7 支持向量机(Support Vector Machine, SVM)
- 目标:分类/回归
- 原理:寻找最大间隔的超平面,把不同类尽量拉远
- 优点:对高维数据好、能用核函数捕捉非线性
- 缺点:训练慢、参数敏感、解释性差
- 挑选时机:特征维度高、样本不太多、对边界判定敏感。
大白话:把不同颜色的点画在纸上,找一条“最宽的隧道”把两种颜色完全隔开
。
3.8 朴素贝叶斯
- 目标:分类(文本、医学)
- 原理:利用贝叶斯定理,假设特征相互独立
- 优点:训练快、占内存少、对缺失值鲁棒
- 缺点:独立性假设往往不成立,精度受限
- 挑选时机:特征是离散的、想快速做原型。
大白话:你有一个“天气 + 运动”表格,想预测今天是否下雨。Naïve Bayes
就像把“天气”与“运动”各自看作“线索”,把它们的概率简单拼起来。
3.9 k‑最近邻(k‑Nearest Neighbors, k‑NN)
- 目标:分类或回归
- 原理:用欧氏距离或其他度量找到最近的 k 个样本
- 优点:直观、无需训练、能处理非线性
- 缺点:预测慢、对噪声和尺度敏感、存储需求大
- 挑选时机:样本量不大、想快速测试。
大白话:想像你在地图上找最近的 3 家餐馆,决定吃什么。
4. 无监督学习模型全览
4.1 聚类
模型 | 特色 | 适用场景 |
---|---|---|
K‑均值 | 以中心点划分,收敛快 | 客户分群、广告定位 |
DBSCAN | 基于密度,能发现任意形状 | 异常检测、地理聚类 |
层次聚类 | 生成树状结构 | 组织结构可视化、文档分类 |
大白话:你把“所有点”按距离聚到一起,像把朋友按兴趣分成小组。
4.2 降维 / 可视化
模型 | 特色 | 适用场景 |
---|---|---|
PCA | 线性降维、保持方差 | 图像压缩、特征预处理 |
t‑SNE / UMAP | 非线性可视化 | 发现潜在结构、交互可视化 |
LDA | 有标签下的线性判别 | 文本分类、情感分析 |
大白话:把高维数据像把一堆乱七八糟的彩色线段压缩成几条干净的线,方便我们观察。
4.3 自动编码器(Autoencoder) & GAN
- 目标:学习数据压缩或生成模型
- 原理:输入 → 编码器 → 低维表示 → 解码器 → 输出
- 应用:异常检测(重构误差大)、生成新样本(GAN)
- 挑选时机:你想自己生成类似数据,或需要高维度的异常检测。
大白话:把图片压缩到 8 维,然后再解压,如果解压出来的图片很糟糕,那说明这张图片是“异常”。
5. 强化学习模型简述
- Q‑学习:离散动作空间、价值函数表
- Deep Q‑网络 (DQN):用 CNN 估计 Q 值,适合游戏、视觉 RL
- 策略梯度(REINFORCE):直接优化策略
- Actor‑Critic:Actor 生成动作,Critic 评估价值
挑选时机:你需要让模型学会“做事”,而不是只“观察”。典型例子:自动驾驶。
6. 模型挑选的思维公式
“问题 + 数据 + 目标 + 约束” → 选择合适的模型箱子
维度 | 你需要考虑的内容 | 典型模型倾向 |
---|---|---|
数据量 | 训练样本多或少 | 线性、树模型适中;深度网络需要大数据 |
特征类型 | 数值、类别、文本、图像 | 线性/树/NB:数值/类别;CNN:图像;RNN:序列 |
可解释性 | 业务需要解释 | 线性回归、决策树、随机森林 |
预测速度 | 实时性 | k‑NN、NB、树模型;深度网络预测慢 |
训练时间 | 是否有长时间训练 | XGBoost/LightGBM:时间消耗大;树模型较快 |
缺失值 | 数据清洗难 | Naïve Bayes、树模型更鲁棒 |
类别不平衡 | 类别比例差 | 轻度处理:树模型;加权损失:XGBoost |
非线性 | 关系复杂 | SVM 核、梯度提升树、深度网络 |
类别/文本 | 需要 One‑Hot / 词向量 | NB、SVM:One‑Hot;RNN:词向量;Transformer |
举例:如果你有 5000 条产品评论(文本)想做情感分类,数据不大,想解释,先尝试 朴素叶贝斯 或 Logistic Regression;如果你有 200 万条评论,想极致性能,考虑 BERT 或 Transformer。
7. 经验总结
- 先用简单模型做基线:决策树、随机森林、XGBoost。若性能不佳,再考虑更复杂的深度网络。
- 数据预处理先决:缺失值处理、标准化、类别编码。
- 调参是“游戏”:学习学习率、正则化、树的深度等;深度网络的学习率和梯
度裁剪更重要。 - 评估要多维度:准确率、召回率、F1、AUC、MAE;视业务场景而定。
小结
- 逻辑回归:数值型二分类,给概率;
- k‑NN / 决策树:懒/即时,解释性好;
- 随机森林:抗噪、投票,适中;
- 梯度提升树:最高性能,需调参;
- SVM:高维非线性;
- Naïve Bayes:快速、类别特征;
- 聚类:无标签,按距离分组;
- 降维:PCA、t‑SNE 让高维变低维;
- 深度网络:图片、文本、序列,需大数据;
- 强化学习:让模型“做事”。
终极大白话:先把问题拆成“我想怎么做” + “我有多少数据”,选一个适合
的盒子(模型),把数据装进去,训练/预测。调参是给盒子里的“把手”调节,使之
更合适。