1.1 Tensorflow笔记(基础篇): 图与会话,变量
图与会话
import tensorflow as tf
import os
# 取消打印 cpu,gpu选择等的各种警告
# 设置TF_CPP_MIN_LOG_LEVEL 的等级,1.1.0以后设置2后 只不显示警告,之前需要设置3,但设置3不利于调试
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
import time
# 创建一个常量 op, 产生一个 1x2 矩阵. 这个 op 被作为一个节点
# 加到默认图中.
# 构造器的返回值代表该常量 op 的返回值.
matrix1 = tf.constant([[3., 3.]])
# 创建另外一个常量 op, 产生一个 2x1 矩阵.
matrix2 = tf.constant([[2.], [2.]])
# 创建一个矩阵乘法 matmul op , 把 'matrix1' 和 'matrix2' 作为输入.
# 返回值 'product' 代表矩阵乘法的结果.
product = tf.matmul(matrix1, matrix2)
t1 = time.clock()
# session 会话在使用后
with tf.Session() as sess:
# 指定设备(是否指定cpu速度差距不大)
# with tf.device('/cpu:0'):
result = sess.run([product])
print(result)
t2 = time.clock()
运行结果
[array([[ 12.]], dtype=float32)]
0.08066363317567163
变量
state = tf.Variable(0, name='counter')
input = tf.constant(3.0)
input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)
output = tf.multiply(input1, input2)
with tf.Session() as sess:
print(sess.run([output], feed_dict={input1: [7.], input2: [2.]}))
# 运行结果
#[array([ 14.], dtype=float32)]