引言
探索学习作为一个优化过程
学习是一个以增加知识、技能和创造力为目标的优化过程。这既适用于教育,也适用于机器学习。为了跟踪学习过程,我们需要一个函数来衡量进展。一个老派的指标是教育系统中的平均绩点 GPA,另一个是智商测试得分。在研究环境中,另一个指标例子是社交网络分数,如引用次数或 h 指数。对于自动驾驶汽车,它可以是 ,其中 是在固定时间段内使用参数配置 产生的事故数量。
图 1. 大卫·帕金斯的克朗代克图说明了在由高度函数 定义的高维景观中寻找解的过程。微积分建议沿着梯度 走,因为这会导向局部最大值。要找到全局最大值(可能是突破性想法),我们需要更努力地搜索,并列出所有最大值。这个过程以加拿大的克朗代克地区命名,该地区在淘金热期间声名狼藉。 人工智能会征服所有领域吗?
一旦框架和函数 固定下来,问题就是如何最有效地增加 。这种简单的图景无论对于人类智能还是人工智能都相当有效。对于许多已经考虑过的函数(在国际象棋比赛中获胜、计算能力、数据保持、特征检测、驾驶汽车或驾驶飞机),机器进展迅速。几乎没有人会严重怀疑,人类最终会在任何可考虑的函数 的较量中失败。仍然有一些领域机器还没有接管。例子包括艺术或撰写科学论文。
机器学习在基于梯度的优化中的优势
一旦机器知道了函数 ,它就可以舒适地从位置 确定向哪个方向变化能最快地增加 。最快增长的方向就是 的梯度 的方向。在微积分中,我们考虑的情况是位置只包含几个变量。单变量微积分处理的是一个变量的情况。这里我们处理 个变量的情况,但大多会使用 个变量,因为这已经能给出主要思想。原理是,当任何变化都不能再增加函数 时,我们就达到了最优点。数学上这意味着 的导数 为零。我们称这样的点为“临界点”。
使用梯度寻找改进的方向
让我们先看看函数沿方向 的变化率。取一条曲线 ,其中 是单位向量。根据链式法则,在 处的变化率由下式给出: 我们知道对于点积,这等于 这在 时最大,这意味着 指向与 相同的方向。所以,梯度指向最大增长的方向。这一点很重要,要牢记。如果你处于一个由高度 给出的地形中,你需要沿着 的方向走,才能增加最多。当然,如果 ,这就没有意义了,但这是你处于最大值的情况,此时你无法再增加 了。
讲座
用梯度寻找最优点
这里假设所有函数都在 中,意味着它们二阶连续可微。一切始于可追溯到皮埃尔·德·费马的一个观察:
定理 1. 如果 是 的最大值点,那么 。
证明。 我们用反证法证明。假设 ,定义向量 ,并考虑 ,这是一个单变量函数。根据链式法则,它满足 这意味着对于小的 ,有 。点 就不可能是最大值点。这是一个矛盾。 ◻
揭示临界点
满足 的点 称为 的临界点。根据泰勒公式,在临界点 处,我们有二次近似: 其中 是海森矩阵
二阶导数检验登场
与一维情况一样,拥有一个临界点并不能保证该点是局部最大值或最小值。单变量微积分中的二阶导数检验保证了:如果 且 ,我们得到局部极小值;如果 且 ,我们得到局部极大值。如果 ,在不查看更高阶导数的情况下,我们无法做出任何判断。
正定与负定矩阵
一个矩阵 称为正定的,如果对于所有非零向量 ,有 。它称为负定的,如果对于所有非零向量 ,有 。对角线上元素为正的对角矩阵是正定的。在以下陈述中,我们假设 是一个临界点。
揭示正定海森矩阵的作用
我们说 是 的局部极大值点,如果存在 ,使得对于所有满足 的 ,有 。我们说它是 的局部极小值点,如果存在 ,使得对于所有满足 的 ,有 。我们如何检查一个点是局部极大值还是局部极小值呢?
定理 2. 假设 。如果 是正定的,那么 是一个局部极小值点。如果 是负定的,那么 是一个局部极大值点。
证明。 因为 ,在 处的二次近似是 对于小的非零 和海森矩阵 成立。极小值的类似结论可以通过用 替换 得到。 ◻
二维情况下的极值分类
让我们看看 是一个二元函数,且满足 和 的情况。海森矩阵为
在这个二维情况下,如果 的行列式 不为零,我们可以对临界点进行分类。数 在临界点处也称为判别式。
图 2. 给出极小值, 给出极大值, 给出鞍点。情况 不是莫尔斯型。 莫尔斯函数与二阶导数检验
我们说 是一个莫尔斯点,如果 是一个临界点且行列式非零。一个 函数是一个莫尔斯函数,如果它的每一个临界点都是莫尔斯点。莫尔斯函数的例子有 , 和 。最后一种情况称为双曲鞍点。一般来说,一个临界点是双曲鞍点,如果 且既不是极大值也不是极小值。这是二维情况下的二阶导数检验:
定理 3. 假设 有一个临界点 且 。
- 如果 且 ,那么 是一个局部极小值点。
- 如果 且 ,那么 是一个局部极大值点。
- 如果 ,那么 是一个双曲鞍点。
证明。 经过平移 并将 替换为 ,我们有 且 。在临界点处,二次近似现在是 这可以重写为 其中 以及判别式 。如果 且 ,那么 ,函数对于所有 取正值。此时点 是一个极小值点。如果 且 ,那么 ,函数对于所有 取负值,点 是一个局部极大值点。如果 ,那么 在 附近既取负值也取正值。 ◻
从海森矩阵到高斯曲率
有人可能会问,为什么选择 而不是 。这并不重要,因为如果 ,那么 和 都必须非零且符号相同。我们也可以选择更自然的迹 而不是 。它在坐标变换下与行列式 一样是不变的。判别式 恰好也是曲面在该点的高斯曲率。
莫尔斯引理
在高维情况下,情况由莫尔斯引理描述。它表明在临界点附近存在一个坐标变换 ,使得 是一个二次函数 ,其中 是对角矩阵,其元素为 或 。然后可以给临界点赋予一个莫尔斯指数,即 中 的个数。莫尔斯引理实际上是一个定理(定理比引理即辅助定理更重要)。
定理 4. 对于 函数 的莫尔斯临界点 附近,存在一个坐标变换 ,使得 为
证明. 我们对 使用归纳法。
- 归纳基础:对于 ,结果表明对于莫尔斯临界点,函数看起来像 或 。首先证明如果 , ,那么对于某个正的 函数 ,有 或 。证明:通过线性坐标变换,我们假设 且 。那么存在 使得 :对于 有 ,并且在极限 下,其值为 。由乘积法则, 且 。因为 ,可以定义 对于 并取极限 ,因为应用两次洛必达法则,极限为 。坐标变换现在由满足 的函数 给出。隐函数微分给出 ,因此由隐函数定理, 存在。
- 归纳步骤 :我们首先注意到,对于 函数,带余项的泰勒公式意味着 ,其中 是某些连续函数。此外,函数值 是海森矩阵的坐标。首先应用一个旋转使得 。现在考虑 并保持其他坐标不变。如同 (i) 中,找到一个坐标变换 使得 ,其中 继承了性质但维数少一。根据归纳假设,存在第二个坐标变换使得 结合 和 就得到了莫尔斯标准型。
◻
例子
例 1. 问:分类 的临界点。
答:由于 临界点为 、、 和 。我们计算 对于 和 ,有 ,因此是鞍点。对于 ,有 ,,是局部极大值。对于 ,有 ,,是局部极小值。
练习
练习 1.
- 分类函数 的临界点(极大值、极小值或鞍点)。
- 现在对 做同样的分类,并找出每个临界点的莫尔斯指数。
练习 2. 找出 维区域 函数 的所有临界点。计算每个临界点处的海森矩阵 ,并确定极大值(所有特征值为负)和极小值(所有特征值为正)。
附注:区域 是老生常谈了。但 维区域 仍然是高度机密,传闻位于月球背面附近。
练习 3. 在参数化曲面 上,温度 在何处最小。分类函数 的所有临界点。[如果你已经找到了函数 ,如果你喜欢用函数 来工作,你可以再次将 、 替换为 、。]
练习 4. 找出函数 的所有临界点。在每种情况下,求出海森矩阵。同样计算特征值。这些是满足对于某个非零向量有 的数 。可以通过寻找特征多项式 的根来找到它们。你可以在计算机上计算它们。在每种情况下找出特征值。
练习 5.
- 找出一个具有 个极大值、 个鞍点和 个极小值的函数 。
- 你下面看到的是一个二元函数的等高线图。有多少个临界点?该函数是莫尔斯函数吗?
图 3.