# 时间序列分割
from sklearn.model_selection import TimeSeriesSplit
tscv = TimeSeriesSplit(max_train_size=None, n_splits=17)
def cv_mae_(model, train_X, train_y):
“”
model: 模型对象
train_X: 训练集
train_y: 测试集
“”
val_loss = -cross_val_score(model, train_X, train_y, scoring="neg_mean_absolute_error", cv=tscv)
print('val loss is: {0}'.format(val_loss))
import matplotlib.pyplot as plt
plt.plot(val_loss, marker = 'o')
plt.show()
cv_mae = np.mean(-cross_val_score(model, train_X, train_y, scoring="neg_mean_absolute_error", cv = tscv))
return cv_mae
时序数据做交叉验证,选择模型,选择参数,用以查看模型是否收敛
最新推荐文章于 2024-04-13 14:01:45 发布