4

我正在根据这篇文章尝试 CatBoost

在它的代码中,CatBoost 有plotin model.fit(),所以我想在我的 IPython 上尝试一下。

这是我的 CatBoost 代码:

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)

但是,它不能显示任何情节并不断给我错误:

在此处输入图像描述

我确实安装了 ipywidgets 和 ipython。你知道如何处理这个问题吗?

4

1 回答 1

2

最后,我解决了问题,现在我可以看到这个情节

在此处输入图像描述

就我而言,解决方案是安装Conda并创建一个 conda 虚拟环境,然后ipywidgets通过 Conda 安装。让我在这里写下所有细节,希望它会有所帮助。这可能只会帮助 Mac 用户

  1. 在此处下载 Conda:https ://www.continuum.io/downloads
  2. 将 conda 添加到$PATH如何运行 Conda?
  3. 创建 Conda 虚拟环境conda create -n yourenvname python=x.x anaconda
  4. 激活 conda 虚拟环境source activate yourenvname
  5. 在此虚拟环境中安装 IPython Notebook(如果您已经有用户 pythonvirtualenv并为此安装了 IPython,则可以跳过此步骤):
    • (yourenvname)$ pip install jupyter
    • (yourenvname)$ pip install ipykernel
    • (yourenvname)$ python -m ipykernel install --user --name testenv --display-name "Python2 (yourenvname)",如果你有多个ipykernel,这里testenv也应该改成别的名字
  6. 安装 ipywidgets,(yourenvname)$ conda install ipywidgets --no-deps
  7. 安装 catboost,(yourenvname)$ pip install catboost
  8. 打开 Jupyter Notebook,jupyter notebook并在 下新建一个笔记本Python2 (yourenvname),然后它应该可以工作了

注意:如果不起作用,请在第 8 步之前尝试以下操作:

  • pip install widgetsnbextension
  • jupyter nbextension enable --py widgetsnbextension --sys-prefix
于 2017-08-17T06:22:48.343 回答