统计学习方法一:统计学习和监督学习概论

1. 统计学习

统计学习是关于计算机 基于数据 构建概率统计模型 并运用模型 对数据 进行预测 与分析 的一门学科。

  • 统计学习的对象
    data :计算机及互联网上的各种数字、文字、图像、视频、音频数据以及它们的组合。
    数据的基本假设是同类数据具有一定的统计规律性
  • 统计学习的目的
    用于对数据(特别是未知数据)进行预测和分析
  • 统计学习的方法
    分类
    Supervised learning
    Unsupervised learning
    Semi-supervised learning
    Reinforcement learning
    步骤:
  • 得到一个有限的训练数据集合
  • 确定包含所有可能的模型的假设空间,即学习模型的集合
  • 确定模型选择的准则,即学习的策略
  • 实现求解最优模型的算法,即学习的算法
  • 通过学习方法选择最优模型
  • 利用学习的最优模型对新数据进行预测或分析

2. 统计学习基本分类

2.1 监督学习:

从标注数据中学习预测模型的机器学习问题。

  • 输入空间与输出空间:在监督学习中,将输入与输出所有可能取值的集合分别称为输入空间与输出空间。
  • 特征空间:在监督学习中,每个具体的输入是一个实例,通常由特征向量表示。这时,所有特征向量存在的空间称为特征空间。其每一维对应一个特征。
  • 输入与输出为随机变量在输入与输出空间上的取值,变量用大写字母表示,如X,变量的具体取值用小写字母表示,如x: x = ( x ( 1 ) , x ( 2 ) , ⋯   , x ( i ) , ⋯   , x ( n ) ) T x = (x^{(1)},x^{(2)},\cdots ,x^{(i)},\cdots,x^{(n)} )^{T} x=(x(1),x(2),,x(i),,x(n))T
    x ( i ) x^{(i)} x(i) 表示 x x x 的第 i i i个特征。
    注意 x ( i ) x^{(i)} x(i) x i x_{i} xi不同,本书通常用 x i x_{i} xi表示多个输入变量 中的第 i i i个,即 x i = ( x i ( 1 ) , x i ( 2 ) , ⋯   , x i ( n ) ) T x_{i} = (x_{i}^{(1)},x_{i}^{(2)},\cdots ,x_{i}^{(n)})^{T} xi=(xi(1),xi(2),,xi(n))T
  • 输入与输出变量均为连续变量的预测问题称为回归问题,输出变量为有限个离散变量的预测问题被称为分类问题,输入变量与输出变量均为变量序列的预测问题称为标注问题。
  • 假设空间:监督学习的目的在于学习一个由输入到输出的映射,这一映射由模型来表示。换句话说,学习的目的就在于找到最好的这样的模型。模型属于由输入空间 到输出空间的映射的集合,这个集合就是假设空间(hypothesis space)。假设空间的确定意味着学习范围的确定。
    在这里插入图片描述
    y n + 1 = a r g m a x y P ^ ( y ∣ x n + 1 ) y_{n+1} = arg\underset{y}{max}\hat{P}(y|x_{n+1}) yn+1=argymaxP^(yxn+1)
    y n + 1 = f ^ ( x n + 1 ) y_{n+1} = \hat{f}(x_{n+1}) yn+1=f^(xn+1)

2.2 无监督学习:

是指从无标注的数据中学习预测模型的机器学习问题。无标注数据是自然得到的数据,预测模型表示数据的类别、转换或概率。无监督学习的本质是学习数据中的统计规律或潜在结构。
在这里插入图片描述

2.3 强化学习:

是指智能系统在于环境的连续互动中学习最优行为策略的机器学习问题。

2.4 半监督学习:

是指利用标注数据和未标注数据学习预测模型的机器学习问题。通常由少量标注数据、大量未标注数据。

2.5 主动学习:

是指机器不断主动给出实例让教师进行标注,然后利用标注数据学习预测模型的机器学习问题。通常监督学习使用给定的标注数据,往往是随机得到的,可以看作是“被动学习”,主动学习的目标是找出对学习最有帮助的实例让教师标注,以较小的标注代价达到好的学习效果。

2.6 统计学习按模型分类:

  • 概率模型与非概率模型
    监督学习:概率模型 P ( y ∣ x ) P(y|x) P(yx),非概率模型 y = f ( x ) y=f(x) y=f(x)
    无监督学习:概率模型 P ( z ∣ x ) P(z|x) P(zx) P ( x ∣ z ) P(x|z) P(xz) ,非概率模型 z = g ( x ) z=g(x) z=g(x)
    概率模型:决策树,朴素贝叶斯,隐马尔可夫模型,条件随机场,概率潜在语义分析,潜在狄利克雷分配,高斯混合模型。
    非概率模型:感知机,支持向量机,k近邻,AdaBoost,k均值,潜在语义分析,神经网络。
    Logistic Regression即可看做概率模型,又可看做非概率模型。
    条件概率分布 P ( y ∣ x ) P(y|x) P(yx)和函数 y = f ( x ) y=f(x) y=f(x)可以相互转化,条件概率分布最大化后得到函数,函数归一化后得到条件概率分布。

  • 线性模型与非线性模型
    如果 y = f ( x ) y=f(x) y=f(x) z = g ( x ) z=g(x) z=g(x)是线性模型,则称模型是线性模型,否则称模型是非线性模型。
    线性模型:感知机,线性支持向量机,k近邻,k均值,潜在语义分析
    非线性模型:核函数支持向量机,AdaBoost,神经网络

  • 参数化模型与非参数化模型
    参数化模型:假设模型参数的维度固定
    感知机,朴素贝叶斯,Logisitic Regression,k均值,高斯混合模型。
    非参数化模型:参数的维度不固定,或者说无穷大
    决策树,支持向量机,AdaBoost,k近邻,潜在语义分析,概率潜在语义分析,潜在狄利克雷分配。

2.7 统计学习按算法分类:

  1. 在线学习:每次接受一个样本,进行预测后学习模型,不断重复该操作
  2. 批量学习:一次接受所有数据,学习模型,然后进行预测

2.8 统计学习按技巧分类:

  1. 贝叶斯学习(朴素贝叶斯,潜在狄利克雷分配)
  • 设随机变量D表示数据,随机变量x表示模型参数:
    P ( θ ∣ D ) = P ( θ ) P ( D ∣ θ ) P ( D ) P(\theta |D)= \frac{P(\theta )P(D|\theta )}{P(D)} P(θD)=P(D)P(θ)P(Dθ)
    其中, P ( θ ) P(\theta ) P(θ)是先验概率, P ( D ∣ θ ) P(D|\theta ) P(Dθ)是似然函数
  • 极大似然估计:已知原因,推结果的可能性
  • 贝叶斯估计:已知结果,推原因的可能性
  • 先验概率:根据自然经验的得到的经验概率
  1. 核方法:使用核函数表示和学习非线性模型的一种机器学习方法。
    核函数支持向量机,核PCA, 核k均值

3. 统计学习方法三要素

方法 = 模型 + 策略 + 算法

3.1 模型

统计学习首要考虑的问题是学习什么样的模型。在监督学习过程中,模型就是所要学习的条件概率分布或决策函数。模型的假设空间(hypothesis space)包含所有可能的条件概率分布或决策函数。

3.2 策略

