详解TensorFlow在windows上安装与简单示例


Posted in Python onMarch 05, 2018

本文介绍了详解TensorFlow在windows上安装与简单示例,分享给大家,具体如下:

安装说明

平台:目前可在Ubuntu、Mac OS、Windows上安装

版本:提供gpu版本、cpu版本

安装方式:pip方式、Anaconda方式

Tips:

  1. 在Windows上目前支持python3.5.x
  2. gpu版本需要cuda8,cudnn5.1

安装进度

2017/3/4进度:
Anaconda 4.3(对应python3.6)正在安装,又删除了,一无所有了
2017/3/5进度:
Anaconda 4.3(对应python3.6)get
Anaconda中python3.5.2get
tensorflow1.0.0get

行文思路

在看别人教程时候总遇到些没见过的名词,让人望而生畏。
所以索性从名词解释开始。
然后讲述TensorFlow的安装和简单示例。
作为自己的笔记,
也希望像我一样的小白看到这篇教程能觉得做起来很顺畅!

CUDA

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。 开发人员现在可以使用C语言来为CUDA™架构编写程序,C语言是应用最广泛的一种高级编程语言。所编写出的程序于是就可以在支持CUDA™的处理器上以超高性能运行。CUDA3.0已经开始支持C++和FORTRAN。
计算行业正在从只使用CPU的“中央处理”向CPU与GPU并用的“协同处理”发展。为打造这一全新的计算典范,NVIDIA™(英伟达™)发明了CUDA(Compute Unified Device Architecture,统一计算设备架构)这一编程模型,是想在应用程序中充分利用CPU和GPU各自的优点。现在,该架构已应用于GeForce™(精视™)、ION™(翼扬™)、Quadro以及Tesla GPU(图形处理器)上。
来自百度百科。

(所以我的A卡是用不成它的)

Anaconda

Anaconda是由Python提供支持的领先的开放数据科学平台。 Anaconda的开源版本是Python和R的高性能分发版本,包括超过100个用于数据科学的最流行的Python,R和Scala软件包。
来自Anaconda官方下载页面

具体使用见Anaconda官方教程,简单易懂!

Anaconda初步学习

0.下载Anaconda安装包:Anaconda官方下载地址

我下载的是Anaconda4.3.0For Windows 64bit(内置python3.6)

下载好了就安装,一直下一步。

1.检查Anaconda是否成功安装:conda --version

详解TensorFlow在windows上安装与简单示例 

(嘻嘻,第一步成功了,开心点)

2.检测目前安装了哪些环境:conda info --envs

详解TensorFlow在windows上安装与简单示例 

(只有一个呀!不怕,继续来!)

3.检查目前有哪些版本的python可以安装:conda search --full-name python

详解TensorFlow在windows上安装与简单示例 

(好多呀,要哪个呢?嘻嘻当然是python3.5啦)

4.安装不同版本的python:conda create --name tensorflow python=3.5

(猜想输入python=3.5版本后,系统会自动选择一个3.5.x的版本吧)

详解TensorFlow在windows上安装与简单示例 

(python3.5.3要不要?实验室服务器上是3.5.2,统一好啦!)

详解TensorFlow在windows上安装与简单示例 

(好啦,GO!)

详解TensorFlow在windows上安装与简单示例 

(嘻嘻!安好啦!又离成功近了一步!)

5.按照提示,激活之:activate tensorflow

详解TensorFlow在windows上安装与简单示例 

(嘻嘻它有了一顶小帽子~代表我的当前环境哦)

6.确保名叫tensorflow的环境已经被成功添加:conda info --envs

详解TensorFlow在windows上安装与简单示例 

(Bravo!)

7.检查新环境中的python版本:python --version

详解TensorFlow在windows上安装与简单示例 

(^^开心开心~)

8.退出当前环境:deactivate

详解TensorFlow在windows上安装与简单示例 

(小帽子掉了)

9.切换环境:activate tensorflow

详解TensorFlow在windows上安装与简单示例 

想切换到哪个环境就 activate哪个~

这篇文章既然是安装tensorflow的,当然要avtivate tensorflow!

小妖精!我来了!

PS:想了解更多请看Anaconda官方教程,简单易懂好上手!别乱搜网上的教程,没有官方教程看着清爽!

TensorFlow安装

本文是将tensorflow在原生windows系统上安装,

采用anocanda的安装方式,

安装的是cpu版本(嗯,作为AMD的显卡,掩面哭)

Anaconda 4.3.0.1(带有python3.6)

在Anaconda里面配了python3.5.2

下面是今天的主角!(噼里啪啦)

1.按照官网的指示:
pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_x86_64.whl

详解TensorFlow在windows上安装与简单示例 

(好吧,先是打错,接下来又这样!我不知道该怎么办了(ㄒoㄒ)/~~)

2.另一种尝试:pip install tensorflow

详解TensorFlow在windows上安装与简单示例 

(划重点了,原来是这样子!我是AMD的卡,对应的不一样!)

3.确认tensorflow安装成功:

错误尝试:直接在cmd里面键入python,然后键入import tensorflow as tf

详解TensorFlow在windows上安装与简单示例 

(小伙子默认的是python3.6啊啊啊啊啊,要从anaconda进入刚刚装的那个python3.5里面哦!~)

正确尝试:进入Anaconda Prompt-python里面,进入安装的名叫tensorflow的环境(我们装的python3.5.2记得吗?~),键入python,然后再键入import tensorflow as tf

