1. 先确定“要输出什么”
回归输出连续数值,例如房价、销量、设备温度;分类输出类别或各类别分数,例如邮件是否为垃圾。名字里的“回归”容易误导:逻辑回归主要用于分类。
排序关心候选顺序,例如让最相关的文档排在搜索结果前面。一个排序模型的分数不必是概率;重点是顺序是否帮助用户完成任务。
聚类没有现成标签,按相似性给样本分组,例如根据消费行为把客户分成几群。得到“第 0 群”之后,还需要人解释它的业务含义。
不要先问哪个模型最强。先写一句“已知什么,要预测什么,什么时候做预测”,这句话会排除很多不合适的方法。
2. 四种学习范式
| 范式 | 给模型什么 | 最小例子 | 易混淆点 |
|---|---|---|---|
| 监督学习 | 输入与目标答案 | 面积、房龄与成交价 | 标签也可能有错 |
| 无监督学习 | 输入,没有目标类别 | 按消费记录分群 | 分群不自动等于真实人群 |
| 半监督学习 | 少量带标签数据与较多无标签数据 | 少量标注图片带动其他图片学习 | 伪标签错误可能被放大 |
| 强化学习 | 状态、可选动作、环境反馈的奖励 | 游戏中选择动作获得分数 | 奖励并不等于每一步标准答案 |
另一个重要词是自监督学习:从数据自身构造监督目标,例如遮住一个词让模型恢复,或用前文预测后文。它不要求人逐条写标签,却仍然有明确的训练目标,LLM 预训练会大量使用。
3. 线性回归与逻辑回归
线性回归把输入加权求和,得到连续预测:
它适合作为容易检查的基线。这里“线性”主要说预测对参数的形式;通过人工加入面积平方等特征,也能表达一些非线性关系。
逻辑回归在加权分数后接 sigmoid:
分数为 0 时 ;分数很大时接近 1,很小时接近 0。再选择阈值,例如 才判正类。预测分数与业务决策阈值要分开:漏掉一次欺诈和误拦一次正常交易,代价可能不同。
4. 决策树:用问题逐步缩小范围
一棵树可以这样预测房价:
面积大于 80 吗?
是 → 房龄小于 5 吗? → 对应叶子的平均成交价
否 → 是否靠近地铁? → 对应叶子的平均成交价
分类树的叶子记录类别比例,回归树的叶子常记录平均目标值。训练的关键是选“用哪一列、在哪个位置切分”,使分组后的目标更一致。
分类常用 Gini 不纯度:
是当前节点中第 类的比例。两类各一半时,;全是同类时 。切分时看子节点按样本数加权后的不纯度,不能只选一个特别纯、却只装一个样本的小组。
树不断长下去,可以把训练样本切得很碎,记住噪声。最大深度、叶子最少样本数和剪枝用来限制这种记忆。树通常不需要像距离模型那样先标准化,但缺失值、类别编码及数据质量仍然要处理。
5. Bagging、随机森林与 Boosting
Bagging让多个模型在有差异的数据上分别训练,再平均或投票。想象请多个独立评审判断,降低某一个评审偶然失误的影响。
随机森林在有放回抽样的基础上,还在切分时随机考虑部分特征,让树之间的错误不要完全一致。若所有树犯同样的错,增加树的数量也不会神奇解决问题。
Boosting逐轮添加模型,让后来的模型处理当前组合还没解决好的部分:
- AdaBoost 提高被错分样本的相对权重。
- GBDT 根据损失的负梯度训练新树;平方损失下可直观看成拟合残差。
- XGBoost、LightGBM 是梯度提升树的工程与算法实现,涉及正则化、直方图、切分与生长策略等不同设计,不能把所有优化都说成双方完全相同。
偏差指方法本身存在系统性偏离;方差指换一批训练数据结果就大幅变化。深树常有较高方差,Bagging 常用于降低它;Boosting 逐步增强表达能力,但也需要限制复杂度和检查过拟合。
进一步看树与集成学习。
6. SVM:不仅分开,还要留出间隔
两类点可以被很多条直线分开。SVM 倾向于寻找留出较大间隔的边界;离边界近、对边界位置起关键作用的点叫支持向量。
软间隔允许少量违反间隔的样本,用参数 在“尽量少犯训练错误”和“边界别太复杂”之间取舍。 不是越大越好。
核函数计算某种特征空间中的相似性,使模型能表达弯曲边界,而不用显式列出所有高维特征。距离和尺度会影响效果,因此标准化通常很重要。
进一步看SVM 与线性判别。
7. 朴素贝叶斯:把条件概率乘起来
贝叶斯公式把“某类里常出现某些词”转成“看到这些词后属于某类的可能性”:
是类别的先验概率;右侧乘积用了一个简化假设:给定类别后,各个特征条件独立。现实中词语并不真正独立,所以叫“朴素”。
某个词没在训练集出现,直接估计可能得到 0,导致整个乘积为 0。平滑给计数加小量,避免这种一票否决。实现常在对数空间把乘法变加法,减少数值下溢。
它可以是很好的文本分类基线,但输出的概率不必已经校准。进一步看朴素贝叶斯。
8. KNN、K-Means 与 PCA
KNN预测时寻找最近的 个已知样本,再投票或平均。训练过程简单,但预测要找邻居,数据大时搜索成本高。若“工资”按万元、“年龄”按年,距离会受单位影响,通常应先缩放特征。
K-Means反复做两步:把每个点分到最近中心,再用组内平均值更新中心。它优化组内平方距离,适合相应几何假设下的分组;对初始中心、异常值、特征尺度和 敏感。
PCA把中心化后的数据投影到保留方差较多的方向。例如身高与腿长高度相关,可以用少数新的坐标概括它们。PCA 不是挑几个原始列,也不保证保留的最大方差恰好最有助于预测标签;主成分方向同样只能从训练数据学习。
9. 真正怎样选模型
先建立简单基线,再逐步加复杂度:
- 明确输出、预测时可用信息和错误代价。
- 根据数据形态缩小候选:表格、图片、文字、时间序列各不同。
- 用正确的数据划分比较,预处理放在验证流程内部。
- 同时记录效果、延迟、资源、解释性和维护成本。
- 只有收益被验证后,才选择更复杂的方案。
基线可以是“全部预测多数类”或“预测训练集均值”。如果复杂模型连它都赢不了,应先查数据和评估,而不是立即加层、加卡。
复习卡片与自测
- 任务决定输出形式,数据形态影响模型结构。
- 监督有标签;自监督从数据构造目标;强化学习依据环境奖励。
- 随机森林让多棵树分散风险,Boosting 逐步补充当前模型。
- 选型依赖验证结果,不靠一个脱离场景的冠军名字。
1. 客户分成三群后,第 0 群一定是高价值客户吗?
参考答案
不是。编号没有业务意义,要检查每群的特征分布、规模与实际价值。2. 为什么一棵训练满分的深树可能不如较浅的树?
参考答案
它可能把偶然噪声也记住了。应该比较未参与训练的数据表现,而不是训练分数。3. PCA 为什么可能降低分类效果?
参考答案
它寻找大方差方向,没有直接利用分类标签;区分类别的重要信息可能恰好在小方差方向。原文定位
依据:原资料 第一篇 1.2—1.4,第二篇 2.1—2.19。各模型的进一步公式与实践见正文中的站内链接。