CrossEncoder based on itdainb/PhoRanker

This is a Cross Encoder model finetuned from itdainb/PhoRanker 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: itdainb/PhoRanker
  • Maximum Sequence Length: 256 tokens
  • Number of Output Labels: 1 label

Model Sources

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("truong1301/PhoRanker_viwiki_1")
# Get scores for pairs of texts
pairs = [
    ['Lý_thuyết lượng_tử ra_đời có phải sau khi Einstein nghiên_cứu về cơ_học lượng_tử năm 1906 không ? \n', 'Thay vào đó ông quyết_định tập_trung vào các nguyên_lý tiên_nghiệm , chúng nói rằng các định_luật vật_lý có_thể được hiểu là thỏa_mãn trong những trường_hợp rất rộng thậm_chí trong những phạm_vi mà chúng chưa từng được áp_dụng hay kiểm_nghiệm . Một ví_dụ được các nhà vật_lý chấp_nhận rộng_rãi của nguyên_lý tiên_nghiệm đó là tính bất_biến quay ( hay tính đối_xứng quay , nói rằng các định_luật vật_lý là bất_biến nếu chúng_ta quay toàn_bộ không_gian chứa hệ theo một hướng khác ) . Nếu một lực mới được khám_phá trong vật_lý , lực này có_thể lập_tức được hiểu nó có tính bất_biến quay mà không cần phải suy_xét . Einstein đã hướng tìm các nguyên_lý mới theo phương_pháp bất_biến này , để tìm ra các ý_tưởng vật_lý mới . Khi các nguyên_lý cần tìm đã đủ , thì vật_lý mới sẽ là lý_thuyết phù_hợp đơn_giản nhất với các nguyên_lý và các định_luật đã được biết trước đó .'],
    ['Vậy , dù bị Nhật lợi_dụng , ông có thực_sự tin mình đang giúp_ích cho dân_tộc không ? \n', 'Cuối thời nhà Thanh , do sự lạc_hậu về khoa_học công_nghệ , Trung_Quốc bị các nước phương Tây ( Anh , Đức , Nga , Pháp , Bồ_Đào_Nha ) và cả Nhật_Bản xâu_xé lãnh_thổ . Các nhà sử_học Trung_Quốc gọi thời_kỳ này là Bách_niên quốc sỉ ( 100 năm đất_nước bị làm_nhục ) . Chế_độ quân_chủ chuyên_chế đã tỏ ra quá già_cỗi , hoàn_toàn bất_lực trong việc bảo_vệ đất_nước chống lại chủ_nghĩa tư_bản phương Tây . Điều này gây bất_bình trong đội_ngũ trí_thức Trung_Quốc , một bộ_phận kêu_gọi tiến_hành cách_mạng lật_đổ chế_độ quân_chủ chuyên_chế của nhà Thanh , thành_lập một kiểu nhà_nước mới để canh tân đất_nước . Năm 1911 , cách_mạng Tân_Hợi nổ ra , hoàng đế cuối_cùng của Trung_Quốc là Phổ_Nghi buộc phải thoái_vị .'],
    ['Từ năm 1400 , quốc_hiệu nước ta là gì ? \n', 'Các chúa Nguyễn sử_dụng " An_Nam " trong các tài_liệu , thư từ ngoại_giao . Các tài_liệu ngoại quốc đương_thời gọi xứ Đàng Trong là Quảng_Nam_Quốc ( 廣南國 ) , hay Canglan , Quinan ( tiếng Hà_Lan ) , Cochinchina ( tiếng Bồ_Đào_Nha , Tây_Ban_Nha , Anh ) và Cocincina ( tiếng Ý , Latinh ) .'],
    ['Chiến_lược đối_ngoại của Singapore có bao_gồm việc ràng_buộc lợi_ích của họ với lợi_ích của Mỹ ở Đông_Nam Á không ? \n', 'Năm 1819 , chính_khách người Anh Quốc Thomas Stamford Raffles đến và thay_mặt Công_ty Đông_Ấn của Anh để ký_kết một hiệp_định với Quốc_vương Hussein_Shah của Vương_quốc Johor nhằm phát_triển phần phía nam của Singapore thành một trạm mậu_dịch của Đế_quốc Anh . Năm 1824 , Anh Quốc có quyền sở_hữu đối_với toàn_bộ đảo theo một hiệp_định khác với Quốc_vương và Temenggong ( thống_lĩnh ) . Năm 1826 , Singapore trở_thành một phần của Các khu định_cư Eo_biển , thuộc phạm_vi quyền_hạn của Ấn_Độ thuộc Anh , rồi trở_thành thủ_đô của lãnh_thổ vào năm 1836 .'],
    ['Nông_nghiệp tự_cấp và thương_mại đóng vai_trò như thế_nào trong GDP và việc_làm của Lào , đặc_biệt là từ năm 2000 ? \n', 'Nigeria nằm trên một trong những nguồn dầu_mỏ lớn nhất đã được công_nhận trên thế_giới và cũng là nước có dân_số lớn nhất trong số các quốc_gia châu Phi , cũng là một quốc_gia phát_triển nhanh . Tuy_nhiên , phần_lớn ngành công_nghiệp dầu_mỏ thuộc sở_hữu của nước_ngoài , và trong ngành này thì sự tham_nhũng là lan_tràn , ngay ở cấp_độ quốc_gia , vì_thế rất ít tiền thu được từ dầu_mỏ còn lại trong nước , và số tiền đó chỉ đến với một phần_trăm ít_ỏi của dân_số .'],
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)

