投票分类器中的超参数

所以,我有一个看起来像这样的分类器

clf = VotingClassifier(estimators=[         ('nn', MLPClassifier()),         ('gboost', GradientBoostingClassifier()),        ('lr', LogisticRegression()),        ], voting='soft')

我想调整每个估计器的超参数。

有没有办法调整这些分类器的“组合”?谢谢


回答:

你可以使用GridSearchCV来做到这一点,但需要稍作修改。在参数字典中,不要直接指定属性,你需要使用VotingClassifier对象中分类器的键,后跟__,然后是属性本身。

看看这个例子

from sklearn.linear_model import LogisticRegressionfrom sklearn.svm import SVCfrom sklearn.ensemble import VotingClassifierfrom sklearn.model_selection import GridSearchCVX = np.array([[-1.0, -1.0], [-1.2, -1.4], [-3.4, -2.2], [1.1, 1.2],[-1.0, -1.0], [-1.2, -1.4], [-3.4, -2.2], [1.1, 1.2]])y = np.array([1, 1, 2, 2,1, 1, 2, 2])eclf = VotingClassifier(estimators=[     ('svm', SVC(probability=True)),    ('lr', LogisticRegression()),    ], voting='soft')#使用分类器的键,后跟__和属性params = {'lr__C': [1.0, 100.0],      'svm__C': [2,3,4],}grid = GridSearchCV(estimator=eclf, param_grid=params, cv=2)grid.fit(X,y)print (grid.best_params_)#{'lr__C': 1.0, 'svm__C': 2}

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注