Umetna inteligenca na robu ne pomeni več umetne inteligence

Izvorno vozlišče: 1579936

Eden od vidikov prejete modrosti o AI je bil, da se vse inovacije začnejo v velikih strojih za strojno učenje/usposabljanje v oblaku. Nekatere od teh inovacij se lahko sčasoma preselijo v zmanjšani/omejeni obliki na rob. Deloma je to odražalo novost področja. Morda je delno odražalo tudi potrebo po predpakiranih rešitvah, ki ustrezajo številnim, za pripomočke IoT. Kjer so oblikovalci želeli pamet v svojih izdelkih, vendar niso bili povsem pripravljeni postati strokovnjaki za oblikovanje ML. Toda zdaj ti oblikovalci dohitevajo. Berejo ista sporočila za javnost in raziskujejo, kot jih počnemo vsi, tako kot njihovi konkurenti. Želijo izkoristiti enak napredek, pri tem pa se držati omejitev moči in stroškov.

Umetna inteligenca na robu ne pomeni več umetne inteligence

Prepoznavanje obraza

Diferenciacija AI na robu

Vse je v diferenciaciji znotraj sprejemljivega razmerja med ceno in močjo. To je težko doseči s predpakiranimi rešitvami. Navsezadnje imajo konkurenti dostop do enakih rešitev. Tisto, kar resnično želite, je nabor možnosti algoritma, modeliranih v procesorju kot namenski pospeševalnik, pripravljen za uporabo, z možnostjo dodajanja vrednosti na vašo lastno programsko opremo. Morda mislite, da tukaj ne morete storiti veliko, razen skrbništva in prilagajanja. Časi so se spremenili. CEVA je nedavno predstavila svoj vgrajeni procesor umetne inteligence NeuPro-M, ki omogoča optimizacijo z uporabo nekaterih najnovejših napredkov ML, globoko v načrtovanje algoritmov.

V redu, torej več nadzora nad algoritmom, ampak s kakšnim namenom? Želite optimizirati zmogljivost na vat, vendar je standardna metrika – TOPS/W – pregroba. Aplikacije za slikanje je treba meriti glede na število sličic na sekundo (fps) na vat. Za varnostne aplikacije, avtomobilsko varnost ali izogibanje trčenju brezpilotnih letal so časi prepoznave na sličico veliko pomembnejši od neobdelanih operacij na sekundo. Platforma, kot je NeuPro-M, ki lahko načeloma zagotavlja do tisoč sličic na sekundo/W, bo obvladovala realne hitrosti sličic na sekundo 30–60 sličic na sekundo pri zelo nizki moči. To je pravi napredek v primerjavi s tradicionalnimi predpakiranimi rešitvami AI.

Omogočanje

Vrhunski algoritmi so zgrajeni z izbiro funkcij, o katerih ste prebrali, začenši s širokim naborom možnosti kvantizacije. Enako velja za raznolikost tipov podatkov pri aktivaciji in uteži v razponu bitnih velikosti. Nevronska multiplikatorska enota (NMU) optimalno podpira več možnosti bitne širine za aktivacijo in uteži, kot sta 8×2 ali 16×4, podpira pa tudi različice, kot je 8×10.

Procesor podpira Winograd Transforms ali učinkovite konvolucije, kar zagotavlja do 2-kratno povečanje zmogljivosti in zmanjšano moč z omejeno degradacijo natančnosti. Modelu dodajte motor redkosti za do 4-kratni pospešek, odvisno od količine ničelnih vrednosti (bodisi v podatkih ali uteži). Tukaj enota nevronskega množitelja podpira tudi vrsto tipov podatkov, fiksnih od 2×2 do 16×16 in plavajoče vejice (in Bfloat) od 16×16 do 32×32.

Logika pretakanja ponuja možnosti za skaliranje s fiksno točko, aktivacijo in združevanje. Vektorski procesor vam omogoča, da modelu dodate lastne plasti po meri. »Pa kaj, vsi to podpirajo«, si boste morda mislili, a spodaj si oglejte prepustnost. Obstaja tudi nabor funkcij AI naslednje generacije, vključno s transformatorji vida, 3D konvolucijo, podporo za RNN in razgradnjo matrike.

Veliko možnosti algoritmov, vse podprte z omrežno optimizacijo vaše vdelane rešitve prek ogrodja CDNN, da v celoti izkoristite moč svojih algoritmov ML. CDNN je kombinacija prevajalnika grafov za sklepanje omrežij in namenskega dodatnega orodja PyTorch. To orodje bo zmanjšalo model, po želji podpira stiskanje modela z razgradnjo matrike in dodaja ponovno usposabljanje, ki upošteva kvantizacijo.

Optimizacija pretoka

V večini sistemov umetne inteligence se lahko nekatere od teh funkcij izvajajo v specializiranih motorjih, ki zahtevajo raztovarjanje podatkov in nalaganje pretvorbe nazaj, ko je dokončana. To je veliko dodane zakasnitve (in morda kompromisov glede moči), kar popolnoma spodkopava zmogljivost vašega sicer močnega modela. NeuPro-M to težavo odpravi s povezavo vse te pospeševalnike neposredno v skupni predpomnilnik L1. Ohranjanje veliko večje pasovne širine, kot jo boste našli v običajnih pospeševalnikih.

Kot osupljiv primer je vektorska procesna enota, ki se običajno uporablja za definiranje plasti po meri, na isti ravni kot drugi pospeševalniki. Vašim algoritmom, implementiranim v VPU, koristi enak pospešek kot preostali model. Za pospešitev slojev po meri spet ni potrebno razkladanje in ponovno nalaganje. Poleg tega lahko imate do 8 teh pogonov NPM (vsi pospeševalniki in predpomnilnik NPM L1). NeuPro-M ponuja tudi znatno raven programsko nadzorovane optimizacije pasovne širine med predpomnilnikom L2 in predpomnilnikom L1, kar optimizira ravnanje z okvirji in zmanjša potrebo po dostopih DDR.

Seveda bo NeuPro-M zmanjšal tudi promet podatkov in teže. Za podatke si pospeševalci delijo isti predpomnilnik L1. Gostiteljski procesor lahko posreduje podatke neposredno z NeuPro-M L2, kar ponovno zmanjša potrebo po DDR prenosih. NeuPro-M stisne in razpakira uteži na čipu pri prenosu s pomnilnikom DDR. Enako lahko stori z aktivacijami.

Dokaz v pospeševanju fps/W

CEVA je izvajala standardne primerjalne preizkuse z uporabo kombinacije algoritmov, modeliranih v pospeševalnikih, od izvirnega prek Winograda do Winograd+Sparsity do Winograd+Sparsity+4×4. Oba primerjalna preizkusa sta pokazala izboljšave zmogljivosti do 3-krat, z močjo (fps/W) za približno 5-krat za ponudnika internetnih storitev NN. Rešitev NeuPro-M je zagotovila manjšo površino, 4-kratno zmogljivost, 1/3 moči v primerjavi z njihovo prejšnjo generacijo NeuPro-S.

Obstaja trend, ki ga opažam bolj na splošno, da dosežemo največjo zmogljivost s kombiniranjem več algoritmov. Kar je CEVA zdaj omogočila s to platformo. Lahko preberete več TUKAJ.

Delite to objavo prek: Vir: https://semiwiki.com/artificial-intelligence/306655-ai-at-the-edge-no-longer-means-dumbed-down-ai/

Časovni žig:

Več od Semiwiki