Win10上安装Keras 和 TensorFlow(GPU版本)-程序员宅基地

技术标签: python  开发工具  人工智能  

一. 安装环境

  • Windows 10 64bit  家庭版
  • GPU: GeForce GTX1070
  • Python: 3.5
  • CUDA: CUDA Toolkit 8.0 GA1 (Sept 2016)
  • cuDNN: cuDNN v6.0 Library for Windows 10

【注意】

(1)这里值得一提的是,Python,CUDA,cuDNN之间的版本要严格匹配,不匹配安装会出错。

(2)后来博主的系统升级到了Windows 10 64bit  企业版,按照上面的软件配置安装,结果出错了。换了CUDA和cuDNN的版本,成功安装。Windows 10 64bit  企业版上的安装环境如下:

  • Windows 10 64bit  企业版
  • GPU: GeForce GTX1070
  • Python: 3.5
  • CUDA: CUDA Toolkit 9.0 (Sept 2017)
  • cuDNN:cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0

 

接下来介绍的安装步骤,都是在 Windows 10 64bit  家庭版上进行的,如果是在win10  64bit 企业版或者其他版本上的安装,只需要更换CUDA和cuDNN的版本即可,安装步骤是一样的。

 

二. TensorFlow具体安装步骤

1.首先下载Anaconda3的Win10 64bit版,安装Python3.5版本。可以直接下载Anaconda的安装包安装即可,一般不会有问题。(清华镜像https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ , 官网链接 https://www.anaconda.com/download/)

注意:

(1)可以从清华大学的开源软件服务器上找到历史版本的Anaconda(https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/),找到3-4.2版本的Anaconda安装包下载安装,这样获得的默认python就是3.5版本了

(2)如果从官网下载Anaconda3,默认的python是3.6.x版本的,这样后面的过程中会出错。此时需要更改Anaconda3中python的版本,具体可以参考文献1:在Anaconda中随意更改python版本和其他相关包版本的使用经验!

 

2.TensorFlow 有两个版本:CPU 版本和 GPU 版本。CPU 版本的安装可以参考文献2:win7系统中使用anaconda安装tensorflow,keras。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版本,请先确认你的显卡支持 CUDA。我安装的是 GPU 版本,采用 Anaconda+pip 安装方式,所以就以 GPU 安装为例,CPU 版本只不过不需要安装 CUDA 和 cuDNN。  

 

3.安装cuda8.0(https://developer.nvidia.com/cuda-toolkit-archive 或 https://developer.nvidia.com/cuda-downloads)。

注意:

1)在参考文献3:再写博文,回顾在Windows7上安装TensorFlow-GPU的一路坑 ,提到,在安装CUDA的过程中,安装包自身就包括了一个显卡驱动。那么这个版本就应该是和CUDA9相互支持匹配的驱动程序,安装好软件后不要升级驱动程序,否则会报错)

2) 如果没有安装Visual Studio,安装CUDA8的过程中,会提示要安装Visual Studio。所以可以先安装Visual Studio。

 

