首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Python中sklearn的"OneVsRestClassifier“将自定义的二进制分类调优为多类分类。

使用Python中sklearn的"OneVsRestClassifier“将自定义的二进制分类调优为多类分类。
EN

Data Science用户
提问于 2016-04-27 14:52:40
回答 1查看 1.3K关注 0票数 1

我有二进制分类方法名为F分类器,我需要将它应用于多类分类问题,该分类器没有任何decision_function (或predict_proba),其核心只接受{1,-1}作为类标签!我尝试使用sklearn中的OneVsRestClassifier多分类器,以便将F分类器调到多类分类器中:

代码语言:javascript
运行
复制
fm = FClassification(n_iter=1000, init_stdev=0.1, rank=2, random_state=123,l2_reg_w=0, l2_reg_V=0, l2_reg=0, step_size=0.1)
OneVsRestClassifier(fm).fit(X_train,y_train)

但我面临以下错误:

RuntimeError:无法克隆对象FClassification(init_stdev=0.1、l2_reg=None、l2_reg_V=0、l2_reg_w=0、n_iter=1000、random_state=123、rank=2、step_size=0.1),因为构造函数似乎没有设置参数l2_reg_V

您认为如果是F分类器的问题不能满足OneVsRestClassifier的期望,如果我应该定义一个自定义的predict_proba适合我的数据分类器,以解决这个问题?或者,如果错误可能有其他原因和解决方案?

EN

回答 1

Data Science用户

发布于 2017-03-03 19:22:43

您需要实现get_params方法来导出所有的超参数,或者从sklearn.base.BaseEstimator继承分类器,因为在OneVsRestClassifier的遮罩下,每个分类器都是分布式的。所以你的分类器被克隆了。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/11454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档