簡體   English   中英

不平衡學習:導入錯誤:無法導入名稱“MultiOutputMixin”

[英]Imbalanced-learn: Import Error: cannot import name 'MultiOutputMixin'

我已經重新安裝了最新的 scikit-learn 和不平衡學習。 我還檢查了所有其他庫以確保它們與不平衡學習兼容。

我只想運行一個簡單的RandomOverSample() ,但我收到以下導入錯誤消息:

import imblearn
from imblearn.over_sampling import RandomOverSampler

ros = RandomOverSampler()
X_ros, y_ros = ros.fit_sample(x, y)

錯誤信息:

    ---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-122-0bf7409a8688> in <module>
----> 1 import imblearn
      2 from imblearn.over_sampling import RandomOverSampler
      3 
      4 ros = RandomOverSampler()
      5 X_ros, y_ros = ros.fit_sample(x, y)

~/.local/lib/python3.5/site-packages/imblearn/__init__.py in <module>
     32     Module which allowing to create pipeline with scikit-learn estimators.
     33 """
---> 34 from . import combine
     35 from . import ensemble
     36 from . import exceptions

~/.local/lib/python3.5/site-packages/imblearn/combine/__init__.py in <module>
      3 """
      4 
----> 5 from ._smote_enn import SMOTEENN
      6 from ._smote_tomek import SMOTETomek
      7 

~/.local/lib/python3.5/site-packages/imblearn/combine/_smote_enn.py in <module>
      8 from sklearn.utils import check_X_y
      9 
---> 10 from ..base import BaseSampler
     11 from ..over_sampling import SMOTE
     12 from ..over_sampling.base import BaseOverSampler

~/.local/lib/python3.5/site-packages/imblearn/base.py in <module>
     14 from sklearn.utils.multiclass import check_classification_targets
     15 
---> 16 from .utils import check_sampling_strategy, check_target_type
     17 from .utils._validation import ArraysTransformer
     18 

~/.local/lib/python3.5/site-packages/imblearn/utils/__init__.py in <module>
      5 from ._docstring import Substitution
      6 
----> 7 from ._validation import check_neighbors_object
      8 from ._validation import check_target_type
      9 from ._validation import check_sampling_strategy

~/.local/lib/python3.5/site-packages/imblearn/utils/_validation.py in <module>
     11 
     12 from sklearn.base import clone
---> 13 from sklearn.neighbors._base import KNeighborsMixin
     14 from sklearn.neighbors import NearestNeighbors
     15 from sklearn.utils import column_or_1d

~/.local/lib/python3.5/site-packages/sklearn/neighbors/_base.py in <module>
     21 from ._ball_tree import BallTree
     22 from ._kd_tree import KDTree
---> 23 from ..base import BaseEstimator, MultiOutputMixin
     24 from ..metrics import pairwise_distances_chunked
     25 from ..metrics.pairwise import PAIRWISE_DISTANCE_FUNCTIONS

ImportError: cannot import name 'MultiOutputMixin'

嘗試打開一個新的 python 控制台或重新啟動 jupyter notebook。 這對我有用。 看起來 imblearn 庫需要重新啟動才能工作。 這里也討論了這個問題。 導入錯誤:無法從“sklearn.base”導入名稱“MultiOutputMixin”

經過一番挖掘,我必須重新安裝到最新的 scikit 學習包。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM