机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习

《统计学习方法》学习笔记:第一章 统计学习及监督学习

  • 1 统计学习及监督学习概论
    • 1.1 统计学习
      • 1. 统计学习的特点
      • 2. 统计学习的对象
      • 3. 统计学习的目的
      • 4. 统计学习的方法
      • 6. 统计学习的重要性
    • 1.2 统计学习的分类
      • 1.2.1 基本分类
        • 1. 监督学习
        • 2. 无监督学习
        • 3. 强化学习
        • 4. 半监督学习与主动学习
      • 1.2.2 按模型分类
        • 1. 概率模型与非概率模型
        • 2. 线性模型与非线性模型
        • 3. 参数化模型与非参数化模型
      • 1.2.3 按算法分类
      • 1.2.4 按技巧分类
        • 1. 贝叶斯学习
        • 2. 核方法
    • 1.3 统计学习方法三要素
      • 1.3.1 模型
      • 1.3.2 策略
        • 1. 损失函数和风险函数
        • 2. 经验风险最小化和结构风险最小化
      • 1.3.3 算法
    • 1.4 模型评估与模型选择
      • 1.4.1 训练误差与测试误差
      • 1.4.2 过拟合与模型选择
    • 1.5 正则化与交叉验证
      • 1.5.1 正则化
      • 1.5.2 交叉验证
        • 1. 简单交叉验证
        • 2. S折交叉验证
        • 3. 留一交叉验证
    • 1.6 泛化能力
      • 1.6.1 泛化误差
      • 1.6.2 泛化误差上界
    • 1.7 生成模型与判别模型
    • 1.8 监督学习应用
      • 1.8.1 分类问题
      • 1.8.2 标注问题
      • 1.8.3 回归问题
    • 小结

1 统计学习及监督学习概论

  • 监督学习是从标注数据中学习模型的机器学习问题,是统计学习和机器学习的重要组成部分。
  • 1.1 叙述统计学习或机器学习的定义,研究对象与方法。
  • 1.2 叙述统计学习的分类,基本分类是监督学习、无监督学习、强化学习。
  • 1.3 叙述统计学习方法的三要素:模型、策略和算法。
  • 1.4-1.7 介绍监督学习的几个重要概念,包括模型评估与模型选择,正则化与交叉验证,学习的泛化能力,生成模型与判别模型
  • 1.8 介绍监督学习的应用:分类问题、标注问题、回归问题

1.1 统计学习

1. 统计学习的特点

  • 统计学习(Statistical Learning)是关于计算机基于数据构建概率统计模型,并运用模型对数据进行预测与分析的一门学科。统计学习也称统计机器学习(Statistical Machine Learning)。
  • 统计学习的主要特点:
    (1)统计学习以计算机及网络为平台,是建立在计算机及网络上的。
    (2)统计学习以数据为研究对象,是数据驱动的学科。
    (3)统计学习的目的是对数据进行预测和分析。
    (4)统计学习以方法为中心,统计学习方法构建模型,并应用模型进行预测和分析。
    (5)统计学习是概率论、统计学、信息论、计算理论、最优化理论及计算机科学等多个领域的交叉学科,并在发展中逐步形成独自的理论体系与方法论。
  • “学习”的定义:如果一个系统能够通过执行某个过程改进它的性能,这就是学习。统计学习就是计算机系统通过运用数据及统计方法提高系统性能的机器学习。

2. 统计学习的对象

  • 统计学习研究的对象是数据(Data)。统计学习从数据出发,提取数据的特征,抽象出数据的模型,发现数据中的知识,又回到对数据的分析与预测中。作为统计学习的对象,数据是多样的,包括存在于计算机及网络上的各种数字、文字、图像、视频、音频数据以及它们的组合。
  • 统计学习关于数据的基本假设是:同类数据具有一定的统计规律性,这是统计学习的前提。同类数据是指具有某种共同性质的数据,例如英文文章、互联网网页、数据库中的数据。由于它们具有统计规律性,所以可以用概率统计方法处理它们。比如,可以用随机变量描述数据中的特征,用概率分布描述数据的统计规律。
  • 在统计学习中,以变量或变量组表示数据。数据分为由连续变量和离散变量表示的类型。

3. 统计学习的目的

  • 统计学习用于对数据的预测和分析,特别是对未知新数据的预测和分析。对数据的预测可以使计算机更加智能化,或者说使计算机的某些性能得到提高;对数据的分析可以让人们获取新的知识,给人们带来新的发现。
  • 对数据的预测与分析是通过构建概率统计模型实现的。统计学习总的目标就是考虑学习什么杨的模型,和如何学习模型,以使模型能对数据进行准确的预测与分析,同时也要考虑尽可能地提高学习效率。

