1
在Sharing Variable教程中,它說明如何使用函數get_variable()
重用先前創建的變量。瞭解Tensorflow中的_linear函數
with tf.variable_scope("foo"): # Creation
v = tf.get_variable("v", [1])
with tf.variable_scope("foo", reuse=True): # Re-using
v1 = tf.get_variable("v", [1])
但_linear()
功能的here實施,get_variable()
功能的使用方法如下。
with vs.variable_scope(scope) as outer_scope:
weights = vs.get_variable(
_WEIGHTS_VARIABLE_NAME, [total_arg_size, output_size],
dtype=dtype,
initializer=kernel_initializer)
據我所知_linear()
功能是用來做操作args * W + bias
。這裏權重(W)必須是可重用的。
但他們在函數裏面使用_linear()
函數,我認爲每次都會創建一個新變量。但是W
必須可以重用於神經網絡。
我在尋求理解這裏發生了什麼。