Programavimas

Kaip pasirinkti debesies mašinos mokymosi platformą

Norint sukurti efektyvius mašininio mokymosi ir giluminio mokymosi modelius, jums reikia daug duomenų, būdo išvalyti duomenis ir atlikti juose funkcijų inžineriją, taip pat išmokyti modelius naudoti savo duomenis per pagrįstą laiką. Tada jums reikia būdo, kaip pritaikyti modelius, stebėti, ar laikui bėgant jie nesikeičia, ir, jei reikia, perkvalifikuoti.

Visa tai galite atlikti vietoje, jei investavote į skaičiavimo išteklius ir greitintuvus, pvz., GPU, tačiau galite pastebėti, kad jei jūsų ištekliai yra pakankami, jie taip pat beveik neveikia. Kita vertus, kartais gali būti ekonomiškiau paleisti visą vamzdyną debesyje, prireikus naudojant didelius skaičiavimo išteklius ir greitintuvus, o tada juos atleidžiant.

„Tech Spotlight“: AI ir mašininis mokymasis

  • 5 mašininio mokymosi sėkmės istorijos: vidinis žvilgsnis (CIO)
  • Dirbtinis intelektas darbe: kitas jūsų bendradarbis gali būti algoritmas („Computerworld“)
  • Kiek saugūs yra jūsų dirbtinio intelekto ir mašininio mokymosi projektai? (CSO)
  • Kaip pasirinkti debesies kompiuterio mokymosi platformą ()
  • Kaip dirbtinis intelektas gali sukurti savarankiškus duomenų centrus („Network World“)

Pagrindiniai debesų tiekėjai ir keletas nedidelių debesų - dėjo daug pastangų kurdami savo mašininio mokymosi platformas, kad palaikytų visą mašinų mokymosi gyvavimo ciklą, pradedant projekto planavimu ir išlaikant modelį gamyboje. Kaip nustatyti, kuris iš šių debesų patenkins jūsų poreikius? Čia yra 12 galimybių, kurias turėtų suteikti kiekviena „nuo galo iki galo“ mašininio mokymosi platforma.

Būkite arti savo duomenų

Jei turite daug duomenų, reikalingų tiksliems modeliams sukurti, nenorite jų išsiųsti pusiaukelėje visame pasaulyje. Tačiau čia ne atstumas, o laikas: duomenų perdavimo greitį galiausiai riboja šviesos greitis, net ir tobulame tinkle su begaliniu pralaidumu. Dideli atstumai reiškia vėlavimą.

Idealus atvejis labai dideliems duomenų rinkiniams yra sukurti modelį, kuriame jau yra duomenys, kad nereikėtų masinio duomenų perdavimo. Kelios duomenų bazės tai palaiko ribotai.

Kitas geriausias atvejis yra tai, kad duomenys turi būti tame pačiame greitajame tinkle kaip ir modelio kūrimo programinė įranga, kuri paprastai reiškia tame pačiame duomenų centre. Net duomenų perkėlimas iš vieno duomenų centro į kitą debesų prieinamumo zonoje gali sukelti didelį vėlavimą, jei turite terabaitų (TB) ar daugiau. Tai galite sušvelninti atlikdami laipsniškus atnaujinimus.

Blogiausias atvejis būtų, jei tektų perkelti didelius duomenis dideliais atstumais keliais su ribotu pralaidumu ir dideliu vėlavimu. Trans-Ramiojo vandenyno kabeliai, einantys į Australiją, šiuo požiūriu yra ypač nemalonūs.

Palaikykite ETL arba ELT vamzdyną

ETL (eksportuoti, transformuoti ir įkelti) ir ELT (eksportuoti, įkelti ir transformuoti) yra dvi duomenų perdavimo linijos konfigūracijos, įprastos duomenų bazių pasaulyje. Mašininis mokymasis ir gilus mokymasis padidina jų poreikį, ypač transformacijos dalį. ELT suteikia jums daugiau lankstumo, kai reikia pakeisti transformacijas, nes įkrovos fazė dažniausiai užima daug laiko dideliems duomenims.

