机器学习之参数估计

参数估计(Parameter Estimate)就是通过一系列算法,来求出模型的最优参数。在各个机器学习深度学习的框架里,都变成了optimizer的活了。

其实这个名字很奇怪,但是在比较早的机器学习论文里都是这么叫的,我们重点来关注下里面涉及的一些算法。

这里主要关注的是

  • 最小二乘法
  • 梯度下降
  • 牛顿法
  • 拟牛顿法(未完成)

最小二乘法 Least Squares Method

二乘是平方的意思,感觉最小二乘法就相当于均方误差(MSE)了,最小二乘法的思想是找到一组参数( heta=( heta_0, heta_1, ..., heta_n))使得(sum_{i=1}^n(h_ heta(x_i)-y_i)^2)最小

具体求解时,通过代数法求解,假设模型为(h_ heta(x) = X heta),那么定义损失函数为(J( heta) = frac{1}{2}(X heta-Y)^T(X heta-Y)),这里二分之一是为了计算方便。那么求解步骤如下:

[frac{partial J( heta)}{partial heta} = X^T(X heta-Y) = 0\ heta = (X^TX)^{-1}X^TY ]

总结:

  1. 最小二乘法需要计算((X^TX)^{-1}),这个逆不一定存在;
  2. 当特征很多时,求逆的过程非常复杂;
  3. 当模型函数不是线性函数时,无法使用最小二乘法。

梯度下降 Gradient Descent

梯度下降是一种迭代求解的方法,主要思路是:

[ heta = heta - alpha frac{partial J( heta)}{partial heta} ]

其中,(alpha)代表学习速率,也是迭代过程中的步长。

根据数据的不同,主要分为以下三种:

  • 批量梯度下降,Batch Gradient Descent,直接在所有数据进行迭代计算
  • 随机梯度下降,Stochastic Gradient Descent,每次选择在一条数据上进行迭代
  • 小批量梯度下降,Mini-batch Gradient Descent,每次选择在一个小batch上进行迭代计算

总结:

  • 优势:和最小二乘法相比,在没有解析解的时候也能进行迭代求解;
  • 缺点:速度慢,没有最小二乘法快

牛顿法 Newton Method

牛顿法同样是使用近似求解,但是它的速度是比梯度下降法更快的。首先来看下牛顿法在求零点的时候的应用,对于函数(f(x))求近似零点,假设当前的近似零点是(x_n),要进一步求解下一个零点(x_{n+1}),该怎么做呢?

首先,将在(x_n)处展开(f(x))的二阶泰勒展开式得:

[f(x) = f(x_n) + f'(x_n)(x-x_n) + frac{f''(x_n)}{2}(x-x_n)^2 ag{1} ]

此时,当前的零点满足

[f'(x_n) = 0 ag{2} ]

对(1)进行求导并结合(2)得

[egin{aligned} f'(x) & = 0 = f'(x_n) + f''(x_n)(x-x_n)\ x & = x_n - frac{f'(n)}{f''(n)} end{aligned} ]

于是得到新的零点(x),这里的(x)就是下一个零点(x_{n+1})

现在把参数(x)扩展成向量,定义损失函数(f(x))

[sum_{x in Bbb{R}^n}f(x) ]

假设(f(x))具有二阶连续偏导数,若第(k)次迭代值为(x^{(k)}),则可将(f(x))(x^{(k)})的附近进行二阶泰勒展开:

[f(x) = f(x^{(k)}) + g^T_k(x-x^{(k)}) + frac{1}{2}(x-x^{(k)})^TH(x^{(k)})(x-x^{(k)}) ]

其中(g_k = g(x^{(k)})= abla f(x^{(k)}))是f(x)的梯度向量在点(x^{(k)})的值,(H(x^{(k)}))(f(x))的海塞矩阵(Hessian Matrix)在点(x^{(k)})的值,其中海塞矩阵的定义如下:

[H(x) = [frac{partial^2f}{partial x_i partial x_j}]_{n imes n} ]

这里令( abla f(x)=0),得到

[egin{aligned} g_k & + H_k(x-x^{(k)})= 0\ x & = x^{(k)} - H_k^{-1}g_k end{aligned} ]

这里将(H(x^{(k)}))简记为(H_k),于是得到了牛顿法。

总结:

  • 优势:速度快
  • 缺点:海塞矩阵的逆矩阵计算太耗时了

改进方法:拟牛顿法

原文地址:https://www.cnblogs.com/YoungF/p/13413007.html