Suured tähelepanupõhised trafomudelid on loomuliku keele töötlemisel (NLP) saavutanud tohutu kasu. Nende hiiglaslike võrkude nullist väljaõpetamine nõuab aga tohutult palju andmeid ja arvutusi. Väiksemate NLP-andmestike jaoks on lihtne, kuid tõhus strateegia kasutada eelkoolitatud trafot, mis on tavaliselt väga suurte andmekogumite jaoks järelevalveta välja õpetatud, ja täpsustada seda huvipakkuval andmekogumil. Kallistav nägu haldab nende eelkoolitatud trafode suurt mudelloomaaeda ja teeb need hõlpsasti ligipääsetavaks isegi algajatele kasutajatele.
Nende mudelite peenhäälestamine nõuab siiski ekspertteadmisi, kuna need on oma hüperparameetrite, näiteks õppimiskiiruse või partii suuruse suhtes üsna tundlikud. Selles postituses näitame, kuidas optimeerida neid hüperparameetreid avatud lähtekoodiga raamistikuga Syne Tune hajutatud hüperparameetrite optimeerimiseks (HPO). Syne Tune võimaldab meil leida parema hüperparameetri konfiguratsiooni, mis saavutab suhtelise paranemise 1-4% võrreldes populaarsete vaikehüperparameetritega GLUE etalonandmete kogumid. Eelkoolitatud mudeli enda valikut võib samuti pidada hüperparameetriks ja seetõttu valib Syne Tune selle automaatselt. Teksti klassifitseerimise probleemi korral suurendab see täpsust vaikemudeliga võrreldes ligikaudu 5%. Siiski saame automatiseerida rohkem otsuseid, mida kasutaja peab tegema; demonstreerime seda, paljastades ka eksemplari tüübi hüperparameetrina, mida kasutame hiljem mudeli juurutamiseks. Valides õige eksemplari tüübi, leiame konfiguratsioonid, mis optimaalselt tasakaalustavad kulusid ja latentsust.
Syne Tune'i sissejuhatuse saamiseks vaadake Käivitage jaotatud hüperparameetrite ja närviarhitektuuri häälestustöid rakendusega Syne Tune.
Hüperparameetrite optimeerimine rakendusega Syne Tune
Me kasutame GLUE etalonkomplekt, mis koosneb üheksast andmestikust loomuliku keele mõistmise ülesannete jaoks, nagu tekstilise kaasmõju tuvastamine või sentimentide analüüs. Selleks kohandame Hugging Face's run_glue.py koolituse skript. GLUE andmestik on varustatud eelmääratletud koolitus- ja hindamiskomplektiga koos siltidega, samuti ilma siltideta kinnihoidmise testikomplektiga. Seetõttu jagasime koolituskomplekti koolitus- ja valideerimiskomplektideks (jaotus 70%/30%) ja kasutame hindamiskomplekti hoidmise testide andmekogumina. Lisaks lisame Hugging Face'i Trainer API-le veel ühe tagasihelistamisfunktsiooni, mis teatab valideerimise toimivuse pärast iga ajajärku Syne Tune'ile. Vaadake järgmist koodi:
Alustame tüüpiliste treeningu hüperparameetrite optimeerimisest: õppimiskiirus, soojendussuhe õppimiskiiruse suurendamiseks ja partii suurus eeltreenitud BERTi peenhäälestamiseks (bert-base-korpus) mudel, mis on vaikemudel Kallistava näo näites. Vaadake järgmist koodi:
Meie HPO-meetodina kasutame ASHA, mis valib hüperparameetrite konfiguratsioonid ühtlaselt juhuslikult ja peatab iteratiivselt halvasti toimivate konfiguratsioonide hindamise. Ehkki keerukamad meetodid kasutavad sihtfunktsiooni tõenäosuslikku mudelit, näiteks BO või MoBster, kasutame selle postituse jaoks ASHA-d, kuna see on ilma otsinguruumi eeldusteta.
Järgmisel joonisel võrdleme testivea suhtelist paranemist Hugging Facesi hüperparameetrite vaikekonfiguratsiooniga.
Lihtsuse huvides piirame võrdlust MRPC, COLA ja STSB-ga, kuid täheldame sarnaseid täiustusi ka teiste GLUE andmehulkade puhul. Iga andmestiku jaoks käitame ASHA-d ühel ml.g4dn.xlarge failil Amazon SageMaker eksemplar, mille käitusaja eelarve on 1,800 sekundit, mis vastab nende andmekogumite puhul vastavalt ligikaudu 13, 7 ja 9 funktsiooni täielikule hindamisele. Treeningprotsessi olemusliku juhuslikkuse arvessevõtmiseks, mis on põhjustatud näiteks minipartii valimi võtmisest, käivitame nii ASHA kui ka vaikekonfiguratsiooni viie korduse jaoks juhuslike arvude generaatori sõltumatu seemnega ning esitame parameetri keskmise ja standardhälbe. suhteline paranemine korduste lõikes. Näeme, et kõigis andmekogumites saame tegelikult parandada prognoositavat jõudlust 1–3% võrreldes hoolikalt valitud vaikekonfiguratsiooni toimivusega.
Eelkoolitatud mudeli valimise automatiseerimine
Saame kasutada HPO-d mitte ainult hüperparameetrite leidmiseks, vaid ka õige eelkoolitatud mudeli automaatseks valimiseks. Miks me seda teha tahame? Kuna ükski mudel ei ületa kõigis andmekogumites, peame valima konkreetse andmekogumi jaoks õige mudeli. Selle demonstreerimiseks hindame Hugging Face'i populaarseid trafomudeleid. Iga andmekogumi puhul järjestame iga mudeli testi jõudluse järgi. Muutub andmekogumite paremusjärjestus (vt järgmist joonist) ja mitte ükski mudel, mis saavutaks iga andmestiku puhul kõrgeima punktisumma. Viitena näitame järgmisel joonisel ka iga mudeli ja andmekogumi absoluutset testi tulemuslikkust.
Õige mudeli automaatseks valimiseks saame valida mudeli valiku kategoorilisteks parameetriteks ja lisada selle meie hüperparameetrite otsinguruumi:
Kuigi otsinguruum on nüüd suurem, ei tähenda see tingimata, et seda oleks raskem optimeerida. Järgmisel joonisel on näidatud kõige paremini vaadeldud konfiguratsiooni testiviga (valideerimisvea põhjal) ASHA MRPC-andmestikul aja jooksul, kui otsime algsest ruumist (sinine joon) (BERT-i baasil valmistatud eelkoolitatud mudeliga). ) või uues laiendatud otsinguruumis (oranž joon). Sama eelarve juures suudab ASHA leida laiendatud otsinguruumis palju paremini toimiva hüperparameetri konfiguratsiooni kui väiksemas ruumis.
Eksemplari tüübi valimise automatiseerimine
Praktikas ei pruugi me ainult ennustava jõudluse optimeerimisest hoolida. Võime hoolida ka muudest eesmärkidest, nagu koolitusaeg, (dollari) maksumus, latentsusaeg või õigluse mõõdikud. Peame tegema ka muid valikuid peale mudeli hüperparameetrite, näiteks valima eksemplari tüübi.
Kuigi eksemplari tüüp ei mõjuta ennustavat jõudlust, mõjutab see tugevalt (dollari) kulusid, koolituse käitusaega ja latentsust. Viimane muutub mudeli kasutuselevõtul eriti oluliseks. Võime sõnastada HPO kui mitme eesmärgi optimeerimise probleemi, mille eesmärk on optimeerida mitut eesmärki samaaegselt. Ükski lahendus ei optimeeri aga kõiki mõõdikuid korraga. Selle asemel püüame leida komplekti konfiguratsioone, mis optimaalselt tasakaalustaksid ühe eesmärgi ja teise. Seda nimetatakse Pareto komplekt.
Selle sätte edasiseks analüüsimiseks lisame oma otsinguruumi täiendava kategoorilise hüperparameetrina eksemplari tüübi valiku:
Me kasutame MO-ASHA, mis kohandab ASHA mitme eesmärgiga stsenaariumiga, kasutades mittedomineeritud sortimist. Igas iteratsioonis valib MO-ASHA iga konfiguratsiooni jaoks ka eksemplari tüübi, millel soovime seda hinnata. HPO käitamiseks heterogeensel eksemplaride komplektil pakub Syne Tune SageMakeri taustaprogrammi. Selle taustaprogrammiga hinnatakse iga prooviversiooni iseseisva SageMakeri koolitustööna oma eksemplaril. Töötajate arv määrab, mitut SageMakeri tööd me teatud ajahetkel paralleelselt käivitame. Optimeerija ise, meie puhul MO-ASHA, töötab kas kohalikus masinas, Sagemakeri sülearvutis või eraldi SageMakeri koolitustöös. Vaadake järgmist koodi:
Järgmistel joonistel on MRPC andmestikul pärast 10,800 XNUMX sekundilist käitamist neljal töötajal MO-ASHA (piirame nähtavuse telge) valitud juhuslike konfiguratsioonide latentsus- ja testiviga vasakul ning latentsus vs kulu paremal. Värv näitab eksemplari tüüpi. Katkendlik must joon tähistab Pareto komplekti, mis tähendab punktide kogumit, mis domineerib kõigis teistes punktides vähemalt ühes eesmärgis.
Võime täheldada kompromissi latentsusaja ja testivea vahel, mis tähendab, et parim konfiguratsioon madalaima testiveaga ei saavuta madalaimat latentsust. Oma eelistuse põhjal saate valida hüperparameetri konfiguratsiooni, mis ohverdab testi jõudlust, kuid millel on väiksem latentsusaeg. Näeme ka kompromissi latentsusaja ja kulu vahel. Näiteks väiksema ml.g4dn.xlarge eksemplari kasutamisel suurendame latentsust vaid veidi, kuid maksame neljandiku ml.g4dn.8xlarge eksemplari maksumusest.
Järeldus
Selles postituses arutasime hüperparameetrite optimeerimist Hugging Face'i eelkoolitatud trafomudelite peenhäälestamiseks, mis põhinevad Syne Tune'il. Nägime, et optimeerides hüperparameetreid, nagu õppimiskiirus, partii suurus ja soojendussuhe, saame hoolikalt valitud vaikekonfiguratsiooni täiustada. Samuti saame seda laiendada, valides hüperparameetrite optimeerimise kaudu automaatselt eelkoolitatud mudeli.
Syne Tune'i SageMakeri taustaprogrammi abil saame eksemplari tüüpi käsitleda hüperparameetrina. Kuigi eksemplari tüüp ei mõjuta jõudlust, mõjutab see märkimisväärselt latentsust ja kulusid. Seetõttu suudame HPO-d mitme eesmärgi optimeerimisprobleemina käsitledes leida konfiguratsioonide komplekti, mis optimaalselt tasakaalustavad ühe eesmärgi ja teise. Kui soovite seda ise proovida, vaadake meie näidismärkmik.
Autoritest
Aaron Klein on AWSi rakendusteadlane.
Matthias Seeger on AWSi juhtivteadlane.
David Salinas on AWS-i vanem rakendusteadlane.
Emily Webber liitus AWS-iga vahetult pärast SageMakeri käivitamist ja on sellest ajast saati üritanud sellest maailmale rääkida! Lisaks klientidele uute ML-kogemuste loomisele naudib Emily mediteerimist ja Tiibeti budismi õppimist.
Cedric Archambeau on AWSi juhtivteadlane ning Euroopa õppe- ja intelligentsete süsteemide labori liige.
- Münditark. Euroopa parim Bitcoini ja krüptobörs.
- Platoblockchain. Web3 metaversiooni intelligentsus. Täiustatud teadmised. TASUTA PÄÄS.
- CryptoHawk. Altcoini radar. Tasuta prooviversioon.
- Allikas: https://aws.amazon.com/blogs/machine-learning/hyperparameter-optimization-for-fine-tuning-pre-trained-transformer-models-from-hugging-face/
- "
- 10
- 100
- 7
- 9
- a
- MEIST
- absoluutne
- juurdepääsetav
- konto
- Saavutada
- üle
- Täiendavad lisad
- mõjutada
- Materjal: BPA ja flataatide vaba plastik
- võimaldab
- Kuigi
- Amazon
- summa
- analüüs
- analüüsima
- Teine
- API
- rakendatud
- umbes
- arhitektuur
- suurendatud
- automatiseerima
- automaatselt
- keskmine
- AWS
- Telg
- sest
- võrrelda
- BEST
- Parem
- vahel
- Peale
- Must
- julge
- suurendada
- eelarve
- Ehitus
- mis
- juhul
- põhjustatud
- valik
- valikuid
- valitud
- klass
- klassifikatsioon
- kood
- Tulema
- võrreldes
- Arvutama
- konfiguratsioon
- kontrollida
- Kliendid
- andmed
- otsused
- näitama
- juurutada
- lähetatud
- jagatud
- Ei tee
- dollar
- iga
- kergesti
- Tõhus
- Euroopa
- hindama
- hindamine
- näide
- Kogemused
- ekspert
- laiendama
- nägu
- mood
- Joonis
- Järel
- Raamistik
- Alates
- täis
- funktsioon
- edasi
- Pealegi
- generaator
- aitama
- siin
- Kuidas
- Kuidas
- aga
- HTTPS
- mõju
- oluline
- parandama
- paranemine
- Suurendama
- sõltumatud
- mõju
- Näiteks
- Intelligentne
- huvi
- IT
- ise
- töö
- Tööturg
- liitunud
- teadmised
- labor
- Labels
- keel
- suur
- suurem
- käivitatud
- Leads
- õppimine
- LIMIT
- joon
- kohalik
- masin
- tegema
- TEEB
- suur
- tähendus
- meetodid
- Meetrika
- võib
- ML
- mudel
- mudelid
- rohkem
- mitmekordne
- Natural
- tingimata
- vajadustele
- võrgustikud
- märkmik
- number
- eesmärgid
- saadud
- optimeerimine
- optimeerima
- optimeerimine
- originaal
- Muu
- enda
- eriti
- Maksma
- jõudlus
- esitades
- palun
- võrra
- populaarne
- tava
- Peamine
- Probleem
- protsess
- töötlemine
- annab
- valik
- Edetabel
- aru
- reporter
- Aruanded
- esindab
- Vajab
- Tulemused
- jooks
- jooksmine
- sama
- teadlane
- Otsing
- sekundit
- seeme
- väljavalitud
- tunne
- komplekt
- kehtestamine
- näitama
- märkimisväärne
- sarnane
- lihtne
- ühekordne
- SUURUS
- lahendus
- keeruline
- Ruum
- konkreetse
- jagada
- standard
- algus
- riik
- Veel
- Strateegia
- süsteemid
- ülesanded
- test
- .
- maailm
- seetõttu
- aeg
- kaubelda
- koolitus
- käsitlema
- tohutu
- kohtuprotsess
- mõistmine
- us
- kasutama
- Kasutajad
- tavaliselt
- ära kasutama
- kinnitamine
- nähtavus
- Wikipedia
- ilma
- töötajate
- maailm
- Sinu