一起学习机器学习

这里把 2024 年记录的 14 篇机器学习笔记放到同一个目录,按数据处理、监督学习、神经网络、无监督学习与图学习的顺序阅读。正文保留当时的英文练习、代码、公式和图表。

阅读与运行说明

  • 示例以 Python / Jupyter Notebook 为主,用到 NumPy、pandas、Matplotlib、SciPy 和 scikit-learn;神经网络章节还用到 PyTorch,图学习章节有额外的图分析依赖。各篇以开头的导入代码为准。
  • 原文包含 Notebook 的分步单元、练习空白和运行输出,不适合把整篇代码拼接成一个脚本直接执行。
  • 部分数据和测试文件来自当时课程的 Blackboard,例如登山数据;这些附件不在本仓库中。正文中的公开数据、项目和文献链接仍然保留,图学习章节保留了 Robert Peach 与 Mauricio Barahona 工作坊的出处。
  • 这次迁移核对了文字、代码、公式、图片和链接,没有重新训练模型或复现全部课程实验;原记录也没有提供统一的依赖锁定文件。建议按章节建独立环境,先确认数据文件,再运行单元。

阅读顺序

  1. 一起学习机器学习(01):数据探索 — 用 pandas 加载和清洗数据,处理缺失值与重复记录,再通过描述统计和可视化了解数据分布。
  2. 一起学习机器学习(02):线性回归 — 用 NumPy 实现线性回归,推导最小二乘与最大似然估计,并比较 Ridge、LASSO 和梯度下降的效果。
  3. 一起学习机器学习(03):kNN — 从距离计算和邻居投票实现 kNN 分类,用交叉验证选择 k,再扩展到回归任务。
  4. 一起学习机器学习(04):逻辑回归 — 生成分类数据,实现逻辑回归的参数化函数与优化过程,通过分类指标和 ROC 曲线评估模型。
  5. 一起学习机器学习(05):朴素贝叶斯 — 以文本分类为例,整理数据预处理、多项式朴素贝叶斯的似然与后验概率计算。
  6. 一起学习机器学习(06):决策树与随机森林 — 从 GINI 指数、特征划分和决策树训练开始,实现特征采样、Bootstrap 与随机森林的分类聚合。
  7. 一起学习机器学习(07):支持向量机 — 实现线性 SVM 的目标函数与随机梯度下降,使用交叉验证评估模型,并讨论核函数与分类边界。
  8. 一起学习机器学习(08):随机梯度下降 — 随机梯度下降学习笔记,结合公式和 Python 练习理解参数更新、学习率与迭代过程。
  9. 一起学习机器学习(09):多层感知机 — 从三层感知机扩展到通用 MLP,整理数据预处理、前向计算、反向传播和随机梯度下降训练。
  10. 一起学习机器学习(10):卷积神经网络 — 用 NumPy 理解一维卷积,再用 PyTorch 构建、训练和评估卷积神经网络。
  11. 一起学习机器学习(11):K-means 与层次聚类 — 学习 K-means 与层次聚类,结合距离计算、簇中心更新和 linkage 比较不同聚类方法。
  12. 一起学习机器学习(12):高斯混合模型 — 整理高斯混合模型与 EM 算法,通过乳腺癌数据练习参数估计和聚类分析。
  13. 一起学习机器学习(13):PCA 与 NMF — 线性降维学习笔记,结合 Python 练习理解主成分分析 PCA 与非负矩阵分解 NMF。
  14. 一起学习机器学习(14):图学习 — 用秀丽隐杆线虫网络数据练习图学习,分析度分布、拉普拉斯谱、Fiedler 向量与谱聚类。