gpt4 book ai didi

python - 如何在 Keras 中向 CuDNNGRU 或 CuDNNLSTM 添加循环丢失

转载 作者:太空宇宙 更新时间:2023-11-04 00:07:19 40 4
gpt4 key购买 nike

通过将其值作为层的参数传递,可以将循环丢失应用于 Keras 中的基本 LSTM 或 GRU 层。

CuDNNLSTM 和 CuDNNGRU 是与 CUDA 兼容的 LSTM 和 GRU 层。主要优势是它们在训练期间的速度提高了 10 倍。然而,它们缺乏 Keras 中 LSTM 或 GRU 层的一些优点,即传递 dropout 或循环 dropout 值的可能性。

虽然我们可以直接在模型中添加 Dropout 层,但似乎我们不能使用 Recurrent Dropout 来做到这一点。

我的问题是:How to add recurrent dropout to CuDNNGRU or CuDNNLSTM in Keras ?

最佳答案

我不认为我们可以拥有它,因为它甚至在低级别(即 cuDNN)中不受支持。 From François Chollet Keras 的创建者:

Recurrent dropout is not implemented in cuDNN RNN ops. At the cuDNN level. So we can't have it in Keras.

The dropout option in the cuDNN API is not recurrent dropout (unlike what is in Keras), so it is basically useless (regular dropout doesn't work with RNNs).

Actually using such dropout in a stacked RNN will wreck training.

关于python - 如何在 Keras 中向 CuDNNGRU 或 CuDNNLSTM 添加循环丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53656220/

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