Lajavaness/sentence-camembert-base

Lajavaness
Similitud de oraciones

Modelos de incrustaciones de oraciones preentrenados que son el estado del arte de las incrustaciones de oraciones para el francés. Este modelo se mejora desde dangvantuan/sentence-camembert-base utilizando ajuste fino con Augmented SBERT en el conjunto de datos stsb junto con Estrategias de Muestreo por Pares a través de 2 modelos CrossEncoder-camembert-large y dangvantuan/sentence-camembert-large.

Como usar

El modelo se puede usar directamente (sin un modelo de lenguaje) de la siguiente manera:

from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Lajavaness/sentence-camembert-base")

sentences = ["Un avion est en train de décoller.",
"Un homme joue d'une grande flûte.",
"Un homme étale du fromage râpé sur une pizza.",
"Une personne jette un chat au plafond.",
"Une personne est en train de plier un morceau de papier."]

embeddings = model.encode(sentences)

El modelo puede ser evaluado de la siguiente manera en los datos de prueba en francés del stsb:

from sentence_transformers import SentenceTransformer
from sentence_transformers.readers import InputExample
from sentence_transformers.evaluation import EmbeddingSimilarityEvaluator
from datasets import load_dataset

def convert_dataset(dataset):
 dataset_samples=[]
 for df in dataset:
 score = float(df['similarity_score'])/5.0 # Normalizar puntuación en rango 0 ... 1
 inp_example = InputExample(texts=[df['sentence1'], df['sentence2']], label=score)
 dataset_samples.append(inp_example)
 return dataset_samples

# Cargar el conjunto de datos para evaluación
 df_dev = load_dataset("stsb_multi_mt", name="fr", split="dev")
 df_test = load_dataset("stsb_multi_mt", name="fr", split="test")

# Convertir el conjunto de datos para evaluación
# Para el conjunto de desarrollo:
 dev_samples = convert_dataset(df_dev)
 val_evaluator = EmbeddingSimilarityEvaluator.from_input_examples(dev_samples, name='sts-dev')
 val_evaluator(model, output_path="./")

# Para el conjunto de prueba:
 test_samples = convert_dataset(df_test)
 test_evaluator = EmbeddingSimilarityEvaluator.from_input_examples(test_samples, name='sts-test')
 test_evaluator(model, output_path="./")

Funcionalidades

Estado del arte en incrustaciones de oraciones para francés
Ajustado finamente con Augmented SBERT
Estrategias de Muestreo por Pares
Alta correlación de Pearson y Spearman en varios benchmarks
Compilación basada en modelos preexistentes como CrossEncoder-camembert-large y dangvantuan/sentence-camembert-large

Casos de uso

Incrustaciones de oraciones para la búsqueda semántica
Correlaciones de similitud de texto
Incrustaciones para modelos de traducción y análisis de texto en francés
Evaluaciones de puntuación por pares de oraciones