albertus-sussex's picture
Add new SentenceTransformer model
302ee95 verified
metadata
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - generated_from_trainer
  - dataset_size:2268
  - loss:TripletLoss
base_model: Alibaba-NLP/gte-base-en-v1.5
widget:
  - source_sentence: >-
      Panasonic DMC-TS2S Silver 14.1 MP 2.7" TFT(230K) LCD 4.6X Optical Zoom
      Waterproof Shockproof 28mm Wide Angle Digital Camera
    sentences:
      - model
      - Pentax Imaging
      - manufacturer
      - >-
        CASIO EXILIM EX-G1 Black 12.1 MP 2.5" 230K LCD 3X Optical Zoom
        Waterproof Shockproof Digital Camera
  - source_sentence: FUJIFILM
    sentences:
      - Sanyo
      - manufacturer
      - model
      - Fuji Film Finepix S1800 12 Megapixel Digital Camera - Black
  - source_sentence: >-
      EXILIM CARD EX-S8 - Digital camera - compact - 12.1 Mpix - optical zoom: 4
      x - supported memory: SD, SDHC - pink (EX-S8PK)
    sentences:
      - price
      - model
      - $649.99
      - >-
        FUJIFILM FinePix Z33WP Green 10.0 MP 2.7" 230K LCD 3X Optical Zoom 3m
        Waterproof Digital Camera
  - source_sentence: Fuji Film Finepix AV100 12 Megapixel Digital Camera - Silver
    sentences:
      - $84.95
      - >-
        TL110 - Digital camera - compact - 14.2 Mpix - supported memory: SD,
        SDHC - black (EC-TL110ZBPBUS)
      - model
      - price
  - source_sentence: $119.99
    sentences:
      - Panasonic
      - manufacturer
      - $1,076.99
      - price
pipeline_tag: sentence-similarity
library_name: sentence-transformers
metrics:
  - cosine_accuracy
  - silhouette_cosine
  - silhouette_euclidean
model-index:
  - name: SentenceTransformer based on Alibaba-NLP/gte-base-en-v1.5
    results:
      - task:
          type: triplet
          name: Triplet
        dataset:
          name: Unknown
          type: unknown
        metrics:
          - type: cosine_accuracy
            value: 1
            name: Cosine Accuracy
          - type: cosine_accuracy
            value: 1
            name: Cosine Accuracy
      - task:
          type: silhouette
          name: Silhouette
        dataset:
          name: Unknown
          type: unknown
        metrics:
          - type: silhouette_cosine
            value: 0.9849536418914795
            name: Silhouette Cosine
          - type: silhouette_euclidean
            value: 0.8890269994735718
            name: Silhouette Euclidean
          - type: silhouette_cosine
            value: 0.9848129153251648
            name: Silhouette Cosine
          - type: silhouette_euclidean
            value: 0.8900662064552307
            name: Silhouette Euclidean

SentenceTransformer based on Alibaba-NLP/gte-base-en-v1.5

This is a sentence-transformers model finetuned from Alibaba-NLP/gte-base-en-v1.5. 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: Alibaba-NLP/gte-base-en-v1.5
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: NewModel 
  (1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, '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("albertus-sussex/veriscrape-sbert-camera-reference_3_to_verify_7-fold-6")
# Run inference
sentences = [
    '$119.99',
    '$1,076.99',
    'Panasonic',
]
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]

Evaluation

Metrics

Triplet

Metric Value
cosine_accuracy 1.0

Silhouette

  • Evaluated with veriscrape.training.SilhouetteEvaluator
Metric Value
silhouette_cosine 0.985
silhouette_euclidean 0.889

Triplet

Metric Value
cosine_accuracy 1.0

Silhouette

  • Evaluated with veriscrape.training.SilhouetteEvaluator
Metric Value
silhouette_cosine 0.9848
silhouette_euclidean 0.8901

Training Details

Training Dataset

