metadata
tags:
- sentence-transformers
- cross-encoder
- generated_from_trainer
- dataset_size:42460
- loss:BinaryCrossEntropyLoss
base_model: aubmindlab/bert-base-arabertv02
pipeline_tag: text-ranking
library_name: sentence-transformers
metrics:
- accuracy
- accuracy_threshold
- f1
- f1_threshold
- precision
- recall
- average_precision
model-index:
- name: CrossEncoder based on aubmindlab/bert-base-arabertv02
results:
- task:
type: cross-encoder-classification
name: Cross Encoder Classification
dataset:
name: eval
type: eval
metrics:
- type: accuracy
value: 0.9953370072064434
name: Accuracy
- type: accuracy_threshold
value: 0.939628005027771
name: Accuracy Threshold
- type: f1
value: 0.9929936305732484
name: F1
- type: f1_threshold
value: 0.9252349138259888
name: F1 Threshold
- type: precision
value: 0.9948947032546267
name: Precision
- type: recall
value: 0.9910998092816274
name: Recall
- type: average_precision
value: 0.9990948433394359
name: Average Precision
CrossEncoder based on aubmindlab/bert-base-arabertv02
This is a Cross Encoder model finetuned from aubmindlab/bert-base-arabertv02 using the sentence-transformers library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.
Model Details
Model Description
- Model Type: Cross Encoder
- Base model: aubmindlab/bert-base-arabertv02
- Maximum Sequence Length: 512 tokens
- Number of Output Labels: 1 label
Model Sources
- Documentation: Sentence Transformers Documentation
- Documentation: Cross Encoder Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Cross Encoders on Hugging Face
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 CrossEncoder
# Download from the 🤗 Hub
model = CrossEncoder("yoriis/checkpoint")
# Get scores for pairs of texts
pairs = [
['كم عاماً حكم السلطان سليمان القانوني الدولة العثمانية؟', 'شبه جزيرة تامان () هي شبه جزيرة تقع في روسيا في إقليم كراسنودار كراي.'],
['من هو عمر الخيام؟', 'الرَّاغِب الأَصْفَهَاني (توفي 502 هـ / 1108 م) هو أديب وعالم، أصله من أصفهان، وعاش ببغداد. ألف عدة كتب في التفسير والأدب والبلاغة.[1]'],
['ما هى طريقة توزيع الذيل ؟', 'في الإحصاء والأعمال التجارية ، يمثل الذيل الطويل لبعض توزيعات الأرقام جزءًا من التوزيع بعدد كبير من التواجدات بعيدًا عن "الرأس" أو الجزء المركزي من التوزيع. يمكن أن يتضمن التوزيع شعبية ، وأعدادًا عشوائية لوقائع أحداث ذات احتمالات مختلفة ، إلخ. غالباً ما يستخدم المصطلح بشكل فضفاض ، بدون تعريف أو تعريف تعسفي ، لكن التعاريف الدقيقة ممكنة.'],
['أين كانت تقام بطولة كأس العالم المصغرة للأندية؟', 'أُقيم كأس العالم للأندية لأول مرة في 2000 ولم تقم بين 2001 و2004 بسبب انهيار شريكة الفيفا التسويقية. تُقام البطولة كل سنة منذ 2005. استضاف البطولةَ البرازيل واليابان والإمارات والمغرب.'],
['كم مدينة تحتوي رومانيا؟', 'ولاية ميلة تقع بالشمال الشرقي الجزائري تحدها شرقا ولاية قسنطينة وغربا ولاية سطيف وولاية جيجل وجنوبا ولاية أم البواقي وولاية باتنة وشمالا ولاية جيجل وولاية سكيكدة تبلغ مساحتها 3,407\xa0كم² بتعداد سكاني قدّر(سنة 2008) بـ: 766,886 نسمة...أما الكثافة السكانية فبلغت 225 نسمة/كم² في نفس السنة.'],
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)
# Or rank different texts based on similarity to a single text
ranks = model.rank(
'كم عاماً حكم السلطان سليمان القانوني الدولة العثمانية؟',
[
'شبه جزيرة تامان () هي شبه جزيرة تقع في روسيا في إقليم كراسنودار كراي.',
'الرَّاغِب الأَصْفَهَاني (توفي 502 هـ / 1108 م) هو أديب وعالم، أصله من أصفهان، وعاش ببغداد. ألف عدة كتب في التفسير والأدب والبلاغة.[1]',
'في الإحصاء والأعمال التجارية ، يمثل الذيل الطويل لبعض توزيعات الأرقام جزءًا من التوزيع بعدد كبير من التواجدات بعيدًا عن "الرأس" أو الجزء المركزي من التوزيع. يمكن أن يتضمن التوزيع شعبية ، وأعدادًا عشوائية لوقائع أحداث ذات احتمالات مختلفة ، إلخ. غالباً ما يستخدم المصطلح بشكل فضفاض ، بدون تعريف أو تعريف تعسفي ، لكن التعاريف الدقيقة ممكنة.',
'أُقيم كأس العالم للأندية لأول مرة في 2000 ولم تقم بين 2001 و2004 بسبب انهيار شريكة الفيفا التسويقية. تُقام البطولة كل سنة منذ 2005. استضاف البطولةَ البرازيل واليابان والإمارات والمغرب.',
'ولاية ميلة تقع بالشمال الشرقي الجزائري تحدها شرقا ولاية قسنطينة وغربا ولاية سطيف وولاية جيجل وجنوبا ولاية أم البواقي وولاية باتنة وشمالا ولاية جيجل وولاية سكيكدة تبلغ مساحتها 3,407\xa0كم² بتعداد سكاني قدّر(سنة 2008) بـ: 766,886 نسمة...أما الكثافة السكانية فبلغت 225 نسمة/كم² في نفس السنة.',
]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]
Evaluation
Metrics
Cross Encoder Classification
- Dataset:
eval - Evaluated with
CrossEncoderClassificationEvaluator
| Metric | Value |
|---|---|
| accuracy | 0.9953 |
| accuracy_threshold | 0.9396 |
| f1 | 0.993 |
| f1_threshold | 0.9252 |
| precision | 0.9949 |
| recall | 0.9911 |
| average_precision | 0.9991 |
Training Details
Training Dataset
Unnamed Dataset
- Size: 42,460 training samples
- Columns:
sentence_0,sentence_1, andlabel - Approximate statistics based on the first 1000 samples:
sentence_0 sentence_1 label type string string float details - min: 10 characters
- mean: 29.38 characters
- max: 86 characters
- min: 42 characters
- mean: 474.79 characters
- max: 3512 characters
- min: 0.0
- mean: 0.32
- max: 1.0
- Samples:
sentence_0 sentence_1 label كم عاماً حكم السلطان سليمان القانوني الدولة العثمانية؟شبه جزيرة تامان () هي شبه جزيرة تقع في روسيا في إقليم كراسنودار كراي.0.0من هو عمر الخيام؟الرَّاغِب الأَصْفَهَاني (توفي 502 هـ / 1108 م) هو أديب وعالم، أصله من أصفهان، وعاش ببغداد. ألف عدة كتب في التفسير والأدب والبلاغة.[1]0.0ما هى طريقة توزيع الذيل ؟في الإحصاء والأعمال التجارية ، يمثل الذيل الطويل لبعض توزيعات الأرقام جزءًا من التوزيع بعدد كبير من التواجدات بعيدًا عن "الرأس" أو الجزء المركزي من التوزيع. يمكن أن يتضمن التوزيع شعبية ، وأعدادًا عشوائية لوقائع أحداث ذات احتمالات مختلفة ، إلخ. غالباً ما يستخدم المصطلح بشكل فضفاض ، بدون تعريف أو تعريف تعسفي ، لكن التعاريف الدقيقة ممكنة.1.0 - Loss:
BinaryCrossEntropyLosswith these parameters:{ "activation_fn": "torch.nn.modules.linear.Identity", "pos_weight": null }
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy: stepsper_device_train_batch_size: 16per_device_eval_batch_size: 16num_train_epochs: 4fp16: True
All Hyperparameters
Click to expand
overwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_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: 4max_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: Truefp16_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: proportional
Training Logs
| Epoch | Step | Training Loss | eval_average_precision |
|---|---|---|---|
| 0.1884 | 500 | 0.3474 | 0.9981 |
| 0.3768 | 1000 | 0.1324 | 0.9988 |
| 0.5652 | 1500 | 0.0712 | 0.9984 |
| 0.7536 | 2000 | 0.058 | 0.9981 |
| 0.9420 | 2500 | 0.0466 | 0.9989 |
| 1.0 | 2654 | - | 0.9988 |
| 1.1304 | 3000 | 0.0426 | 0.9989 |
| 1.3188 | 3500 | 0.0357 | 0.9989 |
| 1.5072 | 4000 | 0.0362 | 0.9988 |
| 1.6956 | 4500 | 0.0314 | 0.9992 |
| 1.8839 | 5000 | 0.0273 | 0.9990 |
| 2.0 | 5308 | - | 0.9991 |
| 2.0723 | 5500 | 0.0302 | 0.9991 |
| 2.2607 | 6000 | 0.0265 | 0.9990 |
| 2.4491 | 6500 | 0.0262 | 0.9991 |
| 2.6375 | 7000 | 0.0249 | 0.9991 |
| 2.8259 | 7500 | 0.0284 | 0.9991 |
| 3.0 | 7962 | - | 0.9991 |
| 3.0143 | 8000 | 0.0252 | 0.9991 |
| 3.2027 | 8500 | 0.023 | 0.9991 |
| 3.3911 | 9000 | 0.022 | 0.9991 |
| 3.5795 | 9500 | 0.0244 | 0.9991 |
| 3.7679 | 10000 | 0.0219 | 0.9991 |
| 3.9563 | 10500 | 0.021 | 0.9991 |
| 4.0 | 10616 | - | 0.9991 |
Framework Versions
- Python: 3.11.13
- Sentence Transformers: 4.1.0
- Transformers: 4.54.0
- PyTorch: 2.6.0+cu124
- Accelerate: 1.9.0
- Datasets: 4.0.0
- Tokenizers: 0.21.2
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",
}