使用交叉验证确定的模型验证外部数据

时间:2016-07-17 10:37:17

标签: python cross-validation

我正在学习Python中的数据挖掘。我正在尝试交叉验证。

import numpy as np
from sklearn.cross_validation import KFold
X = np.array([0.1, 0.2, 0.3, 0.4])
Y = np.array([False,True,True,False])
kf=KFold(4,n_folds=2)
for train_index, test_index in kf:
   X_train, X_test = X[train_index], X[test_index]
   Y_train, Y_test = Y[train_index], Y[test_index]

现在我有一个新列表。 X=[0.25,0.33,0.21,0.101];Y=[True, False, False, True]如何根据使用上述代码确定的模型验证结果?

1 个答案:

答案 0 :(得分:1)

KFold功能与模型确定无关。

它只是将数据和标签拆分为折叠。

如果你加入循环:

    print(X_train, X_test)
    print(Y_train, Y_test)

您可以在每次迭代时看到折叠:

# Iteration 1
# Train           Test 
  [ 0.3  0.4]     [ 0.1  0.2]
  [ True False]   [False  True]
# Iteration 2
# Train           Test 
  [ 0.1  0.2]     [ 0.3  0.4]
  [False  True]   [ True False]