Isso é feito com referência ao documento Localização eficiente de objetos usando redes convolucionais e, pelo que entendi, a desistência é implementada em 2D.
Após ler o código de Keras sobre como o Spatial 2D Dropout é implementado, basicamente uma máscara binária aleatória de forma [batch_size, 1, 1, num_channels] é implementada. No entanto, o que esse Dropout 2D espacial faz exatamente com o bloco de forma de convolução de entrada [batch_size, height, width, num_channels]?
Meu palpite atual é que, para cada pixel, se alguma das camadas / canais do pixel tiver um valor negativo, todos os canais desse pixel serão padronizados como zero. Isso está correto?
No entanto, se meu palpite estiver correto, como o uso de uma máscara binária de forma [batch_size, height, width, num_channels] que estão exatamente na dimensão do bloco de entrada original fornece o abandono usual por elementos (isso é de acordo com o implementação dropout original do tensorflow que define o formato da máscara binária como o formato da entrada)? Como isso significaria, se algum pixel no bloco conv for negativo, o bloco inteiro será padronizado como 0. Essa é a parte confusa que eu não entendo direito.
fonte