如何将梯度提升回归结果保存到文件?
How to Save Gradient Boosting Regressor Results to File?
我有一个 Gradient Boosting Regressor 模型,我想将其结果保存到 csv。
from sklearn import ensemble
clf = ensemble.GradientBoostingRegressor(n_estimators = 400, max_depth = 5, min_samples_split = 2,
learning_rate = 0.1, loss = 'squared_error')
clf.fit(x_train, y_train)
我想看看实际值和预测值。
拟合模型后,您实际上需要 predict
预测,使用 clf.predict
,假设我们要保存 y_pred_train
& y_pred_test
:
y_pred_train = clf.predict(y_train)
y_pred_test = clf.predict(y_test)
现在我们有了 train
和 test
集合的预测值和实际值,我们可以用 np.savetxt
保存一个 .csv
文件:
np.savetxt("train_preds.csv", np.column_stack((y_train, y_pred_train)), delimiter=",", fmt='%.5f')
和
np.savetxt("test_preds.csv", np.column_stack((y_test, y_pred_test)), delimiter=",", fmt='%.5f')
我们使用 np.column_stack
只是将它们堆叠为列而不是行,因为它们本质上是一维 numpy 数组。
请注意我格式化浮点精度只是为了可见性,如果你之后要计算损失最好不要格式化。
我有一个 Gradient Boosting Regressor 模型,我想将其结果保存到 csv。
from sklearn import ensemble
clf = ensemble.GradientBoostingRegressor(n_estimators = 400, max_depth = 5, min_samples_split = 2,
learning_rate = 0.1, loss = 'squared_error')
clf.fit(x_train, y_train)
我想看看实际值和预测值。
拟合模型后,您实际上需要 predict
预测,使用 clf.predict
,假设我们要保存 y_pred_train
& y_pred_test
:
y_pred_train = clf.predict(y_train)
y_pred_test = clf.predict(y_test)
现在我们有了 train
和 test
集合的预测值和实际值,我们可以用 np.savetxt
保存一个 .csv
文件:
np.savetxt("train_preds.csv", np.column_stack((y_train, y_pred_train)), delimiter=",", fmt='%.5f')
和
np.savetxt("test_preds.csv", np.column_stack((y_test, y_pred_test)), delimiter=",", fmt='%.5f')
我们使用 np.column_stack
只是将它们堆叠为列而不是行,因为它们本质上是一维 numpy 数组。
请注意我格式化浮点精度只是为了可见性,如果你之后要计算损失最好不要格式化。