tomaarsen's picture
tomaarsen HF staff
Add new SentenceTransformer model
3bc52da verified
metadata
language:
  - en
license: apache-2.0
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - generated_from_trainer
  - dataset_size:3012496
  - loss:MultipleNegativesRankingLoss
base_model: nreimers/MiniLM-L6-H384-uncased
widget:
  - source_sentence: what is the current old age pension uk?
    sentences:
      - >-
        Unlike divorce, a legal separation does not put an end to the marriage,
        it enables you to live separately but remain married. ... Issues that
        can be addressed in a separation agreement are division of assets and
        debts, child custody and support, visitation schedules and spousal
        support.
      - >-
        The full basic State Pension is £134.25 per week. There are ways you can
        increase your State Pension up to or above the full amount. You may have
        to pay tax on your State Pension. To get information about your State
        Pension, contact the Pension Service.
      - >-
        Most often, chili seasoning is a mix of 5-8 spices including chili
        powder, cumin, garlic, oregano, and others. Chili seasoning is similar
        to homemade taco seasoning and fajita seasoning, with many of the same
        ingredients but has more of an emphasis on chili powder.
  - source_sentence: how to calculate percentage of ratio?
    sentences:
      - >-
        Ratios are often expressed in the form m:n or m/n. To convert a ratio
        into the form of a percentage, simply divide m by n and then multiply
        the result by 100. For example, If the ratio is 12:4, convert it to the
        form 12/4, which is an equation we can solve. After that multiply the
        result by 100 to get the percentage.
      - >-
        For anyone new to Roblox here's a quick explanation as to what an obby
        is. An obby is, quite simply, an obstacle course that you need to get
        around in order to complete it. They can include jumps, climbing,
        guessing games and trampolines to name just a few obstacles.
      - >-
        “relative” means, with respect to a public official, an individual who
        is related to the public official as father, mother, son, daughter,
        brother, sister, uncle, aunt, first cousin, nephew, niece, husband,
        wife, father-in-law, mother-in-law, son-in-law, daughter-in-law,
        brother-in-law, sister-in-law, stepfather, ...
  - source_sentence: if you block someone on facebook do you lose your messages?
    sentences:
      - >-
        1 Answer. If you block someone on Facebook or messenger, you both will
        not be able to each others activities and also not be able to send
        messages. Old conversation will be still in inbox but name of that
        person will not be clickable.
      - >-
        Your hourly wage of 37 dollars would end up being about $76,960 per year
        in salary.
      - >-
        ['Tap Download while watching a video in the YouTube app.', 'Tap Library
        to find your downloads.', 'Tap Downloads. From here, you can tap the
        More button (the three dots) to delete videos from your device.']
  - source_sentence: fifa 20 how to drag back?
    sentences:
      - >-
        Component is a directive which use shadow DOM to create encapsulate
        visual behavior called components. Components are typically used to
        create UI widgets. Directives is used to add behavior to an existing DOM
        element. Component is used to break up the application into smaller
        components.
      - >-
        Enabling debug output in LWIP To enable specific debug messages in LWIP,
        just set the specific define value for the LWIP *_DEBUG value to "
        LWIP_DBG_ON". A full list of debug defines that can be enabled can be
        found in the opts. h file. Just copy the defines for the debug messages
        you want to enable into the lwipopts.
      - >-
        Drag Back (2 Star Skill Move) The drag back has been a popular skill
        move in FIFA for years now, and remains highly effective in FIFA 20.
        Again, it's fairly simple - hold the RB or R1 button, and then push the
        left stick away from the direction you're facing to drag the ball
        backwards.
  - source_sentence: is jordyn a boy or girl?
    sentences:
      - >-
        Gender Popularity of the Name "Jordyn" Jordyn: It's a girl! Since 1880,
        a total of 2,696 boys have been given the name Jordyn while 39,618 girls
        were named Jordyn.
      - >-
        Temporary Infertility After Depo But not every woman will get their
        cycle back 5 months after the last injection. In some cases, it may take
        up to 22 months—or almost two years—for fertility to return after the
        last injection.
      - >-
        Currently there is no research showing that juice cleanses are
        beneficial to weight loss or that they should be recommended at all.
        Even though it is possible to cut a significant amount of calories by
        only drinking juice, you could also be missing out on some essential
        nutrition - like protein, fiber and healthy fats.
datasets:
  - sentence-transformers/gooaq
pipeline_tag: sentence-similarity
library_name: sentence-transformers
metrics:
  - cosine_accuracy@1
  - cosine_accuracy@3
  - cosine_accuracy@5
  - cosine_accuracy@10
  - cosine_precision@1
  - cosine_precision@3
  - cosine_precision@5
  - cosine_precision@10
  - cosine_recall@1
  - cosine_recall@3
  - cosine_recall@5
  - cosine_recall@10
  - cosine_ndcg@10
  - cosine_mrr@10
  - cosine_map@100
co2_eq_emissions:
  emissions: 22.00215266567056
  energy_consumed: 0.056604166342520905
  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.206
  hardware_used: 1 x NVIDIA GeForce RTX 3090
model-index:
  - name: MPNet base trained on AllNLI triplets
    results:
      - task:
          type: information-retrieval
          name: Information Retrieval
        dataset:
          name: gooaq dev
          type: gooaq-dev
        metrics:
          - type: cosine_accuracy@1
            value: 0.5589
            name: Cosine Accuracy@1
          - type: cosine_accuracy@3
            value: 0.7234
            name: Cosine Accuracy@3
          - type: cosine_accuracy@5
            value: 0.7801
            name: Cosine Accuracy@5
          - type: cosine_accuracy@10
            value: 0.8456
            name: Cosine Accuracy@10
          - type: cosine_precision@1
            value: 0.5589
            name: Cosine Precision@1
          - type: cosine_precision@3
            value: 0.2411333333333333
            name: Cosine Precision@3
          - type: cosine_precision@5
            value: 0.15602000000000002
            name: Cosine Precision@5
          - type: cosine_precision@10
            value: 0.08456
            name: Cosine Precision@10
          - type: cosine_recall@1
            value: 0.5589
            name: Cosine Recall@1
          - type: cosine_recall@3
            value: 0.7234
            name: Cosine Recall@3
          - type: cosine_recall@5
            value: 0.7801
            name: Cosine Recall@5
          - type: cosine_recall@10
            value: 0.8456
            name: Cosine Recall@10
          - type: cosine_ndcg@10
            value: 0.7000016898403962
            name: Cosine Ndcg@10
          - type: cosine_mrr@10
            value: 0.6536087301587268
            name: Cosine Mrr@10
          - type: cosine_map@100
            value: 0.659379113770559
            name: Cosine Map@100

MPNet base trained on AllNLI triplets

This is a sentence-transformers model finetuned from nreimers/MiniLM-L6-H384-uncased on the gooaq dataset. 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: nreimers/MiniLM-L6-H384-uncased
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 384 dimensions
  • Similarity Function: Cosine Similarity
  • Training Dataset:
  • Language: en
  • License: apache-2.0

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, '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})
)

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/MiniLM-L6-H384-uncased-gooaq-no-asym")
# Run inference
sentences = [
    'is jordyn a boy or girl?',
    'Gender Popularity of the Name "Jordyn" Jordyn: It\'s a girl! Since 1880, a total of 2,696 boys have been given the name Jordyn while 39,618 girls were named Jordyn.',
    'Currently there is no research showing that juice cleanses are beneficial to weight loss or that they should be recommended at all. Even though it is possible to cut a significant amount of calories by only drinking juice, you could also be missing out on some essential nutrition - like protein, fiber and healthy fats.',
]
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

