用最小二乘法来拟合数据

2019-03-23  本文已影响0人  冠军的试练

标签(空格分隔): 机器学习

最小二乘法是一种常用的数学优化技术。它通过最小化误差的平方和来求取目标函数的最优值,以解决线性回归问题。这是百度百科给出的解释,那么这个拟合的数据从字面上理解,其实就是预测结果。我们可以将它应用到各行各业,比如销售数据、工厂生产量、比赛结果、地面区域面积估算等预测,总能找到数据之间映射关系。

以下是来自某个项目实验的真实数据

现在使用最小二乘法来求出线性回归的参数,具体做法如下:

首先计算平均值

ax = sum(x) / 4;

ay = sum(y) / 4;

向量x = [1.1,1.9,3.1,3.9] , 向量y = [0.1,0.2,0.3,0.4]

向量点乘运算

xy = (x .* y) / 4 

其中 .* 是点乘操作,向量x与向量y的点乘

xx = (x .* x) / 4     

向量的点乘,也叫向量的内积、数量积,对两个向量执行点乘运算,就是对这两个向量对应位一一相乘之后求和的操作,点乘的结果是一个标量。

计算k斜率

k = (xy-ax*ay)/(xx-ax^2)

计算b截距

b = ay - k*ax

以上实验数据通过最小二乘法的计算就可得到线性回归参数和目标函数

线性回归参数

目标函数

y=9.6x+0.1

真实数据与实验数据的比较

数据量比较小的情况下,拟合出来的目标函数还不够准确,可以看到真实y与拟合y之间的数据是存在微小的误差。如果历史数据足够多,那么拟合出来的目标函数是比较稳定的。
最小二乘法适合求解单变量线性回归问题,如果存在多个变量(特征)时,就不能使用最小二乘法来解决回归参数的问题,需要借助梯度下降和正规方程等方法。
由于时间紧迫,本文的算法和实验并不完美,还有很多值得改进的地方。

上一篇下一篇

猜你喜欢

热点阅读