Sklearn和cross_val_scores:我们可以将它用于留一交叉验证吗?

时间:2017-10-01 16:55:09

标签: python numpy scikit-learn

我正在编写一个循环,我必须在1000个条目上执行k-fold交叉验证。 k的值在循环中的每次迭代中都会发生变化,它的值可以为1000.但是,当尝试执行“放开 - 交叉验证”(即k = #entries = 1000)时,我收到以下错误:

ValueError:各个类的所有n_groups都小于n_splits = 1000。

test = [...,...,1000] 对于测试中的n:

knn = KNeighborsClassifier(n_neighbors=1)
scores = cross_val_score(knn, X_train, y_train, cv=n, scoring='accuracy')

请记住,X_train和y_train有1000行并且是numpy数组。 我知道LOO有特定的方法,但我想知道是否有办法使用相同的功能,以避免在循环中插入一个if。

0 个答案:

没有答案