Pytorch
TensorFlow

#
Quiz de fin de chapitre

Testons ce que vous avez appris dans ce chapitre !

###
1. Laquelle des tâches suivantes peut être considérée comme un problème de classification de <i> tokens </i> ?

Trouvez les composants grammaticaux d'une phrase. Trouvez si une phrase est grammaticalement correcte ou non. Trouvez les personnes mentionnées dans une phrase. Trouvez le groupe de mots dans une phrase qui répond à une question.

###
2. Quelle partie du prétraitement pour la classification de <i> tokens </i> diffère des autres pipelines de prétraitement ?

Il n'y a rien à faire, les textes sont déjà tokenisés. Les textes sont donnés sous forme de mots, il suffit donc d'appliquer la tokénisation en sous-mots. Nous utilisons `-100` pour étiqueter les tokens spéciaux. Nous devons nous assurer que les étiquettes sont tronquées ou rembourrées à la même taille que les entrées, lorsque nous appliquons la troncature/le padding.

###
3. Quel problème se pose lorsque nous tokenisons les mots dans un problème de classification de <i> tokens </i> et que nous voulons étiqueter les <i> tokens </i> ?

Le tokenizer ajoute des tokens spéciaux et nous n'avons pas d'étiquettes pour eux. Chaque mot peut produire plusieurs tokens, ce qui fait que nous nous retrouvons avec plus de tokens que d'étiquettes. Les tokens ajoutés n'ont pas d'étiquettes, il n'y a donc pas de problème.

###
4. Que signifie « adaptation au domaine » ?

C'est lorsque nous exécutons un modèle sur un jeu de données et que nous obtenons les prédictions pour chaque échantillon de ce jeu de données. C'est quand on entraîne un modèle sur un jeu de données. C'est lorsque nous finetunons un modèle pré-entraîné sur un nouveau jeu de données et qu'il donne des prédictions qui sont plus adaptées à ce nouveau jeu de données. C'est lorsque nous ajoutons des échantillons mal classés à un jeu de données pour rendre notre modèle plus robuste.

###
5. Quelles sont les étiquettes dans un problème de modélisation du langage masqué ?

Certains des tokens de la phrase d'entrée sont masqués de manière aléatoire et les étiquettes sont les tokens d'entrée originaux. Certains des tokens de la phrase d'entrée sont masqués de manière aléatoire et les étiquettes sont les tokens d'entrée originaux, décalés vers la gauche. Certains des tokens de la phrase d'entrée sont masqués de manière aléatoire et l'étiquette indique si la phrase est positive ou négative. Certains des tokens des deux phrases d'entrée sont masqués de manière aléatoire et l'étiquette indique si les deux phrases sont similaires ou non.

###
6. Laquelle de ces tâches peut être considérée comme un problème de séquence à séquence ?

Rédiger de courtes critiques de longs documents. Répondre à des questions sur un document. Traduire un texte en chinois en anglais. Corriger les messages envoyés par mon neveu/ami pour qu'ils soient en anglais correct.

###
7. Quelle est la bonne façon de prétraiter les données pour un problème de séquence à séquence ?

Les entrées et les cibles doivent être envoyées ensemble au tokenizer avec les éléments suivants `inputs=...` et `targets=...`. Les entrées et les cibles doivent être prétraitées, en deux appels séparés au tokenizer. Comme d'habitude, nous devons simplement tokeniser les entrées. Les entrées doivent être envoyées au tokenizer, et les cibles aussi, mais sous un gestionnaire de contexte spécial.

###
8. Pourquoi existe-t-il une sous-classe spécifique de <code> Trainer </code> pour les problèmes de séquence à séquence ?

Parce que les problèmes de séquence-à-séquence utilisent une perte personnalisée, pour ignorer les étiquettes définies à `-100`. Parce que les problèmes de séquence à séquence nécessitent une boucle d'évaluation spéciale. Parce que les cibles sont des textes dans des problèmes de séquence à séquence. Parce que nous utilisons deux modèles dans les problèmes de séquence à séquence.

###
10. Quand devez-vous pré-entraîner un nouveau modèle ?

Lorsqu'il n'y a pas de modèle pré-entraîné disponible pour votre langue spécifique. Lorsque vous disposez d'un grand nombre de données, même s'il existe un modèle pré-entraîné qui pourrait fonctionner sur ces données. Lorsque vous avez des doutes sur le biais du modèle pré-entraîné que vous utilisez. Lorsque les modèles pré-entraînés disponibles ne sont tout simplement pas assez bons.

###
11. Pourquoi est-il facile de prétraîner un modèle de langage sur des batchs de textes ?

Parce qu'il y a beaucoup de textes disponibles sur internet. Parce que l'objectif de pré-entraînement ne nécessite pas que les humains étiquettent les données. Parce que la bibliothèque 🤗 Transformers ne nécessite que quelques lignes de code pour démarrer l'entraînement.

###
12. Quels sont les principaux défis lors du prétraitement des données pour une tâche de réponse à des questions ?

Vous devez tokeniser les entrées. Vous devez faire face à des contextes très longs, qui donnent plusieurs caractéristiques d'entraînement qui peuvent ou non contenir la réponse. Vous devez tokeniser les réponses à la question ainsi que les entrées. À partir de l'intervalle de réponse dans le texte, vous devez trouver le token de début et de fin dans l'entrée tokenisée.

###
13. Comment le post-traitement est-il généralement effectué dans les réponses aux questions ?

Le modèle vous donne les positions de début et de fin de la réponse, et vous n'avez plus qu'à décoder la plage de tokens correspondant. Le modèle vous donne les positions de début et de fin de la réponse pour chaque caractéristique créée par un exemple et il vous suffit de décoder la plage de tokens correspondant dans celui qui a le meilleur score. Le modèle vous donne les positions de début et de fin de la réponse pour chaque caractéristique créée par un exemple et vous n'avez plus qu'à les faire correspondre à la portée dans le contexte de celui qui a le meilleur score. Le modèle génère une réponse et il vous suffit de la décoder.