Edit model card

SentenceTransformer based on sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2

This is a sentence-transformers model finetuned from sentence-transformers/paraphrase-multilingual-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 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})
)

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("amorfati/custom-hindi-emb-model-contrastive")
# Run inference
sentences = [
    ' Team India : पूरा भरोसा हम चैंपियन बनेंगे... अब चैंपियंस ट्रॉफी और WTC की बारी, जय शाह का बड़ा बयान; कौन होगा कप्तान? ',
    'Team India : कौन होगा टीम इंडिया का नया बॉलिंग कोच? विनय कुमार नहीं! इस वर्ल्ड कप विनर की खुल सकती है किस्मत',
    'Samsung Galaxy Ring हुई लॉन्च, 9 साइज और 3 कलर ऑप्शन में मिलेगी, जानें फीचर्स',
]
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]

Training Details

Training Dataset

Unnamed Dataset

  • Size: 1,800 training samples
  • Columns: premise, hypothesis, and label
  • Approximate statistics based on the first 1000 samples:
    premise hypothesis label
    type string string int
    details
    • min: 12 tokens
    • mean: 31.99 tokens
    • max: 52 tokens
    • min: 12 tokens
    • mean: 31.68 tokens
    • max: 52 tokens
    • 0: 100.00%
  • Samples:
    premise hypothesis label
    पति से छिपकर पत्नी का करना चाहिए ये काम, सुधा मूर्ति की ये बात संवार देगी आपकी शादी Bangladeshi Hindus: 'हिंदू बन गए हैं आसान टारेगट' - ढाका में हमलों के बाद बांग्लादेशी हिंदू ने बताया देश का 'काला सच' 0
    फर्जी कॉल, SMS से लेकर WhatsApp मैसेज तक, Chakshu पोर्टल पर करें हर फ्रॉड की शिकायत, होगी कार्रवाई विदेशी Trucks में ड्राइवर को सिर्फ AC ही नहीं बल्कि, मिलती हैं ये लग्जरी सुविधाएं 0
    GK Quiz: कौन सा जीव है जिसे अपनी मौत आने से पहले उसे पता चल जाता है? Indian Army Recruitment 2024: इंडियन आर्मी में निकली डायरेक्ट भर्ती, हवलदार समेत इन पदों पर मिलेगी नौकरी 0
  • Loss: ContrastiveLoss with these parameters:
    {
        "distance_metric": "SiameseDistanceMetric.COSINE_DISTANCE",
        "margin": 0.5,
        "size_average": true
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 200 evaluation samples
  • Columns: premise, hypothesis, and label
  • Approximate statistics based on the first 1000 samples:
    premise hypothesis label
    type string string int
    details
    • min: 12 tokens
    • mean: 31.98 tokens
    • max: 61 tokens
    • min: 12 tokens
    • mean: 32.0 tokens
    • max: 61 tokens
    • 1: 100.00%
  • Samples:
    premise hypothesis label
    Vastu Tips: घर के मुख्य दरवाजे पर ये एक चीज लटकाने से दौड़ी आएंगी मां लक्ष्मी, पैसों की तंगी से मिलेगा छुटकारा Vastu Tips: घर के मुख्य दरवाजे पर ये एक चीज लटकाने से दौड़ी आएंगी मां लक्ष्मी, पैसों की तंगी से मिलेगा छुटकारा 1
    CLAT 2025: कल से शुरू हो रही रज‍िस्‍ट्रेशन प्रक्र‍िया, अप्‍लाई करने के ल‍िए क्‍या योग्‍यता चाह‍िए; क्‍या होगा एग्‍जाम पैटर्न और क‍ितनी होगी फीस जानें CLAT 2025: कल से शुरू हो रही रज‍िस्‍ट्रेशन प्रक्र‍िया, अप्‍लाई करने के ल‍िए क्‍या योग्‍यता चाह‍िए; क्‍या होगा एग्‍जाम पैटर्न और क‍ितनी होगी फीस जानें 1
    XAT 2025: 15 जुलाई से शुरू होंगे रजिस्ट्रेशन, जानें कैसे भरें एप्लिकेशन फॉर्म XAT 2025: 15 जुलाई से शुरू होंगे रजिस्ट्रेशन, जानें कैसे भरें एप्लिकेशन फॉर्म 1
  • Loss: ContrastiveLoss with these parameters:
    {
        "distance_metric": "SiameseDistanceMetric.COSINE_DISTANCE",
        "margin": 0.5,
        "size_average": true
    }
    

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: 20
  • warmup_ratio: 0.1

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
  • 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: 20
  • 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
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss loss
0.8850 100 0.0056 0.0052
1.7699 200 0.0028 0.0037
2.6549 300 0.0019 0.0034
3.5398 400 0.0014 0.0039
4.4248 500 0.0011 0.0039
5.3097 600 0.0005 0.0033
6.1947 700 0.0005 0.0031
7.0796 800 0.0004 0.0032
7.9646 900 0.0004 0.0031
8.8496 1000 0.0004 0.0028
9.7345 1100 0.0003 0.0029
10.6195 1200 0.0004 0.0029
11.5044 1300 0.0003 0.0028
12.3894 1400 0.0002 0.0029
13.2743 1500 0.0003 0.0028
14.1593 1600 0.0002 0.0027
15.0442 1700 0.0003 0.0028
15.9292 1800 0.0003 0.0027
16.8142 1900 0.0003 0.0027
17.6991 2000 0.0002 0.0028
18.5841 2100 0.0002 0.0027
19.4690 2200 0.0003 0.0026

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.0.1
  • Transformers: 4.42.4
  • PyTorch: 2.3.1+cu121
  • Accelerate: 0.32.1
  • Datasets: 2.20.0
  • 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",
}

ContrastiveLoss

@inproceedings{hadsell2006dimensionality,
    author={Hadsell, R. and Chopra, S. and LeCun, Y.},
    booktitle={2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06)}, 
    title={Dimensionality Reduction by Learning an Invariant Mapping}, 
    year={2006},
    volume={2},
    number={},
    pages={1735-1742},
    doi={10.1109/CVPR.2006.100}
}
Downloads last month
4
Safetensors
Model size
118M 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 amorfati/custom-hindi-emb-model-contrastive