Esto se refiere al documento Localización eficiente de objetos mediante redes convolucionales , y por lo que entiendo, el abandono se implementa en 2D.
Después de leer el código de Keras sobre cómo se implementa el Dropout 2D espacial, básicamente se implementa una máscara binaria aleatoria de forma [batch_size, 1, 1, num_channels]. Sin embargo, ¿qué le hace exactamente este Dropout 2D espacial al bloque de convolución de entrada de forma [batch_size, height, width, num_channels]?
Mi conjetura actual es que para cada píxel, si alguna de las capas / canales del píxel tiene un valor negativo, todos los canales de ese píxel estarán predeterminados a cero. ¿Es esto correcto?
Sin embargo, si mi suposición es correcta, entonces, ¿cómo el uso de una máscara binaria de forma [lote_tamaño, altura, ancho, número_canales] que están exactamente en la dimensión del bloque de entrada original da el abandono habitual de elementos (esto está de acuerdo con el ¿La implementación de deserción original de tensorflow que establece la forma de la máscara binaria como la forma de la entrada)? Debido a que significaría que si cualquier píxel en el bloque conv es negativo, entonces el bloque conv completo estará predeterminado en 0. Esta es la parte confusa que no entiendo del todo.
fuente