CrossEncoder based on microsoft/MiniLM-L12-H384-uncased
This is a Cross Encoder model finetuned from microsoft/MiniLM-L12-H384-uncased on the ms_marco dataset 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: microsoft/MiniLM-L12-H384-uncased
- Maximum Sequence Length: 512 tokens
- Number of Output Labels: 1 label
- Training Dataset:
- Language: en
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
model = CrossEncoder("yjoonjang/reranker-msmarco-v1.1-MiniLM-L12-H384-uncased-plistmle-customweight-sigmoid")
pairs = [
['How many calories in an egg', 'There are on average between 55 and 80 calories in an egg depending on its size.'],
['How many calories in an egg', 'Egg whites are very low in calories, have no fat, no cholesterol, and are loaded with protein.'],
['How many calories in an egg', 'Most of the calories in an egg come from the yellow yolk in the center.'],
]
scores = model.predict(pairs)
print(scores.shape)
ranks = model.rank(
'How many calories in an egg',
[
'There are on average between 55 and 80 calories in an egg depending on its size.',
'Egg whites are very low in calories, have no fat, no cholesterol, and are loaded with protein.',
'Most of the calories in an egg come from the yellow yolk in the center.',
]
)
Evaluation
Metrics
Cross Encoder Reranking
| Metric |
NanoMSMARCO_R100 |
NanoNFCorpus_R100 |
NanoNQ_R100 |
| map |
0.0213 (-0.4683) |
0.2783 (+0.0173) |
0.0331 (-0.3865) |
| mrr@10 |
0.0129 (-0.4646) |
0.4359 (-0.0639) |
0.0180 (-0.4087) |
| ndcg@10 |
0.0388 (-0.5017) |
0.2910 (-0.0340) |
0.0770 (-0.4236) |
Cross Encoder Nano BEIR
- Dataset:
NanoBEIR_R100_mean
- Evaluated with
CrossEncoderNanoBEIREvaluator with these parameters:{
"dataset_names": [
"msmarco",
"nfcorpus",
"nq"
],
"rerank_k": 100,
"at_k": 10,
"always_rerank_positives": true
}
| Metric |
Value |
| map |
0.1109 (-0.2791) |
| mrr@10 |
0.1556 (-0.3124) |
| ndcg@10 |
0.1356 (-0.3198) |
Training Details
Training Dataset
ms_marco
- Dataset: ms_marco at a47ee7a
- Size: 78,704 training samples
- Columns:
query, docs, and labels
- Approximate statistics based on the first 1000 samples:
|
query |
docs |
labels |
| type |
string |
list |
list |
| details |
- min: 11 characters
- mean: 33.21 characters
- max: 89 characters
|
- min: 3 elements
- mean: 6.50 elements
- max: 10 elements
|
- min: 3 elements
- mean: 6.50 elements
- max: 10 elements
|
- Samples:
| query |
docs |
labels |
how fast can spaceships go |
["The International Space Station travels in orbit around Earth at a speed of roughly 17,150 miles per hour (that's about 5 miles per second!). This means that the Space Station orbits Earth (and sees a sunrise) once every 92 minutes!", "Best Answer: Light is the physical speed limit of the Universe (as far as we know) (scientists take great pains not to declare anything conclusively because things have a habit of being disproven) and the answerer was right, that's about 186,000 miles per second-or - 300,000 kilometers per second.", 'Launched by NASA in 2006, it shot directly to a solar system escape velocity. This consisted of an Earth-relative launch of 16.26 kilometers a second (that’s about 36,000 miles per hour), plus a velocity component from Earth’s orbital motion (which is 30 km/s tangential to the orbital path).', "How fast does a spaceship travel in Earth's orbit and is there a sense of speed? The international space station (taken as an example) orbits earth once every 92 mi... |
[1, 0, 0, 0, 0, ...] |
what is an autoimmune disease definition |
["autoimmune disease, one of a large group of diseases characterized by altered function of the immune system of the body, resulting in the production of antibodies against the body's own cells. Some autoimmune disorders, such as Hashimoto's disease, are tissue specific, whereas others, such as SLE, affect multiple organs and systems. Both genetic and environmental triggers may contribute to autoimmune disease. About 5-8% of the U.S. population is affected by an", "Lupus is a chronic inflammatory disease that occurs when your body's immune system attacks your own tissues and organs. Inflammation caused by lupus can affect many different body systems — including your joints, skin, kidneys, blood cells, brain, heart and lungs. ", "Autoimmune diseases arise from an abnormal immune response of the body against substances and tissues normally present in the body (autoimmunity). For a disease to be regarded as an autoimmune disease it needs to answer to Witebsky's postulates (first formulate... |
[1, 0, 0, 0, 0, ...] |
what is a Slingbox |
["A Slingbox is an audio-video (AV) device that you can use to watch and control your TV wherever you are, on your desktop or laptop computer, phone, tablet, and more. This is called placeshifting. A Slingbox connects to your TV's set-top box, your TV, and your home network.", 'Slingbox Software. Slingbox works in conjunction with the SlingPlayer software you install on your computer. Together, they sling NTSC or PAL video data to another location. It works with regular TV, satellite TV, cable TV, a DVD player, DVR or camcorder.', 'The network connector on the Slingbox then connects to your Internet router with a standard ethernet cable, or wirelessly with a special bridge adapter. An infrared cable from the Slingbox, pointed at your TV or DVR gives you the ability to remotely control them from your computer.', 'The Slingbox is a TV streaming media device made by Sling Media that encodes local video for transmission over the Internet to a remote device (sometimes called placeshifting).... |
[1, 0, 0, 0, 0, ...] |
- Loss:
ListMLELoss with these parameters:{
"lambda_weight": "sentence_transformers.cross_encoder.losses.ListMLELoss.ListMLELambdaWeight",
"activation_fct": "torch.nn.modules.activation.Sigmoid",
"mini_batch_size": 16,
"respect_input_order": true
}
Evaluation Dataset
ms_marco
- Dataset: ms_marco at a47ee7a
- Size: 1,000 evaluation samples
- Columns:
query, docs, and labels
- Approximate statistics based on the first 1000 samples:
|
query |
docs |
labels |
| type |
string |
list |
list |
| details |
- min: 11 characters
- mean: 33.49 characters
- max: 98 characters
|
- min: 2 elements
- mean: 6.00 elements
- max: 10 elements
|
- min: 2 elements
- mean: 6.00 elements
- max: 10 elements
|
- Samples:
| query |
docs |
labels |
where is the great wall of china located |
['Home Other Information Great Wall Facts. Where is the Great Wall of china located?. The Great Wall stretches across North China from east to west for over 6,000 kilometers. It extends from the shanhai pass at the seaside in the Hebei province in the east to the Jiayu pass in Gansu province in the west. The sites of the Great Wall stretch across 15 provinces of China. But since the great wall in Beijing is very long and protected well while most of the great walls in other China areas are not kept well and opened for tourists, it is commonly thought Beijing is the only place to see the Great Wall.', 'The Great Wall is not located in any one given city. Some areas of the Great Wall offer magnificent vistas and picture-perfect brick-and-stone watchtowers, whereas older, pre-Ming areas may be in disrepair yet would certainly impress any archeology aficionado. Very early parts of the Great Wall were constructed from tamped-earth and, where possible, stone.', 'Our Great Wall maps cover the... |
[1, 0, 0, 0, 0, ...] |
do dogs get any nutrition from vegetables |
["Just as fruits and vegetables are considered healthy foods for humans, they can also help prolong a dog's life. Orange, red and yellow fruits and vegetables are best for dogs because they are often nutrient-dense [source: Donomor ]. Many fruits and vegetables also contain antioxidants that reduce the risk of cancer. But not all fruits and vegetables are healthy for your dog. Avoid serving your dog dyed, waxed, or genetically engineered foods; just as with humans, organic foods are best.", 'A good way for dogs to get the full nutrients of the vegetables is to break them down in a pureed form. No matter how you prepare the vegetables for your dogs, do not use salt. Dogs don’t always care for it and it is not good for dogs with heart conditions.', "Despite the belief that dogs are strictly carnivorous, they're actually omnivores that eat a wide variety of plant material -- even in the wild. Like humans, dogs require the nutrients found in a host of vegetables and fruits; however, a few ... |
[1, 0, 0, 0, 0, ...] |
what type of sonnet is composed upon westminster bridge |
['From Wikipedia, the free encyclopedia. Composed upon Westminster Bridge, September 3, 1802 is a Petrarchan sonnet by William Wordsworth describing London and the River Thames, viewed from Westminster Bridge in the early morning. It was first published in the collection Poems, in Two Volumes in 1807. ', "Type of Work. Composed Upon Westminster Bridge is a lyric poem in the form of a sonnet. In English, there are two types of sonnets, the Petrarchan and the Shakespearean, both with fourteen lines. Wordsworth's poem is a Petrarchan sonnet, developed by the Italian poet Petrarch (1304-1374), a Roman Catholic priest. Wordsworth's sonnet Composed upon Westminster Bridge, September 3, 1802 falls into the category of Momentary Poems. The poet is describing what he sees, thinks and feels on a specific day at a specific moment. Had September 3, 1802, been a dismal day of rain, fog or overcast skies, we would not have this lyric to enjoy.", "Rhyme Scheme and Meter. .......The rhyme scheme of ... |
[1, 0, 0, 0, 0, ...] |
- Loss:
ListMLELoss with these parameters:{
"lambda_weight": "sentence_transformers.cross_encoder.losses.ListMLELoss.ListMLELambdaWeight",
"activation_fct": "torch.nn.modules.activation.Sigmoid",
"mini_batch_size": 16,
"respect_input_order": true
}
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy: steps
per_device_train_batch_size: 16
per_device_eval_batch_size: 16
learning_rate: 2e-05
num_train_epochs: 1
warmup_ratio: 0.1
seed: 12
bf16: True
load_best_model_at_end: 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: 16
per_device_eval_batch_size: 16
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: 2e-05
weight_decay: 0.0
adam_beta1: 0.9
adam_beta2: 0.999
adam_epsilon: 1e-08
max_grad_norm: 1.0
num_train_epochs: 1
max_steps: -1
lr_scheduler_type: linear
lr_scheduler_kwargs: {}
warmup_ratio: 0.1
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: 12
data_seed: None
jit_mode_eval: False
use_ipex: False
bf16: True
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: True
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
Training Logs
| Epoch |
Step |
Training Loss |
Validation Loss |
NanoMSMARCO_R100_ndcg@10 |
NanoNFCorpus_R100_ndcg@10 |
NanoNQ_R100_ndcg@10 |
NanoBEIR_R100_mean_ndcg@10 |
| -1 |
-1 |
- |
- |
0.0377 (-0.5027) |
0.2892 (-0.0359) |
0.0433 (-0.4573) |
0.1234 (-0.3320) |
| 0.0002 |
1 |
10.5987 |
- |
- |
- |
- |
- |
| 0.0508 |
250 |
10.1157 |
- |
- |
- |
- |
- |
| 0.1016 |
500 |
9.8615 |
9.9241 |
0.0149 (-0.5255) |
0.2942 (-0.0308) |
0.0494 (-0.4512) |
0.1195 (-0.3358) |
| 0.1525 |
750 |
9.8392 |
- |
- |
- |
- |
- |
| 0.2033 |
1000 |
9.8483 |
9.9147 |
0.0434 (-0.4970) |
0.2995 (-0.0256) |
0.0585 (-0.4421) |
0.1338 (-0.3216) |
| 0.2541 |
1250 |
9.8496 |
- |
- |
- |
- |
- |
| 0.3049 |
1500 |
9.8151 |
9.9134 |
0.0247 (-0.5157) |
0.2981 (-0.0269) |
0.0663 (-0.4343) |
0.1297 (-0.3256) |
| 0.3558 |
1750 |
9.8153 |
- |
- |
- |
- |
- |
| 0.4066 |
2000 |
9.8081 |
9.9129 |
0.0388 (-0.5017) |
0.2910 (-0.0340) |
0.0770 (-0.4236) |
0.1356 (-0.3198) |
| 0.4574 |
2250 |
9.8519 |
- |
- |
- |
- |
- |
| 0.5082 |
2500 |
9.835 |
9.9127 |
0.0349 (-0.5056) |
0.2944 (-0.0307) |
0.0551 (-0.4455) |
0.1281 (-0.3272) |
| 0.5591 |
2750 |
9.8854 |
- |
- |
- |
- |
- |
| 0.6099 |
3000 |
9.843 |
9.9126 |
0.0488 (-0.4916) |
0.2848 (-0.0402) |
0.0689 (-0.4317) |
0.1342 (-0.3212) |
| 0.6607 |
3250 |
9.8305 |
- |
- |
- |
- |
- |
| 0.7115 |
3500 |
9.875 |
9.9125 |
0.0420 (-0.4985) |
0.2797 (-0.0453) |
0.0634 (-0.4372) |
0.1284 (-0.3270) |
| 0.7624 |
3750 |
9.8414 |
- |
- |
- |
- |
- |
| 0.8132 |
4000 |
9.8326 |
9.9125 |
0.0449 (-0.4955) |
0.2820 (-0.0430) |
0.0704 (-0.4302) |
0.1324 (-0.3229) |
| 0.8640 |
4250 |
9.9309 |
- |
- |
- |
- |
- |
| 0.9148 |
4500 |
9.8191 |
9.9124 |
0.0460 (-0.4944) |
0.2821 (-0.0430) |
0.0567 (-0.4440) |
0.1282 (-0.3271) |
| 0.9656 |
4750 |
9.8501 |
- |
- |
- |
- |
- |
| -1 |
-1 |
- |
- |
0.0388 (-0.5017) |
0.2910 (-0.0340) |
0.0770 (-0.4236) |
0.1356 (-0.3198) |
- The bold row denotes the saved checkpoint.
Framework Versions
- Python: 3.11.11
- Sentence Transformers: 3.5.0.dev0
- Transformers: 4.49.0
- PyTorch: 2.6.0+cu124
- Accelerate: 1.5.2
- Datasets: 3.4.0
- Tokenizers: 0.21.1
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",
}
ListMLELoss
@inproceedings{lan2013position,
title={Position-aware ListMLE: a sequential learning process for ranking},
author={Lan, Yanyan and Guo, Jiafeng and Cheng, Xueqi and Liu, Tie-Yan},
booktitle={Proceedings of the Twenty-Ninth Conference on Uncertainty in Artificial Intelligence},
pages={333--342},
year={2013}
}