机器学习基本概念

统计学习方法概论阅读笔记

统计学习:对象是数据,从数据出发,提取数据的特征,抽象出数据的模型,发现数据中知识,又回到对数据的分析预测中去。

方法:监督学习,非监督学习,半监督学习,强化学习。

监督学习

概述

输入空间,特征空间与输出空间。

在监督学习中,将输入与输出所有可能取值的集合分别称为输入空间与输出空间。输入空间与输出空间可以是同一个空间,也可以是不同的空间,但通常输出空间远远小于输出空间。

每一个具体的输入是一个实例,通常由特征向量表示。这时,所有特征向量存在的空间称为特征空间。特征空间的每一维对应于一个特征。(输入空间有时=特征空间,也可以看做是实例从输入空间映射到特征空间)

回归问题【输出变量为连续变量的预测问题】

分类问题 【输出变量为离散变量的预测问题】

标注问题【输入输出变量均为变量序列的预测问题】

联合概率分布

[我的理解就是,x,y同时发生的概率,即输入为x输出为y同时出现的概率]

监督学习假设输入与输出的随机变量X和Y遵循联合概率分布P(X,Y)。但对学习系统来说,联合概率分布的具体定义是未知的,训练数据与测试数据被看做是依联合概率分布P(X,Y)独立同分布产生的。

统计学习假设数据存在一定的统计规律,X和Y具有联合概率分布的假设就是监督学习关于数据的基本假设。

维基百科【联合概率分布】

  • 离散随机变量而言,联合分布概率质量函数为Pr(X = x & Y = y),即

$P(X=x\ and \ Y=y)=P(Y=y|X=x)P(X=x)\\=P(X=x|Y=y)P(Y=y)$

因为是概率分布函数,所以必须有

$\sum_{x}\sum_{y}P(X=x\ and\ Y=y)=1$

  • 类似地,对连续随机变量而言,联合分布概率密度函数为$f_{X,Y}(x, y)$,其中$f_{Y|X}$(y|x)和$f_{X|Y}$(x|y)分别代表X = xY的条件分布以及Y = yX的条件分布;$f_X(x)$和$f_Y(y)$分别代表XY的边缘分布。

同样地,因为是概率分布函数,所以必须有

$\int_{x}\int_y\ f_{X,Y}(x,y)dy\ dx=1$

  • 对于两相互独立的事件P(X)及P(Y),任意xy而言有离散随机变量$P(X=x\ and Y=y)=P(X=x) \cdot P(Y=y)$,或者有连续随机变量$P_{X,Y}(x,y)=p_X(x)\cdot \ p_Y(y)$。
假设空间

监督学习的目的在于学习一个由输入到输出的映射,这一映射由模型来表示。换句话说,学习的目的在于找到最好的这样的模型。模型属于由输入空间到输出空间的集合,这个集合就是假设空间。

监督学习的模型可以是概率模型或非概率模型,由条件概率分布P(Y|X)或决策函数Y=f(X)表示,随具体学习方法而定。对具体的输入进行相应的输出预测时,写作P(y|x)或y=f(x)

则得到的预测结果$y_{N+1}=\underset{y_{N+1}}{\operatorname{argmax}} \hat{P}(y_{N+1}|x_{N+1})$或$y_{N+1}=\hat{f}(x_{N+1})$

损失函数与风险函数

统计学习的目标在于从假设空间中选取最优模型。

首先引入损失函数与风险函数的概念。损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。

损失函数有四种。损失函数L(Y,f(X)),一共有四种P23

又由于X,Y是随机变量,遵循联合分布P(X,Y),所以损失函数期望可以得到。为理论上模型f(X)关于联合分布P(X,Y)的平均意义下的损失,称为风险函数或期望损失。$R_{exp}(f)=E_p[L(Y,f(x))]=\int_{x \times y}L(y,f(x))P(x,y)dxdy$

模型f(x)关于训练数据集的平均损失称为为经验风险或经验损失:

$R_{emp}(f)=\frac{1}{N}\sum_{i=1}^{N}L(y_i,f(x_i))$

期望风险是模型关于联合分布的期望损失,经验风险是模型关于训练样本集的平均损失,当样本容量N趋近无穷时,经验风险趋近于期望风险。

so一般使用经验风险估计期望风险。要矫正:经验风险最小化,结构风险最小化。

经验风险最小化,认为经验风险最小即为最优模型,转化为最优化问题,在样本容量足够大是,能保证有比较好的学习效果。eg:极大似然估计,即当模型为条件概率分布,损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。

样本容量很小时,经验风险最小化学习的效果未必很好,会产生“过拟合”现象。

结构风险最小化(SRM)是为了防止过拟合而提出来的策略,结构风险最小化等价于正则化。结构风险在经验风险上加上表示模型复杂度的正则化项或罚项。在假设空间、损失函数以及训练数据集确定的情况下,结构风险的定义是:

$R_{srm}(f)=\frac{1}{N}\sum^{N}_{i=1}L(y_{i},f(x_{i}))+\lambda J(f)$

其中J(f)为模型的复杂度。是定义在空间$\mathcal{F}$上的泛函。模型f越复杂,复杂度J(f)就越大;反正,模型f越简单,复杂度J(f)就越小。$\lambda \geq 0$是系数,用以权衡经验风险和模型复杂度。结构风险小的模型,需要经验风险与模型复杂度同时小。对未知的测试数据有较好的预测。

例如:贝叶斯估计中的最大后验概率估计。当模型是条件概率分布、损失函数是对数损失函数、模型复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计。

结构风险最小化认为结构风险最小的模型是最远模型-》最优化问题。

模型评估与模型选择

训练误差与测试误差

训练误差,针对训练数据集。测试误差,针对测试数据集。公式如下:

$\frac{1}{N}\sum^{N}_{i=1}L(y_i,\hat{f}(x_i))$

过拟合与模型选择

当假设空间含有不同复杂度(例如,不同的参数个数)的模型时,就要面临模型旋转的问题。

【在多项式函数拟合中,随着多项式次数(模型复杂度)的增加,训练误差会减小,直至趋向于0,但是测试误差却不如此,它会随着多项式次数(模型复杂度)的增加先减小而后增大(因为出现过拟合现象)。最终目的是使测试误差达到最小。】

正则化与交叉验证

模型选择的典型方法,正则化。【比如加个范数】

选择模型:1.简单 2.很好地解释已知数据。

交叉验证:切分数据,重复使用,进行验证

生成模型与判别模型

监督学习方法可以分为生成方法和判别方法。所学到的模型为生成模型和判别模型。

生成方法,数据学习联合概率分布P(X,Y),然后求出P(Y|X)

生成模型:

$P(Y|X)=\frac{P(X,Y)}{P(X)}$

模型表示了给定输入X产生输出Y的生成关系。典型的生成模型有:朴素贝叶斯法和隐马尔克夫模型。

判别方法,数据直接学习决策函数f(X)或者P(Y|X)作为预测的模型。关系的是对给定的输入X,应该预测怎样的输出Y典型的判别模型包括:感知机,决策树,支持向量机,条件随机场,最大熵模型等。

分类模型