我遵循了seq2seq模型的教程。
我做了所有事情,虽然这个人使用了一个未知的,这是生成随机句子的helper.py模块(例如[6, 5, 9, 4]
)。
现在,如果我理解正确的话,seq2seq模型会将单词放入词汇表中,将单词转换为数字,为它们指定一个索引(我不太确定它是一个索引,但它是类似的东西)然后使用这些数字代表这个词。
他使用此代码:
batch_size = 100
batches = helpers.random_sequences(length_from=3, length_to=8,
vocab_lower=2, vocab_upper=10,
batch_size=batch_size)
和此:
def next_feed():
batch = next(batches)
encoder_inputs_, encoder_input_lengths_ = helpers.batch(batch)
decoder_targets_, _ = helpers.batch(
[(sequence) + [EOS] + [PAD] * 2 for sequence in batch]
)
return {
encoder_inputs: encoder_inputs_,
encoder_inputs_length: encoder_input_lengths_,
decoder_targets: decoder_targets_,
}
我怎么能写一个我可以使用的词汇?
编辑:为了给出更多背景,这就是他写的:
培训玩具任务
考虑复制任务 - 给出词汇表中随机的整数序列,学习记忆和重现输入序列。因为序列是随机的,所以它们不包含任何结构,与自然语言不同。
(然后他会显示帖子中的代码)