tanh vs. sigmoide en la red neuronal

16

Pido disculpas de antemano por el hecho de que todavía estoy avanzando en esto. Estoy tratando de entender los pros y los contras de usar tanh (mapa -1 a 1) versus sigmoide (mapa 0 a 1) para mi función de activación neuronal. De mi lectura sonaba como algo menor con diferencias marginales. En la práctica para mis problemas, encuentro que el sigmoide es más fácil de entrenar y, extrañamente, parece que el sigmoide encuentra una solución general mejor. Con esto quiero decir que cuando la versión sigmoidea termina de entrenar, funciona bien en el conjunto de datos de referencia (no entrenado), donde la versión de tanh parece ser capaz de obtener las respuestas correctas en los datos de entrenamiento mientras funciona mal en la referencia. Esto es para la misma arquitectura de red.

Una intuición que tengo es que con el sigmoide, es más fácil que una neurona se apague casi por completo, por lo que no proporciona entrada a las capas posteriores. El tanh tiene más dificultades aquí, ya que necesita cancelar perfectamente sus entradas, de lo contrario, siempre da un valor a la siguiente capa. Quizás esta intuición está mal sin embargo.

Post largo En pocas palabras, ¿cuál es el comercio, y debería hacer una gran diferencia?

Mastín
fuente

Respuestas:

23

En el libro "Redes neuronales: una base integral" de Symon Haykin hay una explicación a partir de la cual cito:

Para minimizar el tiempo de aprendizaje, se debe evitar el uso de entradas medias distintas de cero. Ahora, en lo que respecta al vector de señal aplicado a una neurona en la primera capa oculta de un perceptrón multicapa, es fácil eliminar la media de cada elemento de x antes de su aplicación a la red. Pero, ¿qué pasa con las señales aplicadas a las neuronas en las capas restantes ocultas y de salida de la red? La respuesta a esta pregunta radica en el tipo de función de activación utilizada en la red. Si la función de activación no es simétrica, como en el caso de la función sigmoidea, la salida de cada neurona se limita al intervalo [ 0 , 1 ] . Tal elección introduce una fuente de sesgo sistemáticoxx[0,1]para aquellas neuronas ubicadas más allá de la primera capa de la red. Para superar este problema, necesitamos utilizar una función de activación antisimétrica, como la función tangente hiperbólica. Con esta última opción, la salida de cada neurona puede asumir valores positivos y negativos en el intervalo , en cuyo caso es probable que su media sea cero. Si la conectividad de la red es grande, el aprendizaje de propagación hacia atrás con funciones de activación antisimétrica puede generar una convergencia más rápida que un proceso similar con funciones de activación no simétricas, para lo cual también hay evidencia empírica (LeCun et al.1991).[1,1]

La referencia citada es:

  • Y. LeCun, I. Kanter y SASolla: "Propiedades de segundo orden de las superficies de error: tiempo de aprendizaje y generalización", Avances en sistemas de procesamiento de información neural, vol. 3, págs. 918-924, 1991.

Otra referencia interesante es la siguiente:

  • Y. LeCun, L. Bottou, G. Orr y K. Muller: " Efficient BackProp ", en Orr, G. y Muller K. (Eds), Neural Networks: Tricks of the trade, Springer, 1998
tiagotvv
fuente
Las neuronas ReLU parecen funcionar bastante bien a pesar de su sesgo. ¿Tiene alguna idea sobre eso?
Ark-kun
@ Ark-kun, no sé mucho sobre las neuronas ReLU, pero puedo remitirlo a este artículo donde los autores explican las ventajas de dicha función de activación. X. Glorot, A. Bordes e Y. Bengio "Redes neuronales rectificadoras profundas dispersas AISTATS 2011. jmlr.org/proceedings/papers/v15/glorot11a/glorot11a.pdf
tiagotvv
1

Estas dos funciones de activación son muy similares, pero están compensadas. Mi red original no tenía términos de sesgo. Desde agregar sesgos, todo es mucho más estable. Según mi experiencia, diría que uno u otro de estos puede funcionar mejor para una aplicación específica por razones complejas, posiblemente desconocidas, pero el enfoque correcto es incluir términos de sesgo para que la dependencia del desplazamiento de activación se pueda disminuir o eliminar.

Mastín
fuente
0

activaciones de tanh en los nodos de salida no funcionan con la pérdida de entropía cruzada (binaria):tanh

L=1ni(yilog(pi)+(1yi)log(1pi))

yiipii

pitanh

Andre Holzner
fuente
Sin embargo, puedes escalarlos. tanh (X) -1 comparte la derivada y no tiene el problema de los registros negativos
Pablo Arnau González