Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 15
How to use Mykes/med-MiniLM-L12-4124 with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Mykes/med-MiniLM-L12-4124")
sentences = [
"Мне поставили диагноз псориаз. Какой препарат мне может помочь справиться с этим заболеванием? Какие побочные эффекты могут быть у этого препарата? Я слышала о препарате **Ксеомин**, он подходит для лечения псориаза?",
"краснова ирина викторовна; стоимость приема от: 2870 руб (средняя стоимость приема); стаж: 15 лет; тип приёма: в клинике; клиника: медцентр столица на арбате; смоленская, кропоткинская; специальность: венеролог, дерматолог, косметолог, онкодерматолог; специализация: крапивница, розацеа, экзема, себорейный дерматит, папилломы, криодеструкцией контурная пластика лица препаратами на основе гиалуроновой кислоты киоревитализация кожи лица мезотерапия коррекция мимических морщин ботокс, заболеваний кожи, атопический дерматит, угревая болезнь, бородавки, кератомы аппаратом сургитрон, микозы, ксеомин, фотек, бактериальные и вирусные заболевания дерматоскопия новообразований кожи трихоскопия удаление новообразований кожи невусы, лантокс химические пилинги поверхностного и срединного действия, волос и ногтей псориаз",
"кошелева евгения николаевна; стоимость приема от: 4300 руб (средняя стоимость приема); стаж: 15 лет; квалификация: врач высшей категории; учёная степень: кандидат медицинских наук; пациенты: взрослые; тип приёма: в клинике; клиника: клинико-диагностический центр медси в грохольском переулке; сухаревская, проспект мира; специальность: гастроэнтеролог, терапевт; специализация: хронический гастродуоденит хронический холецистит хронический панкреатит гепатит синдром раздраженного кишечника дискинезия толстого кишечника гипертоническая болезнь ишемическая болезнь сердца стенокардия напряжения хроническая сердечная недостаточность острый и хронический бронхит пневмония орви хроническая анемия лихорадка неясного генеза синдром ускоренного соэ",
"головкин владимир николаевич; стоимость приема от: 1080 руб (низкая стоимость приема); стаж: 20 лет; квалификация: врач высшей категории; пациенты: взрослые; тип приёма: в клинике; лермонтовский проспект, улица 1905 года, цска, косино, беговая, ухтомская; специальность: ортопед, вертебролог, травматолог, артролог; специализация: в том числе посттравматического артроза, энтеропатической артропатии, инфекционного и реактивного артритов, подагрического артрита и тд владеет следующими методиками, на дифференциальной диагностике и лечении заболеваний опорнодвигательного аппарата"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from Mykes/med-MiniLM-L12-3059. It maps sentences & paragraphs to a 384-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': 128, 'do_lower_case': False}) with Transformer model: BertModel
(1): Pooling({'word_embedding_dimension': 384, '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})
)
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("Mykes/med-MiniLM-L12-4124")
# Run inference
sentences = [
'У меня сильная боль в спине, боюсь, что это может быть грыжа. К кому мне обратиться за консультацией и лечением? Врач должен быть женщиной, а клиника находиться недалеко от метро Технопарк. \n\n \n\n\n',
'кузнецова наталья николаевна; стоимость приема от: 5000 руб (высокая стоимость приема); стаж: 9 лет; пациенты: взрослые; тип приёма: в клинике; клиника: клиникаtemed (темед) на технопарке; технопарк, кленовый бульвар; специальность: невролог, вертебролог; специализация: сдавления нервных корешков и сплетений при, грыжа шейного отдела позвоночника, грыжа позвоночника, обострение грыжи поясничного отдела, грыжа позвоночника поясничного отдела, остеохондроз позвоночника у взрослых, грыжа шморля, защемление грыжи позвоночника, остеохондроз поясничный, грыжа шморля поясничного отдела позвоночника, остеохондроз крестцовый, дорзальная грыжа, межпозвоночная грыжа поясничнокрестцового отдела позвоночника, остеохондроз, грыжа между 4 и 5 позвонком, дегенеративные заболевания позвоночника безоперационное лечение межпозвонковых грыж методом ткачеваепифанова полинейропатии различной этиологии заболевания центральной и периферической нервной системы острый и хронический болевой синдром головные боли различной этимологии специализируется на лечении вертебролог грыжа, секвестрированная грыжа позвоночника поясничного отдела невролог грыжа, дегенерации межпозвоночного диска',
'богуш ольга евгеньевна; стоимость приема от: 5000 руб (высокая стоимость приема); стаж: 16 лет; пациенты: взрослые; тип приёма: в клинике; клиника: клиника доктора есиповой; тестовская, шелепиха, улица 1905 года; специальность: врач функциональной диагностики, пульмонолог; специализация: длительного кашля неуточненного характера острой респираторной вирусной инфекции острых и хронических бронхитов вирусных и бактериальных пневмоний плевритов хронической обструктивной болезни легких бронхиальной астмы бронхиолитов бронхоэктазий саркоидоза органов дыхания грибковых заболеваний легких интерстициальных заболеваний легких',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
anchor and positive| anchor | positive | |
|---|---|---|
| type | string | string |
| details |
|
|
| anchor | positive |
|---|---|
У меня болит живот и тошнит после употребления жирной пищи. К какому специалисту лучше обратиться в районе Народного Ополчения? |
панёвина лариса викторовна; стоимость приема от: 1500 руб (средняя стоимость приема); стаж: 33 года; пациенты: взрослые; тип приёма: в клинике; клиника: горклиника на октябрьском поле; народное ополчение, октябрьское поле; специальность: гастроэнтеролог, гепатолог; специализация: ещё гепатолог абсцесс печени, амилоидоз кишечника, алкогольная печеночная недостаточность, вирусный гепатит с, болезни печени, гепатит d, гепатит a с печеночной комой, атрезия желчевыводящих путей, гепатобластома, амилоидоз печени, вирусный гепатит при беременности, гепатит b, анизакидоз, ахалазия кардии, вирусный гепатит е, гепатит e, абсцесс селезенки, алкогольный жировой гепатоз печени, вирусный гепатит в, алкогольная болезнь печени, гепатолиенальный, болезнь андерсена, гепатит, аппендикулярные камни, альвеококкоз, анкилостомидоз, аденоматозный полип, алиментарная дистрофия, алкогольный цирроз печени, атрофический гастрит, амебный абсцесс печени, желчнекаменная болезнь дуоденит тифлит колит дивертикулез гепатиты проктит энтероколиты цирроз печени специализируется на лечении гастроэнтеролог абсцесс кишечника, гепатит а, гемолитическая желтуха новорожденных, ахалазия пищевода, вирусный гепатит g, анкилостомоз, ахалазия, аскаридоз, ахлоргидрия, аутоиммунный гепатит, болезнь герса, гепатит с, алиментарная диспепсия, гепатит алкогольный, гепатоз, атрофия сосочков языка, алкогольный фиброз и склероз печени, аномалии развития пищевода |
У меня сильные боли в верхней части живота, которые усиливаются после еды. Также появилась тошнота и горечь во рту. Что это может быть и нужно ли мне обратиться к гастроэнтерологу? |
вяллов сергей сергеевич; стоимость приема от: 3500 руб (средняя стоимость приема); стаж: 37 лет; звание: профессор; квалификация: врач первой категории; специальность: гастроэнтеролог; пациенты: взрослые; тип приёма: в клинике; клиника: cmd текстильщики; авиамоторная, римская, перово, текстильщики, люблино, печатники, кузьминки; специализация: дивертикулы пищевода грыжа пищеводного отверстия новообразования доброкачественные и злокачественные панкреатит дискинезия желчных путей холецистит специализируется на лечении гастроэнтеролог заболевания желудочнокишечного тракта |
У меня появились боли в пояснице и онемение в ногах. Может ли это быть связано с грыжей позвоночника? Какие обследования мне нужно пройти для подтверждения диагноза? |
анисимова елена игоревна; стоимость приема от: 7000 руб (высокая стоимость приема); стаж: 25 лет; квалификация: врач высшей категории; учёная степень: кандидат медицинских наук; пациенты: взрослые; тип приёма: в клинике; крылатское, молодежная, кунцевская, щелковская; специальность: невролог, врач функциональной диагностики, нейрофизиолог; специализация: вертебробазилярная недостаточность, болевые синдромы различной локализации тазовая боль вегетативные нарушения головная боль головокружения депрессии дистонии лечение гипергидроза лечение фобий мигрень обмороки офисный синдром панические атаки последствия стресса радикулиты тревоги нейрофизиологиеские методы обследования нервной системы вызванные потенциалы транскраниальная магнитная стимуляция исследование болевых систем и систем чувствительности диагностика тазовых нарушений, головокружение, грыжа шморля, атаксия, грыжа, грыжа позвоночника, вегетососудистая дистония, воспалительная миопатия, вялая тетраплегия, бессонница, атеросклероз, тазовой боли и нарушения сексуальной функции с помощью электронейромиографии специализируется на лечении невролог алкогольная полиневропатия нижних конечностей, вегетоневроз, воспалительные полинейропатии, аноксическое поражение головного мозга, алкогольная полинейропатия, вестибулярный нейронит, вялая параплегия, грыжа шморля поясничного отдела позвоночника, астения, головокружение центрального генеза, грыжа между 4 и 5 позвонком |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
anchor and positive| anchor | positive | |
|---|---|---|
| type | string | string |
| details |
|
|
| anchor | positive |
|---|---|
У меня на коже появились бородавки, врач подозревает вирус папилломы человека. Какие препараты от этой инфекции Вы можете порекомендовать? |
алиханов андрей халларович; стоимость приема от: 2100 руб (средняя стоимость приема); стаж: 29 лет; квалификация: врач высшей категории; пациенты: взрослые; тип приёма: в клинике; красногвардейская, борисово, пражская, шипиловская; специальность: венеролог, дерматолог, миколог, дерматовенеролог; специализация: атопический дерматит неуточненный, ранний врожденный сифилис, диссеминированный герпес, актиническая гранулема, аллергическая крапивница, гонококковый фарингит, атрофические полосы, белый лишай, бластомикоз, микоз стоп, кольпит генитальный кандидоз специализируется на лечении венеролог аногенитальные бородавки, грибок ногтей, анетодермия швеннингера буцци, белая пьедра, врожденный сифилис, поражение вульвы, атрофодермия пазини пьерини, заболевания органов половой системы вирусной этиологии папилломавирусная инфекция генитальный герпес воспалительные процессы половых органов, герпес, лобомикоз, гонорея, акне вульгарис, гонококковая инфекция, акне средней степени тяжести, стафилококками, акне, актинический кератоз, амилоидоз кожи, гонорея у женщин, висцеральный сифилис, болезни кожи и подкожной клетчатки, остроконечные кондиломы, цистит, вирус папилломы человека, болезни ногтей, бородавки, кандидоз, грибок стопы, сифилис, кишечной палочкой и другими представителями патогенной и условно патогенной микрофлоры уретрит, паховый грибок, алопеция тотальная, атрофия кожи, буллезный эпидермолиз, вирусные бородавки, сифилис ещё дерматолог аденома сальной железы, простой герпес, вызванные стрептококками, гранулема лица, кандидамикоз, паховая гранулема, генитальный герпес, болезни полового члена, венерическая лимфогранулема, зппп, первичный сифилис, пузырчатка эритематозная, актинический ретикулоид, болезни потовых желез, ещё миколог грибок кожи, вторичный сифилис, кондиломы |
У меня появились зуд и жжение во влагалище. Могут ли эти симптомы быть связаны с грибковым заболеванием? |
ромашкин сергей иванович; стоимость приема от: 1500 руб (средняя стоимость приема); стаж: 11 лет; квалификация: врач высшей категории; пациенты: взрослые; клиника: горклиника в перово; перово, шоссе энтузиастов; специальность: гастроэнтеролог, невролог, дерматовенеролог; специализация: заболевания органов половой системы вирусной этиологии папилломавирусная инфекция генитальный герпес воспалительные процессы половых органов, вызванные стрептококками, цистит, кишечной палочкой и другими представителями патогенной и условно патогенной микрофлоры уретрит, стафилококками, кольпит генитальный кандидоз |
У меня проблемы с осанкой, болит спина. Можно ли с помощью ЛФК исправить осанку и снять боль? Какие типы занятий вы проводите для взрослых? Какова стоимость одного занятия? |
батухтина эллина раисовна; стоимость приема от: 8500 руб (высокая стоимость приема); стаж: 9 лет; специальность: врач лфк; тип приёма: в клинике; клиника: ао медицина; улица 1905 года, белорусская, смоленская, киевская, проспект мира, маяковская; специализация: проведение лфк групповые и индивидуальные занятия у детей и взрослых с нарушениями опорнодвигательного аппарата составление и проведение индивидуальных занятий реабилитации |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
num_train_epochs: 100.0overwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 8per_device_eval_batch_size: 8per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonelearning_rate: 5e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 100.0max_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}fsdp_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: Falsehub_always_push: Falsegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_inputs_for_metrics: Falseeval_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: Falsebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportional| Epoch | Step | Training Loss |
|---|---|---|
| 1.2107 | 500 | 0.2302 |
| 2.4213 | 1000 | 0.1409 |
| 3.6320 | 1500 | 0.0976 |
| 4.8426 | 2000 | 0.0792 |
| 6.0533 | 2500 | 0.085 |
| 7.2639 | 3000 | 0.0677 |
| 8.4746 | 3500 | 0.0563 |
| 9.6852 | 4000 | 0.0562 |
| 10.8959 | 4500 | 0.0384 |
| 12.1065 | 5000 | 0.0407 |
| 13.3172 | 5500 | 0.043 |
| 14.5278 | 6000 | 0.0318 |
| 15.7385 | 6500 | 0.031 |
| 16.9492 | 7000 | 0.027 |
| 18.1598 | 7500 | 0.02 |
| 19.3705 | 8000 | 0.0209 |
| 20.5811 | 8500 | 0.0221 |
| 21.7918 | 9000 | 0.0167 |
| 23.0024 | 9500 | 0.0207 |
| 24.2131 | 10000 | 0.0194 |
@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}
}