Vähendage süvaõppe koolitusaega ja -kulusid AWS PlatoBlockchain Data Intelligence'i MosaicML Composeri abil. Vertikaalne otsing. Ai.

Vähendage süvaõppe koolitusaega ja -kulusid AWS-i MosaicML Composeri abil

Viimase kümnendi jooksul oleme näinud Süvaõppe (DL) teaduse võtsid AWS-i kliendid tohutu kiirusega kasutusele. DL-mudelite rohketel ja ühiselt koolitatud parameetritel on suur esitusvõime, mis tõi kaasa täiustusi paljudes klientide kasutusjuhtudes, sealhulgas pildi- ja kõneanalüüsis, loomuliku keele töötlemises (NLP), aegridade töötlemises ja mujal. Selles postituses tõstame esile väljakutsed, millest tavaliselt teatatakse spetsiaalselt DL-koolituses, ja kuidas avatud lähtekoodiga raamatukogu MosaicML helilooja aitab neid lahendada.

Väljakutse DL-koolitusega

DL-mudeleid treenitakse iteratiivselt, pesastatud tsüklis. Tsükkel itereerub koolitusandmestiku tükkhaaval ja vajadusel korratakse seda tsüklit mitu korda kogu andmestiku ulatuses. DL-koolitusega tegelevad ML-praktikud seisavad silmitsi mitme väljakutsega:

  • Koolituse kestus pikeneb koos andmete mahuga. Pidevalt kasvavate andmekogumite korral kasvavad ka koolitusajad ja -kulud ning teaduslike avastuste rütm aeglustub.
  • DL-skriptid nõuavad sageli standardkoodi, eriti ülalmainitud topeltsilmuse struktuuri, mis jagab andmestiku minipartiideks ja koolituse ajajärkudeks.
  • Valiku paradoks: avaldatakse mitu koolituse optimeerimise dokumenti ja raamatukogu, kuid pole selge, millist neist kõigepealt testida ja kuidas nende mõjusid kombineerida.

Viimastel aastatel on mitmed avatud lähtekoodiga raamatukogud, näiteks Keras, PyTorchi välk, Kallistavad näomuunduridja Ray rong on püüdnud muuta DL-koolituse kättesaadavamaks, eelkõige vähendades koodi paljusõnalisust, lihtsustades seeläbi närvivõrkude programmeerimist. Enamik neist teekidest on keskendunud arendaja kogemusele ja koodi kompaktsusele.

Selles postituses tutvustame uut avatud lähtekoodiga raamatukogu, mis võtab DL-koolituse suhtes teistsuguse seisukoha: MosaicML helilooja on kiiruskeskne raamatukogu, mille esmane eesmärk on muuta närvivõrgu koolitusskriptid algoritmilise uuenduse abil kiiremaks. Pilve DL-i maailmas on mõistlik keskenduda kiirusele, sest arvutustaristut makstakse sageli kasutuse kohta – isegi kuni sekundini. Amazon SageMakeri koolitus- ja kiiruse paranemine võib tähendada raha kokkuhoidu.

Ajalooliselt on DL-treeningu kiirendamine toimunud enamasti mudelite iteratsioone paralleelselt arvutavate masinate arvu suurendamisega, tehnika nn. andmete paralleelsus. Kuigi andmete paralleelsus mõnikord kiirendab treeningut (ei ole garanteeritud, kuna see häirib lähenemist, nagu on rõhutatud Goyal et al.), ei vähenda see töö üldkulusid. Praktikas kipub see seda suurendama masinatevahelise side üldkulude ja kõrgema masinaühiku maksumuse tõttu, kuna hajutatud DL-masinad on varustatud tipptasemel võrguühenduse ja serverisisese GPU-ühendusega.

Kuigi MosaicML Composer toetab andmete paralleelsust, erineb selle põhifilosoofia andmete paralleelsuse liikumisest. Selle eesmärk on kiirendada koolitust ilma rohkem masinaid nõudmata, tehes uuendusi teadusliku juurutamise tasemel. Seetõttu on selle eesmärk saavutada aja kokkuhoid, mis tooks AWS-i kasutuspõhise tasu struktuuri tõttu kaasa kulude kokkuhoiu.

