六.TensorFlow之Session會話,變數,傳入值
阿新 • • 發佈:2019-01-25
1.Session會話,直接上程式碼.
import tensorflow as tf matrix1 = tf.constant([[3,3]]) matrix2 = tf.constant([[2], [2]]) #matrix multiply #np.dot(m1,m2) product = tf.matmul(matrix1,matrix2) #method 1 ''' sess = tf.Session() result = sess.run(product) print(result) sess.close() ''' ''' >>> = RESTART: /Users/dongsai/Documents/MachineLearning/tensorflow/tf_lesson6.py = [[12]] ''' #method 2 #在這裡面的sess自動被close掉 with tf.Session() as sess: result = sess.run(product) print(result)
2.變數
import tensorflow as tf state = tf.Variable(0,name='counter') print(state.name) #counter:0 one = tf.constant(1) new_value = tf.add(state,one) #當前new_value update = tf.assign(state,new_value) #must have if define variable init = tf.initialize_all_variables() with tf.Session() as sess: #初始化 sess.run(init) for _ in range(3): sess.run(update) print(sess.run(state))
= RESTART: /Users/dongsai/Documents/MachineLearning/tensorflow/tf_lesson7.py = counter:0 WARNING:tensorflow:From /Users/dongsai/Documents/MachineLearning/tensorflow/tf_lesson7.py:14: initialize_all_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02. Instructions for updating: Use `tf.global_variables_initializer` instead. 1 2 3
3.傳入值
import tensorflow as tf
#dtype is float32
input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)
'''
output = tf.mul(input1,input2)
Traceback (most recent call last):
File "/Users/dongsai/Documents/MachineLearning/tensorflow/tf_lesson8.py", line 7, in <module>
output = tf.mul(input1,input2)
AttributeError: module 'tensorflow' has no attribute 'mul'
舊版本用tf.mul()
'''
output = tf.multiply(input1,input2)
with tf.Session() as sess:
print(sess.run(output,feed_dict = {input1: [7.],input2:[2.]}))