影视处理

Tensorflow 1:Hello World

2020-03-17  本文已影响0人  古风子
tf

基于TF1

Hello World

在jupyter notebook中输入一下代码:

import tensorflow as tf

hello = tf.constant('Hello World, TensorFlow!')#创建一个常量
sess = tf.Session()
print sess.run(hello)

a = tf.constant(10)
b = tf.constant(32)
print sess.run(a+b)

输出:

Hello World, TensorFlow!
42

基本流程

一个完成的Tensorflow程序创建过程

  1. 创建一个图(没有创建的情况下,会默认创建一个)
import tensorflow as tf
graph = tf.Graph()
with graph.as_default():
  one = tf.constant(1.0, name="one")

Tensorflow使用计算图表示计算任务,然后在一个会话里进行启动; TensorFlow Python 库有一个默认图 (default graph);以上的前三行行代码,创建了一个空的计算图。实际使用中可以不创建,因为Tensorflow会默认创建一个图

  1. 添加各个节点(常量,变量等各个操作)
import tensorflow as tf

a = tf.constant(3.0, name="a")
b = tf.constant(4.0, name="b")
a_b = tf.add(a, b,name="add")
    
with tf.Session() as sess:
    print("相加后的结果为")
    print(sess.run(a_b))
    # 添加board记录文件
    file_write = tf.summary.FileWriter('/home/jiadongfeng/tensorflow/board/', graph=sess.graph)

以上代码执行后,在TensorBoard中查看到的计算图为:


计算图
  1. 如果有变量,则进行变量初始化
import tensorflow as tf

a = tf.constant(3.0, name="a")
b = tf.constant(4.0, name="b")
a_b = tf.add(a, b,name="add")

kernel = tf.Variable(a, name="kernel")
#变量初始化操作
init = tf.global_variables_initializer()

with tf.Session() as sess:
   
    sess.run(init)#执行变量初始化
    print("kernel:")
    print(sess.run(kernel))#执行变量复制
    print("相加后的结果为")
    print(sess.run(a_b))
    # 添加board记录文件
    file_write = tf.summary.FileWriter('/home/jiadongfeng/tensorflow/board/', graph=sess.graph)

输出结果:

kernel:
3.0
相加后的结果为
7.0

添加一个kernel变量后的计算图为:

变量节点

你可以自行验证讲kernel和a_b相加后的计算图:

常量和变量相加

右侧的kenerl子图,用来表示变量,执行完tf.Variable()函数后,一共产生了三个结点:

init操作表示独立的节点,kenel以来与init操作来进行初始化赋值

  1. 创建会话并执行
    最后是通过 tf.Session()创建会话并执行

参考文档

http://looop.cn/?p=3365

上一篇下一篇

猜你喜欢

热点阅读