Lem*_*mon 2 lstm tensorflow recurrent-neural-network
tensorflow配置dropout包装器具有三种不同的 dropout概率可以设置:input_keep_prob, output_keep_prob, state_keep_prob.
我想通过将variational_recurrent参数设置为 true 来为我的 LSTM 单元使用变分 dropout 。但是,我不知道必须使用三个 dropout 概率中的哪一个才能使变分 dropout 正常运行。
有人可以提供帮助吗?
根据用于实现variational_recurrent dropouts的这篇论文https://arxiv.org/abs/1512.05287,你可以考虑如下,
input_keep_prob - 丢失输入连接的概率。
output_keep_prob - 丢失输出连接的概率。
state_keep_prob - 退出循环连接的概率。看下图,
如果您将 设置variational_recurrent为 true,您将获得一个类似于右侧模型的RNN,否则左侧模型。
以上两种模型的基本区别是,
变分 RNN在每个时间步为输入、输出和循环层重复相同的 dropout 掩码(在每个时间步删除相同的网络单元)。
原生 RNN在每个时间步只为输入和输出使用不同的 dropout 掩码 (循环连接不使用 dropout,因为对这些连接使用不同的掩码会导致性能下降)。
上图中,彩色连接代表dropout连接,不同颜色对应不同dropout掩码。虚线对应没有丢失的标准连接。
因此,如果您使用变分 RNN,您可以根据您的要求设置所有三个概率参数。
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
2525 次 |
| 最近记录: |