Information Retrieval

Metric Value
cosine_accuracy@1 0.5589
cosine_accuracy@3 0.7234
cosine_accuracy@5 0.7801
cosine_accuracy@10 0.8456
cosine_precision@1 0.5589
cosine_precision@3 0.2411
cosine_precision@5 0.156
cosine_precision@10 0.0846
cosine_recall@1 0.5589
cosine_recall@3 0.7234
cosine_recall@5 0.7801
cosine_recall@10 0.8456
cosine_ndcg@10 0.7
cosine_mrr@10 0.6536
cosine_map@100 0.6594

Training Details

Training Dataset

gooaq

  • Dataset: gooaq at b089f72
  • Size: 3,012,496 training samples
  • Columns: question and answer
  • Approximate statistics based on the first 1000 samples:
    question answer
    type string string
    details
    • min: 8 tokens
    • mean: 11.86 tokens
    • max: 21 tokens
    • min: 14 tokens
    • mean: 60.48 tokens
    • max: 138 tokens
  • Samples:
    question answer
    what is the difference between broilers and layers? An egg laying poultry is called egger or layer whereas broilers are reared for obtaining meat. So a layer should be able to produce more number of large sized eggs, without growing too much. On the other hand, a broiler should yield more meat and hence should be able to grow well.
    what is the difference between chronological order and spatial order? As a writer, you should always remember that unlike chronological order and the other organizational methods for data, spatial order does not take into account the time. Spatial order is primarily focused on the location. All it does is take into account the location of objects and not the time.
    is kamagra same as viagra? Kamagra is thought to contain the same active ingredient as Viagra, sildenafil citrate. In theory, it should work in much the same way as Viagra, taking about 45 minutes to take effect, and lasting for around 4-6 hours. However, this will vary from person to person.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Dataset

