调用sklearn的RandomForestClassifier和ExtraTreeClassifier出现的参数错误

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiongchengluo1129/article/details/80497549

  今天准备在集群上运行我的新代码的时候,突然冒出来这个错误,有点懵,查阅资料找到了原因。

 报错如下:

ValueError: Invalid parameter min_impurity_decrease for estimator DecisionTreeClassifier. Check the list of available parameters with estimator.get_params().keys().

  一开始把将断点设置在出错的文件(sklearn.base.py),然后依次调试,发现estmator.params一切都正常,仔细观察报错的地方—> Invalid parameter min_impurity_decrease for estimator DecisionTreeClassifier.
  这说明min_impurity_decrease参数在DecisionTreeClassifier中是没有的,或者是无效的。
  接下来查看服务器上sklearn的版本是 0.18.1,而我在本地调试通过sklearn的版本信息0.19.1
  查看sklearn 0.19.1RandomForestClassifier的官方文档详细信息。如下:
参数信息
  仔细看min_impurity_decrease 参数
iii
  所以在sklearn 0.18.1中是没有min_impurity_decrease 这个参数的。如果要用这个参数的话就要将sklearn的版本升级到 0.19.1。就可以了
  但是服务器是不能联网的,所以呀,又要离线安装,离线安装就要考虑要不要手动卸载以前的sklearn 0.18.1,事实是,不需要卸载以前的sklearn版本,直接下载sklrean 0.19.1的安装包,然后pip install 包名就好了。pip会自动卸载以前的sklearn版本,然后安装新版本。
  示意图如下:
iiss
  然后程序就正常运行啦,have a nice day!

猜你喜欢

转载自blog.csdn.net/xiongchengluo1129/article/details/80497549