机器学习笔记(二) 一、  Logistic回归与Logistic函数 二、  Logistic决策边界(decision boundary) 三、  Logistic代价函数 四、  Logistic梯度下降 五、 多分类问题 六、 Logistic优化算法 七、 过拟合(overfitting)与正则化(regularization)

  分类问题的标签可以是$yepsilon left { 0,1 ight },yepsilon left { 0,1,2 ight },yepsilon left { 0,1,2,3,... ight }$,对应分别为二元、三元、…分类问题。借鉴线性回归算法,我们希望预测样本属于每个标签的概率$pleft { y=i ight }$ ,而且$pepsilon left [ 0,1 ight ]$。将概率最大的标签作为分类结果。这里的概率就对应为假设函数$h_ heta (x)$,与线性回归不同,logistic回归要求$h_ heta (x)epsilon left lfloor 0,1 ight floor$。于是新的$h_ heta (x)$函数的构造如下:

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

二、  Logistic决策边界(decision boundary)

  以二元分类为例,从假设函数中可以发现,当$ heta^Tx>0$时,概率大于0.5,因此预测y=1;反之预测y=0。$ heta^Tx=0$就是决策边界,其展开形式为:$ heta_0x+ heta_1x+ heta_2x+...=0$。对应的边界线如下图所示:

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

  这里的边界就是一条直线,将空间划分为两个区域。如果是多项式回归,那么边界可能是下面形式: 

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

三、  Logistic代价函数

  以二元分类为例,Logistic回归同线性回归一样,都要确定合适的模型参数,来更好地预测概率。同样,使用代价函数来评价$ heta$好坏,logistic回归里采用对数代价形式:

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

   机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)     机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

    当所给标签为1时,如果预测的概率接近1,则代价接近0;如果预测的概率接近0,则代价接近无穷。当所给标签为0时,如果预测的概率接近1,则代价接近无穷;如果预测的概率接近0,则代价接近1

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

  

四、  Logistic梯度下降

  用代价函数去惩罚模型参数:

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

   对式3-1求偏导可得:

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

五、 多分类问题

  解决多分类的一种思想是分解为多个二分类,为每一个二分类都维护一个假设函数,记成下面的形式:  

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

  例如三分类中,我们维护三个假设函数:$h_ heta^{(0)}(x)、h_ heta^{(1)}(x)、h_ heta^{(2)}(x)$,表示属于三个类的概率,当更新$h_ heta^{(0)}(x)$时,将标签为0的视作0,将标签为12都视作1。$h_ heta^{(1)}(x)、h_ heta^{(2)}(x)$也类似。最终预测分类的时候,比较三个假设函数值的大小,取概率最大的作为分类标准。

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

  机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

六、 Logistic优化算法

  除了梯度下降算法,还有以下优化算法,采用优化算法,可以自动选择合适学习率,收敛更快;一般采用这些优化算法而非梯度下降,这里暂不深究算法原理与实现。

1.共轭梯度算法(conjugate gradient

它的每一个下降方向是与上一次共轭的,其优点是所需存储量小,收敛快,稳定性高,而且不需要任何外来参数。

下图绿线为共轭梯度法。

机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

2.拟牛顿法(BFGS)

牛顿法的突出优点是收敛很快,但是运用牛顿法需要计算二阶偏导数,而且目标函数的Hesse矩阵可能非正定。为了克服牛顿法的缺点,人们提出了拟牛顿法,它的基本思想是用不包含二阶导数的矩阵近似牛顿法中的Hesse矩阵的逆矩阵。

3.限制内存BFGS(L-BFGS)

   在BFGS算法中,当优化问题规模很大时,矩阵的存储和计算将变得不可行。为了解决这个问题,就有了L-BFGS算法。L-BFGS的基本思想是只保存最近的m次迭代信息,从而大大减少数据的存储空间。

七、 过拟合(overfitting)与正则化(regularization)

1.过拟合

    过拟合是指当特征量较多,或特征中有高阶项,而数据较少时,存在过分拟合的情况,与之相反的情况为欠拟合。这两种情况都对预测不利。

    机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

    解决过拟合的办法一种是减少特征量,但会造成特征信息减少;另一种是正则化。

2.回归的正则化

    对于一般地代价函数,单独地加上对参数的惩罚,如下:

    机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

    这个代价函数由两部分组成:前部分是偏差,可以让函数更加贴合点,后部分可以限制参数的大小。当λ取值较大,为了最小化代价,每个参数都会趋近0,最终拟合结果就是$h_ heta(x^{(i)})=0$。如果λ适当,则既可以很好地贴合数据点,又能避免过拟合现象。

    回归算法的正则化更新方程如下,对线性回归和逻辑回归都适用:

    机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)

    一般$1-alphafrac{lambda }{m}$的值非常接近1,例如0.98。对于正规方程的正则化公式如下,采用正则化的另一个好处是它能保证正规方程是一定可逆的。

    机器学习笔记(二)
一、  Logistic回归与Logistic函数
二、  Logistic决策边界(decision boundary)
三、  Logistic代价函数
四、  Logistic梯度下降
五、 多分类问题
六、 Logistic优化算法
七、 过拟合(overfitting)与正则化(regularization)