4. 统计学习的方法

  • 统计学习的方法是基于数据构建概率统计模型,从而对数据进行预测和分析。统计学习由监督学习(Supervised Learning),无监督学习(Unsupervised Leaning),强化学习(Reinforcement Learning)等组成。
  • 统计学习方法可以概括如下:从给定的、有限的、用于学习的训练数据(Training Data)集合出发,假设数据是独立同分布产生的;并且假设要学习的模型属于某个函数的集合,称为假设空间(Hypothesis Space);应用某个评价标准(Evaluation Criterion),从假设空间中选取一个最优模型,使它对已知的训练数据及未知的测试数据在给定的评价标准下有最优的预测;最优模型的选取由算法实现。
  • 统计学习方法包括模型的假设空间、模型选择的准则以及模型学习的算法,称为统计学习方法的三要素,简称为模型(Model),策略(Strategy)和算法(Algorithm)。
  • 实现统计学习方法的步骤如下。
    (1)得到一个有限的训练数据集合。
    (2)确定包含所有可能的模型的假设空间,即学习模型的集合。
    (3)确定模型选择的准则,即学习的策略。
    (4)实现求解最优模型的算法,即学习的算法。
    (5)通过学习方法选择最优模型。
    (6)利用学习的最优模型对新数据进行预测或分析。

6. 统计学习的重要性

  • 近20年来,统计学习无论是在理论还是应用方面都得到了巨大的发展,统计学习已被成功的应用到人工智能、模式识别、数据挖掘、自然语言处理、语音处理、计算机视觉、信息检索、生物信息等许多计算机应用领域中,并且成为这些领域的核心技术。
  • 统计学习学科在科学技术中的重要性主要体现在以下几个方面:
    (1)统计学习是处理海量数据的有效方法。现实中的数据不但规模大,而且常常具有不确定性,统计学习往往是处理这类数据最强有力的工具。
    (2)统计学习是计算机智能化的有效手段。智能化是计算机发展的必然趋势,也是计算机技术研究与开发的主要目标。近几十年来,人工智能等领域的研究证明,利用统计学习模仿人类智能的方法,虽然有一定的局限性,还是实现这一目标的最有效手段。
    (3)统计学习是计算机科学发展的一个重要组成部分。可以认为计算机科学由三维组成:系统、计算、信息。统计学习主要属于信息这一维,并在其中起着核心作用。

1.2 统计学习的分类

  • 统计学习或机器学习是一个范围宽阔、内容繁多、应用广泛的领域,并不存在一个理论体系涵盖所有内容。

1.2.1 基本分类

  • 统计学习或机器学习一般包括监督学习、无监督学习、强化学习,有是还包括半监督学习、主动学习。

1. 监督学习

  • 监督学习(Supervised Learning)是指从标注数据中学习预测模型的机器学习问题。标注数据表示输入和输出的对应关系,预测模型对给定的输入产生相应的输出。监督学习的本质是输入到输出的映射统计规律。
    (1)输入空间、特征空间和输出空间。
    在监督学习中,将输入与输出所有可能取值的集合分别称为输入空间(Input Space)和输出空间(Output Space)。输入和输出空间可以是有限元素的集合,也可以是整个欧氏空间。输入空间与输出空间可以是同一个空间,也可以是不同的空间,但通常输出空间远远小于输入空间。
    每个具体的输入实例(Instance),通常由特征向量(feature vector)表示。所有特征向量存在的空间称为特征空间(Feature Space)。特征空间的每一维对应于一个特征。有时假设输入空间与特征空间为相同空间,对它们不予区分。有时假设输入空间与特征空间为不同的空间,将实例从输入空间映射到特征空间。模型实际上都是定义在特征空间上的。
    在监督学习中,将输入与输出看作是定义在输入(特征)空间与输出空间上的随机变量的取值。输入输出变量用大写字母表示习惯上输入变量写作X,输出变量写作Y。输入输出变量的取值用小写字母表示,变量可以是标量或者向量,都用相同类型字母表示。输入实例 x x x 的特征向量记作
    x = ( x ( 1 ) , x ( 2 ) , x ( 3 ) , . . . , x ( i ) , . . . , x ( n ) ) T x=(x^{(1)},x^{(2)},x^{(3)},...,x^{(i)},...,x^{(n)})^T x=(x(1),x(2),x(3),...,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个变量,即
    x i = ( x i ( 1 ) , x i ( 2 ) , . . . , x i ( n ) , ) T x_i=(x_i^{(1)},x_i^{(2)},...,x_i^{(n)},)^T xi=(xi(1),xi(2),...,xi(n),)T
    监督学习从训练数据集合中学习模型,对测试数据进行预测。训练数据由输入(特征向量)与输出对组成,训练集通常表示为
    T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) } T=\{ (x_1,y_1),(x_2,y_2),...,(x_n,y_n) \} T={(x1,y1),(x2,y2),...,(xn,yn)}
    测试数据也是由输入与输出对组成。输入与输出对又称为样本(Sample)或样本点。
    输入变量X和输出变量Y有不同的类型,可以是连续的,也可以是离散的。根据输入输出变量的不同类型,对预测问题给予不同的名称:输入变量与输出变量均为连续变量的预测问题称为回归问题。输出变量为有限个离散变量的预测问题称为分类问题。输入变量与输出变量均为变量序列的预测问题称为标注问题。
    (2)联合概率分布。
    监督学习假设输入与输出的随机变量X和Y遵循联合概率分布P(X, Y)。在学习过程中,假定这一联合概率分布存在,但对学习系统来说,联合概率分布的具体定义是未知的。训练数据与测试数据被看作是依联合概率分布P(X,Y)独立同分布产生的。统计学习假设数据存在一定的统计规律,X和Y具有联合概率分布就是监督学习关于数据的基本假设。
    (3)假设空间。
    监督学习的目的在于学习一个由输入到输出的映射,这一映射由模型来表示。学习的目的就是找到最好的这样的模型。模型属于从输入空间到输出空间的映射的集合,这个集合就是假设空间(Hypothesis Space)。假设空间的确定意味着学习的范围的确定。
    监督学习的模型可以是概率模型或非概率模型,由条件概率分布P(Y|X)或决策函数Y=f(X)表示,随具体学习方法而定。
    (4)问题的形式化
    监督学习利用训练数据集学习一个模型,再用模型对测试样本集进行预测。由于这个过程需要标注的训练数据集,而标注的训练数据集往往是人工给出的,所以称为监督学习。监督学习可以分为学习和预测两个过程。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第1张图片

