Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 13
How to use SMARTICT/multilingual-e5-large-wiki-tr-rag with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("SMARTICT/multilingual-e5-large-wiki-tr-rag")
sentences = [
"passage: Toksiklik, toksisite, zehirlilik veya ağılılık bir kimyasal maddenin veya belirli bir madde karışımının bir organizmaya zarar verme derecesidir. Toksisite, bir hayvan, bakteri veya bitki gibi tüm organizma üzerindeki etkinin yanı sıra, o organizmanın bir hücresi (sitotoksisite) veya karaciğer gibi bir organı (hepatotoksisite) gibi bir alt yapısı üzerindeki etkiyi ifade edebilir. Yan anlam olarak, kelime, aile birimi veya genel olarak toplum gibi daha büyük ve daha karmaşık gruplar üzerindeki toksik etkileri tanımlamak için mecazi olarak kullanılabilir.\nToksikolojinin temel bir konsepti, bir toksik maddenin etkilerinin doza bağımlı olmasıdır; su bile çok yüksek dozda alındığında su zehirlenmesine neden olabilir, oysa yılan zehiri gibi çok zehirli bir madde için bile altında hiçbir toksik etkinin olmadığı bir doz vardır. Toksisite türe özgüdür ve türler arası analizi sorunlu hale getirir. Daha yeni paradigmalar ve metrikler, hayvan testlerini atlamak için gelişiyor.\nYuvarlama, bir sayıyı daha kısa ve basit olan en yakın sayıyla değiştirmektir. 23,4476 doları $23,45 dolar ile, 312/937 kesrini 1/3 ile veya π sayısını 3 ile değiştirmek örnek olarak verilebilir. Yuvarlama günlük hayatta daha doğru değer elde etmektense işlemleri hızlandırmak için kullanılır. Eğer sayı buçukluysa hem daha büyük sayıya hem de daha küçük sayıya yuvarlanabilir. Örneğin 1,5 sayısı hem 1'e hem de 2'ye yuvarlanabilmektedir. Bu yuvarlamalar basamak sayısına göre değişiklik göstermektedir. Bunlar birler, onlar, yüzler... olarak devam eder.",
"query: Kolhoz sisteminde üyelerin gelirleri nasıl belirlenirdi ve bu sistemin avantajları ve dezavantajları nelerdi?",
"query: Toksisite neden türe özgüdür ve bu durum neden türler arası analizleri zorlaştırır?",
"query: DICOM standardının anlaşılması ve uygulanması neden uzmanlık gerektiriyor?"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]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