机器学习与数学基础知识(二)

本文是机器学习与数学基础知识的第二集视频,主要内容是微积分选讲,共三部分知识点,与机器学习直接相关的是第二部分知识点微积分中的两个机器学习算法——牛顿法和梯度下降法。

一 极限

极限的知识点是微分学的基础,是导数定义的基础。

1极限的通俗语言,数学记号,精确描述

2无穷小的比较:比较趋于0的快慢,以“无穷小阶数”衡量

3重要极限:第1和4个式子是大学高数课本上的,注意第2个和3个式子,指数函数,对数函数和冥函数的关系

二 微分学:线性逼近

微分学的知识点,重点关注其核心思想:线性逼近,即对于复杂的曲线,用“以直代曲”进行线性逼近,以便于研究。同时,第二部分的知识点,是本文的重点所在,而微分学的知识点,重点在于关注,如何表示和实现“线性逼近”。

1一元函数的一阶导数的线性逼近

    如上图所示,导数的这种极限定义形式,我们都很熟悉;而其等价定义形式,我们很少关注,而这种等价定义形式即为线性逼近,将f(x)的值用f(x0)+L(x-x0)这种一次函数的直线形式逼近,o(x-x0)表示的是无穷小,即x趋近x0时,o(x-x0)等于0。

    对于n阶导数,可以用n-1阶导数进行线性逼近。

2多元函数的微分

    如上图所示,二元函数表示的曲面,仿照一元函数的导数,可以用全微分(偏导数)进行线性逼近

同理,仿照一元函数的n阶导数,同样可以用高阶偏导数进行线性逼近,如上图所示

3泰勒级数:多项式逼近

正如图中所标识的,泰勒级数是一元函数微分学的顶峰。说白了,微分学的知识点1其实就是泰勒级数的多项式逼近。小编本科阶段学习泰勒级数,只知道这个公式不好记,从没想到它有如此重要的作用和地位。下面是一些函数的泰勒级数公式,相信经历过本科阶段的同志会很熟悉。

泰勒级数应用于与逼近相关的数学问题,下面举两个泰勒级数的例子。

第一个例子是洛必达法则的推导,这里注意理解“大括号”部分是一阶泰勒级数的线性逼近;对于“圈住”的两部分,是为了大家更好的理解这步推导。

第二个例子是微分方程的求解,(1)式为泰勒级数的定义,(2)是(1)式的二阶导数,这里需要注意,(2)写成这样的形式,是为了与(1)式中x的指数n一致,便于写出(3)式中系数之间的关系,求出泰勒级数的表达式,反推出(4)。

4牛顿法(一元函数二次逼近)与梯度下降法(多元函数):代价函数的极小值

首先,我们先有一个概念:机器学习中的很多问题,是优化问题,即转化为求解一个损失函数的极小值的问题;极小值分为局部的和全局的,在极小值处,对于一元函数,其一阶导数为0,而多元函数,其梯度为0(方向导数的最大值为0)。

在这里,先看牛顿法,写出二阶泰勒级数,将无穷小除外的其余部分看作二次函数,利用二次函数的极值点,来估计f(x)的极值点;在这里,如下图所示,先假设出极值在初始值x0附近,然后第一次估计得出极值在x1附近,迭代估计得到极值在xn附近。牛顿法,得出的极值点会与初始值的选取有关,选取的好,收敛的也快;同时,牛顿法有其缺陷性,有可能二次函数对应的是开口向上,估计得到的是极大值。

梯度下降法,针对多元函数(x是一个向量),是多元函数的一阶逼近,本质上,也就是全微分的一阶偏导数的线性逼近。将无穷小除外的其余部分看作一次函数,该函数说明了极小值的方向(这里我也不是很理解,视频中也并未把梯度下降法深入讲,只有这一张ppt,大家可以先有个印象,预计后面的视频中会讲到)

5 小结

微分学的知识点,概括而言,即对局部进行线性逼近;然后,分两方面,一元函数,用泰勒级数进行线性逼近,多元函数,用全微分进行线性逼近;牛顿法是泰勒级数线性逼近的应用,梯度下降法是全微分线性逼近的应用。

三 Jensen不等式

1凸函数定义的推广

下面第一张图片为凸函数的定义,第二张图片为Jensen不等式:f[E(x)]<=E[f(x)],即凸函数定义的推广。

2证明:数学归纳法

(1)根据定义我们已经知道当 n = 2 的时候此结论成立,即凸函数的定义

(2)假设当n=N时,结论成立,即:如下图(同时进行了必要的定义)

(3)那么,当n=N+1时,有:


本文时我的第二篇博客,欢迎大家留言,共同交流和学习。