Edit model card

SentenceTransformer based on BAAI/bge-base-en

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

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': True}) with Transformer model: BertModel 
  (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})
  (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("ivanleomk/finetuned-bge-base-en")
# Run inference
sentences = [
    '\nName : Viacom Solutions\nCategory: Telecom Hardware, Network Architecture\nDepartment: Engineering\nLocation: Tokyo, Japan\nAmount: 1450.67\nCard: Global Network Optimization Project\nTrip Name: unknown\n',
    '\nName : Pardalis Digital\nCategory: Data Analytics Platform, Professional Networking Service\nDepartment: Sales\nLocation: Dublin, Ireland\nAmount: 1456.75\nCard: Sales Intelligence & Networking Platform\nTrip Name: unknown\n',
    "\nName : Il Vino e L'Arte\nCategory: Culinary Experience, Cultural Event Venue\nDepartment: Marketing\nLocation: Rome, Italy\nAmount: 748.32\nCard: Cultural Engagement Dinner\nTrip Name: unknown\n",
]
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 0.8462
dot_accuracy 0.1538
manhattan_accuracy 0.8558
euclidean_accuracy 0.8462
max_accuracy 0.8558

Triplet

Metric Value
cosine_accuracy 0.9545
dot_accuracy 0.0455
manhattan_accuracy 0.9545
euclidean_accuracy 0.9545
max_accuracy 0.9545

Training Details

Training Dataset

Unnamed Dataset

  • Size: 208 training samples
  • Columns: sentence and label
  • Approximate statistics based on the first 208 samples:
    sentence label
    type string int
    details
    • min: 33 tokens
    • mean: 39.66 tokens
    • max: 48 tokens
    • 0: ~4.81%
    • 1: ~5.29%
    • 2: ~6.25%
    • 3: ~2.40%
    • 4: ~3.85%
    • 5: ~4.33%
    • 6: ~3.85%
    • 7: ~2.40%
    • 8: ~4.81%
    • 9: ~3.37%
    • 10: ~3.85%
    • 11: ~3.85%
    • 12: ~4.81%
    • 13: ~4.81%
    • 14: ~5.29%
    • 15: ~3.37%
    • 16: ~4.81%
    • 17: ~4.33%
    • 18: ~3.85%
    • 19: ~1.92%
    • 20: ~2.88%
    • 21: ~2.88%
    • 22: ~3.37%
    • 23: ~0.96%
    • 24: ~4.33%
    • 25: ~2.40%
    • 26: ~0.96%
  • Samples:
    sentence label

    Name : Global Insights Group
    Category: Subscriptions & Memberships, Data Services & Analytics
    Department: Marketing
    Location: London, UK
    Amount: 1245.67
    Card: Marketing Intelligence Fund
    Trip Name: unknown
    0

    Name : CyberGuard Provisions
    Category: Security Software Solutions, Data Protection Services
    Department: Information Security
    Location: San Francisco, CA
    Amount: 879.92
    Card: Digital Fortress Action Plan
    Trip Name: unknown
    1

    Name : Apex Innovations Group
    Category: Business Consulting, Training Services
    Department: Executive
    Location: Sydney, Australia
    Amount: 1575.34
    Card: Leadership Development Program
    Trip Name: unknown
    2
  • Loss: BatchSemiHardTripletLoss

Evaluation Dataset

Unnamed Dataset

  • Size: 52 evaluation samples
  • Columns: sentence and label
  • Approximate statistics based on the first 52 samples:
    sentence label
    type string int
    details
    • min: 32 tokens
    • mean: 40.13 tokens
    • max: 49 tokens
    • 0: ~5.77%
    • 1: ~1.92%
    • 2: ~3.85%
    • 3: ~1.92%
    • 4: ~1.92%
    • 5: ~1.92%
    • 6: ~5.77%
    • 8: ~3.85%
    • 9: ~7.69%
    • 10: ~5.77%
    • 12: ~3.85%
    • 13: ~5.77%
    • 14: ~3.85%
    • 15: ~1.92%
    • 16: ~9.62%
    • 17: ~1.92%
    • 18: ~1.92%
    • 19: ~3.85%
    • 20: ~1.92%
    • 21: ~3.85%
    • 22: ~5.77%
    • 23: ~3.85%
    • 24: ~5.77%
    • 25: ~5.77%
  • Samples:
    sentence label

    Name : Viacom Solutions
    Category: Telecom Hardware, Network Architecture
    Department: Engineering
    Location: Tokyo, Japan
    Amount: 1450.67
    Card: Global Network Optimization Project
    Trip Name: unknown
    9

    Name : Vista Cascades Resort
    Category: Hospitality, Event Hosting
    Department: Sales
    Location: Orlando, FL
    Amount: 1823.45
    Card: Annual Sales Retreat
    Trip Name: Q3 Strategy Session
    12

    Name : ActiveHealth CoLab
    Category: Health Services, Wellness Solutions
    Department: HR
    Location: Amsterdam, Netherlands
    Amount: 745.32
    Card: Corporate Wellness Partnership
    Trip Name: unknown
    23
  • Loss: BatchSemiHardTripletLoss

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • learning_rate: 2e-05
  • num_train_epochs: 5
  • warmup_ratio: 0.1
  • fp16: 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: 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
  • 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: 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: 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, '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
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step bge-base-en-eval_max_accuracy bge-base-en-train_max_accuracy
0 0 - 0.8558
5.0 65 0.9545 -

Framework Versions

  • Python: 3.11.10
  • Sentence Transformers: 3.1.1
  • Transformers: 4.45.2
  • PyTorch: 2.5.1+cu124
  • Accelerate: 1.1.1
  • 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",
}

BatchSemiHardTripletLoss

@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}
}
Downloads last month
58
Safetensors
Model size
109M params
Tensor type
F32
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for ivanleomk/finetuned-bge-base-en

Base model

BAAI/bge-base-en
Finetuned
(6)
this model

Evaluation results