写给设计师的人工智能指南:Tensorflow 快速入门

949 阅读3分钟
原文链接: mp.weixin.qq.com

本篇是《写给设计师的人工智能指南》系列的第3篇,本期主要想帮助大家最快速度地上手tensorflow。


前2期的文章可以点击以下链接,快速回顾:

给设计师的人工智能指南:图像

给设计师的人工智能指南:虚拟私人助理



以下为正文


Tensorflow的环境,我采用的是Docker搭建的。


Docker通常用于如下场景:

  • web应用的自动化打包和发布;

  • 自动化测试和持续集成、发布;

  • 在服务型环境中部署和调整数据库或其他的后台应用;

  • 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。


1、下载Docker

https://download.docker.com/mac/stable/Docker.dmg

如果你用的是window系统,选择Docker for window就行啦;


2、运行Docker

安装好docker后,在Mac的Launchpad打开docker.app,等待一会就好啦~

如上图所示,docker is running。


3、打开终端,运行hello docker

在终端中输入:

docker run hello-world


出现下图,表示docker正常运行啦。


4、安装tensorflow镜像

我用的是阿里云的镜像,终端输入:

git clone https://github.com/denverdino/TensorFlow-Examples


下载完成后,终端输入

cd TensorFlow-Examples


5、配置容器

阿里云的Docker镜像里已经做好了模版docker-compose.yml

直接在终端里输入:

docker-compose up -d


等待片刻


6、启动容器

终端输入:

docker-compose ps


会看到成功启动字样,可以直接通过 http://127.0.0.1:8888/ 从浏览器中访问Tensorflow的Jupyter交互实验环境。

登录密码为: tensorflow


7、新建一个Notebooks

登陆后,可以看到下图所示的界面:

新建个Notebooks,选择Python2


8、运行hello tensorflow


TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。


TensorFlow 程序通常被组织成一个构建阶段和一个执行阶段

在构建阶段, operation 的执行步骤被描述成一个图;

在执行阶段, 使用会话Session 执行执行图中的 op(operation)


我画了张图,表示最基本的一个tensorflow程序:


代码如下:


import tensorflow as tf


#1构建阶段

#1.1常量

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

a = tf.constant(10)

b = tf.constant(32)


#1.2变量

state = tf.Variable(2 , name='counter')


#1.3 图中的节点被称之为 op (operation 的缩写)

c=a+b

n_val = tf.add(state,c)

update = tf.assign(state,n_val)


#2执行阶段

#2.1初始化变量,tf的变量需要初始化后才能执行

init = tf.global_variables_initializer()


#2.2启动默认图,及运行

sess = tf.Session()

sess.run(init)


#2.3循环执行单个op

for _ in range(3): 

   step=sess.run(update) 

   print(step)


#2.4执行多个op    

result=sess.run([state,hello])


#2.5打印结果

print result


把代码贴到新建的Notebooks里,运行下吧~


这就是最基本的tensorflow程序。

希望可以帮你快速进入tensorflow的世界~~~



参考文章:

hacker.duanshishi.com/?p=1639


yq.aliyun.com/articles/60…


www.open-open.com/lib/view/op…






欢迎长按二维码

关注本号

本号发布内容主要为设计&科技方面