Un documento di protocollo di studio clinico tradotto da testo medico disordinato in un knowledge graph strutturato, a rappresentare il tema centrale dell'articolo: passare dalla sintassi alla logica nell'abbinamento dei pazienti.
Artificial IntelligenceHealthcareClinical Trials

Il refuso da 800.000 $ al giorno: come un catetere confuso dall'IA sta uccidendo la scoperta di farmaci

Ashutosh SinghalAshutosh Singhal4 febbraio 202613 min

Era un martedì sera e fissavo un foglio di calcolo che non aveva alcun senso.

Avevamo condotto un progetto pilota — testando quanto bene un large language model potesse esaminare le cartelle cliniche dei pazienti rispetto ai criteri di ammissibilità per uno studio oncologico. Il protocollo era semplice, per gli standard dei protocolli oncologici: un nuovo anticoagulante con un elenco di criteri di esclusione, uno dei quali era "pregresso cateterismo cardiaco". Cateterismo cardiaco. Un catetere fatto passare nelle camere del cuore per valutare la funzione coronarica. Una procedura cardiaca seria e invasiva.

L'IA aveva segnalato un paziente come non ammissibile. Motivo: cateterismo cardiaco. Ho aperto la cartella del paziente. La procedura documentata era una puntura venosa centrale— un accesso venoso centrale posizionato nella vena giugulare per la somministrazione di farmaci. È una procedura di accesso vascolare al letto del paziente. Le infermiere la eseguono in terapia intensiva. Non è una procedura cardiaca. Non le si avvicina neppure.

Ma il modello vide "catetere", vide "venoso", vide che la nota era stata scritta in un'unità di cure cardiache e concluse: è la stessa cosa. Il paziente era sparito. Escluso. Mai presentato al coordinatore del centro. Ed ecco ciò che mi tormentava — nessuno se ne sarebbe accorto. Il sistema avrebbe silenziosamente scartato un paziente ammissibile, e lo studio avrebbe avuto una persona in meno, e nessuno avrebbe saputo perché l'arruolamento era in ritardo.

Quello fu il momento in cui smisi di credere che prompt migliori avrebbero risolto il reclutamento per gli studi clinici. Il problema non è il vocabolario del modello. Il problema è che stiamo usando una macchina probabilistica per svolgere il lavoro della logica.

Perché l'80% della pipeline farmaceutica resta bloccato nel reclutamento?

L'industria farmaceutica ha un segreto scomodo su cui nessuna conference call sugli utili ama soffermarsi: circa l'80% degli studi clinici non rispetta le proprie tempistiche di arruolamento. Non perché la scienza sia sbagliata. Non perché i pazienti non esistano. Perché il processo di individuazione dei pazienti ammissibili e del loro abbinamento agli studi è guasto a un livello fondamentale.

Lasciate che dia una cifra in dollari a questa disfunzione. Secondo il Tufts Center for the Study of Drug Development, un solo giorno di ritardo nello sviluppo di un farmaco costa oggi all'incirca 800.000 $ in vendite di prescrizioni perse per un asset ad alte prestazioni. In ambito cardiovascolare ed ematologico, quella cifra supera 1,3 milioni di dollari al giorno. Per un ritardo di sei mesi nell'arruolamento di un farmaco oncologico competitivo — il tipo di ritardo che accade abitualmente — si arriva a una cifra che può rendere una terapia scientificamente superiore commercialmente morta ancor prima di nascere.

Il collo di bottiglia nella scoperta di farmaci non è più la scienza. È la sintassi.

E la realtà operativa è persino più cupa di quella finanziaria. Il 37% dei centri di ricerca arruola meno del previsto, e l'11% non riesce ad arruolare un solo paziente. Ogni fallimento di screening — un paziente che sulla carta sembra ammissibile ma non lo è — costa circa 1.200 $. Quando il tuo strumento di IA genera 100 "abbinamenti" e solo 5 sono reali, non hai automatizzato il reclutamento. Hai lanciato un attacco denial-of-service contro i tuoi stessi centri clinici.