Apskritai duomenys laukinėje gamtoje yra triukšmingi. Tai reikia filtruoti. Be to, gamtoje esančių duomenų diapazonai skiriasi: vieno kintamojo maksimalus dydis gali būti milijonai, o kito - nuo -0,1 iki -0,001. Norint mokytis mašinoje, kintamieji turi būti transformuojami į standartizuotus intervalus, kad dideli diapazonai nebūtų dominuojantys modelyje. Kuris standartizuotas diapazonas tiksliai priklauso nuo modeliui naudojamo algoritmo.

Palaikykite internetinę modelių kūrimo aplinką

Įprasta išmintis buvo tokia, kad turėtumėte importuoti duomenis į darbalaukį, kad galėtumėte kurti modelį. Didelis duomenų kiekis, reikalingas geram mašininio mokymosi ir gilaus mokymosi modeliams sukurti, keičia vaizdą: Galite atsisiųsti nedidelę duomenų imtį į darbalaukį, kad galėtumėte atlikti tiriamąją duomenų analizę ir kurti modelius, tačiau gamybos modeliams reikia turėti prieigą prie visos informacijos. duomenis.

Tinklo kūrimo aplinkos, tokios kaip „Jupyter Notebooks“, „JupyterLab“ ir „Apache Zeppelin“, puikiai tinka kurti modelius. Jei jūsų duomenys yra tame pačiame debesyje, kaip ir nešiojamojo kompiuterio aplinka, galite pateikti analizę prie duomenų, sumažindami laiko reikalaujantį duomenų judėjimą.

Palaikykite didinimo ir išplėtimo mokymus

Sąsiuvinių skaičiavimo ir atminties reikalavimai paprastai yra minimalūs, išskyrus mokymo modelius. Labai padeda, jei užrašų knygelė gali sukurti mokymo užduotis, vykdomas keliose didelėse virtualiose mašinose ar konteineriuose. Taip pat labai padeda, jei mokymai gali pasiekti tokius greitintuvus kaip GPU, TPU ir FPGA; tai gali paversti treniruočių dienas valandomis.

Palaikykite „AutoML“ ir automatinę funkcijų inžineriją

Ne visiems sekasi rinktis mašininio mokymosi modelius, parinkti ypatybes (kintamuosius, kuriuos naudoja modelis) ir kurti naujas ypatybes iš neapdorotų stebėjimų. Net jei jums sekasi atlikti šias užduotis, jos užima daug laiko ir jas galima didžiąja dalimi automatizuoti.

„AutoML“ sistemos dažnai išbando daugelį modelių, kad sužinotų, kurios tikslinės funkcijos reikšmės yra geriausios, pavyzdžiui, mažiausia kvadrato paklaida regresijos problemoms spręsti. Geriausios „AutoML“ sistemos taip pat gali atlikti funkcijų inžineriją ir efektyviai naudoti savo išteklius siekdami geriausių įmanomų modelių su geriausiais įmanomais funkcijų rinkiniais.

Palaikykite geriausias mašininio mokymosi ir gilaus mokymosi sistemas

Daugelis duomenų mokslininkų turi mėgstamiausias mašininio ir gilaus mokymosi sistemas ir programavimo kalbas. Tiems, kurie mėgsta „Python“, „Scikit-learn“ dažnai yra mėgstamiausias mašininiam mokymuisi, o „TensorFlow“, „PyTorch“, „Keras“ ir „MXNet“ dažnai yra geriausi giluminio mokymosi pasirinkimai. „Scaloje“ mašininiam mokymuisi pirmenybė teikiama „Spark MLlib“. R yra daug vietinių mašininio mokymosi paketų ir gera sąsaja su „Python“. „Java“ sistemoje „H2O.ai“ vertina labai gerai, kaip ir „Java-ML“ bei „Deep Java Library“.

„Cloud machine“ mokymosi ir gilaus mokymosi platformos paprastai turi savo algoritmų rinkinį, ir jos dažnai palaiko išorines sistemas bent viena kalba arba kaip talpyklas su konkrečiais įėjimo taškais. Kai kuriais atvejais galite integruoti savo algoritmus ir statistinius metodus su platformos „AutoML“ galimybėmis, o tai yra gana patogu.

