ClaudeHu05's picture
Upload 10 files
9f22ed7 verified
|
raw
history blame
16 kB
metadata
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - generated_from_trainer
  - dataset_size:1128
  - loss:CosineSimilarityLoss
base_model: sentence-transformers/all-MiniLM-L6-v2
widget:
  - source_sentence: connective tissue cell
    sentences:
      - GM18507
      - GM18526
      - GM08714
  - source_sentence: blood
    sentences:
      - AG04449
      - T cell
      - GM12868
  - source_sentence: mammary gland
    sentences:
      - MCF-7
      - leukocyte
      - GM10847
  - source_sentence: GM18526
    sentences:
      - digestive system
      - CMK
      - KOPT-K1
  - source_sentence: GM12873
    sentences:
      - KOPT-K1
      - pancreas
      - leukocyte
datasets:
  - databio/mock-stsb
pipeline_tag: sentence-similarity
library_name: sentence-transformers
metrics:
  - pearson_cosine
  - spearman_cosine
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.7058652030883807
            name: Pearson Cosine
          - type: spearman_cosine
            value: 0.69543787652822
            name: Spearman Cosine

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

This is a sentence-transformers model finetuned from sentence-transformers/all-MiniLM-L6-v2 on the mock-stsb 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 Sources

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:

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("sentence_transformers_model_id")
# Run inference
sentences = [
    'GM12873',
    'leukocyte',
    'pancreas',
]
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.7059
spearman_cosine 0.6954

Training Details

Training Dataset

mock-stsb

  • Dataset: mock-stsb at d5ba748
  • Size: 1,128 training samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 3 tokens
    • mean: 5.46 tokens
    • max: 10 tokens
    • min: 3 tokens
    • mean: 5.55 tokens
    • max: 10 tokens
    • min: 0.0
    • mean: 0.44
    • max: 0.9
  • Samples:
    sentence1 sentence2 score
    OVCAR3 pancreas 0.05
    L1-S8 respiratory system 0.001
    peripheral nervous system 22Rv1 0.001
  • Loss: CosineSimilarityLoss with these parameters:
    {
        "loss_fct": "torch.nn.modules.loss.MSELoss"
    }
    

Evaluation Dataset

mock-stsb

  • Dataset: mock-stsb at d5ba748
  • Size: 284 evaluation samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 284 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 3 tokens
    • mean: 5.6 tokens
    • max: 9 tokens
    • min: 3 tokens
    • mean: 5.71 tokens
    • max: 9 tokens
    • min: 0.0
    • mean: 0.45
    • max: 0.9
  • Samples:
    sentence1 sentence2 score
    SJCRH30 cancer cell 0.9
    CWRU1 exocrine gland 0.05
    epithelial cell Caki2 0.9
  • Loss: CosineSimilarityLoss with these parameters:
    {
        "loss_fct": "torch.nn.modules.loss.MSELoss"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: epoch
  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • learning_rate: 1e-05
  • num_train_epochs: 50
  • warmup_ratio: 0.1
  • load_best_model_at_end: True

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • 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: 1e-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: 50
  • 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: 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: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss Validation Loss sts-dev_spearman_cosine
1.0 282 0.2157 0.1413 0.4340
2.0 564 0.1402 0.1207 0.6198
3.0 846 0.1239 0.0973 0.6541
4.0 1128 0.1102 0.0858 0.6820
5.0 1410 0.1006 0.0867 0.6664
6.0 1692 0.0882 0.0886 0.6547
7.0 1974 0.076 0.0842 0.6660
8.0 2256 0.0639 0.0883 0.6392
9.0 2538 0.0538 0.0896 0.6300
10.0 2820 0.046 0.0884 0.6424
11.0 3102 0.0427 0.0858 0.6600
12.0 3384 0.0363 0.0878 0.6454
13.0 3666 0.0331 0.0838 0.6710
14.0 3948 0.0309 0.0839 0.6534
15.0 4230 0.0277 0.0841 0.6650
16.0 4512 0.026 0.0843 0.6933
17.0 4794 0.0238 0.0884 0.6557
18.0 5076 0.0229 0.0868 0.6649
19.0 5358 0.022 0.0867 0.6629
20.0 5640 0.021 0.0809 0.6815
21.0 5922 0.0196 0.0827 0.6844
22.0 6204 0.0189 0.0857 0.6770
23.0 6486 0.0186 0.0833 0.6868
24.0 6768 0.0172 0.0889 0.6710
25.0 7050 0.0171 0.0806 0.6954

Framework Versions

  • Python: 3.11.5
  • Sentence Transformers: 3.3.1
  • Transformers: 4.47.0
  • PyTorch: 2.5.1+cu124
  • Accelerate: 1.2.0
  • Datasets: 3.1.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",
}