Quasi tutto ciò che un medico scrive in cartella è testo in linguaggio naturale, e per renderlo interrogabile serve un passaggio che leghi le sue parole a identificatori stabili di una terminologia controllata. MetaMap, che Alan R. Aronson sviluppa alla National Library of Medicine (NLM) dal 1994, fa esattamente questo per l’inglese: data una frase biomedica, restituisce i concetti del Metathesaurus UMLS che vi compaiono, ciascuno con il proprio identificatore.

Contesto

Anamnesi, esame obiettivo, referti, lettere di dimissione: la parte clinicamente densa di una cartella resta narrativa libera. Le porzioni strutturate — anagrafica, diagnosi codificate, laboratorio — coprono il lato quantitativo, ma il ragionamento diagnostico vive nel testo. Per indicizzare quel testo, cercarlo per concetto o aggregarlo a fini epidemiologici, i termini di superficie vanno risolti in entità su cui la macchina può lavorare.

Il bersaglio di questa risoluzione è lo Unified Medical Language System (UMLS) della NLM. Avviato a metà anni ‘80, UMLS integra oltre cento vocabolari di partenza — fra cui MeSH, SNOMED CT, ICD-9-CM, RxNorm, LOINC — riconciliati in una struttura comune. Il Metathesaurus, nella release 2009AA, raccoglie circa 2,1 milioni di concetti distinti (UMLS 2009AA, NLM). Ogni concetto porta un Concept Unique Identifier (CUI) nella forma C0009443 (raffreddore comune), che tiene insieme i sinonimi provenienti dai diversi vocabolari. Sopra il Metathesaurus, la Semantic Network colloca ogni concetto in uno di 135 tipi semantici — Disease or Syndrome, Pharmacologic Substance, Body Part, Organ, or Organ Component — con relazioni fra i tipi. Il terzo componente, lo SPECIALIST Lexicon, è un lessico computazionale dell’inglese con informazione morfologica e sintattica.

Architettura del mapping

MetaMap non cerca corrispondenze esatte fra il testo e i nomi dei concetti. Lavora per stadi: genera di proposito molte forme alternative e poi le valuta. Il pipeline, descritto da Aronson nel lavoro fondativo (Proc AMIA Symp 2001), si articola così:

  1. Analisi lessico-sintattica. Il testo viene tokenizzato e analizzato dal parser SPECIALIST, che isola le frasi nominali candidate. Si lavora a livello di frase, non di parola isolata.
  2. Generazione di varianti. Per ogni frase, MetaMap produce un insieme di varianti: flessioni, sinonimi dallo SPECIALIST Lexicon, acronimi ed espansioni, forme di derivazione. È qui che heart attack e myocardial infarction finiscono per essere riconosciuti come la stessa entità.
  3. Recupero dei candidati. Le varianti vengono confrontate con le stringhe del Metathesaurus; ogni frase candidata accumula un insieme di concetti candidati.
  4. Valutazione. Ogni candidato riceve un punteggio che combina quattro metriche — centralità, variazione, copertura, coesione — e pesa l’aderenza del concetto alla frase insieme alla distanza fra le varianti usate e la forma originale.
  5. Costruzione del mapping. I candidati vengono combinati nel mapping complessivo col punteggio migliore per la frase; le mappature alternative vicine al massimo restano lì, come ambiguità.

In uscita c’è il testo annotato: per ogni frase, i CUI assegnati, il punteggio, il tipo semantico e gli intervalli di posizione. L’implementazione storica è in SICStus Prolog, distribuita come binari compilati per Linux, Mac OS X e Windows più il sorgente sotto licenza UMLS, con riscritture in Java dei componenti più sollecitati.

Il punto difficile

Dove il mapping si rompe è l’ambiguità lessicale. Una stringa breve si appoggia spesso a più CUI ugualmente plausibili, se ci si ferma alla sola superficie testuale: cold è una sensazione termica, il raffreddore comune, o l’acronimo di chronic obstructive lung disease. Il punteggio di MetaMap si fonda sulla corrispondenza lessicale e non separa i tre casi quando vanno a pari merito in cima.