2. 无监督学习

  • 无监督学习是指从无标注数据中学习预测模型的机器学习问题。无标注数据是自然得到的数据,预测模型表示数据的类别、转换或概率。无监督学习的本质是学习数据中的统计规律或潜在结构。
  • 模型的输入与输出的所有可能取值的集合分别被称为输入空间与输出空间,输入空间按和输出空间可以是有限元素集合,也可以是欧氏空间。每个输入是一个实例,由特征向量表示。每一个输出是对输入的分析结果,由输入的类别、转换或概率表示。模型可以实现对数据的聚类、降维或概率估计。
  • 假设 X X X是输入空间, Z Z Z是隐式结构空间,要学习的模型可以表示为函数 z = g ( x ) z=g(x) z=g(x),条件概率分布 P ( z ∣ x ) P(z|x) P(zx),其中x是输入,z是输出。包含所有可能的模型的集合称为假设空间。无监督学习旨在从假设空间中选出给定评价标准下的最优模型。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第2张图片

3. 强化学习

  • 强化学习(Reinforcement Learning)是指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题。假设智能系统与环境的互动基于马尔可夫决策过程(Markov Decision Process),智能系统能观测到的是与环境互动得到的数据序列。强化学习的本质是学习最优的序贯决策。
  • 智能系统与环境的互动。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第3张图片
  • 在每一步t,智能系统从环境中观测到一个状态(State) s t s_t st 和一个奖励(reward) r t r_t rt,采取一个动作(Action) a t a_t at。环境根据智能系统选择的动作,决定下一步t+1的状态 s t + 1 s_{t+1} st+1与奖励 r t + 1 r_{t+1} rt+1。要学习的策略表示为给定的状态下采取的动作。智能系统的目标不是短期奖励的最大化,而是长期累计奖励的最大化。强化学习过程中,系统不断地试错,以达到学习最优策略的目的。
  • 强化学习的马尔可夫决策过程是状态、奖励、动作序列上的随机过程,由五元组 ⟨ S , A , P , r , γ ⟩ \langle S,A,P,r,\gamma \rangle S,A,P,r,γ
  • S是有限状态(State)的集合。
  • A是有限动作(action)的集合。
  • P是状态转移概率(Transition Probability)函数 P ( s ′ ∣ s , a ) = P ( s t + 1 = s ′ ∣ s t = s , a t = a ) P(s'|s,a)=P(s_{t+1}=s'|s_t=s,a_t=a) P(ss,a)=P(st+1=sst=s,at=a)
  • r r r是奖励函数(reward function): r ( s , a ) = E ( r t + 1 ∣ s t = s , a t = a ) r(s,a)=E(r_{t+1}|s_t=s,a_t=a) r(s,a)=E(rt+1st=s,at=a)
  • γ \gamma γ是衰减系数(discount factor): γ ∈ [ 0 , 1 ] \gamma \in [0,1] γ[0,1]
  • 马尔可夫决策过程具有马尔可夫性,下一个状态只依赖前一个动作与状态,由状态转移概率函数表示 P ( s ′ ∣ s , a ) P(s'|s,a) P(ss,a)表示。下一个奖励依赖于前一个状态与动作,由奖励函数 r ( s , a ) r(s,a) r(s,a)表示。

4. 半监督学习与主动学习

  • 半监督学习(semi-supervised learning)是利用标注数据和未标注数据学习预测模型的机器学习问题。通常有少量标注数据、大量未标注数据,因为标注数据的构建往往需要人工,成本较高,未标注数据的收集不需要太多成本。半监督学习旨在利用未标注数据中的信息,辅助标注数据,进行监督学习,以较低的成本达到较高的学习效果。
  • 主动学习(active learning)是指机器不断主动给出实例让教师进行标注,然后利用标注数据学习预测模型的机器学习问题。通常的监督学习使用给定的标注数据,往往是随机得到的,可以看作是被动学习,主动学习的目标是找出对学习最有帮助的实例让教师标注,以较小的标注代价达到较好的学习效果。
  • 半监督学习和主动学习更接近监督学习。

1.2.2 按模型分类

1. 概率模型与非概率模型

  • 统计学习模型可以分为概率模型和非概率模型或者确定性模型。在监督学习中,概率模型取条件概率分布形式 P ( y ∣ x ) P(y|x) P(yx),非概率模型取函数形式 y = f ( x ) y=f(x) y=f(x),其中x是输入,y是输出。在无监督学习中,概率模型取条件概率分布形式 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),其中x是输入,z是输出。在监督学习中,概率模型是生成模型,非概率模型是判别模型。
  • 概率模型有决策树、朴素贝叶斯、隐马尔可夫模型、条件随机场、概率潜在语义分析、潜在狄利克雷分配、高斯混合模型。非概率模型有感知机、支持向量机、K近邻、AdaBoost、K均值、潜在语义分析以及神经网络是非线性模型。逻辑斯谛回归既可看作是概率模型,又可看作是非概率模型。
  • 条件概率条件概率分布 P ( y ∣ x ) P(y|x) P(yx) 和函数 y = f ( x ) y=f(x) y=f(x) 可以相互转换,条件概率分布最大化后得到函数,函数归一化之后得到条件概率分布。概率模型与非概率模型的区别不在于输入与输出之间的映射关系,而在于模型的内在结构。概率模型一定可以表示成概率分布的形式,其中的变量表示输入、输出、隐变量甚至参数。而针对非概率模型则不一定存在这样的联合概率分布。
  • 概率模型的代表是概率图模型,概率图模型是联合概率分布由有向图或者无向图表示的概率模型,而联合概率分布可以根据图的结构分解为因子乘积形式。贝叶斯网络、马尔可夫随机场、条件随机场是概率图模型。无论模型如何复杂,均可以用最基本的加法规则和乘法规则进行概率推理。
    加 法 规 则 : P ( x ) = ∑ y P ( x , y ) 加法规则:P(x)=\sum_yP(x,y) P(x)=yP(x,y)
    乘 法 规 则 : P ( x , y ) = P ( x ) P ( y ∣ x ) 乘法规则:P(x,y)=P(x)P(y|x) P(x,y)=P(x)P(yx)
    其 中 x 和 y 是 随 机 变 量 其中x和y是随机变量 xy

