无法使用GPU运行TensorFlow/Keras 问题求助
解决Keras GPU运行时的两个问题
咱们先拆解你遇到的两个问题,逐个搞定:
1. 处理skimage的警告信息
C:\Python36\lib\site-packages\skimage\transform_warps.py:84: UserWarning: The default mode, 'constant', will be changed to 'reflect' in skimage 0.15. warn("The default mode, 'constant', will be changed to 'reflect' in "
这个只是警告,不会中断程序,但看着确实闹心。有两种解决思路:
- 显式指定mode参数:在调用skimage的
transform.warp或相关变换函数时,手动加上mode='constant'(保持当前默认行为)或者mode='reflect'(提前适配未来版本),示例代码:from skimage.transform import warp warp(image, transform_matrix, mode='constant') - 降级skimage版本:如果不想改代码,可以把skimage降到0.14.x版本,这个版本还以
constant为默认mode,不会弹出警告。执行命令:pip install scikit-image==0.14.5
2. 解决CuDNN版本不兼容的核心错误
E C:\tf_jenkins\workspace\rel-win\M\windows-gpu\PY\36\tensorflow\stream_executor\cuda\cuda_dnn.cc:378] Loaded runtime CuDNN library: 7102 (compatibility version 7100) but source was compiled with 7003 (compatibility ve...
这是导致GPU无法正常工作的关键问题——你系统里装的CuDNN是7.1.2版本,但当前TensorFlow是基于CuDNN7.0.3编译的,版本不匹配。推荐两种解决方法:
- 降级CuDNN到7.0.3:去NVIDIA官网下载和你CUDA版本匹配的CuDNN7.0.3,替换掉当前的CuDNN文件(注意CUDA和CuDNN的对应关系,比如CUDA9.0对应CuDNN7.x系列)。
- 升级TensorFlow到兼容CuDNN7.1.2的版本:TensorFlow 1.8及以后的版本开始支持CuDNN7.1.x,你可以升级到合适的版本,比如:
升级前记得确认你的CUDA版本和TensorFlow版本匹配(比如TensorFlow1.8需要CUDA9.0)。pip install tensorflow-gpu==1.8.0
内容的提问来源于stack exchange,提问作者user2505650
相关产品推荐
相关产品推荐

