是否可以将网格搜索与外部定义的评分功能一起使用?

Posted

技术标签:

【中文标题】是否可以将网格搜索与外部定义的评分功能一起使用?【英文标题】:Is it possible to use Grid Search with an externally defined scoring function? 【发布时间】:2017-04-12 12:37:42 【问题描述】:

我定义了一个外部评分函数来确定手写数字的聚类准确性,但不知道如何将该函数与 GridSearchCV 结合使用。

s = GridSearchCV(estimator = pipe_cl, 
                 param_grid = param_distributions,
                 scoring = my_scorer,
                 n_jobs=-1)


gs.fit(X_train, y_train)


y_pred_km = gs.predict(X_test)

my_scorer = make_scorer(clustering_accuracy_score(y_test, y_pred_km))    

【问题讨论】:

什么是 y_pred_km? 应该是从kmeans得到的簇标签。 【参考方案1】:

make_scorer 返回一个新函数,它接受一个函数作为参数。所以这应该有效:

my_scorer = make_scorer(clustering_accuracy_score)
gs = GridSearchCV(estimator = pipe_cl, 
                 param_grid = param_distributions,
                 scoring = my_scorer,
                 n_jobs=-1)
gs.fit(X_train, y_train)

【讨论】:

非常感谢!

以上是关于是否可以将网格搜索与外部定义的评分功能一起使用?的主要内容,如果未能解决你的问题,请参考以下文章

在 sklearn 中制作网格搜索功能以忽略空模型

如何让 mysql 与标签搜索一起获得平均评分?

是否可以将全文搜索 (FTS) 与 LINQ 一起使用?

改变弹性搜索中的评分算法

如何将aria组合框角色与网格元素一起使用?

设计模式-访问者模式->歌手评分(源码与类图解析)