J'ai un corpus de dialogue comme ci-dessous. Et je veux implémenter un modèle LSTM qui prédit une action du système. L'action du système est décrite comme un vecteur de bits. L'entrée de l'utilisateur est calculée comme un encodage de mots qui est également un vecteur de bits.
t1: user: "Do you know an apple?", system: "no"(action=2)
t2: user: "xxxxxx", system: "yyyy" (action=0)
t3: user: "aaaaaa", system: "bbbb" (action=5)
Ce que je veux réaliser, c'est un modèle "many to many (2)". Lorsque mon modèle reçoit une entrée de l'utilisateur, il doit produire une action du système. Mais je ne peux pas comprendre return_sequences
et l'option TimeDistributed
après la couche LSTM. Pour réaliser le "many-to-many (2)", return_sequences==True
et l'ajout d'un TimeDistributed
après que les LSTM sont nécessaires ? J'apprécierais que vous fournissiez une description plus détaillée.
séquences_de_retour : Booléen. Indique s'il faut renvoyer la dernière sortie de la séquence de sorties ou la séquence complète.
Temps distribué : Ce wrapper permet d'appliquer une couche à chaque tranche temporelle d'une entrée.
Mise à jour 2017/03/13 17:40
Je pense que je pourrais comprendre la return_sequence
option. Mais je ne suis pas encore sûr TimeDistributed
. Si j'ajoute un TimeDistributed
après LSTMs, le modèle est-il le même que "my many-to-many(2)" ci-dessous ? Je pense donc que des couches denses sont appliquées pour chaque sortie.