【发布时间】:2020-09-16 09:18:58
【问题描述】:
我之前看到过post,代码如下:
scalar = StandardScaler()
clf = svm.LinearSVC()
pipeline = Pipeline([('transformer', scalar), ('estimator', clf)])
cv = KFold(n_splits=4)
scores = cross_val_score(pipeline, X, y, cv = cv)
我的理解是:当我们应用scaler时,我们应该使用4折中的3来计算均值和标准差,然后我们应用均值和标准偏差到所有 4 折。
在上面的代码中,我怎么知道 Sklearn 是遵循同样的策略呢?另一方面,如果 sklearn 没有遵循相同的策略,这意味着 sklearn 将计算所有 4 折的均值/标准差。这是否意味着我不应该使用上述代码?
我确实喜欢上面的代码,因为它可以节省大量时间。
【问题讨论】:
标签: python scikit-learn pipeline cross-validation