L'ho visto accadere. I coordinatori dei centri che si erano entusiasmati per i nostri primi prototipi cominciarono a ignorare del tutto le liste di abbinamenti. "Il tuo strumento mi dà spazzatura", mi disse uno di loro durante una chiamata. Non aveva torto. Tornò a scorrere manualmente i PDF. Ctrl+F. Lo stato dell'arte effettivo del settore.

Il catetere che ha infranto la mia fede negli LLM

Lasciatemi approfondire quell'errore del martedì sera, perché illustra qualcosa che la maggior parte delle presentazioni sull'IA-in-sanità sorvola.

Quando un large language model elabora del testo, converte le parole in vettori — punti in uno spazio matematico ad alta dimensionalità. Le parole che compaiono in contesti simili finiscono vicine tra loro. "Cateterismo cardiaco" e "cateterismo venoso centrale" sono, nello spazio vettoriale, praticamente vicini. Entrambi coinvolgono cateteri. Entrambi coinvolgono il sistema vascolare. Entrambi compaiono nelle note cliniche circondati da gergo medico simile.

Ma sono procedure completamente diverse che mirano a strutture anatomiche diverse, con profili di rischio diversi e implicazioni cliniche diverse. Una entra nel cuore. L'altra entra in una vena. Il protocollo escludeva la prima. Il paziente aveva la seconda. E l'IA non riusciva a cogliere la differenza perché non comprende l'anatomia — comprende la prossimità tra parole.

Non è un caso limite. Studi che valutano modelli di IA per l'abbinamento agli studi hanno individuato esattamente questa modalità di fallimento: modelli che concludono erroneamente che il cateterismo cardiaco sia lo stesso di una puntura venosa centrale, portando a un'esclusione ingiustificata. È una classe di errore, non un bug isolato.

La mattina dopo ho portato la questione al mio team. Uno dei nostri ingegneri — un tipo brillante, con un background nel deep learning — suggerì che potevamo risolverlo con un fine-tuning migliore. Più dati di addestramento medici. Finestre di contesto più ampie. Ricordo la discussione che ne seguì, perché fu la discussione che plasmò l'intera nostra direzione tecnica. La mia posizione era semplice, e la esposi probabilmente in modo troppo brusco: non puoi risolvere con il fine-tuning l'assenza di un'ontologia.

Un LLM non sa che "cateterismo cardiaco" si trova su un ramo diverso dell'albero delle procedure mediche rispetto a "cateterismo venoso centrale". Non ha un albero. Ha una nebbia di associazioni statistiche. E nessuna quantità di dati di addestramento gli darà la comprensione rigida e gerarchica che fornisce un'ontologia medica — la conoscenza che la Procedura A è un sottotipo di "Procedura sul cuore" mentre la Procedura B è un sottotipo di "Cateterismo di vena", e che queste sono categoricamente distinte.

Quella discussione si concluse con noi che ricostruimmo la nostra architettura da zero.

Che cos'è il fenotipizzazione basata su ontologia, e perché dovrebbe interessarti?

Un diagramma ad albero ramificato che mostra come la gerarchia Is-A di SNOMED CT separa "cateterismo cardiaco" e "cateterismo venoso centrale" in rami completamente diversi, rendendo l'errore centrale dell'articolo immediatamente evidente a colpo d'occhio.

Ecco l'idea in parole semplici: invece di chiedere a un'IA di leggere le cartelle cliniche e indovinare cosa significano, obblighiamo l'IA a tradurre ogni concetto medico che incontra in un codice standardizzato di SNOMED CT — il sistema di terminologia clinica più completo al mondo — prima che prenda qualsiasi decisione.

SNOMED CT non è un dizionario. È un enorme grafo diretto in cui i concetti medici sono collegati da relazioni logiche. La più importante è la relazione Is-A. "Angiografia coronarica" is-a "cateterismo cardiaco" is-a "procedura sul cuore". "Cateterismo venoso centrale" is-a "cateterismo di vena" is-a "inserimento di catetere vascolare". Rami diversi. Genitori diversi. Significato diverso.

