2015-08-10 4 views
4

J'apprends des réseaux de neurones à travers Keras et je voudrais explorer mon ensemble de données séquentielles sur un réseau de neurones récurrent. J'étais reading the docs et j'essayais de comprendre le LSTM example.Couche neurale récurrente dans Keras

Mes questions sont les suivantes:

  1. Quels sont les timesteps qui sont nécessaires pour les deux couches?
  2. Comment préparer un jeu de données séquentiel fonctionnant avec Dense comme entrée pour ces couches récurrentes?
  3. Que fait la couche Embedding?
+0

Je suis aussi assez nouveau pour LSTM de, en particulier dans Keras, mais je trouve cet exemple très utile: https://github.com/fchollet/keras /blob/master/examples/lstm_text_generation.py peut-être qu'il vous aidera aussi ... –

Répondre

0
  1. Timesteps sont une chose assez se préoccuper de Keras. En raison du fait que les données que vous fournissez en tant qu'entrée à votre LSTM doivent être un tableau numpy il est nécessaire (au moins pour Keras version < = 0.3.3) d'avoir une forme spécifiée de données - même avec une dimension "temps". Vous pouvez seulement mettre une séquence ayant une longueur spécifiée comme entrée - et dans le cas où vos entrées ont une longueur variable - vous devez utiliser une donnée artificielle pour "remplir" vos séquences ou utiliser un mode "stateful" (lire attentivement Keras documentation pour comprendre ce que cette approche signifie). Les deux solutions peuvent être désagréables - mais c'est un coût que vous payez que Keras est si simple :) J'espère que dans la version 1.0.0, ils feront quelque chose avec ça.

  2. Il existe deux façons d'appliquer des couches de norecurrent après les LSMC:

    • vous pouvez définir un return_sequences argument à Faux - alors que les dernières activations de chaque séquence sera transmise à une couche « statique ».
    • vous pouvez utiliser l'une des couches "distribuées dans le temps" - pour obtenir plus de flexibilité avec ce que vous voulez faire avec vos données.
  3. https://stats.stackexchange.com/questions/182775/what-is-an-embedding-layer-in-a-neural-network :)