Recursive neural network

From HandWiki
Short description: Type of neural network which utilizes recursion

A recursive neural network is a kind of deep neural network created by applying the same set of weights recursively over a structured input, to produce a structured prediction over variable-size input structures, or a scalar prediction on it, by traversing a given structure in topological order. Recursive neural networks, sometimes abbreviated as RvNNs, have been successful, for instance, in learning sequence and tree structures in natural language processing, mainly phrase and sentence continuous representations based on word embedding. RvNNs have first been introduced to learn distributed representations of structure, such as logical terms.[1] Models and general frameworks have been developed in further works since the 1990s.[2][3]

Architectures

Basic

A simple recursive neural network architecture

In the most simple architecture, nodes are combined into parents using a weight matrix that is shared across the whole network, and a non-linearity such as tanh. If c1 and c2 are n-dimensional vector representation of nodes, their parent will also be an n-dimensional vector, calculated as

[math]\displaystyle{ p_{1,2} = \tanh\left(W[c_1 ; c_2]\right) }[/math]

Where W is a learned [math]\displaystyle{ n\times 2n }[/math] weight matrix.

This architecture, with a few improvements, has been used for successfully parsing natural scenes, syntactic parsing of natural language sentences,[4] and recursive autoencoding and generative modeling of 3D shape structures in the form of cuboid abstractions.[5]

Recursive cascade correlation (RecCC)

RecCC is a constructive neural network approach to deal with tree domains[2] with pioneering applications to chemistry[6] and extension to directed acyclic graphs.[7]

Unsupervised RNN

A framework for unsupervised RNN has been introduced in 2004.[8][9]

Tensor

Recursive neural tensor networks use one, tensor-based composition function for all nodes in the tree.[10]

Training

Stochastic gradient descent

Typically, stochastic gradient descent (SGD) is used to train the network. The gradient is computed using backpropagation through structure (BPTS), a variant of backpropagation through time used for recurrent neural networks.

Properties

Universal approximation capability of RNN over trees has been proved in literature.[11][12]

Related models

Recurrent neural networks

Main page: Recurrent neural network

Recurrent neural networks are recursive artificial neural networks with a certain structure: that of a linear chain. Whereas recursive neural networks operate on any hierarchical structure, combining child representations into parent representations, recurrent neural networks operate on the linear progression of time, combining the previous time step and a hidden representation into the representation for the current time step.

Tree Echo State Networks

An efficient approach to implement recursive neural networks is given by the Tree Echo State Network[13] within the reservoir computing paradigm.

Extension to graphs

Extensions to graphs include graph neural network (GNN),[14] Neural Network for Graphs (NN4G),[15] and more recently convolutional neural networks for graphs.

References

  1. Goller, C.; Küchler, A. (1996). "Learning task-dependent distributed representations by backpropagation through structure". Proceedings of International Conference on Neural Networks (ICNN'96). 1. pp. 347–352. doi:10.1109/ICNN.1996.548916. ISBN 978-0-7803-3210-2. 
  2. 2.0 2.1 Sperduti, A.; Starita, A. (1997-05-01). "Supervised neural networks for the classification of structures". IEEE Transactions on Neural Networks 8 (3): 714–735. doi:10.1109/72.572108. ISSN 1045-9227. PMID 18255672. 
  3. Frasconi, P.; Gori, M.; Sperduti, A. (1998-09-01). "A general framework for adaptive processing of data structures". IEEE Transactions on Neural Networks 9 (5): 768–786. doi:10.1109/72.712151. ISSN 1045-9227. PMID 18255765. 
  4. Socher, Richard; Lin, Cliff; Ng, Andrew Y.; Manning, Christopher D.. "Parsing Natural Scenes and Natural Language with Recursive Neural Networks". The 28th International Conference on Machine Learning (ICML 2011). http://nlp.stanford.edu/pubs/SocherLinNgManning_ICML2011.pdf. 
  5. Li, Jun; Xu, Kai; Chaudhuri, Siddhartha; Yumer, Ersin; Zhang, Hao; Guibas, Leonadis (2017). "GRASS: Generative Recursive Autoencoders for Shape Structures". ACM Transactions on Graphics 36 (4): 52. doi:10.1145/3072959.3073613. https://www2.cs.sfu.ca/~haoz/pubs/li_sig17_grass.pdf. 
  6. Bianucci, Anna Maria; Micheli, Alessio; Sperduti, Alessandro; Starita, Antonina (2000). "Application of Cascade Correlation Networks for Structures to Chemistry" (in en). Applied Intelligence 12 (1–2): 117–147. doi:10.1023/A:1008368105614. ISSN 0924-669X. 
  7. Micheli, A.; Sona, D.; Sperduti, A. (2004-11-01). "Contextual processing of structured data by recursive cascade correlation". IEEE Transactions on Neural Networks 15 (6): 1396–1410. doi:10.1109/TNN.2004.837783. ISSN 1045-9227. PMID 15565768. 
  8. Hammer, Barbara; Micheli, Alessio; Sperduti, Alessandro; Strickert, Marc (2004). "Recursive self-organizing network models". Neural Networks 17 (8–9): 1061–1085. doi:10.1016/j.neunet.2004.06.009. PMID 15555852. 
  9. Hammer, Barbara; Micheli, Alessio; Sperduti, Alessandro; Strickert, Marc (2004-03-01). "A general framework for unsupervised processing of structured data". Neurocomputing 57: 3–35. doi:10.1016/j.neucom.2004.01.008. 
  10. Socher, Richard; Perelygin, Alex; Y. Wu, Jean; Chuang, Jason; D. Manning, Christopher; Y. Ng, Andrew; Potts, Christopher. "Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank". EMNLP 2013. http://nlp.stanford.edu/~socherr/EMNLP2013_RNTN.pdf. 
  11. Hammer, Barbara (2007-10-03) (in en). Learning with Recurrent Neural Networks. Springer. ISBN 9781846285677. https://books.google.com/books?id=H3_1BwAAQBAJ&pg=PA1. 
  12. Hammer, Barbara; Micheli, Alessio; Sperduti, Alessandro (2005-05-01). "Universal Approximation Capability of Cascade Correlation for Structures" (in en). Neural Computation 17 (5): 1109–1159. doi:10.1162/0899766053491878. 
  13. Gallicchio, Claudio; Micheli, Alessio (2013-02-04). "Tree Echo State Networks". Neurocomputing 101: 319–337. doi:10.1016/j.neucom.2012.08.017. 
  14. Scarselli, F.; Gori, M.; Tsoi, A. C.; Hagenbuchner, M.; Monfardini, G. (2009-01-01). "The Graph Neural Network Model". IEEE Transactions on Neural Networks 20 (1): 61–80. doi:10.1109/TNN.2008.2005605. ISSN 1045-9227. PMID 19068426. https://repository.hkbu.edu.hk/vprd_ja/1. 
  15. Micheli, A. (2009-03-01). "Neural Network for Graphs: A Contextual Constructive Approach". IEEE Transactions on Neural Networks 20 (3): 498–511. doi:10.1109/TNN.2008.2010350. ISSN 1045-9227. PMID 19193509.