深度/机器学习基础知识要点:SVM、Clustering、LR、GBDT

SVM

  • SVM(Support Vector Machines)定义

    一个能使两类之间的空间大小最大的一个超平面。这个超平面在二维平面上看到的就是一条直线,在三维空间中就是一个平面…。因此,我们把这个划分数据的决策边界统称为超平面。离这个超平面最近的点就叫做支持向量,点到超平面的距离叫间隔。支持向量机就是要使超平面和支持向量之间的间隔尽可能的大,这样超平面才可以将两类样本准确的分开,而保证间隔尽可能的大就是保证我们的分类器误差尽可能的小,尽可能的健壮。

  • 点到超平面的距离公式

    • 超平面的方程:
      在这里插入图片描述

    • 点到超平面的距离d的公式:
      在这里插入图片描述
      W||W||为超平面的范数
      常数bb类似于直线方程中的截距
      p(x1,x2,...xn)p(x_1,x_2,...x_n)为样本的中的一个点,其中xix_i表示为第ii个特征变量

  • 核函数
    对于非线性的情况,SVM 的处理方法是选择一个核函数,通过将数据映射到高维空间,来解决在原始空间中线性不可分的问题。

    在这里插入图片描述
    上图所述的这个数据集,是用两个半径不同的圆圈加上了少量的噪音生成得到的,所以,一个理想的分界应该是一个“圆圈”而不是一条线(超平面)。
    只需要把它映射到 一个三维空间中,下图即是映射之后的结果,将座标轴经过适当的旋转,就可以很明显地看出,数据是可以通过一个平面来分开的:
    在这里插入图片描述

Clustering

  • 距离度量
    最常用的距离度量就是闵科夫斯基距离,其特例包括欧氏距离和曼哈顿距离:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • k-means算法

    在这里插入图片描述

  • 高斯混合聚类
    在这里插入图片描述

  • 密度聚类

    此类算法假定聚类结构能通过样本分布的紧密程度确定。通常情况下,密度聚类算法从样本密度角度考察样本的可连接性,并基于可连接样本不断拓展聚类簇以得到最终聚类结果。

    DBSCAN算法

  • 层次聚类

    层次聚类试图在不同层次上对数据集进行划分,从而形成树状的聚类结构。

LR

LR(Logistic Regression)逻辑回归

  • Logistic分布

    • Logistic分布函数如下:
      在这里插入图片描述
      μ\mu 是位置参数,γ>0\gamma > 0 是形状参数。

    • Logistic分布的密度函数如下:
      在这里插入图片描述

    • 示意图

      在这里插入图片描述
      上图是不同参数对logistic分布的影响,从图中可以看到可以看到 μ\mu 影响的是中心对称点的位置,γ\gamma 越小中心点附近增长的速度越快。
      在深度学习中用到的非线性变换sigmoid函数是逻辑斯蒂分布的 γ=1,μ=0\gamma=1, \mu=0 的特殊形式。

  • 逻辑斯蒂回归模型

    逻辑回归是为了解决分类问题,目标是找到一个有足够好区分度的决策边界,从而能够将两类很好的分开。

    已知一个事件发生的机率odds是指该事件发生与不发生的概率比值。

    二分类(Y=0,1)(Y=0, 1)情况下即
    P(Y=1x)P(Y=0x)=P(Y=1x)1P(Y=1x)\frac{P(Y=1|x)}{P(Y=0|x)}=\frac{P(Y=1|x)}{1−P(Y=1|x)}

    取odds的对数就
    logistic(P(Y=1x))=logP(Y=1x)1P(Y=1x)=wxlogistic(P(Y=1|x))=log\frac{P(Y=1|x)}{1−P(Y=1|x)}=w⋅x

    • 逻辑回归的定义:
      输出Y=1Y=1的对数机率是由输入x的线性函数表示的模型,即逻辑斯蒂回归模型
  • 逻辑回归的似然函数、对数似然函数
    参考详解

  • 优化方法
    参考详解

  • 正则化

    在目标函数中加上一个正则化项Φ(w)\Phi(w)

    J(w)=1m[i=1myiloghw(xi)+(1yi)log(1hw(xi))]+λΦ(w)J(w) = -\frac{1}{m}[\sum_{i=1}^{m}y_ilog h_w (x_i) + (1-y_i)log(1-h_w(x_i))] + \lambda \Phi(w)

    正则化项一般会采用L1范数或者L2范数,分别为Φ(w)=x1Φ(w)=x2\Phi (w)=||x||_1和\Phi (w)=||x||_2

    • L1范数
      L1范数:Φ(w)=x\Phi (w)=|x|
      当采用梯度下降方式来优化目标函数时,对目标函数进行求导,正则化项导致的梯度变化当wj>0w_j > 0 是取1,当wj<0w_j < 0 时取1-1。 因此当wj>0w_j > 0 的时候,wjw_j 会减去一个正数,导致wjw_j 减小,而当wj<0w_j < 0 的时候,wjw_j 会减去一个负数,导致wjw_j 又变大,因此这个正则项会导致参数w_j$ 取值趋近于0,这就是为什么L1正则能够使权重稀疏

    • L2范数
      L2范数: ϕ(w)=j=1nwj2\phi(w) = \sum_{j=1}^{n}w_j^2
      对它求导,得到梯度变化为Φ(w)wj=2wj\frac{\partial \Phi(w)}{\partial w_j} = 2w_j。同样的更新之后使得wjw_j 的值不会变得特别大。在机器学习中也将L2正则称为weight decay,在回归问题中,关于L2正则的回归还被称为Ridge Regression岭回归。weight decay还有一个好处,它使得目标函数变为凸函数,梯度下降法和L-BFGS都能收敛到全局最优解。

    L1正则化会导致参数值变为0,但是L2却只会使得参数值减小,这是因为L1的导数是固定的,参数值每次的改变量是固定的,而L2会由于自己变小改变量也变小。而公式中的λ\lambda也有着很重要的作用,它在权衡拟合能力和泛化能力对整个模型的影响,λ\lambda越大,对参数值惩罚越大,泛化能力越好。

GBDT

GBDT (Gradient Boosting Decision Tree) 梯度提升决策树

  • 集成学习
    集成学习方法中最主要的两种方法为Bagging和Boosting

  • Bagging方法

    通过对训练样本重新采样的方法得到不同的训练样本集,在这些新的训练样本集上分别训练学习器,最终合并每一个学习器的结果,作为最终的学习结果。
    学习器之间彼此是相互独立的,这样的特点使得Bagging方法更容易并行
    最重要的算法为随机森林Random Forest算法。

  • Boosting方法
    Boosting是一种递进的组合方式,每一个新的分类器都在前一个分类器的预测结果上改进。

  • GBDT

    • GBDT表示
      在这里插入图片描述

    GBTD是一个加性模型,通过不断迭代拟合样本真实值与当前分类器的残差yy^hm1y−\hat{y}_{h_{m−1}}来逼近真实值的,按照这个思路,第m个基分类器的预测结果为
    在这里插入图片描述

    hm(x)h_m(x)的优化目标就是最小化当前预测结果Fm1(xi)+h(xi)F_{m−1}(x_i)+h(x_i)yiy_i​之间的差距。
    在这里插入图片描述

其他详细参考:
简单易学的机器学习算法——梯度提升决策树GBDT
集成树之三:GBDT
机器学习算法GBDT

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章