Diagrama alb-negru completată cu date.
Mări / MLPerf oferă o evaluare comparativă granulară detaliată pentru o gamă largă de platforme și arhitecturi. În timp ce majoritatea evaluării comparative a ML se concentrează pe antrenament, MLPerf se concentrează pe inferență – adică volumul de muncă pentru care utilizați o rețea neurală după a fost instruit.

Când doriți să vedeți dacă un procesor este mai rapid decât altul, aveți PassMark. Pentru GPU-uri, există Superpoziția Unigine. Dar ce faci atunci când trebuie să îți dai seama cât de rapid este platforma ta de învățare automată – sau cât de rapid este o platformă de învățare automată în care te gândești să investești?

David Kanter, expert în învățare automată, împreună cu oamenii de știință și ingineri din organizații precum Google, Intel și Microsoft, își propune să răspundă la această întrebare cu MLPerf, o suită de referință pentru învățare automată. Măsurarea vitezei platformelor de învățare automată este o problemă care devine mai complexă cu cât o examinați mai mult, deoarece atât seturile de probleme, cât și arhitecturile variază foarte mult în domeniul învățării automate – iar pe lângă performanță, latura de inferență a MLPerf trebuie să măsoare și ea precizie.

Instruire și infern

Dacă nu lucrați direct cu învățarea automată, este ușor să vă confundați cu privire la termeni. Primul lucru pe care trebuie să-l înțelegeți este faptul că rețelele neuronale nu sunt programate deloc: le este oferit (sperăm) un set mare de date conexe și s-au dezlănțuit asupra acestora pentru a găsi modele. Această fază a existenței unei rețele neuronale se numește antrenament. Cu cât formează mai mult o rețea neuronală, cu atât poate învăța să identifice tiparele și să deducă reguli care să o ajute să rezolve problemele.

Costul de calcul al fazei de instruire este masiv (nu glumim despre partea „mare” a setului de date). Ca exemplu, Google a instruit funcția SmartReply de la Gmail pe 238.000.000 de e-mail-uri, iar Google Translate a instruit pe trilioane de eșantioane. Sistemele concepute pentru instruire sunt, în general, enorme și puternice, iar misiunea lor este de a mesteca date cât se poate de rapid – ceea ce necesită subsisteme de stocare surprinzător de înfiorătoare, precum și procesare, pentru a menține conducta AI alimentată.

După ce rețeaua neuronală este instruită, obținerea operațiunilor utile și informații înapoi din aceasta se numește inferență. Inferența, spre deosebire de antrenament, este de obicei destul de eficientă. Dacă sunteți mai greu în informatică din școala veche decât în ​​ceea ce privește învățarea automată, acest lucru poate fi considerat similar cu relația dintre construirea unui arbore b sau un alt index eficient din datele nestructurate și apoi găsirea rezultatelor dorite de la indexul completat.

Cu siguranță, performanța contează încă atunci când se execută sarcini de lucru inferențe, dar valorile – și arhitectura – sunt diferite. Aceeași rețea neurală ar putea fi instruită pe supercomputere masive, în timp ce se efectuează inferențe mai târziu pe smartphone-urile bugetare. Faza de pregătire necesită cât mai multe operații pe secundă, cu puțină preocupare pentru latența oricărei operații. Faza de inferență este adesea invers: există un om care așteaptă rezultatele acelei interogări de inferență și omul devine foarte nerăbdător în timp ce așteaptă să afle câte girafe sunt în fotografia lor.

Spațiile mari cu probleme necesită răspunsuri complexe

Dacă sperați să obțineți un singur scor MLPerf pentru calculatorul dvs., nu aveți noroc. Repere holistice simple precum PassMark au luxul de a putea presupune că procesoarele pe care le testează sunt aproximativ similare în arhitectură și design. Sigur, AMD’s Epyc și Intel’s Scalable Xeon au puncte forte și puncte slabe individuale, dar sunt ambele procesoare x86_64 și există unele presupuneri relativ sigure pe care le puteți face cu privire la relațiile generale de performanță între o sarcină și următoarea pe oricare procesor. Este puțin probabil ca performanța în punct flotant să fie de ordinul mărimii mai rapid decât performanțele întregi de pe același procesor, de exemplu.

Deoarece Kanter și colegii săi doreau ca MLPerf să se aplice nu numai într-o gamă largă de sarcini de muncă, ci și într-un număr cu adevărat copleșitor de arhitecturi, nu au putut face presupuneri similare și, prin urmare, nu pot oferi hardware-ului dvs. de învățare automată un singur scor . Scorurile sunt defalcate pentru prima dată în sarcini, instrucțiuni și sarcini de instruire înainte de a fi împărțite în sarcini, modele, seturi de date și scenarii. Deci, rezultatul MLPerf nu este atât un scor, cât un rând deosebit de larg într-o foaie de calcul.

Sarcinile sunt clasificarea imaginii, detectarea obiectelor și traducerea limbajului natural. Fiecare sarcină este măsurată pe patru scenarii:

  • Un singur flux– performanță măsurată în latență
    Exemplu: o aplicație de cameră pentru smartphone care funcționează cu o singură imagine simultan
  • Flux multiplu– performanța măsurată în numărul de fluxuri posibile (sub rezerva latenței legate)
    Exemplu: un algoritm de asistență la conducere eșantionând mai multe camere și senzori
  • Server– performanță măsurată în interogări pe secundă (sub rezerva latenței limitate)
    Exemplu: site-uri de traducere a limbii sau alte aplicații masive paralele, dar în timp real
  • Deconectat– performanță măsurată în randament brut
    Exemplu: activități precum sortarea fotografiilor și crearea automată a albumelor, care nu sunt inițiate de utilizator și nu sunt prezentate utilizatorului până la finalizare.

MLPerf separă, de asemenea, seturile de rezultate de referință în „diviziuni” Deschise și Închise, cu cerințe mai stricte pentru diviziunea Închis; de acolo, hardware-ul este, de asemenea, separat în categorii de sistem de Disponibil, Previzualizare și RDO (Cercetare, Dezvoltare, Altele). Acest lucru oferă cititorilor de referință o idee despre cât de aproape de producția reală sunt sistemele băncate și dacă unul poate fi achiziționat chiar de pe raft.

Mai multe informații despre sarcini, modele, seturi de date și constrângeri pentru suita de referință de referință pot fi găsite aici.

Rezultate inițiale

Până în prezent, aproape 600 de repere au fost prezentate proiectului de la furnizori de cloud, OEM-uri de sistem, furnizori de cipuri și software și universități. Deși interpretarea rezultatelor necesită în continuare o cantitate corectă de cunoștințe din lumea reală, este impresionant să găsești un singur sistem cuprinzător care să poată analiza un smartphone, un supercomputer și un cluster de scară hyperscale cot la cot într-un mod semnificativ.

Suita de referință de instruire a MLPerf a fost lansată în mai 2018, cu rezultatele inițiale postate în decembrie 2018. Suite inferență a fost lansată 24 iunie 2019, iar rezultatele inițiale au fost transmise ieri, 6 noiembrie.

Sursa articol

LĂSAȚI UN MESAJ

Please enter your comment!
Please enter your name here