Così, quando il nostro sistema incontra un protocollo che esclude il "cateterismo cardiaco" e una cartella clinica che menziona il posizionamento di un accesso venoso centrale, non confronta stringhe o vettori. Interroga l'ontologia: La procedura di questo paziente è un sottotipo della procedura esclusa? Il grafo risponde no. Il paziente resta ammissibile. Deterministicamente. Ogni volta.

Abbiamo smesso di chiederci "queste parole si assomigliano?" e abbiamo iniziato a chiederci "questi concetti sono logicamente correlati?". Quel singolo cambiamento ha cambiato tutto.

Questo funziona anche quando i medici scrivono in forma abbreviata. "Cath cardiaco", "angio", "LHC", "accesso centrale", "inserimento CVC" — SNOMED CT mappa tutte queste varianti su ID di concetto specifici. Una volta che operi su ID di concetto invece che su stringhe, l'ambiguità svanisce. Stai abbinando significato a significato, non parola a parola.

Ho scritto dell'architettura tecnica dietro tutto questo — le gerarchie di SNOMED CT, la post-coordinazione per lateralità e gravità, la costruzione di fenotipi computazionali — nella versione interattiva della nostra ricerca. Ma l'intuizione centrale è semplice: l'IA medica ha bisogno di una mappa della medicina, non solo di un modello statistico del linguaggio medico.

Come si interpreta un "a meno che"?

Un confronto affiancato che mostra come un abbinatore di parole chiave escluda erroneamente un paziente con ipertensione controllata, rispetto a come un risolutore di logica deontica valuti correttamente il permesso condizionale e determini l'ammissibilità.

L'ontologia gestisce il cosa — di quali concetti medici stiamo parlando? Ma i protocolli degli studi clinici hanno un altro livello di complessità che l'IA generica gestisce in modo pessimo: la logica dell'ammissibilità.

Ecco un criterio di esclusione reale tratto da uno studio oncologico:

"Escludere i pazienti con ipertensione, a meno che non sia ben controllata con una terapia stabile da almeno 3 mesi."

Un abbinatore di parole chiave vede "ipertensione" ed esclude il paziente. Un filtro booleano vede ipertensione = TRUE ed esclude. Entrambi gli approcci scartano un paziente che ha l'ipertensione ma è perfettamente ammissibile perché la sua pressione arteriosa è stata controllata e stabile per mesi.

Questo mi ha fatto impazzire un po' quando l'ho incontrato per la prima volta su vasta scala. Abbiamo estratto i criteri di ammissibilità da un lotto di protocolli oncologici di Fase II e III e abbiamo scoperto che la maggior parte conteneva esclusioni condizionali — clausole "a meno che", clausole "tranne quando", dipendenze temporali come "entro 6 mesi" o "completato più di 90 giorni prima". Non sono casi limite. Sono la norma. E ognuna di esse è una trappola per i sistemi che non sanno ragionare su condizioni, permessi e tempo.

Ci siamo rivolti alla logica deontica — una branca della logica formale che si occupa di obblighi, permessi e divieti. È la logica delle norme e delle regole, originariamente sviluppata dai filosofi, e si adatta perfettamente ai criteri degli studi clinici. Avere l'ipertensione è vietato — a meno che tu non soddisfi anche le condizioni di permesso di pressione arteriosa controllata e terapia stabile per la durata richiesta. Il sistema modella questo come un'espressione logica formale, verifica la cronologia del paziente e calcola l'ammissibilità con precisione matematica.

Un altro schema che vediamo di continuo:

"I pazienti non devono aver ricevuto chemioterapia pregressa, a meno che non si trattasse di terapia neoadiuvante completata più di 6 mesi fa."

L'IA deve verificare simultaneamente tre cose: il paziente ha ricevuto chemioterapia? Il suo intento era neoadiuvante? Ed è terminata più di sei mesi prima della data di riferimento? Gestiamo questo con ciò che la letteratura chiama Temporal Ensemble Logic — il sistema costruisce una cronologia della storia clinica del paziente e colloca gli eventi entro finestre di osservazione valide.

