[英]IPython ImportError: cannot import name Layout
我正在尝试基于这篇文章的 CatBoost
在它的代码中,CatBoost在model.fit()
有plot
,所以我想在我的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。 你知道如何处理这个问题吗?
最后,我解决了这个问题,现在我可以看到这个情节
在我的例子中,解决方案是安装Conda
并创建一个conda虚拟环境,然后通过Conda安装ipywidgets
。 让我在这里写下所有细节,希望它会有所帮助。 这可能只对Mac用户有所帮助
$PATH
: 如何运行Conda? conda create -n yourenvname python=xx anaconda
source activate yourenvname
virtualenv
并为此安装了IPython,则可以跳过此步骤):
(yourenvname)$ pip install jupyter
(yourenvname)$ pip install ipykernel
(yourenvname)$ python -m ipykernel install --user --name testenv --display-name "Python2 (yourenvname)"
,如果你有多个ipykernel,这里的testenv
也应该换成另一个名字 (yourenvname)$ conda install ipywidgets --no-deps
(yourenvname)$ pip install catboost
jupyter notebook
并在Python2 (yourenvname)
下创建一个新的笔记本,然后它应该工作 注意: 如果在步骤8之前不起作用 ,请尝试以下操作:
pip install widgetsnbextension
jupyter nbextension enable --py widgetsnbextension --sys-prefix
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.