Explicabilitatea modelelor de învățare automată (ML) utilizate în domeniul medical devine din ce în ce mai importantă, deoarece modelele trebuie explicate dintr-o serie de perspective pentru a fi adoptate. Aceste perspective variază de la medical, tehnologic, legal și cea mai importantă perspectivă - cea a pacientului. Modelele dezvoltate pe text în domeniul medical au devenit precise din punct de vedere statistic, totuși clinicienii sunt obligați din punct de vedere etic să evalueze zonele slabe legate de aceste predicții pentru a oferi cea mai bună îngrijire pacienților individuali. Explicabilitatea acestor predicții este necesară pentru ca clinicienii să facă alegerile corecte de la pacient la pacient.
În această postare, arătăm cum să îmbunătățim explicabilitatea modelului în setările clinice folosind Amazon SageMaker Clarify.
Context
O aplicație specifică a algoritmilor ML în domeniul medical, care utilizează volume mari de text, este sistemele de suport pentru deciziile clinice (CDSS) pentru triaj. Zilnic, pacienții sunt internați în spitale și se iau note de admitere. După ce aceste note sunt luate, procesul de triaj este inițiat, iar modelele ML pot ajuta clinicienii să estimeze rezultatele clinice. Acest lucru poate ajuta la reducerea costurilor operaționale generale și poate oferi îngrijiri optime pentru pacienți. Înțelegerea de ce aceste decizii sunt sugerate de modelele ML este extrem de importantă pentru luarea deciziilor legate de pacienții individuali.
Scopul acestei postări este de a sublinia modul în care puteți implementa modele predictive Amazon SageMaker în scopul triajului în cadrul spitalelor și utilizați SageMaker Clarify pentru a explica aceste predicții. Intenția este de a oferi o cale accelerată către adoptarea tehnicilor de predicție în cadrul CDSS-urilor pentru multe organizații de asistență medicală.
Caietul și codul din această postare sunt disponibile pe GitHub. Pentru a-l rula singur, clonează depozitul GitHub și deschide fișierul notebook Jupyter.
Fundal tehnic
Un mare avantaj pentru orice organizație de asistență medicală acută îl reprezintă notele clinice. La momentul admiterii într-un spital, se iau note de admitere. O serie de studii recente au arătat predictibilitatea indicatorilor cheie, cum ar fi diagnostice, proceduri, durata șederii și mortalitatea în spital. Predicțiile acestora sunt acum foarte realizabile doar din notele de admitere, prin utilizarea algoritmilor de procesare a limbajului natural (NLP) [1].
Progresele în modelele NLP, cum ar fi Bi-directional Encoder Representations from Transformers (BERT), au permis predicții extrem de precise pe un corpus de text, cum ar fi notele de admitere, care anterior erau greu de obținut valoare. Predicția lor privind indicatorii clinici este foarte aplicabilă pentru utilizarea într-un CDSS.
Cu toate acestea, pentru a utiliza noile predicții în mod eficient, modul în care aceste modele BERT precise își realizează predicțiile trebuie încă explicat. Există mai multe tehnici pentru a explica predicțiile unor astfel de modele. O astfel de tehnică este SHAP (SHapley Additive exPlanations), care este o tehnică independentă de model pentru a explica rezultatul modelelor ML.
Ce este SHAP
Valorile SHAP sunt o tehnică pentru explicarea rezultatelor modelelor ML. Oferă o modalitate de a defalca predicția unui model ML și de a înțelege cât de mult contribuie fiecare caracteristică de intrare la predicția finală.
Valorile SHAP se bazează pe teoria jocurilor, în special pe conceptul de valori Shapley, care au fost propuse inițial pentru a aloca plățile unui joc cooperativ între jucătorii săi [2]. În contextul ML, fiecare caracteristică din spațiul de intrare este considerată un jucător într-un joc cooperativ, iar predicția modelului este plata. Valorile SHAP sunt calculate prin examinarea contribuției fiecărei caracteristici la predicția modelului pentru fiecare combinație posibilă de caracteristici. Contribuția medie a fiecărei caracteristici pentru toate combinațiile posibile de caracteristici este apoi calculată, iar aceasta devine valoarea SHAP pentru acea caracteristică.
SHAP permite modelelor să explice predicțiile fără a înțelege funcționarea interioară a modelului. În plus, există tehnici de afișare a acestor explicații SHAP în text, astfel încât perspectivele medicale și ale pacientului să poată avea toate vizibilitate intuitivă asupra modului în care algoritmii ajung la predicțiile lor.
Cu noi completări la SageMaker Clarify și utilizarea modelelor pre-antrenate de la Fata îmbrățișată care sunt ușor de utilizat implementate în SageMaker, instruirea modelului și explicabilitatea pot fi realizate cu ușurință în AWS.
În scopul unui exemplu de la capăt la capăt, luăm rezultatul clinic al mortalității în spital și arătăm cum acest proces poate fi implementat cu ușurință în AWS folosind un model Hugging Face BERT pre-antrenat, iar predicțiile vor fi explicate folosind SageMaker Clarify.
Alegerea modelului Hugging Face
Hugging Face oferă o varietate de modele BERT pre-antrenate care au fost specializate pentru utilizare pe note clinice. Pentru această postare, folosim bigbird-base-mimic-mortality model. Acest model este o versiune ajustată a modelului BigBird de la Google, adaptată special pentru prezicerea mortalității folosind note de admitere MIMIC ICU. Sarcina modelului este de a determina probabilitatea ca un pacient să nu supraviețuiască unei anumite șederi în UTI, pe baza notelor de admitere. Unul dintre avantajele semnificative ale utilizării acestui model BigBird este capacitatea sa de a procesa lungimi mai mari de context, ceea ce înseamnă că putem introduce notele complete de admitere fără a fi nevoie de trunchiere.
Pașii noștri implică implementarea acestui model fin pe SageMaker. Apoi încorporăm acest model într-o configurație care permite explicarea în timp real a predicțiilor sale. Pentru a atinge acest nivel de explicabilitate, folosim SageMaker Clarify.
Prezentare generală a soluțiilor
SageMaker Clarify oferă dezvoltatorilor ML instrumente special create pentru a obține informații mai bune asupra datelor și modelelor lor de antrenament ML. SageMaker Clarify explică atât predicțiile globale, cât și cele locale și explică deciziile luate de modelele de viziune computerizată (CV) și NLP.
Următoarea diagramă arată arhitectura SageMaker pentru găzduirea unui punct final care servește cereri de explicabilitate. Include interacțiuni între un punct final, containerul modelului și explicatorul SageMaker Clarify.
În exemplul de cod, folosim un notebook Jupyter pentru a prezenta funcționalitatea. Cu toate acestea, într-un caz de utilizare real, înregistrările medicale electronice (EHR) sau alte aplicații de îngrijire spitalicească ar invoca direct punctul final SageMaker pentru a obține același răspuns. În blocnotesul Jupyter, implementăm un container model Hugging Face într-un punct final SageMaker. Apoi folosim SageMaker Clarify pentru a explica rezultatele pe care le obținem din modelul implementat.
Cerințe preliminare
Aveți nevoie de următoarele condiții preliminare:
Accesați codul din GitHub depozit și încărcați-l în instanța dvs. de notebook. De asemenea, puteți rula notebook-ul într-un Amazon SageMaker Studio mediu, care este un mediu de dezvoltare integrat (IDE) pentru dezvoltarea ML. Vă recomandăm să utilizați un kernel Python 3 (Data Science). SageMaker Studio sau un nucleu conda_python3 pe o instanță de notebook SageMaker.
Implementați modelul cu SageMaker Clarify activat
Ca prim pas, descărcați modelul din Hugging Face și încărcați-l într-un Serviciul Amazon de stocare simplă (Amazon S3) găleată. Apoi creați un obiect model folosind clasa HuggingFaceModel. Aceasta utilizează un container preconstruit pentru a simplifica procesul de implementare a modelelor Hugging Face în SageMaker. De asemenea, utilizați un script de inferență personalizat pentru a face predicțiile în container. Următorul cod ilustrează scriptul care este transmis ca argument la clasa HuggingFaceModel:
Apoi puteți defini tipul de instanță pe care implementați acest model:
Apoi populam ExecutionRoleArn
, ModelName
și PrimaryContainer
câmpuri pentru a crea un Model.
Apoi, creați o configurație de punct final apelând la create_endpoint_config
API. Aici, furnizați la fel model_name
Folosit în create_model
Apel API. The create_endpoint_config
acum acceptă parametrul suplimentar ClarifyExplainerConfig
pentru a activa explicatorul SageMaker Clarify. Linia de bază SHAP este obligatorie; le puteți furniza fie ca date de referință inline (parametrul ShapBaseline), fie printr-un fișier de referință S3 (parametrul ShapBaselineUri). Pentru parametrii opționali, vezi ghidul dezvoltatorului.
În următorul cod, folosim un token special ca linie de bază:
TextConfig este configurat cu granularitate la nivel de propoziție (fiecare propoziție este o caracteristică și avem nevoie de câteva propoziții per revizuire pentru o vizualizare bună) și limba engleză:
În cele din urmă, după ce aveți gata configurarea modelului și a punctului final, utilizați create_endpoint
API pentru a vă crea punctul final. The endpoint_name
trebuie să fie unic într-o regiune în contul dvs. AWS. The create_endpoint
API-ul este de natură sincronă și returnează un răspuns imediat, starea punctului final fiind în starea Creare.
Explicați predicția
Acum că ați implementat punctul final cu explicabilitatea online activată, puteți încerca câteva exemple. Puteți invoca punctul final în timp real utilizând invoke_endpoint
metoda prin furnizarea încărcăturii serializate, care în acest caz sunt câteva exemple de note de admitere:
În primul scenariu, să presupunem că următorul bilet de admitere medical a fost luat de un lucrător din domeniul sănătății:
Următoarea captură de ecran arată rezultatele modelului.
După ce aceasta este transmisă la punctul final SageMaker, eticheta a fost prezisă ca 0, ceea ce indică faptul că riscul de mortalitate este scăzut. Cu alte cuvinte, 0 implică faptul că pacientul internat este în stare non-acută conform modelului. Cu toate acestea, avem nevoie de raționamentul din spatele acestei predicții. Pentru aceasta, puteți utiliza valorile SHAP ca răspuns. Răspunsul include valorile SHAP corespunzătoare frazelor notei de intrare, care pot fi ulterior codificate cu culoare verde sau roșu, în funcție de modul în care valorile SHAP contribuie la predicție. În acest caz, vedem mai multe fraze în verde, cum ar fi „Pacientul nu raportează nicio istorie anterioară de durere în piept” și „EKG arată tahicardie sinusală fără ridicări ST sau depresiuni”, spre deosebire de roșu, aliniind cu predicția mortalității de 0. .
În al doilea scenariu, să presupunem că următoarea notă de admitere medicală a fost luată de un lucrător din domeniul sănătății:
Următoarea captură de ecran arată rezultatele noastre.
După ce aceasta este transmisă la punctul final SageMaker, eticheta a fost prezisă ca 1, ceea ce indică faptul că riscul de mortalitate este mare. Aceasta implică faptul că pacientul internat este în stare acută conform modelului. Cu toate acestea, avem nevoie de raționamentul din spatele acestei predicții. Din nou, puteți utiliza valorile SHAP ca răspuns. Răspunsul include valorile SHAP corespunzătoare frazelor notei de intrare, care pot fi ulterior codificate cu culori. În acest caz, vedem mai multe fraze în roșu, cum ar fi „Pacientul raportează febră, frisoane și slăbiciune în ultimele 3 zile, precum și scăderea producției de urină și confuzie” și „Pacientul este o femeie de 72 de ani cu o plângere principală de șoc sever de sepsis”, spre deosebire de verde, în conformitate cu predicția de mortalitate de 1.
Echipa de îngrijire clinică poate folosi aceste explicații pentru a ajuta la luarea deciziilor cu privire la procesul de îngrijire pentru fiecare pacient în parte.
A curăța
Pentru a curăța resursele care au fost create ca parte a acestei soluții, executați următoarele instrucțiuni:
Concluzie
Această postare v-a arătat cum să utilizați SageMaker Clarify pentru a explica deciziile într-un caz de utilizare în domeniul sănătății pe baza notelor medicale capturate în timpul diferitelor etape ale procesului de triaj. Această soluție poate fi integrată în sistemele existente de suport decizional pentru a oferi un alt punct de date clinicienilor în timp ce evaluează pacienții pentru admiterea în UTI. Pentru a afla mai multe despre utilizarea serviciilor AWS în industria sănătății, consultați următoarele postări de blog:
Referinte
[1] https://aclanthology.org/2021.eacl-main.75/
[2] https://arxiv.org/pdf/1705.07874.pdf
Despre autori
Shamika Ariyawansa, care servește ca arhitect senior de soluții AI/ML în divizia globală de asistență medicală și științe ale vieții la Amazon Web Services (AWS), se concentrează puternic pe IA generativă. El ajută clienții să integreze AI generativ în proiectele lor, subliniind importanța explicabilității în cadrul inițiativelor lor bazate pe inteligență artificială. Dincolo de angajamentele sale profesionale, Shamika urmărește cu pasiune aventurile în schi și off-road.”
Ted Spencer este un arhitect de soluții cu experiență cu experiență extinsă în domeniul sănătății. Este pasionat de aplicarea învățării automate pentru a rezolva noi cazuri de utilizare și completează soluții având în vedere atât consumatorul final, cât și contextul lor de afaceri/clinic. Locuiește în Toronto, Ontario, Canada, și îi place să călătorească împreună cu familia și să se antreneze pentru triatlon, când timpul îi permite.
Ram Patangi este arhitect de soluții la AWS, care sprijină clienții din domeniul sănătății și științele vieții din zona golfului San Francisco. El a ajutat clienții din sectorul financiar, asistență medicală, științe ale vieții și verticale de înaltă tehnologie să-și conducă afacerea cu succes pe AWS Cloud. El este specializat în baze de date, analiză și învățare automată.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- PlatoData.Network Vertical Generative Ai. Împuterniciți-vă. Accesați Aici.
- PlatoAiStream. Web3 Intelligence. Cunoștințe amplificate. Accesați Aici.
- PlatoESG. Automobile/VE-uri, carbon, CleanTech, Energie, Mediu inconjurator, Solar, Managementul deșeurilor. Accesați Aici.
- PlatoHealth. Biotehnologie și Inteligență pentru studii clinice. Accesați Aici.
- ChartPrime. Crește-ți jocul de tranzacționare cu ChartPrime. Accesați Aici.
- BlockOffsets. Modernizarea proprietății de compensare a mediului. Accesați Aici.
- Sursa: https://aws.amazon.com/blogs/machine-learning/explain-medical-decisions-in-clinical-settings-using-amazon-sagemaker-clarify/
- :are
- :este
- :nu
- $UP
- 1
- 10
- 100
- 11
- 13
- 15%
- 16
- 22
- 30
- 7
- 8
- a
- Despre Noi
- accelerat
- Conform
- Cont
- precis
- Obține
- realizarea
- peste
- plus
- Suplimentar
- adăugări
- admise
- Adoptare
- Avantajele
- După
- din nou
- AI
- AI / ML
- AIR
- algoritmi
- alinierea
- TOATE
- aloca
- permis
- permite
- singur
- de asemenea
- modificate
- Amazon
- Amazon SageMaker
- Amazon Web Services
- Amazon Web Services (AWS)
- printre
- an
- Google Analytics
- și
- O alta
- Orice
- api
- aplicabil
- aplicație
- aplicatii
- Aplicarea
- adecvat
- arhitectură
- SUNT
- ZONĂ
- domenii
- argument
- AS
- activ
- ajuta
- asistă
- asuma
- At
- disponibil
- in medie
- AWS
- bazat
- De bază
- bază
- Golf
- BE
- deoarece
- deveni
- devine
- devenire
- fost
- început
- în spatele
- fiind
- CEL MAI BUN
- între
- Dincolo de
- Blog
- Blog
- sânge
- Tensiune arterială
- corp
- atât
- Pauză
- Respirație
- afaceri
- by
- calculată
- apel
- apel
- CAN
- Canada
- capacitate
- capturat
- pasă
- caz
- cazuri
- verifica
- şef
- alegeri
- clasă
- clar
- clinic
- clinicienii
- Cloud
- cod
- combinaţie
- combinaţii
- cum
- angajamentele
- plângere
- Completă
- calculator
- Computer Vision
- concept
- condiție
- Configuraţie
- configurat
- confuzie
- luate în considerare
- constant
- consumator
- Recipient
- context
- a contribui
- contribuie
- contribuţie
- cooperativă
- corecta
- Corespunzător
- Cheltuieli
- acoperire
- crea
- a creat
- Crearea
- personalizat
- clienţii care
- zilnic
- de date
- știința datelor
- baze de date
- Zi
- decizie
- Luarea deciziilor
- Deciziile
- defini
- implementa
- dislocate
- Implementarea
- Determina
- dezvoltat
- Dezvoltator
- Dezvoltatorii
- Dezvoltare
- dificil
- direct
- Boală
- Afişa
- diviziune
- do
- domeniu
- făcut
- jos
- Descarca
- în timpul
- fiecare
- cu ușurință
- în mod eficient
- oricare
- Electronic
- Evidențe electronice de sănătate
- subliniind
- permite
- activat
- capăt
- un capăt la altul
- Punct final
- Engleză
- Mediu inconjurator
- evalua
- examinator
- exemplu
- exemple
- existent
- experienţă
- cu experienţă
- Explica
- a explicat
- explicând
- explică
- explicație
- extensiv
- extrem
- Față
- familie
- Caracteristică
- DESCRIERE
- Femeie
- puțini
- Domenii
- Fișier
- final
- finanţa
- constatările
- First
- Concentra
- următor
- urmează
- Pentru
- Francisco
- din
- funcționalitate
- mai mult
- Câştig
- joc
- generativ
- AI generativă
- obține
- GitHub
- Caritate
- bine
- mai mare
- Verde
- Avea
- he
- Sănătate
- de asistență medicală
- industria sănătății
- inimă
- ajutor
- a ajutat
- aici
- hi-tech
- Înalt
- extrem de
- lui
- istorie
- spitale
- găzduire
- Cum
- Cum Pentru a
- Totuși
- HTML
- http
- HTTPS
- Față îmbrățișată
- ilustrează
- imediat
- implementat
- import
- importanță
- important
- îmbunătăţi
- in
- În altele
- include
- incorpora
- tot mai mult
- indică
- Indicatorii
- individ
- industrie
- iniţiat
- inițiative
- intrare
- perspective
- instanță
- integrate
- integrarea
- scop
- interacţiuni
- în
- intuitiv
- implica
- IT
- ESTE
- jpg
- pasionat
- Cheie
- Etichetă
- limbă
- mare
- mai mare
- AFLAȚI
- învăţare
- Legal
- Lungime
- Nivel
- Viaţă
- Life Sciences
- probabilitate
- Locuiește
- local
- Jos
- LOWER
- maşină
- masina de învățare
- făcut
- face
- obligatoriu
- multe
- mijloace
- medical
- mental
- metodă
- minte
- minut
- ML
- model
- Modele
- mai mult
- cele mai multe
- mult
- trebuie sa
- nazal
- Natural
- Procesarea limbajului natural
- Natură
- Nevoie
- nevoilor
- Nou
- nlp
- Nu.
- caiet
- notițe
- acum
- număr
- obiect
- obține
- of
- oferi
- promoții
- on
- ONE
- on-line
- Ontario
- deschide
- operațional
- opus
- optimă
- or
- comandă
- organizație
- organizații
- iniţial
- Altele
- al nostru
- afară
- Rezultat
- rezultate
- schiță
- producție
- peste
- Oxigen
- Durere
- parametru
- parametrii
- parte
- special
- Trecut
- pasionat
- trecut
- cale
- pacient
- pacientes
- pentru
- perspective
- Expresii
- fizic
- Plato
- Informații despre date Platon
- PlatoData
- player
- jucători
- pneumonie
- Punct
- pozitiv
- posibil
- Post
- postări
- a prezis
- estimarea
- prezicere
- Predictii
- Predictor
- premise
- presiune
- precedent
- în prealabil
- Proceduri
- proces
- prelucrare
- profesional
- Proiecte
- propus
- furniza
- furnizează
- furnizarea
- scop
- scopuri
- Urmărește
- Piton
- gamă
- rată
- tarife
- gata
- lumea reală
- în timp real
- recent
- recomanda
- înregistrări
- Roșu
- reduce
- regiune
- legate de
- Rapoarte
- depozit
- cereri de
- necesar
- Resurse
- răspuns
- rezultat
- REZULTATE
- Returnează
- dezvaluie
- revizuiască
- Risc
- Cameră
- runde
- Alerga
- sagemaker
- acelaşi
- San
- San Francisco
- scenariu
- Ştiinţă
- ȘTIINȚE
- Al doilea
- vedea
- senior
- propoziție
- septicemia
- servește
- Servicii
- servire
- setări
- configurarea
- câteva
- sever
- Arăta
- prezenta
- a arătat
- indicat
- Emisiuni
- semnificativ
- Semne
- simplu
- simplifica
- întrucât
- So
- soluţie
- soluţii
- REZOLVAREA
- unele
- Spaţiu
- special
- de specialitate
- specializată
- specific
- specific
- Stadiile
- început
- Stat
- Declarații
- Stare
- şedere
- Pas
- paşi
- Încă
- depozitare
- studiu
- Reușit
- astfel de
- livra
- a sustine
- Sisteme de suport
- De sprijin
- Sprijină
- sisteme
- Lua
- luate
- Sarcină
- echipă
- tehnici de
- tehnologic
- acea
- lor
- apoi
- teorie
- Acolo.
- Acestea
- ei
- acest
- Prin
- timp
- la
- semn
- Unelte
- Toronto
- Pregătire
- transformatoare
- Traveling
- trunchiere
- încerca
- tip
- înţelege
- înţelegere
- unic
- utilizare
- carcasa de utilizare
- utilizat
- utilizări
- folosind
- valoare
- Valori
- varietate
- diverse
- versiune
- verticalele
- de
- vizibilitate
- viziune
- vizualizare
- vital
- volume
- căldură
- a fost
- Cale..
- we
- slăbiciune
- web
- servicii web
- BINE
- au fost
- care
- în timp ce
- de ce
- voi
- cu
- în
- fără
- cuvinte
- Apartamente
- lucrător
- lucrări
- ar
- încă
- Tu
- Ta
- te
- zephyrnet