Cross-encodeurs peu profonds : Une solution rapide pour la récupération d'informations
Utiliser des Cross-Encoders peu profonds peut améliorer la vitesse et la précision des systèmes de recherche.
― 8 min lire
Table des matières
Dans le domaine de la récupération d'informations, l'objectif est de trouver des documents pertinents en réponse aux requêtes des utilisateurs. Les avancées récentes en technologie ont introduit divers modèles qui peuvent améliorer l'efficacité de ce processus. Un de ces modèles est le Cross-Encoder, qui traite la requête et le document ensemble. Cette approche a montré des résultats prometteurs en atteignant une grande précision. Cependant, ces modèles peuvent être lents et nécessitent une puissance de calcul significative, ce qui les rend moins adaptés aux systèmes où des réponses rapides sont nécessaires.
La faible Latence, ou le temps nécessaire pour renvoyer des résultats après qu'une requête a été faite, est cruciale pour la satisfaction des utilisateurs. Les utilisateurs s'attendent à des réponses rapides, et si un système de recherche prend trop de temps, ils peuvent devenir frustrés ou abandonner leur recherche. De plus, les systèmes plus lents ont tendance à consommer plus d'énergie, ce qui contribue aux problèmes environnementaux.
Cet article parle d'une nouvelle approche utilisant des Cross-Encoders peu profonds. Ces modèles ont moins de couches et sont moins complexes que leurs homologues plus grands, ce qui leur permet de fournir une récupération d'informations rapide et efficace.
Qu'est-ce que les Cross-Encoders ?
Les Cross-Encoders sont un type spécifique de modèle qui traite à la fois une requête et un document en même temps. Ils fonctionnent en prenant le texte de la requête et le texte du document, en les combinant, puis en utilisant un seul modèle pour comprendre et évaluer leur pertinence l'un par rapport à l'autre. Cette méthode est efficace pour réorganiser les documents qui ont déjà été récupérés par des modèles plus simples.
Bien que les Cross-Encoders soient précieux pour leur précision, leur coût computationnel élevé limite leur application pratique, surtout dans des environnements où la vitesse est essentielle. Ils ne peuvent évaluer qu'un nombre limité de documents pour leur pertinence en raison de leur complexité et du temps que cela prend pour traiter chaque requête.
Le défi de la latence
La latence se réfère au délai ressenti entre le moment où une demande est soumise et le moment où une réponse est reçue. Dans le contexte des moteurs de recherche, les utilisateurs s'attendent à ce que leurs requêtes soient répondues rapidement, idéalement en moins de 100 millisecondes. Si la latence dépasse ce temps, l'expérience utilisateur en souffre, ce qui entraîne une réduction de l'engagement et de la satisfaction.
Une haute latence affecte non seulement la satisfaction des utilisateurs, mais augmente également la consommation d'énergie des systèmes de recherche. Les systèmes plus lents nécessitent généralement plus de ressources, ce qui impacte les coûts opérationnels et la durabilité environnementale. Par conséquent, trouver des moyens de réduire la latence sans sacrifier la qualité des résultats de recherche est un défi clé dans le domaine.
Cross-Encoders peu profonds
L'idée derrière les Cross-Encoders peu profonds est d'utiliser des modèles plus simples avec moins de couches. Alors que les modèles traditionnels peuvent utiliser de nombreuses couches pour capturer des motifs complexes dans les données, les modèles peu profonds fonctionnent avec une structure limitée qui leur permet de traiter les informations plus rapidement. Comme ils nécessitent moins de ressources de calcul, les modèles peu profonds peuvent évaluer beaucoup plus de documents dans le même laps de temps que les modèles plus grands.
En utilisant des modèles comme TinyBERT, qui a une architecture minimale, les Cross-Encoders peu profonds peuvent évaluer les documents plus efficacement. Des études ont montré qu'en conditions de faible latence, ces modèles plus petits peuvent surpasser leurs homologues plus grands et plus complexes.
Techniques d'entraînement
Pour améliorer la performance des Cross-Encoders peu profonds, les chercheurs ont utilisé une nouvelle méthode d'entraînement connue sous le nom de Cross-Entropie Binaire Généralisée (gBCE). Cette méthode aide à améliorer la capacité du modèle à différencier les documents pertinents des documents non pertinents pendant l'entraînement.
Le schéma d'entraînement gBCE implique deux éléments principaux : d'abord, il augmente le nombre d'Échantillons négatifs - des documents qui ne sont pas pertinents pour la requête - utilisés durant l'entraînement. Cette exposition permet au modèle d'apprendre à partir d'un plus large éventail d'exemples. Ensuite, la fonction de perte gBCE est utilisée au lieu de la traditionnelle fonction de perte Cross-Entropie Binaire. Cette fonction de perte spécifique aide à empêcher le modèle de devenir trop confiant dans ses prédictions, ce qui peut entraîner des erreurs.
Configuration expérimentale
Pour évaluer l'efficacité des Cross-Encoders peu profonds, des expériences ont été menées en utilisant des ensembles de données bien connus. Cela a impliqué de former les modèles sur diverses requêtes et de mesurer leurs performances selon différents critères.
Les modèles ont été testés dans des conditions variées, y compris différents nombres de documents à évaluer et différents types de matériel, y compris des CPU et des GPU. Cela a permis aux chercheurs d'observer comment les Cross-Encoders peu profonds se comportaient dans des scénarios réels.
Résultats
Les performances des Cross-Encoders peu profonds ont été comparées avec celles de modèles plus grands à travers une série d'expériences. Les résultats ont montré que lorsque la latence était maintenue basse, les Cross-Encoders peu profonds surpassaient les Cross-Encoders plus grands. Par exemple, TinyBERT entraîné avec la méthode gBCE a obtenu des améliorations notables en termes de précision par rapport à des modèles plus grands comme MonoBERT-Large.
Même en utilisant un CPU au lieu d'un GPU, TinyBERT a montré une efficacité prometteuse, en faisant une option viable pour des systèmes qui ne peuvent pas compter sur des ressources de calcul haut de gamme. C'est particulièrement pertinent pour les applications qui nécessitent des fonctionnalités de recherche sur des appareils sans capacité de traitement GPU.
Impact du nombre d'échantillons négatifs
L'une des principales découvertes de la recherche a été l'impact que le nombre d'échantillons négatifs utilisés durant l'entraînement avait sur la performance du modèle. Augmenter le nombre d'échantillons négatifs a permis aux modèles d'apprendre plus efficacement, conduisant à une précision améliorée.
La recherche a indiqué que l'utilisation de plusieurs échantillons négatifs était plus importante que de se concentrer uniquement sur les fonctions de perte. Les Cross-Encoders peu profonds entraînés avec un plus grand nombre de négatifs ont systématiquement surpassé ceux entraînés avec moins de négatifs.
Efficacité de l'inférence CPU
Un aspect essentiel de l'utilisation des Cross-Encoders peu profonds est leur capacité à fonctionner efficacement même sans matériel avancé comme des GPU. Les expériences ont montré que les modèles peu profonds, en particulier TinyBERT, pouvaient fournir des résultats satisfaisants en utilisant uniquement un CPU. Cela est particulièrement pertinent pour les applications soucieuses des coûts, car faire fonctionner un matériel puissant peut être coûteux.
L'écart de performance entre l'inférence CPU et GPU s'est réduit à mesure que les limites de latence augmentaient, montrant que bien que les GPU offrent de meilleurs résultats, les Cross-Encoders peu profonds restaient efficaces avec du matériel standard.
Conclusion
En résumé, la recherche sur les Cross-Encoders peu profonds a mis en évidence leurs avantages potentiels pour la récupération d'informations à faible latence. Ces modèles offrent une alternative convaincante aux modèles plus grands et plus complexes en offrant une précision suffisante tout en maintenant la rapidité.
L'introduction de la méthode d'entraînement gBCE améliore leur performance, les rendant adaptés à une variété d'applications. Alors que la demande de solutions de recherche rapides et efficaces augmente, les Cross-Encoders peu profonds pourraient devenir une partie intégrante des futurs systèmes de récupération d'informations.
Les implications de cette recherche vont au-delà de l'intérêt académique ; les industries cherchant à améliorer leurs capacités de recherche peuvent bénéficier de l'adoption de ces modèles et de leur raffinement ultérieur. En se concentrant sur l'efficacité aux côtés de l'efficacité, les Cross-Encoders peu profonds peuvent ouvrir la voie à des systèmes de récupération plus rapides et plus durables.
Titre: Shallow Cross-Encoders for Low-Latency Retrieval
Résumé: Transformer-based Cross-Encoders achieve state-of-the-art effectiveness in text retrieval. However, Cross-Encoders based on large transformer models (such as BERT or T5) are computationally expensive and allow for scoring only a small number of documents within a reasonably small latency window. However, keeping search latencies low is important for user satisfaction and energy usage. In this paper, we show that weaker shallow transformer models (i.e., transformers with a limited number of layers) actually perform better than full-scale models when constrained to these practical low-latency settings since they can estimate the relevance of more documents in the same time budget. We further show that shallow transformers may benefit from the generalized Binary Cross-Entropy (gBCE) training scheme, which has recently demonstrated success for recommendation tasks. Our experiments with TREC Deep Learning passage ranking query sets demonstrate significant improvements in shallow and full-scale models in low-latency scenarios. For example, when the latency limit is 25ms per query, MonoBERT-Large (a cross-encoder based on a full-scale BERT model) is only able to achieve NDCG@10 of 0.431 on TREC DL 2019, while TinyBERT-gBCE (a cross-encoder based on TinyBERT trained with gBCE) reaches NDCG@10 of 0.652, a +51% gain over MonoBERT-Large. We also show that shallow Cross-Encoders are effective even when used without a GPU (e.g., with CPU inference, NDCG@10 decreases only by 3% compared to GPU inference with 50ms latency), which makes Cross-Encoders practical to run even without specialized hardware acceleration.
Auteurs: Aleksandr V. Petrov, Sean MacAvaney, Craig Macdonald
Dernière mise à jour: 2024-03-29 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2403.20222
Source PDF: https://arxiv.org/pdf/2403.20222
Licence: https://creativecommons.org/licenses/by/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.
Liens de référence
- https://www.sbert.net/docs/pretrained-models/ce-msmarco.html
- https://blog.vespa.ai/pretrained-transformer-language-models-for-search-part-4/
- https://towardsdatascience.com/tinybert-for-search-10x-faster-and-20x-smaller-than-bert-74cd1b6b5aec
- https://github.com/asash/shallow-cross-encoders
- https://huggingface.co/prajjwal1/bert-tiny
- https://huggingface.co/castorini/monot5-base-msmarco-10k
- https://huggingface.co/castorini/monobert-large-msmarco-finetune-only