Una ricerca per parole chiave vede "chemioterapia" nella cartella ed entra nel panico. Il nostro sistema vede la chemioterapia, verifica l'attributo dell'intento, misura la differenza temporale e determina correttamente l'ammissibilità.

L'architettura che nessuno ha chiesto (ma di cui tutti hanno bisogno)

Un diagramma di architettura a tre livelli che mostra i ruoli distinti dell'LLM (percezione/estrazione), del knowledge graph SNOMED CT (mappatura/disambiguazione) e del risolutore di logica simbolica (ragionamento deterministico), con un chiaro flusso di dati tra di essi.

Quando descrivo il nostro approccio a investitori e dirigenti farmaceutici, a volte ricevo un certo sguardo — lo sguardo che dice "perché stai rendendo tutto così complicato? Usa semplicemente GPT."

Ho ricevuto quello sguardo da un potenziale partner circa un anno dopo l'inizio del nostro sviluppo. Era un tipo sveglio, guidava il team di innovazione digitale di una CRO, e credeva sinceramente che un wrapper di GPT-4 ben istruito con un po' di retrieval-augmented generation attaccato sopra avrebbe risolto il problema. "I modelli migliorano ogni trimestre", mi disse. "State ingegnerizzando troppo la cosa."

Ho aperto i nostri risultati dei test. Stesso dataset, stessi criteri di ammissibilità. Il wrapper GPT del suo team: accuratezza variabile tra un'esecuzione e l'altra — letteralmente risposte diverse sullo stesso paziente a seconda di quando lo eseguivi. Nessuna traccia di audit. Nessun modo di spiegare perché un paziente fosse incluso o escluso. E un'accuratezza che si fermava intorno al 63-87% a seconda della complessità dei criteri.

Il nostro sistema neuro-symbolic: deterministico, riproducibile, accuratezza >95%, con una traccia di ragionamento completa per ogni decisione.

La FDA non accetta "l'IA ha pensato così" come motivazione. Serve una dimostrazione logica. Non è un vantaggio opzionale — è la differenza tra uno strumento che potenzia la ricerca clinica e un giocattolo che impressiona il pubblico delle demo.

Ecco come funziona davvero l'architettura, senza affogarti nei dettagli implementativi:

L'LLM legge.Assimila la realtà disordinata e non strutturata delle cartelle cliniche — PDF scansionati, note scritte a mano, narrazioni dei medici — e il suo unico compito è estrarre entità mediche e normalizzarle. Legge "pz lamenta dolore toracico" e produce il concetto SNOMED per dolore toracico. Tutto qui. L'LLM è il livello di percezione. Non prende mai una decisione di ammissibilità.

Il knowledge graph mappa.Le entità estratte vengono mappate su ID di concetto SNOMED CT, disambiguate dal contesto. "Cold" il virus rispetto a "cold" la temperatura. La struttura del grafo risolve l'ambiguità.

Il risolutore logico ragiona.È qui che avviene l'effettiva determinazione dell'ammissibilità — un ragionatore simbolico deterministico che applica regole di logica deontica al fenotipo strutturato del paziente. Verifica le relazioni Is-A, calcola le durate temporali, valuta i permessi condizionali. Dati gli stessi input, produce sempre lo stesso output.

Usiamo anche GraphRAG invece del recupero standard basato su vettori. Il RAG standard recupera frammenti di documenti in base alla somiglianza tra parole. GraphRAG attraversa le relazioni. Se uno studio esclude "qualsiasi farmaco che interagisce con gli enzimi CYP3A4" e un paziente sta assumendo il Farmaco B, il RAG standard potrebbe mancare la connessione se la cartella del paziente non dice mai esplicitamente "il Farmaco B è un inibitore del CYP3A4". GraphRAG lo sa, perché il knowledge graph contiene la relazione: il Farmaco B inibisce il CYP3A4. Ragionamento multi-hop. Il tipo di connessione che un farmacista fa intuitivamente ma che un sistema basato sull'abbinamento di testo non farebbe mai.

Per l'analisi tecnica completa dell'architettura — l'integrazione neuro-symbolic di Tipo 4, la decodifica concept-aware, il livello di interoperabilità FHIR/CDISC — vedi il nostro documento di ricerca dettagliato.

"Ma i modelli non miglioreranno e basta?"

Le persone contestano sempre questo punto, e capisco perché. La traiettoria degli LLM è davvero impressionante. Ogni pochi mesi un nuovo modello ottiene punteggi più alti nei benchmark medici. Allora perché non aspettare?

Perché il problema non è la capacità — è l'architettura. Un LLM è un predittore probabilistico di token. Renderlo più grande e addestrarlo su più testo medico lo rende un predittore probabilistico di token migliore. Non lo rende un motore logico. Non gli dà determinismo. Non gli dà una traccia di audit. E in un settore regolamentato dove la FDA e l'EMA hanno bisogno di sapere esattamente perché il Paziente n. 4.271 è stato escluso dallo Studio XYZ-003, "il modello ha predetto che questa fosse la risposta più probabile" non è accettabile.

C'è anche il problema della privacy che non scompare con la scala. Inviare cartelle cliniche non strutturate ad API di modelli basati su cloud — anche quelle enterprise — crea un'esposizione a HIPAA e GDPR che nessuna quantità di accordi BAA mitiga completamente. La nostra architettura mantiene i dati dei pazienti all'interno di enclave sicure. Il livello di ragionamento simbolico e il knowledge graph vengono eseguiti localmente. Il livello neurale può essere un modello open-source locale. Le informazioni sanitarie protette non lasciano mai il firewall.

E poi c'è il problema della riproducibilità che trovo più condannante. Fai passare la stessa cartella clinica attraverso un LLM due volte con lo stesso prompt, e puoi ottenere risposte diverse. Cambia l'impostazione della temperatura, regola la finestra di contesto, riformula leggermente la domanda — risultato diverso. Gli studi clinici richiedono decisioni riproducibili al 100%. Il quadro normativo lo esige. L'etica lo esige.

I pazienti che stiamo perdendo

Ho passato gran parte di questo saggio a parlare di architettura ed economia, ma voglio concludere in un luogo più onesto.

Per i pazienti con cancro metastatico, o LMA, o una rara malattia genetica, un ritardo di sei mesi nell'arruolamento non è una voce in un modello finanziario. È la differenza tra accedere a una terapia potenzialmente curativa e non farlo. Quando il nostro sistema esclude erroneamente un paziente ammissibile — perché ha confuso due procedure con catetere, o perché non è riuscito a interpretare una clausola "a meno che" — quel paziente non riceve una notifica che dice "ci dispiace, l'IA ha commesso un errore". Semplicemente, non sente mai parlare dello studio. Il suo oncologo non riceve mai l'avviso. Il posto resta non occupato, oppure va a qualcun altro, e il paziente prosegue con lo standard di cura, senza mai sapere che esisteva un'opzione.

Ecco a cosa penso quando qualcuno mi dice di usare semplicemente un'API wrapper.

Abbiamo costruito Veriprajna perché il divario tra ciò che l'IA promette nella sanità e ciò che effettivamente offre non è un problema di marketing — è un problema di ingegneria. Il settore ha scelto l'architettura facile (lanciarci contro un LLM) invece dell'architettura giusta (dare all'LLM un'ontologia e un risolutore logico e vincolarlo a fare solo ciò in cui è bravo).

Non arriveremo alla medicina di precisione con il prompt engineering. Servono sistemi che ragionano, non sistemi che indovinano con sicurezza.

La cura per la crisi del reclutamento non sono modelli linguistici migliori. È il riconoscimento che l'ammissibilità è un problema di logica travestito da linguaggio. Rimuovi il testo non strutturato, mappalo su un'ontologia medica, applica il ragionamento formale, e all'improvviso l'80% degli studi che non rispettano le tempistiche di arruolamento inizia a sembrare un problema risolvibile anziché un'inevitabilità del settore.

Smetti di abbinare parole. Inizia ad abbinare pazienti. La differenza è un knowledge graph, un risolutore logico e la volontà di costruire qualcosa di più difficile di un wrapper.

Related Research

Also Published On