Quelle fonction de perte dois-je utiliser pour noter un modèle seq2seq RNN?

10

Je travaille sur le papier Cho 2014 qui a introduit l'architecture codeur-décodeur pour la modélisation seq2seq.

Dans l'article, ils semblent utiliser la probabilité de l'entrée donnée en sortie (ou sa probabilité de log négatif) comme fonction de perte pour une entrée de longueur et une sortie de longueur :M y NXMyN

P(y1,,yN|X1,,XM)=P(y1|X1,,Xm)P(y2|y1,X1,,Xm)P(yN|y1,,yN-1,X1,,Xm)

Cependant, je pense que je vois plusieurs problèmes à utiliser cela comme une fonction de perte:

  1. Il semble supposer que le professeur force pendant la formation (c'est-à-dire qu'au lieu d'utiliser la supposition du décodeur pour une position comme entrée pour l'itération suivante, il utilise le jeton connu.
  2. Cela ne pénaliserait pas les longues séquences. Puisque la probabilité est de à de la sortie, si le décodeur générait une séquence plus longue, tout après le premier ne prendrait pas en compte la perte.1NN
  3. Si le modèle prédit un premier jeton de fin de chaîne, la fonction de perte exige toujours étapes - ce qui signifie que nous générons des sorties basées sur une "variété" non formée des modèles. Cela semble bâclé.N

Certaines de ces préoccupations sont-elles valables? Si oui, y a-t-il eu des progrès vers une fonction de perte plus avancée?

user3243135
la source

Réponses:

1

Il semble supposer que le professeur force pendant la formation (c'est-à-dire qu'au lieu d'utiliser la supposition du décodeur pour une position comme entrée pour l'itération suivante, il utilise le jeton connu.

JournalP(y1,,yN)P(y)=jeP(yje|y<je)X

Étant donné l'omniprésence du MLE et le manque de bonnes alternatives, je ne pense pas que supposer un "forçage des enseignants" soit répréhensible.

Néanmoins, il y a certes des problèmes avec cela - à savoir, le modèle attribue une forte probabilité à tous les points de données, mais les échantillons du modèle ne sont pas nécessairement probables dans la vraie distribution des données (ce qui donne des échantillons de "faible qualité"). Vous pouvez être intéressé par le "Professeur Forcing" (Lamb et al.) Qui atténue cela via une procédure de formation contradictoire sans abandonner le MLE.

Cela ne pénaliserait pas les longues séquences. Puisque la probabilité est de 1 à N de la sortie, si le décodeur générait une séquence plus longue, tout après le premier N ne prendrait pas en compte la perte.

et

Si le modèle prédit un premier jeton de fin de chaîne, la fonction de perte exige toujours N étapes - ce qui signifie que nous générons des sorties basées sur une "variété" non formée des modèles. Cela semble bâclé.

Aucun de ces problèmes ne survient lors de la formation. Au lieu de penser à un modèle de séquence autorégressif comme une procédure pour produire une prédiction, pensez-y comme un moyen de calculer la probabilité d'une séquence donnée. Le modèle ne prédit jamais rien - vous pouvez échantillonner une séquence ou un jeton d'une distribution, ou vous pouvez lui demander quel est le prochain jeton le plus probable - mais ceux-ci sont fondamentalement différents d'une prédiction (et vous n'échantillonnez pas pendant la formation Soit).

Si oui, y a-t-il eu des progrès vers une fonction de perte plus avancée?

Il peut bien y avoir des objectifs spécifiquement conçus au cas par cas pour différentes tâches de modélisation. Cependant, je dirais que le MLE est toujours dominant - le récent modèle GPT2 qui a atteint des performances de pointe sur un large éventail de tâches de modélisation et de compréhension du langage naturel a été formé avec.

shimao
la source