如何从keras中的嵌入单词中恢复单词?

时间:2017-10-10 21:39:44

标签: python nlp deep-learning keras embedding

我现在正在使用Embedding图层来解决我的NLP问题。我的模型预测一个词作为答案。所以最终输出的形状是(None, vocab_size)

我的问题是如何在没有新Dense图层的情况下从嵌入的矢量中恢复原始单词?例如,x下面是(None, 4, 8) = (None, sequence_length, embedding_dim)。然后,我想从实际i-th word中提取最可能的x

...
inp = Input(shape=(max_length,), dtype='int32') # ex) ['who','are','you','?']
x = Embedding(output_dim=embd_dim,
              input_dim=vocab_size, 
              input_length=max_length, 
              name='my_emb')(inp)
answer = restore_word_from_embedded_data(x) # what i want to do. ex) 'tom'
# No, i want to extract a word without new Dense layer
# answer = Dense(vocab_size)(answer) from current Embedding weights, 'my_emb'.
...

以下是输入和嵌入的简短摘要。

input_6 (InputLayer)         (None, 4(seq_length))                          
_________________________________________________________________
embedding_9 (Embedding)      (None, 4(seq_length), 8(embed_dim))

0 个答案:

没有答案