web-dev-qa-db-fra.com

Keras: la différence entre les abandons LSTM et les abandons récurrents LSTM

De la documentation de Keras:

abandon: Flottant entre 0 et 1. Fraction des unités à abandonner pour la transformation linéaire des entrées.

récurrent_dropout: Flottant entre 0 et 1. Fraction des unités à déposer pour la transformation linéaire de l'état récurrent.

Quelqu'un peut-il indiquer où sur l’image en dessous de chaque abandon se produit?

enter image description here

48
Alonzorz

Je suggère de jeter un coup d'oeil à (la première partie de) ce document . Un décrochage régulier est appliqué aux entrées et/ou aux sorties, ce qui signifie que les flèches verticales de x_t et à h_t. Dans votre cas, si vous l'ajoutez comme argument à votre calque, les entrées seront masquées; vous pouvez ajouter un calque de suppression après votre calque récurrent pour masquer également les sorties. Les abandons récurrents masquent (ou "abandonnent") les connexions entre les unités récurrentes; ce serait les flèches horizontales dans votre image.

Cette photo est prise à partir du papier ci-dessus. A gauche, abandon régulier des entrées et des sorties. Sur la droite, les abandons réguliers PLUS les abandons récurrents:

This picture is taken from the paper above. On the left, regular dropout on inputs and outputs. On the right, regular dropout PLUS recurrent dropout.

(Ignorez la couleur des flèches dans ce cas; dans le papier, ils insistent sur le fait de garder les mêmes masques de suppression à chaque pas de temps)

52
Michele Tonutti