有时候遇到的开源代码标注了特定的keras版本,大部分情况下标注的是比较老的版本
一般的解决方法:
pip uninstall keras
pip install keras==x.x.x
就是卸载当前最新的keras,用pip指令安装那个标注的版本的keras库
但是如果这个时候我们不想频繁卸载又安装keras又可以怎么办呢?
我找到个好办法!
可以从github官网上下载所需版本的keras安装包
然后看代码上import keras库中的哪些函数报错
例如我遇到的:
1.module 'keras.legacy' cannot find
这个错误是由于keras2.4以后的版本删除了legacy文件夹里的文件,报错的那行代码显示如下:
from keras.legacy import interfaces
之后我从下载的2.3.1版本的keras中找到了legacy这个文件夹,把它放到我现在的keras中(也可以只放需要import的那个函数py文件,但要注意路径一致。也就是要么创建一个名为legacy的文件夹再放入所需的py文件,要么就是在import的时候,修改导入路径)
2.cannot find '_Conv' in 'keras.layers.convolutional'
from keras.layers.convolutional import _Conv
我查看了对应的convolutional.py文件,发现其实这个函数还在,只是换了一个名字,变成了Conv
解决办法:
from keras.layers.convolutional import Conv
3.continue...