繁体   English   中英

Scikit学习-您可以在没有交叉验证的情况下运行RandomizedSearchCV吗?

[英]Scikit-learn - Can you run RandomizedSearchCV without cross validation?

我想知道是否可以在不进行交叉验证的情况下运行RandomizedSearchCV(仅使用简单的训练/测试拆分?

我希望这样做能够使哪些参数对我将使用标准交叉验证的更细粒度的调整有用。

这是代码:

pipe = Pipeline(steps=[('gbm', GradientBoostingClassifier())])


param_dist = dict(gbm__max_depth=[3,6,10],
                  gbm__n_estimators=[50,100,500,1000],
                  gbm__min_samples_split=[2,5,8,11],
                  gbm__learning_rate=[0.01,0.05,0.1,0.5,1.0],
                  gbm__max_features=['sqrt', 'log2']
                  )

grid_search = RandomizedSearchCV(pipe, param_distributions=param_dist,cv=???)

grid_search.fit(X_train, y_train)

提前致谢,

您可以使用cv=ShuffleSplit(n_iter=1)来获得单个随机拆分,如果要进行特定的拆分,则可以使用cv=PredefinedSplit(...) (我认为仅在beta 0.16b1中) 。 有关选项,请参阅文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM