统计学习(statistical learning)是关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科。
统计学习也称为统计机器学习(statistical machine learning)。
统计学习的主要特点是
赫尔伯特·西蒙(Herbert A. Simon)曾对“学习”给出以下定义
“如果一个系统能够通过执行某个过程改进它的性能,这就是学习。”
按照这一观点,统计学习就是计算机系统通过运用数据及统计方法提高系统性能的机器学习。现在,当人们提及机器学习时,往往是指统计机器学习。
统计学习的对象是数据(data)。
它从数据出发,提取数据的特征,抽象出数据的模型,发现数据中的知识,又回到对数据的分析与预测中去。作为统计学习的对象,数据是多样的,包括存在于计算机及网络上的各种数字、文字、图像、视频、音频数据以及它们的组合。
统计学习关于数据的基本假设是同类数据具有一定的统计规律性,这是统计学习的前提。这里的同类数据是指具有某种共同性质的数据,例如英文文章、互联网网页、数据库中的数据等。由于它们具有统计规律性,所以可以用概率统计方法来加以处理。比如,可以用随机变量描述数据中的特征,用概率分布描述数据的统计规律。
在统计学习过程中,以变量或变量组表示数据。数据分为由连续变量和离散变量表示的类型。
离散变量的方法为主。另外,本书只涉及利用数据构建模型及利用模型对数据进行 分析与预测,对数据的 **观测和收集 **等问题 不作讨论。
统计学习用于对数据进行预测与分析,特别是对未知新数据进行预测与分析。
统计学习的方法是基于数据构建统计模型从而对数据进行预测与分析。
统计学习由
本书主要讨论 监督学习,这种情况下统计学习的方法可以概括如下:
最优模型的选取由算法实现
统计学习方法的三要素:模型(model)、策略(strategy)和算法(algorithm)
实现统计学习方法的步骤如下:
本书以介绍 统计学习方法为主,特别是 监督学习方法,主要包括用于分类、标注与回归问题的方法。这些方法在自然语言处理、信息检索、文本数据挖掘等领域中有着极其广泛的应用。
本书主要讨论 监督学习 问题。
监督学习(supervised learning)的 任务 是学习一个模型,使模型能够对任意给定的输入,对其相应的输出做出一个好的预测。
在监督学习中,将输入与输出所有可能取值的集合分别称为 输入空间(input space)与输出空间(output space)。
每个具体的输入是一个实例(instance),通常由 特征向量(feature vector) 表示。这时,所有特征向量存在的空间称为 特征空间(feature space)。
模型实际上都是定义在特征空间上的
输入、输出变量用大写字母表示,习惯上输入变量写作
,输出变量写作
。
输入、输出变量所取的值用小写字母表示,输入变量的取值写作
,输出变量的取值写作
。变量可以是标量或向量,都用相同类型字母表示。
本书中向量均为 列向量,输入实例
的特征向量记作
表示
的第
个特征。注意,
与
不同,本书通常用
表示多个输入变量中的第
个,即
监督学习从训练数据(training data)集合中学习模型,对测试数据(test data)进行预测。训练数据由输入(或特征向量)与输出对组成,训练集通常表示为
测试数据也由相应的输入与输出对组成。输入与输出对又称为 样本(sample) 或 样本点。
输入变量 X 和输出变量
有不同的类型,可以是 连续 的,也可以是 离散 的。
人们根据输入、输出变量的不同类型,对预测任务给予不同的名称
监督学习假设输入与输出的随机变量X和Y遵循联合概率分布
。
表示 分布函数,或 分布密度函数。注意,在学习过程中,假定这一联合概率分布存在,但对学习系统来说,联合概率分布的具体定义是未知的。训练数据与测试数据被看作是依联合概率分布
独立同分布产生的。统计学习假设数据存在一定的统计规律,
和
具有联合概率分布的假设就是监督学习关于数据的基本假设。
监督学习的目的在于学习一个由输入到输出的映射,这一映射由模型来表示。换句话说,学习的目的就在于找到最好的这样的模型。模型属于由输入空间到输出空间的映射的集合,这个集合就是假设空间(hypothesis space)。假设空间的确定意味着学习范围的确定。
监督学习的模型可以是概率模型或非概率模型,由 条件概率分布
或 决策函数(decision function)
表示,随具体学习方法而定。对具体的输入进行相应的输出预测时,写作
或
。
监督学习利用训练数据集学习一个模型,再用模型对测试样本集进行预测(prediction)。
由于在这个过程中需要训练数据集,而训练数据集往往是人工给出的,所以称为 监督学习。
监督学习分为学习和预测两个过程
image
图1.1 监督学习问题
首先给定一个训练数据集
其中
,称为样本或样本点。
输入的观测值,也称为输入或实例,
是输出的观测值,也称为输出。
监督学习中,假设训练数据与测试数据是依联合概率分布
独立同分布产生的。
在学习过程中,学习系统利用给定的训练数据集,通过学习(或训练)得到一个模型,表示为条件概率分布
或决策函数
。条件概率分布
或决策函数
描述输入与输出随机变量之间的映射关系。
在预测过程中,预测系统对于给定的测试样本集中的输入
,由模型
或
给出相应的输出
。
在学习过程中,学习系统(也就是 学习算法)试图通过训练数据集中的样本
带来的信息学习模型。
具体地说,
,一个具体的模型
可以产生一个输出
和模型输出
之间的差就应该足够小
学习系统通过不断的尝试,选取最好的模型,以便对训练数据集有足够好的预测,同时对未知的测试数据集的预测也有尽可能好的推广。
统计学习方法都是由模型、策略和算法构成的,即统计学习方法由 三要素 构成,可以简单地表示为
方法=模型+策略+算法
下面论述监督学习中的统计学习三要素。非监督学习、强化学习也同样拥有这三要素。可以说构建一种统计学习方法就是确定具体的统计学习三要素。
统计学习首要考虑的问题是学习什么样的模型。在监督学习过程中,模型就是所要学习的 条件概率分布 或 决策函数。模型的假设空间(hypothesis space)包含所有可能的条件概率分布或决策函数。
例如,假设决策函数是输入变量的线性函数,那么模型的假设空间就是所有这些线性函数构成的函数集合。假设空间中的模型一般有无穷多个。
假设空间用
表示。假设空间可以定义为决策函数的集合
其中,
和
是定义在输入空间
和输出空间
上的变量。这时
通常是由一个参数向量决定的函数族:
参数向量
取值于
维欧氏空间
,称为参数空间(parameter space)。假设空间也可以定义为条件概率的集合
其中,
和
是定义在输入空间
和输出空间上的随
机变量。这时
通常是由一个参数向量决定的条件概率分布族:
参数向量
取值于
维欧氏空间
,也称为参数空间。
本书中称由决策函数表示的模型为 非概率模型,由条件概率表示的模型为 概率模型。
有了模型的假设空间,统计学习接着需要考虑的是按照什么样的准则学习或选择最优的模型。
统计学习的目标: 从假设空间中选取最优模型。
首先引入损失函数与风险函数的概念。
监督学习问题是在假设空间
m中选取模型
作为决策函数,对于给定的输入
,由
给出相应的输出
,这个输出的预测值
与真实值
可能一致也可能不一致,用一个 **损失函数(loss function) **或 **代价函数(cost function) **来度量预测错误的程度。损失函数是
和
的非负实值函数,记作
。
统计学习常用的损失函数有以下几种:
损失函数值越小,模型就越好。由于模型的输入、输出
是随机变量,遵循联合分布
,所以损失函数的期望是
这是理论上模型
关于联合分布
的平均意义下的损失,称为 风险函数(risk function) 或 期望损失(expected loss)。
学习的目标就是选择期望风险最小的模型。由于联合分布
是未知的,
不能直接计算。实际上,如果知道联合分布
,可以从联合分布直接求出条件概率分布
,也就不需要学习了。正因为不知道联合概率分布,所以才需要进行学习。
这样一来,一方面根据期望风险最小学习模型要用到联合分布,另一方面联合分布又是未知的,所以监督学习就成为一个 病态问题(ill-formed problem)。
给定一个训练数据集
模型
关于训练数据集的平均损失称为 经验风险(empirical risk)或 经验损失(empirical loss),记作
:
期望风险
是模型关于联合分布的期望损失,经验风险
是模型关于训练样本集的平均损失。根据大数定律,当样本容量N趋于无穷时,经验风险
趋于期望风险
。
这就关系到监督学习的两个基本策略:
经验风险最小化(empirical risk minimization,ERM)的策略认为:经验风险最小的模型是最优的模型。
根据这一策略,按照经验风险最小化求最优模型就是求解最优化问题:
其中,
是假设空间。
当样本容量足够大时,经验风险最小化能保证有很好的学习效果,在现实中被广泛采用。比如,极大似然估计(maximum likelihood estimation)就是经验风险最小化的一个例子。
当模型是 条件概率 分布,损失函数是 对数损失函数 时,经验风险最小化就等价于 极大似然估计。
但是,当样本容量很小时,经验风险最小化学习的效果就未必很好,会产生后面将要叙述的 “过拟合(over-fitting)” 现象。
结构风险最小化(structural risk minimization,SRM)是为了防止过拟合而提出来的策略。
结构风险最小化 等价于 正则化(regularization)。
结构风险在经验风险上加上表示模型复杂度的正则化项(regularizer)或罚项(penalty term)。在假设空间、损失函数以及训练数据集确定的情况下,结构风险的定义是
结构风险最小化的策略认为结构风险最小的模型是最优的模型。所以求最优模型,就是求解最优化问题:
这样,监督学习问题就变成了 经验风险 或 结构风险函数 的最优化问题。
经验或结构风险函数是 最优化的目标函数。
算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最优模型。
这时,统计学习问题归结为最优化问题,统计学习的算法成为求解最优化问题的算法。如果最优化问题有显式的解析解,这个最优化问题就比较简单。但通常解析解不存在,这就需要用数值计算的方法求解。如何保证找到全局最优解,并使求解的过程非常高效,就成为一个重要问题。统计学习可以利用已有的最优化算法,有时也需要开发独自的最优化算法。
统计学习方法之间的不同,主要来自其模型、策略、算法的不同。确定了模型、策略、算法,统计学习的方法也就确定了。这也就是将其称为统计学习三要素的原因。