一 例項描述
在作用域下,可以使用get_variable和巢狀variable_scope。
get_variable建立兩個同樣名字的變數是行不通的,如下**會報錯。
var1 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
var2 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
如果真的想這麼做,可以使用variable_scope將它們隔開,見下面**
二 **
import tensorflow as tf
tf.reset_default_graph()
#var1 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
#var2 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
with tf.variable_scope("test1", ):
var1 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
with tf.variable_scope("test2"):
var2 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
print ("var1:",var1.name)
print ("var2:",var2.name)
三 執行結果
var1: test1/firstvar:0
var2: test2/firstvar:0
四 說明
var1和var2都使用firstvar的名字來定義。通過輸出可以看出,其生成的兩個變數var1和var2是不同的,它們作用在不同的scope下,這就是scope的作用。
scope還支援巢狀,見下面**。
五 **
import tensorflow as tf
tf.reset_default_graph()
#var1 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
#var2 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
with tf.variable_scope("test1", ):
var1 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
with tf.variable_scope("test2"):
var2 = tf.get_variable("firstvar",shape=[2],dtype=tf.float32)
print ("var1:",var1.name)
print ("var2:",var2.name)
六 執行結果
var1: test1/firstvar:0
var2: test1/test2/firstvar:0
tensorflow 卷積 設定特定卷積核
映象問題 pytorch 自定義卷積核進行卷積 卷積核訂製 有時想用tensorflow的conv2d的卷積操作,實現一些特定的濾波操作,如patch求和 計算梯度等,這時可以通過設計特定的卷積核來實現功能。先看tf.nn.conv2d的各個引數 tf.nn.conv2d input,filter,...
TensorFlow在windows 下的安裝
再說一句 本文為那些想要搭建tensorflow的童鞋提出可行方案,只想以博主慘痛的經歷為你們填好不必要的坑,讓你們輕裝上陣,將重點放在後面的學習中。注意版本,樓主選擇的是4.2.0的anaconda,它自帶python3.5,tensorflow要用在python3.5上,所以選擇這個版本 然後安...
TensorFlow在Windows上的安裝之路
google上點了無數的連線,翻了無數的帖子,因版本不匹配問題,將python cuda解除安裝又重灌。搗鼓了一天,終於把tensorflow環境搭建好了。整理了兩個比較有用的帖子,1 知乎回答 手把手教你搭建谷歌tensorflow深度學習開發環境!2 windows環境下anaconda安裝te...