Noua serie de bloguri – Memoriile unui dezvoltator TorchVision PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Noua serie de bloguri – Memoriile unui dezvoltator TorchVision

Noua serie de bloguri – Memoriile unui dezvoltator TorchVision

Încep o nouă serie de postări pe blog despre dezvoltarea bibliotecii de viziune computerizată a lui PyTorch. Plănuiesc să discut despre funcțiile viitoare interesante, în primul rând de la TorchVision și secundar din ecosistemul PyTorch. Ținta mea este să evidențiez funcțiile noi și în curs de dezvoltare și să ofer claritate a ceea ce se întâmplă între versiuni. Deși este posibil ca formatul să se schimbe în timp, inițial plănuiesc să-l păstrez de dimensiuni mici și să ofer referințe pentru cei care doresc să sape mai adânc. În sfârșit, în loc să public articole pe intervale fixe, voi posta când voi avea suficiente subiecte interesante de tratat.

Avertisment: Caracteristicile acoperite vor fi orientate către subiecte care mă interesează personal. Ecosistemul PyTorch este masiv și am vizibilitate doar pe o mică parte a acestuia. Acoperirea (sau neacoperirea) unei caracteristici nu spune nimic despre importanța acesteia. Opiniile exprimate sunt numai ale mele.

Cu asta din drum, să vedem ce se gătește:

Etichetare Smoothing pentru pierderea CrossEntropy

O funcție foarte solicitată pe PyTorch este să susține ținte moi și adăugați o opțiune de netezire a etichetelor în pierderea Cross Entropy. Ambele caracteristici vizează facilitarea procesului de netezire a etichetelor, prima opțiune oferind mai multă flexibilitate atunci când tehnicile de creștere a datelor, cum ar fi confuzie/cutmix sunt folosite iar al doilea fiind mai performant pentru cazurile simple. Opțiunea ținte blânde a fost deja fuzionat pe master de Joel Schlosser în timp ce opțiunea label_smoothing este în curs de dezvoltare de Thomas J. Fan și este în prezent în curs de revizuire.

Noul programator de încălzire

Încălzirea ratei de învățare este o tehnică comună folosită la antrenamentul modelelor, dar până acum PyTorch nu a oferit o soluție standard. Recent, Ilqar Ramazanli are introdus un nou Scheduler care susține încălzirea liniară și constantă. Momentan în desfășurare este de lucru îmbunătățirea capacității de lanț și combinaţie a programatorilor existente.

TorchVision cu „Baterie incluse”

În această jumătate lucrăm la adăugarea în TorchVision a modele populare, pierderi, programatori, creșteri de date și alte utilități utilizate pentru a obține rezultate de ultimă generație. Acest proiect se numește pe bună dreptate „baterii incluse” și este în prezent In progres.

La începutul acestei săptămâni, am a adăugat un nou strat denumit StochasticDepth care poate fi folosit pentru a elimina aleatoriu ramuri reziduale în arhitecturile reziduale. Momentan lucrez la adăugarea unei implementări a arhitecturii de rețea populare numită EfficientNet. În cele din urmă, Allen Goodman este în prezent adăugarea unui nou operator care va permite conversia Măști de segmentare în cutii de delimitare.

Alte caracteristici în curs de dezvoltare

Am crezut că facem în mod constant îmbunătățiri incrementale ale documentației, infrastructurii CI și calității generale a codului, mai jos evidențiez câteva dintre „care se confruntă cu utilizatorul” articole din foaia de parcurs care sunt în curs de dezvoltare:

Asta este! Sper că l-ai găsit interesant. Orice idee despre modul de adaptare a formatului sau despre subiectele de acoperit sunt binevenite. Lovi-mă LinkedIn or Twitter.

Timestamp-ul:

Mai mult de la Datumbox