# Or rank different texts based on similarity to a single text
ranks = model.rank(
    'Lý_thuyết lượng_tử ra_đời có phải sau khi Einstein nghiên_cứu về cơ_học lượng_tử năm 1906 không ? \n',
    [
        'Thay vào đó ông quyết_định tập_trung vào các nguyên_lý tiên_nghiệm , chúng nói rằng các định_luật vật_lý có_thể được hiểu là thỏa_mãn trong những trường_hợp rất rộng thậm_chí trong những phạm_vi mà chúng chưa từng được áp_dụng hay kiểm_nghiệm . Một ví_dụ được các nhà vật_lý chấp_nhận rộng_rãi của nguyên_lý tiên_nghiệm đó là tính bất_biến quay ( hay tính đối_xứng quay , nói rằng các định_luật vật_lý là bất_biến nếu chúng_ta quay toàn_bộ không_gian chứa hệ theo một hướng khác ) . Nếu một lực mới được khám_phá trong vật_lý , lực này có_thể lập_tức được hiểu nó có tính bất_biến quay mà không cần phải suy_xét . Einstein đã hướng tìm các nguyên_lý mới theo phương_pháp bất_biến này , để tìm ra các ý_tưởng vật_lý mới . Khi các nguyên_lý cần tìm đã đủ , thì vật_lý mới sẽ là lý_thuyết phù_hợp đơn_giản nhất với các nguyên_lý và các định_luật đã được biết trước đó .',
        'Cuối thời nhà Thanh , do sự lạc_hậu về khoa_học công_nghệ , Trung_Quốc bị các nước phương Tây ( Anh , Đức , Nga , Pháp , Bồ_Đào_Nha ) và cả Nhật_Bản xâu_xé lãnh_thổ . Các nhà sử_học Trung_Quốc gọi thời_kỳ này là Bách_niên quốc sỉ ( 100 năm đất_nước bị làm_nhục ) . Chế_độ quân_chủ chuyên_chế đã tỏ ra quá già_cỗi , hoàn_toàn bất_lực trong việc bảo_vệ đất_nước chống lại chủ_nghĩa tư_bản phương Tây . Điều này gây bất_bình trong đội_ngũ trí_thức Trung_Quốc , một bộ_phận kêu_gọi tiến_hành cách_mạng lật_đổ chế_độ quân_chủ chuyên_chế của nhà Thanh , thành_lập một kiểu nhà_nước mới để canh tân đất_nước . Năm 1911 , cách_mạng Tân_Hợi nổ ra , hoàng đế cuối_cùng của Trung_Quốc là Phổ_Nghi buộc phải thoái_vị .',
        'Các chúa Nguyễn sử_dụng " An_Nam " trong các tài_liệu , thư từ ngoại_giao . Các tài_liệu ngoại quốc đương_thời gọi xứ Đàng Trong là Quảng_Nam_Quốc ( 廣南國 ) , hay Canglan , Quinan ( tiếng Hà_Lan ) , Cochinchina ( tiếng Bồ_Đào_Nha , Tây_Ban_Nha , Anh ) và Cocincina ( tiếng Ý , Latinh ) .',
        'Năm 1819 , chính_khách người Anh Quốc Thomas Stamford Raffles đến và thay_mặt Công_ty Đông_Ấn của Anh để ký_kết một hiệp_định với Quốc_vương Hussein_Shah của Vương_quốc Johor nhằm phát_triển phần phía nam của Singapore thành một trạm mậu_dịch của Đế_quốc Anh . Năm 1824 , Anh Quốc có quyền sở_hữu đối_với toàn_bộ đảo theo một hiệp_định khác với Quốc_vương và Temenggong ( thống_lĩnh ) . Năm 1826 , Singapore trở_thành một phần của Các khu định_cư Eo_biển , thuộc phạm_vi quyền_hạn của Ấn_Độ thuộc Anh , rồi trở_thành thủ_đô của lãnh_thổ vào năm 1836 .',
        'Nigeria nằm trên một trong những nguồn dầu_mỏ lớn nhất đã được công_nhận trên thế_giới và cũng là nước có dân_số lớn nhất trong số các quốc_gia châu Phi , cũng là một quốc_gia phát_triển nhanh . Tuy_nhiên , phần_lớn ngành công_nghiệp dầu_mỏ thuộc sở_hữu của nước_ngoài , và trong ngành này thì sự tham_nhũng là lan_tràn , ngay ở cấp_độ quốc_gia , vì_thế rất ít tiền thu được từ dầu_mỏ còn lại trong nước , và số tiền đó chỉ đến với một phần_trăm ít_ỏi của dân_số .',
    ]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]

