MSE:mean_squared_error 误差平方和的平均 越小模型越好
MAE:mean_absolute_error 绝对误差和的平均
RMSE:MSE的开方
sklearn地址:
API Reference — scikit-learn 1.0.2 documentation
import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
from sklearn.metrics import mean_absolute_error
# y=theta1*x1+theta0*x0
# 随机生成100*1 的矩阵,随机数为0-1之间的数
np.random.seed(10)
X=2*np.random.rand(1000,1)
X=np.c_[np.ones((1000,1)),X]
y=5+4*X+np.random.randn(1000,1)
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.3,random_state=6)
linear_model=LinearRegression()
linear_model.fit(X_train,y_train)
pred=linear_model.predict(X_test)
print(mean_squared_error(y_test,pred))
print(mean_absolute_error(y_test,pred))
"""
1.1286467591701863
0.8498284831043275 说明:假设 y真实值为10 0.8498284831043275表明与真实值差了0.8498284831043275
"""