2. 线性模型与非线性模型

  • 统计学习模型,特别是非概率模型,可以分为线性模型(Linear Model)和非线性模型(Non-Linear Model)。如果函数 y = f ( x ) y=f(x) y=f(x)或者 z = g ( x ) z=g(x) z=g(x)是线性函数,则称模型是线性模型,否则称模型未非线性模型。
  • 线性模型:感知机、线性支持向量机、K近邻、K均值、潜在语义分析。非线性模型:支持向量机、AdaBoost、神经网络。深度学习实际是复杂神经网络的学习,也是复杂的非线性模型的学习。

3. 参数化模型与非参数化模型

  • 统计学习模型可以分为参数化模型和非参数化模型。参数化模型假设参数的维度固定,模型可由有限维参数完全刻画;非参数化模型假设模型参数的维度不固定或者说无穷大,随着训练数据量的增加而不断增大。
  • 参数化模型:感知机、朴素贝叶斯、逻辑斯谛回归、K均值、高斯混合模型;非参数化模型:决策树、支持向量机、AdaBoost、K近邻、潜在语义分析、概率潜在语义分析、潜在狄利克雷分配。
  • 参数化模型适合问题较简单的情况,现实中问题往往比较复杂,非参数化模型更加有效。

1.2.3 按算法分类

  • 统计学习根据算法,可以分为在线学习(Online Learning)与批量学习(Batch Learning)。在线学习是指每次接受一个样本,进行预测,之后学习模型,并不断重复该操作的机器学习。批量学习是一次性接受所有数据,学习模型之后进行预测。有些实际应用的场景要求学习必须是在线的,比如,数据依次到达无法存储,系统需要及时做出处理;数据规模很大,不可能一次处理所有数据;数据模式随时间动态变化,需要算法快速适应新的模式。
  • 在线学习可以是监督学习,也可以是无监督学习,强化学习本身就拥有在线学习的特点。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第4张图片
  • 利用随机梯度下降的感知机学习算法就是在线学习算法,在线学习通常比批量学习更难,很难学到预测准确率很高的模型,因为每次更新中,可利用的数据有限。

1.2.4 按技巧分类

1. 贝叶斯学习

  • 贝叶斯学习又称为贝叶斯推理,是统计学、机器学习中重要的方法。主要想法是在概率模型的学习和推理中,利用贝叶斯定理,计算给定数据条件下模型的条件概率,即后验概率,并应用这个原理进行模型估计,以及对数据的预测。将模型、未观测要素及其参数用变量表示,使用模型的先验分布是贝叶斯学习的特点,
  • 贝叶斯学习包括朴素贝叶斯、潜在狄利克雷分配。假设随机变量 D D D 表示数据,随机变量 θ \theta θ 表示模型参数,根据贝叶斯定理,可以使用以下公式计算后验概率。
    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 ( D ∣ θ ) 是 似 然 函 数 。 其中P(\theta)是先验概率,P(D|\theta)是似然函数。 P(θ)P(Dθ)

