marrodion's picture
Add new SentenceTransformer model.
04ebcc5 verified
metadata
language: []
library_name: sentence-transformers
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - dataset_size:10K<n<100K
  - loss:CosineSimilarityLoss
base_model: sentence-transformers/all-MiniLM-L12-v2
metrics:
  - pearson_cosine
  - spearman_cosine
  - pearson_manhattan
  - spearman_manhattan
  - pearson_euclidean
  - spearman_euclidean
  - pearson_dot
  - spearman_dot
  - pearson_max
  - spearman_max
widget:
  - source_sentence: How does ZBo do it
    sentences:
      - That s how you do it RYU
      - Calum you need to follow me ok
      - fricken calum follow me im upset
  - source_sentence: Judi was a crazy mf
    sentences:
      - ZBo is a baaad man
      - quel surprise it s the Canucks
      - nope Id buy Candice s and I will
  - source_sentence: ZBo is a baaad man
    sentences:
      - Jeff Green is a BAAAAAAAAADDDDD man
      - Wow RIP Chris from Kriss Kross
      - Vick 32 and shady is 24
  - source_sentence: OH GOD SING IT VEDO
    sentences:
      - Wow wow wow Vedo just killed it
      - It s over on his facebook page
      - Why do I get amber alerts tho
  - source_sentence: ZBo is in top form
    sentences:
      - Miley Cyrus is over the top
      - Hiller flashing the leather eh
      - Im tryin to get to Chicago May 10th
pipeline_tag: sentence-similarity
model-index:
  - name: SentenceTransformer based on sentence-transformers/all-MiniLM-L12-v2
    results:
      - task:
          type: semantic-similarity
          name: Semantic Similarity
        dataset:
          name: semeval 15 dev
          type: semeval-15-dev
        metrics:
          - type: pearson_cosine
            value: 0.6231334838158124
            name: Pearson Cosine
          - type: spearman_cosine
            value: 0.5854181889364861
            name: Spearman Cosine
          - type: pearson_manhattan
            value: 0.6182213570910924
            name: Pearson Manhattan
          - type: spearman_manhattan
            value: 0.583565039468049
            name: Spearman Manhattan
          - type: pearson_euclidean
            value: 0.6202960321095145
            name: Pearson Euclidean
          - type: spearman_euclidean
            value: 0.5854180844045054
            name: Spearman Euclidean
          - type: pearson_dot
            value: 0.6231334928761973
            name: Pearson Dot
          - type: spearman_dot
            value: 0.5854180353346093
            name: Spearman Dot
          - type: pearson_max
            value: 0.6231334928761973
            name: Pearson Max
          - type: spearman_max
            value: 0.5854181889364861
            name: Spearman Max

SentenceTransformer based on sentence-transformers/all-MiniLM-L12-v2

This is a sentence-transformers model finetuned from sentence-transformers/all-MiniLM-L12-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-L12-v2
  • Maximum Sequence Length: 128 tokens
  • Output Dimensionality: 384 tokens
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

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

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("marrodion/minilm-l12-v2-simple")
# Run inference
sentences = [
    'ZBo is in top form',
    'Miley Cyrus is over the top',
    'Hiller flashing the leather eh',
]
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

Metric Value
pearson_cosine 0.6231
spearman_cosine 0.5854
pearson_manhattan 0.6182
spearman_manhattan 0.5836
pearson_euclidean 0.6203
spearman_euclidean 0.5854
pearson_dot 0.6231
spearman_dot 0.5854
pearson_max 0.6231
spearman_max 0.5854

Training Details

Training Dataset

Unnamed Dataset

  • Size: 13,063 training samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 7 tokens
    • mean: 11.16 tokens
    • max: 28 tokens
    • min: 7 tokens
    • mean: 12.31 tokens
    • max: 22 tokens
    • min: 0.0
    • mean: 0.33
    • max: 1.0
  • Samples:
    sentence1 sentence2 score
    EJ Manuel the 1st QB to go in this draft But my bro from the 757 EJ Manuel is the 1st QB gone 1.0
    EJ Manuel the 1st QB to go in this draft Can believe EJ Manuel went as the 1st QB in the draft 1.0
    EJ Manuel the 1st QB to go in this draft EJ MANUEL IS THE 1ST QB what 0.6
  • Loss: CosineSimilarityLoss with these parameters:
    {
        "loss_fct": "torch.nn.modules.loss.MSELoss"
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 4,727 evaluation samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 7 tokens
    • mean: 10.04 tokens
    • max: 16 tokens
    • min: 7 tokens
    • mean: 12.22 tokens
    • max: 26 tokens
    • min: 0.0
    • mean: 0.33
    • max: 1.0
  • Samples:
    sentence1 sentence2 score
    A Walk to Remember is the definition of true love A Walk to Remember is on and Im in town and Im upset 0.2
    A Walk to Remember is the definition of true love A Walk to Remember is the cutest thing 0.6
    A Walk to Remember is the definition of true love A walk to remember is on ABC family youre welcome 0.2
  • Loss: CosineSimilarityLoss with these parameters:
    {
        "loss_fct": "torch.nn.modules.loss.MSELoss"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • warmup_ratio: 0.1
  • load_best_model_at_end: True

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 8
  • per_device_eval_batch_size: 8
  • 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.0
  • num_train_epochs: 3.0
  • 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: True
  • 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
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss loss semeval-15-dev_spearman_cosine
0.1837 300 0.0814 0.0718 0.5815
0.3674 600 0.0567 0.0758 0.5458
0.5511 900 0.0566 0.0759 0.5712
0.7348 1200 0.0499 0.0748 0.5751
0.9186 1500 0.0477 0.0771 0.5606
1.1023 1800 0.0391 0.0762 0.5605
1.2860 2100 0.0304 0.0738 0.5792
1.4697 2400 0.0293 0.0741 0.5757
1.6534 2700 0.0317 0.072 0.5967
1.8371 3000 0.029 0.0764 0.5640
2.0208 3300 0.0278 0.0757 0.5674
2.2045 3600 0.0186 0.0750 0.5723
2.3882 3900 0.0169 0.0719 0.5864
2.5720 4200 0.0177 0.0718 0.5905
2.7557 4500 0.0178 0.0719 0.5888
2.9394 4800 0.0165 0.0725 0.5854
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.10.14
  • Sentence Transformers: 3.0.0
  • Transformers: 4.41.1
  • PyTorch: 2.3.0
  • Accelerate: 0.30.1
  • Datasets: 2.19.1
  • Tokenizers: 0.19.1

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",
}