FaLaBSE-v5 / README.md
codersan's picture
Add new SentenceTransformer model
c0ee964 verified
metadata
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - generated_from_trainer
  - dataset_size:149098
  - loss:MultipleNegativesRankingLoss
base_model: sentence-transformers/LaBSE
widget:
  - source_sentence: >-
      چگونه می توانید واقعاً بدانید که کسی یک جامعه شناسی/روانی است؟ (علاوه بر
      این که آنها اسکن مغزی دارند)
    sentences:
      - تفاوت بین وکیل و وکیل چیست؟
      - چگونه می توانم برای آزمون ادبیات انگلیسی خالص UGC آماده شوم؟
      - از کجا می دانید کسی روانپزشکی است یا یک جامعه شناسی؟
  - source_sentence: ایده شما از ازدواج چیست؟
    sentences:
      - کدام برنامه برای C و C ++ مهمترین است؟
      - How will the ban on Rs. 1000 and Rs. 500 notes impact Indian economy?
      - ایده ازدواج چیست؟
  - source_sentence: کدام یک بهترین لپ تاپ برای خرید زیر 30k است؟
    sentences:
      - >-
        چگونه قیمت املاک و مستغلات تحت تأثیر تصمیم دولت هند برای از بین بردن 500
        و 1000 یادداشت قرار می گیرد؟
      - >-
        کدام بهترین لپ تاپ برای خرید بالاتر از 25000 پوند و زیر/تا 30000 پوند
        است؟
      - چگونه استرس در ذهن را کاهش می دهیم؟
  - source_sentence: چگونه می توانم به طور جامع برای ادبیات انگلیسی خالص UGC آماده شوم؟
    sentences:
      - چگونه می توانم یک حساب پس انداز تعقیب را بصورت آنلاین ببندم؟
      - چگونه می توانم برای NET JRF در ادبیات انگلیسی آماده شوم؟
      - تفاوت بین گربه و علاقه مندان به GMAT چیست؟
  - source_sentence: آیا با دختری که باکره نیست ازدواج خواهید کرد؟
    sentences:
      - زنی با شلوار جین کنار اسبی با زین ایستاده است
      - آیا تا به حال چیزی ماوراء الطبیعه یا فوق طبیعی را تجربه کرده اید؟
      - آیا با کسی که باکره نیست ازدواج می کنید؟
pipeline_tag: sentence-similarity
library_name: sentence-transformers

SentenceTransformer based on sentence-transformers/LaBSE

This is a sentence-transformers model finetuned from sentence-transformers/LaBSE. 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: sentence-transformers/LaBSE
  • Maximum Sequence Length: 256 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity

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': 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): Dense({'in_features': 768, 'out_features': 768, 'bias': True, 'activation_function': 'torch.nn.modules.activation.Tanh'})
  (3): 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("codersan/FaLaBSE-v5")
# Run inference
sentences = [
    'آیا با دختری که باکره نیست ازدواج خواهید کرد؟',
    'آیا با کسی که باکره نیست ازدواج می کنید؟',
    'زنی با شلوار جین کنار اسبی با زین ایستاده است',
]
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]

Training Details

Training Dataset

Unnamed Dataset

  • Size: 149,098 training samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 5 tokens
    • mean: 15.1 tokens
    • max: 76 tokens
    • min: 5 tokens
    • mean: 14.54 tokens
    • max: 57 tokens
  • Samples:
    anchor positive
    اگر هند تقسیم نشده بود ، هند امروز چگونه به نظر می رسد؟ اگر پارتیشن اتفاق نیفتاد ، هند امروز چگونه خواهد بود؟
    چگونه می توانم وارد امنیت اینترنت شوم؟ چگونه می توانم شروع به یادگیری امنیت اطلاعات کنم؟
    برخی از بهترین مؤسسات مربیگری GMAT در دهلی/NCR چیست؟ بهترین مؤسسات مربیگری برای GMAT در NCR چیست؟
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • per_device_train_batch_size: 32
  • learning_rate: 2e-05
  • weight_decay: 0.01
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: no
  • prediction_loss_only: True
  • per_device_train_batch_size: 32
  • 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
  • torch_empty_cache_steps: None
  • learning_rate: 2e-05
  • weight_decay: 0.01
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 3
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • 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: 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: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss
0.0429 100 0.0474
0.0858 200 0.0364
0.1288 300 0.0345
0.1717 400 0.0309
0.2146 500 0.0347
0.2575 600 0.0365
0.3004 700 0.0303
0.3433 800 0.0288
0.3863 900 0.029
0.4292 1000 0.0329
0.4721 1100 0.0351
0.5150 1200 0.0282
0.5579 1300 0.029
0.6009 1400 0.029
0.6438 1500 0.0278
0.6867 1600 0.028
0.7296 1700 0.0276
0.7725 1800 0.0306
0.8155 1900 0.0242
0.8584 2000 0.0254
0.9013 2100 0.0226
0.9442 2200 0.0261
0.9871 2300 0.0258
1.0300 2400 0.0245
1.0730 2500 0.0194
1.1159 2600 0.021
1.1588 2700 0.018
1.2017 2800 0.0201
1.2446 2900 0.0204
1.2876 3000 0.0178
1.3305 3100 0.0159
1.3734 3200 0.0184
1.4163 3300 0.0189
1.4592 3400 0.0194
1.5021 3500 0.0201
1.5451 3600 0.0164
1.5880 3700 0.0187
1.6309 3800 0.0181
1.6738 3900 0.0161
1.7167 4000 0.0195
1.7597 4100 0.0165
1.8026 4200 0.0175
1.8455 4300 0.016
1.8884 4400 0.0142
1.9313 4500 0.0187
1.9742 4600 0.0137
2.0172 4700 0.0173
2.0601 4800 0.015
2.1030 4900 0.0158
2.1459 5000 0.0135
2.1888 5100 0.0144
2.2318 5200 0.0135
2.2747 5300 0.0142
2.3176 5400 0.0129
2.3605 5500 0.0142
2.4034 5600 0.0141
2.4464 5700 0.0142
2.4893 5800 0.0141
2.5322 5900 0.0118
2.5751 6000 0.0142
2.6180 6100 0.0125
2.6609 6200 0.0107
2.7039 6300 0.0129
2.7468 6400 0.0114
2.7897 6500 0.0137
2.8326 6600 0.0108
2.8755 6700 0.0131
2.9185 6800 0.0114
2.9614 6900 0.0137

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.3.1
  • Transformers: 4.47.0
  • PyTorch: 2.5.1+cu121
  • Accelerate: 1.2.1
  • Datasets: 3.2.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",
}

MultipleNegativesRankingLoss

@misc{henderson2017efficient,
    title={Efficient Natural Language Response Suggestion for Smart Reply},
    author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
    year={2017},
    eprint={1705.00652},
    archivePrefix={arXiv},
    primaryClass={cs.CL}
}