解决安装和导入tensorflow、keras出错的问题
目录
- 前提:已经安装完Anacanda
- cmd命令行窗口下
- 安装tensorflow
- 安装keras
- python环境下
- 总结
前提:已经安装完Anacanda
事先创建一个tensorflow的虚拟环境,用作tf(也可以用默认的base环境),我这里创建的名字是tensorflow,python的版本号是3.6(要和后续的t编程客栈f和keras的版本号对应才行)
conda create --name tensorflow python=3.6,
注意:
安装之前可以修改pip安装源,以提高下载速度。
此目录下新建pip文件夹,创建pip.ini文件,内容:
[global] index-url=https://mirrors.aliyun.com/pypi/simple [installed] trusted host=mirrors.aliyun.comjavascript
然后进入tensorflow环境下操作:
cmd命令行窗口下
安装tensorflow
pip install tensorflow # 安装 pip install tensorflow==1.3.0 # 安装指定版本号的tensorflow pip show tensorflow #查看tensorflow是否安装及版本号 pip uninstall tensorflow #卸载
安装keras
pip install keras # 安装 pip install keras==1.3.0 # 安装指定版本号的tensorflow pip show keras #查看tkeras是否安装及版本号 pip uninstall keras #卸载
下载完成后,导入:
python环境下
import tensorflow #导入tensorflow import keras #导入keras
最可气的地方就在这里,导入过程中不是导入tensorflow出错就是导入keras出错,最后查了一些资料应该是因为版本号匹配的问题,再加上自己的电脑php比较老古董(忧伤),新版本支持有问题,导致重复多次,真是崩溃。。。
tensorflow和keras版本对应关系在此不多赘述。
由于我电脑的原因,只能选择比较老的版本:
最终终于导入成功keras
下面分别是安装的版本号:
==============js===分割线=============
后来经测试,在使用keras加载序列模型的时候,会报错 “KeyError:0”,经查资料,发现是keras版本问题:见
https://stackoverflow.com/questions/52908944/keyerror-0-when-trying-to-load-a-sequential-model-in-keras
所以又将keras版本进行了更新,指定版本2.1.0,经测试正常,解决了 “KeyError:0”的问题。
pip install --uograde keras==2.1.0
可以使用下列语句测试版本号
import keras # 测试keras版本号 2.1.0 print(keras.__version__)
另外,使用过程中还出现了一个问题:
keras保存的h5、hdf5模型,加载时出现
AttributeError: ‘str‘ object has no attribute ‘decode‘
解决办法:
貌似是由于h5py模块的版本问题,改用2.10版本
pip install h5py==2.10javascript -i https://pypi.doubanio.com/simple
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论