gooaq

  • Dataset: gooaq at b089f72
  • Size: 3,012,496 evaluation samples
  • Columns: question and answer
  • Approximate statistics based on the first 1000 samples:
    question answer
    type string string
    details
    • min: 8 tokens
    • mean: 11.88 tokens
    • max: 22 tokens
    • min: 14 tokens
    • mean: 61.03 tokens
    • max: 127 tokens
  • Samples:
    question answer
    how do i program my directv remote with my tv? ['Press MENU on your remote.', 'Select Settings & Help > Settings > Remote Control > Program Remote.', 'Choose the device (TV, audio, DVD) you wish to program. ... ', 'Follow the on-screen prompts to complete programming.']
    are rodrigues fruit bats nocturnal? Before its numbers were threatened by habitat destruction, storms, and hunting, some of those groups could number 500 or more members. Sunrise, sunset. Rodrigues fruit bats are most active at dawn, at dusk, and at night.
    why does your heart rate increase during exercise bbc bitesize? During exercise there is an increase in physical activity and muscle cells respire more than they do when the body is at rest. The heart rate increases during exercise. The rate and depth of breathing increases - this makes sure that more oxygen is absorbed into the blood, and more carbon dioxide is removed from it.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • learning_rate: 2e-05
  • num_train_epochs: 1
  • warmup_ratio: 0.1
  • seed: 24
  • bf16: True
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • 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: 2e-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: 24
  • data_seed: None
  • jit_mode_eval: False
  • use_ipex: False
  • bf16: True
  • 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: None
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • 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
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss Validation Loss gooaq-dev_cosine_ndcg@10
-1 -1 - - 0.0303
0.0003 1 4.2106 - -
0.0128 50 4.1241 - -
0.0256 100 3.3791 - -
0.0384 150 1.8925 - -
0.0512 200 1.1582 - -
0.0640 250 0.8751 - -
0.0768 300 0.6851 - -
0.0896 350 0.5779 - -
0.1024 400 0.5251 - -
0.1152 450 0.4873 - -
0.1280 500 0.4467 0.3056 0.6054
0.1408 550 0.3989 - -
0.1536 600 0.398 - -
0.1664 650 0.3708 - -
0.1792 700 0.3656 - -
0.1920 750 0.3382 - -
0.2048 800 0.3333 - -
0.2176 850 0.3006 - -
0.2304 900 0.3065 - -
0.2432 950 0.3277 - -
0.2560 1000 0.2941 0.2089 0.6556
0.2687 1050 0.2918 - -
0.2815 1100 0.2935 - -
0.2943 1150 0.2834 - -
0.3071 1200 0.2795 - -
0.3199 1250 0.2783 - -
0.3327 1300 0.2828 - -
0.3455 1350 0.2727 - -
0.3583 1400 0.2626 - -
0.3711 1450 0.2519 - -
0.3839 1500 0.2461 0.1769 0.6743
0.3967 1550 0.2602 - -
0.4095 1600 0.2398 - -
0.4223 1650 0.2421 - -
0.4351 1700 0.2365 - -
0.4479 1750 0.2351 - -
0.4607 1800 0.2412 - -
0.4735 1850 0.2308 - -
0.4863 1900 0.2217 - -
0.4991 1950 0.2315 - -
0.5119 2000 0.2295 0.1598 0.6856
0.5247 2050 0.2157 - -
0.5375 2100 0.2123 - -
0.5503 2150 0.2236 - -
0.5631 2200 0.2098 - -
0.5759 2250 0.2208 - -
0.5887 2300 0.2159 - -
0.6015 2350 0.2087 - -
0.6143 2400 0.22 - -
0.6271 2450 0.2002 - -
0.6399 2500 0.1999 0.1466 0.6915
0.6527 2550 0.1986 - -
0.6655 2600 0.2238 - -
0.6783 2650 0.2141 - -
0.6911 2700 0.2154 - -
0.7039 2750 0.1993 - -
0.7167 2800 0.1946 - -
0.7295 2850 0.2064 - -
0.7423 2900 0.2179 - -
0.7551 2950 0.1976 - -
0.7679 3000 0.2081 0.1384 0.6964
0.7807 3050 0.1863 - -
0.7934 3100 0.2022 - -
0.8062 3150 0.2132 - -
0.8190 3200 0.1991 - -
0.8318 3250 0.1904 - -
0.8446 3300 0.1804 - -
0.8574 3350 0.1944 - -
0.8702 3400 0.1981 - -
0.8830 3450 0.195 - -
0.8958 3500 0.1984 0.1357 0.6994
0.9086 3550 0.1947 - -
0.9214 3600 0.1912 - -
0.9342 3650 0.1898 - -
0.9470 3700 0.1945 - -
0.9598 3750 0.1893 - -
0.9726 3800 0.1919 - -
0.9854 3850 0.1994 - -
0.9982 3900 0.1864 - -
-1 -1 - - 0.7000

Environmental Impact

Carbon emissions were measured using CodeCarbon.

  • Energy Consumed: 0.057 kWh
  • Carbon Emitted: 0.022 kg of CO2
  • Hours Used: 0.206 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.5.0.dev0
  • Transformers: 4.49.0.dev0
  • PyTorch: 2.5.0+cu121
  • Accelerate: 1.3.0
  • Datasets: 2.20.0
  • Tokenizers: 0.21.0

Citation

BibTeX

Sentence Transformers

@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

@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}
}