机器学习基本概念、统计学基本概念简单介绍

以下内容由我的CSDN博客迁移。 这里主要介绍一下机器学习基本概念、统计学基本概念(参考《统计学习方法》,《深度学习》等)


一、什么是机器学习

机器学习又可以称为统计学习。机器学习算法是一种能够从数据中学习的算法,那么什么是学习呢?有如下定义: > ”如果一个系统能够通过执行某个过程改进它的性能,这就是学习。" > "对于某类任务\(T\)和性能度量\(P\),一个计算机可从经验\(E\)中学习是指,通过经验\(E\)改进后,它在任务\(T\)上由性能度量\(P\)衡量的性能有所提升。"

1. 任务 \(T\)

通常机器学习任务定义为机器学习系统如何处理样本,我们通常会将其表示为一个向量。常见的机器学习任务如下:

  • 分类
  • 输入缺失分类(即输入向量中包含缺失项)
  • 回归
  • 转录(将一种形式的数据转化成另一种形式。如:图片→文字描述)
  • 机器翻译
  • 结构化输出(输出是一个向量或数据结构,且构成输出的不同元素之间相互关联)
  • 异常检测
  • 合成和采样
  • 缺失值填补
  • 去噪
  • 密度估计或概率质量估计
  • ……

2.性能度量 \(P\)

\(P\)是特定于\(T\)的,例如对于分类问题,我们可以采用准确率来度量。但通常选择一个与系统理想表现对应的性能度量通常是很困难的。

  • 某些情况下我们不知道应该度量什么,如转录任务中,我们应该度量整个序列还是度量部分的正确性?因此度量的设计由我们实际应用需要决定。
  • 另一些情况是我们想度量的数值不容易度量,如很多隐式表示的概率分布。我们需要设计一个仍然对应于设计对象的替代标准,或者设计一个良好的近似。

3.经验 \(E\)

根据学习过程中的不同经验,机器学习算法可以大致分类为无监督(unsupervised) 算法和监督(supervised) 算法,此外还有强化学习半监督学习等(但实际上监督和无监督两者的界限是十分模糊的)。大部分学习算法可以被认为是在整个数据集上获取经验。数据集是样本的集合,而样本是特征的集合。统计学习关于数据的基本假设就是同类数据具有一定的统计规律性,这是统计学习的前提。。

总之, 机器学习方法可以概括为:从给定的、有限的、用于学习的训练数据集合出发,假设数据是独立同分布;并且假设要学习的模型属于某个函数的集合,称为假设空间;应用某个评价准则,从假设空间中选取一个最优模型,使它对已知的训练集和测试集有最优的度量值;而最优模型的选取过程由算法实现。

因此统计学习方法的三要素就是模型、策略、算法。

二、容量、过拟合和欠拟合

1.泛化

学习方法的泛化能力指由该方法学习到的模型对未知数据的预测能力,这是机器学习的主要挑战。我们在训练误差不断缩小的同时,也希望泛化误差尽量小。泛化误差指新输入的误差期望,即: \[R_{exp}(\hat f)=E_P[L(Y,\hat f(X))]\]

实际上泛化误差就是所学习到的模型的期望风险。

那么我们为什么能通过训练来减少泛化误差呢? 一般来说我们限制训练集和测试集的数据收集方式,即假设它们是独立同分布 (i.i.d.) 的。独立同分布的假设使得我们可以分析训练误差和泛化误差的关系,通过两种途径,使得我们机器学习算法的效果更好。

  1. 降低训练误差。
  2. 缩小训练误差和测试误差的差距。

这两个因素对应着两个挑战:欠拟合(underfitting)过拟合(overfitting)

2.容量

