热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

搭建Tensorflow的开发环境

进入本书的开门阶段,先从环境的搭建开始。虽然TensorFlow支持CPU运行,但是里面也会有一些内容实例涉及到只能在GPU上运行。所以很有必要在学习本书之前买一个带有GPU显卡的

进入本书的开门阶段,先从环境的搭建开始。虽然 TensorFlow 支持 CPU 运行,但是里面也会有一些内容实例涉及到只能在 GPU 上运行。所以很有必要在学习本书之前买一个带有 GPU 显卡的机器。
本书使用的 Python 3.5 开发环境,开发工具使用 Anaconda,操作系统使用 Windows 10。
TensorFlow 的学习中与平台无关,读者也可以使用 linux 或是 Mac,也可以使用别的开发工具。如果读者对安装过程已经掌握,可以跳过本章。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

2.1 下载及安装 Anaconda 开发工具
下面介绍 Anaconda 的下载及安装:
(1)通过百度来找到 anaconda 站,单击第一项,如图 2-1 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-1 找到 anaconda 官网
( 2)进入 Anaconda 官网,单击右上角的 download,如图 2-2 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-2 anaconda 首页
( 3)将屏幕拉到下面,单击图中最右测的连接“packages included in Anaconda”,
如图 2-3 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-3 download 选项
( 4)进入 packages included in Anaconda 页,单击图中最后一行的“ package
repository”,如图 2-4 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-4 conda 安装包
( 5)进入 package repository 页面,如图 2-5 所示。最后一行是下载裁剪后的版本。
如果你硬盘足够大,建议点倒数第二行。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-5 下载连接
( 6)进入完全版本的安装,如图 2-6 所示。这里有 linux、 Windows、 Macosx 的各种版本。可以任意选择。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-6 下载列表
注意:
TensorFlow 中最高的支持 Python 版本为 3.5 与 3.6 是不兼容的。千万要下载对应的版本。
本书中使用的是 Python3.5 版本,全文以 3.5 版本为例。
下面以 Windows 为例,来介绍下安装步骤
以 Anaconda3(默认使用 Python3.5)的 4.1.1 为例。
https://repo.continuum.io/archive/Anaconda3-4.1.1-Windows-x86_64.exe
注意:
尽量下载跟本书同步的版本。因为该版本默认是整合好 Python3.5 的,如果下比较新
的版本,默认是 Python3.6 或其他,会导致 TensorFlow 装不上
假设安装位置为 C:\local\Anaconda3-4.1.1-Windows-x86_64
安装好之后自动带有 pip 软件,可以通过 pip 安装其他软件。
注意:
Anaconda 的不同版本默认支持的 Python 版本是不一样的。对于支持 Python2 的版本,
统一以 Anaconda2 为开头来命名;对于支持 Python3 的版本,统一以 Anaconda3 为开头来命名。当前最新的版本为 5.0.0。可以支持 Python 3.6 版本。
TensorFlow 中的 1.3 以前的版本不支持 Python 3.6 版本。为了更好的兼容性,不建议下载最新的 Anaconda3 版本,而是推荐使用 Anaconda3 中支持 Python 3.5 的版本。例如:4.1.1、 4.2.0 等。
2.2 在 Windows 平台中下载及安装 TensorFlow
1. 在线安装 nightly 包
nightly 安装包是 TensorFlow 团队 2017 年下半年推出的安装模式。适用于在一个全新的环境下进行 TensorFlow 的安装。在安装 TensorFlow 的同时,默认会把需要依赖的库也一起装上。是非常省劲方便的安装方式。
按照图 2-7 中的方法直接使用命令:
pip install tf-nightly
即可下载并安装 TensorFlow 的最新 CPU 版本。若要安装最新的 GPU 版本可以使用如下命令:pip install tf-nightly-gpu
2. 安装纯净的 TensorFlow
如果想安装纯净的 TensorFlow,直接输入下面命令即可:
pip install tensorflow
上面是 CPU 版本, GPU 版本的安装命令如下:
pip install tensorflow-gpu
注意
在网速不稳定的情况下,在线安装有时会因为无法成功的下载到完整的安装包,导致
安装失败。可以通过重复执行安装命令或是采用离线安装的方式来解决。
3. 更新安装 TensorFlow
如果本地已经装有 TensorFlow,需要为其升级为新版本的 TensorFlow。只需要将原有
版本卸载,再次安装即可。卸载命令如下:
pip uninstall <安装时的 TensorFlow 名称>
4. 离线安装
有时由于网络环境的因素,无法实现在线安装。需要在网络环境好的地方提前将安装包
下载下来,进行离线安装。
(1)下载安装包
可以访问以下网站来查找 TensorFlow 的发布版本:
https://storage.googleapis.com/tensorflow/
该网站内容是以 xml 方式提供的,查找起来不是非常方便。可以通过地址加上指定的文
件名来进行下载。例如:一个 TensorFlow1.4.0 的 CPU 版本安装包下载路径为:
https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.4.0-cp35-cp35m-win
_amd64.whl
TensorFlow1.4.0 的 GPU 版本安装包下载路径为:
https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.4.0-cp35-cp35
m-win_amd64.whl
如果要下载 1.3.0 版本直接将上面链接中的 1.4.0 改成 1.3.0 即可。
(2)安装安装包
来到 https://github.com/tensorflow/tensorflow 在下面有安装文件的地址,下载页
面如图 2-7 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-7 TensorFlow 安装文件
由于在国内网速影响,有时会由于超时导致安装失败,这时可以再运行一次最后的安装
命令。或在下列网址中下载:
https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.1.0-
cp35-cp35m-win_amd64.whl
https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.
2.0rc0-cp35-cp35m-win_amd64.whl
下载完 TensorFlow 二进制文件,假设使用 cpu 版本并且放到 D:\tensorflow 下面。
“开始”菜单里->运行->输入: cmd,打开命令行窗口
C:\Users\Administrator>D:
D:\>cd tensorflow
D:\tensorflow>
D:\tensorflow>pip install tensorflow-1.1.0-cp35-cp35m-win_amd64.whl
2.3 GPU 版本的安装方法
如果使用 GPU 版本,在执行 pip 之后,还需要安装 Cuda 和 CuDnn。

