1

试图初始化我的seq2seq模型。我正在使用GRU Cells,但无法弄清楚Xavier-Initialization。 rnn_cell.py中的代码似乎不允许。有任何想法吗?需要手动执行此操作?GRU单元的Xavier初始化

THX

回答

2

小区的权重是created using tf.get_variable()而不指定initializer参数。从https://www.tensorflow.org/versions/r0.10/api_docs/python/state_ops.html#get_variable

如果initializerNone(缺省值),在可变范围通过的默认初始值将被使用。

因此,像下面应该工作:

cell = tf.nn.rnn_cell.GRUCell(256) 
with tf.variable_scope('RNN', initializer=tf.contrib.layers.xavier_initializer()): 
    outputs, state = tf.nn.dynamic_rnn(cell, ...)