大数据AI

七月在线机器学习特训营笔记

七月在线机器学习工程师特训营 第一课时课程笔记

本次课所讲的知识点

数学在机器学习中的应用

七月在线机器学习特训营笔记

模型建立与选择:对工程问题进行抽象和量化

• 涉及数学知识:综合运用微积分,线性代数,概率统计以及组合数学的知识。例如:

o 各类深度模型中的网络结构与损失函数

o 支持向量机中的向量空间与度量

模型训练

• 优化算法:高效稳定的对各类损失函数求极值

• 涉及数学知识:微积分以及优化理论

微积分核心思想:函数逼近

微分学的核心思想是用熟悉且简单的函数对复杂函数进行局部逼近。常用作逼近的简单函数包括:

• 线性函数:函数的一阶导数

• 多项式函数:泰勒级数

极限的表述方式:

• 自然语言:当x趋近于α时, f(x)的极限是L。

• 数学符号: 。

• 数学定义:对于任意的 0,存在一个$\Delta$ 0,使得对于任何的x∈(a- , a+ ),都有

无穷小阶数:趋近于0的速度越快的无穷小,其阶数越高。比 趋近于0速度还快的无穷小记作

两夹边定理:如果 ,而且这三个函数都在a点处有极限,那么

微积分核心思想是逼近,一阶导数:

• 几何意义:用直线逼近曲线

• 用线性函数逼近复杂函数

从线性逼近到多项式逼近:泰勒级数

Talor级数就是利用n阶导数来对函数进行高阶逼近。

如果一个函数$ f(x) $是n阶可微函数,那么:

当n=2时,Talor级数就成为一个二次逼近,对于2阶可微函数 $f(x)$:

这构成了牛顿法的基础。

梯度下降

梯度下降是一个用来求函数最小值的算法,其思想是:开始时我们随机选择一个参数的组合 ( _0, _1, ……, _ ) ,计算代价函数,然后我们寻找下一个能让代价函数值下降最多的参数组合。我们持续这么做直到到到一个局部最小值(local minimum),因为我们并没有尝试完所有的参数组合,所以不能确定我们得到的局部最小值是否便是全局最小值(global minimum),选择不同的初始参数组合,可能会找到不同的局部最小值。

想象一下你正站立在山坡的一点上,在梯度下降算法中,我们要做的就是旋转 360 度,看看我们的周围,然后你按照自己的判断在某个方向上迈出一步尽快下山;从这个新的点,你环顾四周,并决定从什么方向将会最快下山,然后又迈进了一小步,并依此类推,直到你接近局部最低点的位置。

批量梯度下降(batch gradient descent)算法的公式为:

其中 是学习率(learning rate),它决定了我们沿着能让代价函数下降程度最大的方向向下迈出的步子有多大,在批量梯度下降中,我们每一次都同时让所有的参数减去学习速率乘以代价函数的导数。

我们刚刚使用的算法,有时也称为"批量梯度下降"。"批量梯度下降",指的是在梯度下降的每一步中,我们都用到了所有的训练样本,在梯度下降中,在计算微分求导项时,我们需要进行求和运算,所以,在每一个单独的梯度下降中,我们最终都要计算这样一个东西,这个项需要对所有 个训练样本求和。因此,批量梯度下降法这个名字说明了我们需要考虑所有这一"批"训练样本,而事实上,有时也有其他类型的梯度下降法,不是这种"批量"型的,不考虑整个的训练集,而是每次只关注训练集中的一些小的子集。

我的收获

了解数学在机器学习中的重要性。

数学和代码在机器学习工作流程中高度交织在一起。代码通常可以根据数学直观地构建,它甚至会共享数学符号与句法。实际上,NumPy 等现代数据科学框架令数学运算很容易转化为直观的代码。我们可以将代码作为巩固学习的方式,且数学和代码都依赖于对概念的精确理解与符号表示。例如,手动用 NumPy 实现损失函数或最优化算法是理解它们概念非常好的方式。

复习了导数和微分等高等数学基础知识。

对于机器学习而言,微积分的主要作用是:

1.求解函数的极值

2.分析函数的性质

下面列出机器学习和深度学习中所需的微积分知识点,显然,不是课本里所讲的所有内容都是需要的,我们只列出所必须的!br/ 极限:极限是高等数学和初等数学的分水岭,也是微积分这座大厦的基石,是导数、微分、积分等概念的基础。虽然在机器学习里不直接用到极限的知识,但要理解导数和积分,它是必须的。br/ 上确界与下确界:这一对概念对工科的微积分来说是陌生的,但在机器学习中会经常用到,不要看到论文或书里的sup和inf不知道什么意思。br/ 导数:其重要性众所周知,求函数的极值需要它,分析函数的性质需要它。典型的如梯度下降法的推导,logistic函数导数的计算。熟练地计算函数的导数是基本功。

对梯度下降有一定了解。

需进一步掌握的知识点

需要了解泰勒级数及其应用,比如XGBoost中用到的二阶泰勒展开,其具体是如何实现的。

梯度下降及其各种优化算法需要进一步掌握。

需要动手实现梯度下降、泰勒级数等。

编辑于 2019-11-21

数学学习

Similar Posts

发表评论

邮箱地址不会被公开。 必填项已用*标注