在 Github 上,afshinea 贡献了一个备忘录对经典的斯坦福 CS229 课程进行了总结,内容包括监督学习、无监督学习,以及进修所用的概率与统计、线性代数与微积分等知识。

项目地址:https://github.com/afshinea/stanford-cs-229-machine-learning

据项目介绍,该 repository 旨在总结斯坦福 CS 229 机器学习课程的所有重要概念,包括:

  • 学习该课程所需的重要预备知识,例如概率与统计、代数与微积分等进修课程。
  • 对每个机器学习领域知识的备忘录,以及在训练模型时需要的提示与技巧。
  • 上面所有的元素最终汇编进来一个备忘录里。

VIP Cheatsheets

在这一部分中,该项目根据 CS 229 提供了监督学习、无监督学习、深度学习、机器学习技巧等重点内容。其中监督学习主要介绍了回归、分类和生成,无监督主要介绍了聚类与降维算法,深度学习概述了三种神经网络。

监督学习

如下所示监督学习介绍了非常多基础概念,包括损失函数、梯度下降和最大似然估计等。其中损失函数展示了常用的最小二乘损失函数、折页损失函数和交叉熵损失函数等,每一种损失函数的图像、定义和应用的算法都展示在其中。

监督学习部分一共有四页备忘录,除了一般的线性与 Logistic 回归,还重点介绍了 SVM、朴素贝叶斯和 K 近邻等其它一些非参模型。这些基本上都是直接给出的定义,因此不会有过多的冗余信息,这对于机器学习开发者与研究者作为参考还是非常有帮助的。

除了标准的定义外,很多重点概念还会用形象的图示表达出来,如下展示了监督学习中的支持向量机:

上述定义清楚地描述了 SVM 的定义,它希望能根据「支持向量」最大化分类边界之间的间隔,这样的分类模型将更稳定。基本上着一幅图就讲述了 SVM 的基本想法,同时也展现了分类原理,根据它再「回忆起」合页损失函数也就更容易了。

无监督学习

无监督学习主要记录了 EM 算法、聚类算法和降维算法等,其中聚类又详细介绍了 K 均值聚类、层级聚类和其他聚类距离度量方法等,而降维算法则主要展示了主成分分析法和独立成分分析法这两种。

除了标准的定义,这些算法的原理图也非常重要,如上所示在 K 均值聚类中,四幅图展示了该算法的具体过程。首先随机初始化均值,然后将离均值近的样本分配为均值所代表的那一类,随后根据误差更新均值的位置,并直到模型收敛。主成分分析同样有非常好的可视化,如下 PCA 会先归一化数据特征,然后根据奇异值分解找出主成分,最后再将所有数据映射到主成分而实现降维。

深度学习

很多读者已经比较了解深度学习了,尤其是全连接网络、卷积网络和循环网络。这一份备忘录同样也展示了这三种网络重要的概念与定义,且同时描述了强化学习的一些基本概念,如马尔可夫决策过程、贝尔曼方程价值迭代算法和 Q 学习等。

我们认为在图 CNN 中,非常重要的是计算输出特征图大小的公式,即 N = (W-F+2P)/S + 1。其中 W 表示输入特征图的长宽,F 表示卷积核大小,P 表示在每一端填补零值的数量,S 表示卷积步幅,因此计算出来的 N 就表示输出特征图的尺寸。这对于设计卷积网络非常重要,我们经常需要该公式控制网络中间的特征图大小。

机器学习技巧

这一份备忘录从分类、回归、模型选择和模型诊断出发展示了 ML 中的一些技巧。其中分类与回归主要从度量方法的角度探讨,也就是说到底什么样的方法才能确定模型的好坏,以及它们的特定属性。同样模型选择与诊断也都希望判断模型的好坏,只不过一个是从交叉验证与正则化的角度考虑,另一个是从偏差与方差的角度考虑。

VIP Refreshers

这一部分作者提供了进修课程的备忘录,包括对概率与统计、代数与微积分的介绍。

概率与统计

从排列与组合开始,这一部分介绍了概率与统计的概念定义。包括条件概率、贝叶斯法则、概率密度函数、概率分布函数与随机变量的均值和方差等。后面的统计也展示了非常多的定义与规则,包括分布的 K 阶矩、常见的离散型与连续型随机变量分布,以及样本均值、方差、协方差等数据特征。

最后,该备忘录同样记录了参数估计,这对于机器学习来说是最为关键的概念之一,因为本质上机器学习就是需要通过大量样本对模型的参数进行估计,或者称为「学习」。此外,之所以高斯分布如此重要,最后面的中心极限定理可以给我们答案。也就是说,如果采样 n 个服从独立同分布的样本,那么当 n 趋近于无穷大的时候,这个未知的分布一定是接近于高斯分布的。

线性代数与微积分

矩阵运算与微分在实际搭建模型时非常重要,因为不论是传统的机器学习还是深度学习,我们实际都是使用矩阵甚至是张量进行运算,了解它们的法则才能理解模型的实际过程。在这一份备忘录中,作者描述了向量与矩阵的定义、各种常见矩阵运算的定义,以及大量的矩阵概念,例如矩阵的迹、矩阵的逆、矩阵的秩、矩阵的正定和特征值与特征向量等。

