gpt4 book ai didi

tensorflow - 在 Tensorflow 中生成特殊输出词后如何停止 RNN?

转载 作者:行者123 更新时间:2023-12-02 03:18:24 27 4
gpt4 key购买 nike

我想实现一个用于序列到序列学习的编码器-解码器模型。

编码器逐字读取输入序列并更新其隐藏状态。

解码器使用编码器的隐藏状态来初始化它的隐藏状态。然后根据最后生成的输出 (y(t-1)) 及其隐藏状态生成输出。我想在生成特殊输出 () 时停止此过程。事实上,我希望能够生成不同长度的输出。我如何在 Tensorflow 中做到这一点?

最佳答案

我想你想要像 tf.nn.rnnsequence_length 这样的东西。我也想要,但是TensorFlow好像没有。

到目前为止,我一直在做的事情是找到一个解决此限制的好方法,即在训练时间用 EOS 符号填充解码器标签。通常,您只需要其中一个,但装很多也没什么坏处。

在执行时,您可以手动控制每次迭代以在生成第一个 EOS 时停止,或者只运行预定义数量的时间步长,然后从输出中删除额外的 EOS 符号。解码器很快了解到,在第一个 EOS 之后,可能只会有更多的 EOS。

关于tensorflow - 在 Tensorflow 中生成特殊输出词后如何停止 RNN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35147630/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com