4

我正在尝试添加一个 dropout 层,我收到了这个警告

WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:3445: calling dropout (from tensorflow.python.ops.nn_ops) with keep_prob is deprecated and will be removed in a future version.
Instructions for updating:
Please use `rate` instead of `keep_prob`. Rate should be set to `rate = 1 - keep_prob`.

我不明白我使用的是 rate 还是 keep_prob。我在dropout层的实现如下:

x = Dropout(rate=0.20)(x)

我使用 tensorflow 后端导入 keras。版本是:

Keras 2.2.4

张量流 1.13.1

如何检查 0.20 是否用作 rate 或 keep_prob?

提前致谢

4

2 回答 2

1

根据 keras 文档

keras.layers.Dropout(rate, noise_shape=None, seed=None)

所以,使用

x = Dropout(0.20)(x)

这里 0.20 将是​​速率。

于 2019-05-13T11:34:35.070 回答
0

它警告您不要使用 keep_prob。但是由于您使用的是速率,所以它将是速率,而不是 keep_prob。这是一个令人困惑的警告。要检查它把它设置为 1,如果它学习,那么它是 keep_prob,如果它没有,它就是辍学率!

于 2019-03-05T10:05:16.387 回答