有了模型的假设空间,统计学习接着需要考虑的是按照什么样的准则学习或选择最优的模型。统计学习的目标在于从假设空间中选取最优模型。

  • 损失函数
    损失函数用来衡量模型一次预测的好坏。统计学习常用的损失函数有以下几种:
    (1) 0-1 损失函数
    L ( Y , f ( X ) ) = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L(Y,f(X)) = \left\{\begin{matrix} 1, Y \neq f(X) \\ 0, Y = f(X) \end{matrix}\right. L(Y,f(X))={ 1,Y=f(X)0,Y=f(X)
    (2)平方损失函数
    L ( Y , f ( X ) ) = ( Y − f ( X ) ) 2 L(Y,f(X)) = (Y - f(X))^{2} L(Y,f(X))=(Yf(X))2
    (3)绝对损失函数
    L ( Y , f ( X ) ) = ∣ Y − f ( X ) ∣ L(Y,f(X)) = |Y - f(X)| L(Y,f(X))=Yf(X)
    (4)对数损失函数或对数似然损失函数
    L ( Y , P ( Y ∣ X ) ) = − l o g P ( Y ∣ X ) L(Y,P(Y|X)) = -logP(Y|X) L(Y,P(YX))=logP(YX)
  • 风险函数
    损失函数值越小,模型就越好. 由于模型的输入、输出 (X,Y)是随机变量,遵循联合分布 P(X,Y), 所以损失函数的期望是
    R e x p ( f ) = E P [ L ( Y , f ( X ) ) ] = ∫ χ × y L ( y , f ( x ) ) P ( x , y ) d x d y R_{exp}(f) = E_{P}[L(Y,f(X))] = \int_{\chi \times y}^{}L(y,f(x))P(x,y)dxdy Rexp(f)=EP[L(Y,f(X))]=χ×yL(y,f(x))P(x,y)dxdy
    这是理论上模型 f ( X ) f(X) f(X)关于联合分布 P ( X , Y ) P(X,Y) P(X,Y)的平均意义下的损失, 称为风险函数 (risk function) 或期望损失(expected loss)。
  • 学习的目标就是选择期望风险最小的模型,但是联合概率密度未知,所以不能直接计算。给定一个训练数据集
    T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N ) } T = \begin{Bmatrix} (x_{1},y_{1}),(x_{2},y_{2}),\cdots ,(x_{N},y_{N}) \end{Bmatrix} T={ (x1,y1),(x2,y2),,(xN,yN)}
    模型 f ( X ) f(X) f(X)关于训练数据集的平均损失称为经验风险(empirical risk)或经验损失 (empirical loss ), 记作 R e m p R_{emp} Remp
    R e m p ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) R_{emp}(f) = \frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i})) Remp(f)=N1i=1NL(yi,f(xi))
    期望风险 R e x p ( f ) R_{exp}(f) Rexp(f) 是模型关于联合分布的期望损失,经验风险 R e m p ( f ) R_{emp}(f) Remp(f) 是模型 关于训练样本集的平均损失。根据大数定律,当样本容量 N 趋于无穷时,经验风 险 R e m p ( f ) R_{emp}(f) Remp(f) 趋于期望风险 R e x p ( f ) R_{exp}(f) Rexp(f) 所以一个很自然的想法是用经验风险估计期望 风险. 但是,由于现实中训练样本数目有限,甚至很小,所以用经验风险估计期 望风险常常并不理想,要对经验风险进行一定的矫正. 这就关系到监督学习的两 个基本策略:经验风险最小化和结构风险最小化。
  • 经验风险最小化
    min ⁡ f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) \min_{f \in \mathcal F} \frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i})) minfFN1i=1NL(yi,f(xi))
  • 结构风险最小化
    min ⁡ f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) \min_{f \in \mathcal F} \frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i})) + \lambda J(f) minfFN1i=1NL(yi,f(xi))+λJ(f)
    为了防止过拟合而提出的策略,等价于正则化。
    R s r m ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) R_{srm}(f)= \frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i})) + \lambda J(f) Rsrm(f)=N1i=1NL(yi,f(xi))+λJ(f)
    其中 J ( f ) J( f) J(f) 为模型的复杂度,是定义在假设空间 F F F 上的泛函。模型 f f f 越复杂,复 杂度 J ( f ) J( f) J(f) 就越大; 反之,模型 f f f 越简单,复杂度 J ( f ) J( f) J(f) 就越小. 也就是说,复杂 度表示了对复杂模型的怎罚. λ ⩾ 0 \lambda \geqslant 0 λ0是系数,用以权衡经验风险和模型复杂度. 结 构风险小需要经验风险与模型复杂度同时小。结构风险小的模型往往对训练数据 以及未知的测试数据都有较好的预测。

