机器学习
Machine Learning
📖这门课到底讲什么
机器学习研究如何从数据中自动获得规律:以统计学习为基础,讲模型评估与选择(交叉验证、偏差方差、过拟合与正则化)、线性模型(回归与对数几率回归)、决策树与集成学习(Bagging、随机森林、Boosting 与 GBDT)、支持向量机与核方法、贝叶斯分类器、聚类(K 均值、层次与密度聚类)、降维(PCA 与流形学习)、概率图模型与 EM 算法,以及特征工程与模型调优的工程实践。它把数学工具(线代、概率、优化)与工程手段结合,是人工智能方向的核心专业基础课。学完你应能对给定数据集完成完整的建模流程:特征处理、模型选择、训练调参与评估,并能解释模型的假设与局限。
🎯为什么必须学好
这是算法岗面试的重灾区与必考区:交叉验证怎么做、偏差与方差如何权衡、为什么 L1 产生稀疏解、GBDT 与随机森林的区别、SVM 为什么用核函数、如何评估不平衡数据;同时是读研做 AI 方向的入学基础,实验室面试常直接问推导。数据挖掘与推荐系统岗位同样以它为核心技能。相比深度学习课,它训练的建模与评估能力更通用,是判断一个模型好坏的能力来源,也是比赛与工程中真正见效的部分。
📌核心知识清单
- 机器学习基础:监督与无监督与半监督与强化学习、假设空间与归纳偏好、经验风险与结构风险、没有免费午餐定理
- 模型评估与选择:留出法与交叉验证、留一法、自助法、查准率与查全率与 F1 与 ROC 与 AUC、代价敏感与类别不平衡处理
- 偏差方差分解与正则化:欠拟合与过拟合的表现与缓解、偏差方差权衡、L1 与 L2 正则的几何解释与稀疏性、早停与数据增强
- 线性模型:最小二乘与线性回归、对数几率回归与最大似然、广义线性模型、软间隔与硬间隔的思想
- 决策树与集成学习:信息增益与基尼指数、剪枝、Bagging 与随机森林、AdaBoost 与 GBDT 与 XGBoost、Stacking
- 支持向量机与核方法:最大间隔与对偶问题与 KKT 条件、软间隔与松弛变量、核技巧与常见核函数、序列最小优化思想
- 贝叶斯与概率模型:朴素贝叶斯与拉普拉斯平滑、贝叶斯网络、EM 算法与高斯混合模型、隐马尔可夫模型与条件随机场初步
- 无监督学习:K 均值与 K 值选择、层次聚类与 DBSCAN、主成分分析与核 PCA、流形学习与 t-SNE、异常检测入门
- 工程实践:特征工程(编码、归一化、离散化、特征交叉与选择)、超参数搜索(网格、随机、贝叶斯优化)、模型融合、可解释性与特征重要性
✍️怎么学(可执行步骤)
- 主线用周志华《机器学习》(西瓜书)第1至10章搭理论,配李航《统计学习方法》第2版做推导训练,再用西瓜书公式推导辅助材料(南瓜书)补齐数学细节
- 跟吴恩达 CS229 或 Coursera 机器学习课程完成全部编程作业,用 numpy 手写线性回归、逻辑回归、SVM 与 GMM 的 EM 实现,不许直接调库完成
- 在 Kaggle 参加一场入门赛(如泰坦尼克或房价预测),完整走一遍数据探索、特征工程、模型对比、调参与提交,赛后读前三名的方案
- 用 scikit-learn 做二十个模型的横向对比实验:在同一数据集上比较逻辑回归、随机森林、GBDT 与 SVM 的效果与训练时间,写实验报告说明结论
📚推荐教材与书籍
国内公认首选教材,第1至10章覆盖核心算法,需配合数学推导辅助材料反复研读
公式推导严谨,重点感知机、KNN、朴素贝叶斯、决策树、逻辑回归、SVM、提升方法与 EM 章节
工程实践导向,从数据处理到模型部署一步一步做,适合动手能力补强
贝叶斯视角的经典教材,讲清概率模型与推断,做科研必备
🎬视频课程 / 公开课
吴恩达经典入门课,配套作业扎实,建议完成全部编程题
选择逐章讲解西瓜书的系列课程,把推导跟着写一遍
讲义推导严谨,适合在入门之后深入理解算法背后的数学
🌐网站与文档
包含算法选择流程图与大量示例,工程实践第一站
数据集与竞赛平台,按入门赛到进阶赛递进,公开 notebook 是学习范本
西瓜书公式的逐条推导补充,解决看不懂数学的痛点
🐙GitHub 开源资料
十二周机器学习课程,含 scikit-learn 实践与测验,适合系统过一遍基础
吴恩达课程的中文笔记与作业答案,复习与对照推导非常方便
南瓜书,西瓜书所有公式的详细推导,攻克理论的最佳辅助
主流机器学习库源码与示例,读实现能理解工业实现的工程细节
🧪动手实践任务
实践 1
用 numpy 从零实现逻辑回归与支持向量机:自己写损失函数、梯度与训练循环,在二分类数据集上验证与 scikit-learn 结果接近
实践 2
在 Kaggle 入门赛中完成一次完整建模:数据清洗与特征工程、三到五个模型对比、交叉验证调参、提交流并写复盘报告
实践 3
实现并对比三种评估方法:把数据分别用留出法、五折交叉验证与自助法评估同一模型,讨论评估结果的稳定性差异
实践 4
做一个不平衡数据实验:对正负比一比一百的数据集分别测试原样训练、重采样与代价敏感方法,用 AUC 与 F1 对比效果
🧾考试与面试
💼 面试会怎么考
高频:交叉验证与留出法的区别与适用;过拟合与欠拟合的表现与解决方案;偏差与方差的权衡及其与模型复杂度的关系;为什么 L1 正则会稀疏、L1 与 L2 的几何差异;逻辑回归的损失函数与推导、为什么不用平方损失;决策树的分裂准则与剪枝;随机森林与 GBDT 的区别与各自优劣;SVM 的核技巧与软间隔;如何处理类别不平衡与缺失值;评估指标的选择(准确率的陷阱、ROC 与 PR 曲线);特征工程你会做哪些;模型上线后效果下降如何排查。
📝 期末与考研怎么过
期末重点:各类算法的原理与推导(逻辑回归与 SVM 的推导、决策树增益计算)、评估指标计算(混淆矩阵、查准查全、AUC)、偏差方差分析与过拟合判断、集成方法比较、聚类与降维算法流程。备考方式是把李航书中核心章节的推导自己写一遍、把常见计算题练熟、把算法对比做成表格。目标八十五分以上;因为它是 AI 方向最重要的一门课,分数与面试表现高度相关。
⚠️ 常见坑
- 只调包不理解算法假设与代价,遇到数据分布变化或效果不好时无法诊断
- 不做数据泄漏检查(在划分训练测试前做归一化或用未来信息),评估结果虚高,这是最常见的实验错误
- 只用准确率评估不平衡数据,模型全部预测多数类也能拿高分,实际毫无用处
- 调参靠盲目网格搜索而不理解参数意义,浪费时间且结论不可解释
- 忽视特征工程,把希望全寄托在换模型上,而真实项目中特征决定上限