矩阵微分的基本概念也展示在上面,因为我们在根据反向传播更新参数时,基本使用的都是矩阵微分。这也就需要我们了解 Jacobian 矩阵和 Hessian 矩阵。

资源 | 源自斯坦福CS229,机器学习备忘录在集结的更多相关文章

  1. 斯坦福CS229机器学习课程笔记 Part1:线性回归 Linear Regression

    机器学习三要素 机器学习的三要素为:模型.策略.算法. 模型:就是所要学习的条件概率分布或决策函数.线性回归模型 策略:按照什么样的准则学习或选择最优的模型.最小化均方误差,即所谓的 least-sq ...

  2. 斯坦福CS229机器学习课程笔记 part3:广义线性模型 Greneralized Linear Models (GLMs)

    指数分布族 The exponential family 因为广义线性模型是围绕指数分布族的.大多数常用分布都属于指数分布族,服从指数分布族的条件是概率分布可以写成如下形式:η 被称作自然参数(nat ...

  3. 斯坦福CS229机器学习课程笔记 part2:分类和逻辑回归 Classificatiion and logistic regression

    Logistic Regression 逻辑回归 1.模型 逻辑回归解决的是分类问题,并且是二元分类问题(binary classification),y只有0,1两个取值.对于分类问题使用线性回归不 ...

  4. CS229 斯坦福大学机器学习复习材料(数学基础) - 线性代数

    CS229 斯坦福大学机器学习复习材料(数学基础) - 线性代数 线性代数回顾与参考 1 基本概念和符号 1.1 基本符号 2 矩阵乘法 2.1 向量-向量乘法 2.2 矩阵-向量乘法 2.3 矩阵- ...

  5. CS229 机器学习课程复习材料-概率论

    本文是斯坦福大学CS229机器学习课程的基础材料,原始文件下载 原文作者:Arian Maleki , Tom Do 翻译:石振宇 审核和修改制作:黄海广 备注:请关注github的更新. CS229 ...

  6. CS229 机器学习课程复习材料-线性代数

    本文是斯坦福大学CS 229机器学习课程的基础材料,原始文件下载 原文作者:Zico Kolter,修改:Chuong Do, Tengyu Ma 翻译:黄海广 备注:请关注github的更新,线性代 ...

  7. Coursera公开课笔记: 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)” 清晰讲解logistic-good!!!!!!

    原文:http://52opencourse.com/125/coursera%E5%85%AC%E5%BC%80%E8%AF%BE%E7%AC%94%E8%AE%B0-%E6%96%AF%E5%9D ...

  8. 斯坦福大学机器学习,EM算法求解高斯混合模型

    斯坦福大学机器学习,EM算法求解高斯混合模型.一种高斯混合模型算法的改进方法---将聚类算法与传统高斯混合模型结合起来的建模方法, 并同时提出的运用距离加权的矢量量化方法获取初始值,并采用衡量相似度的 ...

  9. LR 算法总结--斯坦福大学机器学习公开课学习笔记

    在有监督学习里面有几个逻辑上的重要组成部件[3],初略地分可以分为:模型,参数 和 目标函数.(此部分转自 XGBoost 与 Boosted Tree) 一.模型和参数   模型指给定输入xi如何去 ...

随机推荐

  1. HDU 3829

    http://acm.hdu.edu.cn/showproblem.php?pid=2970 P个小朋友喜欢猫讨厌狗,喜欢狗讨厌猫,移除一定数量的猫狗,使开心的小朋友数量最多 二分图最大独立集=顶点数 ...

  2. IOS 获取中英文字符串长度

    //得到中英文混合字符串长度 方法1 - (int)convertToInt:(NSString*)strtemp { int strlength = 0; char* p = (char*)[str ...

  3. Windows 服务器配置、运行、图文流程(新手必备!) - IIS建站配置一条龙

    Window 2008 服务器的配置教程 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar ...

  4. BZOJ3052: [wc2013]糖果公园【树上带修莫队】

    Description Input Output Sample Input Sample Input Sample Output 84 131 27 84 HINT 思路 非常模板的树上带修莫队 真的 ...

  5. HDU 3342:Legal or Not(拓扑排序)

    Legal or Not Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  6. Heap Operations 优先队列

    Petya has recently learned data structure named "Binary heap". The heap he is now operatin ...

  7. Spring Data Jpa 使用@Query标注自定义查询语句

    https://blog.csdn.net/daniel7443/article/details/51159865 https://blog.csdn.net/pp_fzp/article/detai ...

  8. @Transactional + FetchType.LYZY (hibernate) <---> Exception: could not initialize proxy - no Session;

    转自: https://blog.csdn.net/blueheart20/article/details/52912023 4.问题的解决 尝试1:  在Service方法中新增了@Transact ...

  9. 【知识笔记】ASP.NET报错问题

    一.前端asp.net在远程部署到IIS时报错:Web 部署任务失败,在远程计算机上处理请求时出错 服务器在处理请求时遇到问题.请与服务器管理员联系以了解详细信息((2017/6/16 16:22:4 ...

  10. 弱也有弱的ACM经历

    作为一名弱校的acm渣渣,在经历了三年的acm生涯后,现在终于要毕业了,最后也来总结下自己在这几年中做acm的经历与感受.以下是参赛总结: 2013年: ACM/ICPC长沙邀请赛(打铁=_=) AC ...