def setBestParameters(self):
cv = StratifiedKFold(n_splits = self.conf.num_folds)
param_grid = self.conf.getParamGrid()
if param_grid is None:
# No parameter value to select
return
if self.conf.families_supervision:
scoring = 'f1_macro'
else:
scoring = 'roc_auc'
grid_search = GridSearchCV(self.pipeline, param_grid = param_grid,
scoring = scoring,
cv = cv,
n_jobs = -1,
fit_params = {'model__sample_weight': self.datasets.sample_weight})
grid_search.fit(self.datasets.train_instances.getFeatures(),
self.getSupervision(self.datasets.train_instances))
self.conf.setBestValues(grid_search)
self.pipeline.set_params(**self.conf.getBestValues())
return cv
评论列表
文章目录