La NLM ha risposto aggiungendo un modulo di word sense disambiguation (WSD) che, a parità di punteggio, sceglie il tipo semantico più coerente col dominio della frase. L’approccio scelto — Journal Descriptor Indexing — assegna al testo i descrittori di disciplina più probabili e li usa per pesare i tipi semantici candidati; sui termini ambigui della collezione di test NLM la precisione media sale da circa 0,25 della baseline a circa 0,79 (Humphrey et al., 2006). Resta una disambiguazione statistica e imperfetta: aiuta sui casi frequenti, non risolve la singola frase.

Un secondo problema, indipendente dall’ambiguità, è l’assertività. Un concetto presente nel testo può essere negato (no evidence of pneumonia), ipotetico, o riferito a un familiare. Riconoscere pneumonia senza accorgersi del no evidence of che la precede produce un falso positivo clinicamente grave. Per questo MetaMap integra la rilevazione di negazione basata su NegEx, l’algoritmo a espressioni regolari di Chapman e colleghi: un elenco di circa 35 frasi di negazione e pseudo-negazione con regole di ambito. Su 1235 reperti in lettere di dimissione, NegEx raggiunge specificità 94,5% e valore predittivo positivo 84,5% (Chapman et al., 2001). È un metodo deliberatamente semplice, e proprio la sua semplicità lo limita sulle negazioni a lungo raggio.

A cosa serve

Una volta resa solida su questi due fronti, l’annotazione a CUI apre impieghi preclusi al testo grezzo. L’impiego originario è l’indicizzazione: MetaMap è uno dei fondamenti dell’Indexing Initiative della NLM, che assiste l’assegnazione automatica di termini MeSH agli articoli MEDLINE. Lo stesso meccanismo, portato sul testo clinico, aiuta a codificare lettere di dimissione e referti verso ICD-9-CM o SNOMED CT, e a fare phenotyping algoritmico — definire una coorte di pazienti a partire da menzioni in note non strutturate.

Sopra MetaMap la NLM costruisce strumenti di livello più alto. SemRep parte dall’annotazione di MetaMap per estrarre predicazioni semantiche — aspirin TREATS pain — dalla letteratura, materiale per la literature-based discovery. La divisione dei compiti è netta: MetaMap identifica le entità, gli strati superiori ne strutturano le relazioni.

Limiti

Il vincolo più rigido è l’orientamento all’inglese. Lo SPECIALIST Lexicon e la generazione di varianti poggiano sull’inglese; il Metathesaurus contiene termini in altre lingue, ma il pipeline non nasce per analizzare direttamente testo italiano. La via battuta nella ricerca traduce prima il testo in automatico e poi lo passa a MetaMap, con perdite di accuratezza a ogni passaggio. Restano poi tre vincoli operativi:

  • Copertura disomogenea: l’estrazione è più accurata dove i vocabolari di partenza sono maturi e densi; le nicchie specialistiche vanno peggio.
  • Costo computazionale: il pipeline Prolog è lento sui grandi volumi; girarlo in batch su milioni di documenti richiede parallelizzazione e pre-filtraggio.
  • Licenza: l’uso richiede la UMLS Metathesaurus License Agreement, gratuita ma con registrazione, e con obblighi specifici ereditati dai sotto-vocabolari (SNOMED CT, CPT). Fuori dall’ambito accademico, conviene verificarlo prima.

Per chi oggi lavora su testo biomedico in inglese, MetaMap e UMLS sono l’infrastruttura con cui ci si misura; per l’italiano clinico lo spazio resta aperto, e tradurre il testo prima di mapparlo è un ripiego che somma errore in due passaggi invece di toglierlo.


https://metamap.nlm.nih.gov/ https://pubmed.ncbi.nlm.nih.gov/11825149/ https://www.nlm.nih.gov/research/umls/ https://www.nlm.nih.gov/research/umls/archive/archive_home.html https://pubmed.ncbi.nlm.nih.gov/12123149/ https://pubmed.ncbi.nlm.nih.gov/19890434/ https://www.noze.it/insights/metamap-umls-nlp-biomedico/

Immagine di copertina: Edificio moderno in mattoni e vetro su più piani con scalinata d’ingresso, sede della National Library of Medicine nel campus NIH di… — foto di Tony Webster, CC BY 2.0 — https://commons.wikimedia.org/wiki/File:Lister_Hill_Center_-_Building_38A_-_National_Library_of_Medicine_at_NIH.jpg