2

Récemment, je suis tombé sur this article, et je me demandais quelle serait la différence entre les résultats que vous obtiendriez d'un réseau neuronal récurrent, comme ceux décrits ci-dessus, et une simple chaîne de Markov serait. Je ne comprends pas vraiment l'algèbre linéaire qui se passe sous le capot dans un RNN, mais il semble que vous êtes en train de concevoir une façon super compliquée de faire un modèle statistique pour ce que la lettre suivante va être basée les lettres précédentes, quelque chose qui est fait très simplement dans une chaîne de Markov.Pourquoi devrions-nous utiliser des RNN au lieu des modèles de Markov?

Pourquoi les RNN sont-ils intéressants? Est-ce juste parce qu'ils sont une solution plus généralisable, ou y a-t-il quelque chose qui me manque?

Répondre

2

La chaîne de Markov prend la propriété de Markov, elle est "sans mémoire". La probabilité du symbole suivant est calculée en fonction des k symboles précédents. En pratique k est limité à des valeurs faibles (disons 3-5), car la matrice de transition croît exponentiellement. Par conséquent, les phrases générées par un modèle de Markov caché sont très incohérentes. D'autre part, les RNN (par exemple avec des unités LSTM) ne sont pas liés par la propriété Markov. Leur riche état interne leur permet de garder une trace des dépendances à distance.

Le post de blog de Karpathy répertorie le code source C généré par un caractère RNN par caractère. Le modèle capture de façon impressionnante les dépendances de choses comme les parenthèses d'ouverture et de fermeture.