【问题标题】:Why we need fine tune word embedding in recurrent neural networks?为什么我们需要在递归神经网络中微调词嵌入?
【发布时间】:2016-06-08 23:49:30
【问题描述】:

在theano关于RNN的教程中,在最后部分提到了

我们通过在每次更新后对其进行归一化来将词嵌入保留在单位球上:

self.normalize = theano.function(inputs=[],
                                  updates={self.emb:
                                              self.emb /
                                              T.sqrt((self.emb**2)
                                              .sum(axis=1))
                                              .dimshuffle(0, 'x')})
                                              .sum(axis=1))
                                              .dimshuffle(0, 'x')})

我在网上搜了一下,只找到了论文Investigation of Recurrent-Neural-Network Architectures and Learning Methods for Spoken Language Understanding在第3.5.1章提到它是fine-tuning word embedding。

我不明白为什么我们可以微调词嵌入。 self.emb 是这个 RNN 模型的输入,对吧?我们如何改变输入值?

【问题讨论】:

    标签: nlp theano recurrent-neural-network


    【解决方案1】:

    我遇到了这个问题,这是我的理解:

    其实self.emb并不是纯粹RNN的输入,它还喜欢一部分参数(或word2vec中的向量),经过训练以适应ATIS中的单词。

    当我们把它当作参数时,微调是合理的。

    但是当我们把它当作输入时,归一化就变得合理了。

    另外,我看了你提到的那篇论文,我认为微调不包含归一化,因为微调是一种监督学习,但归一化只是对数据的处理。

    【讨论】:

      猜你喜欢
      • 2016-11-28
      • 1970-01-01
      • 2017-08-29
      • 2019-01-31
      • 1970-01-01
      • 2015-05-28
      • 1970-01-01
      • 2021-08-30
      • 1970-01-01
      相关资源
      最近更新 更多