2017-08-16 6 views
3

importieren Ich versuche CatBoost basierend auf this articleIPython Import: nicht Name Layout-

Darin Code ist, CatBoost plot in model.fit() hat, so will ich es auf meinem IPython versuchen.

Hier ist mein CatBoost Code:

from catboost import CatBoostRegressor 

# indicate categorical features for CatBoost 
categorical_features_indices = np.where(X.dtypes != np.float)[0] 

model=CatBoostRegressor(iterations=50, depth=3, learning_rate=0.1, 
loss_function='RMSE') 
model.fit(X_train, y_train, 
cat_features=categorical_features_indices, 
      use_best_model=True, 
      eval_set=(X_validation, y_validation), plot=True) 

Aber kann es keine Handlung zeigen und hielt mir eine Fehlermeldung geben:

enter image description here

I ipywidgets und ipython tat installieren. Wissen Sie, wie Sie mit diesem Problem umgehen?

+0

Laufen Sie Ipython als Notebook oder Shell? Führen Sie es in einer virtuellen Umgebung aus? –

+0

Ich laufe es als Notebook.Ich habe sowohl die virtuelle Umgebung als auch die nicht virtuelle Umgebung ausprobiert, beide haben diesen Fehler bekommen –

Antwort

1

Schließlich habe ich das Problem gelöst, und jetzt kann ich dieses Grundstück

enter image description here

In meinem Fall sehen, ist die Lösung Conda und erstellen Sie eine Conda virtuelle Umgebung zu installieren, dann ipywidgets durch Conda installieren. Lassen Sie mich alle Details hier aufschreiben, hoffe, es wird Ihnen helfen. Dies kann nur helfen, Mac-Benutzer

  1. herunterladen Conda hier: https://www.continuum.io/downloads
  2. Add Conda in $PATH: How to run Conda?
  3. Conda erstellen virtuelle Umgebung conda create -n yourenvname python=x.x anaconda
  4. aktivieren Conda virtuelle Umgebung source activate yourenvname
  5. IPython Notebook installieren in dieser virtuellen Umgebung (wenn Sie bereits Benutzer Python virtualenv und installiert IPython für dass, können Sie diesen Schritt) überspringen:
    • (yourenvname)$ pip install jupyter
    • (yourenvname)$ pip install ipykernel
    • (yourenvname)$ python -m ipykernel install --user --name testenv --display-name "Python2 (yourenvname)", wenn Sie mehrere ipykernel haben, hier testenv auch auf einen anderen Namen geändert werden sollte
  6. ipywidgets installieren, (yourenvname)$ conda install ipywidgets --no-deps
  7. Installieren Sie catboost, (yourenvname)$ pip install catboost
  8. Schalten Sie Jupyter Noteboo ein k, jupyter notebook und ein neues Notebook unter Python2 (yourenvname) schaffen, dann sollte es funktionieren

HINWEIS: Wenn arbeiten, bevor der Schritt nicht 8, versuchen Sie dies:

  • pip install widgetsnbextension
  • jupyter nbextension enable --py widgetsnbextension --sys-prefix