NLP-valdkonnas on hiljuti tehtud palju edusamme. Eelkoolitatud mudelid ja täielikult hallatavad NLP-teenused on võimaldanud NLP-le juurdepääsu ja selle kasutuselevõtu demokratiseerida. Amazoni mõistmine on täielikult hallatav teenus, mis suudab täita NLP-ülesandeid, nagu kohandatud olemituvastus, teemade modelleerimine, sentimentide analüüs ja palju muud, et hankida andmetest teadmisi, ilma et oleks vaja eelnevat ML-i kogemust.
Eelmisel aastal teatas AWS a partnerlus koos Kallistav nägu loomuliku keele töötlemise (NLP) mudelite kiiremaks toomiseks tootmisse. Hugging Face on avatud lähtekoodiga AI-kogukond, mis keskendub NLP-le. Nende Pythoni-põhine raamatukogu (Transformers) pakub tööriistu populaarsete tipptasemel transformeriarhitektuuride (nt BERT, RoBERTa ja GPT) hõlpsaks kasutamiseks. Saate neid mudeleid rakendada mitmesuguste NLP-ülesannete jaoks, nagu teksti klassifitseerimine, teabe eraldamine ja küsimustele vastamine. teised.
Amazon SageMaker on täielikult hallatav teenus, mis annab arendajatele ja andmeteadlastele võimaluse masinõppe (ML) mudeleid kiiresti luua, koolitada ja juurutada. SageMaker eemaldab ML-protsessi igast etapist raskuse, muutes kvaliteetsete mudelite väljatöötamise lihtsamaks. SageMaker Python SDK pakub avatud lähtekoodiga API-sid ja konteinereid mudelite koolitamiseks ja juurutamiseks SageMakeris, kasutades mitmeid erinevaid ML-i ja süvaõppe raamistikke.
Kallistava näo integreerimine SageMakeriga võimaldab teil luua mastaabis Kallistava näo mudeleid teie enda domeenispetsiifiliste kasutusjuhtude jaoks.
Selles postituses tutvustame teile näidet, kuidas luua ja juurutada SageMakeris kohandatud Kallistava näo teksti kokkuvõte. Kasutame selleks otstarbeks Pegasust [1], esimest transformeripõhist mudelit, mis on spetsiaalselt ette valmistatud abstraktse teksti kokkuvõtte tegemiseks kohandatud eesmärgiga. BERT on eelnevalt koolitatud juhuslike sõnade varjamiseks lauses; seevastu Pegasuse eelkoolituse ajal maskeeritakse lauseid sisenddokumendist. Seejärel genereerib mudel puuduvad laused ühe väljundjadana, kasutades kontekstina kõiki maskeerimata lauseid, luues selle tulemusel dokumendist kokkuvõtte.
Tänu HuggingFace'i teegi paindlikkusele saate hõlpsasti kohandada selles postituses näidatud koodi muud tüüpi trafomudelite jaoks, nagu t5, BART ja palju muud.
Kallistava näo mudeli peenhäälestamiseks laadige oma andmestik
Kohandatud andmestiku laadimiseks CSV-failist kasutame load_dataset
meetod paketist Transformers. Saame rakendada laaditud andmekogumile tokeniseerimist, kasutades datasets.Dataset.map
funktsioon. The map
funktsioon kordab üle laaditud andmestiku ja rakendab iga näite puhul funktsiooni tokenize. Tokeniseeritud andmestiku saab seejärel mudeli peenhäälestamiseks koolitajale edastada. Vaadake järgmist koodi:
Koostage oma treeningskript Hugging Face SageMakeri hindaja jaoks
Nagu postituses selgitatud AWS ja Hugging Face teevad koostööd, et lihtsustada ja kiirendada loomuliku keele töötlemise mudelite kasutuselevõttu, Hugging Face modelli treenimine SageMakeris pole kunagi olnud lihtsam. Saame seda teha, kasutades Hugging Face hindajat rakendusest SageMaker SDK.
Järgmine koodilõik täpsustab Pegasust meie andmekogumis. Samuti võite leida palju näidismärkmikud mis juhendavad teid erinevat tüüpi mudelite peenhäälestamisel, mis on saadaval otse trafode GitHubi hoidlas. Jaotatud koolituse võimaldamiseks saame kasutada Andmeparallelismi raamatukogu SageMakeris, mis on sisse ehitatud HuggingFace Trainer API-sse. Andmete paralleelsuse lubamiseks peame määratlema distribution
parameeter meie Hugging Face hindajas.
Konfigureeritav maksimaalne treeningpaki suurus sõltub mudeli suurusest ja kasutatud eksemplari GPU-mälust. Kui SageMakeri hajutatud koolitus on lubatud, on partii kogumaht iga seadme/GPU vahel jaotatud partii summa. Kui kasutame eksemplari ml.g4dn.xlarge asemel hajutatud väljaõppega ml.g16dn.4xlarge, on meil kaheksa korda (8 GPU-d) rohkem mälu kui ml.g4dn.xlarge eksemplaril (1 GPU). Partii suurus seadme kohta jääb samaks, kuid paralleelselt treenib kaheksa seadet.
Nagu SageMakeri puhul ikka, loome a train.py
skript, mida saab kasutada koos skriptirežiimiga ja edastada treenimiseks hüperparameetrid. Järgmine Pegasuse koodilõik laadib mudeli ja treenib seda Transformerite abil Trainer
klass:
Täielik kood on saadaval aadressil GitHub.
Kasutage SageMakeris koolitatud Hugging Face mudelit
Meie sõbrad Hugging Face'is on teinud SageMaker for Transformers mudelite kohta järeldusi lihtsamaks kui kunagi varem tänu SageMakeri kallistava näo järelduse tööriistakomplekt. Saate eelnevalt koolitatud mudelit otse juurutada, lihtsalt seadistades keskkonnamuutuja "HF_TASK":"summarization"
(juhiseid vt Pegasuse mudelid), valides juurutadaja seejärel valides Amazon SageMaker, ilma et oleks vaja järeldusskripti kirjutada.
Kui aga vajate ennustuste genereerimiseks või järeltöötlemiseks mingit konkreetset viisi, näiteks mitme kokkuvõtliku soovituse loomist erinevate teksti genereerimise parameetrite loendi põhjal, võib oma järeldusskripti kirjutamine olla kasulik ja suhteliselt lihtne:
Nagu on näidatud eelmises koodis, vajab selline SageMakeri HuggingFace'i järeldusskript ainult järgmisi mallifunktsioone:
- model_fn() – Loeb sees koolitustöö lõpus salvestatu sisu
SM_MODEL_DIR
või olemasolevast mudelikaalude kataloogist, mis on salvestatud tar.gz-failina Amazoni lihtne salvestusteenus (Amazon S3). Seda kasutatakse koolitatud mudeli ja sellega seotud märgiseadi laadimiseks. - input_fn() – vormindab lõpp-punktile tehtud päringust saadud andmed.
- ennusta_fn() – kutsub välja väljundi
model_fn()
(mudel ja tokenisaator), et teha järeldusi väljundi kohtainput_fn()
(vormindatud andmed).
Soovi korral saate luua output_fn()
funktsioon järelduste vormindamiseks, kasutades väljundit predict_fn()
, mida me selles postituses ei demonstreerinud.
Seejärel saame juurutada koolitatud Hugging Face mudeli koos sellega seotud järeldusskriptiga SageMakerisse, kasutades Kallistav nägu SageMaker mudel klass:
Testige juurutatud mudelit
Selle demo jaoks koolitasime mudelit Naiste e-kaubanduse rõivaarvustuste andmestik, mis sisaldab rõivaartiklite arvustusi (mida käsitleme sisendtekstina) ja nendega seotud pealkirju (mida käsitleme kokkuvõtetena). Pärast puuduvate pealkirjadega artiklite eemaldamist sisaldab andmekogum 19,675 70 arvustust. Pegasuse mudeli peenhäälestamine treeningkomplektil, mis sisaldas 3.5% nendest artiklitest viie perioodi jooksul, võttis ml.p3.16xsuurel eksemplaril umbes XNUMX tundi.
Seejärel saame mudeli juurutada ja testida mõne testkomplekti näidisandmetega. Järgmine on kampsunit kirjeldava ülevaate näide:
Tänu meie SageMakeri lõpp-punktis hostitud kohandatud järeldusskriptile saame selle ülevaate jaoks koostada mitu kokkuvõtet erinevate teksti genereerimise parameetritega. Näiteks võime paluda lõpp-punktil luua vahemiku väga lühikesi kuni mõõdukalt pikki kokkuvõtteid, mis määravad erineva pikkusega karistused (mida väiksem on pikkuse trahv, seda lühem on genereeritud kokkuvõte). Järgnevalt on toodud mõned parameetrite sisestusnäited ja järgnevad masinaga loodud kokkuvõtted.
Millist kokkuvõtet eelistate? Esimene loodud pealkiri sisaldab kõiki olulisi fakte arvustuse kohta, veerandi võrra vähem sõnu. Seevastu viimane kasutab kampsuni kõige olulisemale omadusele keskendumiseks vaid kolme sõna (vähem kui 1/10 algse arvustuse pikkusest).
Järeldus
Selle lihtsa näite abil saate oma kohandatud andmestiku teksti kokkuvõtte peenhäälestada ja juurutada selle SageMakeri tootmisse. GitHub. Lisaks näidismärkmikud Hugging Face mudelid SageMakeris on samuti saadaval koolitamiseks ja juurutamiseks.
Nagu alati, ootab AWS tagasisidet. Palun esitage kõik kommentaarid või küsimused.
viited
[1] PEGASUS: eeltreening abstraktse kokkuvõtte tegemiseks ekstraheeritud lünklausetega
Autoritest
Viktor Malesevic on AWS-i professionaalsete teenustega masinõppeinsener, kes on kirglik loomuliku keele töötlemise ja MLO-de vastu. Ta töötab koos klientidega, et arendada ja viia AWS-is välja väljakutseid pakkuvad süvaõppe mudelid. Vabal ajal naudib ta sõpradega klaasi punast veini ja juustu jagamist.
Aamna Najmi on AWS-i professionaalsete teenustega andmeteadlane. Ta soovib kirglikult aidata klientidel teha uuendusi suurandmete ja tehisintellekti tehnoloogiate abil, et saada andmetest äriväärtust ja teadmisi. Vabal ajal naudib ta aiatööd ja uutesse kohtadesse reisimist.
- AI
- ai kunst
- ai kunsti generaator
- on robot
- Amazon SageMaker
- tehisintellekti
- tehisintellekti sertifikaat
- tehisintellekt panganduses
- tehisintellekti robot
- tehisintellekti robotid
- tehisintellekti tarkvara
- AWS-i masinõpe
- blockchain
- plokiahela konverents ai
- coingenius
- vestluslik tehisintellekt
- krüptokonverents ai
- dall's
- sügav õpe
- google ai
- masinõpe
- Platon
- plato ai
- Platoni andmete intelligentsus
- Platoni mäng
- PlatoData
- platogaming
- skaala ai
- süntaks
- sephyrnet