我試圖用tensorflow生成斐波納契數:F(n + 2)= F(n + 1)+ F(n)。每次運行我的代碼時,它都會產生不同的結果,非常奇怪。代碼很簡單,並粘貼在下面。這是張力流中的錯誤嗎?
import tensorflow as tf
a = tf.Variable(1)
b = tf.Variable(1)
c = tf.Variable(2)
sum=tf.add(a,b)
as0 = tf.assign(a,b)
as1=tf.assign(b, c)
as2=tf.assign(c, sum)
sess = tf.Session()
init = tf.global_variables_initializer()
sess.run(init)
for i in range(10):
print(sess.run([as2, as1,as0]))
你是什麼意思它返回不同的結果?我只是嘗試過,每次都是一樣的。似乎沒有正確地產生你的序列,雖然 – JCooke
這是一個有趣的!我每次都會得到不同的值,總是不正確的,並且總是第二和第三個元素相等,as2 [i] = as1 [i] + as1 [i-1]。我的猜測是,當你調用sess.run()時,你只是不知道圖表執行的順序是什麼,所以分配和總和是以錯誤的(每次可能不同的)順序執行的,到目前爲止這是可能的你們知道嗎? – gdelab
順便說一句,問題的標題太寬泛,你應該改變它來描述你的問題更好 – gdelab