Tree LSTM

LSTM estructurados en árbol

Una limitación de las arquitecturas LSTM básica es que solo permiten la propagación de información estrictamente secuencial. Aquí, proponemos dos extensiones naturales de la arquitectura LSTM básica: el árbol de suma de hijos-LSTM y el árbol N-ario-LSTM. Ambas variantes permiten topologías de red más ricas donde cada unidad LSTM puede incorporar información de múltiples unidades hijas.

Al igual que en las unidades LSTM estándar, cada unidad Tree-LSTM (indexada por j contiene puertas de entrada y salida ij y oj, una celda de memoria cj y un estado oculto hj. La diferencia entre la unidad LSTM estándar y las unidades Tree-LSTM es que los vectores de compuertas y las actualizaciones de celdas de memoria dependen de los estados de posiblemente muchas unidades secundarias. Además, en lugar de una única puerta de olvido, la unidad Tree-LSTM contiene una puerta de olvido fjk para cada unidad secundaria k. Esto permite que la unidad Tree-LSTM incorpore selectivamente información de cada unidad secundaria. Por ejemplo, un modelo Tree-LSTM puede aprender a enfatizar las cabezas semánticas en una tarea de relación semántica, o puede aprender a preservar la representación de los hijos ricos en sentimientos para la clasificación de sentimientos.

Al igual que con el LSTM estándar, cada unidad Tree-LSTM toma un vector de entrada xj. En nuestras aplicaciones, cada xj es una representación vectorial de una palabra en una oración. La palabra de entrada en cada nodo depende de la estructura de árbol utilizada para la red. Por ejemplo, en un Tree-LSTM sobre un árbol de dependencia, cada nodo en el árbol toma el vector correspondiente a la palabra principal como entrada, mientras que en un Tree-LSTM sobre un árbol de circunscripción, los nodos de hoja toman los vectores de palabras correspondientes como entrada.

comparacion de la estructura lineal y la de árbol

Árboles de suma de hijos (LSTM)

Dado un árbol, sea C(j) el conjunto de hijos del nodo j. Las ecuaciones de transición del árbol de suma de hijos-LSTM son las siguientes: h^j=kC(j)hk,ij=σ(W(i)xj+U(i)h^j+b(i)),fjk=σ(W(f)xj+U(f)hk+b(f)) con kC(j)oj=σ(W(o)xj+U(o)h^j+b(o)),uj=tanh(W(u)xj+U(u)h^j+b(u)),cj=ijuj+kC(j)fjkck,hj=ojtanh(cj),

Intuitivamente, podemos interpretar cada matriz de parámetros en estas ecuaciones como correlaciones de codificación entre los vectores componentes del árbol-LSTM. unidad, la entrada xj y los estados ocultos hk de los hijos de la unidad. Por ejemplo, en una aplicación de árbol de dependencia, el modelo puede aprender parámetros W(i) de modo que los componentes de la compuerta de entrada ij tengan valores cercanos a 1 (es decir, “abierto”) cuando se proporciona como entrada una palabra de contenido semánticamente importante (como un verbo), y valores cercanos a 0 (es decir, “cerrado”) cuando la entrada es una palabra relativamente poco importante (como un determinante).

Árboles de dependencias (LSTM)

Dado que la unidad Child-Sum Tree (LSTM) condiciona sus componentes a la suma de los estados ocultos de los hijos hk, es adecuada para árboles con un alto factor de ramificación o cuyos hijos no están ordenados. Por ejemplo, es una buena opción para árboles de dependencias, donde el número de dependientes de una cabeza puede ser muy variable. Nos referimos a un Child-Sum Tree (LSTM) aplicado a un árbol de dependencias como un Dependency Tree (LSTM).

Árboles N-arios-LSTM

El árbol N-ario-LSTM se puede utilizar en estructuras de árbol donde el factor de ramificación es como máximo N y donde los hijos están ordenados, es decir, se pueden indexar de 1 a N. Para cualquier nodo j, escriba el estado oculto y la celda de memoria de su hijo k como hjk y cjk respectivamente. Las ecuaciones de transición del árbol N-ario-LSTM son las siguientes: ij=σ(W(i)xj+l=1NUl(i)hjl+b(i)),fjk=σ(W(f)xj+l=1NUkl(f)hjl+b(f)), donde k=1,2,,N.oj=σ(W(o)xj+l=1NUl(o)hjl+b(o)),uj=tanh(W(u)xj+l=1NUl(u)hjl+b(u)),cj=ijuj+l=1Nfjlcjl,hj=ojtanh(cj),

La introducción de matrices de parámetros independientes para cada hijo k permite que el modelo N-ary Tree-LSTM aprenda un condicionamiento más detallado sobre los estados de los hijos de una unidad que el Child-Sum Tree-LSTM. Consideremos, por ejemplo, una aplicación de árbol de circunscripciones donde el hijo izquierdo de un nodo corresponde a una frase nominal y el hijo derecho a una frase verbal. Supongamos que en este caso es ventajoso enfatizar la frase verbal en la representación. Entonces, los parámetros Uk(f)l pueden entrenarse de manera que los componentes de fj1 estén cerca de 0 (es decir, “olvidar”), mientras que los componentes de fj2 estén cerca de 1 (es decir, “preservar”).

La parametrización de la puerta de olvido.

Definimos una parametrización de la puerta de olvido fjk del késimo hijo que contiene matrices de parámetros “fuera de la diagonal” Uklf,kl. Esta parametrización permite un control más flexible de la propagación de información del hijo al padre. Por ejemplo, esto permite que el estado oculto izquierdo en un árbol binario tenga un efecto excitatorio o inhibidor en la puerta de olvido del hijo derecho. Sin embargo, para valores grandes de N, estos parámetros adicionales son poco prácticos y pueden estar vinculados o fijados a cero.

Árboles de circunscripciones-LSTM

Naturalmente, podemos aplicar unidades de árboles binarios-LSTM a árboles de circunscripciones binarizados, ya que se distinguen los nodos hijos izquierdo y derecho. Nos referimos a esta aplicación de árboles binarios-LSTM como árboles de circunscripciones-LSTM. Nótese que en los árboles de circunscripciones-LSTM, un nodo j recibe un vector de entrada xj solo si es un nodo de hoja.

Referencias