模型的容量指的是其拟合各种函数的能力。通过调整模型的容量,我们可以控制模型偏向于欠拟合或是过拟合。容量低的模型会欠拟合,而容量高的模型会过拟合。

  • 一种控制训练算法容量的方法是选择假设空间,即学习算法可以选择为解决方案的函数集。如:线性回归将所有线性函数作为假设空间,而广义线性回归的假设空间还包括多项式函数。
  • 对于容量选取的原则我们通常遵循 奥卡姆剃刀(Occam's razor) 原则:在同样能够解释已知观测现象的假设中,我们应该挑选”最简单“的那一个。
  • 统计学习理论提供了量化模型容量的不同方法,其中最有名的就是Vapnik-Chervonenkis维度简称VC维,它度量二元分类器的容量。 关于VC维的理解 机器学习和数据挖掘(7):VC维
  • 统计学习理论最重要的结论就是阐述了训练误差和泛化误差之间差异的上界随着模型容量的增长而增长,而随着训练样本增多而下降。这为机器学习的有效性提供了理论验证,但实际上很少应用于深度学习中。一方面边界太松,另一方面深度学习算法的容量很难确定。
  • 更简单的函数更可能泛化,但我们仍需选择一个充分复杂的假设以达到低的训练误差。容量和误差之间典型关系
  • 还有一种容量是任意高的极端情况,即非参数模型,一个实例就是最近邻回归,它预测\(\hat y=y_i, i=\argmin \|\boldsymbol{X}_i-\boldsymbol{x}\|^2_2\) (也可以是其它距离)。对于非参数模型,更多的数据意味着更好的泛化能力,直到达到最佳可能的泛化误差。
  • 贝叶斯误差:从预先知道的真实分布中进行预测出现的误差。它代表了分布的固有噪声。任何模型容量小于最优容量的固定参数模型会渐进到大于贝叶斯误差的误差值,通常我们可以认为人的误差近似于贝叶斯误差。

没有免费午餐定理(NFL)

没有一个机器学习算法总是比其他的要好。换言之,在所有可能的任务上,最先进的算法和简单地将所有点归为同一类的简单算法有着同样的平均性能。 (也就是说,我们要做到具体问题具体分析,从实际出发,实事求是) (马原没白学)

两种选择模型的方法:

3. 正则化

为了满足奥卡姆剃刀原则同时又尽可能减少误差,我们可以使用正则化的方法。正则化是结构风险最小化策略(SRM)的实现,是在经验风险上加一个正则化项或惩罚项,以使学习算法降低泛化误差。 \[R_{srm}(f)=\dfrac {1}{N}\sum^N_{i=1}L(y_i,f(x_i))+\lambda J(f)\]

  • 正则化是机器学习的中心问题之一,只有优化能够与其重要性相提并论。

4.交叉验证

一个小规模的测试集意味着平均测试误差估计的统计不确定性,使得很难判断算法\(A\)是否比算法\(B\)做得更好。因此采用交叉验证:把给定的数据进行切分,将切分的数据集组合为训练集和测试集,在此基础上反复训练以选择模型。

常见交叉验证

三、统计学的基本概念

(一些常见的如偏差、方差不再赘述)

  • 注:无偏差不一定是最好的,我们经常会使用具有重要性质的有偏估计。

1.均方误差

偏差和方差度量这估计量的两个不同误差来源,那么如何权衡选择较大偏差还是较大方差呢?我们可以比较估计的均方误差(MSE) \[MSE=\mathbb{E}[(\hat \theta-\theta)^2]=Bias(\hat \theta_m)^2+Var(\hat \theta_m)\]

MSE度量着估计和真实参数θ之间平方误差的总体期望偏差。

2.最大似然估计

\[\theta_{ML}=\underset{\theta}{\argmax}\sum_{ i=1 }^{m } \log p_{model}(x^{(i)};\theta)\\ \underset{缩放代价函数argmax不会改变}{\Downarrow }\\\theta_{ML}=\underset{\theta}{\argmax}\mathbb{E}_{\bold{X}\sim\hat p_{data}}\log p_{model}(x^{(i)};\theta)\] 一种解释最大似然估计的观点是将它看作最小化训练集上的经验分布\(\hat p_{data}\)和模型分布之间的差异,两者之间的差异程度可以通过KL散度度量: \[D_{KL}(\hat p_{data}\|p_{model}=\mathbb E_{\bold x\sim\hat p_{data}}[\log \hat p_{data}(\boldsymbol x)-\log p_{model}(\boldsymbol x)]\] 左边一项仅涉及数据生成过程,因此训练模型最小化KL散度时,我们只需要最小化\(-\mathbb E_{\bold x\sim\hat p_{data}}[\log p_{model}(\boldsymbol x)]\)也就是最小化交叉熵,也就是最大化似然。

最大似然的性质:

  • 在合适的条件下,最大似然估计具有一致性,意味着样本数目越大参数的最大似然估计会收敛到真实值。条件有:
    1. 真实分布\(p_{data}\)必须在模型族\(p_{model}(\cdot ;\theta)\)中。
    2. 真实分布\(p_{data}\)必须刚好对应一个θ值

除了最大似然估计,还有许多其他的归纳准则,其中有些共享一致估计的性质。但是,一致估计的统计效率可能区别很大。

当m较大时,Cramér-Rao下界表明不存在均方误差低于最大似然估计的一致估计。因此最大似然通常是机器学习中的首选估计方法,而样本数目较小时,正则化策略如权重衰减可用于获得训练数据有限时方差较小的最大似然有偏版本。

3.贝叶斯统计

上面讨论了频率派估计方法和基于估计单一值 \(\boldsymbol \theta\) 的方法,并基于该估计作所有的预测。另一种方法是在做预测时考虑所有可能的 $ $ 。后者属于贝叶斯统计的范畴。 频率派认为 \(\boldsymbol \theta\) 是未知的,而认为点估计 \(\hat \boldsymbol{\theta}\) 是考虑数据集上函数的随机变量。 而贝叶斯统计认为真实参数\(\boldsymbol \theta\)是未知的,因此可表示成随机变量。

在观察到数据之前,我们将 \(\boldsymbol \theta\) 的已知知识表示为先验概率分布,一般是高熵的经验分布,以反映\(\boldsymbol \theta\)的高度不确定。一个实例:贝叶斯线性回归方法的解释和优点 \[p(\boldsymbol \theta|x^{(1)},\dots x^{(m)})=\dfrac{p(x^{(1)},\dots x^{(m)}|\boldsymbol \theta)p(\boldsymbol \theta)}{p(x^{(1)},\dots x^{(m)})}\]

不同于最大似然估计(MLE),贝叶斯估计使用\(\boldsymbol \theta\)的全分布,每一个正概率密度的\(\boldsymbol \theta\)的值都有助于下一个样本的预测,贡献由后验密度本身加权。 \[p(x^{(m+1)}|x^{(1)},\dots x^{(m)})=\int p(x^{(m+1)}|\boldsymbol \theta)p(\boldsymbol \theta|x^{(1)},\dots x^{(m)})d\boldsymbol \theta\]

另一个最大的区别就是贝叶斯估计的先验分布。先验能够影响概率质量密度朝参数空间中偏好先验的区域偏移。因此贝叶斯估计有很强的主观性。

总之,在训练数据很有限时,贝叶斯方法通常泛化得更好,但当训练样本数目很大时,通常会有很大的计算代价。

4.最大后验(MAP)估计

为了简化对贝叶斯后验的计算,可以采用点估计以有一个近似可行解。一种让先验影响点估计的方法就是最大后验点估计。MAP估计选择后验概率最大的点(或是概率密度最大): \[\boldsymbol \theta_{\mathrm{MAP}}=\argmax_\boldsymbol \theta p(\boldsymbol {\theta|x})=\argmax_\boldsymbol \theta \log p(\boldsymbol {x|\theta})+\log p(\boldsymbol \theta)\] eg:具有高斯先验权重的MAP贝叶斯推断对应着权重衰减。 对比于MLE, MAP最大的优点就是能够利用来自先验的信息,这些信息无法从训练数据中获得。这些信息有助于减少MAP点估计的方差,但是相对的会增加偏差。 > 很多但不是全部的正则项都可以被解释为MAP先验的近似

进一步学习:详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解


以上内容如有谬误还请告知。之后还会持续更新,敬请关注