看完周志华老师的《机器学习》,对机器学习有了一个全面的了解,但其细节部分不是很了解,遂找同学借了本《统计学习方法》(感谢亲爱的波),感觉对机器学习的概念部分讲的很好,这里留作记录。
概论部分讲了统计学习方法的组成、机器学习的分类及要素,还有一些评估方法。
1. 统计学习背景
统计学习是由一些数学组成:概率统计、信息论、优化理论,所以想要深入的了解的化,本科学的统计、高数的前几章得熟悉,然后线性代数得着重看下,对了解并行处理有很大的帮助,有需要的还可以看下凸优化相关的东西,对优化部分会有更深刻的理解。
统计学习的对象是数据
,包括数字、文字、图片、视频、音频等,这里有个前提:这些同类数据具有一定的统计规律性。目标是对数据进行预测与分析。
2. 三要素
\(方法=模型+策略+算法\)。
模型:
我对模型的理解是:找到一个映射关系(函数),使得输入和输出的对应关系最大化,也就是一些统计特性更好。
书本上对模型的理解是在假设空间中找到最优的模型,怎么理解?书后面给了解释:
模型可分为条件概率函数和决策函数,这里是以条件概率为例子讲解,\(\theta\mbox{向量}\)为参数,所有可能的\(\theta\)对应的函数构成了假设空间,问题变成了从\(\theta\)中找到最优的值。
策略
策略是以什么样的准则去得到最优的模型。由于直接从原始的模型函数对得到最优解不是很容易,这里会先将模型转化成另一个关于求解参数的连续函数,更有利于求解问题。下面介绍损失函数和风险函数。
损失函数是度量预测错误的程度,记作\(L(Y,f(x))\),有以下几种:
-
0-1损失函数\((L_0\mbox{范数})\):
$$ L(Y,f(x))= \left\{\begin{matrix} 1, & Y\neq f(x)\\ 0, & Y = f(x) \end{matrix}\right. $$ -
平方损失函数\((L_2\mbox{范数})\):
$$ L(y,f(x)) = (Y-f(x))^2 $$ -
绝对损失函数\((L_1\mbox{范数})\):
$$ L(Y,f(x))=\left| Y-f(x) \right| $$ -
对数损失函数:
$$ L(Y,P(Y|X)) = -logP(Y|X) $$
损失函数的期望是:
又被称为风险函数或期望损失。学习的目标就是选择期望风险最小的模型,显然如果这个都能够直接求的话,也就知道了\(P(x,y)\),没必要学习了,所以需要找到替代的函数。大家都知道当数据是可数的也就是离散的时候,当样本容量也就是数据趋于无穷时,可以用均值来代替期望风险\(R_{exp}(f)\),其中均值被称为经验风险\(R_{emp}(f)\),公式如下:
插一下,我看了下满足大数定律的条件是\(x_1,x_2,\cdots,x_n相互独立同分布\),然后看到一篇文章上说了下满足大数定律的充要条件:
设\(\{X_n\}\)是随机变量序列,记\(Z_n=\frac{1}{N}\sum_{k=1}^{N}X_k-\frac{1}{N}E(\sum_{k=1}^{N}X_k)\),则\(\{X_n\}\)服从大数定律的充要条件是\(\lim_{n\to \infty }E[\frac{Z_n^2}{1+Z_n^2}]=0\).
这样根据模型求解就变成了根据经验风险函数求解,目标变成最小化\(R_{emp}(f)\):
但是这只适用当样本容量很大的时候,当样本很小时,会有过拟合现象。结构风险最小化(structural risk minimization)就是为了防止过拟合而提出来的策略。
当使用平方损失函数时,结构风险最小化类似最大后验概率。
算法
算法指具体使用什么计算方法来求解最优模型。如果最优模型有显示的解析解,也就是可以直接求出来的,比如逻辑回归,这个优化问题就变得很简单,但通常解析解不存在,这就需要用数值计算的方法求解。
评估方法
1. 评估主要指标
主要是精确率(precision),召回率(recall),准确率(accuracy)主要是评价分类器性能。
2. 交叉验证
- 简单交叉验证
将数据集分成两部分:训练集(train set)和测试集(test set)
- S折交叉验证
将数据分成S个互不相交的大小相同的子集,每次选择S-1个子集用于训练,一个用于测试,将可能的S种选择重复进行,最后选择平均测试误差最小的那组。
- 留一交叉验证
当数据N比较小时,S=N,即一个数据一组,其余和S折交叉验证相同。
3. 问题
监督学习分为:分类,回归,标注。这里主要说下标注问题。
标注问题可以认为是分类问题的一个推广,是更复杂的结构预测问题的简单形式,目标是学习一个模型,使其能够对观测序列给出标记序列作为预测。
4. 主要流程
- 得到一个有限的训练数据集合;
- 确定包含所有可能的模型的假设空间,即学习模型的集合;
- 确定模型选择的准则,即学习的策略;
- 实现求解最优模型的算法,即学习的算法;
- 通过学习方法选择最优模型;
- 利用学习的最优模型对新数据进行预测或分析。
这里有很多内容来自《统计学习方法》这本书,如果想详细了解的话还是更推荐书本,上面讲解的更好。