2.3.1 安装 CUDA 软件包来到官方网站: https://developer.nvidia.com/cuda-downloads, 如图 2-8 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-8 cuda 页面
根据自己的环境选择对应的版本,exe 分为网络版和本地版,网络版安装包比较小,执
行安装时再去下载需要的包;本地版安装包是直接下载完整安装包。下载下来后就正常安装就可以了。
注意:
CUDA 软件包也有好多个版本,必须与TensorFlow 的版本对应才行。比如TensorFlow1.0 以后,直到 TensorFlow1.5 的版本只支持 CUDA8.0。在本书中也是使用的CUDA8.0 版 本 来 做 演 示 的 。 可 以 根 据 如 下 链 接 找 到 更 多 版 本 :https://developer.nvidia.com/cuda-toolkit-archive
2.3.2 安装 cuDnn 库
通过如下网址来到下载页面, 需要注册并且填一堆问卷,才能下载这个安装包。
https://developer.nvidia.com/cudnn cudnn 的版本选择也是有规定的。 以 windows10 操作系统为例, TensorFlow1.0 到TensorFlow1.2 版 本 使 用 的 是 cudnn 的 5.1 版 本 ( 安 装 包 文 件 为cudnn-8.0-windows10-x64-v5.1-zip),从 TensorFlow1.3 版本之后使用 cudnn 的 6.0 版本(cudnn-8.0-windows10-x64-v6.0.zip)。
得到相关包后解压,直接拷到 cuda 路径对应的文件夹下面就行。 (如图 2-9 所示)

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-9 安装 cuDnn
2.3.3 测试显卡
这里在额外介绍两个小命令,它可以检测出在安装过程产生的问题。
1.使用 nvidia-smi 命令 查看显卡信息
nvidia-smi 指的是 NVIDIA System Management Interface;
在安装完成 NVIDIA 显卡驱动之后,对于 Windows 用户而言, cmd 命令行界面还无法
识别 nvidia-smi 命令,需要将相关环境变量添加进去。如将 NVIDIA 显卡驱动安装在默认位置, nvidia-smi 命令所在的完整路径应当为:

C:\Program Files\NVIDIA Corporation\NVSMI
将上述路径添加进 Path 系统环境变量中。 之后在 cmd 中运行 nvidia-smi 命令,可以
看到如图 2-10 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-10 显卡信息
图中第一行列的我的驱动信息,第三行列的是我的显卡信息: GeForce GTX 1070。第四行和第 5 行列的是当前使用显卡的进程。这些信息都存在了,表明我的安装是正确的。
2.查看 CUDA 的版本
同样在 cmd 中使用如下命令: nvcc -V
显示如图 2-11 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-11 查看 cuda 版本
关于在 linux 和 MAC 上安装可以参考如下网址:
http://www.tensorfly.cn/tfdoc/get_started/os_setup.html
3.问题处理
如果遇到问题的话,可以尝试下面的解决办法:
在命令行里面输入 where MSVCP140.DLL 看看本机是否有 MSVCP140.DLL,如果没有可
以按照如下网址安装 Visual C++ Redistributable 2015
安装 Visual C++ Redistributable 2015 x64(操作系统 win10 64bit),下载地址]
如下:
https://www.microsoft.com/en-us/download/details.aspx?id=53587
2.3 在 linux 和 MAC 平台中安装 TensorFlow
对于 linux 与 Mac 都可以在上述的网站上找到对应版本的安装包,按照上述步骤依次安装即可。这里不再描述。
2.4 熟悉开发 Anaconda3 开发工具
在本书中使用到的开发环境是 Anaconda3,在 Anaconda3 里一般常用的有两个工具:
spyder、 Jupyter Notebook,它们的位置在开始菜单下 Anaconda3(64-bit)目录下,如图2-12 所示。

《搭建Tensorflow的开发环境》

