This model was is an improvement over the
dangvantuan/CrossEncoder-camembert-large offering greater robustness and better performance
This model was trained on the
STS benchmark dataset and has been combined with
Augmented SBERT. The model benefits from Pair Sampling Strategies using two models:
CrossEncoder-camembert-large and
dangvantuan/sentence-camembert-large. The model will predict a score between 0 and 1 how for the semantic similarity of two sentences.
Using this model becomes easy when you have
sentence-transformers installed:
1from sentence_transformers import CrossEncoder
2model = CrossEncoder('Lajavaness/CrossEncoder-camembert-large', max_length=512)
3scores = model.predict([('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") ])
4
The model can be evaluated as follows on the French test data of stsb.
1from sentence_transformers.readers import InputExample
2from sentence_transformers.cross_encoder.evaluation import CECorrelationEvaluator
3from datasets import load_dataset
4def convert_dataset(dataset):
5 dataset_samples=[]
6 for df in dataset:
7 score = float(df['similarity_score'])/5.0 # Normalize score to range 0 ... 1
8 inp_example = InputExample(texts=[df['sentence1'],
9 df['sentence2']], label=score)
10 dataset_samples.append(inp_example)
11 return dataset_samples
12
13# Loading the dataset for evaluation
14df_dev = load_dataset("stsb_multi_mt", name="fr", split="dev")
15df_test = load_dataset("stsb_multi_mt", name="fr", split="test")
16
17# Convert the dataset for evaluation
18
19# For Dev set:
20dev_samples = convert_dataset(df_dev)
21val_evaluator = CECorrelationEvaluator.from_input_examples(dev_samples, name='sts-dev')
22val_evaluator(model, output_path="./")
23
24# For Test set, the Pearson and Spearman correlation are evaluated on many different benchmark datasets:
25
26test_samples = convert_dataset(df_test)
27test_evaluator = CECorrelationEvaluator.from_input_examples(test_samples, name='sts-test')
28test_evaluator(models, output_path="./")