1. 第一个TensorFlow程序
import tensorflow as tf
a = tf.constant(2)
b = tf.constant(3)
x = tf.add(a, b)
with tf.Session() as sess:
print (sess.run(x))
输出:5
2. 使用TensorBoard进行可视化
代码如下:
import tensorflow as tf
a = tf.constant(2)
b = tf.constant(3)
x = tf.add(a, b)
with tf.Session() as sess:
writer = tf.summary.FileWriter('./graphs', sess.graph)
print (sess.run(x))
writer.close()
代码保存为:visual.py,在terminal下运行:
$python visual.py
$tensorboard --logdir="./graphs" --port 6006
在浏览器中打开http://127.0.1.1:6006, 如下界面
从上图中可以看出使用Const和Const_1作为输入名,可以按照如下方式进行修改,代码修改如下
import tensorflow as tf
a = tf.constant(2, name="a")
b = tf.constant(3, name="b")
x = tf.add(a, b, name="add")
with tf.Session() as sess:
writer = tf.summary.FileWriter('./graphs', sess.graph)
print (sess.run(x))
writer.close()
得到如下的可视化图形
3. tensorflow操作
a = tf.constant([3, 6])
b = tf.constant([2, 2])
tf.add(a, b) #>> [5, 8]
tf.add_n([a, b, b]) #>> [7,10]. 等价与 a+b+b
tf.mul(a, b) #>> [6, 12], mul是各个元素相乘
tf.matmul(a, b) #>> 值错误
tf.matmul(tf.reshape(a, [1, 2]), tf.reshape(b, [2, 1])) #>> [[18]]
tf.div(a, b) #>> [1,3]
tf.mod(a, b) #>> [1,0]
4.tensorflow数据类型
Tensorflow使用python内置的类型:boolean, numeric(int, float), strings0-d tensorflow或‘标量(scalar)’
t_0 = 19
tf.zeros_like(t_0) # ==> 0
tf.ones_like(t_0) # ==> 1
1-d tensorflow或“矢量(vector)”
t_1 = ['apple', 'peach', 'banana']
tf.zeros_like(t_1) # ==> ????
2-d tensorflow,或“矩阵(matrix)”
t_2 = [[True, False, False],
[False, False, True],
[False, True, False]]
tf.zeros_like(t_2) # ==> 2x2 tensor, all elements are False
tf.ones_like(t_2) # ==> 2x2 tensor, all elements are True