TensorFlow环境搭建(Win7-VS2015-DirectXSDK-CUDA8-Anaconda3-cuDNN6-TensorFlow120)
目标是从零开始搭建TensorFlow(CPU/GPU)环境。
经过几天奋战,遇到了许多问题,查找了很多网友的资料,有些问题搞清楚了原因,有些问题没有明确具体原因,但给出了分析和可能的解决方案,并留待以后继续分析,也希望高手不吝赐教。这里把我从安装Win7系统到搭建完成TensorFlow环境的完整过程整理出来,与大家分享。PC的配置、系统版本可能不同,仅当参考,如果能对有共同志趣的朋友有帮助,就最好不过了。
在安装和搭建过程中,有些参考文章写得很详细,这里对这些无私分享的网友表示感谢。需要说明的是由于机器环境差异,没有那一篇文章单独指导我解决了所有问题,因此我撰写步骤时尽量把环境、版本号写出来,在引用其他网友内容的地方都给出了链接地址,大家可以链接查看,如果自己搭建时与本文的结果不同,希望能多搜索解决方法,相信最终会解决问题。
机器是lenovoideapad Y700,CPU型号i7-6700HQ,独立显卡NVIDIA GTX 960M,支持DirectX 12,安装Windows 7 64位操作系统。
搭建TensorFlow环境的步骤简述:
(如无特别说明,均为64位版本,系统没有问题的,可以从step6开始):
1.安装Windows 7操作系统。
2.安装Lenovo联想驱动管理软件,补全各种驱动。
3.安装驱动精灵,补全无线网卡驱动。
4.安装常用软件,包括Office,PDF,Lingoes等。
5.备份系统。
6.安装VS2015。
7.安装DirectX SDK。
8.安装DDU(Display Driver Uninstaller),自动卸载当前显卡驱动。
9.安装CUDA8.0及其测试。
10. 安装CUDNN6.0
11.安装Anaconda3-5.2.0。
12. 安装TensorFlow-CPU/GPU及其Spyder(…)插件并测试。
步骤详细介绍:
1.安装操作系统。
之前为了搭建TF环境,卡在安装CUDA这一环,提示VisualStudio Integratio安装失败,反复安装卸载VS2015,导致VS打开后没有反应,经查需要重装系统。安装系统使用的是某宝系统备份优盘,安装后显示该系统是for AMD,而非for Intel,此问题通过电脑管家自动发现并解决。
2.安装Lenovo联想驱动管理软件,补全各种驱动。
安装系统后,多个硬件没有驱动,百度找到Lenovo联想驱动管理软件,自动检测并安装了大部分驱动,只有无线网卡驱动,能检测下载,就是装不上,如果你也遇到类似问题,请到step3,否则跳至step4。
3.安装驱动精灵,补全无线网卡驱动。
4.安装常用软件,包括Office,PDF,Lingoes等。
5.备份系统(方法自行百度)。
6.安装VS2015。
最早安装的是VS2013,但是在链接[1]中提到13版会导致没法生成sharedlibrary的问题,我没有亲测,由于好找资源,还是先接受建议卸载VS2013,改为安装VS2015。链接[1]建议VS2015专业版的就够用,安装时候不要选默认安装,在自定义中把有关C++开发的都选上。我没做区分,直接选自定义,choose all,见笑了!
注意,如果这里选默认设置,则可能在step9安装CUDA时发生“Visual Studio Integration”组件安装错误而导致CUDA安装失败。
资源链接:
VS2015官方下载地址:
https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs
VS2015官方下载地址(个人免费版):
http://news.mydrivers.com/1/439/439398.htm
参考链接[1]也给出了相关资源官网地址或网盘信息,感谢作者的无私分享。
7.安装DirectX SDK。
参考链接[1]建议安装June-2010版本,比较详细的安装步骤见链接https://blog.csdn.net/icbm/article/details/53048580。如果出现“S1023”错误,表示版本较低,可参考https://blog.csdn.net/yy649487394/article/details/45075167解决。安装完成后,检查安装目录下是否有”d3dx9.h”、”d3dx10.h”、”d3dx11.h”这些头文件,默认的安装目录是C:\Program Files (x86)\Microsoft DirectX SDK (June 2010),有表示安装成功。
资源链接:
百度网盘:https://pan.baidu.com/s/1geRxSTd
8.安装DDU(Display DriverUninstaller),自动卸载前面步骤安装的显卡驱动。
在重装系统后,安装CUDA8.0时,又出现新的错误,组件栏中显示“Visual Studio Integration”组件已安装,而“图形驱动”安装失败,此时用参考链接[3]给出的方法解决了问题。需要完全卸载之前的显卡驱动,而在利用控制面板或电脑管家都不能完全卸载,可以在安全模式下用DDU自动卸载(如下图):
9.安装CUDA8.0及其测试。
查到的资料有建议安装CUDA8.0版本,我下载了两个版本,补丁文件最好一起下载。资源链接:https://developer.nvidia.com/cuda-downloads。
这里先安装了8.0。一般情况下,按上述步骤的配置进行,不会出错。安装完成后最后做一个测试,可参考链接[1],不熟悉VS的朋友可以在cmd窗口输入C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe,如果得到GPU运行时的监测界面,表示成功。
这一步如果安装失败,可能的原因有VS、显卡驱动或者系统原因,参考解决方法如下:
(1)检查系统设置。右键计算机>管理>服务和应用程序>服务,找到“WindowsInstaller”,如果没有启动,右键选择“启动”,确认后重装CUDA。
(2)如果CUDA安装失败,组件栏中显示“VisualStudio Integration”组件失败,建议重装VS2015,选自定义配置,增选与C++有关的选项,或者全选(占45G空间),之后再安装CUDA。
(3)如果CUDA安装失败,组件栏中显示“VisualStudio Integration”组件已安装,而“图形驱动”安装失败,这时下载并用DDU卸载显卡驱动,再安装CUDA。
(4)如果还不行,可以尝试参考链接[4]中更改CUDA安装配置的方法绕过去,但是我对文中基础篇方法做过尝试,并没有解决问题。
(5)重装系统,再来一遍(想起一本书名《少有人走的路》)。由于反复装卸VS,导致VS打开后不能正常使用,网上建议重装系统…
PS:有的文章在安装CUDA之前还要装NVIDIA的显卡驱动,其实不用,可以忽略,从我安装情况看,应该是CUDA自带有显卡驱动。只需查看自己电脑的显卡型号是否支持CUDA,可以登陆NIVIDIA网站https://developer.nvidia.com/cuda-gpus查看支持CUDA的显卡型号,比如我的是NVIDIAGeForce GTX 960M。
10安装CUDNN6.0
参考https://download.csdn.net/download/frank897572008/10407851,cuDNN v6.0win7 x64版与CUDA8.0配套使用,2018-05-11 上传大小:70.18MB cudnn6.0cuda8.0分享
使用方法:解压,把 bin,include 和 lib 三个文件夹复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 目录下,和原先的目录直接合并就可以了。
11.安装Anaconda3-5.2.0。
有不少网文建议安装Anaconda3-4.2.0,因为对应的是Python3.5,对TensorFlow支持较好,比如参考链接[5],建议使用Anaconda3-4.2.0-Windows-x86_64版本,这版的python3.52对tensorflow支持最好(目前来看),但那篇文章是2017年5月份的。我下载了多个版本,这里安装5.2.0版本,对应Python3.6,但可以添加Python3.5环境,给大家当个小白鼠。安装教程很多,这里只提醒两点:
(1)添加路径问题。可以在安装时勾选添加到系统路径环境变量,也可以先不勾选,装完后收到添加路径,5.2.0版本会在勾选添加路径时提示此举或将导致后续问题(4.2.0版则没有),所以建议装完后手动添加路径。
资源链接1:https://www.anaconda.com/download/#windows
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.2.0-Windows-x86_64.exe
12.安装TensorFlow-CPU/GPU及其Spyder(…)插件并测试。
因为默认连接的是国外镜像地址,下载速度比较慢,我们把镜像地址改为清华大学开源软件镜像站,打开 Anaconda Prompt, 输入:
conda config --add channelshttps://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
如果输入“conda create--name python35 python=3.5”指令后有以下报错:
stepA下载everything搜索软件http://www.voidtools.com/
stepB之后安装并打开everything,之后搜索“.condarc”
stepC用记事本打开并编辑.cindarc文件,改成如下内容后,保存并关闭。
(3)以管理员身份打开 Anaconda Prompt,创建 TensorFlow 的conda计算环境。输入>activatepython35切换到python35的环境。
输入命令:conda create -n tensorflow-cpu python=3.5,之后输入y并回车。安装完毕再查看环境,增加了tensorflow-cpu。
(4)激活TensorFlow环境。输入命令:activate tensorflow-cpu。
A.输入命令: pip install tensorflow (纯cpu)。[5]
建议按C命令,不用额外下载,速度快,不会报错。A和B肯能会报错或者很慢。
TensorFlow资源链接1:https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/cpu/
TensorFlow资源链接2:https://www.lfd.uci.edu/~gohlke/pythonlibs/
tensorflow‑1.7.0‑cp36‑cp36m‑win_amd64.whl
tensorflow‑1.4.0‑cp35‑cp35m‑win_amd64.whl
(5)在AnacondaNavigator 的环境设置中安装tf环境
安装完成后点击mypy35tf环境中的OpenTerminal,在命令框中进行输入测试代码进行测试,在首次输入第三句“sess=tf.Session”时,会提示错误信息(不清楚原因,第二次测试就没有了,请大神帮助解释),并弹出显卡问题,继续输完测试代码,可以正常显示结果。
到目前为止,tf环境配置完毕,但是只能在命令行使用,如需在spyder中编辑调试代码,还需安装相应的spyder。
(5)安装Spyder(mypy35tf)插件
在先前安装的Anaconda下Spyder(打开左上角显示Python3.6)中,输入该测试指令会报错:No module named tensorflow。是因为没有安装Spyder(tensorflow-cpu)插件。先退出python环境,输入exit(),再输入命令:conda install spyder,显示如下安装包信息,确认并安装。
完成后生成一个spyder(mypy35tf) ,之后查看开始/程序/Anaconda3下多出Spyder(mypy35tf) 及其Reset。点选后出现Spyder3(左上角显示python3.5),输入测试程序运行正常。
先使用测试代码,检查spyder环境可以正常使用。这里提供一段代码,检测gpu能够使用,代码来自[7]。
#打开Spyder(mypy35tf) ,输入测试脚本:
import tensorflow as tf
hello = tf.constant(‘Hello, TensorFlow!’)
sess = tf.Session()
print(sess.run(hello))
#正确的话,会输出:
#Hello, TensorFlow!
# TF-cpu和TF-gpu的测试代码:
# 计算图的使用:定义一个求和计算
import tensorflow as tf
a = tf.constant([1.0,2.0],name="a")
b = tf.constant([2.0,3.0],name="b")
result = a + b
print(result)
# 通过设定默认会话计算张量的取值
sess = tf.Session()
with sess.as_default():
print(result.eval())# 计算图的使用:将上述求和计算跑在GPU上
import tensorflow as tf
a = tf.constant([1.0,2.0],name="a")
b = tf.constant([2.0,3.0],name="b")
# 计算图可以用tf.Graph.device函数来指定运算的设备
g = tf.Graph()
# 制定计算运行的设备
with g.device('/gpu:0'):result = a + b
print(result)
# 通过设定默认会话计算张量的取值
sess = tf.Session()
with sess.as_default():
print(result.eval())
首次运行gpu运算时出现下面问题,后面运行不会出现,不影响代码执行,可点击确定(请大神解释!)
后记
至此,经过一个多星期的尝试,终于以一种非常规的方法,实现了TensorFlow环境的配置,有两个问题必须mark一下。
一是,许多参考书和网上安装教程所依据的系统环境配置不同、更新的时间不同,各种软件版本、安装套路会有很大出入,有的简单,有的繁琐,但是没有一个文章单独帮助我从头走到尾。由于是初学,因此走的路是磕磕绊绊,干的活是修修补补,给出的安装步骤显得不够简洁,但是作为一种经验尤其是对一些问题的解决办法,放在这里仅提供参考,其中有不少问题还没有分析透彻,还需要高手的指点。
二是,本次安装参考的书本和网文大多是2017年以前的,涉及到的python3.5和CUDA8.0等是相对较老的版本,截至2018年7月,TensorFlow版本已经更新到1.7.0,支持python3.6,CUDA9.1以及CUDNN7.1。我相信,新的版本和环境搭建应该会更加简洁高效,也希望同行的网友不吝赐教,分享信息,共同进步。
版权声明:本文为博主原创文章,转载需注明出处。
参考网络资源
[1] https://blog.csdn.net/simple84672642/article/details/78216394?locationNum=3&fps=1
《win7+vs2015+cuda8.0+cudnn5.1+caffe+tensorflow+keras环境搭建》
[2] https://blog.csdn.net/love666666shen/article/details/77099843
《Windows 7下通过anaconda安装tensorflow》
[3] https://blog.csdn.net/bingo_6/article/details/80114440
《安装CUDA 9.0时,NIVDIA安装程序失败,解决方法。win10+vs2017+python3.6+cuda 9.0+cudnn 7.0+tensorflow 1.5》
[4] https://blog.csdn.net/zzpong/article/details/80282814
CUDA安装失败解决方法
[5] https://blog.csdn.net/lijihw_1022/article/details/72731030
《win7 X64 安装tensorflow 并使用 spyder 教程》
[6] https://blog.csdn.net/r1254/article/details/76735740
[7]郑泽宇,梁博文,顾思宇. TensorFlow实战Google深度学习框架[M].北京:电子工业出版
TensorFlow环境搭建(Win7-VS2015-DirectXSDK-CUDA8-Anaconda3-cuDNN6-TensorFlow120)相关推荐
- 深度学习(四十一)cuda8.0+ubuntu16.04+theano、caffe、tensorflow环境搭建
cuda8.0+ubuntu16.04+theano.caffe.tensorflow环境搭建 目前自己撘过深度学习各种库.各种环境,已经搭建了n多台电脑,发现每台电脑配置安装方法各不相同,总会出现各 ...
- Tensorflow环境搭建
2019独角兽企业重金招聘Python工程师标准>>> Tensorflow环境搭建 博客分类: 深度学习 Tensorflow环境搭建 本章主要介绍在几个主要的平台上,如何安装Te ...
- Win10下双系统Ubuntu14.04+GTX1070+CUDAcuDNN+Tensorflow环境搭建
先说机器配置: CPU:Intel Xeon E3-1230 v5 skylake平台(此CPU无核显) 主板:ASUS E3 Pro Gaming v5 RAM:8G GPU:ASUS STRIX- ...
- 深度学习之tensorflow环境搭建
深度学习之tensorflow环境搭建: 1.搭建的步骤 1-1.破解版的Pycharm软件包下载 1-2.Ananconda软件包的下载 1-3.使用Anaconda Prompt 命令,首先输入 ...
- Windows TensorFlow环境搭建
Windows TensorFlow环境搭建 简介 本次安装是在Windows10 上进行的,使用tensorflow安装的环境为 Anaconda.Python3.7.TensorFlow2.0 搭 ...
- donet 微服务开发 学习-Docker环境搭建 win7 docker 环境配置
donet 微服务开发 学习-Docker环境搭建 win7 docker 环境配置 目的介绍 下载安装 安装 Docker Quickstart Terminal 目的介绍 donet 微服务开发 ...
- 最适合 Apple Silicon 的 Tensorflow 环境搭建
最适合 Apple Silicon 的 Tensorflow 环境搭建 文章目录 最适合 Apple Silicon 的 Tensorflow 环境搭建 前言 一.mini- forge下载: 1. ...
- WIN10 下 Tensorflow 环境搭建
TensorFlow开发环境搭建 1.安装python 2.安装eclipse+pydev插件 3.安装Tensorflow等python插件 这里介绍基于eclipse的Tensorflow环境搭建 ...
- win7下android开发环境搭建(win7 64位)
注意:此为win7 (64)位系统 那么win7下32位系统如何进行android开发环境搭建呢?>>>win7下android开发环境搭建(win7 32位) 一.安装 JDK 下 ...
最新文章
- 安装Visual C ++进行跨平台移动开发
- 人工智能和自主系统在美军联合职能中的应用
- 搭建SSH框架之一(资料准备)
- lucene源码分析(8)MergeScheduler
- 【十九】require和include的区别
- Ajax同步和异步的区别?
- Linux 命令之 whois 命令-用于查找并显示用户信息
- SSM整合后的项目结构
- 截取数组中的第i个元素,并返回截取后的结果
- Webpack 2 视频教程 009 - 配置 ESLint 实现代码规范自动测试 (上)
- 震惊!雷军表示要出千元5G手机!
- C++ 复制一个文件夹下的所有文件到另一个文件夹
- ROS1 robot path tracking
- 商业流程中的traversedpath
- c++ 成员初始化列表
- 【Proteus仿真】51单片机驱动蜂鸣器播放《天空之城》
- 有限元方法入门:有限元方法简单的一维算例
- 区块链随想录——一种设想中的公链架构
- 1646 获取生成数组中的最大值
- MySQL字符集和校对规则(Collation)
热门文章
- 奈奎斯特三大准则和香农定律
- 一个高人写的oracle资料[转载]
- 安卓day25快速入门 目录结构 清单 DDMS adb 危险权限 发短信 点击事件 安卓版本...
- IT项目管理的六种致命错误:忘记项目目标
- 宝宝也能看懂的 leetcode 周赛 - 174 - 3
- nsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is st
- c++编写更高效的股票系统
- java代码对数据库数据的CRUD操作
- 【设计模式修炼】第一章 :获得《七大原则》
- day7 多线程和多进程