MedCPT
AI for Evidence Utilization · Retrieve

MedCPT: Contrastive Pre-trained Transformers with Large-scale PubMed Search Logs

Qiao Jin, Won Kim, Qingyu Chen, Donald C. Comeau, Lana Yeganova, John Wilbur, Zhiyong Lu
Bioinformatics 2023
These slides were generated with the help of AI and may contain errors.
01Motivation

Matching terms, not their meaning

  • PubMed’s Best Match learns to rank from 100+ features — but none capture meaning.
  • Search “lead heart damage” — meaning the metal — and the top hits use “lead” as a verb instead.
PubMed Best Match for “lead heart damage”: the top hit matches “lead” as the
PubMed Best Match for “lead heart damage”: the top hit matches “lead” as the verb (“…cardiac damage may lead to…”), not the intended metal. Screenshot: PubMed.
02Method

Three encoders: retrieve, then re-rank

  • MedCPT is a family of three contrastively pre-trained encoders.
  • A query encoder and an article encoder retrieve; a cross-encoder re-ranks the top hits.
MedCPT’s three encoders: a query (QEnc) and article (DEnc) encoder for retrieval, plus a cross
MedCPT’s three encoders: a query (QEnc) and article (DEnc) encoder for retrieval, plus a cross-encoder (CrossEnc) re-ranker. Fig. 1.
03Method

Contrastive training on PubMed clicks

  • Supervised by 255M real user clicks from PubMed search logs.
  • Contrastive learning pulls relevant pairs together in embedding space.
  • The cross-encoder re-ranker is then trained on hard negatives from the retriever.
Training: contrastive bi-encoders from clicks (A), then a cross-encoder on hard negatives (B).
Training: contrastive bi-encoders from clicks (A), then a cross-encoder on hard negatives (B). Fig. 2.
04Result

State-of-the-art zero-shot performance on BEIR

  • Evaluated zero-shot on the biomedical subtasks of BEIR.
  • MedCPT (330M) beats general retrievers up to ~15× larger — including Google’s 4.8B GTR-XXL.
RetrieverSizeTREC-COVIDNFCorpusBioASQSciFactAvg.
BM250.6560.3250.4650.6650.454
docT5query220M0.7130.3280.4310.6750.462
ColBERT110M0.6770.3050.4740.6710.454
Google GTR-XXL4.8B0.5010.3420.3240.6620.398
MedCPT330M0.7090.3550.5530.7610.510
Zero-shot nDCG@10 on biomedical BEIR subtasks. Source: Table 1.
05Result

The MedCPT document encoder outperforms every baseline on RELISH

  • RELISH scores how well a model finds articles related to a given paper.
  • MedCPT’s document encoder tops every baseline — including PubMed’s own PMRA related-articles algorithm.
MethodMAP@10NDCG@10Avg.
BM2586.7287.3987.21
PMRA87.5788.4088.40
BioSentVec88.1087.7688.29
PubMedBERT81.0782.3982.26
SciNCL92.7491.9192.52
MedCPT (DEnc)93.9993.1293.72
Article-similarity re-ranking on RELISH (%). MedCPT’s document encoder leads. Source: Table 2.
06Result

Best sentence-similarity correlation, too

  • MedCPT’s embeddings capture sentence-level meaning, not just document relevance.
  • Its query encoder best matches human similarity judgments on BIOSSES and MedSTS.
ModelBIOSSESMedSTS
BioWordVec0.6940.747
BioSentVec (PubMed+MIMIC)0.7950.767
PubMedBERT0.5280.521
SPECTER0.6940.702
SciNCL0.8470.706
MedCPT (QEnc)0.8930.765
Pearson correlation with human sentence-similarity judgments (BIOSSES, MedSTS). MedCPT’s query encoder leads on both. Source: Table 3.
07Impact

A widely used biomedical retriever

08Summary

MedCPT at a glance

BackgroundBiomedical search should match meaning, not just keywords.
ProblemLexical search (PubMed Best Match) misses semantically related papers.
ApproachThree encoders — retrieve, then re-rank — trained on 255M PubMed click pairs.
ResultsState-of-the-art zero-shot biomedical retrieval & sentence similarity.
Impact8M+ downloads; powers NCBI LitSense 2.0; the most-used retriever in medical RAG.