Nykypäivän nopeasti kehittyvässä tekoälyn maisemassa syväoppimismallit ovat löytäneet olevansa innovaatioiden eturintamassa, ja sovellukset kattavat tietokonenäön (CV), luonnollisen kielen käsittelyn (NLP) ja suositusjärjestelmät. Koulutukseen ja mallien hienosäätöön liittyvät kustannusten nousut asettavat kuitenkin haasteen yrityksille. Tämä kustannus johtuu ensisijaisesti syvän oppimismallien koulutuksessa käytetyn datan valtavasta määrästä. Nykyään suuret mallit koulutetaan usein teratavuilla datalla, ja niiden harjoittelu voi kestää viikkoja, jopa tehokkaalla grafiikkasuorittimella tai AWS Trainium-pohjainen laitteisto. Tyypillisesti asiakkaat luottavat tekniikoihin ja optimointiin, jotka parantavat mallin harjoitussilmukan tehokkuutta, kuten optimoidut ytimet tai kerrokset, sekoitettu tarkkuuskoulutus tai ominaisuuksia, kuten Amazon Sage Maker hajautetut koulutuskirjastot. Itse harjoitustietojen tehokkuuteen kiinnitetään kuitenkin nykyään vähemmän huomiota. Kaikki tiedot eivät vaikuta tasaisesti oppimisprosessiin mallin koulutuksen aikana: huomattava osa laskennallisista resursseista voidaan käyttää yksinkertaisten esimerkkien käsittelyyn, jotka eivät vaikuta olennaisesti mallin kokonaistarkkuuteen.
Asiakkaat ovat perinteisesti luottaneet esikäsittelytekniikoihin, kuten ylös- tai alasnäytteenottoon ja duplikoinnin poistamiseen, tarkentamaan ja parantamaan tietojensa tiedon laatua. Nämä tekniikat voivat auttaa, mutta ovat usein aikaa vieviä, vaativat erikoistunutta datatieteen kokemusta ja voivat joskus olla enemmän taidetta kuin tiedettä. Asiakkaat luottavat usein myös kuratoituihin tietokokonaisuuksiin, kuten RefinedWeb, parantaakseen malliensa suorituskykyä; Nämä tietojoukot eivät kuitenkaan aina ole täysin avoimen lähdekoodin lähdekoodia, ja ne ovat usein yleisempiä eivätkä liity sinun käyttötapauksiisi.
Kuinka muuten voit voittaa tämän tehottomuuden, joka liittyy vähän tietoa sisältäviin tietonäytteisiin mallikoulutuksen aikana?
Olemme iloisia voidessamme ilmoittaa julkisen esikatselun älykkäästä seulonnasta, SageMakerin uudesta ominaisuudesta, joka voi alentaa syväoppimismallien koulutuskustannuksia jopa 35 %. Älykäs seulonta on uusi tietojen tehokkuustekniikka, joka analysoi datanäytteesi aktiivisesti harjoittelun aikana ja suodattaa pois mallin kannalta vähemmän informatiiviset näytteet. Harjoittelemalla pienempää datan osajoukkoa käyttäen vain näytteitä, jotka vaikuttavat eniten mallin konvergenssiin, koulutus ja kustannukset pienenevät, mutta tarkkuuteen vaikuttavat vain vähän tai ei ollenkaan. Lisäksi, koska ominaisuus toimii verkossa malliharjoittelun aikana, älykäs seulonta ei vaadi muutoksia ylävirran tietoihin tai loppupään koulutusputkiin.
Tässä viestissä keskustelemme seuraavista aiheista:
- SageMakerin uusi älykäs seulontaominaisuus ja sen toiminta
- Kuinka käyttää älykästä seulontaa PyTorchin harjoituskuormien kanssa
Voit myös tarkistaa meidän dokumentointi ja näytekannettavat saadaksesi lisäresursseja älykkään seulonnan aloittamiseen.
Kuinka SageMakerin älykäs seulonta toimii
Aloitamme tämän viestin yleiskatsauksella siitä, kuinka älykäs seulontaominaisuus voi nopeuttaa malliharjoitteluasi SageMakerissa.
Smart Siftingin tehtävänä on seuloa harjoitustietosi läpi harjoitusprosessin aikana ja syöttää malliin vain informatiivisemmat näytteet. Tyypillisessä PyTorch-harjoituksessa data lähetetään iteratiivisesti erissä harjoitussilmukkaan ja kiihdytinlaitteisiin (esim. GPU:t tai Trainium-sirut). PyTorch DataLoader. Älykäs seulonta toteutetaan tässä tiedonlatausvaiheessa, ja siksi se on riippumaton koulutusputken ylävirran tietojen esikäsittelystä.
Älykäs seulonta käyttää malliasi ja käyttäjän määrittämää häviötoimintoa arvioivan eteenpäin kuljetuksen jokaiselle datanäytteelle sitä ladattaessa. Suurihäviöiset näytteet vaikuttavat olennaisesti mallikoulutukseen, ja siksi niitä käytetään koulutuksessa; datanäytteet, jotka ovat suhteellisen vähähäviöisiä, jätetään sivuun ja suljetaan pois koulutuksesta.
Älykkään seulonnan avainsyöte on poissuljettavien tietojen osuus: esimerkiksi asettamalla suhteeksi 33 % (beta_arvo = 0.5), kunkin erän häviön alimmassa kolmanneksessa olevat näytteet jätetään koulutuksen ulkopuolelle. Kun on tunnistettu tarpeeksi suurihäviöisiä näytteitä erän täydentämiseksi, tiedot lähetetään täyden harjoitussilmukan läpi ja malli oppii ja harjoittelee normaalisti. Sinun ei tarvitse tehdä muutoksia harjoitussilmukkaan, kun älykäs seulonta on käytössä.
Seuraava kaavio kuvaa tätä työnkulkua.
Sisällyttämällä vain osan harjoitustiedoistasi älykäs seulonta vähentää mallin harjoittamiseen tarvittavaa aikaa ja laskentaa. Testeissämme saavutimme lähes 40 % vähennyksen kokonaisharjoitteluajassa ja -kustannuksissa. Tietojen älykkäällä seulonnalla voi olla vain vähän tai ei ollenkaan vaikutusta mallin tarkkuuteen, koska pois jätetyt näytteet olivat mallille suhteellisen vähäisiä. Seuraavassa taulukossa on joukko kokeellisia tuloksia, jotka osoittavat suorituskyvyn parantamisen, joka on mahdollista SageMakerin älykkäällä seulonnalla.
Taulukon % Hyväksytty -sarake ilmoittaa harjoitussilmukassa käytetyn datan osuuden. Tämän säädettävän parametrin suurentaminen pienentää kustannuksia (kuten IMR Savings % -sarakkeessa näkyy), mutta se voi myös vaikuttaa tarkkuuteen. Sopiva % Hyväksytty -asetus on tietojoukosi ja mallisi funktio. sinun tulee kokeilla ja säätää tätä parametria parhaan tasapainon pienentämisen ja tarkkuuden välillä.
Ratkaisun yleiskatsaus
Seuraavissa osioissa käymme läpi käytännön esimerkin älykkään seulonnan mahdollistamisesta PyTorch-harjoitustyöllä SageMakerissa. Jos haluat aloittaa nopeasti, voit siirtyä kohtaan PyTorch tai PyTorch Lightning esimerkkejä.
Edellytykset
Oletamme, että osaat jo kouluttaa mallia PyTorchin tai PyTorch Lightningin avulla käyttämällä SageMaker Python SDK:ta ja Estimator-luokkaa käyttämällä SageMaker Deep Learning Containers -säilöjä koulutukseen. Jos ei, katso SageMaker Python SDK:n käyttäminen ennen kuin jatkat.
Aloita SageMakerin älykäs seulonta
Tyypillisessä PyTorch-koulutustyössä aloitat PyTorch-koulutuksen DataLoader tietojoukollasi ja muilla vaadituilla parametreilla, jotka tarjoavat syöttöerät koulutuksen edetessä. Ota harjoitustietojesi älykäs seulonta käyttöön käyttämällä uutta DataLoader
luokka: smart_sifting.dataloader.sift_dataloader.SiftingDataloader
. Tätä luokkaa käytetään kääreenä olemassa olevan PyTorchin päällä DataLoader
ja koulutusprosessi sen sijaan käyttää SiftingDataloader
syöttöerien saamiseksi. The SiftingDataLoader
saa syöttöerän alkuperäisestä PyTorchista DataLoader
, arvioi näytteiden tärkeyden erässä ja muodostaa seulotun erän suurihäviöisistä näytteistä, jotka siirretään sitten opetusvaiheeseen. Kääre näyttää seuraavalta koodilta:
- SiftingDataloader
vaatii joitain lisäparametreja harjoitustietojen analysoimiseksi, jotka voit määrittää käyttämällä sift_config
parametri. Luo ensin a smart_sifting.sift_config.sift_configs.RelativeProbabilisticSiftConfig
esine. Tämä objekti sisältää määritettävän ja vaaditun beta_value
ja loss_history_length
, jotka määrittävät säilytettävien näytteiden osuuden ja suhteellista häviötä arvioitaessa huomioon otettavien näytteiden ikkunan. Huomaa, että koska älykäs seulonta käyttää malliasi näytteen tärkeyden määrittämiseen, sillä voi olla negatiivisia seurauksia, jos käytämme mallia, jolla on täysin satunnaiset painot. Sen sijaan voit käyttää loss_based_sift_config
ja sift_delay
viivästyttää seulontaprosessia, kunnes mallin parametrien painot päivitetään satunnaisten arvojen yli. (Jos haluat lisätietoja, katso Käytä älykästä seulontaa harjoitusohjelmassasi.) Seuraavassa koodissa määrittelemme sift_config
ja täsmentää beta_value
ja loss_history_length
, sekä viivyttää käytön aloittamista loss_based_sift_config
:
Seuraavaksi sinun on sisällytettävä myös a loss_impl
parametrissa SiftingDataloader
esine. Älykäs seulonta toimii yksittäisten näytteiden tasolla, ja on tärkeää, että sinulla on pääsy hävikkilaskentamenetelmään näytteen tärkeyden määrittämiseksi. Sinun on otettava käyttöön seulontahäviömenetelmä, joka palauttaa nx1-tensorin, joka sisältää n näytteen häviöarvot. Yleensä määrität saman menetystavan, jota käytät model
harjoittelun aikana. Lisää lopuksi osoitin malliisi SiftingDataloader
objekti, jota käytetään näytteiden arvioimiseen ennen niiden sisällyttämistä koulutukseen. Katso seuraava koodi:
Seuraava koodi näyttää täydellisen esimerkin älykkään seulonnan käyttöönotosta olemassa olevassa BERT-koulutustyössä:
Yhteenveto
Tässä viestissä tutkimme julkista esikatselua älykkäästä seulonnasta, SageMakerin uudesta ominaisuudesta, joka voi vähentää syvän oppimismallin koulutuskustannuksia jopa 35 %. Tämä ominaisuus parantaa tietojen tehokkuutta harjoituksen aikana, mikä suodattaa vähemmän informatiiviset tietonäytteet. Sisällyttämällä vain tehokkaimmat tiedot mallien konvergenssiin, voit vähentää merkittävästi harjoitusaikaa ja -kustannuksia samalla, kun säilytät tarkkuuden. Lisäksi se integroituu saumattomasti olemassa oleviin prosesseihisi ilman, että sinun tarvitsee tehdä muutoksia tietoihisi tai koulutusputkistoon.
Sukeltaaksesi syvemmälle SageMakerin älykkääseen seulomiseen, tutkiaksesi sen toimintaa ja toteuttaaksesi sen PyTorch-koulutuskuormilla, tutustu dokumentointi ja näytekannettavat ja aloita tämän uuden ominaisuuden käyttäminen.
Tietoja kirjoittajista
Robert Van Dusen on vanhempi tuotepäällikkö Amazon SageMakerissa. Hän johtaa puitteita, kääntäjiä ja optimointitekniikoita syväoppimisen koulutukseen.
K Lokesh Kumar Reddy on vanhempi insinööri Amazon Applied AI -tiimissä. Hän keskittyy tehokkaisiin ML-harjoittelutekniikoihin ja työkalujen rakentamiseen keskustelun tekoälyjärjestelmien parantamiseksi. Vapaa-ajallaan hän etsii uusia kulttuureja, uusia kokemuksia ja pysyy ajan tasalla viimeisimmistä teknologiatrendeistä.
Abhishek Dan on vanhempi kehittäjäpäällikkö Amazon Applied AI -tiimissä ja työskentelee koneoppimisen ja keskustelun tekoälyjärjestelmien parissa. Hän on intohimoinen tekoälyteknologioihin ja työskentelee tieteen ja tekniikan risteyksessä edistääkseen tekoälyjärjestelmien kykyjä luoda intuitiivisempia ja saumattomampia ihmisen ja tietokoneen välisiä vuorovaikutuksia. Hän rakentaa parhaillaan sovelluksia suurille kielimalleille tehostaakseen Amazonin CX-parannuksia.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/machine-learning/accelerate-deep-learning-model-training-up-to-35-with-amazon-sagemaker-smart-sifting/
- :On
- :ei
- $ YLÖS
- 100
- 125
- 13
- 14
- 23
- 25
- 35%
- 7
- a
- Meistä
- kiihdyttää
- kiihdytin
- hyväksytty
- pääsy
- tarkkuus
- Saavuttaa
- saavutettu
- aktiivisesti
- lisätä
- lisä-
- Lisäksi
- etenee
- vaikuttaa
- AI
- AI-järjestelmät
- Kaikki
- jo
- Myös
- muutokset
- aina
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- an
- analysoida
- analyysit
- ja
- Ilmoittaa
- Kaikki
- sovellukset
- sovellettu
- Sovellettu tekoäly
- sopiva
- suunnilleen
- OVAT
- Art
- keinotekoinen
- tekoäly
- AS
- syrjään
- liittyvä
- olettaa
- At
- AWS
- Balance
- BE
- koska
- ollut
- ennen
- alkaa
- PARAS
- välillä
- Jälkeen
- pohja
- Rakentaminen
- mutta
- by
- laskea
- laskeminen
- CAN
- kyvyt
- valmiudet
- tapaus
- haaste
- Muutokset
- tarkastaa
- sirut
- luokka
- koodi
- Sarake
- täydellinen
- täysin
- laskeminen
- laskennallinen
- Laskea
- tietokone
- Tietokoneen visio
- rakentaa
- kuluttaa
- Kontit
- jatkuu
- edistävät
- vaikuttaa omalta
- Lähentyminen
- puhekielen
- keskusteleva AI
- Hinta
- kustannukset
- luoda
- ratkaiseva
- kuratoitu
- Tällä hetkellä
- Asiakkaat
- CX
- tiedot
- tietojenkäsittely
- aineistot
- Päivämäärä
- vähenee
- syvä
- syvä oppiminen
- syvempää
- määritellä
- määrittelemällä
- viivyttää
- osoittivat
- esittelyssä
- yksityiskohdat
- Määrittää
- dev
- laite
- Laitteet
- pohtia
- jaettu
- hajautettu koulutus
- sukellus
- do
- ei
- Dont
- ajaa
- ajanut
- aikana
- kukin
- tehokkuus
- tehokas
- muu
- mahdollistaa
- käytössä
- mahdollistaa
- insinööri
- Tekniikka
- tarpeeksi
- yrityksille
- yhtä
- arvioida
- arviointiin
- Jopa
- kehittyvä
- esimerkki
- Esimerkit
- innoissaan
- ulkopuolelle
- olemassa
- experience
- Elämykset
- kokeilu
- kokeellinen
- tutkia
- tutkitaan
- Ominaisuus
- Ominaisuudet
- suodattimet
- Vihdoin
- Etunimi
- Keskittää
- keskityttiin
- jälkeen
- varten
- eturintamassa
- Eteenpäin
- löytyi
- puitteet
- alkaen
- koko
- täysin
- toiminto
- general
- saada
- GPU
- GPU
- Palvelimet
- Olla
- he
- auttaa
- hänen
- pitää
- Miten
- Miten
- Kuitenkin
- HTML
- HTTPS
- tunnistettu
- if
- havainnollistaa
- Vaikutus
- vaikuttavia
- toteuttaa
- täytäntöön
- vaikutukset
- tuoda
- merkitys
- parantaa
- parannus
- parannuksia
- parantaa
- in
- sisältää
- mukana
- Mukaan lukien
- lisää
- itsenäinen
- ilmaisee
- henkilökohtainen
- tehottomuus
- tiedot
- informatiivinen
- Innovaatio
- panos
- sen sijaan
- integroi
- Älykkyys
- vuorovaikutukset
- leikkauspiste
- tulee
- intuitiivinen
- IT
- itse
- Job
- jpg
- hypätä
- Pitää
- avain
- Tietää
- Kumar
- Landschaft
- Kieli
- suuri
- uusin
- kerrokset
- Liidit
- oppiminen
- oppii
- vähemmän
- Taso
- kirjastot
- salama
- pitää
- lastaus
- logiikka
- ulkonäkö
- pois
- kone
- koneoppiminen
- ylläpitäminen
- tehdä
- johtaja
- aineellisesti
- Saattaa..
- menetelmä
- minimi
- sekoitettu
- ML
- malli
- mallit
- Moduulit
- lisää
- eniten
- täytyy
- Luonnollinen
- Luonnollinen kielen käsittely
- lähes
- Tarve
- tarvitaan
- negatiivinen
- Uusi
- NLP
- Nro
- Ei eristetty
- Normaalisti
- huomata
- objekti
- of
- usein
- on
- verkossa
- vain
- avata
- avoimen lähdekoodin
- toimii
- optimointi
- optimoitu
- or
- alkuperäinen
- Muut
- meidän
- ulos
- lähdöt
- yleinen
- Voittaa
- yleiskatsaus
- parametri
- parametrit
- kulkea
- Hyväksytty
- intohimoinen
- varten
- suorituskyky
- putki
- Platon
- Platonin tietotieto
- PlatonData
- aiheuttaa
- mahdollinen
- Kirje
- voimakas
- Käytännön
- Tarkkuus
- preview
- pääasiallisesti
- prosessi
- Prosessit
- käsittely
- Tuotteet
- tuotepäällikkö
- osa
- tarjoaa
- julkinen
- tarkoitus
- Python
- pytorch
- laatu
- nopeasti
- satunnainen
- nopeasti
- Suositus
- vähentää
- Vähentynyt
- vähentää
- vähentäminen
- katso
- tarkentaa
- liittyvä
- suhteellinen
- suhteellisesti
- luottaa
- edellyttää
- tarvitaan
- Vaatii
- Esittelymateriaalit
- vastaavasti
- REST
- tulokset
- palata
- Tuotto
- sagemaker
- sama
- Säästöt
- tiede
- sdk
- saumaton
- saumattomasti
- osiot
- nähdä
- etsiä
- SELF
- vanhempi
- lähetetty
- Palvelut
- setti
- asetus
- shouldnt
- Näytä
- Seuloa
- merkittävä
- merkittävästi
- Yksinkertainen
- pienempiä
- fiksu
- jonkin verran
- joskus
- lähde
- jännitys
- erikoistunut
- erityinen
- käytetty
- Vaihe
- Alkaa
- alkoi
- pysyminen
- Vaihe
- merkittävästi
- niin
- järjestelmät
- taulukko
- ottaa
- Tehtävä
- joukkue-
- tekniikka
- tekniikat
- Technologies
- Elektroniikka
- testit
- kuin
- että
- -
- tiedot
- heidän
- itse
- sitten
- Siellä.
- siksi
- Nämä
- ne
- kolmas
- tätä
- Kautta
- aika
- että
- tänään
- tämän päivän
- työkalut
- ylin
- Aiheet
- taskulamppu
- Yhteensä
- perinteisesti
- Juna
- koulutettu
- koulutus
- junat
- Trendit
- virittää
- tyypillinen
- tyypillisesti
- asti
- päivitetty
- Ylävirran tiedot
- käyttää
- käyttölaukku
- käytetty
- käyttötarkoituksiin
- käyttämällä
- arvot
- kautta
- visio
- tilavuus
- kävellä
- haluta
- we
- verkko
- verkkopalvelut
- viikkoa
- HYVIN
- olivat
- kun
- joka
- vaikka
- tulee
- ikkuna
- with
- ilman
- työnkulku
- toimii
- Voit
- Sinun
- zephyrnet