Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 13
How to use hindalmayyali/Sentence_arabertV1 with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("hindalmayyali/Sentence_arabertV1")
sentences = [
"متوسط عمر als",
"أعاني من الإسهال كل صباح فور الاستيقاظ. 2. احصل على مساعدة من طبيب الآن ¢. يبدو مثل: مشكلة منهكة شديدة. تشمل الأسباب العدوى أو داء كرون أو القولون التقرحي أو عدم تحمل النظام الغذائي. يجب أن ترى الطبيب بدلاً من محاولة علاج هذا بنفسك.",
"يتم تشخيص أكثر من 5600 شخص بقليل في الولايات المتحدة بمرض التصلب الجانبي الضموري كل عام. (هذه ضحية جديدة كل 90 دقيقة). تشير التقديرات إلى أن ما يصل إلى 30 ألف أمريكي يعانون من المرض في أي وقت. 80٪ من المصابين بمرض التصلب الجانبي الضموري هم من الرجال و 93٪ من المرضى من القوقاز. تتراوح أعمار معظم المصابين بمرض التصلب الجانبي الضموري بين 40 و 70 عامًا ، ويبلغ متوسط أعمارهم 55 عامًا وقت التشخيص. ومع ذلك ، تحدث حالات المرض لدى الأشخاص في العشرينات والثلاثينات من العمر.",
"متوسط معدل الذكاء للمراهق هو 100. تأخذ اختبارات الذكاء بعين الاعتبار العمر ، لذا فإن متوسط الدرجة دائمًا هو 100 ، بغض النظر عن عمر الشخص."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from aubmindlab/bert-base-arabertv02. 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': 128, 'do_lower_case': False, 'architecture': 'BertModel'})
(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("hindalmayyali/Sentence_arabertV1")
# 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)
# tensor([[1.0000, 0.9696, 0.0441],
# [0.9696, 1.0000, 0.0674],
# [0.0441, 0.0674, 1.0000]])
arabic-valid and arabic-testTripletEvaluator| Metric | arabic-valid | arabic-test |
|---|---|---|
| cosine_accuracy | 0.921 | 0.9328 |
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
حسناً، هذا رائع |
سيكون رائعاً |
هذا ليس مثيراً للاهتمام |
كم من الوقت لطهي كارني أسادا على الشواية |
متبل كارني أسادا. أخرج شرائح اللحم من الثلاجة. صفي التتبيلة واتركي سطح اللحم يجف بمنشفة ورقية. اشوي شرائح اللحم على صينية أو مقلاة أو شواية خارجية لمدة 4 إلى 5 دقائق لكل جانب. يُقدم مع شرائح البصل الأحمر أو الأرز المكسيكي الأصفر أو الأحمر أو الأخضر. |
ضع شرائح لحم الخنزير على مقلاة الشواء الساخنة واطبخها لمدة 8 إلى 10 دقائق على كل جانب ، حتى يتفحم اللحم قليلًا ويصل إلى درجة حرارة داخلية لا تقل عن 145 درجة فهرنهايت. استخدم الملقط لرفع شرائح اللحم وشويها الجانبين كذلك. |
ماذا يفعل ارتفاع السكر في الدم للأوعية الدموية |
البطانة السليمة ضرورية لتدفق الدم بحرية في الأوعية الدموية. ارتفاع نسبة السكر في الدم في مرض السكري يضر البطانة. هذا يعيق التدفق المستمر للدم داخل الأوعية الدموية. يقلل مرض السكري من إطلاق أكسيد النيتريك من الأوعية الدموية. |
الشريان (التعريف). الشرايين نوع من الأوعية الدموية. يمكننا تقسيم الأوعية الدموية إلى فئتين. الشرايين هي أوعية ضغط مرتفع تنقل الأكسجين (الأحمر) + الدم إلى الجسم. من ناحية أخرى ، الأوردة أو الأوعية ذات الضغط المنخفض التي تعود (الداكن) من الدم المؤكسج من الجسم إلى القلب. الشرايين نوع من الأوعية الدموية. يمكننا تقسيم الأوعية الدموية إلى فئتين. الشرايين هي أوعية ضغط مرتفع تنقل الأكسجين (الأحمر) + الدم إلى الجسم. من ناحية أخرى ، الأوردة أو الأوعية ذات الضغط المنخفض التي ترجع الدم المؤكسج (الداكن) من الجسم إلى القلب. |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
متوسط تكلفة بناء منزل جديد لكل قدم مربع |
متوسط تكاليف بناء المنزل الجديد حوالي 100 دولار للقدم المربع. تتراوح متوسطات الولاية من 75 دولارًا إلى 130 دولارًا. هذه الأرقام مضللة إلى حد ما ، مثلها مثل جميع المعدلات. من الواضح كما هو الحال مع جميع المتوسطات ، أن بعضها يكلف أكثر بكثير والبعض الآخر يكلف أقل بكثير. |
متوسط التكلفة للقدم المربع للمباني التجارية في حدود 200 دولار. هناك العديد من العوامل التي تدخل في السعر مثل الحجم والموقع. ما هو متوسط تكلفة البناء لكل قدم مربع لبناء منزل في نانتوكيت ما؟ يبلغ متوسط تكاليف البناء في عام 2012 حوالي 350 دولارًا للقدم المربع ، ولكن يمكن أن تتجاوز بسهولة 500 دولار للبناء عالي الجودة. |
السيدة الأولى لورا بوش على المنصة، أمام الجمهور الجالس، في مؤتمر البيت الأبيض حول محو الأمية العالمي. |
لورا بوش تقف أمام مؤتمر |
(لورا بوش) تقود دراجة مائية قرب نصب (واشنطن) التذكاري |
هل كان إعادة الإعمار الأمريكي فشلاً؟ |
هل كان إعادة الإعمار فشلاً؟ لماذا أو لماذا لا؟ |
هل يتوسع الكون؟ |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}
eval_strategy: epochper_device_train_batch_size: 32per_device_eval_batch_size: 48gradient_accumulation_steps: 2learning_rate: 2e-05num_train_epochs: 10warmup_ratio: 0.1load_best_model_at_end: Trueoptim: adamw_torchdataloader_pin_memory: Falsegradient_checkpointing: Truebatch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: epochprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 48per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 2eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 10max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.1warmup_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: Trueignore_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}parallelism_config: Nonedeepspeed: 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: Falsedataloader_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: Truegradient_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: no_duplicatesmulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss | Validation Loss | arabic-valid_cosine_accuracy | arabic-test_cosine_accuracy |
|---|---|---|---|---|---|
| 0.0013 | 1 | 2.3706 | - | - | - |
| 0.0640 | 50 | 2.0507 | - | - | - |
| 0.1280 | 100 | 1.2702 | - | - | - |
| 0.1919 | 150 | 0.8272 | - | - | - |
| 0.2559 | 200 | 0.665 | - | - | - |
| 0.3199 | 250 | 0.612 | - | - | - |
| 0.3839 | 300 | 0.5628 | - | - | - |
| 0.4479 | 350 | 0.5455 | - | - | - |
| 0.5118 | 400 | 0.484 | - | - | - |
| 0.5758 | 450 | 0.4632 | - | - | - |
| 0.6398 | 500 | 0.4618 | - | - | - |
| 0.7038 | 550 | 0.4384 | - | - | - |
| 0.7678 | 600 | 0.4087 | - | - | - |
| 0.8317 | 650 | 0.3721 | - | - | - |
| 0.8957 | 700 | 0.4261 | - | - | - |
| 0.9597 | 750 | 0.4114 | - | - | - |
| 1.0 | 782 | - | 0.4069 | 0.9200 | - |
| 1.0230 | 800 | 0.3637 | - | - | - |
| 1.0870 | 850 | 0.3329 | - | - | - |
| 1.1510 | 900 | 0.3133 | - | - | - |
| 1.2150 | 950 | 0.2974 | - | - | - |
| 1.2790 | 1000 | 0.2944 | - | - | - |
| 1.3429 | 1050 | 0.2627 | - | - | - |
| 1.4069 | 1100 | 0.2994 | - | - | - |
| 1.4709 | 1150 | 0.3068 | - | - | - |
| 1.5349 | 1200 | 0.3016 | - | - | - |
| 1.5988 | 1250 | 0.3068 | - | - | - |
| 1.6628 | 1300 | 0.304 | - | - | - |
| 1.7268 | 1350 | 0.3012 | - | - | - |
| 1.7908 | 1400 | 0.2998 | - | - | - |
| 1.8548 | 1450 | 0.3181 | - | - | - |
| 1.9187 | 1500 | 0.2858 | - | - | - |
| 1.9827 | 1550 | 0.2843 | - | - | - |
| 2.0 | 1564 | - | 0.3489 | 0.9340 | - |
| 2.0461 | 1600 | 0.223 | - | - | - |
| 2.1100 | 1650 | 0.191 | - | - | - |
| 2.1740 | 1700 | 0.1828 | - | - | - |
| 2.2380 | 1750 | 0.1762 | - | - | - |
| 2.3020 | 1800 | 0.2021 | - | - | - |
| 2.3660 | 1850 | 0.1824 | - | - | - |
| 2.4299 | 1900 | 0.1873 | - | - | - |
| 2.4939 | 1950 | 0.188 | - | - | - |
| 2.5579 | 2000 | 0.188 | - | - | - |
| 2.6219 | 2050 | 0.1909 | - | - | - |
| 2.6859 | 2100 | 0.1888 | - | - | - |
| 2.7498 | 2150 | 0.1839 | - | - | - |
| 2.8138 | 2200 | 0.1965 | - | - | - |
| 2.8778 | 2250 | 0.1881 | - | - | - |
| 2.9418 | 2300 | 0.1753 | - | - | - |
| 3.0 | 2346 | - | 0.3480 | 0.9290 | - |
| 3.0051 | 2350 | 0.1847 | - | - | - |
| 3.0691 | 2400 | 0.1415 | - | - | - |
| 3.1331 | 2450 | 0.1258 | - | - | - |
| 3.1971 | 2500 | 0.1125 | - | - | - |
| 3.2610 | 2550 | 0.1186 | - | - | - |
| 3.3250 | 2600 | 0.1235 | - | - | - |
| 3.3890 | 2650 | 0.1328 | - | - | - |
| 3.4530 | 2700 | 0.1294 | - | - | - |
| 3.5170 | 2750 | 0.138 | - | - | - |
| 3.5809 | 2800 | 0.1282 | - | - | - |
| 3.6449 | 2850 | 0.1391 | - | - | - |
| 3.7089 | 2900 | 0.1321 | - | - | - |
| 3.7729 | 2950 | 0.1396 | - | - | - |
| 3.8369 | 3000 | 0.1344 | - | - | - |
| 3.9008 | 3050 | 0.1257 | - | - | - |
| 3.9648 | 3100 | 0.1441 | - | - | - |
| 4.0 | 3128 | - | 0.3466 | 0.924 | - |
| 4.0282 | 3150 | 0.1105 | - | - | - |
| 4.0921 | 3200 | 0.0954 | - | - | - |
| 4.1561 | 3250 | 0.0894 | - | - | - |
| 4.2201 | 3300 | 0.0945 | - | - | - |
| 4.2841 | 3350 | 0.0958 | - | - | - |
| 4.3480 | 3400 | 0.0957 | - | - | - |
| 4.4120 | 3450 | 0.0935 | - | - | - |
| 4.4760 | 3500 | 0.1093 | - | - | - |
| 4.5400 | 3550 | 0.1107 | - | - | - |
| 4.6040 | 3600 | 0.0995 | - | - | - |
| 4.6679 | 3650 | 0.1081 | - | - | - |
| 4.7319 | 3700 | 0.0887 | - | - | - |
| 4.7959 | 3750 | 0.0952 | - | - | - |
| 4.8599 | 3800 | 0.0976 | - | - | - |
| 4.9239 | 3850 | 0.1034 | - | - | - |
| 4.9878 | 3900 | 0.0903 | - | - | - |
| 5.0 | 3910 | - | 0.3495 | 0.9240 | - |
| 5.0512 | 3950 | 0.0748 | - | - | - |
| 5.1152 | 4000 | 0.0881 | - | - | - |
| 5.1791 | 4050 | 0.0721 | - | - | - |
| 5.2431 | 4100 | 0.0811 | - | - | - |
| 5.3071 | 4150 | 0.0834 | - | - | - |
| 5.3711 | 4200 | 0.0936 | - | - | - |
| 5.4351 | 4250 | 0.0769 | - | - | - |
| 5.4990 | 4300 | 0.0817 | - | - | - |
| 5.5630 | 4350 | 0.078 | - | - | - |
| 5.6270 | 4400 | 0.0925 | - | - | - |
| 5.6910 | 4450 | 0.0773 | - | - | - |
| 5.7550 | 4500 | 0.0779 | - | - | - |
| 5.8189 | 4550 | 0.0726 | - | - | - |
| 5.8829 | 4600 | 0.0864 | - | - | - |
| 5.9469 | 4650 | 0.0779 | - | - | - |
| 6.0 | 4692 | - | 0.3469 | 0.9250 | - |
| 6.0102 | 4700 | 0.0795 | - | - | - |
| 6.0742 | 4750 | 0.0673 | - | - | - |
| 6.1382 | 4800 | 0.0653 | - | - | - |
| 6.2022 | 4850 | 0.0638 | - | - | - |
| 6.2662 | 4900 | 0.0597 | - | - | - |
| 6.3301 | 4950 | 0.0705 | - | - | - |
| 6.3941 | 5000 | 0.0664 | - | - | - |
| 6.4581 | 5050 | 0.0675 | - | - | - |
| 6.5221 | 5100 | 0.0742 | - | - | - |
| 6.5861 | 5150 | 0.0704 | - | - | - |
| 6.6500 | 5200 | 0.06 | - | - | - |
| 6.7140 | 5250 | 0.0586 | - | - | - |
| 6.7780 | 5300 | 0.0643 | - | - | - |
| 6.8420 | 5350 | 0.0699 | - | - | - |
| 6.9060 | 5400 | 0.067 | - | - | - |
| 6.9699 | 5450 | 0.0643 | - | - | - |
| 7.0 | 5474 | - | 0.3491 | 0.9210 | - |
| -1 | -1 | - | - | - | 0.9328 |
@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",
}
@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}
}
Base model
aubmindlab/bert-base-arabertv02