Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何利用交叉验证得到最佳系数向量_Python_Numpy_Machine Learning_Scikit Learn - Fatal编程技术网

Python 如何利用交叉验证得到最佳系数向量

Python 如何利用交叉验证得到最佳系数向量,python,numpy,machine-learning,scikit-learn,Python,Numpy,Machine Learning,Scikit Learn,我正在数据集上运行岭回归。我已经做了5次交叉验证。所以基本上我的数据集分为5个序列和5个测试折叠 我在scikit中就是这样做的: from sklearn import cross_validation k_fold=cross_validation.KFold(n=len(tourism_train_X),n_folds=5) 我将正则化参数设置为: #Generating alpha values for regularization parameters n_alphas = 200

我正在数据集上运行岭回归。我已经做了5次交叉验证。所以基本上我的数据集分为5个序列和5个测试折叠

我在scikit中就是这样做的:

from sklearn import cross_validation
k_fold=cross_validation.KFold(n=len(tourism_train_X),n_folds=5) 
我将正则化参数设置为:

#Generating alpha values for regularization parameters
n_alphas = 200
alphas = np.logspace(-10, -1, n_alphas)
现在,我怀疑的是,对于每一列火车和测试折叠 我是这样做的

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中五个训练倍数的系数向量。我想要的是每个alpha的最佳系数向量。我们怎么得到这个?我们如何从5个序列集中选择最终报告该α的哪个系数向量?

对于每个α值,取5次验证的验证误差平均值。然后,您将能够得到平均验证误差v.s.α的曲线。选择alpha值,该值给出最低的平均验证误差。

您所说的“每个alpha的最佳系数向量”是什么意思?