idx_train, idx_valid = next(iter(kf))
print float(sum(y[idx_train]))/len(idx_train)
print float(sum(y[idx_valid]))/len(idx_valid)
结果为0.69713 0.69565,两者非常接近。
注意,不太推荐使用iter(kf),这里只是为了展示标签分布,具体我会在本文第五节『实战』中介绍如何高效地使用交叉验证。
如果是回归问题,则不存在分类问题中类别标签分布不均的情况,所以我们只需采用普通的K折交叉验证即可:
from sklearn.cross_validation import KFold