zoukankan      html  css  js  c++  java
  • 机器学习-线性模型

    一、基本形式

      设定由n个属性描述的示例X = (x1; x2; x3; ...; xn),xi是X第i个属性的取值。线性模型尝试通过属性的线性组合来进行描述和预测

    f(X) = w1*x1 + w2*x2 + ...+wn*xn + b,

    其中w是各属性的组合系数。f(X)也可以用向量形式表达。学得w,b之后模型就得以确定

      线性模型形式简单、易于建模,具有很好的解释性。同时很多强大的非线性模型也是在线性模型的基础上通过引入层级结构和高维映射而得。

     

    二、线性回归

      给定数据集D={(X1,Y1), (X2,Y2), ..., (Xm,Ym)},线性回归 即试图学习一个线性模型尽可能正确的来预测实值输出标记。对于只有一个示例X1的数据集D,

       1.对于Xi的属性

        若属性间存在“序”的联系,可通过连续化转化成连续值,如二值属性“身高”有“高”“矮”的取值,可以转化为{1.0,0.0};三值属性“高度”有高、中、低三种                取值可转化为{1.0,0.5,0.0}

        若k个属性间不存在序的关系,通常转化为k维向量。如“瓜类”的取值西瓜、黄瓜、冬瓜可转化为(1,0,0)(0,1,0)(0,0,1)

       2.线性回归的目的

        线性回归尝试学得

    f(xi) = w*xi + b, 使得f(xi) ≈ yi

        求得w,b关键在于衡量f(x)和y之间的差别,通常衡量办法为“最小二乘法”,即令均方误差最小化,这里设w*, b*为w,b的解,则有

        之所以采用均方误差最小化,取决于均方误差(最小二乘法)的几何意义:试图找到一条直线,使所有离散样本到直线上的欧式距离之和最小。

          欧式距离:在n维空间中两点之间的真实距离,或者向量的自然长度(二维或三维中即两点间的实际距离)

       3.线性回归模型的最小二乘“参数估计”

        令,在求解w,b使E(w,b)最小化的过程即线性回归模型的最小二乘“参数估计”

        简单分析:因为E(w, b)是w,b的凸函数,对w,b分别求偏导并令偏导为零后可得到w,b的最优解(严格来说是最优解的闭式解)。

     

       总结:上述即为只有一个示例X1的数据集D的线性回归模型分析,对于更一般的情况D={(X1,Y1), (X2,Y2), ..., (Xm,Ym)},我们试图得到

    f(Xi) = wT*Xi + b, 使得f(Xi) ≈ yi,w为w的向量。称为“多元线性回归”

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    我们令线性回归模型简写为:y = wTx + b,如果我们认为输出标记在指数尺度上变化,可将输出标记的对数作为线性模型逼近的目标

    ln y = wTx + b,即“对数线性回归”

    更一般的,我们取单调可微函数g(~),令

    y = g-1wTx + b),即“广义线性模型”,显然g(~) = ln(~)时就是对数线性回归

     

    三、对数几率回归

      虽然名字叫回归,但是我们做的是分类学习。

       1.对于二分类任务

        对于分类任务,结合广义线性模型,我们可以找一个单调可微函数g(~)将分类任务的真实标记y与线性回归模型的预测值z联系起来,有

    z = wTx + b,二分类任务输出标记 y € {0,1} 

        所以我们要将z转化成0或1,主要通过单位阶跃函数

    y = 0,z < 0(z小于0则为反例)

    y = 0.5, z = 0(z等于0可任意判别)

    y = 1, z > 0(z大于0则为正例)

        但是单位阶跃函数在坐标系中是离散的,并不能成为g(~),通常用对数几率函数替代:

    将z带回,得到总的模型

    常规等式变换后得到

     

      若将y视为x为正例的可能性,(1-y)视为其反例的可能性,则

      几率(odds) = y与(1-y)的比值

      对数几率(log odds/logit)  = ln(y/(1-y))

     

    --------------------(以下需要好的概率论基础和更深层次机器学习理论)--------------------------

      2.对数几率回归的好处

    1. 直接对分类可能性进行建模,无需事先假设数据分布,避免了假设分布不准确带来的问题
    2. 不是仅预测出“类别”,而是可得到近似概率预测,可帮助许多需要利用概率辅助决策的任务
    3. 对率函数任意阶可导的凸函数,有很好的数学性质。现在有许多数值优化算法可直接用于求取最优解

      在上述得到的一般对数几率回归模型中,我们将y视为类后验概率估计重写模型得到,

    ,显然有

      于是我们可以通过“极大似然法”估计w和b。

        

     

  • 相关阅读:
    bzoj 1017 魔兽地图DotR
    poj 1322 chocolate
    bzoj 1045 糖果传递
    poj 3067 japan
    timus 1109 Conference(二分图匹配)
    URAL 1205 By the Underground or by Foot?(SPFA)
    URAL 1242 Werewolf(DFS)
    timus 1033 Labyrinth(BFS)
    URAL 1208 Legendary Teams Contest(DFS)
    URAL 1930 Ivan's Car(BFS)
  • 原文地址:https://www.cnblogs.com/KrianJ/p/10547959.html
Copyright © 2011-2022 走看看