机器学习基础

作为一个多学科交叉的融合学科,机器学习涉及到包括计算机、矩阵分析、概率统计、优化理论等在内的多门学科知识,它让计算机能够在没有被显示编程的情况下拥有学习的能力。机器学习算法能够自动地从数据中发现内在的知识和规律,并根据这些规律对未知数据可能产生的结论进行推测。几乎所有由计算机完成的智能型任务背后都是机器学习算法的功劳。

1. 学习算法

  根据书中的解释,机器学习中学习的定义是“对某类任务T和性能度量P,一个计算机程序被认为可以从经验E中学习是指,通过经验E改进后,它在任务T上由性能度量P衡量的性能有所提升”。例如在数值计算的求解实例中,任务T是指选取$f(x)$的合适参数,以使$f(x)$与$y$尽可能的接近;尽可能的接近是性能度量P的描述,形式化的表示为估计值与真实值之间的平方损失;而使用的数据集和学习算法类型为经验E。

  关于任务T,性能度量P和经验E有以下需要了解的地方

任务T

  机器学习的任务通常定义为让计算机学会如何处理样本,样本即为我们通常所说的特征(feature),基本的机器学习任务如下:

除此之外,机器学习能够做的一些具体的任务包括转录、机器翻译、结构化输出、异常检测等。

性能度量P

  为了评估机器学习的优劣,需要对算法的输出结果进行定量的衡量分析,这就需要一些合适的性能度量指标。

  需要注意的是,性能指标通常要根据任务情况来进行选取,对于部分简单的任务而言,可以比较容易的选择性能度量指标,而对很多的复杂任务而言,选取合适的性能指标需要将很多因素综合考虑。另外,为了更准确有效地衡量机器学习算法的能力,通常会将数据划分出来一部分作为测试集,使用模型在这部分数据的输出结果衡量其性能。

经验E

2. 容量、过拟合和欠拟合

overfitting.png

3. 超参数和验证集

4. 估计、偏差和方差

基本概念

误差与偏差和方差的关系

  bias和variance是一个估计量的两个不同误差来源,通常情况下可以使用均方误差(Mean Squared Error, MSE)来表示估计的好坏,有

实际上,除了包含bias和bar之外,MSE还应当包含噪声项,但噪声通常是不可控的随机因素,因此一般不考虑。

  bias和variance的形象化描述可以用如下的图表示(图片引自BiasVariance):
bias and variance

而bias和variance与模型复杂度之间的关系如下图,随着模型复杂度的提高,模型对训练数据的拟合效果提升,bias降低,而variance增大,算法的训练目标就是寻找一个平衡variance和bias的点,最小化总的error
bias and variance with model complexith

5. 最大似然估计

  最大似然估计(Maximum Likelihood Estimation, MLE)是一种最为常见的估计准则。用一句话可以概括为在已知分布产生的一些样本而未知分布具体参数的情况下根据样本值推断最有可能产生样本的参数值。将数据的真实分布记为$p_{data}(x)$为了使用MLE,需要先假设样本服从某一簇有参数确定的分布$p_{model}(x;\theta)$,现在的目标就是使用估计的$p_{model}$来拟合真实的$p_{data}$,MLE产生的参数估计值被定义为:

通常为了计算方便,会对MLE加上log,将乘积转化为求和然后将求和变为期望:

最大似然估计的一种解释是使$p_{model}$与$p_{data}$之间的差异性尽可能的小,形式化的描述为最小化两者的KL散度。

  此外,MLE也很容易转化为条件概率的形式,如下所示: , 上式是许多监督学习算法的基础假设。

6. 贝叶斯估计

  最大似然估计属于典型的频率学派统计方法,它假设数据是由单一的最优参数值生成,并在此基础上对参数进行估计;而另一种方法是考虑到所有的的参数值以及这些参数的先验概率分布,通过贝叶斯准则来对估计参数的后验分布情况,用公式表示如下:

贝叶斯估计假设已知的是参数的先验分布情况和模型的类簇,之后利用数据集的样本点根据贝叶斯准则来对参数的分布情况进行修正,它得到的结果不是一个单一的参数值,而是根据参数先验分布和真实样本得到的修正过后的参数分布,即参数的后验分布,根据贝叶斯估计,在已知m个样本后,估计第m+1的样本分布的公式如下:

可以看到,不同于频率学派单点估计的方法,贝叶斯估计在对未知数据预测时,将所有的参数分布都进行了考虑,同时按照参数的概率密度情况进行加权。

最大后验估计

  完整的贝叶斯估计需要使用参数的完整分布进行预测,然而对绝大多数的机器学习任务而言,这将会导致十分繁重的计算因而是不可取的,因此通常利用最大后验估计(Maximum A Posteriori, MAP)来选取一个计算可行的单点估计参数作为贝叶斯估计的近似解,公式如下:

可以看到MAP的估计实际上就是对数似然加上参数的先验分布。实际上,在参数服从高斯分布的情况下,上式的右边就对应着L2正则项;在Laplace的情况下,对应着L1的正则项;在均匀分布的情况下则为0,等价于MLE。

7. 传统机器学习算法

构建机器学习算法的要素

  构建一个完整的机器学习算法需要以下几个部分。

常用算法