Evaluation

Metrics

Cross Encoder Binary Classification

Metric Value
accuracy 0.9877
accuracy_threshold 0.9566
f1 0.9299
f1_threshold 0.9357
precision 0.9559
recall 0.9052
average_precision 0.9752

Training Details

Training Dataset

Unnamed Dataset

  • Size: 184,833 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 int
    details
    • min: 28 characters
    • mean: 104.62 characters
    • max: 296 characters
    • min: 142 characters
    • mean: 592.91 characters
    • max: 2807 characters
    • 0: ~90.50%
    • 1: ~9.50%
  • Samples:
    sentence_0 sentence_1 label
    Lý_thuyết lượng_tử ra_đời có phải sau khi Einstein nghiên_cứu về cơ_học lượng_tử năm 1906 không ?
    Thay vào đó ông quyết_định tập_trung vào các nguyên_lý tiên_nghiệm , chúng nói rằng các định_luật vật_lý có_thể được hiểu là thỏa_mãn trong những trường_hợp rất rộng thậm_chí trong những phạm_vi mà chúng chưa từng được áp_dụng hay kiểm_nghiệm . Một ví_dụ được các nhà vật_lý chấp_nhận rộng_rãi của nguyên_lý tiên_nghiệm đó là tính bất_biến quay ( hay tính đối_xứng quay , nói rằng các định_luật vật_lý là bất_biến nếu chúng_ta quay toàn_bộ không_gian chứa hệ theo một hướng khác ) . Nếu một lực mới được khám_phá trong vật_lý , lực này có_thể lập_tức được hiểu nó có tính bất_biến quay mà không cần phải suy_xét . Einstein đã hướng tìm các nguyên_lý mới theo phương_pháp bất_biến này , để tìm ra các ý_tưởng vật_lý mới . Khi các nguyên_lý cần tìm đã đủ , thì vật_lý mới sẽ là lý_thuyết phù_hợp đơn_giản nhất với các nguyên_lý và các định_luật đã được biết trước đó . 0
    Vậy , dù bị Nhật lợi_dụng , ông có thực_sự tin mình đang giúp_ích cho dân_tộc không ?
    Cuối thời nhà Thanh , do sự lạc_hậu về khoa_học công_nghệ , Trung_Quốc bị các nước phương Tây ( Anh , Đức , Nga , Pháp , Bồ_Đào_Nha ) và cả Nhật_Bản xâu_xé lãnh_thổ . Các nhà sử_học Trung_Quốc gọi thời_kỳ này là Bách_niên quốc sỉ ( 100 năm đất_nước bị làm_nhục ) . Chế_độ quân_chủ chuyên_chế đã tỏ ra quá già_cỗi , hoàn_toàn bất_lực trong việc bảo_vệ đất_nước chống lại chủ_nghĩa tư_bản phương Tây . Điều này gây bất_bình trong đội_ngũ trí_thức Trung_Quốc , một bộ_phận kêu_gọi tiến_hành cách_mạng lật_đổ chế_độ quân_chủ chuyên_chế của nhà Thanh , thành_lập một kiểu nhà_nước mới để canh tân đất_nước . Năm 1911 , cách_mạng Tân_Hợi nổ ra , hoàng đế cuối_cùng của Trung_Quốc là Phổ_Nghi buộc phải thoái_vị . 0
    Từ năm 1400 , quốc_hiệu nước ta là gì ?
    Các chúa Nguyễn sử_dụng " An_Nam " trong các tài_liệu , thư từ ngoại_giao . Các tài_liệu ngoại quốc đương_thời gọi xứ Đàng Trong là Quảng_Nam_Quốc ( 廣南國 ) , hay Canglan , Quinan ( tiếng Hà_Lan ) , Cochinchina ( tiếng Bồ_Đào_Nha , Tây_Ban_Nha , Anh ) và Cocincina ( tiếng Ý , Latinh ) . 0
  • Loss: BinaryCrossEntropyLoss with these parameters:
    {
        "activation_fn": "torch.nn.modules.linear.Identity",
        "pos_weight": null
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 32
  • num_train_epochs: 1
  • disable_tqdm: False

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 32
  • 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: 1
  • 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: batch_sampler
  • multi_dataset_batch_sampler: proportional
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Logs

Epoch Step Training Loss Quora-dev_average_precision
0.0866 500 0.1043 0.9100
0.1731 1000 0.0873 0.9372
0.2597 1500 0.0687 0.9502
0.3462 2000 0.0672 0.9584
0.4328 2500 0.058 0.9616
0.5193 3000 0.057 0.9661
0.6059 3500 0.0573 0.9686
0.6924 4000 0.0581 0.9688
0.7790 4500 0.0566 0.9719
0.8655 5000 0.0487 0.9731
0.9521 5500 0.0475 0.9752
1.0 5777 - 0.9752

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 5.1.0
  • 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",
}
Downloads last month
1
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for truong1301/PhoRanker_viwiki_1

Finetuned
(5)
this model

Paper for truong1301/PhoRanker_viwiki_1

Evaluation results