211service.com
Mašīnmācīšanās panākumi balstās uz mērogojamību
Nodrošina Arm
Stīvs Rodijs ir Arm mašīnmācības grupas viceprezidents.
Pārmaiņas ir pastāvīgas, un mākslīgais intelekts (AI) un mašīnmācīšanās (ML) maina visu no jauna. Izstrādātājiem, kuri cenšas laist tirgū jaunus produktus un pakalpojumus, kas izmanto AI un ML, izaicinājumus sarežģī fakts, ka tehnoloģiju ainava joprojām attīstās.
Atšķirībā no tradicionālā iegultā sektora, kurā ir lineāra sakarība starp vajadzību pēc lielākas apstrādes veiktspējas un veiktspējas izmantošanas veidu, pastāv atšķirības starp AI un ML, kā arī aparatūras platformām, kurās tie darbosies: ML nepārtraukti mainās.
Apmeklējiet satura centru
Mērogojama mašīnmācība
Atteikšanās no secīgas domāšanas
ML, visticamāk, tiks izmantota visur, tāpat kā mūsdienās tiek izmantota tradicionālā iegultā programmatūra. Tomēr atšķirībā no tradicionālā koda, kas tiek rakstīts rindu pa rindiņai secīgā shēmā (pat ja tiek izmantota automātiskā ģenerēšana), ML tiks izvietoti kā modeļi, ko veido ietvari, kas mācās. Modeļi ļoti reālā nozīmē tiks dzimuši. Un tāpat kā jebkura veida pēcnācēji, jūs nekad nevarat būt pārliecināti par to, ko jūs iegūsit, līdz tas ieradīsies.
Izstrādātājiem iegultās programmatūras paredzamā būtība izzudīs vai būtiski mainīsies. Tiek izstrādāti rīki, kas palīdz paredzēt, kā modelis darbosies, vai uzliks noteiktus ierobežojumus tam, kā modelis tiek veidots, lai tas atbilstu platformai, taču tie ir topošie un nekādā ziņā nav panaceja. Iespējams, ka, pielāgojoties sistēmas ierobežojumiem, tiks zaudēta precizitāte. ML būtība ir tāda, ka tā nodrošina nodrošinātajā aparatūrā nepieciešamo precizitāti. No tā izriet, ka, ja aparatūra spēj pielāgoties, jūs varat izvairīties no precizitātes kompromisiem.

