在學習TensorFlow的時候,按照書上的指導編寫代碼,因爲版本的原因出現很多問題,記錄一下以待改善:
1.ValueError: Cannot evaluate tensor using `eval()`
#矩陣乘法通過tf.matmul函數完成
v1=tf.constant([[1.0,2.0],[3.0,4.0]])
v2=tf.constant([[5.0,6.0],[7.0,8.0]])
print((v1*v2).eval()) # *是元素之間直接相乘
print(tf.matmul(v1,v2).eval())
運行時編譯器報錯:ValueError: Cannot evaluate tensor using `eval()`: No default session is registered. Use `with sess.as_default()`
or pass an explicit session to `eval(session=sess)`
根據編譯器的提示,得知不能直接使用“.eval()“”這樣的語法,要改爲“with sess.as_default()”或者“eval(session=sess)”
將代碼改爲:
#矩陣乘法通過tf.matmul函數完成
v1=tf.constant([[1.0,2.0],[3.0,4.0]])
v2=tf.constant([[5.0,6.0],[7.0,8.0]])
#print((v1*v2).eval()) # *是元素之間直接相乘
with tf.Session() as sess:
print((v1*v2).eval())
#print(tf.matmul(v1,v2).eval())
with tf.Session() as sess:
print(tf.matmul(v1,v2).eval())
就沒有問題了
tf.select->tf.where
tf.initialize_all_variables()->tf.global_variables_initializer()