Stern5497's picture
Add new SentenceTransformer model.
4a2cfa5 verified
|
raw
history blame
No virus
18.8 kB
---
language: []
library_name: sentence-transformers
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- dataset_size:100K<n<1M
- loss:MultipleNegativesRankingLoss
base_model: FacebookAI/xlm-roberta-base
widget:
- source_sentence: who does carol end up with on er
sentences:
- who does sarah end up with in must love dogs
- when does season 7 once upon a time start
- when did the wwe hall of fame start
- source_sentence: who is mr blue in the hulk movie
sentences:
- who played the zither in the third man
- who plays tiana s mom in once upon a time
- when did 9 11 start being called patriot day
- source_sentence: who do you play as in bioshock 1
sentences:
- who does brad pitt play in war machine
- where does gone in 60 seconds take place
- in 1864 the republicans changed their name to
- source_sentence: when did the xbox one s came out
sentences:
- when did the first generation iphone come out
- what is the meaning of cdi in motorcycle
- who sang in the court of the crimson king
- source_sentence: how big is 1 acre in square feet
sentences:
- how many square feet is one acre of land
- what type of bonding is present in alloys
- who wrote skinny love bon iver and birdy
pipeline_tag: sentence-similarity
---
# SentenceTransformer based on FacebookAI/xlm-roberta-base
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [FacebookAI/xlm-roberta-base](https://huggingface.co/FacebookAI/xlm-roberta-base). 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:** [FacebookAI/xlm-roberta-base](https://huggingface.co/FacebookAI/xlm-roberta-base) <!-- at revision e73636d4f797dec63c3081bb6ed5c7b0bb3f2089 -->
- **Maximum Sequence Length:** 512 tokens
- **Output Dimensionality:** 768 tokens
- **Similarity Function:** Cosine Similarity
<!-- - **Training Dataset:** Unknown -->
<!-- - **Language:** Unknown -->
<!-- - **License:** Unknown -->
### 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': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel
(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})
)
```
## 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("Stern5497/nir-24-xlm-roberta-base")
# Run inference
sentences = [
'how big is 1 acre in square feet',
'how many square feet is one acre of land',
'what type of bonding is present in alloys',
]
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]
```
<!--
### Direct Usage (Transformers)
<details><summary>Click to see the direct usage in Transformers</summary>
</details>
-->
<!--
### Downstream Usage (Sentence Transformers)
You can finetune this model on your own dataset.
<details><summary>Click to expand</summary>
</details>
-->
<!--
### Out-of-Scope Use
*List how the model may foreseeably be misused and address what users ought not to do with the model.*
-->
<!--
## Bias, Risks and Limitations
*What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
-->
<!--
### Recommendations
*What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
-->
## Training Details
### Training Dataset
#### Unnamed Dataset
* Size: 164,848 training samples
* Columns: <code>sentence_0</code>, <code>sentence_1</code>, and <code>sentence_2</code>
* Approximate statistics based on the first 1000 samples:
| | sentence_0 | sentence_1 | sentence_2 |
|:--------|:-----------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|
| type | string | string | string |
| details | <ul><li>min: 10 tokens</li><li>mean: 13.28 tokens</li><li>max: 29 tokens</li></ul> | <ul><li>min: 131 tokens</li><li>mean: 163.32 tokens</li><li>max: 231 tokens</li></ul> | <ul><li>min: 133 tokens</li><li>mean: 164.04 tokens</li><li>max: 290 tokens</li></ul> |
* Samples:
| sentence_0 | sentence_1 | sentence_2 |
|:----------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| <code>when did the song say my name come out</code> | <code>{'title': '', 'text': 'Say My Name "Say My Name" is a song by the American girl group Destiny\'s Child from their second studio album "The Writing\'s on the Wall" (1999). It was written by Beyoncé Knowles, LeToya Luckett, LaTavia Roberson and Kelly Rowland along with LaShawn Daniels, Fred Jerkins III and Rodney "Darkchild" Jerkins, featuring production by the latter. The song was released by Columbia Records as the album\'s third single on November 7, 1999, and marked the introduction of the group\'s second line-up with the newly-added members Michelle Williams and Farrah Franklin. The single is the most successful of the four releases'}</code> | <code>{'title': '', 'text': 'Romans 1 Romans 1 is the first chapter of the Epistle to the Romans in the New Testament of the Christian Bible. It is authored by Paul the Apostle, but written by an amanuensis, Tertius, while Paul was in Corinth, in winter of AD 57-58. records that Paul stayed in Greece, probably Corinth, for three months. Paul wrote to the Roman Christians in order to give them a substantial resume of his theology. The New King James Version organises this chapter as follows: The letter is addressed "to all in Rome who are loved by God and called to be'}</code> |
| <code>what is another name for the persian empire</code> | <code>{'title': '', 'text': 'in the neighbouring Ottoman Empire. Persian Empire The Persian Empire (, translit. "", lit. \'Imperial Iran\') refers to any of a series of imperial dynasties that were centred in Persia/Iran from the 6th century BC Achaemenid Empire era to the 20th century AD in the Qajar dynasty era. The first dynasty of the Persian Empire was created by Achaemenids, established by Cyrus the Great in 550 BC with the conquest of Median, Lydian and Babylonian empires. It covered much of the Ancient world when it was conquered by Alexander the Great. Persepolis is the most famous historical site related to'}</code> | <code>{'title': '', 'text': 'squad leader is staff sergeant (E-6, or OR-6) and in the United States Marine Corps the TO rank is sergeant (E-5, or OR-5), though a corporal may also act as a squad leader in the absence of sufficient numbers of sergeants. Squad leaders of crew-served weapons squads range from corporal through staff sergeant, depending upon the branch of service and type of squad. In some armies, notably those of the British Commonwealth, in which the term section is used for units of this size, the NCO in charge, which in the British Army and Royal Marines is normally a Corporal'}</code> |
| <code>what is the unit of measurement in australia</code> | <code>{'title': '', 'text': 'Metrication in Australia Metrication in Australia effectively began in 1966 with the conversion to decimal currency under the auspices of the Decimal Currency Board. The conversion of measurements—metrication—commenced subsequently in 1971, under the direction of the Metric Conversion Board and actively proceeded until the Board was disbanded in 1981. Before 1970, Australia mostly used the imperial system for measurement, which the Australian colonies had inherited from the United Kingdom. Between 1970 and 1988, imperial units were withdrawn from general legal use and replaced with SI metric units, facilitated through legislation and government agencies. SI units are now the sole legal'}</code> | <code>{'title': '', 'text': 'squad of several teams, but did not see NFL action until the 1998 NFL season with the Miami Dolphins. He then played for the Green Bay Packers and Cleveland Browns, and was a member of the New York Giants but did not play due to back injuries. He spent time in NFL Europe, where he played for the Scottish Claymores. Barry Stokes (American football) Barry Wade Stokes (born December 20, 1973) is a former American football offensive lineman of the National Football League. He was signed by the Detroit Lions as an undrafted free agent in 1996. He played college'}</code> |
* Loss: [<code>MultipleNegativesRankingLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#multiplenegativesrankingloss) with these parameters:
```json
{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
```
### Training Hyperparameters
#### Non-Default Hyperparameters
- `per_device_train_batch_size`: 16
- `per_device_eval_batch_size`: 16
- `num_train_epochs`: 1
- `fp16`: True
- `batch_sampler`: no_duplicates
- `multi_dataset_batch_sampler`: round_robin
#### All Hyperparameters
<details><summary>Click to expand</summary>
- `overwrite_output_dir`: False
- `do_predict`: False
- `prediction_loss_only`: True
- `per_device_train_batch_size`: 16
- `per_device_eval_batch_size`: 16
- `per_gpu_train_batch_size`: None
- `per_gpu_eval_batch_size`: None
- `gradient_accumulation_steps`: 1
- `eval_accumulation_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
- `num_train_epochs`: 1
- `max_steps`: -1
- `lr_scheduler_type`: linear
- `lr_scheduler_kwargs`: {}
- `warmup_ratio`: 0.0
- `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
- `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`: True
- `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}
- `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
- `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_sampler`: no_duplicates
- `multi_dataset_batch_sampler`: round_robin
</details>
### Training Logs
| Epoch | Step | Training Loss |
|:------:|:-----:|:-------------:|
| 0.0485 | 500 | 1.5522 |
| 0.0971 | 1000 | 0.816 |
| 0.1456 | 1500 | 0.6951 |
| 0.1941 | 2000 | 0.6024 |
| 0.2426 | 2500 | 0.5464 |
| 0.2912 | 3000 | 0.5076 |
| 0.3397 | 3500 | 0.459 |
| 0.3882 | 4000 | 0.4633 |
| 0.4368 | 4500 | 0.4309 |
| 0.4853 | 5000 | 0.4081 |
| 0.5338 | 5500 | 0.3783 |
| 0.5824 | 6000 | 0.3624 |
| 0.6309 | 6500 | 0.3467 |
| 0.6794 | 7000 | 0.3358 |
| 0.7279 | 7500 | 0.3279 |
| 0.7765 | 8000 | 0.3062 |
| 0.8250 | 8500 | 0.3029 |
| 0.8735 | 9000 | 0.305 |
| 0.9221 | 9500 | 0.2927 |
| 0.9706 | 10000 | 0.272 |
| 1.0 | 10303 | - |
### Framework Versions
- Python: 3.10.13
- Sentence Transformers: 3.0.0
- Transformers: 4.39.3
- PyTorch: 2.1.2
- Accelerate: 0.29.3
- Datasets: 2.18.0
- Tokenizers: 0.15.2
## 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",
}
```
#### MultipleNegativesRankingLoss
```bibtex
@misc{henderson2017efficient,
title={Efficient Natural Language Response Suggestion for Smart Reply},
author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
year={2017},
eprint={1705.00652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
```
<!--
## Glossary
*Clearly define terms in order to be accessible across audiences.*
-->
<!--
## Model Card Authors
*Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
-->
<!--
## Model Card Contact
*Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
-->