🧠 机器学习核心知识点系统总结
纯知识点导向 · 面向面试与工程实践 · 拒绝碎片化记忆
一、模型对特征尺度的敏感性(是否需要归一化)
🔍 判断标准
模型是否依赖以下机制决定了是否需要归一化:
依赖机制 | 是否需要归一化 | 原因 |
---|---|---|
距离计算(如欧氏距离) | ✅ 需要 | 尺度大会主导距离 |
梯度下降优化 | ✅ 需要 | 尺度不一会导致收敛慢 |
正则化(L1/L2) | ✅ 需要 | 大尺度特征被过度惩罚 |
决策分裂(如树模型) | ❌ 不需要 | 只关心相对大小 |
✅ 需要归一化的模型
模型 | 原因说明 |
---|---|
Logistic回归 | 使用梯度下降 + 正则化,特征尺度影响权重平衡与收敛速度 |
SVM | 基于样本间距离构造最大间隔,尺度敏感 |
神经网络 | 激活函数(Sigmoid/Tanh)在输入过大时饱和,梯度消失;梯度下降易震荡 |
KNN / K-Means | 直接依赖距离度量,某特征尺度大则主导结果 |
📌 常用归一化方法:
- Min-Max 归一化:
x' = (x - min) / (max - min)
→ 缩放到 [0,1] - Z-Score 标准化:
x' = (x - μ) / σ
→ 均值为0,方差为1
⚠️ 建议:训练集计算参数(如 μ, σ),应用到验证/测试集,避免数据泄露。
❌ 不需要归一化的模型
模型 | 原因说明 |
---|---|
决策树(CART, ID3, C4.5) | 分裂基于“某个值是否大于阈值”,与绝对尺度无关 |
随机森林 | 多棵决策树集成,继承树模型的尺度不变性 |
GBDT / XGBoost / LightGBM | 每棵树独立构建,分裂准则(基尼、信息增益)只依赖分布 |
💡 关键性质:
树模型对特征的单调变换(如线性缩放、取对数)具有不变性。
二、逻辑回归(Logistic Regression)的本质
📌 基本定位
- 是一个分类模型,主要用于二分类任务。
- 名称中的“回归”源于其建模的是 log-odds 的线性关系,而非输出类型。
🧮 数学表达
$$
P(y=1|x) = \frac{1}{1 + e^{-(w^T x + b)}}
$$
输出是属于正类的概率,通过 Sigmoid 函数映射到 [0,1]。
✅ 核心特性
特性 | 说明 |
---|---|
属于广义线性模型(GLM) | 使用 logit 函数作为连接函数:$\log\left(\frac{p}{1-p}\right) = w^Tx + b$ |
损失函数 | 交叉熵损失(Cross-Entropy Loss) |
优化方式 | 梯度下降、牛顿法、L-BFGS 等 |
可解释性强 | 权重 $ w_i $ 表示特征 $ x_i $ 对 log-odds 的影响方向与强度 |
❌ 常见误解澄清
错误说法 | 正确认知 |
---|---|
“逻辑回归假设输入服从正态分布” | ❌ 无此假设!这是 LDA 或某些判别模型的假设 |
“逻辑回归是回归模型” | ❌ 实为分类器,输出是概率,用于分类决策 |
“必须使用梯度下降” | ❌ 也可用其他优化方法,尤其在小数据上牛顿法更快 |
📌 适用场景:
- 医疗诊断、金融风控、广告点击率预估等需要可解释性的领域。
三、支持向量机(SVM)核心原理
🎯 核心思想
寻找一个最大几何间隔的超平面,使分类边界最“稳健”,提升泛化能力。
🧩 关键概念
概念 | 说明 |
---|---|
几何间隔 | 点到超平面的真实距离,SVM 最大化的是这个值 |
支持向量 | 距离超平面最近的样本点,唯一决定决策边界 |
软间隔 | 引入松弛变量 $ \xi_i $,允许部分样本误分类,提高鲁棒性 |
核函数(Kernel Trick) | 隐式将数据映射到高维空间,在高维中线性可分 |
常见核函数 | 线性核、多项式核、RBF(高斯核)、Sigmoid核 |
✅ 正确认知
正确认知 | 说明 |
---|---|
最大间隔超平面是唯一的 | 在线性可分情况下,凸优化问题有唯一最优解 |
可用于回归任务 | 称为 SVR(Support Vector Regression),允许误差带(ε-tube) |
与感知机的关系 | SVM 是感知机的“升级版”:在所有可分平面中选择间隔最大的 |
❌ 典型误区
❌ “最大间隔超平面不唯一”
✅ 正确:在凸优化下,解唯一。感知机解不唯一,但 SVM 有唯一最优解。
四、推荐系统中的矩阵分解与效率优化
🧩 矩阵分解(Matrix Factorization)
基本思想
将用户-物品评分矩阵 $ R \in \mathbb{R}^{m \times n} $ 分解为两个低秩矩阵:
$$
R \approx U V^T
$$
- $ U \in \mathbb{R}^{m \times k} $:用户隐因子矩阵
- $ V \in \mathbb{R}^{n \times k} $:物品隐因子矩阵
- $ k $:隐因子维度(通常 50~200)
目标函数(带正则化)
$$
\min_{U,V} \sum_{(i,j) \in \text{obs}} (r_{ij} - u_i^T v_j)^2 + \lambda (|u_i|^2 + |v_j|^2)
$$
⚙️ 大规模下的效率优化策略
方法 | 原理与优势 |
---|---|
分布式计算(Spark, Flink) | 数据分片并行处理,适合海量用户/物品场景 |
ALS(交替最小二乘法) | 固定 $ U $ 优化 $ V $,再反过来,易于并行化,比 SGD 更稳定 |
降维 / 数据过滤 | 去除冷门用户/物品,减少矩阵稀疏性和计算量 |
负采样 | 只采样部分未交互样本参与训练,降低计算复杂度 |
增量学习 | 支持在线更新,避免全量重训练 |
❌ 边缘计算不适用的原因
原因 | 说明 |
---|---|
训练依赖全局信息 | 矩阵分解需要所有交互数据,边缘设备数据局部 |
计算资源有限 | 难以承担大规模矩阵运算 |
通信开销大 | 需频繁同步参数,反而增加延迟 |
📌 正确使用场景:
- ✅ 推理阶段:在移动端做轻量级推荐(如本地模型预测)
- ❌ 训练阶段:不适合边缘计算
五、模型对比总结表
模型 | 类型 | 是否需归一化 | 可解释性 | 适用场景 |
---|---|---|---|---|
Logistic回归 | 分类 | ✅ | 强 | 风控、CTR预估 |
SVM | 分类 / 回归(SVR) | ✅ | 中 | 小样本、高维数据 |
决策树 | 分类 / 回归 | ❌ | 强 | 规则清晰、可解释要求高 |
随机森林 / GBDT | 分类 / 回归 | ❌ | 中 | 结构化数据建模 |
神经网络 | 分类 / 回归 | ✅ | 弱 | 图像、语音、复杂非线性 |
矩阵分解 | 推荐系统 | ✅(若用梯度法) | 中 | 协同过滤、隐式反馈 |
六、学习建议与进阶方向
✅ 推荐学习路径
基础巩固
- 掌握每个模型的损失函数、优化目标、假设条件
- 理解“为什么”而不是“是什么”
工程思维培养
- 如何处理大规模数据?如何选择模型?
- 如何评估效果?(AUC、NDCG、Recall、Precision)
进阶模型
- FM / DeepFM:融合特征交叉与深度学习
- 双塔模型(Two-Tower):大规模召回常用
- Graph Neural Networks:建模用户-物品图结构
系统设计能力
- 推荐系统全流程:召回 → 粗排 → 精排 → 重排
- 实时性、冷启动、多样性等工程挑战
🎯 总结:掌握机器学习的三大维度
维度 | 内容 |
---|---|
1. 模型本质 | 理解“它是什么?怎么工作的?” |
2. 工程实践 | 知道“怎么用?怎么优化?” |
3. 场景匹配 | 明白“什么时候用哪个模型?” |
💬 记住一句话:
“不要死记题,要理解为什么。”
所有题目都是对知识掌握程度的检验,而非目标本身。
🎯 祝你系统掌握知识,从容应对任何挑战!
如需我将此文档导出为 PDF、生成思维导图、或补充公式推导,请随时告诉我!📘✨