4.安装cudnn6.0(https://developer.nvidia.com/rdp/cudnn-download,点开链接下载时,提示要注册一下,可以用新浪邮箱注册,qq邮箱不能通过)。解压刚才下下来的安装包,将include,lib和bin三个文件夹下的文件拷到CUDA对应的文件夹下面即可。即把这三个文件夹里的内容添加到CUDA的安装目录(我的是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0)下面相对应的目录里面,bin的放到bin,lib的放到lib,include的放到include。注意是添加文件夹里的内容,不是直接覆盖替换文件夹。

 

5.打开Anaconda prompt,通过调用以下命令创建名为 tensorflow 的conda环境: conda create -n tensorflow python=3.5

注意,博主在安装的时候,出现了如下错误:

CondaValueError: prefix already exists: D:\ProgramFiles\anaconda3\envs\tensorflow

原因是在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0目录下已经有了TensorFlow,删除目录下的文件即可。可以参考文献4

 

6. 删除后就可以安装了。中间提示提示需要安装其他的包,输入 y 即可。 

 

6.通过发出以下命令来激活conda环境:  activate tensorflow  , 如果前面出现(tensorflow) 表示环境已经成功激活

 

7.确保名叫tensorflow的环境已经被成功添加:conda info --envs  ,从下图可以看到,环境已经添加上了。

 

8.要安装 GPU 版本的 TensorFlow, 请输入以下命令 (在一行中): pip install --ignore-installed --upgrade tensorflow-gpu

 

9.验证您的安装

打开Anaconda Prompt之后,激活conda环境:  activate tensorflow

输入:python 

之后输入以下程序:

-----------------------------------------------

   import tensorflow as tf

   hello = tf.constant('Hello, TensorFlow!')

  sess = tf.Session()

  print(sess.run(hello))

-----------------------------------------------

如果没有提示错误,并输出以下内容,则说明tensorflow已经成功安装

---------------------------------------------

  b'Hello, TensorFlow!'

---------------------------------------------

三. Keras具体安装步骤

1.打开Anaconda Prompt之后,激活conda环境:  activate tensorflow

 

2.安装keras,使用命令: pip install keras

 

3.验证您的安装。输入命令 python,然后输入 import keras,如果没有报错,则安装成功

 

 四、jupyter notebook 中使用 tensorflow 和 keras  (电脑升级到企业版后,补充的部分)

1.打开Anaconda Prompt之后,激活conda环境:  activate tensorflow

 

2、输入一下命令,安装ipython 和 jupyter

(1)安装ipython 

conda install ipython  

 

(2)安装jupyter

conda install jupyter  

 

 

(3)运行一下命令

ipython kernelspec install-self --user

 

(4)输入jupyter notebook   ,在浏览器中打开jupyter notebook 

 

(5)在打开的页面中,输入以下命令,按shift + enter 运行命令,没有报错,则tensorflow 和keras安装成功

import tensorflow as tf
import keras

如下图所示:

 

【遇到的问题】

1、打开jupyter notebook后,运行上诉两条命令,提示找不到tensorflow 和 keras。这可能是ipython 和 jupyter 没有正确安装。ipython 和 jupyter 都需要安装在创建的conda 虚拟环境下。正确的位置如下所示:

如果python 、ipython和jupyter不在这三个位置,则需要重新安装。详细步骤可以参考博客:  jupyter notebook 中 tensorflow 报错

 

---------------------------------------------------------------------- 

参考链接:

  1. http://blog.csdn.net/Kyle_2017/article/details/78257051?locationNum=2&fps=1
  2. https://www.jianshu.com/p/f50bbfcb3674
  3. http://blog.csdn.net/infovisthinker/article/details/54705826
  4. https://stackoverflow.com/questions/40180652/condavalueerror-value-error-prefix-already-exists
  5. http://www.cnblogs.com/bnuvincent/p/7045324.html
  6. https://keras.io/
  7. jupyter notebook 中 tensorflow 报错 :   https://www.jianshu.com/p/a8d4df740218
  8. Windows环境下TensorFlow的安装及如何在Jupyter Notebook中使用TensorFlow :  http://blog.csdn.net/shengyingpo/article/details/70237754

                                                                                                                                                       

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34357928/article/details/85965012

智能推荐

L2-033 简单计算器(stack用法)_输入首先在第一行给出正整数 n(1<n≤10 3 ),为 s 1 中数字的个数。 第二行给出-程序员宅基地

文章浏览阅读631次,点赞3次,收藏4次。本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S​1存放数字,另一个堆栈 S2存放运算符。计算器的最下方有一个等号键,每次按下这个键,计算器就执行以下操作:1.从 S​1中弹出两个数字,顺序为 n1和 n2;2.从 S​2中弹出一个运算符 op;3.执行计算 n​2​​ op n1 ;4.将得到的结果压回 S​1 。直到两个堆栈都为空时,计算结束,最后的结果将显示在屏幕上。输入格式:输入首先在第一行给出正整数 N(1<._输入首先在第一行给出正整数 n(1

Bootstrap详细讲解(图文)_Quentin_bootstrap图解-程序员宅基地

文章浏览阅读497次。BootstrapBootstrap简介: Bootstrap是Twitter公司开发并开源的用于前端开发的框架。Bootstrap提供了很多优雅的HTML和CSS规范,有了Bootstrap会使一些前端编程变得简单方便。 Bootstrap中文网:www.bootcss.com 这里面有Bootstrap中文文档、教程和网页实例,对于初学者很有帮助。Bootstrap CSS: &n_bootstrap图解

iOS开发面试必须要注意的问题!_ios 面试官 问项目问题-程序员宅基地

文章浏览阅读473次。今天要来聊聊的,是关于面试求职的那点事儿~说起求职,无论是应届生还是职场老司机, 大家都难免紧张。笔试有考点吗?简历里要把所有项目经验写进去吗?这个算法要记吗,那个概念会考吗?面试官的套路有尽头吗?今天分享一份开发面试全攻略。一般来说,大公司招聘流程都是:简历的筛选-笔试-技术面试-HR面,在技术面一般至少有两轮,如果岗位比较重要技术面试的场次可能有五六轮。HR面结束后还有可能还有部门经理的面试。相对而言, 校招倾向于考验学生的**基础知识、思维能力和发展潜能。**除了这三个方面,丰富的项._ios 面试官 问项目问题

[AIGC] Java List和Map常用API以及其Python实现方式对照介绍-程序员宅基地

文章浏览阅读477次,点赞9次,收藏8次。Java和Python作为当今非常浅显易懂的编程语言,其数据结构中对于List和Map(Java)或List和Dict(Python)的操作无疑是每个程序员都非常必需的知识。本文将介绍在Java中对List和Map常用的一些操作,并给出在Python中对应的实现方式。

meson 概述-程序员宅基地

文章浏览阅读1.2w次,点赞8次,收藏42次。meson是一个编译系统,类似于 CMake 或者GNU Autotools. meson只是负责配置构建,后台默认是用ninja来编译的(当然也支持其它后台)。ninja是一个小型的致力于编译速度优化的编译系统,相当于make的替代物。所以meson+ninja相当于Cmake+make。meson设计目标是好用,同时保持高性能。它采用了一种自定义语言,号称简单、清晰和简洁性。很多灵感来自于Python编程语言,具有较好的易读性。meson的另一个设计目标,是为现代编程工具提供辅助的支持,包括单元测试_meson

oracle查看编码以及修改编码-程序员宅基地

文章浏览阅读87次。oracle的编码一直是个很重要的问题,以前也总结的写过,但都忘了,今天再在这写一下。首先查看oracle数据库的编码SQL>select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';PARAMETER--------------------VALUE---..._orcid邮政编号怎么修改

随便推点

电脑可以连接蓝牙音响吗_玩法小技巧你竟然还不知道?!蓝牙无线耳机可以连接电脑!!...-程序员宅基地

文章浏览阅读764次。1、确保电脑具备蓝牙模块。目前笔记本电脑都自带蓝牙模块,所以无需额外硬件即可连接蓝牙耳机;部分台式机自带蓝牙模块,同样可以直接连接蓝牙耳机;不具备蓝牙模块的电脑需要额外配置外接型的USB蓝牙适配器,才可连接蓝牙耳机。2、确保蓝牙模块驱动为最新状态。电脑自带的蓝牙模块一般无需更新即可连接,但如有新版驱动还是建议大家更新;外接的蓝牙适配器则需要按照厂商的说明指导安装和更新驱动,否则电脑无法正..._电脑把蓝牙耳机识别成蓝牙音箱

React路由使用步骤(含三种传参方式+编程式导航)_react编程导航-程序员宅基地

文章浏览阅读3.9k次。React路由使用步骤(含三种传参方式+编程式导航)_react编程导航

python操作mysql_update set %s=%s where start=%s-程序员宅基地

文章浏览阅读95次。import pymysql'''需求:有以下员工信息表CREATE TABLE EmployeeInfo ( staff_id int(11) NOT NULL AUTO_INCREMENT, name varchar(255) COLLATE utf8_bin DEFAULT NULL, age int(11) DEFAULT NULL, phone varchar..._update set %s=%s where start=%s

一些数据上的概念-程序员宅基地

文章浏览阅读103次。一些数据上的概念 Cross tabulationhttp://en.wikipedia.org/wiki/Cross_tabulationhttp://www.fjmu.edu.cn/news/stat/jbtj8.htm交叉列表的统计分析(Statistics ..._sommer's d

声源测向: TDOA-GCC-PATH方法-程序员宅基地

文章浏览阅读1.9k次。声源测向: TDOA-GCC-PATH方法 收藏链接:http://www.funcwj.cn/2018/05/10/gcc-phat-for-tdoa-estimate/ posted @ 2019-04-09 10:01 douzujun 阅读(...) 评论(...) 编辑 收藏..._gcc-phat

掌握 JMeter 参数化测试,提升应用性能测试水平!-程序员宅基地

文章浏览阅读334次,点赞3次,收藏3次。本周给大家介绍下如何测试工具Jmeter中的参数化,随着互联网的快速发展,性能测试已成为每个应用程序不可或缺的一部分。Apache JMeter 是一款广泛使用的开源性能测试工具,可以帮助我们模拟并发用户对目标服务器发起请求,以评估系统的性能。在本文中,我们将探讨如何使用 JMeter 进行参数化测试,从而提高测试效率和准确性。

推荐文章

热门文章

相关标签