Existem redes neurais recorrentes e redes neurais recursivas. Ambos são geralmente indicados pela mesma sigla: RNN. Segundo a Wikipedia , o NN recorrente é de fato o NN recursivo, mas eu realmente não entendo a explicação.
Além disso, não acho o que é melhor (com exemplos ou mais) para o Processamento de linguagem natural. O fato é que, embora Socher use NN recursivo para PNL em seu tutorial , não consigo encontrar uma boa implementação de redes neurais recursivas e, quando pesquiso no Google, a maioria das respostas é sobre NN recorrente.
Além disso, existe outro DNN que se aplica melhor à PNL ou depende da tarefa da PNL? Redes de crenças profundas ou Autoencoders empilhados? (Parece que não encontro nenhum utilitário específico para ConvNets na PNL, e a maioria das implementações é com visão de máquina em mente).
Finalmente, eu realmente preferiria implementações DNN para C ++ (melhor ainda se tiver suporte a GPU) ou Scala (melhor se tiver suporte a Spark) em vez de Python ou Matlab / Octave.
Eu tentei o Deeplearning4j, mas está em constante desenvolvimento e a documentação está um pouco desatualizada e não consigo fazê-lo funcionar. Pena que tem a maneira de fazer as coisas da "caixa preta", muito parecido com o scikit-learn ou Weka, que é o que eu realmente quero.