tensorflow学习之路---Session、Variable(变量)和placeholder

1、Session

'''
Session.run():首先里面的参数是一个API(函数的接口)的返回值或者是指定参数的值;功能:得知运算结果
有两种访问方式:直接建立或者运用with语句(这个会帮我们自动关闭会话)

'''

import tensorflow as tf

#创建两个参数
matrixl = tf.constant([[4,5]])#表示常量
matrix2 = tf.constant([[3],[5]])

#矩阵相乘

product = tf.matmul(matrixl,matrix2)

sess = tf.Session()
reslut = sess.run(product)
print(reslut)
sess.close()

with tf.Session() as sess1:
reslut = sess.run(product)
print(reslut)

 

2、Variable

定义变量的方式:

tf.Variable(初始值),其中的参数也可以是:name = " 字符串"

import tensorflow as tf

#定义变量,一定要能是变量
state = tf.Variable(0,name="counter")
#打印变量的名字
#print(state.name)
data = tf.constant(3)#定义常量

new_data = tf.add(state,data)
data2 = tf.assign(state,new_data)

init = tf.global_variables_initializer()#只有初始化所有的tf中的变量之后,才能使用

with tf.Session() as sess:
sess.run(init)
for i in range(3):
sess.run(data2)#要改变制定才参数的值,就要执行能够改变这个参数的值的函数
print(sess.run(state))

 

3、placeholder

#这个不需要初始化,但是要在Session.run()中的参数,不仅仅只有函数的返回值,还有
#feed_dict={}里面是字典的形式写入的,有多少个placeholder式的变量,就写多少个键值对

 

import tensorflow as tf

input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)

output = tf.subtract(input1,input2)

with tf.Session() as sess:
print(sess.run(output,feed_dict={input1:4,input2:6}))

 

注意:placeholder与Variable最大的不同是,placeholder不需要初始化

posted @ 2018-08-01 00:23  Myuniverse  阅读(91)  评论(0编辑  收藏  举报