3.3 算法

算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后考虑需要什么样的计算方法求解最优模型。
这时,统计学习问题归结为最优化问题,统计学习的算法成为求解最优化问题的算法。

4. 模型评估与选择

  • 训练误差与测试误差
    假设学习到的模型是 Y = f ( X ) Y=f(X) Y=f(X),训练误差是模型 Y = f ( X ) Y=f(X) Y=f(X)关于训练数据集 的平均损失:
    R e m p ( f ^ ) = 1 N ∑ i = 1 N L ( y i , f ^ ( x i ) ) R_{emp}(\widehat{f}) = \frac{1}{N}\sum_{i=1}^{N}L(y_{i},\widehat{f}(x_{i})) Remp(f )=N1i=1NL(yi,f (xi))
    其中 N 是训练样本容量. 测试误差是模型 Y = f ^ ( X ) Y=\hat{f}(X) Y=f^(X)关于测试数据集的平均损失:
    e t e s t = 1 N ′ ∑ i = 1 N ′ L ( y i , f ^ ( x i ) ) e_{test} = \frac{1}{ {N}'}\sum_{i=1}^{ {N}'}L(y_{i},\widehat{f}(x_{i})) etest=N1i=1NL(yi,f (xi))
    其中, N ′ {N}' N是测试样本容量
  • 过拟合与模型选择
    如果一味追求提高对训练数据的预测能力,所选模型的复杂度则往往会比真 模型更高. 这种现象称为过拟合(over-fitting). 过拟合是指学习时选择的模型所 包含的参数过多,以致于出现这一模型对已知数据预测得很好,但对未知数据预 测得很差的现象。可以说模型选择旨在避免过拟合并提高模型的预测能力。
    在这里插入图片描述

5. 正则化与交叉验证

5.1 正则化

正则化是结构风险最小化策略的实现,是在经验风险最小化的基础上加一个正则项,模型越复杂,正则化值就越大。正则化值可以是模型参数向量的范数。

5.2 交叉验证

  • 如果给定的样本数据充足,进行模型选择的一种简单方法是随机地将数据集 切分成三部分,分别为训练集(training set)、验证集(validation set)和测试集(test set). 训练集用来训练模型,验证集用于模型的选择,而测试集用于最终对学习 方法的评估。在学习到的不同复杂度的模型中,选择对验证集有最小预测误差的模型。由于验证集有足够多的数据,用它对模型进行选择也是有效的。
  • 简单交叉验证、S折交叉验证、留一交叉验证。

6 泛化能力

是指由该方法学习到的模型对未知数据的预测能力。

7 生成模型和判别模型

  • 生成方法
    由数据学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),然后求出条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX) 作为预测的模型,即生成模型: P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(Y|X)=\frac{P(X,Y)}{P(X)} P(YX)=P(X)P(X,Y)
    这样的方法之所以称为生成方法, 是因为模型表示了给定输入 X 产生输出 Y 的生 成关系. 典型的生成模型有: 朴素贝叶斯法和隐马尔可夫模型。
  • 判别方法
    由数据直接学习决策函数 f ( X ) f(X) f(X) 或者条件概率分布 P ( Y ∣ X ) P(Y∣X) P(YX) 作为预 测的模型,即判别模型. 判别方法关心的是对给定的输入 X,应该预测什么样的输 出 Y. 典型的判别模型包括: k k k 近邻法、感知机、决策树、逻辑斯締回归模型、最 大嫡模型、支持向量机、提升方法和条件随机场等,将在后面章节讲述.

8 监督学习应用

分类问题

标注问题

回归问题

猜你喜欢

转载自blog.csdn.net/weixin_48760912/article/details/114113829