本教程使用Windows10系统,个别地方会使用Ubuntu虚拟机,请大家自行选择。
提示:遇到问题,先尝试自己百度查询报错信息,如果实在无法解决再评论。
首先建议你本地的python安装 Anaconda 最新的python3.6版本,这也是TensorFlow建议的,Anaconda给我们集成了很多TensorFlow需要依赖的包,并且在Windows非常难安装成功的包,可以省去很多时间。
不用读系列 [TensorFlow Windows 安装文档]( https://www.tensorflow.org/install/install_windows)
下载Google的protobuf,需要下载3.4的版本,如果是3.5的版本,在windows会报错:
object_detection/protos/*.proto: No such file or directory
报错原因如下:
https://github.com/tensorflow/models/issues/2930
protobuf 3.4.0 下载地址:https://github.com/google/protobuf/releases/tag/v3.4.0
protobuf 教程:https://www.ibm.com/developerworks/cn/linux/l-cn-gpb/
解压下载好的 models-master , 把models-master重命名为models,改不改都一样,强迫症系列,受不了那个 -master
进入目录:D:\code\python\TensorFlow\models\research 执行命令:
protoc object_detection/protos/*.proto --python_out=.
预料之中的报错,protoc不能被识别的命令。
因为Windows需要加上 protobuf 的路径:
D:/code/python/TensorFlow/protoc-3.4.0-win32/bin/protoc object_detection/protos/*.proto --python_out=.
如果没有输出任何提示信息,说明成功。
然后在命令行目录 D:\code\python\TensorFlow\models\research下 输入 jupyter notebook
打开 jupyter
编辑器。
然后在 jupyter 编辑器中进入 object_detection 文件夹,然后打开 object_detection_tutorial.ipynb
此时地址栏的地址应该是:
http://localhost:8888/notebooks/object_detection/object_detection_tutorial.ipynb
然后在 jupyter 编辑器选择 :
Cell -> Run All
如果运行报错,说明环境没有搭建,如果你没有安装Anaconda,可以看文档搭建环境:
https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md
如果你安装了Anaconda请往下看,上面的文档不用读系列。
TensorFlow 有 CPU 和 GPU 两个版本,根据自己电脑的情况决定安装 CPU 或者是 GPU 的版本:
CPU 版本
pip install tensorflow
GPU 版本
pip install tensorflow-gpu
在这个挖矿都用GPU加速的年代,我们果断选择GPU版本,我的电脑是GTX970显卡,所以在性能上,应该比CPU要高效的多。
可以在后面加参数使用豆瓣源加速安装,命令执行最好在超级管理员权限下运行,避免一些不必要的麻烦。
pip install tensorflow-gpu -i https://pypi.douban.com/simple
如果运行报错:
ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit
说明你的缺少 CUDA,去下面的地址直接下载安装:
https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_win10-exe
系统提示需要9.0就安装9.0的版本,如果你看到的提示是其他版本,就选择其他版本安装。选择精简安装即可,不要修改安装目录,避免不必要的麻烦。
安装完成以后,打开命令提示符,输入 python ,进入python交互界面,输入下面的命令:
import tensorflow as tf
回车以后可能还会报错:
ImportError: Could not find 'cudnn64_7.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Note that installing cuDNN is a separate step from installing CUDA, and this DLL is often found in a different directory from the CUDA DLLs. You may install the necessary DLL by downloading cuDNN 7 from this URL: https://developer.nvidia.com/cudnn
说明还是缺少东西。
活该,早点老老实实用CPU版本的,嘛问题都没有,然而我们对技术的追求就要做到极致,继续搞环境。
继续下载 cuDNN7,如果之前安装的是 CUDA9,那就要下载与之对应的cuDNN版本,不然还是无法使用,我这里下载的是官方配套的7.0.5版本。
这个地址可能需要注册登录NVIDIA。
https://developer.nvidia.com/rdp/cudnn-download#a-collapse705-9
下面的地址是直接下载的7.0.5版本的,如果你的提示也是7版本,就用下面的地址下载。
下载完成解压以后,把对应的文件复制到 CUDA 的安装目录:
a) Copy <installpath>\cuda\bin\cudnn64_7.dll to C:\Program Files
\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin.
b) Copy <installpath>\cuda\ include\cudnn.h to C:\Program Files
\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include.
c) Copy <installpath>\cuda\lib\x64\cudnn.lib to C:\Program Files
\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64
然后重新打开命令提示符,进入python交互环境,输入 import tensorflow as tf
不报任何错误表示成功。
依次在python交互环境输入以下命令:
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
中途可能会打印一些日志信息,不要在意,只要不是报错信息就行,最终会在屏幕上输出:
Hello, TensorFlow!
表示安装 TensorFlow GPU 版本成功。
再次回到我们的jupyter界面,运行 object_detection_tutorial.ipynb
然后,聆听你显卡风扇的声音吧,最终TensorFlow会下载一个基础的学习模型,并运行显示出结果。运行过程中,如果出现下图的错误,不需要在意,不影响正常的运行:
最后运行结束应该能看到下面的两张图,说明你所有的环境都可以了~~ 终于可以开始正式进入深度学习的世界了。
热门评论
你好,我在安装TensorFlow-gpu2.0.0和cuda10.0后报错
请问为什么我运行完object detection后既不报错也没反应?
环境都配置好了,执行测试python object_detection/builders/model_builder_test.py通过
但是在jupyter-notebook中执行object_detection_tutorial.ipynb的时候,运行到最后报错
请问,这种情况怎处理?