2. 核方法

  • 核方法(Kernel Method)是使用核函数表示和学习非线性模型的一种机器学习方法,可以用于监督学习和无监督学习。有一些线性模型的学习方法基于相似度计算,更具体地,向量内积计算。核方法可以把它们扩展到非线性模型的学习,使其应用范围更广泛。核函数支持向量机、核PCA、核K均值属于核方法。
  • 把线性模型扩展到非线性模型,直接的做法是显式的定义从输入空间(低维空间)到特征空间(高维空间)的映射,在特征空间中进行内积计算。比如,支持向量机把输入空间的线性不可分问题转化为特征空间的线性可分问题。核方法的技巧在于不显式的定义这个映射,而是直接定义核函数,即映射之后在特征空间的内积,这样可以简化计算,达到同样的效果。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第5张图片

1.3 统计学习方法三要素

  • 统计学习方法都是由模型、策略、算法构成的,可以简单的表示为: 方 法 = 模 型 + 策 略 + 算 法 方法=模型+策略+算法 =++

1.3.1 模型

  • 统计学习首要考虑的问题是学习什么样的模型。在监督学习的过程中,模型就是所要学习的条件概率分布或决策函数。模型的假设空间(Hypothesis Space)包含所有可能的条件概率分布或决策函数。例如,假设决策函数是输入变量的线性函数,那么模型的假设空间就是所有这些线性函数构成的函数集合。假设空间中的模型一般有无穷多个。
  • 假设空间用 F F F表示,假设空间可以定义为决策函数的集合: F = { f ∣ Y = f ( x ) } F=\{f|Y=f(x)\} F={fY=f(x)}
  • 由决策函数表示的模型称为非概率模型,由条件概率表示的模型维概率模型。为了简便起见,当论及模型时,有时只用其中一种模型。

1.3.2 策略

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

1. 损失函数和风险函数

  • 监督学习问题是在假设空间 F F F中选取模型 f f f作为决策函数,对于给定的输入 X X X,由 f ( X ) f(X) f(X)给出相应的输出 Y Y Y,这个输出的预测值和真实值可能一致也可能不一致,用一个损失函数(Loss Function)或者代价函数(Cost Function)来度量预测错误的情况。
  • 统计学中常用的损失函数有以下几种。

(1)0-1损失函数
L ( Y , f ( X ) ) = { 0 , Y = f(X) 1 , Y ≠ f(X) L(Y,f(X))= \begin{cases} 0,&\text{Y = f(X)}\\ 1,&\text{Y$\neq$f(X)} \end{cases} L(Y,f(X))={0,1,Y = f(X)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))=-log P(Y|X) L(Y,P(YX))=logP(YX)

  • 损失函数值越小,模型就越好。

2. 经验风险最小化和结构风险最小化

  • 在假设空间】损失函数以及训练数据集确定的情况下,经验风险函数式就可以确定。经验风险最小化的策略认为,经验风险最小的模型是最优的模型,根据这一策略,按照经验风险最小化求最优模型就是求解最优化问题。
  • 当样本容量足够大时,经验风险最小化能保证有很好的学习效果,在现实中被广泛使用。比如,极大似然估计就是经验最小化的一个例子。当模型是条件概率分布、损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。
  • 但是,样本容量很小时,经验风险最小化学习的效果就未必很好,会产生过拟合现象。
  • 结构风险最小化是为了防止过拟合而提出来的策略。结构风险最小化等价于正则化。结构风险在经验风险上加上表示模型复杂度的正则化项或罚项。
  • 结构风险小需要经验风险与模型复杂度同时小,结构风险小的模型往往对训练数据以及未知的测试数据都有较好的预测。比如,贝叶斯估计中的最大后验概率估计就是结构风险最小化的一个例子。当模型是条件概率分布、损失函数是对数损失函数、模型的复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计。
  • 这样,监督学习问题 就变成了经验风险或结构风险函数的最优化问题和。这时经验或结构风险函数是最优化的目标函数。

1.3.3 算法

  • 算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最优模型。
  • 这时,统计学习问题归结为最优化问题,统计学习的算法成为求解最优化问题的算法。如果最优化问题有显式的解析解,这个最优化问题就比较简单。但通常解析解不存在,这就需要用数值计算的方法求解。如何保证找到全局最优解,并使求解过程非常高效,就成为一个重要的问题。

1.4 模型评估与模型选择

1.4.1 训练误差与测试误差

  • 统计学习的目的是使学到的模型不仅对已知数据,而且对未知数据都有很好的预测能力。不同的学习方法会给出不同的模型。当损失函数给定时,基于损失函数的模型的训练误差和模型的测试误差,就自然成为学习方法的评估标准。统计学习方法具体采用的损失函数未必是评估时使用的损失函数。
  • 训练误差的大小,对判断给定的学习问题是不是一个容易的学习问题是有意义的,但本质上不重要。测试误差反映了学习方法对未知的测试数据集的预测能力,是学习中的重要概念。显然,给定两种学习方法,测试误差小的方法具有更好的预测能力,是更有效的方法。通常将学习方法对未知数据的预测能力称为泛化能力。

