【发布时间】:2021-07-24 20:16:22
【问题描述】:
我正在尝试按照本指南来实现 seq2seq 机器翻译模型:https://www.tensorflow.org/tutorials/text/nmt_with_attention
本教程的Encoder 有一个initialize_hidden_state() 函数,用于生成全0 作为编码器的初始状态。但是我有点困惑为什么这是必要的。据我所知,只有在调用 encoder 时(在 train_step 和评估中),它们是使用 initialize_hidden_state() 函数初始化的。我的问题是 1.) 这个初始状态的目的是什么? Keras 层不会自动初始化 LSTM 状态吗? 2.) 如果编码器总是使用initialize_hidden_state() 生成的初始状态调用,为什么不总是用所有 0 个隐藏状态初始化 encoder?
【问题讨论】:
-
SO 用于编码问题。关于机器学习理论的问题,有CrossValidated和Data Science StackExchange。
标签: tensorflow lstm machine-translation seq2seq