当我们训练好一个模型后,下次如果还想要使用这个模型。那么我们可以将这个模型保存下来,下次使用的时候直接导入就可以了,这样节省了时间,不用每次都重头训练数据,程序运行速度更快。
这里我们使用sklearn提供的模块joblib来保存模型。
from sklearn.linear_model import LinearRegression
from sklearn.externals import joblib
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
#获取数据
lb = load_boston()
#分割数据集到训练集和测试集
x_train,x_test,y_train,y_test = train_test_split(lb.data,lb.target,test_size=0.25)
#特征值和目标值是都必须进行标准化处理,实例化两个标准化API
std_x = StandardScaler()
x_train = std_x.fit_transform(x_train)
#用转化训练集的标准归一化测试集
x_test = std_x.transform(x_test)
#目标值
std_y = StandardScaler()
# -1表示系统自动计算行数,1表示列数
y_train = std_y.fit_transform(y_train.reshape(-1,1))
y_test = std_y.transform(y_test.reshape(-1,1))
#正规方程求解方式预测结果
lr = LinearRegression()
#训练模型
lr.fit(x_train,y_train)
#保存训练好的模型
joblib.dump(lr,'test.pkl')