1.4.2 过拟合与模型选择

  • 当假设空间含有不同复杂度的模型时,就要面临模型选择的问题。如果在假设空间中存在真模型,那么所选择的模型应该逼近真模型。具体地,所选择的模型要与真模型的参数个数相同,所选择的模型的参数向量与真模型的参数向量相近。
  • 如果一味提高对训练数据的预测能力,所选模型的复杂度往往比真模型更高。这种现象称为过拟合。过拟合是指学习时选择的模型所包含的参数过多,以至出现这一模型对已知数据预测的很好,但对未知数据预测很差的现象。可以说模型的选择旨在避免过拟合并提高模型的预测能力。
  • M次多项式函数拟合问题,M=0,M=1,M=3,M=9时多项式函数拟合的情况。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第6张图片
  • 该M次多项式为 f M ( x , w ) = w 0 + w 1 x + w 2 x 2 + . . . . + w M x M = ∑ j = 0 M w j x j f_M(x,w)=w_0+w_1x+w_2x^2+....+w_Mx^M=\sum_{j=0}^Mw_jx^j fM(x,w)=w0+w1x+w2x2+....+wMxM=j=0Mwjxj
  • 解决这一问题的方法可以是这样的。首先确定模型的复杂度,即确定多项式的系数;然后在给定模型复杂度下,按照经验风险最小化策略,求解参数,即多项式的系数。具体地,求解以下经验风险最小化: L ( w ) = 1 2 ∑ i = 1 N ( f ( x i , w ) − y i ) 2 L(w)={1\over2}\sum_{i=1}^N(f(x_i,w)-y_i)^2 L(w)=21i=1N(f(xi,w)yi)2
    这时,损失函数为平方损失,系数为 1 2 1\over2 21是为了计算方便。
  • 如果M=0,多项式曲线是一个常数,数据拟合效果很差。如果M=1,多项式曲线是一条直线,数据拟合效果也很差。相反,如果M=9,多项式曲线通过每个数据点,训练误差为0.从给定训练数据拟合的角度来说,效果是最好的。
  • 但是因为训练数据本身存在噪声,这种拟合曲线对未知数据的预测能力往往并不是最好的,在实际学习中并不可取。这时过拟合现象就会发生。这就是说,模型选择时不仅要考虑对已知数据的预测能力,而且还要考虑对未知数据的预测能力。当M=3时,多项式曲线对训练数据拟合效果足够好,模型也比较简单,是一个较好的选择。
  • 在多项式函数拟合中可以看到,随着多项式次数(模型复杂度)的增加,训练误差会减小,直至趋向于0,但是测试误差却不是如此,它会随着多项式次数(模型的复杂度)的增加会先减小后增大,而最终的目的是使测试误差达到最小。这样,在多项式函数拟合中,就要选择合适的多项式次数,以达到这一目的。这一结论对一般的模型选择也是成立的。
  • 训练误差和测试误差与模型复杂度的关系。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第7张图片
  • 当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小之后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,学习时就要防止过拟合,进行最优的模型选择,即选择复杂度适当的模型,以达到测试误差最小的目的。

1.5 正则化与交叉验证

1.5.1 正则化

  • 模型选择的典型方法是正则化。正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项或罚项。正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化值就越大。比如,正则化项可以是模型参数向量的范数。
  • 正则化一般具有如下形式:
    m i n f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) min_{f \in F}{1\over N}\sum_{i=1}^N L(y_i,f(x_i))+\lambda J(f) minfFN1i=1NL(yi,f(xi))+λJ(f)
    其中,第1项是经验风险,第2项是正则化项, λ ≥ 0 \lambda \ge 0 λ0 为调整两者之间关系的系数。
  • 正则化符合奥卡姆剃刀原理。奥卡姆剃刀原理应用于模型选择时变为以下想法:在所有可能选择的模型中,能够很好的解释已知数据,并且十分简单才是最好的模型,也就是应该选择的模型。从贝叶斯估计的角度来看,正则化对应于模型的先验概率。可以假设复杂的模型有较好的先验概率。可以假设复杂的模型有较好的先验概率,简单的模型有较大的先验概率。

1.5.2 交叉验证

  • 另一种常用的模型选择方法是交叉验证。
  • 如果给定的样本数据充足,进行模型选择的一种简单方法就是随机地将数据集切成三个部分,分别是训练集、验证即、测试集。训练集用来训练模型,验证集用于模型的选择,测试集用于最终学习方法的评估。在学习到的不同复杂度的模型中,选择对验证集有最小预测误差的模型。由于验证集有足够多的数据,用它对模型进行选择也是有效的。
  • 但是,在许多实际应用中数据是不充足的。为了选择好的模型,可以采用交叉验证方法。交叉验证的基本想法是重复的使用数据;把给定的数据进行切分,将切分的数据集组合为训练集与测试集,在此基础上反复地进行训练、测试及模型选择。

1. 简单交叉验证

  • 简单交叉验证的方法是:首先,随机地将已给数据分为两部分,一部分作为训练集,另一部分作为测试集(例如,70%作为训练集,30%作为测试集);然后用训练集在各种条件下训练模型,从而得到不同的模型;在测试集上评价各个模型的测试误差,选出测试误差最小的模型。

2. S折交叉验证

  • 应用最多的是S折交叉验证,方法如下:首先,随机地将已给数据切分为S个互不相交、大小相同的子集;然后利用S-1个子集的数据训练模型,利用余下的子集测试模型;将这一过程对可能的S种选择重复进行;最后选出S次评测中平均测试误差最小的模型。

3. 留一交叉验证

  • S折交叉验证的特殊情形是 S = N S=N S=N ,称为留一交叉验证,往往在数据缺乏的情况下使用。N是给定数据集的容量。

