繁体   English   中英

sklearn.ensemble ImportError 中的 VotingClassifier

[英]VotingClassifier in sklearn.ensemble ImportError

我正在尝试在 python 中实现多个学习分类器。 我在代码中有 5 个随机森林分类器,但现在我无法从sklearn.ensemble导入VotingClassifier函数。

当我写这个:

from sklearn.ensemble import VotingClassifier

错误说:

ImportError: cannot import name VotingClassifier 

我怎样才能解决这个问题?

我是在 scikit-learn 中实现VotingClassifier的人。 抱歉造成混淆,我只是偶然发现了 scikit-learn 16.1 文档中的“示例”部分。 这有点误导, VotingClassifier器已经实现,但将在 scikit-learn 0.17 的下一个版本中实现。

如果你想“已经”使用它,你有两个选择:

1) 您可以通过 GitHub 安装当前可用的 scikit-learn 开发版本: https : //github.com/scikit-learn/scikit-learn (说明在自述文件中)

2) 或者,您可以将mlxtend它用作EnsembleClassifier ( http://rasbt.github.io/mlxtend/docs/classifier/scikit-learn_ensemble_classifier/ ),直到新的 scikit-version 出现。 mlxtend包是我的一个小“游乐场”,我上传了一些我觉得有时有用的示例和函数。

希望有帮助!

问:我该如何解决这个问题?

您的问题很明确且可以解决。 魔鬼藏在细节中。 VotingClassifier在 scikit-learn 更新日志中被宣布为0.17.0仍然是湿墨水版本的0.17.0

如果您正在为 python 运行Anaconda / conda package-manager,请检查:

$ conda search —all scikit-learn

$ conda depends scikit-learn来验证任何新添加的依赖项

$ conda create -n (test-0-17-0-sklearn) scikit-learn创建一个新的,独立的, conda -named / -controlled与肯定sklearn版本完全运行Python环境。 0.17.0 为您进一步的开发/测试

A:无论如何,将导入包装成try: { ... } except: { ... }

try:
    from sklearn.ensemble import VotingClassifier
except:
    try:
        import sklearn
        print "WARNING: [VotingClassifier] not available\n",
              "WARNING: [import sklearn] reports version: ",
              sklearn.__version__, "\n"+60*"|"
    except:
        print "WARNING: impossible to [import sklearn] at all\n",
              60*"|"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM