← Il laboratorio PROGETTO 01 · FASE 1 CONCLUSA

Rilevamento di scariche intercritiche su EEG di superficie di routine

Una pipeline che legge un EEG di superficie di routine (sistema 10–20) e redige la frase che scriverebbe un neurologo: se sono presenti anomalie epilettiformi intercritiche, dove proiettano e se il sonno le attiva.

84 registrazioni25.449 epoche, 2.516 con AEI
0,888 di ROC-AUCEsterna, negativi difficili
0,957 di ROC-AUCSottogruppo pediatrico, interna
Non ancora in uso clinicoNessun dato ospedaliero

ProblemaPerché questa domanda

Un EEG di routine è una ventina di minuti di ritmo di fondo in cui possono comparire, o non comparire, pochi eventi di frazioni di secondo. Quelli clinicamente decisivi sono le anomalie epilettiformi intercritiche (punte, onde aguzze, complessi punta-onda, polipunte) e la loro presenza cambia il percorso del paziente. Sono anche facili da non vedere e, peggio, facili da sovrastimare: i transienti aguzzi normali somigliano molto a quelli veri.

Lo strumento ha quindi due compiti. Rilevamento: questa registrazione contiene anomalie? Descrizione: per le anomalie trovate, la proiezione spaziale, la morfologia e l’eventuale attivazione con il sonno, assemblate in una frase come “presenza di anomalie epilettiformi intercritiche: complessi onda aguzza-onda lenta a proiezione temporale sinistra, attivate dal sonno.”

PipelineMetodi

RisultatiRilevamento, dati interni

Cross-validazione a 5 fold a livello di soggetto, out-of-fold su tutte le 84 registrazioni. Per registrazione, cioè la domanda che il clinico si pone davvero. Le dispersioni sono la deviazione standard fra le cinque fold, cioè quanto il dato si muove al cambiare dei pazienti:

0,808
Sensibilità
0,875
Specificità
0,940 ± 0,047
PR-AUC

Per segmento il rilevatore raggiunge una sensibilità di 0,765 con un tetto del 10% di falsi allarmi, e una PR-AUC di 0,707 complessiva ma 0,669 ± 0,183 fra le fold, da 0,42 a 0,85, che è la misura onesta di quanto 84 registrazioni riescano a stabilizzare il dato. Nel sottogruppo pediatrico (32 pazienti, età ≤ 18 anni) tutte le misure migliorano: ROC-AUC 0,957 contro 0,907 dell’intera coorte, sensibilità 0,911 contro 0,765. È il dato incoraggiante in vista di un impiego pediatrico, con l’avvertenza che il sottogruppo contiene solo 10 registrazioni prive di anomalie, troppo poche per tarare una soglia a livello di registrazione.

Matrice di confusione, per registrazione

Out-of-fold su tutte le 84 registrazioni: 52 con anomalie annotate dall’esperto, 32 senza. Prima i conteggi, fra parentesi la quota sulla riga: la riga in alto si legge come sensibilità, quella in basso come specificità. Guardare prima i conteggi: su un corpus di questa dimensione una registrazione vale 0,019 di sensibilità, e una percentuale suggerisce una precisione che il corpus non ha.

TP
42 (81%)
individuate
FN
10 (19%)
mancate
FP
4 (13%)
falsi allarmi
TN
28 (88%)
correttamente silenti

Le dieci registrazioni mancate sono il numero che conta per uno strumento che deve cogliere ciò che un lettore meno esperto potrebbe non vedere. Il punto di lavoro dietro questa tabella massimizza l’indice J di Youden, che tratta una registrazione mancata e un falso allarme come ugualmente costosi. Qui non lo sono, e stabilire quel cambio è un giudizio clinico ancora da prendere.

Il compromesso che decide l’usabilità

Un singolo punto di lavoro nasconde la forma della curva, ed è la forma a stabilire se qualcuno tollererebbe le segnalazioni:

VincoloRisultato
FPR ≤ 0,05sensibilità 0,686
FPR ≤ 0,10sensibilità 0,765 ← punto di lavoro configurato
sensibilità ≥ 0,90costa un FPR di 0,324

Arrivare a 0,90 di sensibilità costa un tasso di falsi positivi del 32%. Un lettore che scarta un terzo delle segnalazioni smette di fidarsi dello strumento: per questo la pipeline fissa il tetto a FPR 0,10 e dichiara lo scarto rispetto all’obiettivo, invece di allentarlo in silenzio.

RisultatiValidazione esterna, il numero che conta

Addestrato su tutto il corpus interno, testato su 100 segmenti provenienti da un altro Paese, ospedale e sistema di registrazione, con standard di riferimento la video-EEG degli eventi abituali. In quel set ogni negativo è a sua volta un transiente aguzzo, un sosia clinico, scelto proprio perché forme d’onda simili causano sovrastima all’EEG.

ROC-AUCAccuratezza
Solo fase 10,6630,630
Fase 1 + 1b, soli eventi aggiudicati0,7900,740
Fase 1 + 1b, con negativi estratti0,8880,800
Esperti umani, stessi 100 casinon pubblicata0,920

Qui il modello resta peggiore di un umano, e questo scarto è il titolo onesto. Il secondo stadio ha portato la ROC-AUC esterna da 0,663 a 0,790 sui soli eventi aggiudicati, e a 0,888 una volta aggiunti i negativi estratti dalle registrazioni di controllo; la valutazione degli esperti sugli stessi casi è 0,920. Il divario si è ridotto di circa un terzo. Non si è chiuso.

I numeri interni ed esterni non sono in contraddizione: pongono domande diverse. All’interno la maggior parte dei negativi è normale attività di fondo, e distinguere una punta dal ritmo di base è il problema facile. All’esterno ogni negativo sembra già una scarica, e distinguerli è il problema difficile. La conseguenza è detta chiaramente nel progetto: il modello attuale non è pronto per il pre-screening di registrazioni non selezionate, e la priorità sono più negativi difficili, non più architettura.

Sul set interno tenuto da parte lo stesso schema emerge onestamente: 0,937 di ROC-AUC sugli eventi netti, 0,709 su quelli borderline in cui il panel di esperti stesso era in disaccordo. Quei casi sono genuinamente difficili, non semplicemente non appresi, e i negativi estratti li hanno mossi appena.

RisultatiDescrizione e localizzazione

Le descrizioni in bozza sono valutate sull’accordo dei campi strutturati con l’annotazione dell’esperto, non su metriche di sovrapposizione testuale: una frase può ottenere un buon punteggio BLEU indicando il lobo sbagliato.

0,917
Accordo sullo stato (veglia / sonno)
0,417
Accordo sulla sede (5 classi)
0,893
Accuratezza sullo stato, fase 2

Lo stato è solido; la localizzazione è la parte più debole della pipeline. La classe spaziale è in sostanza una proprietà del singolo paziente (33 registrazioni positive su 52 portano esattamente una classe), quindi la numerosità effettiva è quella dei pazienti, non delle epoche. La classe centro-parietale poggia su quattro pazienti. La conclusione onesta è che questo corpus è troppo piccolo per apprendere in modo affidabile una localizzazione a cinque classi, qualunque cosa suggeriscano i conteggi di epoche.

DemoVederla funzionare

Una pagina esportata e autonoma: si sceglie una delle tre registrazioni tenute da parte, si guarda girare rilevamento, localizzazione e descrizione, e si vede dove la pipeline ha guardato. Ogni valore che mostra è output reale del codice versionato.

Apri la demo interattiva

Si apre come pagina a sé: è l’export della pipeline, servito senza modifiche anziché ri-vestito.

Prossimi passiDove sta andando

La fase 2 è il contesto ospedaliero pediatrico a cui punta tutto il progetto, e non inizia finché il problema dei sosia non è sotto controllo: uno strumento che incontra EEG di routine incontrerà continuamente falsi aguzzi, perché di quello è pieno l’EEG di routine.

Un risultato della fase 1 merita di essere portato avanti a sé: un errore di normalizzazione dell’ampiezza ha reso per un periodo la prestazione esterna peggiore del punto di partenza, perché la scalatura sull’intero corpus, con eventi anomali, rimpiccioliva di 28 volte le registrazioni nuove. I sistemi di acquisizione differiscono nei microvolt assoluti, quindi qualunque modello che vi si appoggi non trasferisce. Ora è fissato da un test.

Parliamo di questo lavoro
FlatNine Nosis · Progetto 01 - EEG / IED Scrivici · flatnine.co