Mašīnmācībai nav neviena universāla, kas derētu visiem. Inženieriem ir jāizstrādā sistēmas, kas piedāvā mērogojamu veiktspēju un var pielāgot piegādātā apstrādes resursa veidu, pamatojoties uz konkrēto uzdevumu.
Mainīsies arī veids, kā modelis darbojas uz fiksētas aparatūras platformas. Iegultās programmatūras paredzamība jau sen ir bijusi dizaina galvenais balsts; Patiešām, ideja, ka koda īpašības mainīsies pēc tā izvietošanas, ir inženieru murgi. Iegultās sistēmas tiek izstrādātas, pamatojoties uz veiktspējas parametriem, kas ir balstīta uz jaudu, izmaksām, siltuma izkliedi, izmēru, svaru un jebkādu izmērāmu datu skaitu, ko var savstarpēji izmainīt, lai sasniegtu noteiktos mērķus. Tas būtībā ir veids, kā iegultā izstrāde vienmēr ir veikta, bet tas nav veids, kā tas tiks darīts nākotnē.
Mērogojamība ir jauna norma
Tā vietā inženieriem būs jāizstrādā sistēmas, kas piedāvā mērogojamu veiktspēju, kas spēj dinamiski pielāgot apstrādes resursa veidu, ko tie nodrošina, pamatojoties uz konkrēto uzdevumu. Tas atšķiras no tā, ar ko iegultie inženieri šobrīd varētu būt apmierināti. Dažus gadus iegultajiem procesoriem ir bijusi iespēja mainīt savu darba frekvenci un barošanas spriegumu atkarībā no darba slodzes. Būtībā procesora kodols var darboties lēnāk, ja tas nav aizņemts; Galvenās pulksteņa frekvences samazināšana tieši nozīmē mazāku tranzistoru ieslēgšanas un izslēgšanas skaitu sekundē, kas ietaupa enerģiju. Kad kodolam patiešām ir jābūt aizņemtam, pulksteņa frekvence tiek palielināta, palielinot caurlaidspēju. Pastāv saistība starp barošanas spriegumu un pulksteņa frekvenci; samazinot abus, tiek palielināts saglabātās jaudas apjoms. Ar šāda veida mērogošanu nepietiks, lai nodrošinātu jaudu un veiktspēju, kas nepieciešama iegultajās ierīcēs, kuras pašlaik tiek izstrādātas, lai darbinātu ML modeļus.
Tas ir tāpēc, ka mainīsies veids, kā mēs novērtējam veiktspēju. Pašlaik procesorus parasti mēra ar darbību skaitu sekundē; mēs tagad to mēra teraopos jeb triljonos operāciju sekundē (TOPS). TOPS izmantošana, lai izmērītu procesora veiktspēju, izpildot secinājumus, nebūs tik jēga, kā tas ir, izpildot secīgu kodu, jo modeļa darbības veids nav tieši salīdzināms ar parasto iegulto programmatūru. ML procesori tiks mērīti pēc precizitātes, ko tie sasniedz, veicot noteiktu skaitu secinājumu sekundē ar noteiktu jaudas daudzumu. Mums vēl nav standarta metrikas tam, taču mēs varam teikt, ka vienkārša pulksteņa frekvences palielināšana, lai sasniegtu secinājumus/s, nav garantēta un, iespējams, samazinās enerģijas budžetu, neuzlabojot precizitāti.
Ceļš uz secinājumiem ir piepildīts ar mainīgajiem lielumiem
Kāpēc? Iemesls ir ML modeļu darbības veidā. Ar daudziem varbūtības slāņiem ir tikpat daudz mainīgo, kas var mainīt ceļu caur šiem slāņiem. Reālajai pasaulei būs daudz lielāka ietekme uz to, kā ML modeļi darbojas, ar daudz lielāku mainīgumu nekā lineārais secīgais iegultais kods. Kā piemēru ņemiet dabiskās valodas apstrādi un runas atpazīšanu: runātāja balsij un ritmam būs nozīme modeļa iedarbībā, taču var būt arī šo parametru mijiedarbība, kas dažādos apstākļos rada atšķirīgu pieredzi. Vienkārša procesora ātruma palielināšana šajā gadījumā var nesniegt vēlamo rezultātu.
Turklāt viena no ML noteicošajām iezīmēm ir tās spēja mācīties. Pat ja pastiprināšanas mācīšanās netiek lietota pašā ierīcē, joprojām ir iespējams, ka dati tiks atgriezti lieldatorā, kur modelis var tikt pielāgots, pamatojoties uz novērotajiem rezultātiem. Pat bez šīm atsauksmēm, visticamāk, modelis laika gaitā tiks uzlabots, tikai tāpēc, ka ML joprojām attīstās. Tas novestu pie jauna modeļa izveides un izvietošanas (piemēram, izmantojot bezvadu atjauninājumus), kuram pēc tam, iespējams, būs pilnīgi atšķirīgas apstrādes prasības, kas tādos pašos vai līdzīgos apstākļos darbosies atšķirīgi.
ML modeļu mainīgais raksturs nozīmē, ka, lai gan pašreizējās CPU arhitektūras var izmantot un tiek izmantotas ML, mūsdienu arhitektūras gandrīz noteikti nevar nodrošināt optimālāko veidu to izpildei. Jā, modeļi var darboties ar CPU, izmantojot visas parastās ALU funkcijas, kas atrodamas lielākajā daļā procesoru. Viņi var arī gūt labumu no ļoti paralēlām arhitektūrām, kurās ir ļoti daudz šo funkciju gadījumu, piemēram, GPU, taču jau tagad ir skaidrs, ka GPU nav labākais veids, kā izpildīt ML modeļus. Patiesībā mums jau ir neironu apstrādes vienību piemēri, un pusvadītāju nozare smagi strādā, izstrādājot pilnīgi jaunas arhitektūras efektīvākai ML modeļu izpildei. Kādā brīdī aparatūra vai programmatūra tiek fiksēta, lai ļautu otrai virzīties uz priekšu. Pareizais veids, kā to risināt, ir apņemties izmantot kopēju programmatūras ietvaru, ko var izmantot saderīgās, bet mērogojamās aparatūras platformās, lai abas attīstītos kopā.
Elastīgas neviendabīgas arhitektūras
Šādi rīkojoties, AI un ML atbalstam nepieciešamo mērogojamību var paplašināt no tīkla kodola līdz pašai malai, nebloķējot arhitektūru līdz fiksētai platformai. Project Trillium ir Arm neviendabīgā ML skaitļošanas platforma, kas sastāv no kodoliem un programmatūras. Arm paplašina projektu Trillium, lai risinātu ML katrā tīkla punktā. Kopējā programmatūras platforma šeit ir Arm neironu tīkla programmatūras bibliotēkas Arm NN, kas var darboties visās Arm procesoru platformās un ir saderīgas arī ar vadošajām trešo pušu neironu tīklu sistēmām. Aparatūrā ietilpst esošie Arm Cortex-A un Arm Mali GPU procesori, kas tiek uzlaboti AI un ML, kā arī pilnīgi jauni procesori ML paātrināšanai.
Mērogojamības ziņā ML var darboties un darbojas procesoros, kas ir tik mazi un ar ierobežotiem resursiem Cortex-M klasē un tikpat daudz funkcijām kā Mali GPU. Tomēr ir nepieciešama patiesa mērogojamība, lai apmierinātu visas ML vajadzības no kodola līdz malai, un tas ir vieta, kur notiek nākamais process procesora evolūcijas solis. Neironu apstrādes vienības jeb NPU ir jaunās paaudzes procesoru arhitektūra, kas atbalstīs ML. vairākās lietojumprogrammās.
Tikai Arm piedāvā šāda līmeņa mērogojamību visā ML ainavā. Izvēloties mērogojamu arhitektūru, kas var sastāvēt no MCU, CPU, GPU un NPU, palīdzēs nākotnes aparatūras platformām pretoties jaunām programmatūras lietojumprogrammām, kuras vēl nav izveidotas.
Ir daudz nezināmo attiecībā uz to, kādus ML modeļus mēs veidosim nākotnē, cik liela skaitļošanas jauda tiem būs nepieciešama, lai nodrošinātu vēlamo precizitāti, cik ātri datorzinātnieki varēs uzlabot modeļus, lai tiem būtu nepieciešams mazāk enerģijas. no šiem apsvērumiem ir tieša ietekme uz pamatā esošo aparatūru. Vienīgais, ko mēs zinām, ir tas, ka, lai apmierinātu galalietotāju mainīgās cerības, ir nepieciešama elastīga un mērogojama platforma.
