线性回归模型
线性回归模型的基础公式
是预测值
n是特征数量
xi是第i个特征值
是第j个模型参数
这可以用更简洁的向量公式表示,博主有点懒不想打了
我们在训练线性回归模型的时候,需要找到最小化均方误差(MSE)的参数
找到使成本函数最小的模型参数值就可以啦
有一个标准公式可以求出最小模型参数值,博主不想打了建议百度哈哈哈
以下就是简单实现线性回归的代码
import matplotlib.pyplot as plt
import numpy as np
X = 2*np.random.rand(100,1)#生成100行一列的随机数样本值
y = 4+3*X+np.random.rand(100,1)#生成结果值
X_b = np.c_[np.ones((100,1)),X]
theta_best = np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)#利用标准方程的公式
X_new = np.array([[0],[2]])
X_new_b = np.c_[np.ones((2,1)),X_new]
y_predict = X_new_b.dot(theta_best)
plt.plot(X_new,y_predict,"r-")
plt.plot(X,y,"b.")
plt.axis([0,2,0,15])
plt.show()
#Sklearn-Learn 的等效代码
from sklearn.linear_model import LinearRegression
lin_reg = LinearRegression()
lin_reg.fit(X,y)
print(lin_reg.predict(X_new))