pycharm最近看了andrew的机器学习视频,对这个方面有了点兴趣,所以想用tensorflow做一些有趣的东西练练手,但是在搭建环境时遇到了蛮多的问题,写个帖子整理一下。
首先我个人用的时pycharm专业版和anaconda3作为基础的开发环境。python版本选择3.6,推荐使用这个版本,能跟大多数的第三方库相匹配,之前用了3.7版本就没法使用opencv和dlib做开发。直接用的清华源进行安装,但是安装好了之后发现在命令行中可以正确import,但是在py文件中没法正确编译,所有的函数和属性总是显示no attribute,在确定pycharm的python interpreter设置正确的情况下怀疑是tensorflow的py版本问题。直接pip uninstall,然后去pypi下载py36的轮子,推荐用迅雷下,比较快,chorme和qq浏览器下载和连接速度奇差。直接用本地pip安装好以后成功在py文件调用tensorflow.version.VERSION。
接下来测试简单的模型:model = tf.keras.Sequential([tf.keras.layers.Dense(units=1, input_shape=[1])]),编译时发现报错:Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found。该问题是由于没有安装cuda导致的,因为我用的是tensorflow 2.0+,所以要安装cuda 10.0以上的版本。在这里下载(https://developer.nvidia.com/cuda-10.1-download-archive-base?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal)安装好了以后就能找到'cudart64_101.dll这个文件了。
接下来是另一个报错:failed call to cuInit: CUDA_ERROR_UNKNOWN: unknown error,是因为还没有安装与cuda匹配的cudnn,在这里下载(https://developer.nvidia.com/rdp/cudnn-archive)一定要注意cuda和cudnn版本要匹配,推荐下稍微旧一点点的对应版本。下载解压后会有三个文件夹,bin目录 拷贝至C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin;include目录 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;lib\x64目录 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64。