TensorFlow学习1:基本用法

TensorFlow程序一般有两个过程,第一阶段需要定义计算图中所有的计算,第二个阶段为执行计算。

第一步:构造图

TensorFlow有一个默认图,op构造器可以为其增加节点。

创建一个矩阵乘法 'matmul ' op , 把 'matrix1' 和 'matrix2' 作为输入. 返回值 'product' 代表矩阵乘法的结果.


>>> import tensorflow as tf  
  
>>> matrix1=tf.constant([[3.,3.]]) #创建一个常量op  
  
>>> matrix2=tf.constant([[2.],[2.]])#创建一个常量op  
  
>>> product=tf.matmul(matrix1,matrix2)# 创建一个矩阵乘法matmul op ,把'matrix1' 和 'matrix2' 作为输入.  
  
# 返回值 'product' 代表矩阵乘法的结果. 

第二步:执行计算

默认图现在有三个节点, 两个 constant() op, 和一个matmul() op. 为了真正进行矩阵相乘运算, 并得到矩阵乘法的结果, 你必须在会话里启动这个图.

构造阶段完成后, 才能启动图. 启动图的第一步是创建一个 Session 对象, 如果无任何创建参数, 会话构造器将启动默认图.

启动默认参数 ‘sess=tf.Session(

调用sessrun()方法来执行矩阵乘法op'product'代表了矩阵乘法op的输出,传入它是向方法表明,我们希望取回矩阵乘法op的输出。整个执行过程是自动化的,会话负责传递op所需的全部输入. op通常是并发执行.函数调用 'run(product)'触发了图中三个 op (两个常量op和一个矩阵乘法 op)的执行.返回值 'result'是一个 numpy `ndarray`对象.

任务完成关闭会话.

>>> sess=tf.Session()
>>> result=sess.run(product)
>>> print result
[[ 12.]]
>>> sess.close()

运算示例:

x = tf.constant(10)
y = tf.constant(2)
z = tf.add(tf.div(x,y),tf.constant(1))

with tf.Session() as sess:
    output = sess.run(z)
    print(output)
6

猜你喜欢

转载自blog.csdn.net/softdiamonds/article/details/80324872