metadata
language:
- en
license: apache-2.0
library_name: sentence-transformers
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_with_trainer
- dataset_size:100K<n<1M
- loss:SoftmaxLoss
- loss:CosineSimilarityLoss
base_model: microsoft/mpnet-base
datasets:
- nyu-mll/multi_nli
- stanfordnlp/snli
- mteb/stsbenchmark-sts
metrics:
- pearson_cosine
- spearman_cosine
- pearson_manhattan
- spearman_manhattan
- pearson_euclidean
- spearman_euclidean
- pearson_dot
- spearman_dot
- pearson_max
- spearman_max
widget:
- source_sentence: >-
A taxi SUV drives past an urban construction site, as a man walks down the
street in the other direction.
sentences:
- The woman is walking down the street with high heels.
- A man is reading documents in a binder.
- A man is chasing an SUV that is going in the same direction as him.
- source_sentence: >-
Young man running towards a tennis court while another is waiting in the
other side of the net.
sentences:
- The person is cooking a hamburger.
- A young man is running to grab a tennis ball.
- A woman is dancing near a fire.
- source_sentence: An asian woman sitting outside an outdoor market stall.
sentences:
- There are three workers
- A woman sits outdoors.
- Five women sit at a table.
- source_sentence: >-
All the same methods of analysis that are used with spoken languages apply
successfully to signed languages.
sentences:
- >-
One idea that's been going around at least since the 80s is that you can
distinguish between Holds and Moves.
- >-
You only need two-dimensional trigonometry if you know the distances to
the two stars and their angular separation.
- A woman driving a car is talking to the man seated beside her.
- source_sentence: >-
Rouen is the ancient center of Normandy's thriving textile industry, and
the place of Joan of Arc's martyrdom ' a national symbol of resistance to
tyranny.
sentences:
- The islands are part of France now instead of just colonies.
- >-
Joan of Arc sacrificed her life at Rouen, which became an enduring
symbol of opposition to tyranny.
- I don't know how cold it got last night.
pipeline_tag: sentence-similarity
co2_eq_emissions:
emissions: 6.863209894681815
energy_consumed: 0.017656739339344318
source: codecarbon
training_type: fine-tuning
on_cloud: false
cpu_model: 13th Gen Intel(R) Core(TM) i7-13700K
ram_total_size: 31.777088165283203
hours_used: 0.068
hardware_used: 1 x NVIDIA GeForce RTX 3090
model-index:
- name: SentenceTransformer based on microsoft/mpnet-base
results:
- task:
type: semantic-similarity
name: Semantic Similarity
dataset:
name: sts dev
type: sts-dev
metrics:
- type: pearson_cosine
value: 0.8344104750902503
name: Pearson Cosine
- type: spearman_cosine
value: 0.8294923795333993
name: Spearman Cosine
- type: pearson_manhattan
value: 0.8316959259914674
name: Pearson Manhattan
- type: spearman_manhattan
value: 0.8331844817222047
name: Spearman Manhattan
- type: pearson_euclidean
value: 0.8272941934077804
name: Pearson Euclidean
- type: spearman_euclidean
value: 0.8294923795333993
name: Spearman Euclidean
- type: pearson_dot
value: 0.8344104825648291
name: Pearson Dot
- type: spearman_dot
value: 0.8294923795333993
name: Spearman Dot
- type: pearson_max
value: 0.8344104825648291
name: Pearson Max
- type: spearman_max
value: 0.8331844817222047
name: Spearman Max
- task:
type: semantic-similarity
name: Semantic Similarity
dataset:
name: sts test
type: sts-test
metrics:
- type: pearson_cosine
value: 0.7776062173443514
name: Pearson Cosine
- type: spearman_cosine
value: 0.7642518713703523
name: Spearman Cosine
- type: pearson_manhattan
value: 0.7788269653910183
name: Pearson Manhattan
- type: spearman_manhattan
value: 0.7659203139768728
name: Spearman Manhattan
- type: pearson_euclidean
value: 0.7763456809736229
name: Pearson Euclidean
- type: spearman_euclidean
value: 0.7642518713703523
name: Spearman Euclidean
- type: pearson_dot
value: 0.7776062158976489
name: Pearson Dot
- type: spearman_dot
value: 0.7642518713703523
name: Spearman Dot
- type: pearson_max
value: 0.7788269653910183
name: Pearson Max
- type: spearman_max
value: 0.7659203139768728
name: Spearman Max
SentenceTransformer based on microsoft/mpnet-base
This is a sentence-transformers model finetuned from microsoft/mpnet-base on the multi_nli, snli and stsb datasets. It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.
Model Details
Model Description
- Model Type: Sentence Transformer
- Base model: microsoft/mpnet-base
- Maximum Sequence Length: 384 tokens
- Output Dimensionality: 768 tokens
- Similarity Function: Dot Product
- Training Datasets:
- Language: en
- License: apache-2.0
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'max_seq_length': 384, 'do_lower_case': False}) with Transformer model: MPNetModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
(2): Normalize()
)
Usage
Direct Usage (Sentence Transformers)
First install the Sentence Transformers library:
pip install -U sentence-transformers
Then you can load this model and run inference.
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("tomaarsen/mpnet-base-allnli")
# Run inference
sentences = [
"Rouen is the ancient center of Normandy's thriving textile industry, and the place of Joan of Arc's martyrdom ' a national symbol of resistance to tyranny.",
'Joan of Arc sacrificed her life at Rouen, which became an enduring symbol of opposition to tyranny.',
'The islands are part of France now instead of just colonies.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Evaluation
Metrics
Semantic Similarity
- Dataset:
sts-dev
- Evaluated with
EmbeddingSimilarityEvaluator
Metric | Value |
---|---|
pearson_cosine | 0.8344 |
spearman_cosine | 0.8295 |
pearson_manhattan | 0.8317 |
spearman_manhattan | 0.8332 |
pearson_euclidean | 0.8273 |
spearman_euclidean | 0.8295 |
pearson_dot | 0.8344 |
spearman_dot | 0.8295 |
pearson_max | 0.8344 |
spearman_max | 0.8332 |
Semantic Similarity
- Dataset:
sts-test
- Evaluated with
EmbeddingSimilarityEvaluator
Metric | Value |
---|---|
pearson_cosine | 0.7776 |
spearman_cosine | 0.7643 |
pearson_manhattan | 0.7788 |
spearman_manhattan | 0.7659 |
pearson_euclidean | 0.7763 |
spearman_euclidean | 0.7643 |
pearson_dot | 0.7776 |
spearman_dot | 0.7643 |
pearson_max | 0.7788 |
spearman_max | 0.7659 |
Training Details
Training Datasets
multi_nli
- Dataset: multi_nli at da70db2
- Size: 392,702 training samples
- Columns:
premise
,hypothesis
, andlabel
- Approximate statistics based on the first 1000 samples:
premise hypothesis label type string string int details - min: 4 tokens
- mean: 26.95 tokens
- max: 189 tokens
- min: 5 tokens
- mean: 14.11 tokens
- max: 49 tokens
- 0: ~34.30%
- 1: ~28.20%
- 2: ~37.50%
- Samples:
premise hypothesis label Conceptually cream skimming has two basic dimensions - product and geography.
Product and geography are what make cream skimming work.
1
you know during the season and i guess at at your level uh you lose them to the next level if if they decide to recall the the parent team the Braves decide to call to recall a guy from triple A then a double A guy goes up to replace him and a single A guy goes up to replace him
You lose the things to the following level if the people recall.
0
One of our number will carry out your instructions minutely.
A member of my team will execute your orders with immense precision.
0
- Loss:
SoftmaxLoss
snli
- Dataset: snli at cdb5c3d
- Size: 549,367 training samples
- Columns:
snli_premise
,hypothesis
, andlabel
- Approximate statistics based on the first 1000 samples:
snli_premise hypothesis label type string string int details - min: 6 tokens
- mean: 17.38 tokens
- max: 52 tokens
- min: 4 tokens
- mean: 10.7 tokens
- max: 31 tokens
- 0: ~33.40%
- 1: ~33.30%
- 2: ~33.30%
- Samples:
snli_premise hypothesis label A person on a horse jumps over a broken down airplane.
A person is training his horse for a competition.
1
A person on a horse jumps over a broken down airplane.
A person is at a diner, ordering an omelette.
2
A person on a horse jumps over a broken down airplane.
A person is outdoors, on a horse.
0
- Loss:
SoftmaxLoss
stsb
- Dataset: stsb at 8913289
- Size: 5,749 training samples
- Columns:
sentence1
,sentence2
, andlabel
- Approximate statistics based on the first 1000 samples:
sentence1 sentence2 label type string string float details - min: 6 tokens
- mean: 10.0 tokens
- max: 28 tokens
- min: 5 tokens
- mean: 9.95 tokens
- max: 25 tokens
- min: 0.0
- mean: 0.54
- max: 1.0
- Samples:
sentence1 sentence2 label A plane is taking off.
An air plane is taking off.
1.0
A man is playing a large flute.
A man is playing a flute.
0.76
A man is spreading shreded cheese on a pizza.
A man is spreading shredded cheese on an uncooked pizza.
0.76
- Loss:
CosineSimilarityLoss
with these parameters:{ "loss_fct": "torch.nn.modules.loss.MSELoss" }
Evaluation Datasets
multi_nli
- Dataset: multi_nli at da70db2
- Size: 100 evaluation samples
- Columns:
premise
,hypothesis
, andlabel
- Approximate statistics based on the first 1000 samples:
premise hypothesis label type string string int details - min: 5 tokens
- mean: 27.67 tokens
- max: 138 tokens
- min: 6 tokens
- mean: 13.48 tokens
- max: 27 tokens
- 0: ~35.00%
- 1: ~31.00%
- 2: ~34.00%
- Samples:
premise hypothesis label The new rights are nice enough
Everyone really likes the newest benefits
1
This site includes a list of all award winners and a searchable database of Government Executive articles.
The Government Executive articles housed on the website are not able to be searched.
2
uh i don't know i i have mixed emotions about him uh sometimes i like him but at the same times i love to see somebody beat him
I like him for the most part, but would still enjoy seeing someone beat him.
0
- Loss:
SoftmaxLoss
snli
- Dataset: snli at cdb5c3d
- Size: 9,842 evaluation samples
- Columns:
snli_premise
,hypothesis
, andlabel
- Approximate statistics based on the first 1000 samples:
snli_premise hypothesis label type string string int details - min: 6 tokens
- mean: 18.44 tokens
- max: 57 tokens
- min: 5 tokens
- mean: 10.57 tokens
- max: 25 tokens
- 0: ~33.10%
- 1: ~33.30%
- 2: ~33.60%
- Samples:
snli_premise hypothesis label Two women are embracing while holding to go packages.
The sisters are hugging goodbye while holding to go packages after just eating lunch.
1
Two women are embracing while holding to go packages.
Two woman are holding packages.
0
Two women are embracing while holding to go packages.
The men are fighting outside a deli.
2
- Loss:
SoftmaxLoss
stsb
- Dataset: stsb at 8913289
- Size: 1,500 evaluation samples
- Columns:
sentence1
,sentence2
, andlabel
- Approximate statistics based on the first 1000 samples:
sentence1 sentence2 label type string string float details - min: 5 tokens
- mean: 15.1 tokens
- max: 45 tokens
- min: 6 tokens
- mean: 15.11 tokens
- max: 53 tokens
- min: 0.0
- mean: 0.47
- max: 1.0
- Samples:
sentence1 sentence2 label A man with a hard hat is dancing.
A man wearing a hard hat is dancing.
1.0
A young child is riding a horse.
A child is riding a horse.
0.95
A man is feeding a mouse to a snake.
The man is feeding a mouse to the snake.
1.0
- Loss:
CosineSimilarityLoss
with these parameters:{ "loss_fct": "torch.nn.modules.loss.MSELoss" }
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy
: stepsper_device_train_batch_size
: 64per_device_eval_batch_size
: 64learning_rate
: 2e-05num_train_epochs
: 1warmup_ratio
: 0.1seed
: 33bf16
: Trueload_best_model_at_end
: Truepush_to_hub
: Truehub_model_id
: tomaarsen/mpnet-base-allnlihub_private_repo
: Truemulti_dataset_batch_sampler
: round_robin
All Hyperparameters
Click to expand
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: stepsprediction_loss_only
: Trueper_device_train_batch_size
: 64per_device_eval_batch_size
: 64per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 1eval_accumulation_steps
: Nonelearning_rate
: 2e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1.0num_train_epochs
: 1max_steps
: -1lr_scheduler_type
: linearlr_scheduler_kwargs
: {}warmup_ratio
: 0.1warmup_steps
: 0log_level
: passivelog_level_replica
: warninglog_on_each_node
: Truelogging_nan_inf_filter
: Truesave_safetensors
: Truesave_on_each_node
: Falsesave_only_model
: Falserestore_callback_states_from_checkpoint
: Falseno_cuda
: Falseuse_cpu
: Falseuse_mps_device
: Falseseed
: 33data_seed
: Nonejit_mode_eval
: Falseuse_ipex
: Falsebf16
: Truefp16
: Falsefp16_opt_level
: O1half_precision_backend
: autobf16_full_eval
: Falsefp16_full_eval
: Falsetf32
: Nonelocal_rank
: 0ddp_backend
: Nonetpu_num_cores
: Nonetpu_metrics_debug
: Falsedebug
: []dataloader_drop_last
: Falsedataloader_num_workers
: 0dataloader_prefetch_factor
: Nonepast_index
: -1disable_tqdm
: Falseremove_unused_columns
: Truelabel_names
: Noneload_best_model_at_end
: Trueignore_data_skip
: Falsefsdp
: []fsdp_min_num_params
: 0fsdp_config
: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap
: Noneaccelerator_config
: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed
: Nonelabel_smoothing_factor
: 0.0optim
: adamw_torchoptim_args
: Noneadafactor
: Falsegroup_by_length
: Falselength_column_name
: lengthddp_find_unused_parameters
: Noneddp_bucket_cap_mb
: Noneddp_broadcast_buffers
: Falsedataloader_pin_memory
: Truedataloader_persistent_workers
: Falseskip_memory_metrics
: Trueuse_legacy_prediction_loop
: Falsepush_to_hub
: Trueresume_from_checkpoint
: Nonehub_model_id
: tomaarsen/mpnet-base-allnlihub_strategy
: every_savehub_private_repo
: Truehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseeval_do_concat_batches
: Truefp16_backend
: autopush_to_hub_model_id
: Nonepush_to_hub_organization
: Nonemp_parameters
:auto_find_batch_size
: Falsefull_determinism
: Falsetorchdynamo
: Noneray_scope
: lastddp_timeout
: 1800torch_compile
: Falsetorch_compile_backend
: Nonetorch_compile_mode
: Nonedispatch_batches
: Nonesplit_batches
: Noneinclude_tokens_per_second
: Falseinclude_num_input_tokens_seen
: Falseneftune_noise_alpha
: Noneoptim_target_modules
: Nonebatch_eval_metrics
: Falsebatch_sampler
: batch_samplermulti_dataset_batch_sampler
: round_robin
Training Logs
Epoch | Step | Training Loss | multi nli loss | snli loss | stsb loss | sts-dev_spearman_dot | sts-test_spearman_cosine |
---|---|---|---|---|---|---|---|
0.0370 | 10 | 0.8347 | - | - | - | - | - |
0.0741 | 20 | 0.8269 | - | - | - | - | - |
0.1111 | 30 | 0.7036 | 1.0978 | 1.0984 | 0.0830 | 0.6636 | - |
0.1481 | 40 | 0.7889 | - | - | - | - | - |
0.1852 | 50 | 0.7948 | - | - | - | - | - |
0.2222 | 60 | 0.688 | 1.0976 | 1.0961 | 0.0679 | 0.7124 | - |
0.2593 | 70 | 0.7911 | - | - | - | - | - |
0.2963 | 80 | 0.7847 | - | - | - | - | - |
0.3333 | 90 | 0.6801 | 1.0950 | 1.0942 | 0.0522 | 0.7810 | - |
0.3704 | 100 | 0.7837 | - | - | - | - | - |
0.4074 | 110 | 0.7803 | - | - | - | - | - |
0.4444 | 120 | 0.6756 | 1.0978 | 1.0929 | 0.0441 | 0.8157 | - |
0.4815 | 130 | 0.7829 | - | - | - | - | - |
0.5185 | 140 | 0.7789 | - | - | - | - | - |
0.5556 | 150 | 0.6756 | 1.0954 | 1.0911 | 0.0433 | 0.8215 | - |
0.5926 | 160 | 0.7802 | - | - | - | - | - |
0.6296 | 170 | 0.7751 | - | - | - | - | - |
0.6667 | 180 | 0.6679 | 1.0934 | 1.0885 | 0.0401 | 0.8235 | - |
0.7037 | 190 | 0.7755 | - | - | - | - | - |
0.7407 | 200 | 0.775 | - | - | - | - | - |
0.7778 | 210 | 0.6694 | 1.0919 | 1.0859 | 0.0377 | 0.8295 | - |
0.8148 | 220 | 0.7733 | - | - | - | - | - |
0.8519 | 230 | 0.772 | - | - | - | - | - |
0.8889 | 240 | 0.6656 | 1.0891 | 1.0838 | 0.0365 | 0.8292 | - |
0.9259 | 250 | 0.7726 | - | - | - | - | - |
0.9630 | 260 | 0.7731 | - | - | - | - | - |
1.0 | 270 | 0.6674 | 1.0888 | 1.0833 | 0.0372 | 0.8295 | 0.7643 |
- The bold row denotes the saved checkpoint.
Environmental Impact
Carbon emissions were measured using CodeCarbon.
- Energy Consumed: 0.018 kWh
- Carbon Emitted: 0.007 kg of CO2
- Hours Used: 0.068 hours
Training Hardware
- On Cloud: No
- GPU Model: 1 x NVIDIA GeForce RTX 3090
- CPU Model: 13th Gen Intel(R) Core(TM) i7-13700K
- RAM Size: 31.78 GB
Framework Versions
- Python: 3.11.6
- Sentence Transformers: 3.1.0.dev0
- Transformers: 4.41.2
- PyTorch: 2.3.0+cu121
- Accelerate: 0.30.1
- Datasets: 2.19.1
- Tokenizers: 0.19.1
Citation
BibTeX
Sentence Transformers and SoftmaxLoss
@inproceedings{reimers-2019-sentence-bert,
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
author = "Reimers, Nils and Gurevych, Iryna",
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
month = "11",
year = "2019",
publisher = "Association for Computational Linguistics",
url = "https://arxiv.org/abs/1908.10084",
}