笔记基于《机器学习》周志华一书所作的整理。

机器学习是什么,如何理解机器学习?

人在认知事物的时候,必须经过一定的经验积累和认识,然后做出相应合理的决策。也就是说人在某一领域上经验的积累会提高人对事物的处理和反应能力。类比到机器学习中,机器学习正是这样一门学科,致力于如何通过计算的手段,利用所谓的经验来让系统具有一定的功能或者改善自己的性能,比如计算机视觉让计算机有“看物体”的能力,并使视觉能力不断增强,自然语言处理让计算机有“翻译,对话”能力,大量的模拟和计算使机器更“懂人话”。

在计算机系统中,“经验” 通常以“数据”的方式存在。机器学习所要研究的主要内容就是,关于在计算机上从数据中产生一个模型的算法,即“学习算法”。基于提供的经验和数据我们对系统进行提炼和优化模型,当系统接收到相应输入时,根据已有的经验去进行响应,做出符合“智能”定义的行为。机器学习,主要是数据+算法。通常情况下,数据的采集和处理显得更为重要,一般来说数据集越大,学习能力越强,但也意味着更长的训练时间和修正优化时间。

机器学习需要的数据基础

要进行机器学习,先要有数据。比如判定西瓜的好坏,需要先给出许多西瓜的数据例子:(色泽=青绿,根蒂=硬挺 … )[],(色泽=白色,根蒂=蜷缩)[ ]等等,这些数据记录的集合称为数据集,每一条记录都是样本或者示例,每一条记录里有对象的属性或特征。 属性张开的空间称为属性空间,样本张开的空间称为样本空间 。在数学上,我们使用线性代数中的向量来表示物体的空间,空间的维度由我们数据记录中的属性个数决定,比如西瓜有色泽,根蒂,响声三个属性,那么我们以这三个属性张开的空间就可以表示所有的西瓜,每一个西瓜都能在这个空间中找到自己的坐标位置。由于空间中的每一个点对应一个坐标向量,因此我们也把一个示例称为一个特征向量

一般地,令D = {x1, x2.., Xm } 表示包含m 个示例的数据集,每个
示例由d 个属性描述(例如上面的西瓜数据使用了3 个属性),则每个示例
Xi = (Xi1; Xi2; . . . ; Xid) 是d 维样本空间X 中的一个向量, Xi ε X , 其中Xij 是xi在第j 个属性上的取值(例如上述第3 个西瓜在第2 个属性上的值是”硬
挺” ), d 称为样本xi的”维数” (dimensionality)。

机器学习的过程

从数据中学的模型的过程称为“学习”或者“训练”。整个过程通过执行某些算法来完成(我们将了解到十大算法CNN,RNN),训练过程 中使用的数据称为“训练数据”, 每一个样本称为“训练样本”,训练样本的集合称为“训练集”。 学得模型对应了关于数据的某种潜在规律,亦称假设(后续会根据数据的训练做不断地修正), 机器学习本身就是一个不断逼近事实真相的过程。

模型有时被称为“学习器”,可看作学习算法在给定数据和参数空间上的实例化

机器学习所能完成的事和划分

  • 预测

    要建立一个可预测的模型,我们需要获得训练样本的结果信息,通常称为标记。一个样本具有标记时可成为样例。 标记集合也成为标记空间或者输出空间。比如要判断西瓜的好坏时,我们除了给出西瓜色泽,敲声等属性时,还要给出在这些属性下瓜的好坏,即赋予每一个样本标记 。根据预测对象的不同时,我们定义了不同的学习任务。

    • 分类:当预测的对象是离散值(例如好瓜,坏瓜),此类学习任务称为分类。
    • 回归:当预测的对象是连续值(例如西瓜的成熟度),此类学习任务称为回归。

    当预测的类别只有两个时,称为“二分类”任务,涉及多个时,称为“多分类”任务。

    一般地,预测任务是希望通过对训练集{(X1’ Y1) , (X2 , Y2) ,…, (Xm, Ym)} 进行学习,建立一个从输入空间X 到输出空间y 的映射f: X 叶y. 对二分类任务,通常令Y = {-1 ,+1} 或{0 , l}; 对多分类任务, IYI >2; 对回归任务, Y= R,R为实数集.

学得模型之后,使用其进行预测的过程称为“测试”。被预测的样本称为测试样本“。也就是说学习的过程是建立一个准确率更高的关于输入到输入的映射关系。

  • 训练数据处理:聚类clustering

    将训练集中的西瓜分成若干组,每一组称为一个簇,这些自动形成的簇可以对应一些潜在的概念划分,比如西瓜中按照色泽划分为”深色瓜“和”浅色瓜“。 这样有助于我们了解数据内在的规律,更为深入地分析数据建立基础。但是在聚类学习中,我们事先并不知道西瓜是根据哪些属性特征来划分为簇的,在学习过程中使用的训练样本通常不拥有标记信息。

根据训练样本是否拥有标记信息,学习任务大致可以划分为两类:监督学习无监督学习。没有标记的当然是无监督学习,这意味着在无监督学习中没有标准答案给机器,只能依靠机器分析内部的数据特征来做响应的判断,而有标记的学习,则可以理解为在得到标准答案后,机器的一次次自我修正,以期下次遇到相似的问题时,能得到和标准答案更为接近的答案。显然,分类和回归属于监督学习,聚类属于无监督学习。

泛化: 机器学习不仅在已有的训练样本上表现出高准确率,在新的未尝试过的样本上也能体现较高的准确率。显然强泛化的模型,更适用于整个样本空间,虽然样只是空间中一个很小的采样。

假设空间:由对象所可能存在的不同属性值所张成的空间

  • 归纳: 从特殊到一般的“泛化”过程,而从“样例”中学习显然是一个归纳的过程,所以也称为“归纳学习”。
    • 狭义归纳:要求从训练数据集中获得概念,所以也称概念学习或者概念形成。 概念学习中最简单的就是布尔概念学习,即让机器判断对或错,黑或白,类似预测中的二分类学习。
  • 演绎:从一般到特殊的“特化”过程,从基础原理推演到具体的情况。在数学公理系统中,基于公理和推理推导出与之相恰的定理。

模拟搜索西瓜问题的假设空间有多种做法,例如从顶向下,从一般到特殊,从底向上,从特殊到一般。 搜索过程遇到和训练集的“正确答案”不一致时,需要删除或者调整参数使之逼近真相。

在现实问题中,存在着很大的假设空间。但学习过程是基于有限的样本训练集来进行的,可能有多个假设和训练集一致。即存在一个与训练集一致的假设集合,称为“版本空间”。不同训练集对应不同的版本空间,版本空间属于假设空间的一部分。

归纳偏好

版本空间的问题:如果有三个与训练集一致的假设,但在不同模型的情况下,面临新的样本,却会产生不同的输出判断。也就是说不同的模型具有不同的偏好,对某种类型的假设的偏好。

在训练集之外的样本误差的计算方法 P8~9

总误差和实际学习算法无关,任意两个学习算法的总误差相同。 也就是说学习算法所具有的不同训练集外误差的期望性相同。这就是“没有免费午餐定理” NFL。定理的前提:我们希望学习的真实目标函数f均匀分布,实际并非如此。该定理揭示的是,脱离具体问题,空泛谈“什么学习算法”更好是毫无意义的。