MTEB Referente de Evaluación de Incrustación de Texto Masivo

MTEB, Text Embedding Evaluation Reference

MTEB es un benchmark masivo para medir el rendimiento de modelos de incrustación de texto en diversas tareas de incrustación.

La tabla de clasificación 🥇 proporciona una visión holística de los mejores modelos de incrustación de texto disponibles en una variedad de tareas.

El artículo 📝 brinda información de fondo sobre las tareas y conjuntos de datos en MTEB y analiza los resultados de la tabla de clasificación.

El repositorio Github 💻 contiene el código para realizar pruebas comparativas y enviar cualquier modelo de su elección a la tabla de clasificación.

¿Por qué las incrustaciones de texto?

Las incrustaciones de texto son representaciones vectoriales del texto que codifican información semántica. Como las máquinas requieren entradas numéricas para realizar cálculos, las incrustaciones de texto son un componente crucial en muchas aplicaciones de procesamiento del lenguaje natural. Por ejemplo, Google utiliza incrustaciones de texto para alimentar su motor de búsqueda. Las incrustaciones de texto también se pueden utilizar para encontrar patrones en grandes cantidades de texto mediante agrupamiento o como entradas para modelos de clasificación de texto, como en nuestro reciente trabajo SetFit. Sin embargo, la calidad de las incrustaciones de texto depende en gran medida del modelo de incrustación utilizado. ¡MTEB está diseñado para ayudarlo a encontrar el mejor modelo de incrustación de texto disponible para una variedad de tareas!

MTEB

🐋 Masivo: MTEB incluye 56 conjuntos de datos en 8 tareas y actualmente resume >2000 resultados en la tabla de clasificación.

🌎 Multilingüe: MTEB contiene hasta 112 idiomas diferentes. Hemos evaluado varios modelos multilingües en Minería de Bitexto, Clasificación y STS.

🦚 Extensible: Ya sea para agregar nuevas tareas, conjuntos de datos, métricas o elementos a la tabla de clasificación, cualquier contribución es bienvenida. Consulte el repositorio de GitHub para enviar a la tabla de clasificación o resolver problemas abiertos. ¡Esperamos que se una a nosotros en el viaje de encontrar el mejor modelo de incrustación de texto!

Resumen de las tareas y conjuntos de datos en MTEB. Los conjuntos de datos multilingües están marcados con un tono morado.

Modelos

Para la evaluación inicial de MTEB, nos centramos en modelos que afirman tener resultados de vanguardia y modelos populares en el Hub. Esto llevó a una alta representación de transformadores. 🤖

Modelos según el puntaje promedio de MTEB en inglés (y) versus velocidad (x) versus tamaño de incrustación (tamaño del círculo).

Agrupamos los modelos en las siguientes tres categorías para simplificar la búsqueda del mejor modelo para su tarea:

🏎 Máxima velocidad: Modelos como Glove ofrecen alta velocidad, pero carecen de conciencia de contexto, lo que resulta en puntajes promedio de MTEB bajos.

⚖️ Velocidad y rendimiento: Un poco más lentos, pero significativamente más fuertes, all-mpnet-base-v2 o all-MiniLM-L6-v2 ofrecen un buen equilibrio entre velocidad y rendimiento.

💪 Máximo rendimiento: Modelos con miles de millones de parámetros como ST5-XXL, GTR-XXL o SGPT-5.8B-msmarco dominan en MTEB. También tienden a producir incrustaciones más grandes, como SGPT-5.8B-msmarco, que produce incrustaciones de 4096 dimensiones que requieren más almacenamiento.

El rendimiento del modelo varía mucho según la tarea y el conjunto de datos, por lo que recomendamos consultar las diversas pestañas de la tabla de clasificación antes de decidir qué modelo utilizar.

Evalúe su modelo

Usando la biblioteca MTEB, puede evaluar cualquier modelo que produzca incrustaciones y agregar sus resultados a la tabla de clasificación pública. ¡Veamos un ejemplo rápido!

Primero, instale la biblioteca:

pip install mteb

Luego, evalúe un modelo en un conjunto de datos, por ejemplo, las incrustaciones de palabras komninos en Banking77.

from mteb import MTEB
from sentence_transformers import SentenceTransformer

model_name = "average_word_embeddings_komninos"
model = SentenceTransformer(model_name)

evaluation = MTEB(tasks=["Banking77Classification"])
results = evaluation.run(model, output_folder=f"results/{model_name}")

¡Esto debería producir un archivo results/average_word_embeddings_komninos/Banking77Classification.json!

Ahora puede enviar los resultados a la tabla de clasificación agregándolos a los metadatos de README.md de cualquier modelo en el Hub.

Ejecuta nuestro script automático para generar los metadatos:

python mteb_meta.py results/average_word_embeddings_komninos

El script producirá un archivo mteb_metadata.md que se verá así:

---
tags:
- mteb
model-index:
- name: average_word_embeddings_komninos
  results:
  - task:
      type: Clasificación
    dataset:
      type: mteb/banking77
      name: MTEB Banking77Classification
      config: default
      split: test
      revision: 0fd18e25b25c072e09e0d92ab615fda904d66300
    metrics:
    - type: precisión
      value: 66.76623376623377
    - type: f1
      value: 66.59096432882667
---

Ahora agrega los metadatos en la parte superior de un archivo README.md de cualquier modelo en el Hub, como este modelo SGPT-5.8B-msmarco, ¡y aparecerá en el ranking después de actualizar la página!

Próximos pasos

¡Sal ahí afuera y evalúa cualquier modelo que te guste! ¡Avísanos si tienes preguntas o comentarios abriendo un problema en nuestro repositorio de GitHub o en la pestaña de la comunidad del ranking 🤗

¡Feliz incrustación!

Créditos

Un gran agradecimiento a los siguientes que contribuyeron al artículo o al código base de MTEB (listados en orden alfabético): Steven Liu, Loïc Magne, Nils Reimers y Nouamane Tazi.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Experimenta la Realidad Aumentada (AR) directamente con tus propios ojos utilizando la IA

En un avance tecnológico, Brilliant Labs ha revolucionado el mercado de la Realidad Aumentada con su innovadora lente...

Investigación

Diseñar coches eléctricos ahora es más rápido con la IA de Toyota.

El Instituto de Investigación de Toyota (TRI) ha hecho un anuncio en el mundo del diseño de vehículos. Han presentado...

Inteligencia Artificial

Los emojis son cada vez más legalmente vinculantes. Pero todavía están abiertos a una amplia interpretación

Cada año, más casos en los tribunales de Estados Unidos consideran los emojis como legalmente vinculantes. Sin embarg...

Inteligencia Artificial

Actuadores neumáticos proporcionan aceleración similar a la de un robot cheetah

Investigadores de la Universidad de Ciudad del Cabo en Sudáfrica desarrollaron un robot de patas que utiliza actuador...