1.6 泛化能力

1.6.1 泛化误差

  • 学习方法的泛化能力是指由该方法学习到的模型对未知数据的预测能力,是学习方法本质上重要的性质。现实中采用最多的办法是通过测试误差来评价学习方法的泛化能力,但这种评价是依赖于测试数据集的。因为测试数据集是有限的,很可能由此得到的评价结果是不可靠的。统计学习理论试图从理论上对学习方法的泛化能力进行分析。
  • 首先给出泛化误差的定义。如果学到的模式是 f f f ,那么用这个模型对未知数据预测的误差即泛化误差: R e x p ( f ) = E p [ L ( Y , f ( X ) ) ] = ∫ x y L ( y , f ( x ) ) P ( x , y ) d x d y R_{exp}(f)=E_p[L(Y,f(X))]=\int_{xy}L(y,f(x))P(x,y)dxdy Rexp(f)=Ep[L(Y,f(X))]=xyL(y,f(x))P(x,y)dxdy
  • 泛化误差反映了学习方法的泛化能力,如果一种方法学习的模型,比另一种方法的模型具有更小的泛化误差,那么这种方法就更有效。事实上,泛化误差就是所学习到的模型的期望风险。

1.6.2 泛化误差上界

  • 学习方法的泛化能力分析往往通过研究泛化误差的概率上界进行的,简称为泛化误差上界。具体来说,就是通过比较两种学习方法的泛化误差上界的大小来比较它们的优劣。泛化误差上界通常具有以下性质:它是样本容量的函数,当样本容量增加时,泛化上界趋于0;它是假设空间容量的函数,假设空间容量越大,模型就越难学,泛化误差上界就越大。

