Puede que le interese, a diferencia de un recurrente red neuronal, una recursivo red neuronal que
[aplica] el mismo conjunto de pesos recursivamente sobre una estructura, para producir una predicción estructurada sobre estructuras de entrada de tamaño variable, o una predicción escalar sobre la misma, recorriendo una estructura dada en orden topológico ... introducido para aprender representaciones distribuidas de la estructura.
También puede interesarle el análisis sintáctico en general, en el que se infieren estructuras de árbol para las frases, por ejemplo. Cada estructura de árbol sigue ciertas reglas especificadas por alguna gramática.
Un documento que puede ser de interés es aclweb.org/anthology/P/P13/P13-1045.pdf
No los he utilizado, pero parece que hay implementaciones en pytorch ( https://devblogs.nvidia.com/parallelforall/recursive-neural-networks-pytorch/ ) y tensorflow ( https://www.kdnuggets.com/2016/06/recursive-neural-networks-tensorflow.html ).
0 votos
@pvlkmrv todos los nodos tienen vector de características de la misma longitud. ¿Puedes explicarlo un poco mejor? ¿Quieres decir que un único nodo se convierte en un único paso temporal?
0 votos
Sí, eso es exactamente lo que quiero decir. Entonces, la entrada a la red sólo debería tener esa dimensión. No he trabajado con RNNs lo suficiente como para hacer una recomendación exacta de arquitectura, pero en principio debería funcionar: Debería aprender a hacer que su salida sea la categoría_1 o la categoría_2 después de que se le muestre una secuencia de pasos en el árbol.
0 votos
Alternativamente, ¿debería utilizar un árbol de decisión para aprender a categorizar los ejemplos? Si su árbol pudiera manejar entradas de longitud variable, entonces podría utilizar algún tipo de combinación de todos los vectores de una serie hasta una hoja para clasificar esa hoja. Una ventaja sería que tu árbol podría aprender a recuperar algún tipo de estructura común de los ejemplos de entrenamiento y podría ser más interpretable.
0 votos
@pvlkmrv Quieres decir que para que un árbol de decisión clasifique un solo nodo de hoja tengo que pasar el vector de características de todos los nodos en algún orden, ¿estoy en lo cierto?
0 votos
Los árboles de decisión suelen tomar un vector de características de cierta longitud de una sola vez para cada ejemplo. No existe la noción de pasar por partes en diferentes pasos temporales.
0 votos
@pvlkmrv eso significa que tengo que pasar nodo por nodo individualmente. Crees que hacer eso recuerda el contexto me refiero a que varios nodos hacen una sola entidad pero si paso nodo uno por uno no habrá entidad