zoukankan      html  css  js  c++  java
  • 《统计学习方法》笔记

    1. 概论

    统计学习是基于计算机基于数据构建概率统计模型并将其用于分析和预测。

    监督学习、无监督学习、强化学习等是统计学习或机器学习的基本分类。

    监督学习的本质是学习输入到输出的映射的统计规律。

    无监督学习的本质是学习数据种的统计规律或潜在结构。

    强化学习的本质则是学习最优的序贯决策。

     

    统计学习方法三要素:模型、策略和算法。

    模型就是所要学习的条件概率的分布或决策函数。假设空间即指所有可能的模型。决策函数集合的假设空间,条件概率集合的假设空间

    对于模型的假设空间,我们需要考虑以什么样的准则学习或选择最优的模型,而这种行为则称之为--策略。

    算法则指学习模型的具体计算方法。

     

    关于统计学习方法监督学习类中的策略要素,首先引入损失函数风险函数,损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。

    在假设空间F中选择模型f作为决策函数,那么损失函数是f(X)和Y的非负实值函数,记为 L(Y,f(X))。

    常用的损失函数有0-1损失函数、平方损失函数、绝对值损失函数和对数损失函数等等。

    损失函数的值越小,代表模型越好。由于模型的输入和输出(X,Y)是随机变量,遵循联合分布P(X,Y),因此损失函数的期望

    这是理论上模型f(X)关于联合分布P(X,Y)的平均意义下的损失,称为风险损失函数或损失期望。

    学习的目标是选择期望风险最小的模型。但由于联合分布P(X,Y)未知,需要根据大数定理,以样本的平均损失(即经验风险或经验损失)来趋近期望损失,经验风险,记为

    不过由于现实中的样本容量有限,经验风险的结果不理想,需要用经验风险最小化结构风险最小化的方法对其进行矫正。

    经验风险最小化的一个经典例子是极大似然估计,但由于样本容量较小,经验风险最小化会出现过拟合现象。

    为防止过拟合,结构风险在经验风险上加了表示模型复杂度的正则化项(regularizer)或罚项(penalty term)。

    其中J(f)是定义在假设空间F上的泛函,模型f越复杂,J(f)的复杂度就越大。

    这样,监督学习问题就成了经验风险或结构风险函数最优化的问题。

     

    由学习方法学习到的模型对未知数据的预测能力,称为学习方法的泛化能力,泛化能力是学习方法本质上重要的性质。

    如果学习到的模型是,那么这个模型对未知数据预测的误差则为泛化误差:

    如果一种学习方法的模型比另一种具有跟小的泛化误差,则这种学习方法更有效,实际上,泛化误差即期望风险。

    学习方法的泛化能力分析往往通过研究泛化误差的概率上界进行的,简称泛化误差上界。其通常具有以下性质:是样本容量的函数,当样本容量增加时,泛化上界趋近于0;也是假设空间容量的函数,假设空间容量越大,模型越难学,泛化误差上界就越大。

     

    2. 感知机

    感知机是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1 二值。对应的函数如下:

    感知机学习目标是寻求一个超平面能将正负实例点完全正确分开,因此需要确定模型函数参数和b的值,而参数的确定又需要确定学习策略,即定义损失函数并将其极小化。

    感知机学习的损失函数定义为

    其中M为误分点的集合,这函数也即为感知机学习的经验风险函数,其是和b的连续可导函数。

    感知机学习算法有两种形式,一种是原始形式,另一种是对偶形式。

    原始形式(感知机模型为

    1. 选取初始值
    2. 在训练集中选取数据
    3. 如果

    4. 转至(2),直至训练中没有误分点。

       

      对偶形式(感知机模型为,其中

    5. 在训练集中选取数据
    6. 如果

      (4)转至(2),直至训练中没有误分点。

      为了方便对偶形式的计算,可将实例间的内积计算出来并存储在Gram矩阵中,

       

      感知机学习的例题,正实例点,负实例点,请试用原始形式和对偶形式求对应的感知机模型。

      图2-1 原始形式解法

      图2-2 对偶形式解法

  • 相关阅读:
    四层和七层负载均衡的区别-转
    MySQL高可用方案一(MHA)
    EC2.0开启多规格后,编辑无法获取规格数据
    PHP中取出字符串中的空格 逗号
    ECSTORE1.2 重启开启信任登陆模块(删除KEY)
    云体检通用代码补丁
    zendguard安装破解
    MySQL历史版本下载(官方)
    linux watch命令
    python判断值是否为空
  • 原文地址:https://www.cnblogs.com/lincz/p/11789787.html
Copyright © 2011-2022 走看看