我在数据集上运行岭回归。我做了5次交叉验证。所以我的数据集基本上分为5列和5个测试折叠。在
这就是我在scikit中所做的:
from sklearn import cross_validation
k_fold=cross_validation.KFold(n=len(tourism_train_X),n_folds=5)
我设置正则化参数如下:
^{pr2}$现在,我的疑问是,对于每一列火车和测试折叠 我会做这样的事。在
ridge_tourism = linear_model.Ridge()
for a in alphas:
ridge_tourism.set_params(alpha=a)
index=0
for train_indices, test_indices in k_fold:
ridge_tourism.fit(tourism_train_X[train_indices], tourism_train_Y[train_indices]) # Fitting the model
coefs.append(ridge_tourism.coef_)
问题是它会给我每个alpha中五个训练倍数的系数向量。我想要的是每个α的最佳系数向量是什么。我们怎么弄到的?我们如何从5个列车组中选出最终报告α系数的向量?在
对于每个α值,取5倍验证的验证误差的平均值。然后你就可以得到平均验证误差v.s.alpha的曲线。选择alpha值,它给出最小的平均验证误差。在
相关问题 更多 >
编程相关推荐