前叙:有灵魂的程序都是每一个程序员的最终目标。TensorFlow了解下?

打算花几个月学机器学习,TensorFlow是很好的选择,折腾了会环境,略有心得分享下。

  • 环境:win10
  • Python:3.6.5

  • TensorFlow-GPU:1.8.0

  • CUDA:9.0

  • cuDNN:7.1.4

我们来用最简单的方法安装,首先

Python:

虽然官网3.7已经出来了,但是Beta版,保险起见用正式版 3.6.5。

你看着文章时也许已经不是3.6.5了,所以链接下可以选最新版本的。我下载的是64位可执行安装包。

https://www.python.org/downloads/windows/

下载完安装只有一个注意事项,勾选Add Python 3.6 to PATH

TensorFlow:

顺利安装完Python后就可以用pip装TensorFlow。

因为pip旧版不能装TensorFlow,所以先要pip直接升到最新版。

以管理员身份运行命令行执行:

python -m pip install -U pip

升级了pip就可以装TensorFlow(GPU版)了

以管理员身份运行命令行执行:

pip3 install --upgrade tensorflow-gpu

部分警告可以忽略。

装完我们运行试试看,开始菜单找到Python 3.6打开并运行:

import tensorflow as tf

提示找不到模块,下面解释说没有C++2015的DLL,

其实这个是没有装CUDA,CUDA安装会附带的。

说起了这个CUDA是NVIDIA 的,那AMD的显卡不很尴尬了。

CUDA:

https://developer.nvidia.com/cuda-toolkit-archive

当前最新版的是9.2,我们来装个9.2(误,请看下面再操作)

下载选离线的1.5G的。这下载的链接有毒,迅雷下载到98%点几就下载不了了,会员离线也下载不了,还好百度云离线下载可以。右键下载链接选复制用百度云离线下载

警告:关掉360

然后安装就下一步下一步

安装完Python再运行一下 import tensorflow as tf (之前报错的话要关掉重新打开)

还是一样的错误...好吧,看来CUDA没有自带2015的运行库,只有2013的,按照报错给的链接下载C++2015: https://www.microsoft.com/en-us/download/details.aspx?id=53587

安装完后再运行,终于不一样了。不过这..提示CUDA版本要9.0....

9.0链接在这,都给你们选好了:https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal

好的,装CUDA 9.0的

  cuDNN:

安装完cuda再运行看

 import tensorflow as tf

https://developer.nvidia.com/cudnn

这回报错提示cuDNN没装了,根据链接里的下载地址要登录,选对应CUDA9.0的

下载后解压到任意目录,我是放在D盘的,然后将目录添加到PATH系统环境变量里。

python里再运行

import tensorflow as tf

Good,没报错了。

运行矩阵

显示有 CPU 提示,显卡型号。

所需安装包:

嗯,连七八糟写的。

其实主要分享如何解决问题,不能一味的百度,就算有教程也不一定对的,因为版本是时刻在变的。

还是要仔细看错误详细才对,附上参考链接:【TensorFlow】Windows10 64 位下安装 TensorFlow - 官方原生支持

后话:

如果一开始定位报错的py文件,就可以知道所有会导致运行失败的异常。

Platform-specific code for checking the integrity of the TensorFlow build.

最新文章

  1. php 读取网页源码 , 导出成txt文件, 读取xls,读取文件夹下的所有文件的文件名
  2. List<IPoint> to IPointCollection to IPolygon
  3. java基础回顾(二)——内部类
  4. myeclipse 8.5 破解
  5. Google前工程经理王忻:如何准备软件工程师的面试
  6. Verilog HDL常用的行为仿真描述语句
  7. 认识WebSocket理论篇
  8. SpringMVC中使用zTree
  9. VC socket Connect 超时时间设置
  10. C语言内存对齐(2)
  11. Binder机制,从Java到C (8. ServiceManager in Native)
  12. 使用Dotfuscator加密混淆程序以及如何脱壳反编译
  13. 【转】Python正则表达式指南
  14. .net core使用Pipelines进行消息IO合并
  15. mpvue——API请求封装(小程序原生)
  16. JWT,oAuth和SSO的讨论
  17. mysql sql执行计划
  18. 信用算力基于 RocketMQ 实现金融级数据服务的实践
  19. MVC 5使用TempData Object跨视图传递数据
  20. Oracle11.2.0.1 升级Oracle11.2.0.4 后 listener 的端口改变需要处理

热门文章

  1. SPFA 最短路 带负权边的---- 粗了解
  2. SPOJ:NO GCD (求集合&秒啊)
  3. [Selenium] 如何在老版本的Chrome 浏览器上使用selenium
  4. Linux命令排查线上问题常用的几个
  5. bzoj 2151 种树 —— 思路+链表
  6. bzoj3143游走——期望+高斯消元
  7. WebDev.WebServer40.EXE命令使用
  8. maven 简单入门教学实战手册
  9. Code-NFine:下来框和复选框
  10. const常量