Je suis en train de lire le document modèle BERT. Dans la tâche du modèle de langage masqué, pendant le pré-entraînement du modèle BERT, l'article dit que le modèle choisira 15 % de tokens de façon aléatoire. Dans le token choisi (Ti), 80% sera remplacé par le token [MASK], 10% Ti est inchangé et 10% Ti est remplacé par un autre mot. Je pense que le modèle a juste besoin de remplacer par [MASK] ou un autre mot. Pourquoi le modèle doit-il choisir un mot au hasard et le garder inchangé ? Le processus de pré-formation prédit-il uniquement le token [MASK] ou prédit-il 15 % d'un token entier aléatoire ?
Réponse
Trop de publicités?Ceci est fait parce qu'ils veulent pré-entraîner un modèle bidirectionnel. La plupart du temps, le réseau verra une phrase avec un token [MASK], et il sera entraîné à prédire le mot qui est censé être là. Mais dans l'ajustement fin, qui est fait après le pré-entraînement (l'ajustement fin est l'entraînement fait par tous ceux qui veulent utiliser BERT pour leur tâche), il n'y a pas de mots [MASK] ! (sauf si vous faites spécifiquement du LM masqué).
Ce décalage entre la préformation et la formation (disparition soudaine du jeton [MASK]) est adouci par eux, avec une probabilité de 15% que le mot ne soit pas remplacé par [MASK]. La tâche est toujours là, le réseau doit prédire le jeton, mais il reçoit déjà la réponse en entrée. Cela peut sembler contre-intuitif mais prend tout son sens lorsqu'il est combiné avec l'entraînement de [MASK].