Tutvustame avatud lähtekoodiga raamatukogu MosaicML Composer

MosaicML Composer on avatud lähtekoodiga DL-i koolitusteek, mis on loodud selleks, et oleks lihtne tuua uusimaid algoritme ja koostada need uudseteks retseptideks, mis kiirendavad mudelikoolitust ja aitavad parandada mudeli kvaliteeti. Selle kirjutamise ajal toetab see PyTorchi ja sisaldab 25 tehnikat - nn meetodid MosaicML-i maailmas – koos standardmudelite, andmekogumite ja võrdlusnäitajatega

Helilooja on saadaval pipi kaudu:

pip install mosaicml

Composeris rakendatud kiirendamistehnikatele pääseb juurde selle funktsionaalse API kaudu. Näiteks rakendab järgmine väljavõte BlurPool TorchVision ResNeti tehnoloogia:

import logging

from composer import functional as CF
import torchvision.models as models
logging.basicConfig(level=logging.INFO)

model = models.resnet50()
CF.apply_blurpool(model)

Soovi korral võite kasutada ka a Treener oma tehnikakombinatsiooni koostamiseks:

from composer import Trainer
from composer.algorithms import LabelSmoothing, CutMix, ChannelsLast

trainer = Trainer(
    model=.. # must be a composer.ComposerModel
    train_dataloader=...,
    max_duration="2ep",  # can be a time, a number of epochs or batches
    algorithms=[
        LabelSmoothing(smoothing=0.1),
        CutMix(alpha=1.0),
        ChannelsLast(),
    ]
)

trainer.fit()

Composeris rakendatud meetodite näited

Mõned Composeris saadaolevad meetodid on spetsiifilised arvutinägemisele, näiteks pildi suurendamise tehnikad ColOut, Väljalõigevõi Progressiivne pildi suuruse muutmine. Teised on spetsiifilised jada modelleerimisele, näiteks Jada pikkuse soojendus or ALiBi. Huvitav on see, et mitmed on kasutusjuhtumi suhtes agnostikud ja neid saab rakendada mitmesugustele PyTorchi närvivõrkudele peale arvutinägemise ja NLP. Need üldised närvivõrgu koolituse kiirendamise meetodid hõlmavad Sildi silumine, Selective Backprop, Stohhastiline kaalu keskmistamine, Kihi külmutamineja Teravusteadlik minimeerimine (SAM).

Sukeldume sügavalt mõnda neist, mida MosaicML-i meeskond pidas eriti tõhusaks:

  • Teravusteadlik minimeerimine (SAM) on optimeerija, mis minimeerib nii mudeli kadumise funktsiooni kui ka selle teravuse, arvutades iga optimeerimisetapi jaoks kaks korda gradiendi. Täiendava arvutuse piiramiseks läbilaskevõime karistamiseks saab SAM-i perioodiliselt käitada.
  • Tähelepanu lineaarsete kõrvalekalletega (ALiBi), inspireeritud Press et al., on spetsiifiline Transformerite mudelitele. See eemaldab vajaduse positsiooniliste manustamiste järele, asendades need mitteõppitud tähelepanuraskustega.
  • Selective Backprop, inspireeritud Jiang et al., võimaldab käivitada tagasilevi (algoritmid, mis parandavad mudeli kaalu, järgides selle veakaldeid) ainult suure kadufunktsiooniga kirjetel. See meetod aitab vältida tarbetut arvutustööd ja aitab parandada läbilaskevõimet.

Nende tehnikate kättesaadavus ühes kompaktses treeningraamistikus on ML-praktikute jaoks märkimisväärne lisandväärtus. Väärtuslik on ka praktiline tagasiside, mida MosaicML-i meeskond koostab iga testitud ja hinnatud tehnika kohta. Arvestades aga nii rikkalikku tööriistakasti, võite küsida: millist meetodit ma kasutan? Kas on ohutu kombineerida mitme meetodi kasutamist? Sisestage MosaicML Explorer.

