Aqui, a resposta se refere a gradientes de fuga e explosão que têm sigmoid
funções de ativação semelhantes, mas, eu acho, Relu
tem uma desvantagem e é seu valor esperado. não há limitação para a saída do Relu
e, portanto, seu valor esperado não é zero. Lembro-me da época anterior à popularidade Relu
disso tanh
ser a mais popular entre os especialistas em aprendizado de máquina sigmoid
. O motivo foi que o valor esperado de tanh
era igual a zero e ajudou a aprender em camadas mais profundas a ser mais rápido em uma rede neural. Relu
não possui essa característica, mas por que está funcionando tão bem se colocarmos de lado sua vantagem derivativa. Além disso, acho que o derivado também pode ser afetado. Porque as ativações (saída deRelu
) estão envolvidos no cálculo das regras de atualização.
fonte
CNN
normalização típica a saída dorelu
não é comum? Pelo menos eu nunca vi isso.Respostas:
A maior vantagem do ReLu é de fato a não saturação de seu gradiente, o que acelera bastante a convergência da descida do gradiente estocástico em comparação com as funções sigmoides / tanh ( artigo de Krizhevsky et al).
Mas não é a única vantagem. Aqui está uma discussão sobre os efeitos de esparsidade das ativações ReLu e a regularização induzida. Outra propriedade interessante é que, comparada aos neurônios tanh / sigmóides que envolvem operações caras (exponenciais, etc.), a ReLU pode ser implementada simplesmente limitando uma matriz de ativações a zero.
Mas eu não estou convencido de que grande sucesso de redes neurais modernos é devido a Relu sozinho . Novas técnicas de inicialização, como inicialização de Xavier, desistência e (mais tarde) batchnorm também tiveram um papel muito importante. Por exemplo, o famoso AlexNet usou ReLu e abandono.
Então, para responder à sua pergunta: ReLu possui propriedades muito agradáveis, embora não sejam ideais . Mas ele realmente prova a si mesmo quando combinado com outras ótimas técnicas, que, a propósito, resolvem problemas que não são do centro zero que você mencionou.
UPD: A saída ReLu não é realmente centralizada em zero e prejudica o desempenho da NN. Mas esse problema específico pode ser resolvido por outras técnicas de regularização, por exemplo, batchnorm, que normaliza o sinal antes da ativação :
fonte