使用GridSearchCV在CV期间内部缩放训练数据进行超参数优化



我正在尝试使用GridSearchCV进行SVM HyperParamater优化。假设我正在使用训练集数据和标签来喂养此功能(在函数调用之前已经隔离了测试拆分)。

def param_search(X, y):
    Cs = 10. ** np.arange(-3, 4)
    gammas = 10. ** np.arange(-3, 3)
    rbf_grid = {'clf__C':Cs, 'clf__gamma':gammas, 'clf__kernel':['rbf'],
        'clf__class_weight':['balanced']}
    lin_grid = {'clf__C':Cs, 'clf__kernel':['linear'], 
        'clf__class_weight':['balanced']}
    pipe = Pipeline([('scaler', StandardScaler()), ('clf', svm.SVC())])
    grid_search = GridSearchCV(pipe, param_grid=[rbf_grid, lin_grid],
        cv=StratifiedKFold(n_splits=5, shuffle=True), verbose=2, n_jobs=-1)
    grid_search.fit(X,y)
    return grid_search.best_params_

我希望GridSearchCV评估每个简历分配的数据,该数据由针对该特定拆分计算的训练缩放。目前,每组参数(我想要的是什么)当前称为5次标准标准函数吗?或第一次致电GridSearchCV。

简短答案:是的,对于每组参数,它确实适合Standard Scaler 5次。基本上,整个管道每次拆分和每个参数选择均拟合一次,然后进行评估。

最新更新