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

在Windows系统中安装TensorFlowGPU版的详细指南与常见问题解决

在Windows系统中安装TensorFlowGPU版是许多深度学习初学者面临的挑战。本文详细介绍了安装过程中的每一个步骤,并针对常见的问题提供了有效的解决方案。通过本文的指导,读者可以顺利地完成安装并避免常见的陷阱。

当开始学习深度学习的时候,自然就要用到tensorflow-gpu
版,而安装是个巨坑。博主曾深深陷入其中无法自拔,最终破釜沉舟,终于成功,哈哈哈哈哈。
以下是在windows中安装tensorflow的gpu版本的教程

windows下安装tensorflow -gpu

1.安装cuda

首先要去cuda官网下载cuda
Windows下安装Tensorflow-gpu(踩坑无数)
强烈推荐默认安装地址
安装步骤如下

Windows下安装Tensorflow-gpu(踩坑无数)
Windows下安装Tensorflow-gpu(踩坑无数)

Windows下安装Tensorflow-gpu(踩坑无数)

2.安装cudnn

安装完cuda后,就去cudnn官网下载cudnn。博主在当时下载的9.2版本。
Windows下安装Tensorflow-gpu(踩坑无数)

下载完成后,会得到一个压缩包,把压缩包里的文件copy到之前安装cuda的位置(如果默认安装的话,位置应该是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0)
要对应着来copy。
将.h .lib 和.dll 文件分别拷贝到cuda的include, lib/x64, bin 文件夹下

3.安装完这两项之后,就是环境的配置

计算机上点右键,打开属性->高级系统设置->环境变量,可以看到系统中多了CUDA_PATH和CUDA_PATH_V8_0两个环境变量,接下来,还要在系统中添加以下几个环境变量:

CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0(这是默认安装位置的路径) 
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64  
CUDA_BIN_PATH = %CUDA_PATH%\bin  
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64  
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64

然后
在系统变量 PATH 的末尾添加:

%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;  
  再添加如下4条(默认安装路径): 
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64; 
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin; 
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\common\lib\x64; 
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64; 

如图:
Windows下安装Tensorflow-gpu(踩坑无数)
Windows下安装Tensorflow-gpu(踩坑无数)

4.安装tensorflow

直接在cmd中输入

pip install tensorflow-gpu

如果嫌弃直接安装太慢,可以换个源

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu

安装成功后,在cmd进入python环境(博主用的anaconda环境)
输入

import tensorflow as tf

如果没有任何bug出现,那么恭喜你,你太幸运了。
然后你可以输入

tf.Session()

如果出现
Windows下安装Tensorflow-gpu(踩坑无数)
恭喜你tensorflow-gpu安装成功了。
当然,如果你没有那么顺利,也超级正常。
那就看之后的内容。

5.安装过程中遇到的一系列的坑

首先,最简单的,
如果你输入tf.Session()后没有出现,gpu的一系列信息。

pip show tensorflow-gpu

查看有没有tensorflow-gpu的信息
也可以输入

pip show tensorflow

查看是不是系统里面有tensorflow的cpu版本

如果有cpu版本,那么就卸载了tensorflow的cpu版本,重新安装一个。

pip uninstall tensorflow

其次
如果你在import tensorflow时出现了import numpy出错,说明你的numpy版本不适合你的tensorflow版本。
那么,你就要更新你的numpy版本

pip install numpy --upgrade

之后发现,这个错误就没了。
当然,可能会是一些其他库的警告,比如
Windows下安装Tensorflow-gpu(踩坑无数)
仔细看一下这个错误,看一下哪个库出现问题了,这种情况一般就是更新一下相应的库就OK,比如这个错误就是h5py版本太低,所以我更新了h5py

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple h5py --upgrade

最后
如果你import tensorflow时出现下面的信息
Windows下安装Tensorflow-gpu(踩坑无数)
那么,别慌,你肯定去到处去网上搜索资料,这个东西超级难查,博主曾被折磨的醉仙欲死。
解决这个问题,其实so easy。
就用最暴力的方法。
那就是进入E:\ComputerScience\software\Anaconda3\Lib\site-packages这个目录下,把所有有关tensorflow的东西全删了(就是这么暴力)。
然后重新安装tensorflow-gpu

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu

搞定!!!,哈哈哈哈
不知道你搞定了没有,反正我搞定了,哈哈哈。
欢迎没有搞定的人在下面讨论。。
博主滚去ubuntu系统去安装tensorflow-gpu版本了。


推荐阅读
  • 离线环境下的Python及其第三方库安装指南
    在项目开发中,有时会遇到电脑只能连接内网或完全无法联网的情况。本文将详细介绍如何在这种环境下安装Python及其所需的第三方库,确保开发工作的顺利进行。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本次考试于2016年10月25日上午7:50至11:15举行,主要涉及数学专题,特别是斐波那契数列的性质及其在编程中的应用。本文将详细解析考试中的题目,并提供解题思路和代码实现。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • Windows 系统下 MySQL 8.0.11 的安装与配置
    本文详细介绍了在 Windows 操作系统中安装和配置 MySQL 8.0.11 的步骤,包括环境准备、安装过程以及后续配置,帮助用户顺利完成数据库的部署。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • 本文探讨了如何在模运算下高效计算组合数C(n, m),并详细介绍了乘法逆元的应用。通过扩展欧几里得算法求解乘法逆元,从而实现除法取余的计算。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • This document outlines the recommended naming conventions for HTML attributes in Fast Components, focusing on readability and consistency with existing standards. ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 文件描述符、文件句柄与打开文件之间的关联解析
    本文详细探讨了文件描述符、文件句柄和打开文件之间的关系,通过具体示例解释了它们在操作系统中的作用及其相互影响。 ... [详细]
  • 本文详细介绍了MicroATX(也称Mini ATX)和MATX主板规格,探讨了它们的结构特点、应用场景及对电脑系统成本和性能的影响。同时,文章还涵盖了相关操作系统的实用技巧,如蓝牙设备图标删除、磁盘管理等。 ... [详细]
  • 使用GDI的一些AIP函数我们可以轻易的绘制出简 ... [详细]
author-avatar
mobiledu2502897207
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有