做sklearn.linear_模型.LinearRegression是否可以保存?

2024-07-03 07:34:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用pickle保存一个sklearn.linear_model.LinearRegression的模型,然后用相反的方式加载它:

i = 1
Xtr_num, Xte_num, Xtr_cat, Xte_cat, Ytr, Yte, Xvl_num, Xvl_cat, Yvl = data.get_splitted_data(i)
lm = linear_model.LinearRegression()
pickle.dump(lm, open('pre_model/y'+str(i)+'-skl.pickle.sav', 'wb'))
X = np.concatenate((Xtr_num, Xtr_cat), axis=1)
model = lm.fit(X,Ytr)


loaded_model = pickle.load(open('pre_model/y'+str(1)+'-skl.pickle.sav', 'rb'))
print loaded_model.predict(X)

它给出了下面的错误。你能给我个建议吗。在

^{pr2}$

Tags: datamodelopenprenumpicklecatlm
1条回答
网友
1楼 · 发布于 2024-07-03 07:34:53

当您试图加载模型时,错误不会出现,而是在您调用predict时出现。你需要先用一些训练数据来拟合你的模型。之后,您可以预测:

loaded_model.fit(training_data, target_values)
loaded_model.predict(X) 

更新

为了澄清,我将重写您的代码。看看现在是否有效:

^{pr2}$

相关问题 更多 >