是否可以执行GridSearchCV(以获得最佳的SVM C),但仍可以通过scikit-learn指定sample_weight
这是我的代码和遇到的错误:

gs = GridSearchCV(
    svm.SVC(C=1),
    [{
        'kernel': ['linear'],
        'C': [.1, 1, 10],
        'probability': [True],
        'sample_weight': sw_train,
    }]
)

gs.fit(Xtrain, ytrain)


编辑:我通过获取最新的scikit-learn版本并使用以下命令解决了该问题:
gs.fit(Xtrain, ytrain, fit_params={'sample_weight': sw_train})

最佳答案

只是试图解决这个长期悬而未决的问题...

您需要获取SKL的最新版本并使用以下命令:

gs.fit(Xtrain, ytrain, fit_params={'sample_weight': sw_train})

但是,将fit_params传递给构造函数更符合文档要求:
gs = GridSearchCV(svm.SVC(C=1), [{'kernel': ['linear'], 'C': [.1, 1, 10], 'probability': [True], 'sample_weight': sw_train}], fit_params={'sample_weight': sw_train})

gs.fit(Xtrain, ytrain)

关于python - 在GridSearchCV中使用sample_weight,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13051706/

10-12 23:54