1.7 生成模型与判别模型

  • 监督学习的任务就是学习一个模型,应用这一模型,对给定的输入预测相应的输出。这个模型的一般形式为决策函数: Y = f ( X ) Y=f(X) Y=f(X)
    或者条件概率分布: P ( Y ∣ X ) P(Y|X) P(YX)
  • 监督学习方法可以分为生成方法和判别方法。所学到的模型分别称为生成模型和判别模型。
  • 生成方法由数据学习联合概率分布 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)={P(X,Y) \over 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 X X , 应该预测什么样的输出 Y Y Y 。典型的判别方法包括:K近邻法,感知机,决策树,逻辑斯谛回归模型,最大熵模型,支持向量机,提升方法,条件随机场等。
  • 在监督学习中,生成方法和判别方法各有优缺点,适合于不同条件下的学习问题。
  • 生成方法的特点:生成方法可以还原出联合概率分布 P ( X , Y ) P(X,Y) P(X,Y) ,而判别方法则不能;生成方法的学习收敛速度更快,即当样本容量增加的时候,学到的模型可以更快的收敛于真实模型;当存在隐变量时,仍可以用生成方法学习,此时判别方法就不能用。
  • 判别方法的特点:判别方法直接学习的是条件概率 P ( Y ∣ X ) P(Y|X) P(YX) 或决策函数 f ( X ) f(X) f(X) ,直接面对预测,往往学习的准确率更高;由于直接学习条件概率 P ( Y ∣ X ) P(Y|X) P(YX) 或决策函数 f ( X ) f(X) f(X) ,可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。

1.8 监督学习应用

1.8.1 分类问题

  • 分类是监督学习的核心问题。在监督学习中,当输出变量Y取有限个离散值时,预测问题便成分类问题。这时,输入变量X可以是离散的,也可以是连续的。监督学习从数据中学习一个分类模型或分类决策函数,称为分类器。分类器对新的输入进行输出的预测称为分类。可能的输出称为类别,分类的类别为多个时,称为多分类问题。
  • 分类问题包括学习和分类两个过程。在学习过程中,根据已知的训练数据集,利用有效的学习方法学习一个分类器;在分类过程中,利用学习的分类器对新的输入实例进行分类。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第8张图片
  • 评价分类器性能的指标一般是分类准确率(accuracy),其定义是:对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。也就是损失函数是0-1损失时测试数据集上的准确率。
  • 对于二分类问题常用的评价指标是精确率(precision)与召回率(recall)。通常以关注的类为正类,其他类为负类,分类器在测试数据集上的预测或正确或不正确,4种情况出现的总数分别记作:
    TP:将正类预测为正类数。
    FN:将正类预测为负类数。
    FP:将负类预测为正类数。
    TN:将负类预测为负类数。
    精确率定义为: P = T P T P + F P P={TP \over {TP+FP}} P=TP+FPTP
    召回率定义为: R = T P T P + F N R={TP \over {TP+FN}} R=TP+FNTP
    此外,还有 F 1 F_1 F1 值,是精确率和召回率的调和均值,即
    2 F 1 = 1 P + 1 R {2\over F_1}={1\over P}+{1\over R} F12=P1+R1
    精确率和召回率都高时, F 1 F_1 F1值也会高。
  • 许多统计学习方法可以用于分类,包括K近邻法,感知机,朴素贝叶斯法,决策树,决策列表,逻辑斯谛回归模型,支持向量机,提升方法,贝叶斯网络,神经网络,Winnow等。
  • 分类在于根据其特性将数据分门别类,所以在很多领域都有广泛的应用。例如,在银行业务中,可以构建一个客户分类模型,对客户按照贷款风险大小进行分类;在网络安全领域,可以利用日志数据的分类对非法入侵进行检测;在图像处理中,分类可以用来检测图像中是否有人脸出现;在手写识别中,分类可以用于识别手写数字;在互联网搜索中,网页的分类可以帮助网页的抓取、索引与排序。
  • 分类应用的例子–文本分类。这里的文本可以是新闻报道,网页,电子邮件,学术论文等。类别往往是关于文本内容的,例如政治、经济、体育等;也有关于文本特点的,如正面意见,反面意见;还可以根据应用确定,如垃圾邮件、非垃圾邮件等;文本分类是根据文本的特征将其划分到已有的类中。输入是文本的特征向量,输出是文本的类别。通常把文本中的单词定义为特征,每个单词对应一个特征;单词的特征可以是二值的,如果单词在文本中出现,则取值1,否则是0;也可以是多值的,表示单词在文本中出现的频率。直观地,如果股票、银行、货币这些词出现很多,这个文本可能属于经济类;如果网球、比赛、运动员这些词频繁出现,这个文本可能属于体育类。

1.8.2 标注问题

  • 标注问题也是一个监督学习问题,可以认为标注问题是分类问题的一个推广,又是更复杂的结构预测问题的简单形式。标注问题的输入是一个观测序列,输出是一个标记序列或状态序列。标注问题的目标在于学习一个模型,使它能够对观测序列给出标记序列作为预测。注意,可能的标记个数是有限的,但是其组合所成的标记序列的个数是依序列长度呈指数级增长的。
  • 标注问题分为学习和标注两个过程。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第9张图片
  • 评价标注模型的指标与评价分类模型的指标一样,常用的有标注准确率、精确率和召回率,其定义与分类模型相同。
  • 标注常用的统计学习方法有:隐马尔可夫模型,条件随机场场。
  • 标注问题在信息抽取、自然语言处理等领域被广泛应用,是这些领域的基本问题。例如,自然语言处理中的词性标注就是一个典型的标注问题:给定一个由单词组成的句子,对这个句子中的每个单词进行词性标注,即对一个单词序列预测其对应的词性标记序列。

1.8.3 回归问题

  • 回归是监督学习的另一个重要问题。回归用于预测输入变量(自变量)与输出变量(因变量)之间的关系,特别是当输入变量的值发生变化时,输出变量随之发生的变化。回归模型表示输入变量到输出变量之间映射的函数。回归问题的学习等价于函数的拟合:选择一条函数曲线,使其很好的拟合已知数据,且很好的预测未知数据。
  • 回归问题分为学习和预测两个过程。
    机器学习理论《统计学习方法》学习笔记:第一章 统计学习及监督学习_第10张图片
  • 回归问题按照输入变量的个数,分为一元回归和多元回归;按照输入变量和输出变量之间的关系的类型即模型的类型,分为线性回归和非线性回归。回归学习最常用的损失函数时平方损失函数,在此情况下,回归问题可以由著名的最小二乘法解决。
  • 许多领域的任务都可以形式化为回归问题,比如,回归可以用于商务领域,作为市场趋势预测、客户满意度调查、产品质量管理、投资风险分析的工具。假设知道某一公司在过去不同时间点的市场上的股票价格,以及在各个时间点之前可能影响该公司的股价信息(比如,营业额或利润)。目标是从过去的数据学习一个模型,使它可以基于当前的信息预测该公司下一个时间点的股票价格。
  • 可以将这个问题作为回归问题解决。具体地,将影响股价的信息视为自变量(输入的特征),而股价作为因变量(输出的特征)。将过去的数据作为训练数据就可以学习一个回归模型,并对未来的股价进行预测。可以看出这是一个困难的预测问题,因为影响股价的因素非常多,未必能判断哪些信息有效并能得到这些信息。

小结

  1. 统计学习或机器学习是关于计算机基于数据构建概率统计模型,并运用模型对数据进行分析与预测的一门学科。统计学习包括监督学习、无监督学习、强化学习。
  2. 统计学习方法三要素:模型、策略、算法,对理解统计学习方法起到提纲挈领的作用。
  3. 监督学习可以概括如下:从给定有限的训练数据出发,假设数据是独立同分布的,而且假设模型属于某个假设空间,应用某一评价准则,从假设空间选取一个最优的模型,使它对已给训练数据及未知预测数据,在给定评价标准意义下有最标准的预测。
  4. 在统计学习中,进行模型选择或提高模型的泛化能力是一个重要的问题。如果只考虑减少训练误差,就可能产生过拟合现象。模型的选择方法有正则化与交叉验证方法。学习方法泛化能力的分析是统计学习理论研究的重要课题。
  5. 分类问题、标注问题、回归问题都是监督学习的重要问题,统计学习方法包括感知机、K近邻法、朴素贝叶斯法、决策树、逻辑斯谛回归与最大熵模型、支持向量机、提升方法、EM算法、隐马尔可夫模型、条件随机场,这些方法是主要的分类、标注、回归方法,又可以归类为生成方法与判别方法。

你可能感兴趣的:(机器学习,深度学习)