数据压缩作业五推导及最小二乘法

一.预测误差均方值推导
在这里插入图片描述
二.最小二乘法总结
最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。

1梯度下降法:

梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。

算法步骤:

(1)、求梯度

(2)、向梯度相反的方向移动x,如下

,其中,为步长。如果步长足够小,则可以保证每一次迭代都在减小,但可能导致收敛太慢,如果步长太大,则不能保证每一次迭代都减少,也不能保证收敛。

(3)、循环迭代步骤2,直到的值变化到使得在两次迭代之间的差值足够小,比如0.00000001,也就是说,直到两次迭代计算出来的基本没有变化,则说明此时已经达到局部最小值了。

(4)、此时,输出x,这个x就是使得函数最小时的的取值 。

2.牛顿法

牛顿法法主要是为了解决非线性优化问题,其收敛速度比梯度下降速度更快。其需要解决的问题可以描述为:对于目标函数f(x),在无约束条件的情况下求它的最小值。

牛顿法的主要思想是:在现有的极小值估计值的附近对f(x)做二阶泰勒展开,进而找到极小点的下一个估计值,反复迭代直到函数的一阶导数小于某个接近0的阀值。

同理,牛顿法也可用于求解函数极值问题,只需将f(x)改为f(x)的导数即可。

优点: 它比传统的梯度下降算法收敛速度明显要快,另外,当f(x)是二次函数时,仅需一次迭代就能直接收敛到最小值。因为f(x)为二次函数时,在进行泰勒展开式,并没有高阶导数的损失,而在后面的每次计算都是等号运算,因而最后得到结果就是函数f(x)最小值对应的x。而对于非二次函数,若函数的二次形态较强,或迭代点已进入极小点的领域内,则其收敛速度也会很快。

缺点:

1)计算复杂度问题。

  在上面的这个算法中存在一个问题,即海塞矩阵的计算问题,此问题需要对f(x)求二阶偏导数,计算开销很大;另一方面,海塞矩阵的大小是n的平方,当n增大时,存储和计算的量是平方的速度增加。

  针对计算复杂度问题,于是有了拟牛顿法。

2)收敛性问题。

  对于非二次函数,也可能会出现f(xk+1)>f(xk)的情况,这时,牛顿法不能收敛,从而导致计算失败。对于这种情况,可以使用阻尼牛顿法来解决。

  阻尼牛顿法最核心的一点在于可以修改每次迭代的步长,通过沿着牛顿法确定的方向一维搜索最优的步长,最终选择使得函数值最小的步长。

下面给出多维无约束极值的情形:

若非线性目标函数f(x)具有二阶连续偏导,在x(k)为其极小点的某一近似,在这一点取f(x)的二阶泰勒展开,即:

 

  如果f(x)是二次函数,则其黑森矩阵H为常数,式(1)是精确的(等于号),在这种情况下,从任意一点处罚,用式(2)只要一步可求出f(x)的极小点(假设黑森矩阵正定,所有特征值大于0)

  如果f(x)不是二次函数,式(1)仅是一个近似表达式,此时,按式(2)求得的极小点,只是f(x)的近似极小点。在这种情况下,常按照下面选取搜索方向:

牛顿法收敛的速度很快,当f(x)的二阶导数及其黑森矩阵的逆矩阵便于计算时,这一方法非常有效。【但通常黑森矩阵很不好求】

3.高斯牛顿法

高斯牛顿法的基本思想是使用泰勒级数展开式去近似地代替非线性回归模型,然后通过多次迭代,多次修正回归系数,使回归系数不断逼近非线性回归模型的最佳回归系数,最后使原模型的残差平方和达到最小。

牛顿法公式:

20161118220303794 (676Ã573)

高斯牛顿和牛顿法的差异:迭代项

经典高斯牛顿算法迭代步长λ为1.那么高斯牛顿法里为啥要舍弃黑森矩阵的二阶偏导数呢?主要问题是因为牛顿法中Hessian矩阵中的二阶信息项通常难以计算或者花费的工作量很大,而利用整个H的割线近似也不可取,因为在计算梯度时已经得到J(x),这样H中的一阶信息项JTJ几乎是现成的。鉴于此,为了简化计算,获得有效算法,我们可用一阶导数信息逼近二阶信息项。注意这么干的前提是,残差r接近于零或者接近线性函数从而接近与零时,二阶信息项才可以忽略。通常称为“小残量问题”,否则高斯牛顿法不收敛。

(关于最小二乘法相关内容属于整理,非原创)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值