在这里可以找到Anaconda Prompt-python:

详解TensorFlow在windows上安装与简单示例 

详解TensorFlow在windows上安装与简单示例

打开Anaconda Navigator(开始菜单->Anaconda 3->Anaconda Navigator),搞一个spyder玩,点击spyder下面的“install”,安装好就变成“Launch”了,点击就可以进去了。

详解TensorFlow在windows上安装与简单示例

在spyder里对tensorflow说Hello!

详解TensorFlow在windows上安装与简单示例

输出:

详解TensorFlow在windows上安装与简单示例 

(嘿嘿嘿哈哈哈我感觉我好像成功了!!!你呢?~~)

参考tensorflow官方文档,请上英文官网,中文社区似乎没有更新windows上的安装

TensorFlow例程上手

装了个新东西,我们先把它用起来吧!

概念什么的跑完第一个小程序再看!

找点成就感才好继续下去!

示例来源:MINIST For ML Beginners

MINST数据集:

  1. 55000训练集,10000测试集,5000验证集
  2. 每张图片都是28pixels*28pixels

代码:

#获得数据集
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

import tensorflow as tf

#输入图像数据占位符
x = tf.placeholder(tf.float32, [None, 784])

#权值和偏差
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))

#使用softmax模型
y = tf.nn.softmax(tf.matmul(x, W) + b)

#代价函数占位符
y_ = tf.placeholder(tf.float32, [None, 10])

#交叉熵评估代价
cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))

#使用梯度下降算法优化:学习速率为0.5
train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)

#Session
sess = tf.InteractiveSession()

#初始化变量
tf.global_variables_initializer().run()

#训练模型,训练1000次
for _ in range(1000):
 batch_xs, batch_ys = mnist.train.next_batch(100)
 sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})

#计算正确率
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))

accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))

print(sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels}))

运行结果:输出显示得到模型的准确率

详解TensorFlow在windows上安装与简单示例

结语

昨天花费了大半天部署环境,不但一无所获且搞得焦头烂额。今天再战,索性边做边写,好像和旁边的人在聊天一样。嗯,心情愉悦的时候容易做出东西。时间很宝贵,但还是希望你的学习曲线不要太陡峭,希望你能愉快地走进新领域。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现文本文件合并
Dec 29 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
Mar 22 Python
Python3基于sax解析xml操作示例
May 22 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
python3调用百度翻译API实现实时翻译
Aug 16 Python
python实现机器学习之多元线性回归
Sep 06 Python
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
Jul 01 Python
Python-Tkinter Text输入内容在界面显示的实例
Jul 12 Python
深入学习python多线程与GIL
Aug 26 Python
Python全局锁中如何合理运用多线程(多进程)
Nov 06 Python
用Python制作音乐海报
Jan 26 Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 Python
python 中if else 语句的作用及示例代码
Mar 05 #Python
运用TensorFlow进行简单实现线性回归、梯度下降示例
Mar 05 #Python
tf.truncated_normal与tf.random_normal的详细用法
Mar 05 #Python
用tensorflow搭建CNN的方法
Mar 05 #Python
利用TensorFlow训练简单的二分类神经网络模型的方法
Mar 05 #Python
python使用Pycharm创建一个Django项目
Mar 05 #Python
python爬虫基本知识
Mar 05 #Python
You might like
shopex中集成的站长统计功能的代码简单分析
2011/08/11 PHP
ecshop实现smtp发送邮件
2015/02/03 PHP
PHP远程调试之XDEBUG
2015/12/29 PHP
php实现中文转数字
2016/02/18 PHP
thinkPHP使用pclzip打包备份mysql数据库的方法
2016/04/30 PHP
php中preg_replace_callback函数简单用法示例
2016/07/21 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
Javascript 写的简单进度条控件
2008/01/22 Javascript
js删除所有的cookie的代码
2010/11/25 Javascript
JavaScript在XHTML中的用法详解
2013/04/11 Javascript
JS文本获得焦点清除文本文字的示例代码
2014/01/13 Javascript
JSON中双引号的轮回使用过程中一定要小心
2014/03/05 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
Js控制滑轮左右滑动实例
2015/02/13 Javascript
JavaScript中关联原型链属性特性
2016/02/13 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
js实现一个页面多个倒计时的3种方法
2019/02/25 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
详解vue中v-model和v-bind绑定数据的异同
2020/08/10 Javascript
[54:30]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python文件夹与文件的相关操作(推荐)
2016/07/25 Python
python WindowsError的错误代码详解
2017/07/23 Python
python编程之requests在网络请求中添加cookies参数方法详解
2017/10/25 Python
基于Python Numpy的数组array和矩阵matrix详解
2018/04/04 Python
Python连接Redis的基本配置方法
2018/09/13 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
HTML5实现移动端点击翻牌功能
2020/10/23 HTML / CSS
求职简历中个人的自我评价
2013/12/01 职场文书
优秀交警事迹材料
2014/01/26 职场文书
2014年感恩母亲演讲稿
2014/05/27 职场文书
2014优秀党员事迹材料
2014/08/14 职场文书
2014年终工作总结范本
2014/12/15 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
vue cli4中mockjs在dev环境和build环境的配置详情
2022/04/06 Vue.js
html中相对位置与绝对位置的具体使用
2022/05/15 HTML / CSS