tsdae-lemone-mbert-base

louisbrulenaudet
Similitud de oraciones

Este es un modelo de sentence-transformers: mapea oraciones y párrafos a un espacio vectorial denso de 768 dimensiones y se puede usar para tareas como agrupamiento o búsqueda semántica. Modelo de transformadores preentrenado en los 102 idiomas con la mayor Wikipedia utilizando un objetivo de modelado de lenguaje enmascarado (MLM), ajustado utilizando Transformer-based Sequential Denoising Auto-Encoder para el aprendizaje no supervisado de incrustaciones de oraciones con un objetivo: adaptación al dominio legal francés. De esta manera, el modelo aprende una representación interna del lenguaje legal francés en el conjunto de entrenamiento que luego se puede utilizar para extraer características útiles para tareas posteriores: si tienes un conjunto de datos de oraciones etiquetadas, puedes entrenar un clasificador estándar utilizando las características producidas por el modelo como entradas.

Como usar

Uso (Sentence-Transformers):

pip install -U sentence-transformers

from sentence_transformers import SentenceTransformer
sentences = ["Esta es una oración de ejemplo", "Cada oración se convierte"]

modelo = SentenceTransformer("louisbrulenaudet/tsdae-lemone-mbert-base")
embeddings = modelo.encode(sentences)
print(embeddings)

Uso (HuggingFace Transformers):

from transformers import AutoTokenizer, AutoModel
import torch

def cls_pooling(model_output, attention_mask):
    return model_output[0][:,0]

# Oraciones para las que queremos incrustaciones de oraciones
sentences = ['Esta es una oración de ejemplo', 'Cada oración se convierte']

# Cargar modelo desde HuggingFace Hub
 tokenizer = AutoTokenizer.from_pretrained("louisbrulenaudet/tsdae-lemone-mbert-base")
modelo = AutoModel.from_pretrained("louisbrulenaudet/tsdae-lemone-mbert-base")

# Tokenizar oraciones
encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors="pt")

# Calcular incrustaciones de tokens
with torch.no_grad():
    model_output = modelo(**encoded_input)

# Realizar pooling. En este caso, cls pooling.
incrustaciones_oraciones = cls_pooling(model_output, encoded_input["attention_mask"])

print("Incrustaciones de oraciones:")
print(incrustaciones_oraciones)

Funcionalidades

Modelo de sentence-transformers
Mapa oraciones y párrafos a un espacio vectorial denso
Preentrenado en los 102 idiomas más grandes de Wikipedia
Objetivo de modelado de lenguaje enmascarado (MLM)
Ajustado con Autoencoder de Desenfoque Secuencial Basado en Transformadores
Aprendizaje no supervisado de incrustaciones de oraciones
Adaptación al dominio legal francés

Casos de uso

Agrupamiento
Búsqueda semántica
Extracción de características para tareas posteriores
Clasificación de oraciones etiquetadas