--- tags: - sentence-transformers - cross-encoder - reranker - generated_from_trainer - dataset_size:14287 - loss:BinaryCrossEntropyLoss base_model: yoriis/ce-final 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 yoriis/ce-final results: - task: type: cross-encoder-classification name: Cross Encoder Classification dataset: name: eval type: eval metrics: - type: accuracy value: 0.9767002518891688 name: Accuracy - type: accuracy_threshold value: 0.6093786954879761 name: Accuracy Threshold - type: f1 value: 0.8514056224899598 name: F1 - type: f1_threshold value: 0.08044017106294632 name: F1 Threshold - type: precision value: 0.8412698412698413 name: Precision - type: recall value: 0.8617886178861789 name: Recall - type: average_precision value: 0.8904592423807994 name: Average Precision --- # CrossEncoder based on yoriis/ce-final This is a [Cross Encoder](https://www.sbert.net/docs/cross_encoder/usage/usage.html) model finetuned from [yoriis/ce-final](https://huggingface.co/yoriis/ce-final) using the [sentence-transformers](https://www.SBERT.net) 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:** [yoriis/ce-final](https://huggingface.co/yoriis/ce-final) - **Maximum Sequence Length:** 512 tokens - **Number of Output Labels:** 1 label ### Model Sources - **Documentation:** [Sentence Transformers Documentation](https://sbert.net) - **Documentation:** [Cross Encoder Documentation](https://www.sbert.net/docs/cross_encoder/usage/usage.html) - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) - **Hugging Face:** [Cross Encoders on Hugging Face](https://huggingface.co/models?library=sentence-transformers&other=cross-encoder) ## Usage ### Direct Usage (Sentence Transformers) First install the Sentence Transformers library: ```bash pip install -U sentence-transformers ``` Then you can load this model and run inference. ```python from sentence_transformers import CrossEncoder # Download from the 🤗 Hub model = CrossEncoder("yoriis/ce-task-70") # Get scores for pairs of texts pairs = [ ['ما المخلوقات التي تسبح الله؟', 'يا بني آدم إما يأتينكم رسل منكم يقصون عليكم آياتي فمن اتقى وأصلح فلا خوف عليهم ولا هم يحزنون. والذين كذبوا بآياتنا واستكبروا عنها أولئك أصحاب النار هم فيها خالدون. فمن أظلم ممن افترى على الله كذبا أو كذب بآياته أولئك ينالهم نصيبهم من الكتاب حتى إذا جاءتهم رسلنا يتوفونهم قالوا أين ما كنتم تدعون من دون الله قالوا ضلوا عنا وشهدوا على أنفسهم أنهم كانوا كافرين.'], ['اتهم القرآن بأنه السبب في الدكتاتورية الإسلامية لكونه أباح ضرب النساء في حالة النشوز، كيف نرد على ذلك؟', 'إذ قال الله يا عيسى ابن مريم اذكر نعمتي عليك وعلى والدتك إذ أيدتك بروح القدس تكلم الناس في المهد وكهلا وإذ علمتك الكتاب والحكمة والتوراة والإنجيل وإذ تخلق من الطين كهيئة الطير بإذني فتنفخ فيها فتكون طيرا بإذني وتبرئ الأكمه والأبرص بإذني وإذ تخرج الموتى بإذني وإذ كففت بني إسرائيل عنك إذ جئتهم بالبينات فقال الذين كفروا منهم إن هذا إلا سحر مبين. وإذ أوحيت إلى الحواريين أن آمنوا بي وبرسولي قالوا آمنا واشهد بأننا مسلمون.'], ['ما هو الجهاد؟', '[PASSAGE_NOT_FOUND]'], ['هل كان سيدنا يوسف عليه السلام رسولا أم نبيا؟', 'الرجال قوامون على النساء بما فضل الله بعضهم على بعض وبما أنفقوا من أموالهم فالصالحات قانتات حافظات للغيب بما حفظ الله واللاتي تخافون نشوزهن فعظوهن واهجروهن في المضاجع واضربوهن فإن أطعنكم فلا تبغوا عليهن سبيلا إن الله كان عليا كبيرا. وإن خفتم شقاق بينهما فابعثوا حكما من أهله وحكما من أهلها إن يريدا إصلاحا يوفق الله بينهما إن الله كان عليما خبيرا.'], ['ما هي المنافع الصحية لصلاة الفجر؟', 'وقال الله لا تتخذوا إلهين اثنين إنما هو إله واحد فإياي فارهبون. وله ما في السماوات والأرض وله الدين واصبا أفغير الله تتقون. وما بكم من نعمة فمن الله ثم إذا مسكم الضر فإليه تجأرون. ثم إذا كشف الضر عنكم إذا فريق منكم بربهم يشركون. ليكفروا بما آتيناهم فتمتعوا فسوف تعلمون.'], ] scores = model.predict(pairs) print(scores.shape) # (5,) # Or rank different texts based on similarity to a single text ranks = model.rank( 'ما المخلوقات التي تسبح الله؟', [ 'يا بني آدم إما يأتينكم رسل منكم يقصون عليكم آياتي فمن اتقى وأصلح فلا خوف عليهم ولا هم يحزنون. والذين كذبوا بآياتنا واستكبروا عنها أولئك أصحاب النار هم فيها خالدون. فمن أظلم ممن افترى على الله كذبا أو كذب بآياته أولئك ينالهم نصيبهم من الكتاب حتى إذا جاءتهم رسلنا يتوفونهم قالوا أين ما كنتم تدعون من دون الله قالوا ضلوا عنا وشهدوا على أنفسهم أنهم كانوا كافرين.', 'إذ قال الله يا عيسى ابن مريم اذكر نعمتي عليك وعلى والدتك إذ أيدتك بروح القدس تكلم الناس في المهد وكهلا وإذ علمتك الكتاب والحكمة والتوراة والإنجيل وإذ تخلق من الطين كهيئة الطير بإذني فتنفخ فيها فتكون طيرا بإذني وتبرئ الأكمه والأبرص بإذني وإذ تخرج الموتى بإذني وإذ كففت بني إسرائيل عنك إذ جئتهم بالبينات فقال الذين كفروا منهم إن هذا إلا سحر مبين. وإذ أوحيت إلى الحواريين أن آمنوا بي وبرسولي قالوا آمنا واشهد بأننا مسلمون.', '[PASSAGE_NOT_FOUND]', 'الرجال قوامون على النساء بما فضل الله بعضهم على بعض وبما أنفقوا من أموالهم فالصالحات قانتات حافظات للغيب بما حفظ الله واللاتي تخافون نشوزهن فعظوهن واهجروهن في المضاجع واضربوهن فإن أطعنكم فلا تبغوا عليهن سبيلا إن الله كان عليا كبيرا. وإن خفتم شقاق بينهما فابعثوا حكما من أهله وحكما من أهلها إن يريدا إصلاحا يوفق الله بينهما إن الله كان عليما خبيرا.', 'وقال الله لا تتخذوا إلهين اثنين إنما هو إله واحد فإياي فارهبون. وله ما في السماوات والأرض وله الدين واصبا أفغير الله تتقون. وما بكم من نعمة فمن الله ثم إذا مسكم الضر فإليه تجأرون. ثم إذا كشف الضر عنكم إذا فريق منكم بربهم يشركون. ليكفروا بما آتيناهم فتمتعوا فسوف تعلمون.', ] ) # [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...] ``` ## Evaluation ### Metrics #### Cross Encoder Classification * Dataset: `eval` * Evaluated with [CrossEncoderClassificationEvaluator](https://sbert.net/docs/package_reference/cross_encoder/evaluation.html#sentence_transformers.cross_encoder.evaluation.CrossEncoderClassificationEvaluator) | Metric | Value | |:----------------------|:-----------| | accuracy | 0.9767 | | accuracy_threshold | 0.6094 | | f1 | 0.8514 | | f1_threshold | 0.0804 | | precision | 0.8413 | | recall | 0.8618 | | **average_precision** | **0.8905** | ## Training Details ### Training Dataset #### Unnamed Dataset * Size: 14,287 training samples * Columns: sentence_0, sentence_1, and label * Approximate statistics based on the first 1000 samples: | | sentence_0 | sentence_1 | label | |:--------|:------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------|:---------------------------------------------------------------| | type | string | string | float | | details | | | | * Samples: | sentence_0 | sentence_1 | label | |:---------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------| | ما المخلوقات التي تسبح الله؟ | يا بني آدم إما يأتينكم رسل منكم يقصون عليكم آياتي فمن اتقى وأصلح فلا خوف عليهم ولا هم يحزنون. والذين كذبوا بآياتنا واستكبروا عنها أولئك أصحاب النار هم فيها خالدون. فمن أظلم ممن افترى على الله كذبا أو كذب بآياته أولئك ينالهم نصيبهم من الكتاب حتى إذا جاءتهم رسلنا يتوفونهم قالوا أين ما كنتم تدعون من دون الله قالوا ضلوا عنا وشهدوا على أنفسهم أنهم كانوا كافرين. | 0.0 | | اتهم القرآن بأنه السبب في الدكتاتورية الإسلامية لكونه أباح ضرب النساء في حالة النشوز، كيف نرد على ذلك؟ | إذ قال الله يا عيسى ابن مريم اذكر نعمتي عليك وعلى والدتك إذ أيدتك بروح القدس تكلم الناس في المهد وكهلا وإذ علمتك الكتاب والحكمة والتوراة والإنجيل وإذ تخلق من الطين كهيئة الطير بإذني فتنفخ فيها فتكون طيرا بإذني وتبرئ الأكمه والأبرص بإذني وإذ تخرج الموتى بإذني وإذ كففت بني إسرائيل عنك إذ جئتهم بالبينات فقال الذين كفروا منهم إن هذا إلا سحر مبين. وإذ أوحيت إلى الحواريين أن آمنوا بي وبرسولي قالوا آمنا واشهد بأننا مسلمون. | 0.0 | | ما هو الجهاد؟ | [PASSAGE_NOT_FOUND] | 0.0 | * Loss: [BinaryCrossEntropyLoss](https://sbert.net/docs/package_reference/cross_encoder/losses.html#binarycrossentropyloss) with these parameters: ```json { "activation_fn": "torch.nn.modules.linear.Identity", "pos_weight": null } ``` ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: steps - `num_train_epochs`: 4 - `fp16`: True #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: steps - `prediction_loss_only`: True - `per_device_train_batch_size`: 8 - `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`: 5e-05 - `weight_decay`: 0.0 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1 - `num_train_epochs`: 4 - `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`: True - `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 - `hub_revision`: None - `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 - `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 - `liger_kernel_config`: None - `eval_use_gather_object`: False - `average_tokens_across_devices`: False - `prompts`: None - `batch_sampler`: batch_sampler - `multi_dataset_batch_sampler`: proportional - `router_mapping`: {} - `learning_rate_mapping`: {}
### Training Logs | Epoch | Step | Training Loss | eval_average_precision | |:------:|:----:|:-------------:|:----------------------:| | 0.2800 | 500 | 0.181 | 0.8232 | | 0.5599 | 1000 | 0.1431 | 0.8457 | | 0.8399 | 1500 | 0.116 | 0.8569 | | 1.0 | 1786 | - | 0.8621 | | 1.1198 | 2000 | 0.1187 | 0.8696 | | 1.3998 | 2500 | 0.1166 | 0.8764 | | 1.6797 | 3000 | 0.1126 | 0.8871 | | 1.9597 | 3500 | 0.1155 | 0.8902 | | 2.0 | 3572 | - | 0.8852 | | 2.2396 | 4000 | 0.0905 | 0.8877 | | 2.5196 | 4500 | 0.1201 | 0.8886 | | 2.7996 | 5000 | 0.0995 | 0.8901 | | 3.0 | 5358 | - | 0.8898 | | 3.0795 | 5500 | 0.0836 | 0.8882 | | 3.3595 | 6000 | 0.0726 | 0.8867 | | 3.6394 | 6500 | 0.1126 | 0.8919 | | 3.9194 | 7000 | 0.0827 | 0.8903 | | 4.0 | 7144 | - | 0.8905 | ### Framework Versions - Python: 3.11.13 - Sentence Transformers: 5.0.0 - Transformers: 4.55.0 - PyTorch: 2.6.0+cu124 - Accelerate: 1.9.0 - Datasets: 4.0.0 - Tokenizers: 0.21.4 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @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", } ```