本文介绍了详解tensorflow在windows上安装与简单示例,分享给大家,具体如下:
安装说明
平台:目前可在ubuntu、mac os、windows上安装
版本:提供gpu版本、cpu版本
安装方式:pip方式、anaconda方式
tips:
- 在windows上目前支持python3.5.x
- 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
(嘻嘻,第一步成功了,开心点)
2.检测目前安装了哪些环境:conda info --envs
(只有一个呀!不怕,继续来!)
3.检查目前有哪些版本的python可以安装:conda search --full-name python
(好多呀,要哪个呢?嘻嘻当然是python3.5啦)
4.安装不同版本的python:conda create --name tensorflow python=3.5
(猜想输入python=3.5版本后,系统会自动选择一个3.5.x的版本吧)
(python3.5.3要不要?实验室服务器上是3.5.2,统一好啦!)
(好啦,go!)
(嘻嘻!安好啦!又离成功近了一步!)
5.按照提示,激活之:activate tensorflow
(嘻嘻它有了一顶小帽子~代表我的当前环境哦)
6.确保名叫tensorflow的环境已经被成功添加:conda info --envs
(bravo!)
7.检查新环境中的python版本:python --version
(^^开心开心~)
8.退出当前环境:deactivate
(小帽子掉了)
9.切换环境:activate tensorflow
想切换到哪个环境就 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
(好吧,先是打错,接下来又这样!我不知道该怎么办了(ㄒoㄒ)/~~)
2.另一种尝试:pip install tensorflow
(划重点了,原来是这样子!我是amd的卡,对应的不一样!)
3.确认tensorflow安装成功:
错误尝试:直接在cmd里面键入python,然后键入import tensorflow as tf
(小伙子默认的是python3.6啊啊啊啊啊,要从anaconda进入刚刚装的那个python3.5里面哦!~)
正确尝试:进入anaconda prompt-python里面,进入安装的名叫tensorflow的环境(我们装的python3.5.2记得吗?~),键入python,然后再键入import tensorflow as tf
在这里可以找到anaconda prompt-python:
打开anaconda navigator(开始菜单->anaconda 3->anaconda navigator),搞一个spyder玩,点击spyder下面的“install”,安装好就变成“launch”了,点击就可以进去了。
在spyder里对tensorflow说hello!
输出:
(嘿嘿嘿哈哈哈我感觉我好像成功了!!!你呢?~~)
参考 tensorflow官方文档,请上英文官网,中文社区似乎没有更新windows上的安装
tensorflow例程上手
装了个新东西,我们先把它用起来吧!
概念什么的跑完第一个小程序再看!
找点成就感才好继续下去!
minst数据集:
- 55000训练集,10000测试集,5000验证集
- 每张图片都是28pixels*28pixels
代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#获得数据集
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}))
|
运行结果:输出显示得到模型的准确率
结语
昨天花费了大半天部署环境,不但一无所获且搞得焦头烂额。今天再战,索性边做边写,好像和旁边的人在聊天一样。嗯,心情愉悦的时候容易做出东西。时间很宝贵,但还是希望你的学习曲线不要太陡峭,希望你能愉快地走进新领域。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/darlingwood2013/article/details/60322258