Unnamed Dataset

  • Size: 2,268 training samples
  • Columns: anchor, positive, negative, pos_attr_name, and neg_attr_name
  • Approximate statistics based on the first 1000 samples:
    anchor positive negative pos_attr_name neg_attr_name
    type string string string string string
    details
    • min: 3 tokens
    • mean: 12.84 tokens
    • max: 60 tokens
    • min: 3 tokens
    • mean: 13.29 tokens
    • max: 79 tokens
    • min: 3 tokens
    • mean: 11.12 tokens
    • max: 44 tokens
    • min: 3 tokens
    • mean: 3.0 tokens
    • max: 3 tokens
    • min: 3 tokens
    • mean: 3.0 tokens
    • max: 3 tokens
  • Samples:
    anchor positive negative pos_attr_name neg_attr_name
    PENTAX K-5 BODY KIT BLACK (14622) SONY Cyber-shot DSC-W350 Black 14.1 MP 2.7" 230K LCD 4X Optical Zoom 26mm Wide Angle Digital Camera $176.99 model price
    $166.91 $179.36 Nikon COOLPIX S3000 Black 12.0 MP 2.7" 230K Anti-reflection Coating LCD 4X Optical Zoom 27mm Wide Angle Digital Camera price model
    FUJIFILM Brand = Samsung $199.00 manufacturer price
  • Loss: TripletLoss with these parameters:
    {
        "distance_metric": "TripletDistanceMetric.EUCLIDEAN",
        "triplet_margin": 5
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 253 evaluation samples
  • Columns: anchor, positive, negative, pos_attr_name, and neg_attr_name
  • Approximate statistics based on the first 253 samples:
    anchor positive negative pos_attr_name neg_attr_name
    type string string string string string
    details
    • min: 3 tokens
    • mean: 12.5 tokens
    • max: 56 tokens
    • min: 3 tokens
    • mean: 12.91 tokens
    • max: 69 tokens
    • min: 3 tokens
    • mean: 12.4 tokens
    • max: 39 tokens
    • min: 3 tokens
    • mean: 3.0 tokens
    • max: 3 tokens
    • min: 3 tokens
    • mean: 3.0 tokens
    • max: 3 tokens
  • Samples:
    anchor positive negative pos_attr_name neg_attr_name
    Sony DSC-S2100 12.1 Megapixel Cyber-shot® Digital Camera S2100 - Black VistaQuest 2.0 MP Digital Camera VQ-2005 $219.99 model price
    EASYSHARE M530 - Digital camera - compact - 12.0 Mpix - optical zoom: 3 x - supported memory: SD, SDHC - carbon (8085730) Nikon Coolpix S1100pj 14.1-Megapixel Digital Camera - Green $649.99 model price
    Fujifilm Sony FUJIFILM Instax 210 Instant Photo Camera manufacturer model
  • Loss: TripletLoss with these parameters:
    {
        "distance_metric": "TripletDistanceMetric.EUCLIDEAN",
        "triplet_margin": 5
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: epoch
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • num_train_epochs: 5
  • warmup_ratio: 0.1

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • 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: 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: 5
  • 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
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss Validation Loss cosine_accuracy silhouette_cosine
-1 -1 - - 0.7945 0.3845
1.0 18 0.5008 0.0 1.0 0.9748
2.0 36 0.0 0.0 1.0 0.9840
3.0 54 0.0 0.0 1.0 0.9849
4.0 72 0.0 0.0 1.0 0.9849
5.0 90 0.0 0.0 1.0 0.9850
-1 -1 - - 1.0 0.9848

Framework Versions

  • Python: 3.10.16
  • Sentence Transformers: 4.0.1
  • Transformers: 4.45.2
  • PyTorch: 2.5.1+cu124
  • Accelerate: 1.5.2
  • Datasets: 3.1.0
  • Tokenizers: 0.20.3

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

TripletLoss

@misc{hermans2017defense,
    title={In Defense of the Triplet Loss for Person Re-Identification},
    author={Alexander Hermans and Lucas Beyer and Bastian Leibe},
    year={2017},
    eprint={1703.07737},
    archivePrefix={arXiv},
    primaryClass={cs.CV}
}