Na desistência, conforme descrito em http://www.cs.toronto.edu/~hinton/absps/JMLRdropout.pdf , os pesos não são mascarados. Em vez disso, as ativações dos neurônios são mascaradas, por exemplo, como é apresentada para o treinamento (ou seja, a máscara é aleatória para cada corrida para frente e gradiente de retorno, nunca repetida).
As ativações são mascaradas durante a passagem para frente e os cálculos de gradiente usam a mesma máscara durante a propagação de retorno desse exemplo. Isso pode ser implementado como um modificador dentro de uma descrição da camada ou como uma camada dropout separada.
Durante a fase de atualização de peso, normalmente aplicada em um minilote (em que cada exemplo teria uma máscara diferente aplicada), não há mais uso de máscaras de eliminação. Os valores de gradiente usados para atualização já foram afetados pelas máscaras aplicadas durante a propagação de retorno.
Encontrei uma referência útil para aprender como o abandono funciona, talvez para se implementar, é o Deep Learn Toolbox for Matlab / Octave.