Estimarea corectă a incertitudinii predictive este fundamentală în aplicațiile care implică decizii critice. Incertitudinea poate fi utilizată pentru a evalua fiabilitatea predicțiilor modelului, pentru a declanșa intervenția umană sau pentru a decide dacă un model poate fi implementat în siguranță în sălbăticie.
Vă prezentăm Noroc, o bibliotecă open-source pentru cuantificarea incertitudinii. Fortuna oferă metode de calibrare, cum ar fi predicția conformă, care pot fi aplicate oricărei rețele neuronale antrenate pentru a obține estimări calibrate ale incertitudinii. Biblioteca acceptă în plus o serie de metode de inferență bayesiene care pot fi aplicate rețelelor neuronale profunde scrise în In. Biblioteca facilitează rularea benchmark-urilor și va permite practicienilor să construiască soluții AI robuste și fiabile, profitând de tehnicile avansate de cuantificare a incertitudinii.
Problema încrederii excesive în învățarea profundă
Dacă te-ai uitat vreodată la probabilitățile de clasă returnate de un clasificator de rețea neuronală profundă antrenat, s-ar putea să fi observat că probabilitatea unei clase a fost mult mai mare decât a celorlalte. Ceva de genul acesta, de exemplu:
p = [0.0001, 0.0002, …, 0.9991, 0.0003, …, 0.0001]
Dacă acesta este cazul pentru majoritatea predicțiilor, modelul dvs. ar putea fi prea încrezător. Pentru a evalua validitatea probabilităților returnate de clasificator, le putem compara cu acuratețea reală obținută pe un set de date holdout. Într-adevăr, este firesc să presupunem că proporția punctelor de date clasificate corect ar trebui să se potrivească aproximativ cu probabilitatea estimată a clasei prezise. Acest concept este cunoscut ca calibrare [Guo C. și colab., 2017].
Din păcate, multe rețele neuronale profunde antrenate sunt greșite calibrate, ceea ce înseamnă că probabilitatea estimată a clasei prezise este mult mai mare decât proporția punctelor de date de intrare clasificate corect. Cu alte cuvinte, clasificatorul este prea încrezător.
A fi prea încrezător ar putea fi problematic în practică. Este posibil ca un medic să nu comande teste suplimentare relevante, ca urmare a unui diagnostic sănătos excesiv de încrezător produs de o IA. O mașină care se conduce singur poate decide să nu frâneze, deoarece a evaluat cu încredere că obiectul din față nu era o persoană. Un guvernator poate decide să evacueze un oraș deoarece probabilitatea unui dezastru natural eminent estimat de o IA este prea mare. În aceste aplicații și în multe alte aplicații, estimările calibrate ale incertitudinii sunt esențiale pentru a evalua fiabilitatea predicțiilor modelului, pentru a reveni la un factor de decizie uman sau pentru a decide dacă un model poate fi implementat în siguranță.
Fortuna: O bibliotecă pentru cuantificarea incertitudinii
Există multe tehnici publicate pentru a estima sau a calibra incertitudinea predicțiilor, de exemplu, inferența bayesiană [Wilson AG, 2020], scalarea temperaturii [Guo C. și colab., 2017], și predicție conformă [Angelopoulos AN și colab., 2022] metode. Cu toate acestea, instrumentele și bibliotecile existente pentru cuantificarea incertitudinii au un domeniu de aplicare restrâns și nu oferă o gamă largă de tehnici într-un singur loc. Acest lucru are ca rezultat o cheltuieli generale semnificative, care împiedică adoptarea incertitudinii în sistemele de producție.
Pentru a umple acest gol, lansăm Fortuna, o bibliotecă pentru cuantificarea incertitudinii care reunește metode proeminente din literatura de specialitate și le pune la dispoziție utilizatorilor cu o interfață standardizată și intuitivă.
De exemplu, să presupunem că aveți încărcătoare de date de instruire, calibrare și testare tensorflow.Tensor
format, și anume train_data_loader
, calib_data_loader
și test_data_loader
. În plus, aveți un model de învățare profundă scris In, și anume model. Apoi poți folosi Fortuna pentru a:
- se potrivesc unei distribuții posterioare;
- calibrarea ieșirilor modelului;
- face previziuni calibrate;
- estimări de incertitudine;
- calculează valorile de evaluare.
Următorul cod face toate acestea pentru tine.
Codul de mai sus folosește mai multe opțiuni implicite, inclusiv SWAG [Maddox WJ și colab., 2019] ca metodă de inferență posterioară, scalarea temperaturii [Guo C. și colab., 2017] pentru a calibra ieșirile modelului și o distribuție anterioară gaussiană standard, precum și configurația proceselor de ajustare și calibrare posterioare. Puteți configura cu ușurință toate aceste componente și sunteți foarte încurajat să faceți acest lucru dacă căutați o anumită configurație sau dacă doriți să comparați mai multe.
Moduri de utilizare
Fortuna oferă trei moduri de utilizare: 1/ Pornind de la modelele Flax, 2 / Pornind de la ieșirile modelului, și 3/ Pornind de la estimările de incertitudine. Conductele lor sunt prezentate în figura următoare, fiecare pornind de la unul dintre panourile verzi. Fragmentul de cod de mai sus este un exemplu de utilizare a Fortunei pornind de la modelele Flax, care permite antrenarea unui model folosind proceduri de inferență bayesiană. Alternativ, puteți începe fie cu rezultatele modelului, fie direct de la propriile estimări ale incertitudinii. Ambele aceste din urmă moduri sunt independent de cadru și vă ajută să obțineți estimări calibrate ale incertitudinii pornind de la a model antrenat.
1/ Plecând de la estimările de incertitudine
Pornind de la estimările de incertitudine, are cerințe minime de compatibilitate și este cel mai rapid nivel de interacțiune cu biblioteca. Acest mod de utilizare oferă metode de predicție conformă atât pentru clasificare, cât și pentru regresie. Acestea preiau estimări ale incertitudinii în numpy.ndarray
formatează și returnează seturi riguroase de predicții care păstrează un nivel de probabilitate dat de utilizator. În sarcinile de regresie unidimensională, seturile conforme pot fi considerate versiuni calibrate ale intervalelor de încredere sau credibile.
Rețineți că, dacă estimările de incertitudine pe care le furnizați în intrări sunt inexacte, seturile conforme ar putea fi mari și inutilizabile. Din acest motiv, dacă aplicația dvs. permite acest lucru, vă rugăm să luați în considerare Pornind de la ieșirile modelului și Pornind de la modelele Flax moduri de utilizare detaliate mai jos.
2/ Pornind de la ieșirile modelului
Acest mod presupune că ați antrenat deja un model într-un anumit cadru și că ajungeți la Fortuna cu rezultate ale modelului numpy.ndarray
format pentru fiecare punct de date de intrare. Acest mod de utilizare vă permite să calibrați rezultatele modelului, să estimați incertitudinea, să calculați valorile și să obțineți seturi conforme.
În comparație cu Pornind de la estimările de incertitudine modul de utilizare, Pornind de la ieșirile modelului oferă un control mai bun, deoarece se poate asigura că estimările de incertitudine au fost calibrate corespunzător. Cu toate acestea, dacă modelul ar fi fost antrenat cu metode clasice, cuantificarea rezultată a incertitudinii modelului (aka epistemice) poate fi slabă. Pentru a atenua această problemă, vă rugăm să luați în considerare Pornind de la modelele Flax modul de utilizare.
3/ Pornind de la modelele Flax
Pornind de la modelele Flax are cerințe de compatibilitate mai mari decât cele Pornind de la estimările de incertitudine și Pornind de la ieșirile modelului moduri de utilizare, deoarece necesită modele de învățare profundă scrise In. Cu toate acestea, vă permite să înlocuiți antrenamentul standard al modelului cu proceduri de inferență Bayesiană scalabile, care pot îmbunătăți semnificativ cuantificarea incertitudinii predictive.
Metodele bayesiene funcționează prin reprezentarea incertitudinii asupra soluției corecte, având în vedere informații limitate, prin incertitudinea asupra parametrilor modelului. Acest tip de incertitudine se numește incertitudine „epistemică”. Deoarece rețelele neuronale pot reprezenta multe soluții diferite, corespunzătoare diferitelor setări ale parametrilor lor, metodele bayesiene pot avea un impact deosebit în învățarea profundă. Oferim multe proceduri de inferență Bayesiană scalabile, care pot fi adesea folosite pentru a furniza estimări ale incertitudinii, precum și o precizie și o calibrare îmbunătățite, fără a avea, practic, nicio suprasolicitare a timpului de antrenament.
Concluzie
Am anunțat disponibilitatea generală a Fortuna, o bibliotecă pentru cuantificarea incertitudinii în învățarea profundă. Fortuna reunește metode proeminente din literatura de specialitate, de exemplu, metode conforme, scalarea temperaturii și inferența bayesiană, și le pune la dispoziție utilizatorilor cu o interfață standardizată și intuitivă. Pentru a începe cu Fortuna, puteți consulta următoarele resurse:
Încercați Fortuna și spuneți-ne ce părere aveți! Sunteți încurajat să contribuiți la bibliotecă sau să lăsați sugestiile și contribuțiile dvs. – trebuie doar să creați un problema sau deschideți un trageți cererea. De partea noastră, vom continua să îmbunătățim Fortuna, să-i creștem acoperirea metodelor de cuantificare a incertitudinii și să adăugăm alte exemple care să-i arate utilitatea în mai multe scenarii.
Despre autori
Gianluca Detommaso este un om de știință aplicat la AWS. În prezent, lucrează la cuantificarea incertitudinii în învățarea profundă. În timpul liber, lui Gianluca îi place să practice sport, să mănânce mâncăruri grozave și să învețe noi abilități.
Alberto Gasparin este om de știință aplicat în cadrul Amazon Community Shopping din iulie 2021. Interesele sale includ procesarea limbajului natural, regăsirea informațiilor și cuantificarea incertitudinii. Este un pasionat de mâncare și vin.
Michele Donini este om de știință aplicat la AWS. El conduce o echipă de oameni de știință care lucrează la IA responsabilă, iar interesele sale de cercetare sunt corectitudinea algoritmică și învățarea automată explicabilă.
Matthias Seeger este cercetător principal aplicat la AWS.
Cedric Archambeau este cercetător principal aplicat la AWS și membru al Laboratorului European pentru Învățare și Sisteme Inteligente.
Andrew Gordon Wilson este profesor asociat la Institutul Courant de Științe Matematice și Centrul pentru Știința Datelor de la Universitatea din New York și academic vizitator Amazon la AWS. El este deosebit de implicat în construirea de metode pentru învățarea profundă bayesiană și probabilistică, procese gaussiene scalabile, optimizare bayesiană și învățarea automată inspirată de fizică.
- AI
- ai art
- ai art generator
- ai robot
- Învățare automată Amazon
- inteligență artificială
- certificare de inteligență artificială
- inteligența artificială în domeniul bancar
- robot cu inteligență artificială
- roboți cu inteligență artificială
- software de inteligență artificială
- Învățare automată AWS
- blockchain
- conferință blockchain ai
- coingenius
- inteligența artificială conversațională
- criptoconferință ai
- dall-e
- învățare profundă
- Fundamental (100)
- google ai
- masina de învățare
- Plato
- platoul ai
- Informații despre date Platon
- Jocul lui Platon
- PlatoData
- platogaming
- scara ai
- sintaxă
- zephyrnet