Class | Content |
---|---|
layout | post |
title | 第一章 统计学习方法概论 |
categories | Course |
description: | 李航 《统计学习方法》的学习, 主要介绍基本概念,详细叙述了监督学习,提出统计学习的三要素:模型\策略\算法,另外还介绍了模型选择:包括正则化\交叉验证与学习的泛化能力,此外还介绍了生成模型和判别模型. |
keywords | 监督学习 模型三要素 模型选择 生成模型 判别模型 |
1.1 统计学习
a. ~概念:
又叫统计机器学习,人们提到的机器学习往往指统计机器学习, 它是利用计算机对数据构建的概论统计模型,并运行模型对新的数据进行预测和分析
b. ~特点:
(1)平台[计算机及网络] ;
(2)对象:数据;
(3)目的:分析和预测;
(4)中心:统计学习方法;
(5)多领域交叉[概率论\统计学\信息论\最优化\计算理论\计算机科学等]
c. ~前提假设:
同一类数据具有一定的统计规律性[因为它具有统计规律,所以可以用概率统计的方法进行处理,eg 用随机变量描述数据的特征,概论分布描述数据的统计规律]
d. ~方法:
统计学习方法可以分为: 监督学习\非监督学习\半监督学习\强化学习等
e. 统计学习方法三要素:
方法 = 模型+策略+算法
模型: 这里不再赘述
策略: 按照什么准则学习或者选择最优模型,引用了损失函数(loss function)与风险函数(risk function),详细介绍见博文《详解机器学习中的损失函数和风险函数》.
算法:学习模型的具体计算方法,根据学习策略从假设空间中选择最优模型,最后需要考虑用什么方法计算最优模型,转化为最优化问题,可能出现有显式的解析解,也可能需要用数值计算的方法进行求解.
注: 假设训练集和测试集数据是独立同分布产生的
f. ~步骤:
- 得到一个有限的训练数据集合;
- 确定包含所有可能的模型的假设空间,即学习模型的集合;
- 确定模型选择的准则,即学习的策略;
- 实现求解最优模型的算法,即学习的算法;
- 通过学习选择最优模型;
- 利用学习的最优模型对新数据进行分析和预测.
g. ~重要性 : 统计学习是处理海量数据最强有力的工具,是计算机智能化的有效手段.
1.2 监督学习
a. 监督学习概念:
是统计学习的方法之一, 它是学习一个模型,使得模型能对任意给定的输入,对其相应的输出做出一个好的预测. [最好的判断方式是看它是否有标签]
b. 输入空间\特征空间\输出空间:
输入与输出所有可能的取值的集合称为输入空间与输出空间,通常输出空间小于输入空间.特征空间表示所有特征存在的空间,而模型实际上是定义在特征空间上的.
c.训练集和测试集的表示:
表示输入随机变量,表示输出随机变量,和是定义在输入和输出空间上随机变量的取值.
训练集:
测试集:
输入和输出对又称为样本或样本点
d. 不同预测任务的名称:
输入变量和输出变量均为连续的预测问题称为回归问题;输出变量为有限个离散变量的预测问题称为分类问题;输入变量和输出变量均为变量序列的预测问题被称为标注问题.
注: 对于标注问题,目前还没有做过类似的项目,初步理解如下:
标注问题:
- 输入序列:
- 输出标记序列:
其中为序列长度,不同的样本可以有不同的长度 - 条件概率分布为:
- 评价指标与分类问题的一致
- 常用的机器学习方法:隐马尔可夫模型\条件随机场等
- 应用场景:eg 自然语言词性标注.
e. 监督学习的基本假设: 监督学习假设输入和输出的随机变量和遵循联合概率分布,训练集和测试集被看做上依联合概率分布独立同分布产生的.
f. 假设空间:
是指包含所有可能的模型的集合,以监督学习为例,假设空间包含所有可能的条件概率分布或决策函数, 它是有参数向量决定的函数族或者条件概率分布族,表示为
或者
而模型是输入到输出的映射,,学习的目的是找到最好的模型,所有假设空间就确定了学习范围.而监督学习的模型可以是概率模型()也可以是非概率模型,所以对于一特定的实例,输出预测为和.
g. 监督学习形式化如下:
阐释: 监督学习假设训练集和测试集都是依联合概率分布独立同分布产生的.从训练集出发,学习系统先训练数据, 应用某个评价准则从假设空间里选择最佳的模型,使得模型对训练数据和新数据在给定的评价准则下有最优的预测,学习到的模型表示为或者,所以在预测过程,给定输入,由模型得到
1.3 模型评估与模型选择
a. 训练误差\测试误差\泛化误差的概念:
统计学习不仅要对训练数据有较好的拟合效果,还要对未知数据有较好的泛化能力. 对于给定的损失函数,基于损失函数的模型的训练误差[针对训练集]和模型的测试误差[针对测试集]是学习方法的评估标准. 测试误差反映模型对未知数据的预测能力,测试误差越小,预测能力,即泛化能力越强.
注: 1. 学习所采用的损失函数可以与预测采用的损失函数不同,但是一般是一致的.
- 训练误差:
训练误差为模型关于训练集的平均损失,为训练样本容量 - 测试误差:
测试误差为模型关于测试集的平均损失,为训练样本容量 - 泛化误差: 泛化能力是指对未知数据的预测能力,而泛化误差反映了学习方法的泛化能力,泛化误差越小,方法越有效, 它实际上就是模型的期望风险,可以表示为
举例说明
当损失函数为0-1损失时,测试误差为 其中为指示函数,即为1,否则为0.
相应地,测试集上的准确率为
b. 过拟合和模型选择
- 模型选择: 由于假设空间含有不同复杂度的模型,模型选择的目的是选择尽可能最优的模型去逼近真模型.
- 过拟合: 为了追求训练集的预测能力,提高模型的复杂度[主要是模型包含过多参数],从而导致模型对训练集预测效果很好,对未知数据泛化能力很差.
举例说明:多项式曲线拟合
给定一组训练集,表示为, 对训练集我用下面的多项式进行拟合:
其中是模型预测结果,为原始的正确结果,通过最小二乘法可以求得拟合的多项式系数的唯一解.
拟合结果如(图1-2),图中给出了M=0,1,3,9的拟合效果,可以看出,当M=0时,多项式曲线是常数,拟合效果很差,M=1时,多项式曲线为直线,拟合效果依然很差,相反M=9,多项式曲线拟合了所以点.对于M=0和3的情况下,表现为欠拟合(即拟合不够), 而M=9为过拟合现象.
那么再看一下此时的训练误差和测试误差与模型复杂度关系如(图1-3),随着模型复杂度增加,训练误差和测试误差都先降低,但是随着复杂度变得更高的时候,训练误差变得更小甚至趋近于0,而测试误差陡然上升,此时出现了过拟合现象,模型对训练集过拟合,而对未知数据泛化能力下降.
另外,我们在看一下参数与模型复杂度的关系, 随着模型复杂度增加
问题来了,那么如何防止过拟合呢?
-
1. 增加训练集
对于多项式曲线拟合的例子,通过增加训练集数量可以有效减缓过拟合, 可以看出N=15时,模型拟合效果很好,而增加数据,模型难以将每一个数据的都拟合到,所以增加训练集数量可以有效防止过拟合.
-
2. 正则化
正则化是指在经验风险的基础上加上正则化项,正则化项可以取不同的形式,可以是参数向量的范数,也可以是范数,但是一般来说,正则化项是模型复杂度单调递增函数
其中,公式前一部分是经验风险,公式后一部分是正则化项,,通常,系数从正则化项中省略,因为包含会使得结果依赖于⽬标变量原点的选择,
(Hastie et al., 2001), 而的作用是调节经验风险和正则化项关系的系数,而正则化的作用是选择经验风险和模型复杂度都较小的模型
下图是M=9的模型,利用正则抑制过拟合的例子,图左通过加入正则化项,于 = −18,过拟合现象被压制,而图右过大未能调节好经验风险和正则化项关系,模型拟合效果也差.
⽤M = 9的多项式拟合,拟合的多项式的对应的系数在表1.7中给出,表明正则
化在减⼩系数的值⽅⾯产⽣了预期的效果.
但是该取值多少呢?
可以从下图1-8看出,控制了模型的复杂性,因此决定了过拟合的程度.
总结: 在损失函数中加入正则项可以有效避免过拟合,而正则项的决定了过拟合程度,因为起为高参,需要做参数实验取得最佳值.而从贝叶斯估计的角度看,正则化项对应于模型的先验概率,复杂的模型先验概率小,简单的模型先验概率大. 3. 交叉验证
交叉验证的基本思想是重复使用数据,把给定的数据切分成为训练集和测试集,在此基础上反复进行训练]测试以及模型选择.
详细的交叉验证方法以及如何交叉验证见博客《简述交叉验证》
1.4 生成模型和判别模型
监督学习模型可以分为两种:生成模型(generative model)和判别模型(discriminative model).
- 生成模型:由于模型给定了输入和输出的关系,所以学习到联合概率分布P(X,Y),然后求出条件概率分布作为预测,eg 朴素贝叶斯\隐马尔可夫模型.
生成模型表示为: - 判别模型:由数据直接学出决策函数或者条件概率分布,只关心给定输入预测输出,eg.K-近邻\感知机\决策树\最大熵\SVM等.
总结
本章主要介绍了机器学习的基本概念,详细讲解了监督学习,训练误差\预测误差\泛化误差,生成模型和判别模型等,文章框架依据李航《统计学习方法》第一章而来,准备地说,是自己对其的归纳和简述,同时举例参考bishop的经典《模式识别和机器学习》书籍.
如有疑问,联系:[email protected]