2018-10-13
《机器学习》(西瓜书)笔记(1)-绪论
1引言
什么是机器学习?机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。在计算机系统中,“经验”通常以“数据”形式存在,因此,机器学习所研究的主要内容,是关于在计算机上从数据中产生“模型”(model)的算法,即“学习算法”。有了学习算法,我们把经验数据提供给它,它就能基于这些数据产生模型;在面对新情况时,模型会给我们提供相应的判断,如果说计算机科学是研究关于“算法”的学问,那么类似的,可以说机器学习是研究关于“学习算法”的学问。
2基本术语
数据集:数据记录的集合称为一个数据集。
样本:数据集中每条记录是关于一个事件或对象的描述,称为一个样本。
属性(特征):反应事件或对象在某方面的表现或性质的事项。
属性值:属性上的取值。
特征向量:我们把西瓜的三个属性“色泽”,“根蒂”,“敲声”作为三个坐标轴,则它们张成一个用于描述西瓜的三围空间,每个西瓜都可在这个空间中找到自己的坐标位置。由于空间中的每一个点对应一个坐标向量,因此我们也把一个示例称为一个“特征向量”。
分类:若我们预测的是离散值,此类学习任务称为“分类” 。
回归:若预测的是连续值,此类学习任务称为“回归”。
根据训练数据是否拥有标记信息,学习任务可大致分为两大类:监督学习和无监督学习。分类和回归是前者的代表,而聚类是后者的代表。
学得的模型适用于新样本的能力,称为 泛化能力。具有强泛化能力的模型能很好地适用于整个样本空间。通常假设样本空间中全体样本服从一个未知“分布” D ,我们获得的每一个样本都是独立地从这个分布上获得的,即独立同分布。一般而言,训练样本越多,我们得到的关于D的信息越多,这样就越有可能通过学习获得具有强泛化能力的模型。
3假设空间
归纳和演绎是科学推理的两大基本手段。前者是从特殊到一般的泛化过程,即从具体的事实归结出一般性规律;后者则是从一般到特殊的泛化过程,即从基础原理推演出具体状况。例如,在数学公理系统中,基于一组公理和推理规则推导出与之相洽的定理,这是演绎;而从样例中学习显然是一个归纳的过程,因此亦称为归纳学习。
4归纳偏好
机器学习算法在学习过程中对某种类型假设的偏好,称为“归纳偏好”。任何一个有效的机器学习的算法必有其归纳偏好,否则它将被假设空间中看似在训练集上“等效”的假设所迷惑,而无法产生确定的学习结果。可以想象一下,如果没有偏好,我们的西瓜学习算法产生的模型每次在进行预测时,随机抽取训练集上等效的假设,那么对这个新瓜(色泽=青绿;根蒂=蜷缩;敲声=沉闷),学得的模型时而告诉我们它是好的,时而告诉我们它是不好的,这样的学习结果是没有意义的。我们一般使用奥卡姆剃刀(若有多个假设与观察一致,则选择最简单的那个。)原则来指引算法做出正确偏好的选择。
举个例子:
归纳偏好的例子在上述图中可能更直观,假设上图中有六个数据点,算法LA基于某种归纳偏好产生了对应于曲线A的模型,算法LB基于另一种归纳偏好产生了对应于曲线B的模型。根据奥卡姆剃刀原则,我们假设曲线“更平滑”意味着“更简单”,这是我们就有理由确信算法La比算法LB要好。确实,在上图中,曲线A与训练集外的样本更一致,A的泛化能力更强。
但是,我们希望且相信LA比LB更好,但会不会出现下图中的情况,在这种情况下:B是不是表现的更好?
(中间省略一系列推到过程,我实在看不懂。) 根据公式进行推导后的结果是:总误差与学习算法无关。也就是无论使用哪种算法,他们的期望值竟然相同。这就是没有免费的午餐定理(No Free Lunch Theorem,简称NFL定理) 。
既然所有的学习算法的期望性都跟随机的差不多,那还有什么好学的?我们需要注意到,NFL定理有一个重要的前提:所有“问题”出现的机会相同、或所有问题同等重要。但实际情形并不是这样。很多时候,我们只关注自己正在试图解决的问题,希望为他找到一个解决方案,至于这个解决方案在别的问题、甚至在相似的问题上是否有好的方案,我们并不关心。
NFL定理最重要的寓意是让我们清楚的认识到,脱离具体问题,空谈“什么学习算法更好”毫无意义,因为若考虑所有潜在的问题,则所有学习算法都一样好。要谈论算法的相对优劣,必须要只对具体的学习问题;在某些问题上表现好的算法,在另一些问题上可能表现的不尽如人意,学习算法自身的归纳偏好与为题是否相配,往往会起到决定性的作用。
参考文献:周志华 著. 机器学习, 北京: 清华大学出版社, 2016年1月.
Y's Blog