MosaicML Explorer

MosaicML-i meeskond säilitab DL-i treeningmeetodite väärtuse ja ühilduvuse kvantifitseerimise uurija, esimene omataoline reaalajas armatuurlaud, mis kujutab kümneid DL-i treeningkatseid viie andmekogumi ja seitsme mudeli kaudu. Armatuurlaual on kujutatud pareto optimaalne piir kulu/aja/kvaliteedi kompromissis ning võimaldab sirvida ja leida parima tulemuse saanud meetodite kombinatsioone – nn. retseptid MosaicML maailmas – antud mudeli ja andmestiku jaoks. Näiteks näitavad järgmised graafikud, et 125M parameetriga GPT2 koolituse jaoks saadakse odavaima koolituse, mis säilitab hämmelduse 24.11, kombineerides AliBi, Sequence Length Warmup ja Scale Schedule, mille maksumus on AWS-i pilves umbes 145.83 dollarit! Pange tähele, et see kuluarvestus ja selles postituses järgmised põhinevad ainult EC2 tellitaval arvutusel, olenevalt teie keskkonnast ja ärivajadustest võivad olla kohaldatavad ka muud kulukaalutlused.

MosaicML Exploreri ekraanipilt GPT-2 koolituse jaoks

Märkimisväärsed saavutused heliloojaga AWS-is

Käitades Composeri teeki AWS-is, saavutas MosaicML-i meeskond mitmeid muljetavaldavaid tulemusi. Pange tähele, et MosaicML-i meeskonna esitatud kuluprognoosid sisaldavad ainult nõudmisel arvutatud tasu.

Järeldus

Saate Composeriga alustada mis tahes ühilduval platvormil, alates sülearvutist kuni suurte GPU-ga varustatud pilveserveriteni. Raamatukogu funktsioonid on intuitiivsed Tere tulemast Tour ja Alustamine dokumentatsiooni lehed. Composeri kasutamine AWS-is võimaldab teil akumuleerida Composeri kulude optimeerimise teadust AWS-i kulude optimeerimise teenuste ja programmidega, sealhulgas Spot compute (Amazon EC2, Amazon SageMaker), Säästuplaan, SageMaker automaatne mudeli häälestamine, ja veel. MosaicML-i meeskond säilitab a juhendaja helilooja kohta AWS-is. See näitab samm-sammult, kuidas saate MLPerfi tulemusi reprodutseerida ja treenida ResNet-50 AWS-is standardse 76.6% top-1 täpsusega vaid 27 minutiga.

Kui teil on probleeme liiga aeglaselt treenivate närvivõrkudega või kui soovite oma DL-i koolituskulusid kontrolli all hoida, proovige MosaicML-i AWS-is ja andke meile teada, mida ehitate!


Autoritest

Vähendage süvaõppe koolitusaega ja -kulusid AWS PlatoBlockchain Data Intelligence'i MosaicML Composeri abil. Vertikaalne otsing. Ai.Bandish Shah on MosaicML-i insenerijuht, kes töötab selle nimel, et ühendada tõhus süvaõpe suuremahuliste hajutatud süsteemide ja jõudlusarvutusega. Bandishil on üle kümne aasta pikkune kogemus masinõppe ja ettevõtete rakenduste jaoks süsteemide loomisel. Talle meeldib veeta aega sõprade ja perega, süüa teha ja vaadata inspiratsiooni saamiseks kordusfilmi Star Trek.

Vähendage süvaõppe koolitusaega ja -kulusid AWS PlatoBlockchain Data Intelligence'i MosaicML Composeri abil. Vertikaalne otsing. Ai.Olivier Cruchant on Prantsusmaal asuva AWS-i masinõppe spetsialisti lahenduste arhitekt. Olivier aitab AWS-i klientidel – alates väikestest alustavatest ettevõtetest kuni suurte ettevõteteni – arendada ja juurutada tootmistasemel masinõpperakendusi. Vabal ajal naudib ta uurimistööde lugemist ning sõprade ja perega metsiku loodusega tutvumist.

Ajatempel:

Veel alates AWS-i masinõpe