/ Модель

Характеристики

Контекст
512 токенов
Параметры
137 млн
Лицензия
Своя лицензия
Архитектура
bert · dense
Опубликована
24 окт 2023

MedCPT-Query-Encoder

ЭмбеддингиТекст → embedding3 профессии

BERT-энкодер NCBI/NLM, который преобразует медицинские запросы в эмбеддинги для семантического поиска и кластеризации.

98 849скачиваний за 30 дней66лайковвеса обновлены3 дек 2023

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

MedCPT Query Encoder — текстовый энкодер, разработанный Computational Biology Branch подразделения NCBI/NLM для представления медицинских и биомедицинских запросов в виде эмбеддингов. Это часть пары энкодеров MedCPT: данный репозиторий содержит энкодер запросов, а отдельный Article Encoder кодирует статьи, включая заголовки и аннотации PubMed.

Модель основана на BERT и насчитывает 136,7 млн параметров. Она принимает короткие тексты — вопросы, поисковые запросы и предложения — и выдаёт векторы размерности 768; длина контекста составляет 512 токенов. Энкодер обучен на 255 млн пар «запрос—статья» из журналов поиска PubMed и предназначен для семантического поиска, кластеризации запросов и поиска похожих запросов. Его эмбеддинги совместимы с пространством эмбеддингов MedCPT Article Encoder, что позволяет выполнять поиск запросов по статьям.

Модель показывает высокие результаты в нескольких задачах биомедицинского поиска без дообучения, однако предназначена для поиска и представления текстов, а не для постановки диагнозов или принятия медицинских решений. Результаты требуют клинической проверки. Лицензия указана как other, поэтому перед использованием следует проверить условия лицензирования репозитория.

Сценарии применения

  • семантический поиск статей PubMed по медицинскому вопросу
  • создание эмбеддингов биомедицинских поисковых запросов
  • кластеризация медицинских запросов
  • поиск похожих запросов в биомедицинских корпусах

Ограничения

Энкодер предназначен для представления и поиска текстов, а не для диагностики или принятия медицинских решений; результаты требуют проверки клиническим специалистом. Контекст ограничен 512 токенами, а лицензия указана как other, поэтому условия использования следует уточнить.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

MedCPT Introduction

MedCPT generates embeddings of biomedical texts that can be used for semantic search (dense retrieval). The model contains two encoders:

This repo contains the MedCPT Query Encoder.

MedCPT has been pre-trained by an unprecedented scale of 255M query-article pairs from PubMed search logs, and has been shown to achieve state-of-the-art performance on several zero-shot biomedical IR datasets. In general, there are three use cases:

  1. Query-to-article search with both encoders.
  2. Query representation for clustering or query-to-query search with the query encoder.
  3. Article representation for clustering or article-to-article search with the article encoder.

For more details, please check out our paper (Bioinformatics, 2023). Please note that the released version is slightly different from the version reported in the paper.

Case 1. Using the MedCPT Query Encoder

import torch
from transformers import AutoTokenizer, AutoModel

model = AutoModel.from_pretrained("ncbi/MedCPT-Query-Encoder")
tokenizer = AutoTokenizer.from_pretrained("ncbi/MedCPT-Query-Encoder")

queries = [
	"diabetes treatment", 
	"How to treat diabetes?", 
	"A 45-year-old man presents with increased thirst and frequent urination over the past 3 months.",
]

with torch.no_grad():
	# tokenize the queries
	encoded = tokenizer(
		queries, 
		truncation=True, 
		padding=True, 
		return_tensors='pt', 
		max_length=64,
	)
	
	# encode the queries (use the [CLS] last hidden states as the representations)
	embeds = model(**encoded).last_hidden_state[:, 0, :]

	print(embeds)
	print(embeds.size())

The output will be:

tensor([[ 0.0413,  0.0084, -0.0491,  ..., -0.4963, -0.3830, -0.3593],
        [ 0.0801,  0.1193, -0.0905,  ..., -0.5380, -0.5059, -0.2944],
        [-0.3412,  0.1521, -0.0946,  ...,  0.0952,  0.1660, -0.0902]])
torch.Size([3, 768])

These embeddings are also in the same space as those generated by the MedCPT article encoder.

Case 2. Semantically searching PubMed with your query

We have provided the embeddings of all PubMed articles generated by the MedCPT article encoder at https://ftp.ncbi.nlm.nih.gov/pub/lu/MedCPT/pubmed_embeddings/. You can simply download these embeddings to search PubMed with your query.

Acknowledgments

This work was supported by the Intramural Research Programs of the National Institutes of Health, National Library of Medicine.

Disclaimer

This tool shows the results of research conducted in the Computational Biology Branch, NCBI/NLM. The information produced on this website is not intended for direct diagnostic use or medical decision-making without review and oversight by a clinical professional. Individuals should not change their health behavior solely on the basis of information produced on this website. NIH does not independently verify the validity or utility of the information produced by this tool. If you have questions about the information produced on this website, please see a health care professional. More information about NCBI's disclaimer policy is available.

Citation

If you find this repo helpful, please cite MedCPT by:

@article{jin2023medcpt,
  title={MedCPT: Contrastive Pre-trained Transformers with large-scale PubMed search logs for zero-shot biomedical information retrieval},
  author={Jin, Qiao and Kim, Won and Chen, Qingyu and Comeau, Donald C and Yeganova, Lana and Wilbur, W John and Lu, Zhiyong},
  journal={Bioinformatics},
  volume={39},
  number={11},
  pages={btad651},
  year={2023},
  publisher={Oxford University Press}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
BertModel
Ревизия весов
d83a36c

0 моделей