--- tags: - sentence-transformers - sentence-similarity - feature-extraction - generated_from_trainer - dataset_size:7960 - loss:CoSENTLoss base_model: sentence-transformers/all-MiniLM-L6-v2 widget: - source_sentence: And your phone. Okay do you already have a phone in mind, what you wanted to upgrade to. sentences: - I'm now going to read out some terms and conditions to complete the order. - The same discounts you can have been added as an additional line and do into your account. It needs be entitled to % discount off of the costs. - Thank you and could you please confirm to me what is your full name. - source_sentence: 'So glad you''re on the right plan. I will also check your average monthly usage for the past few months. Your usage is only ## gig of mobile data and then the highest one, it''s around ##. Gig of mobile details. So definitely the ## gig of mobile data will if broken.' sentences: - Thank you for calling over to my name is how can I help you. - So the phone that you currently have is that currently a Samsung? - So on that's something that you can they get that the shop and it's at a renewal for our insurance. So just in case like once you get back to the UK and you don't want to have the insurance anymore. You can possibly remove that. That and the full garbage insurance. - source_sentence: Okay, well, I just want to share with you that I'm happy to advise that you have an amazing offer on our secondary ninth. So there any family members like to join or to under your name with a same billing address so they will be getting a 20% desk. sentences: - Yes, that's correct for know. Our price is £ and then it won't go down to £ after you apply the discount. - Thank you for calling over to my name is how can I help you. - Checking your account I can see you are on the and you have been paying £ per month. Is that correct? - source_sentence: 'I just read to process this I just like to open your account here to see if we can get this eligible for your upgrade for the new iPhone ## so here.' sentences: - I now need to read some insurance disclosures related to the Ultimate Plan you have chosen. - Thank you and could you please confirm to me what is your full name. - I can provide to you . Are you happy to go ahead with this? - source_sentence: Okay, and can you provide me your full name please. sentences: - So on that's something that you can they get that the shop and it's at a renewal for our insurance. So just in case like once you get back to the UK and you don't want to have the insurance anymore. You can possibly remove that. That and the full garbage insurance. - You. Okay, so for this one, how do you how do you normally use your mobile data. - You. Okay, so for this one, how do you how do you normally use your mobile data. pipeline_tag: sentence-similarity library_name: sentence-transformers metrics: - pearson_cosine - spearman_cosine - pearson_manhattan - spearman_manhattan - pearson_euclidean - spearman_euclidean - pearson_dot - spearman_dot - pearson_max - spearman_max model-index: - name: SentenceTransformer based on sentence-transformers/all-MiniLM-L6-v2 results: - task: type: semantic-similarity name: Semantic Similarity dataset: name: sts dev type: sts_dev metrics: - type: pearson_cosine value: 0.5177189921265649 name: Pearson Cosine - type: spearman_cosine value: 0.2603983787734805 name: Spearman Cosine - type: pearson_manhattan value: 0.5608459921843345 name: Pearson Manhattan - type: spearman_manhattan value: 0.2595766499932607 name: Spearman Manhattan - type: pearson_euclidean value: 0.5641188480826617 name: Pearson Euclidean - type: spearman_euclidean value: 0.26039837957858836 name: Spearman Euclidean - type: pearson_dot value: 0.5177189925954635 name: Pearson Dot - type: spearman_dot value: 0.26040366240168195 name: Spearman Dot - type: pearson_max value: 0.5641188480826617 name: Pearson Max - type: spearman_max value: 0.26040366240168195 name: Spearman Max - type: pearson_cosine value: 0.4585915541798693 name: Pearson Cosine - type: spearman_cosine value: 0.24734582807664446 name: Spearman Cosine - type: pearson_manhattan value: 0.5059296028724503 name: Pearson Manhattan - type: spearman_manhattan value: 0.2466879170820096 name: Spearman Manhattan - type: pearson_euclidean value: 0.506069567328991 name: Pearson Euclidean - type: spearman_euclidean value: 0.24734582912817787 name: Spearman Euclidean - type: pearson_dot value: 0.4585915495841867 name: Pearson Dot - type: spearman_dot value: 0.24734582759867477 name: Spearman Dot - type: pearson_max value: 0.506069567328991 name: Pearson Max - type: spearman_max value: 0.24734582912817787 name: Spearman Max --- # SentenceTransformer based on sentence-transformers/all-MiniLM-L6-v2 This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [sentence-transformers/all-MiniLM-L6-v2](https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2). It maps sentences & paragraphs to a 384-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:** [sentence-transformers/all-MiniLM-L6-v2](https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2) - **Maximum Sequence Length:** 256 tokens - **Output Dimensionality:** 384 tokens - **Similarity Function:** Cosine Similarity ### Model Sources - **Documentation:** [Sentence Transformers Documentation](https://sbert.net) - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) - **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) ### Full Model Architecture ``` SentenceTransformer( (0): Transformer({'max_seq_length': 256, 'do_lower_case': False}) with Transformer model: BertModel (1): Pooling({'word_embedding_dimension': 384, '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: ```bash pip install -U sentence-transformers ``` Then you can load this model and run inference. ```python from sentence_transformers import SentenceTransformer # Download from the 🤗 Hub model = SentenceTransformer("enochlev/xlm-similarity") # Run inference sentences = [ 'Okay, and can you provide me your full name please.', 'You. Okay, so for this one, how do you how do you normally use your mobile data.', 'You. Okay, so for this one, how do you how do you normally use your mobile data.', ] embeddings = model.encode(sentences) print(embeddings.shape) # [3, 384] # 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](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.EmbeddingSimilarityEvaluator) | Metric | Value | |:-------------------|:-----------| | pearson_cosine | 0.5177 | | spearman_cosine | 0.2604 | | pearson_manhattan | 0.5608 | | spearman_manhattan | 0.2596 | | pearson_euclidean | 0.5641 | | spearman_euclidean | 0.2604 | | pearson_dot | 0.5177 | | spearman_dot | 0.2604 | | pearson_max | 0.5641 | | **spearman_max** | **0.2604** | #### Semantic Similarity * Dataset: `sts_dev` * Evaluated with [EmbeddingSimilarityEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.EmbeddingSimilarityEvaluator) | Metric | Value | |:-------------------|:-----------| | pearson_cosine | 0.4586 | | spearman_cosine | 0.2473 | | pearson_manhattan | 0.5059 | | spearman_manhattan | 0.2467 | | pearson_euclidean | 0.5061 | | spearman_euclidean | 0.2473 | | pearson_dot | 0.4586 | | spearman_dot | 0.2473 | | pearson_max | 0.5061 | | **spearman_max** | **0.2473** | ## Training Details ### Training Dataset #### Unnamed Dataset * Size: 7,960 training samples * Columns: text1, text2, and label * Approximate statistics based on the first 1000 samples: | | text1 | text2 | label | |:--------|:---------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|:---------------------------------------------------------------| | type | string | string | float | | details | | | | * Samples: | text1 | text2 | label | |:---------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------| | Hello, welcome to O2. My name is __ How can I help you today? | Thank you for calling over to my name is how can I help you. | 1.0 | | Hello, welcome to O2. My name is __ How can I help you today? | So, I'd look into our accessory so for the airbags the one that we have an ongoing promotion right now for the accessories is the airport second generation. So you can. And either by there's like a great if you want to or I can also make it as an instalment for you. If you want to. | 0.2 | | Hello, welcome to O2. My name is __ How can I help you today? | So on that's something that you can they get that the shop and it's at a renewal for our insurance. So just in case like once you get back to the UK and you don't want to have the insurance anymore. You can possibly remove that. That and the full garbage insurance. | 0.2 | * Loss: [CoSENTLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cosentloss) with these parameters: ```json { "scale": 20.0, "similarity_fct": "pairwise_cos_sim" } ``` ### Evaluation Dataset #### Unnamed Dataset * Size: 1,980 evaluation samples * Columns: text1, text2, and label * Approximate statistics based on the first 1000 samples: | | text1 | text2 | label | |:--------|:-----------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|:---------------------------------------------------------------| | type | string | string | float | | details | | | | * Samples: | text1 | text2 | label | |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------| | Right perfect. Thank you for passenger security cyber. Now let me go ahead. Then I look for your option to do an upgrade. So you had mentioned that you're wanting to get an upgrade. Can you tell me is it for a devise or a single plan. | Are you planning to get a new sim only plan or a new phone? | 1.0 | | Right perfect. Thank you for passenger security cyber. Now let me go ahead. Then I look for your option to do an upgrade. So you had mentioned that you're wanting to get an upgrade. Can you tell me is it for a devise or a single plan. | So, I'd look into our accessory so for the airbags the one that we have an ongoing promotion right now for the accessories is the airport second generation. So you can. And either by there's like a great if you want to or I can also make it as an instalment for you. If you want to. | 0.2 | | Right perfect. Thank you for passenger security cyber. Now let me go ahead. Then I look for your option to do an upgrade. So you had mentioned that you're wanting to get an upgrade. Can you tell me is it for a devise or a single plan. | So on that's something that you can they get that the shop and it's at a renewal for our insurance. So just in case like once you get back to the UK and you don't want to have the insurance anymore. You can possibly remove that. That and the full garbage insurance. | 0.2 | * Loss: [CoSENTLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cosentloss) with these parameters: ```json { "scale": 20.0, "similarity_fct": "pairwise_cos_sim" } ``` ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: epoch - `per_device_train_batch_size`: 256 - `per_device_eval_batch_size`: 256 - `num_train_epochs`: 1 - `warmup_ratio`: 0.1 - `batch_sampler`: no_duplicates #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: epoch - `prediction_loss_only`: True - `per_device_train_batch_size`: 256 - `per_device_eval_batch_size`: 256 - `per_gpu_train_batch_size`: None - `per_gpu_eval_batch_size`: None - `gradient_accumulation_steps`: 1 - `eval_accumulation_steps`: None - `torch_empty_cache_steps`: None - `learning_rate`: 5e-05 - `weight_decay`: 0.0 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1.0 - `num_train_epochs`: 1 - `max_steps`: -1 - `lr_scheduler_type`: linear - `lr_scheduler_kwargs`: {} - `warmup_ratio`: 0.1 - `warmup_steps`: 0 - `log_level`: passive - `log_level_replica`: warning - `log_on_each_node`: True - `logging_nan_inf_filter`: True - `save_safetensors`: True - `save_on_each_node`: False - `save_only_model`: False - `restore_callback_states_from_checkpoint`: False - `no_cuda`: False - `use_cpu`: False - `use_mps_device`: False - `seed`: 42 - `data_seed`: None - `jit_mode_eval`: False - `use_ipex`: False - `bf16`: False - `fp16`: False - `fp16_opt_level`: O1 - `half_precision_backend`: auto - `bf16_full_eval`: False - `fp16_full_eval`: False - `tf32`: None - `local_rank`: 0 - `ddp_backend`: None - `tpu_num_cores`: None - `tpu_metrics_debug`: False - `debug`: [] - `dataloader_drop_last`: False - `dataloader_num_workers`: 0 - `dataloader_prefetch_factor`: None - `past_index`: -1 - `disable_tqdm`: False - `remove_unused_columns`: True - `label_names`: None - `load_best_model_at_end`: False - `ignore_data_skip`: False - `fsdp`: [] - `fsdp_min_num_params`: 0 - `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False} - `fsdp_transformer_layer_cls_to_wrap`: None - `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None} - `deepspeed`: None - `label_smoothing_factor`: 0.0 - `optim`: adamw_torch - `optim_args`: None - `adafactor`: False - `group_by_length`: False - `length_column_name`: length - `ddp_find_unused_parameters`: None - `ddp_bucket_cap_mb`: None - `ddp_broadcast_buffers`: False - `dataloader_pin_memory`: True - `dataloader_persistent_workers`: False - `skip_memory_metrics`: True - `use_legacy_prediction_loop`: False - `push_to_hub`: False - `resume_from_checkpoint`: None - `hub_model_id`: None - `hub_strategy`: every_save - `hub_private_repo`: False - `hub_always_push`: False - `gradient_checkpointing`: False - `gradient_checkpointing_kwargs`: None - `include_inputs_for_metrics`: False - `eval_do_concat_batches`: True - `fp16_backend`: auto - `push_to_hub_model_id`: None - `push_to_hub_organization`: None - `mp_parameters`: - `auto_find_batch_size`: False - `full_determinism`: False - `torchdynamo`: None - `ray_scope`: last - `ddp_timeout`: 1800 - `torch_compile`: False - `torch_compile_backend`: None - `torch_compile_mode`: None - `dispatch_batches`: None - `split_batches`: None - `include_tokens_per_second`: False - `include_num_input_tokens_seen`: False - `neftune_noise_alpha`: None - `optim_target_modules`: None - `batch_eval_metrics`: False - `eval_on_start`: False - `use_liger_kernel`: False - `eval_use_gather_object`: False - `batch_sampler`: no_duplicates - `multi_dataset_batch_sampler`: proportional
### Training Logs | Epoch | Step | Validation Loss | sts_dev_spearman_max | |:-----:|:----:|:---------------:|:--------------------:| | 4.0 | 128 | 0.4041 | 0.2604 | | 1.0 | 32 | 0.6357 | 0.2473 | ### Framework Versions - Python: 3.11.9 - Sentence Transformers: 3.2.1 - Transformers: 4.45.2 - PyTorch: 2.5.1+cu124 - Accelerate: 1.1.1 - Datasets: 3.1.0 - Tokenizers: 0.20.1 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @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", } ``` #### CoSENTLoss ```bibtex @online{kexuefm-8847, title={CoSENT: A more efficient sentence vector scheme than Sentence-BERT}, author={Su Jianlin}, year={2022}, month={Jan}, url={https://kexue.fm/archives/8847}, } ```