Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup
Paper • 2101.06983 • Published • 2
How to use boranyzgc/mursit-large-tur2-v2 with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("boranyzgc/mursit-large-tur2-v2")
sentences = [
"Ölen birisinin hatırasına saygısızlık yapan birine karşı, o kişinin anne-babası veya kardeşleri şikayette bulunabilir mi?",
"Türk Ceza Kanunu | MADDE 131\n\n(1) Kamu görevlisine karşı görevinden dolayı işlenen hariç; hakaret suçunun soruşturulması ve kovuşturulması, mağdurun şikayetine bağlıdır. (2) Mağdur, şikayet etmeden önce ölürse, veya suç ölmüş olan kişinin hatırasına karşı işlenmiş ise; ölenin ikinci dereceye kadar üstsoy ve altsoyu, eş veya kardeşleri tarafından şikayette bulunulabilir.\n\nHaberleşmenin gizliliğini ihlal",
"Türk Medeni Kanunu | MADDE 298\n\nAna, çocuk ve çocuğun ölümü hâlinde altsoyu, Cumhuriyet savcısı, Hazine ve diğer ilgililer tanımanın iptalini dava edebilirler. Dava tanıyana, tanıyan ölmüşse mirasçılarına karşı açılır. b.\n\nİspat yükü",
"Türk Medeni Kanunu | MADDE 510\n\nAşağıdaki durumlarda mirasbırakan, ölüme bağlı bir tasarrufla saklı paylı mirasçısını mirasçılıktan çıkarabilir: 1. Mirasçı, mirasbırakana veya mirasbırakanın yakınlarından birine karşı ağır bir suç işlemişse, 2. Mirasçı, mirasbırakana veya mirasbırakanın ailesi üyelerine karşı aile hukukundan doğan yükümlülüklerini önemli ölçüde yerine getirmemişse.\n\nII. Hükümleri",
"Türk Medeni Kanunu | MADDE 556\n\nVasiyeti yerine getirme görevlisi, görevini yerine getirirken özen göstermekle yükümlüdür; ilgililere karşı bir vekil gibi sorumludur.\n\nALTINCI AYIRIM ÖLÜME BAĞLI TASARRUFLARIN İPTALİ VE TENKİSİ A. İptal davası I. Sebepleri",
"Türk Ceza Kanunu | MADDE 130\n\n(1) Bir kimsenin öldükten sonra hatırasına en az üç kişiyle ihtilat ederek hakaret eden kişi, üç aydan iki yıla kadar hapis veya adlî para cezası ile cezalandırılır. Ceza, hakaretin alenen işlenmesi halinde, altıda biri oranında artırılır. (2) Bir ölünün kısmen veya tamamen ceset veya kemiklerini alan veya ceset veya kemikler hakkında tahkir edici fiillerde bulunan kişi, üç aydan iki yıla kadar hapis cezası ile cezalandırılır.\n\nSoruşturma ve kovuşturma koşulu",
"Türk Medeni Kanunu | MADDE 32\n\nÖlüm tehlikesi içinde kaybolan veya kendisinden uzun zamandan beri haber alınamayan bir kimsenin ölümü hakkında kuvvetli olasılık varsa, hakları bu ölüme bağlı olanların başvurusu üzerine mahkeme bu kişinin gaipliğine karar verebilir. Yetkili mahkeme, kişinin Türkiye'deki son yerleşim yeri; eğer Türkiye'de hiç yerleşmemişse nüfus sicilinde kayıtlı olduğu yer; böyle bir kayıt da yoksa anasının veya babasının kayıtlı bulunduğu yer mahkemesidir.\n\n2. Yargılama usulü"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [7, 7]This is a sentence-transformers model trained. It maps sentences & paragraphs to a 1024-dimensional dense vector space and can be used for retrieval.
SentenceTransformer(
(0): Transformer({'transformer_task': 'feature-extraction', 'modality_config': {'text': {'method': 'forward', 'method_output_name': 'last_hidden_state'}}, 'module_output_name': 'token_embeddings', 'architecture': 'ModernBertModel'})
(1): Pooling({'embedding_dimension': 1024, 'pooling_mode': 'mean', 'include_prompt': True})
)
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("sentence_transformers_model_id")
# Run inference
sentences = [
'Banka gibi taşınmaz rehni işletme olarak yapan bir kuruluş, müşterisinden aldığı evi teminat göstererek tahvil çıkarmak istiyor. Bu işi yapabilmesi için önce ne yapması gerekir?',
'Türk Medeni Kanunu | MADDE 970\n\nİşletme olarak taşınmaz rehni karşılığında ödünç verme işiyle uğraşmak üzere yetkili makamdan izin alanlar, özel bir rehin sözleşmesi ve teslim yükümlülüğü olmasa bile, taşınmaz rehniyle güvence altına alınmış alacakları ile cari işlerinden doğan alacaklarını karşılık göstererek rehinli tahvil çıkarabilirler.\n\nB. Şekli',
'Türk Medeni Kanunu | MADDE 930\n\nNama veya hamile yazılı tahviller, aşağıdaki hâllerde taşınmaz rehniyle güvence altına alınabilir: 1. Ödüncün tamamı için ipotek veya ipotekli borç senedi yoluyla rehin kurulması ve alacaklılar ile borçlu için ortak bir temsilcinin atanması, 2. Tahvil çıkarmayı üzerine alan kurum yararına ödüncün tamamı için taşınmaz rehni kurulması ve bu rehinli alacağın da tahvil alacaklıları yararına rehnedilmesi.\n\nB. Seri hâlinde rehin senedi çıkarılması I. Genel olarak',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[1.0000, 0.7717, 0.5900],
# [0.7717, 1.0000, 0.5397],
# [0.5900, 0.5397, 1.0000]])
sentence_0, sentence_1, sentence_2, sentence_3, sentence_4, sentence_5, and sentence_6| sentence_0 | sentence_1 | sentence_2 | sentence_3 | sentence_4 | sentence_5 | sentence_6 | |
|---|---|---|---|---|---|---|---|
| type | string | string | string | string | string | string | string |
| details |
|
|
|
|
|
|
|
| sentence_0 | sentence_1 | sentence_2 | sentence_3 | sentence_4 | sentence_5 | sentence_6 |
|---|---|---|---|---|---|---|
Bakım veren birisi ölürse, bakım alan kişi ne yapabilir ve bunu ne kadar süre içinde yapması gerekir? |
Türk Borçlar Kanunu | MADDE 618 |
Türk Borçlar Kanunu | MADDE 371 |
Türk Medeni Kanunu | MADDE 645 |
Türk Borçlar Kanunu | MADDE 333 |
Türk Borçlar Kanunu | MADDE 418 |
Türk Borçlar Kanunu | MADDE 615 |
Eğer evli bir çift varsa ve eşlerden biri diğerinin evine para harcayarak tadilat yaptıysa, boşanma sırasında bu harcamalarından geri para alabilir mi? |
Türk Medeni Kanunu | MADDE 227 |
Türk Medeni Kanunu | MADDE 249 |
Türk Medeni Kanunu | MADDE 277 |
Türk Medeni Kanunu | MADDE 226 |
Türk Medeni Kanunu | MADDE 248 |
Türk Medeni Kanunu | MADDE 172 |
Birinin bilgisayarına izinsiz giriş yapan biri yakalandığında ne gibi cezalara çarptırılabilir? |
Türk Ceza Kanunu | MADDE 243 |
Türk Ceza Kanunu | MADDE 244 |
Türk Ceza Kanunu | MADDE 141 |
Türk Ceza Kanunu | MADDE 136 |
Türk Ceza Kanunu | MADDE 163 |
Türk Ceza Kanunu |
CachedMultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"mini_batch_size": 32,
"gather_across_devices": false,
"directions": [
"query_to_doc"
],
"partition_mode": "joint",
"hardness_mode": null,
"hardness_strength": 0.0
}
per_device_train_batch_size: 32per_device_eval_batch_size: 32num_train_epochs: 2fp16: Truemulti_dataset_batch_sampler: round_robindo_predict: Falseprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 32gradient_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: 2max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_ratio: Nonewarmup_steps: 0log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Trueenable_jit_checkpoint: Falsesave_on_each_node: Falsesave_only_model: Falserestore_callback_states_from_checkpoint: Falseuse_cpu: Falseseed: 42data_seed: Nonebf16: Falsefp16: Truebf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: -1ddp_backend: Nonedebug: []dataloader_drop_last: Falsedataloader_num_workers: 0dataloader_prefetch_factor: Nonedisable_tqdm: Falseremove_unused_columns: Truelabel_names: Noneload_best_model_at_end: Falseignore_data_skip: Falsefsdp: []fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torch_fusedoptim_args: Nonegroup_by_length: Falselength_column_name: lengthproject: huggingfacetrackio_space_id: trackioddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falsedataloader_pin_memory: Truedataloader_persistent_workers: Falseskip_memory_metrics: Truepush_to_hub: Falseresume_from_checkpoint: Nonehub_model_id: Nonehub_strategy: every_savehub_private_repo: Nonehub_always_push: Falsehub_revision: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_for_metrics: []eval_do_concat_batches: Trueauto_find_batch_size: Falsefull_determinism: Falseddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_num_input_tokens_seen: noneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Trueuse_cache: Falseprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: round_robinrouter_mapping: {}learning_rate_mapping: {}@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{gao2021scaling,
title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
year={2021},
eprint={2101.06983},
archivePrefix={arXiv},
primaryClass={cs.LG}
}