图2-12 spyder
2.4.1 快速了解 Spyder
本书推荐使用 Spyder 作为编译器的原因是它比较方便,从安装到使用都做了相关的集成,只下载一个安装包即可,省去了大把的搭建环境时间。另外 Spyder 的 IDE 功能也很强大,基本上可以满足日常需要。下面通过几个常用的功能来介绍下其使用细节。
1.面板介绍
如图 2-13 所示, Spyder 启动后可以分为 7 个区域。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

标题栏 快捷菜单栏
工作区
属性页的标题栏
查看栏
输出栏
状态栏
图 2-13 spyder 面板
菜单栏:放置所有的功能
快捷菜单栏:是菜单栏的快捷方式,上面需要放置哪些快捷方式可以通过菜单栏中
的 view 里面的 toolbar 来勾选,如图 2-14 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-14 快捷设置
工作区:就是代码要写的地方;
属性页的标题栏:可以显示当前代码的名字及位置;
查看栏:可以查看文件、调试时的对象及变量;
输出栏:可以看到程序的输出信息,也可以当作 shell 终端来输入 Python 语句;
状态栏:用来显示当前文件权限、编码;鼠标指向位置;系统内存;
2. 注释功能
注释功能为编写代码中很常用的功能,下面介绍下 spyder 的批量注释功能,在图 2-14中,勾选“Edit toolbar”会看到如图 2-15 所示。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图2-15 注释按钮
当选中几行代码之后,单击该按钮即可注释代码,再次单击为取消注释。右边两个是代
码缩进与不缩进,不是太长用。可以通过快捷键“Tab”与“Shift+Tab”来实现。
3.运行程序功能
如图 2-16 中, 1 按钮为运行当前工作区内的 Python 文件。单击 2 按钮会弹出一个窗口,
可以输入启动程序的参数,如图中红框内的部分。

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图 2-16 运行
4 .调试功能
图 2-16 中右侧的蓝色按钮为调试功能的按钮, Python 在运行中同样可以通过设置断点来进行调试。
5.source 操作
当同时打开多个代码时,常常想回到刚刚看的代码的位置, spyder 中有这么个功能可以帮你实现,在图 2-14 中,勾选“Source toolbar”会看到如图 2-17 所示,左边第一个为建立书签,第二个为回退上次的代码位置,第三个为前进到下次代码位置。

《搭建Tensorflow的开发环境》

图2-17 source
以上都是关于 spyder 的常用操作。当然 spyder 还有很多功能这里就不一一介绍了。
2.4.2 快速了解 Jupyter Notebook
在深度学习中,有好多代码都是喜欢做成扩展名为 ipynb 的文件,这是一个关于 JupyterNotebook 的文件,可以即当说明文档,又能运行 Python 代码的文件。 Anaconda 中也集成了这个软件。如图 2-12 中找到 Jupyter Notebook,单击即可看到如图 2-18 界面:

《搭建Tensorflow的开发环境》
《搭建Tensorflow的开发环境》

图2-18 jupyter 界面
该程序是 bs 结构,会先启动一个 web 服务器,然后再启动一个浏览器,通过浏览器来访问本机的服务。在这里面可以上传下载,并编写自己的 ipynb 文件代码。关于jupyter notebook 工具具体使用,这里不做过多介绍。有兴趣的读者可以在网上
搜到好多使用教程。
更多章节请购买《深入学习之 TensorFlow 入门、原理与进阶实战》一书
京东购买链接: http://t.cn/Rnx4s8d
关注公众号: 相约机器人 图书配套视频在线观看

《搭建Tensorflow的开发环境》

http://weixin.qq.com/r/VDjcxE-E1RKqrQun921G (二维码自动识别)


推荐阅读
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 本文介绍如何利用动态规划算法解决经典的0-1背包问题。通过具体实例和代码实现,详细解释了在给定容量的背包中选择若干物品以最大化总价值的过程。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 题目描述:给定n个半开区间[a, b),要求使用两个互不重叠的记录器,求最多可以记录多少个区间。解决方案采用贪心算法,通过排序和遍历实现最优解。 ... [详细]
  • Yii 实现阿里云短信发送 ... [详细]
  • 探讨一个显示数字的故障计算器,它支持两种操作:将当前数字乘以2或减去1。本文将详细介绍如何用最少的操作次数将初始值X转换为目标值Y。 ... [详细]
  • 深入解析:手把手教你构建决策树算法
    本文详细介绍了机器学习中广泛应用的决策树算法,通过天气数据集的实例演示了ID3和CART算法的手动推导过程。文章长度约2000字,建议阅读时间5分钟。 ... [详细]
  • 网络攻防实战:从HTTP到HTTPS的演变
    本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 解决微信电脑版无法刷朋友圈问题:使用安卓远程投屏方案
    在工作期间想要浏览微信和朋友圈却不太方便?虽然微信电脑版目前不支持直接刷朋友圈,但通过远程投屏技术,可以轻松实现在电脑上操作安卓设备的功能。 ... [详细]
author-avatar
kkkkkkkkkkkk1982_799
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有