当前位置:  开发笔记 > 编程语言 > 正文

Python Keras cross_val_score错误

如何解决《PythonKerascross_val_score错误》经验,为你挑选了1个好方法。



1> jasonb..:

报告的具体错误是:

TypeError: get_params() got an unexpected keyword argument 'deep'

该错误是由Keras版本1.2.1中的错误引入的.当您使用Keras包装类(例如KerasClassifier和KerasRegressor)和scikit-learn函数cross_val_score()时会发生这种情况.

该错误已在Keras GitHub项目中识别和修补.

我尝试了两个修复:

修复1:回滚到Keras版本1.2.0.

类型:

sudo pip install keras==1.2.0

修复2:使用修复程序的Monkey-patch Keras.

导入后,但在您的工作类型之前:

from keras.wrappers.scikit_learn import BaseWrapper
import copy

def custom_get_params(self, **params):
    res = copy.deepcopy(self.sk_params)
    res.update({'build_fn': self.build_fn})
    return res

BaseWrapper.get_params = custom_get_params

这两个修复程序都适用于我(Python 2和3/sklearn 0.18.1).

一些额外的候选修复:

等待下一版本的Keras(1.2.2)发布.

从Github Checkout Keras然后手动构建和安装.

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有