簡體   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