import tensorflow as tf
x=tf.Variable([1,2])
a=tf.constant([3,3])
sub=tf.subtract(x,a) #增加一個減法op
add=tf.add(x,sub) #增加一個加法op
#注意變量再使用之前要再sess中做初始化,但是下邊這種初始化方法不會指定變量的初始化順序
init=tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
print(sess.run(sub))
print(sess.run(add))
#################分割線#####################
#創建一個名字為‘counter’的變量 初始化0
state=tf.Variable(0,name='counter')
new_value=tf.add(state,1) #創建一個op,作用是使state加1
update=tf.assign(state,new_value) #賦值op
init=tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
print(sess.run(state))
for _ in range(5):
sess.run(update)
print(sess.run(state))
看上邊的代碼,你會注意到與普通的編程有些區別:
- tensorflow中會用到init=tf.global_variables_initializer(),這種變量初始化的東西,但是明明在上邊定義的時候已經初始化了啊,哈哈,這只能說你在python中確實初始化了,但是在tf的session中你並沒有初始化;
- update=tf.assign(state, new_value) 賦值操作,直接用接口而不是用等號,這也就說明tensorflow不是用python實現的,是有c++實現的,你如果想把python中的值在session中修改,必須要用這種接口的方式
目錄:
- tensorflow簡介、目錄
- tensorflow中的圖(02-1)
- tensorflow變量的使用(02-2)
- tensorflow中的Fetch、Feed(02-3)
- tensorflow版helloworld---擬合線性函數的k和b(02-4)
- tensorflow非線性回歸(03-1)
- MNIST手寫數字分類simple版(03-2)
- 二次代價函數、交叉熵(cross-entropy)、對數似然代價函數(log-likelihood cost)(04-1)
- 多層網絡通過防止過擬合,增加模型的准確率(04-2)
- 修改優化器進一步提升准確率(04-3)
- 手寫數字識別-卷積神經網絡cnn(06-2)
- 循環神經網絡rnn與長短時記憶神經網絡簡述(07-2)
- 循環神經網絡lstm代碼實現(07-3)
- tensorflow模型保存和使用08
- 下載inception v3 google訓練好的模型並解壓08-3
- 使用inception v3做各種圖像分類識別08-4
- word2vec模型訓練簡單案例
- word2vec+textcnn文本分類簡述及代碼
