Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper
• 1908.10084 • Published
• 12
This is a sentence-transformers model finetuned from sentence-transformers/all-mpnet-base-v2. 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': 384, 'do_lower_case': False}) with Transformer model: MPNetModel
(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})
(2): Normalize()
)
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("StephKeddy/sbert-IR-covid-search-v2")
# Run inference
sentences = [
'coronavirus quarantine',
'age profile of susceptibility, mixing, and social distancing shape the dynamics of the novel coronavirus disease 2019 outbreak in china [SEP] strict interventions were successful to control the novel coronavirus (covid-19) outbreak in china. daily contacts were reduced 7-9 fold during the covid-19 social distancing period, with most interactions restricted to the household.',
'the economic impact of quarantine: sars in toronto as a case study [SEP] objectives over time, quarantine has become a classic public health intervention and has been used repeatedly when newly emerging infectious diseases have threatened to spread throughout a population. results our results indicate that quarantine is effective in containing newly emerging infectious diseases, and also cost saving when compared to not implementing a widespread containment mechanism.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
valInformationRetrievalEvaluator| Metric | Value |
|---|---|
| cosine_accuracy@1 | 0.5333 |
| cosine_accuracy@3 | 0.8 |
| cosine_accuracy@5 | 0.8 |
| cosine_accuracy@10 | 0.8667 |
| cosine_precision@1 | 0.5333 |
| cosine_precision@3 | 0.5111 |
| cosine_precision@5 | 0.4267 |
| cosine_precision@10 | 0.44 |
| cosine_recall@1 | 0.0034 |
| cosine_recall@3 | 0.0097 |
| cosine_recall@5 | 0.0141 |
| cosine_recall@10 | 0.0298 |
| cosine_ndcg@10 | 0.4491 |
| cosine_mrr@10 | 0.654 |
| cosine_map@100 | 0.1424 |
sentence_0, sentence_1, and sentence_2| sentence_0 | sentence_1 | sentence_2 | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| sentence_0 | sentence_1 | sentence_2 |
|---|---|---|
Looking for studies identifying ways to diagnose Covid-19 more rapidly. |
a line immunoassay utilizing recombinant nucleocapsid proteins for detection of antibodies to human coronaviruses [SEP] most coronaviruses infecting humans cause mild diseases, whereas severe acute respiratory syndrome (sars)-associated coronavirus is an extremely dangerous pathogen. with this new technique, we found that recently identified nl63 and hku1 contribute significantly to the overall spectrum of coronavirus infections. |
appealing for efficient, well organized clinical trials on covid-19 [SEP] the rapid emergence of clinical trials on covid-19 stimulated a wave of discussion in scientific community. our analysis focused on the issues of stage, design, randomization, blinding, primary endpoints definition and sample size of these trials. |
Seeking information on best practices for activities and duration of quarantine for those exposed and/ infected to COVID-19 virus. |
chemical, biologic, and nuclear quarantine [SEP] chemical, biologic, and nuclear quarantine |
practical strategies against the novel coronavirus and covid-19the imminent global threat [SEP] the last month of 2019 harbingered the emergence of a viral outbreak that is now a major public threat globally. in-house isolation or quarantine of suspected cases to keep hospital admissions manageable and prevent in-hospital spread of the virus, and promoting general awareness about transmission routes are the practical strategies used to tackle the spread of covid-19. |
what are the best masks for preventing infection by Covid-19? |
role of viral bioaerosols in nosocomial infections and measures for prevention and control [SEP] the presence of patients with diverse pathologies in hospitals results in an environment that can be rich in various microorganisms including respiratory and enteric viruses, leading to outbreaks in hospitals or spillover infections to the community. these pathogens could transmit through direct or indirect physical contact, droplets or aerosols, with increasing evidence suggesting the importance of aerosol transmission in nosocomial infections of respiratory and enteric viruses. |
face mask use and control of respiratory virus transmission in households [SEP] many countries are stockpiling face masks for use as a nonpharmaceutical intervention to control virus transmission during an influenza pandemic. we found that adherence to mask use significantly reduced the risk for ili-associated infection, but 50 of participants wore masks most of the time. |
TripletLoss with these parameters:{
"distance_metric": "TripletDistanceMetric.EUCLIDEAN",
"triplet_margin": 5
}
eval_strategy: stepsper_device_train_batch_size: 16per_device_eval_batch_size: 16multi_dataset_batch_sampler: round_robinoverwrite_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: 3max_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: 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: 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}tp_size: 0fsdp_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: Falsegradient_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: Nonedispatch_batches: Nonesplit_batches: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: Falseneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseeval_use_gather_object: Falseaverage_tokens_across_devices: Falseprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: round_robin| Epoch | Step | Training Loss | val_cosine_ndcg@10 |
|---|---|---|---|
| 0.2746 | 500 | 3.8945 | 0.4491 |
@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{hermans2017defense,
title={In Defense of the Triplet Loss for Person Re-Identification},
author={Alexander Hermans and Lucas Beyer and Bastian Leibe},
year={2017},
eprint={1703.07737},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
Base model
sentence-transformers/all-mpnet-base-v2