Kai kurios debesų platformos taip pat siūlo savo pačių pritaikytas pagrindinių giluminio mokymosi sistemų versijas. Pvz., AWS turi optimizuotą „TensorFlow“ versiją, kuri, jos teigimu, gali pasiekti beveik tiesinį mastelio pritaikymą giliųjų neuroninių tinklų treniruotėms.

Siūlykite iš anksto parengtus modelius ir palaikykite mokymąsi

Ne visi nori praleisti laiką ir apskaičiuoti išteklius mokydami savo modelius, taip pat neturėtų to daryti, kai yra iš anksto paruoštų modelių. Pavyzdžiui, „ImageNet“ duomenų rinkinys yra didžiulis, o šiuolaikinio giluminio neuroninio tinklo mokymas prieš jį gali užtrukti kelias savaites, todėl tikslinga tam naudoti iš anksto parengtą modelį, kai tik galite.

Kita vertus, iš anksto paruošti modeliai ne visada gali identifikuoti jums rūpimus objektus. Mokymasis perkelti gali padėti jums pritaikyti kelis paskutinius neuroninio tinklo sluoksnius pagal konkretų duomenų rinkinį be laiko ir išlaidų apmokant visą tinklą.

Siūlykite suderintas dirbtinio intelekto paslaugas

Pagrindinės debesų platformos siūlo patikimas, pritaikytas dirbtinio intelekto paslaugas daugeliui programų, ne tik atpažinti vaizdus. Pavyzdys apima kalbos vertimą, kalbą į tekstą, tekstą į kalbą, prognozavimą ir rekomendacijas.

Šios paslaugos jau buvo apmokytos ir patikrintos naudojant daugiau duomenų, nei paprastai gali turėti įmonės. Jie taip pat jau yra įdiegti paslaugų galiniuose taškuose, turėdami pakankamai skaičiavimo išteklių, įskaitant greitintuvus, kad būtų užtikrintas geras atsako laikas esant apkrovai visame pasaulyje.

Tvarkykite savo eksperimentus

Vienintelis būdas rasti geriausią duomenų rinkinio modelį yra išbandyti viską rankiniu būdu arba naudojant „AutoML“. Tai palieka dar vieną problemą: eksperimentų valdymas.

Gera debesies mašininio mokymosi platforma turės galimybę pamatyti ir palyginti kiekvieno eksperimento tikslines funkcijų reikšmes tiek mokymo rinkiniams, tiek testo duomenims, taip pat modelio dydį ir painiavos matricą. Galimybė visa tai pavaizduoti yra neabejotinas pliusas.

Palaikykite modelio diegimą prognozavimui

Turėdami būdą pasirinkti geriausią eksperimentą, atsižvelgdami į savo kriterijus, taip pat reikės paprasto modelio diegimo būdo. Jei naudojate kelis modelius tam pačiam tikslui, jums taip pat reikės paskirstyti srautą tarp jų, kad būtų galima atlikti a / b testavimą.

Stebėkite prognozavimo našumą

Deja, pasaulis linkęs keistis, o duomenys keičiasi kartu. Tai reiškia, kad negalite įdiegti modelio ir jo pamiršti. Vietoj to, jūs turite stebėti duomenis, pateiktus prognozėms laikui bėgant. Kai duomenys pradės reikšmingai keistis, palyginti su pradinio mokymo duomenų rinkinio pradiniu lygiu, turėsite perkvalifikuoti savo modelį.

Kontrolės išlaidos

Galiausiai jums reikia būdų kontroliuoti savo modelių išlaidas. Gamybos išvadų modelių diegimas dažnai sudaro 90% gilaus mokymosi išlaidų, o mokymas - tik 10% išlaidų.

Geriausias būdas numatyti išlaidas priklauso nuo jūsų apkrovos ir modelio sudėtingumo. Jei turite didelę apkrovą, galbūt galėsite naudoti greitintuvą, kad išvengtumėte daugiau virtualios mašinos egzempliorių. Jei jūsų apkrova yra kintama, galbūt galėsite dinamiškai pakeisti savo dydį arba egzempliorių ar talpyklų skaičių, kai krovinys kyla ar mažėja. Ir jei jūsų apkrova yra nedidelė arba kartais tenka, prognozėms apdoroti galite naudoti labai mažą egzempliorių su daliniu greitintuvu.

$config[zx-auto] not found$config[zx-overlay] not found