Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 17
How to use yoriis/NAMAA-retriever-tydi with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("yoriis/NAMAA-retriever-tydi")
sentences = [
"من هم الأنجلوسكسونيون ؟",
"أيمن محمد ربيع الظواهري (مواليد 19 يونيو 1951) هو زعيم تنظيم القاعدة خلفاً لأسامة بن لادن بعد ما كان ثاني أبرز قياديي منظمة القاعدة العسكرية التي تصنفها معظم دول العالم كمنظمة إرهابية من بعد أسامة بن لادن، وزعيم تنظيم الجهاد الإسلامي العسكري المحظور في مصر. رصدت الحكومة الأمريكية مكافأة تقدر بـ 25 مليون دولار لمن يدلي بمعلومات تؤدي إلى القبض عليه.",
"الأنجلوسكسونيون (بالإنجليزية: Anglo-Saxons) هم القبائل الجرمانية التي غزت وسكنت بريطانيا في القرن 5 والقرن 6.[1][2][3] تلك القبائل هي الأنجلز، والسكسون، واليوت. وقد تركوا أوطانهم الأصلية وهي شمال ألمانيا وهولندا والدانمارك، واتجهوا نحو بحر الشمال على متن مراكب خشبية. واستوطنوا جهات بريطانيا الجنوبية والشرقية في القرن الخامس بعد الميلاد، وبعد حوالي مائتي عام انضمت هذه المجموعات الثلاثة في مجموعة واحدة دعيت بالأنجلو-ساكسون.",
"المشتري هو أكبر كواكب النظام الشمسي، وقطره يَبلغ 11 ضعف قطر الأرض وحوالي عُشر قطر الشمس. هذا الكوكب - كما يُرى من الأرض - ألمع من جميع النجوم وعادة ثاني ألمع الكواكب بعد الزهرة. المشتري هو عملاق غازي، أي أنه لا يَملك سطحاً صلباً، بل بدلاً من ذلك يتألف سطحه من سحب كثيفة حمراء وصفراء وبنية وبيضاء. السحب مقسمة ضمن مناطق مضيئة تسمى \"الأنطقة\" وأخرى مظلمة تسمى \"الأحزمة\"، تدور جميعها حول الكوكب بشكل مواز لخط الاستواء. وهو أسرع الكواكب بالدوران حول نفسه، فهو يُتم دورة كل 10 ساعات تقريباً.[77] توجد على المشتري العديد من الظواهر الجوية، مثل الرياح عالية السرعة والبرق والعواصف الكثيرة (وأشهرها هي البقعة الحمراء العظيمة). كما يَملك المشتري أقوى مجال مغناطيسي من بين كواكب النظام الشمسي، والذي تبلغ قوته 12 ضعف قوى مجال الأرض. هذا الكوكب هو الجرم الوحيد في الكون الذي شاهد البشر أجساماً أخرى تصطدم به، فقد اصطدم به مذنب شيومارك-ليفي 9 عام 1994،[77][78][79] ثم كويكبان آخران اكتشفهما هاوي فلك في عامي 2009 و2010.[80]"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from NAMAA-Space/AraModernBert-Base-STS. 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.
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: ModernBertModel
(1): Pooling({'word_embedding_dimension': 768, '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})
)
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("yoriis/NAMAA-retriever-tydi")
# Run inference
sentences = [
'متى قام عقبة بن نافع ببناء جامع القيروان ؟',
'الأحماض الكربوكسيلية هي أحماض عضوية تصنف في ظل وجود مجموعة الكربوكسيل الوظيفية (COOH)، كما أنها تندرج تحت تصنيف العالمان (برونستد ولوري) للأحماض، حيث تقوم بمنح البروتون. صيغتها العامة هي R-COOH. حيث R مستبدل من الممكن أن تكون إما جذر ألكيلي أو ذرة هيدروجين، وهي منتشرة في الطبيعة بشكل كبير.',
'اليونيسف (بالإنكليزية:UNICEF) اختصارا ل"United Nations Children\'s Emergency Fund" أو منظمة الأمم المتحدة للطفولة. تأسس في 11 كانون الأول / ديسمبر 1946 بفضل تصويت بالإجماع في الدورة الأولى للجمعية العامة للأمم المتحدة. وتقرر وقتئذ أن يقدم صندوق الأمم المتحدة الدولي لرعاية الطفولة، كما كان يعرف آنذاك بتقديم إغاثة قصيرة الأجل للأطفال في فترة ما بعد الحرب العالمية الثانية في أوروبا.',
]
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]
sentence_0, sentence_1, and label| sentence_0 | sentence_1 | label | |
|---|---|---|---|
| type | string | string | float |
| details |
|
|
|
| sentence_0 | sentence_1 | label |
|---|---|---|
متى ولد ليوناردو ديفنشي؟ |
'عازف البيانو' هو فيلم من نوع الدراما التاريخية صدر عام 2002، من إخراج رومان بولانيسكي وتأليف رونالد هاورد، وبطولة أدريان برودي. الفيلم مأخوذ عن كتاب يحمل نفس الاسم لعازف البيانو البولندي اليهودي فلاديسلاف شبيلمان. |
0.0 |
متى ولد الرسول صلى الله عليه وسلم ؟ |
آسية بنت مزاحم هي امرأة فرعون موسى التي تلقت النبي موسى من اليم وآمنت به وأسندت رضاعته لأمه. |
0.0 |
ما هو التحصين؟ |
اللقاح هو مستحضر بيولوجي، يقدم المناعة الفاعلة المكتسبة تجاه مرض معين. يحوي اللقاح بشكل نموذجي على وسيط يشبه العضوية الدقيقة المسببة للمرض، وغالباً يصنع من الأشكال المضعفة أو المقتولة للجرثوم، أو من سمومه، أو أحد بروتيناته السطحية. يحرض هذا الوسيط الجهاز المناعي للجسم ليتعرف على هذا الجرثوم كمهدد له ويدمره، و يبقي لديه نسخة منه كي يستطيع الجهاز المناعي التعرف عليه ويحطمه بسهولة إذا هاجمه أي من هذه العضويات مرة أخرى. عملية تقديم اللقاح تدعى بعملية التلقيح. تمت دراسة فعالية التلقيح و التحقق منها بشكل جيد، على سبيل المثال لقاح الانفلونزا،[1] لقاح الفيروس الحليمومي البشري،[2] لقاح الجدري.[3] يعد التلقيح الطريقة الأولى الفعالة للوقاية من الأمراض المعدية.[4] المناعة واسعة الانتشار المأخوذة من اللقاحات مسؤولة بشكل كبير عن الاستئصال العالمي لمرض الجدري، والحد من أمراض أخرى كشلل الأطفال، والحصبة، والكزاز في معظم مناطق العالم. بينت منظمة الصحة العالمية أن اللقاحات المرخصة حالياً متاحة للوقاية أو للمساهمة في الوقاية وضبط 25 مرض معد.[5] يمكن أن تكون اللقاحات وقائية (مثال: تقي أو تحسن آثار مرض مست... |
1.0 |
ContrastiveLoss with these parameters:{
"distance_metric": "SiameseDistanceMetric.COSINE_DISTANCE",
"margin": 0.5,
"size_average": true
}
per_device_train_batch_size: 16per_device_eval_batch_size: 16multi_dataset_batch_sampler: round_robinoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 16per_device_eval_batch_size: 16per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 5e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1num_train_epochs: 3max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.0warmup_steps: 0log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Truesave_safetensors: Truesave_on_each_node: Falsesave_only_model: Falserestore_callback_states_from_checkpoint: Falseno_cuda: Falseuse_cpu: Falseuse_mps_device: Falseseed: 42data_seed: Nonejit_mode_eval: Falseuse_ipex: Falsebf16: Falsefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: 0ddp_backend: Nonetpu_num_cores: Nonetpu_metrics_debug: Falsedebug: []dataloader_drop_last: Falsedataloader_num_workers: 0dataloader_prefetch_factor: Nonepast_index: -1disable_tqdm: Falseremove_unused_columns: Truelabel_names: Noneload_best_model_at_end: Falseignore_data_skip: Falsefsdp: []fsdp_min_num_params: 0fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap: Noneaccelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torchoptim_args: Noneadafactor: Falsegroup_by_length: Falselength_column_name: lengthddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falsedataloader_pin_memory: Truedataloader_persistent_workers: Falseskip_memory_metrics: Trueuse_legacy_prediction_loop: Falsepush_to_hub: Falseresume_from_checkpoint: Nonehub_model_id: Nonehub_strategy: every_savehub_private_repo: Nonehub_always_push: Falsehub_revision: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_inputs_for_metrics: Falseinclude_for_metrics: []eval_do_concat_batches: Truefp16_backend: autopush_to_hub_model_id: Nonepush_to_hub_organization: Nonemp_parameters: auto_find_batch_size: Falsefull_determinism: Falsetorchdynamo: Noneray_scope: lastddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: Falseneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Falseprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: round_robin| Epoch | Step | Training Loss |
|---|---|---|
| 0.4 | 500 | 0.0055 |
| 0.8 | 1000 | 0.0033 |
| 1.2 | 1500 | 0.0023 |
| 1.6 | 2000 | 0.0014 |
| 2.0 | 2500 | 0.0014 |
| 2.4 | 3000 | 0.0006 |
| 2.8 | 3500 | 0.0005 |
@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",
}
@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}
}