三、机器学习三要素
- 机器学习三要素:模型、策略、算法。
3.1 模型
模型定义了解空间。监督学习中,模型就是要学习的条件概率分布或者决策函数。
模型的解空间包含了所有可能的条件概率分布或者决策函数,因此解空间中的模型有无穷多个。
模型为一个条件概率分布:
解空间为条件概率的集合: 。其中: 为随机变量, 为输入空间, 为输出空间。
通常 是由一个参数向量 决定的概率分布族: 。其中: 只与 有关,称 为参数空间。
模型为一个决策函数:
解空间为决策函数的集合: 。其中: 为变量, 为输入空间, 为输出空间。
通常 是由一个参数向量 决定的函数族: 。其中: 只与 有关,称 为参数空间。
解的表示一旦确定,解空间以及解空间的规模大小就确定了。
如:一旦确定解的表示为: ,则解空间就是特征的所有可能的线性组合,其规模大小就是所有可能的线性组合的数量。
将学习过程看作一个在解空间中进行搜索的过程,搜索目标就是找到与训练集匹配的解。
3.2 策略
- 策略考虑的是按照什么样的准则学习,从而定义优化目标。
3.2.1 损失函数
对于给定的输入 ,由模型预测的输出值 与真实的标记值 可能不一致。此时,用损失函数度量错误的程度,记作 ,也称作代价函数。
常用损失函数:
0-1
损失函数:平方损失函数
MSE
:绝对损失函数
MAE
:对数损失函数: 。
其物理意义是:二分类问题的真实分布与模型分布之间的交叉熵。
一个简单的解释:因为样本 易经出现,所以理论上 。
如果它不为 1,则说明预测存在误差。越远离1,说明误差越大。
训练时采用的损失函数不一定是评估时的损失函数。但通常二者是一致的。
因为目标是需要预测未知数据的性能足够好,而不是对已知的训练数据拟合最好。
3.2.2 风险函数
通常损失函数值越小,模型就越好。但是由于模型的输入、标记都是随机变量,遵从联合分布 , 因此定义风险函数为损失函数的期望:
其中 分别为输入空间和输出空间。
学习的目标是选择风险函数最小的模型 。
求 的过程中要用到 ,但是 是未知的。
实际上如果它已知,则可以轻而易举求得条件概率分布,也就不需要学习。
3.2.3 经验风险
经验风险也叫经验损失。
给定训练集 ,模型关于 的经验风险定义为:
经验风险最小化 (
empirical risk minimization:ERM
) 策略认为:经验风险最小的模型就是最优的模型。即:经验风险是模型在 上的平均损失。根据大数定律,当 时 。
但是由于现实中训练集中样本数量有限,甚至很小,所以需要对经验风险进行矫正。
结构风险是在经验风险上叠加表示模型复杂度的正则化项(或者称之为罚项)。它是为了防止过拟合而提出的。
给定训练集 ,模型关于 的结构风险定义为:
其中:
- 为模型复杂度,是定义在解空间 上的泛函。 越复杂,则 越大。
- 为系数,用于权衡经验风险和模型复杂度。
结构风险最小化 (
structurel risk minimization:SRM
) 策略认为:结构风险最小的模型是最优的模型。即:结构风险最小化策略符合奥卡姆剃刀原理:能够很好的解释已知数据,且十分简单才是最好的模型。
3.2.4 极大似然估计
极大似然估计就是经验风险最小化的例子。
已知训练集 ,则出现这种训练集的概率为: 。
根据 出现概率最大,有:
定义损失函数为: ,则有:
即:极大似然估计 = 经验风险最小化 。
3.2.5 最大后验估计
最大后验估计就是结构风险最小化的例子。
已知训练集 ,假设已知参数 的先验分布为 ,则出现这种训练集的概率为: 。
根据 出现概率最大:
定义损失函数为: ;定义模型复杂度为 ;定义正则化系数为 。则有:
即:最大后验估计 = 结构风险最小化。
3.3 算法
- 算法指学习模型的具体计算方法。通常采用数值计算的方法求解,如:梯度下降法。