机器学习之线性回归的最小二乘法求解
假设现在一个普通的一阶线性方程,y=2*x+2*t。t是随机噪音,生成的散列点(x,y)会沿直线y=2*x上下摆动。利用最小二乘法做一次简单的一阶“曲线”拟合。用matlab做数据实验:
t=randn(1,101); x=[-10:0.2:10]; y=2*x+t*2; s=scatter(x,y); s.LineWidth = 0.6; s.MarkerEdgeColor = 'g'; s.MarkerFaceColor = [0 0.7 0.7]; hold on; p=polyfit(x,y,1) y1=polyval(p,x); plot(x,y1,'-r','LineWidth',1); grid on;
生成的图:
算出的一阶系数和常量值:
p = 1.9815 -0.2719
最终求解的拟合方程为:
求解的方程拟合结果比较理想。拟合了y=2*x。