Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper
•
1908.10084
•
Published
•
10
This is a sentence-transformers model finetuned from intfloat/multilingual-e5-large. It maps sentences & paragraphs to a 512-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': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel
(1): Pooling({'word_embedding_dimension': 1024, '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("multilingual-e5-large-wiki-tr-rag")
# Run inference
sentences = [
'passage: Dehesa veya Portekiz\'de montado, güney ve orta İspanya ile güney Portekiz\'de çok işlevli, tarımsal ormancılık sistemi ve kültürel peyzajdır. Dehesalar özel veya ortak mülkiyet olabilir (genellikle belediyeye ait). Öncelikle otlatma için kullanılan bu ormanlarda yabani av hayvanları, mantar, bal ve yakacak odun gibi kereste dışı orman ürünleri de dahil olmak üzere çeşitli ürünler üretilir. Ayrıca İspanyol dövüş boğasını ve İber domuzunun kaynağını yetiştirmek için de kullanılırlar. Ağacın ana bileşeni meşedir, genellikle holm ve mantardır. Melojo (Quercus pyrenaica) ve quejigo dahil olmak üzere diğer meşeler, coğrafi konuma ve yüksekliğe bağlı olarak kullanılan tür olan dehesayı oluşturmak için kullanılabilir. Dehesa, yalnızca çeşitli yiyecekler sağlamakla kalmayıp, aynı zamanda İspanyol imparatorluk kartalı gibi nesli tükenmekte olan türler için de yaban hayatı yaşam alanı sağlayan antropojenik bir sistemdir.\nUskumru (Scomber scombrus) bir deniz balığı. Aynı zamanda Uskumrugiller familyasına adını vermiş olan, bu familyanın örnek balığıdır.\nVücut iğ şeklindedir. Sırtta aşağıya doğru inen açık veya koyu yeşilimsi-mavi, üzeri lekeli bantlar vardır. Başta beyin görünmez, karın tarafı açık gümüşi renktedir. Bütün yüzgeçler yumuşak ışınlı olup, gözler kolyoza göre daha ufaktır. Kolyozdan kafada ve vücutta bulunan pulların tekdüze, sırt yüzgecindeki dikenleri daha çok sayıda (11-13), pulları ve yanlarının altında koyu esmer lekeler ve hava kesesi olmayışı ile ayrılır. 8 ila 11 yıl arasında yaşarlar.\nBüyüklüğü ortalama 30–35 cm\'dir, maksimum 50 cm olur. Ortalama ağırlığı 200-500 gram civarındadır. Kuzey Amerika sahilerinde, Kuzey Denizi, Akdeniz, Ege Denizi, Marmara Denizi ve Karadeniz\'de yaşar.\nBesin değeri açısından da zengin olan uskumru balığı pek çok protein ve vitamin içerir. İlk akla gelen uskumru Omega 3 açısından zengindir bilgisi olsa da uskumru sadece Omega 3 açısından değil; A vitamini, C vitamini, B6 vitamini, B12 vitamini, kalsiyum, demir ve magnezyum açısından da zengindir.\nManchester Okulu, serbest ticareti vurgulayan klasik iktisadi düşünce okullarından birisidir.\nLaissez Faire politikasını, serbest girişimi ve rekabeti ekonomik refah ve büyümenin en iyi yolu olarak kabul etmişler, korumacılığa, kamu yardımlarına, zorunlu eğitim ve benzeri önlemlere karşı çıkmışlar, tahıl ithali üzerindeki kısıtlamaların kaldırılmasını savunmuşlardır.İngiltere\'dedir.\nGalibarda veya Fuşya rengi kırmızı ve mavi ışığın eşit oranlarda karıştırılması ile elde edilir. Bu renk daha çok İngilizce isminin okunuşu olan "macenta" adıyla anılır.\nGalibarda rengi dört renkli (CMYK) baskıda kullanılan renklerden biridir.\nGalibarda renginin hex değeri "#FF00FF", RGB değeri "255, 0, 255" ve CMYK değeri "0, 100, 0, 0" dır.',
'query: Uskumru balığının diğer balık türlerinden ayıran en belirgin özellikler nelerdir?',
"query: AGS-17 Plamya'nın 30×29 mm kovansız mühimmatı ne anlama geliyor?",
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 512]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
dim_512InformationRetrievalEvaluator| Metric | Value |
|---|---|
| cosine_accuracy@1 | 0.3755 |
| cosine_accuracy@3 | 0.6673 |
| cosine_accuracy@5 | 0.723 |
| cosine_accuracy@10 | 0.7491 |
| cosine_precision@1 | 0.3755 |
| cosine_precision@3 | 0.2224 |
| cosine_precision@5 | 0.1446 |
| cosine_precision@10 | 0.0749 |
| cosine_recall@1 | 0.3755 |
| cosine_recall@3 | 0.6673 |
| cosine_recall@5 | 0.723 |
| cosine_recall@10 | 0.7491 |
| cosine_ndcg@10 | 0.5782 |
| cosine_mrr@10 | 0.5212 |
| cosine_map@100 | 0.5232 |
positive and anchor| positive | anchor | |
|---|---|---|
| type | string | string |
| details |
|
|
| positive | anchor |
|---|---|
passage: Kratos (Antik Yunanca: Κράτος, Türkçe anlamı: "güç" ve "kuvvet"), God of War serisinin ana karakteri. |
query: Ovo'ların yapımında hangi malzemeler kullanılır ve bu malzemelerin seçimi neden önemlidir? |
passage: Johannes Block(17 Kasım 1894-26 Ocak 1945) 2. Dünya Savaşı sırasında kolordu ve tümen seviyesinde birliklere komuta etmiş olan Wehrmacht generaliydi. Block, Meşe Yaprağı İlaveli Şövalye Haçıyla taltif edilenlerdendi. 26 Ocak 1945'te Vistül-Oder Taarruzu sırasında Kielce yakınlarında öldürüldü. |
query: Aguapanela'nın Kolombiya mutfağındaki yeri nedir ve hangi yiyeceklerle birlikte tüketilir? |
passage: Shippingport Atom Enerjisi Santrali (ABD Nükleer Düzenleme Komisyonu'na göre) dünyanın yalnızca barış zamanı kullanımlarına ayrılmış ilk tam ölçekli atom elektrik santraliydi. Amerika Birleşik Devletleri, Pensilvanya, Beaver County'deki Ohio Nehri üzerindeki günümüz Beaver Valley Nükleer Üretim İstasyonunun yakınında, yaklaşık 40 km (40 km) uzaklıkta bulunmaktaydı. |
query: Shippingport Atom Enerjisi Santrali'nin diğer nükleer santrallerden farkı neydi? |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
eval_strategy: epochper_device_train_batch_size: 32per_device_eval_batch_size: 16gradient_accumulation_steps: 16learning_rate: 2e-05num_train_epochs: 5lr_scheduler_type: cosinewarmup_ratio: 0.1bf16: Truetf32: Trueload_best_model_at_end: Trueoptim: adamw_torch_fusedbatch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: epochprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 16per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 16eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 5max_steps: -1lr_scheduler_type: cosinelr_scheduler_kwargs: {}warmup_ratio: 0.1warmup_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: Truefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Truelocal_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: Trueignore_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_torch_fusedoptim_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: no_duplicatesmulti_dataset_batch_sampler: proportional| Epoch | Step | Training Loss | dim_512_cosine_ndcg@10 |
|---|---|---|---|
| -1 | -1 | - | 0.4134 |
| 0.9467 | 10 | 21.2389 | 0.5258 |
| 1.9467 | 20 | 17.7004 | 0.5681 |
| 2.9467 | 30 | 15.2274 | 0.5798 |
| 3.9467 | 40 | 14.0845 | 0.5794 |
| 4.9467 | 50 | 13.5581 | 0.5782 |
@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{henderson2017efficient,
title={Efficient Natural Language Response Suggestion for Smart Reply},
author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
year={2017},
eprint={1705.00652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
Base model
intfloat/multilingual-e5-large