多元线性回归模型和最小二乘法

为了加深映像,将笔记记录在此

P元线性模型为:

多元线性回归模型和最小二乘法_第1张图片

为了求参数我们的目标是让误差平方和最小

多元线性回归模型和最小二乘法_第2张图片

对各个参数求偏导

多元线性回归模型和最小二乘法_第3张图片

可得到正规方程组

多元线性回归模型和最小二乘法_第4张图片

写成矩阵形式为


从而得到参数的解


Python 代码实现:

[python] view plain copy
  1. import numpy as np  
  2.   
  3. def loadDataSet(fileName):  
  4.     dataMat=[]  
  5.     labelMat=[]  
  6.     fr=open(fileName)  
  7.     for line in fr.readlines():  
  8.         curLine=line.strip().split('\t')  
  9.         dataMat.append(list(map(float,curLine[:-1])))  
  10.         labelMat.append(float(curLine[-1]))  
  11.     return dataMat,labelMat  
  12.   
  13. def standRegress(xArr,yArr):  
  14.     xMat=np.mat(xArr)  
  15.     yMat=np.mat(yArr).T  
  16.     xTx=xMat.T*xMat  
  17.     if np.linalg.det(xTx)==0.0:  
  18.           
  19.         return  
  20.     ws=xTx.I*(xMat.T*yMat)  
  21.     return ws  
  22.   
  23. xArr,yArr=loadDataSet("ex0.txt")  
  24. ws=standRegress(xArr,yArr)  
  25.   
  26.   
  27.                   
数据集的样是为:

多元线性回归模型和最小二乘法_第5张图片

通常还可以用梯度下降算法来求参数的值。

上面的数据来源于《 机器学习实战》



原文地址:http://blog.csdn.net/sinat_16233463/article/details/37363183

你可能感兴趣的:(多元线性回归模型和最小二乘法)