1、机器学习所研究的主要内容,是关于在计算机上从数据中产生“模型(model)”的算法,即学习算法(learning algorithm)。有了学习算法,我们把经验数据提供给它,它就能基于这些数据产生模型;在面对新的情况时,模型会给我们提供相应的判断。可以说,机器学习是研究关于“学习算法”的学问。

2、学得模型适用于新样本的能力,称为泛化(generalization)能力。具有强泛化能力的模型能够很好地适用于整个样本空间。

3、通常我们假设样本空间中的全体样本服从一个未知的分布(distribution),我们获得的每个样本都是独立地从这个分布上采样获得的。即独立同分布。关于这个采样样本与全体样本是独立同分布的关系是非常重要的,没有这个先验假设,后面的诸如卡方检验,t-检验,以及训练集,测试集的划分之类的就无从谈起。

4、关于归纳偏好 机器学习算法在学习过程中对某种类型假设的偏好,称为“归纳偏好”(inductive bias)。 如果说,一个样本有三个特征(或者说“属性值”),且这三个特征的不同取值都会影响到该样本的最终类别判定。那么我们应该能想到,这三个特征的不同取值对于类别判定的影响是有差别的。或许特征1对类别判定的影响更大些,又或许特征2对类别判定的影响更大些。我们可以简单的认为,每个特征前面都有一个权重参数w(在机器学习中,关于这一块的内容涉及到特征选择(feature selection),而特征选择有涉及到对样本的数据分析)。 我们需要知道的是,任何一个有效的机器学习算法,都必须尤其归纳偏好,否则他将无法产生确定的学习结果。 如下图所示一样。这里的每个训练样本都是图中的一个点(x,y)。要学得一个与训练集一致的模型,相当于找到一条穿过所有训练样本点的曲线。那么很显然,这条线不止一条。如果说,我们没有归纳偏好的话,那么我们就无法确定哪一条曲线才是正确的模型了。

这里写图片描述 那么,有没有一般性的原则来引导学习算法确立“正确的”偏好呢?奥卡姆剃刀(Occam’s razor)是一种常用的、自然科学中最基本的原则,即“若有多个假设与观察一致,则选最简单的那个。” 在上图中,很明显曲线A比曲线B更平滑,更符号奥卡姆剃刀原则,因此,我们自然地会更偏好曲线A。 然而,理想很美好,现实很骨感。奥卡姆剃刀只能说是在宏观意义上,作为一个指导性的一般原则,它并不一定适用于任何具体的问题。 事实上,归纳偏好对应了学习算法本身所作出的关于“什么样的模型更好”的假设(只是一个假设),在具体的现实问题中,这个假设是否成立,即算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能够取得好的性能。 如下图所示,我们就能看到,更符号测试样本的曲线B明显不符合奥卡姆剃刀原则。

这里写图片描述 所以,我们应该能够认识到,脱离具体问题来空谈哪个算法更好是毫无意义的。因为我们知道,算法就是为了解决问题而存在的,没有问题,哪里来得算法? 关于这一块,还有一个有趣的NFL(No Free Lunch)定理。该定理最最重要的寓意,就是让我们清楚的意识到,脱离具体问题空谈“什么学习算法更好”毫无意义,因为若考虑所有潜在的问题,则所有的学习算法都一样好(宏观意义上)。要谈论算法的相对优劣,必须要针对具体的学习问题;在某些问题上表现良好的学习算法,在另一些问题上却可能不尽如人意。学习算法自身的归纳偏好与问题是否相匹配,往往会起到决定性作用。

5、我们实际希望的,是在新样本上能表现得很好的学习器,为了达到这个目的,应该从训练样本中尽可能学出适用于所有潜在样本的“普遍规律”。然后,当学习器把训练样本学得太好了的时候,很可能把训练样本中的一些局部性质当成了所有潜在样本都会具有的一般性质,这样就会导致学习器的泛化性能下降。这种现象在机器学习中被称为“过拟合(overfitting)”。与过拟合相对的是“欠拟合(underfitting)”,这是指对训练样本的一般性质尚未学好。有多种情况可以导致过拟合和欠拟合。其中欠拟合的问题很多解决,无非就是算法优化的问题,但是过拟合的问题就比较难解决了。可以说,这是机器学习所面临的关键障碍。虽然说,各种机器学习算法都会有针对过拟合的措施,然而,我们必须认识到,过拟合是无法避免的。我们所做的只能是“缓解”它带来的影响。这很好理解,因为毕竟我们是从样本数据中来学习的,所以无可避免的会携带有样本数据的特征。就像我们一个徒弟是师傅带出来的一样,徒弟也无可避免的会有师傅的影子一样。