1 资料搜索
最小二乘法(least sqaure method)(作者总结很详细)
2 本人总结
首先我们应该清楚为什么会出现最小二乘法呢,主要是我们在数学或者实际求解数学问题的时候,往往会遇到我们会拿到一堆数据。但是我们不知道该数据对应的函数,所以我们这时候需要根据已知数据来求其对应的函数。而在这种问题的需求的情况下,出现了最小二乘法。
2.1 最小二乘法理论知识
2.1.1 概念
最小二乘法是勒让德在19世纪的时候提出,对应的公式为
,其中
对应的是目标函数,
对应我们已知的真值,L对应误差值。进行数据拟合的过程中,就是要实现L误差值最小化。
2.1.2 公式推导
最小二乘法的求解方法,就是对公式进行导数求解,下面通过举例来说明求解的过程。
我们假设函数
将其转化为矩阵的方式
其中
为m X 1的向量,A为n X 1的列向量,X为m X n维向量根据2.1.1中的方程,我们可以得到损失函数
,其中Y为我们已知的函数值,这里多出的
主要为了后面求导数后系数为1。因此,
经过整理后可以得到,
2.1.3 局限性
并不是所有的情况下,都可以行都可以使用最小二乘法,其中包括数据量比较大、矩阵不可逆、目标函数不是线性函数的情况下。
(1) 数据量比较大情况下:这步
矩阵求逆的运算比较耗时,建议超过10000个特征的时候不要使用最小二乘法,而使用梯度下降的方法;
(2) 矩阵不可逆的情况下,一个方法是通过将不可逆矩阵根据数据整理,得到可逆矩阵;或者使用梯度下降方法;
(3) 目标函数不是线性函数,一个方法是通过通过降维转化为线性函数;或者使用梯度下降方法;
3.1 matlab实现最小二乘法
实现效果
但是当阶数为4阶时,进行数据拟合,得到下面的结果:
根据图形可以看出,在拟合的过程中,出现了过拟合现象。针对过拟合现象我们一般采用这则化的方式,来对数据拟合来施加约束,关于正则化的讲解,我们可以参考下面链接。
了解更多关于《计算机视觉与图形学》相关知识,请关注公众号:
下载我们视频中代码和相关讲义,请在公众号回复:计算机视觉课程资料