GRU单元的Xavier初始化

时间:2016-08-17 15:43:21

标签: initialization tensorflow recurrent-neural-network gated-recurrent-unit

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

THX

1 个答案:

答案 0 :(得分: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, ...)