Découvrez comment l'augmentation du miroir génère des données et améliore les performances du BERT sur les tâches de similarité sémantique
Il Ce n’est un secret pour personne que les modèles de type BERT jouent un rôle fondamental dans les applications modernes de PNL. Malgré leurs performances phénoménales sur les tâches en aval, la plupart de ces modèles ne sont pas parfaits sur des problèmes spécifiques sans ajustement fin. L'intégration de la construction à partir de modèles bruts pré-entraînés conduit généralement à des métriques loin des résultats de pointe. Dans le même temps, le réglage fin est une procédure lourde et nécessite généralement au moins des milliers d'échantillons de données annotés pour permettre au modèle de mieux comprendre les données du domaine. Dans certains cas, cet aspect devient problématique lorsque nous ne pouvons pas simplement collecter des données déjà annotées ou que cela a un prix élevé.
MiroirBERT a été conçu pour résoudre le problème susmentionné. Au lieu de l'algorithme de réglage fin standard, MirrorBERT s'appuie sur l'auto-supervision en augmentant intelligemment les données initiales sans aucune connaissance externe. Cette approche permet à MirrorBERT d'afficher des performances comparables sur problèmes de similarité sémantique. De plus, en utilisant sa technique innovante d'apprentissage contrastif, MirrorBERT peut transformer des modèles pré-entraînés comme BERTE ou RoBERTa en encodeurs lexicaux universels en moins d'une minute !
Avec l'aide du fonctionnaire Papier miroirBERT, nous plongerons dans ses détails cruciaux pour comprendre comment il fonctionne sous le capot. Les connaissances acquises seront universelles car les techniques discutées pourraient ensuite être utilisées pour d'autres modèles de PNL traitant également de tâches de similarité.
Pour faire simple, MirrorBERT est le même modèle BERT à l'exception de plusieurs étapes introduites dans son processus d'apprentissage. Discutons de chacun d’eux.
1. Auto-duplication
Comme son nom l'indique, MirrorBERT duplique simplement les données initiales.
Ces données dupliquées sont ensuite utilisées pour construire deux représentations d'intégration différentes des mêmes chaînes.
2. Augmentation des données
Les auteurs de l'article proposent deux techniques intuitives qui modifient légèrement les textes des ensembles de données. Selon eux, dans une grande majorité des cas, ces corruptions de texte ne changent pas leur sens.
2.1. Augmentation des entrées
Étant donné une paire de chaînes (xᵢ, x̄ᵢ), l'algorithme en choisit une au hasard et applique masquage aléatoire consistant en une substitution aléatoire d'une sous-chaîne de longueur fixe k dans le texte avec le jeton (MASK).
2.2. Augmentation des fonctionnalités
Le masquage aléatoire fonctionne au niveau de la phrase/de l'expression. Pour qu'un modèle puisse également fonctionner correctement sur des tâches au niveau des mots, un autre mécanisme d'augmentation est nécessaire, fonctionnant sur des fragments de texte plus courts. L'augmentation des fonctionnalités résout ce problème en utilisant le dropout.
Le abandonner le processus fait référence à la désactivation d'un pourcentage donné p de neurones dans une certaine couche de réseau. Cela peut être considéré comme l’équivalent de la remise à zéro des neurones correspondants dans le réseau.
Les auteurs de l'article proposent d'utiliser l'abandon pour augmenter les données. Lorsqu'une paire de chaînes (xᵢ, x̄ᵢ) est transmise au réseau avec des couches d'abandon, leurs représentations de sortie seront légèrement différentes si, à chaque passage direct, les couches d'abandon désactivent toujours différents neurones.
L'avantage de l'utilisation du dropout pour l'augmentation des fonctionnalités est que les couches de dropout sont déjà incluses dans l'architecture BERT/RoBERTa, ce qui signifie qu'aucune implémentation supplémentaire n'est nécessaire !
Alors que le masquage aléatoire des étendues est appliqué uniquement à chaque deuxième objet de l'ensemble de données, la suppression est appliquée à chacun d'entre eux.
3. Apprentissage contrastif
Apprentissage contrasté est une technique d'apprentissage automatique consistant à apprendre des représentations de données de manière à ce que les objets similaires se trouvent proches les uns des autres dans l'espace d'intégration tandis que les objets différents soient éloignés les uns des autres.
L'un des moyens de mise en œuvre de l'apprentissage constructif est l'utilisation d'un fonction de perte contrastive. Celui choisi pour MirrorBERT est InfoNCEPerte. Comprenons comment cela fonctionne.
InfoNCEPerte
A première vue, la formule de InfoNCEPerte peut paraître intimidant, alors abordons-le progressivement, étape par étape.
- La similarité cosinusoïdale entre deux vecteurs mesure à quel point ils s'alignent l'un par rapport à l'autre en prenant des valeurs comprises entre -1 et 1, des valeurs plus élevées indiquant une similarité plus élevée.
2. Pour mieux comprendre les prochaines étapes, il faut être conscient que InfoNCEPerte utilise la transformation softmax avec le paramètre de température T contrôlant la douceur de la distribution softmax de sortie. C'est pourquoi les similitudes sont divisées par T.
Pour plus d'informations sur la température softmax, reportez-vous à Cet article l'expliquant plus en détail.
3. Comme dans la formule softmax standard, une prédiction (similarité) est ensuite transformée sous forme d'exposant.
4. Dans la formule softmax normale, le numérateur contient un exposant d'une probabilité de classe tandis que le dénominateur est la somme exponentielle de toutes les probabilités de distribution. Dans le cas de similitudes dans InfoNCEPertela formule suit de manière analogue la logique :
- Le numérateur contient une similarité exponentielle de deux chaînes identiques légèrement modifiées (xᵢ, x̄ᵢ) qui peuvent être considérées comme un exemple positif.
- Le dénominateur consiste en une somme de similitudes exponentielles entre xᵢ et toutes les autres chaînes de jeux de données xⱼ, qui peuvent être considérées comme un ensemble de tous les exemples négatifs.
5. Dans le scénario idéal, nous voulons que la similarité entre des chaînes identiques (xᵢ, x̄ᵢ) soit élevée tandis que la similarité de xᵢ avec d'autres chaînes xⱼ soit faible. Si c'est vrai, alors le numérateur de la formule ci-dessus augmentera tandis que le dénominateur diminuera, ce qui agrandira l'expression entière.
Les fonctions de perte fonctionnent à l’inverse : dans les cas idéaux, elles prennent des valeurs plus petites et, dans les pires situations, elles pénalisent fortement le modèle. Pour rendre la formule ci-dessus compatible avec ce principe de perte, ajoutons le logarithme négatif avant toute l'expression.
6. L'expression de l'étape précédente correspond déjà à une valeur de perte pour une seule chaîne xᵢ. Étant donné que l’ensemble de données est constitué de nombreuses chaînes, nous devons toutes les prendre en compte. Pour cela, résumons cette expression pour toutes les chaînes.
La formule obtenue est exactement la InfoNCEPerte!
InfoNCELoss essaie de regrouper les objets similaires les uns à côté des autres tout en repoussant les objets différents dans l'espace d'intégration.
Perte de triplet utilisée dans SBERT est un autre exemple de perte d’apprentissage contrastée.
Un fait surprenant à propos de MirrorBERT est qu’il ne nécessite pas beaucoup de données pour être affiné. De plus, ces données ne doivent pas nécessairement être externes puisque l’ensemble du processus de formation est auto-supervisé.
Les chercheurs rapportent que pour affiner les représentations lexicales, ils n’utilisent que 10 000 mots les plus fréquents dans chaque langue. Pour les tâches au niveau des phrases, 10 000 phrases sont utilisées.
Les détails de la formation MirrorBERT sont répertoriés ci-dessous :
- La température est réglée sur T = 0,04 dans des tâches au niveau de la phrase et pour T = 0,2 dans des tâches au niveau des mots.
- En masquage aléatoire, k est réglé sur 5.
- L'abandon est défini sur p = 0,1.
- L'optimiseur AdamW est utilisé avec un taux d'apprentissage de 2e-5.
- La taille du lot est fixée à 200 (ou 400 avec des doublons).
- Les modèles lexicaux sont formés pour 2 époques et les modèles au niveau de la phrase sont formés pour une seule époque.
- Au lieu du regroupement moyen de toutes les représentations de jetons de sortie, la représentation de jetons (CLS) est créée.
L’époque de formation MirrorBERT unique ne nécessite que 10 à 20 secondes.
Les auteurs ont évalué les métriques sur un ensemble de références en appliquant un réglage fin du miroir. Les résultats ont été rapportés sur trois types de tâches : lexicales, au niveau de la phrase et multilingues. Dans chacun d'eux, MirrorBERT a démontré des performances comparables à celles d'autres modèles affinés de type BERT.
Les résultats ont également montré que la plage comprise entre 10 000 et 20 000 exemples de formation est la plus optimale pour un réglage précis. Les performances du modèle diminuent progressivement avec davantage d'exemples de formation.
Le réglage fin du miroir agit littéralement comme un sort magique : au lieu de lourdes procédures de réglage fin, le framework miroir nécessite beaucoup moins de temps sans que l'utilisation de données externes soit comparable à d'autres modèles affinés comme BERT, SBERT ou RoBERTa sur la similarité sémantique. Tâches.
En conséquence, MirrorBERT peut transformer un modèle pré-entraîné de type BERT en encodeurs universels capturant les connaissances linguistiques avec une grande efficacité.
Toutes les images, sauf indication contraire, sont de l'auteur