Kaip pritaikyti teksto generavimą transformatoriuose

Kaip Pritaikyti Teksto Generavima Transformatoriuose



Giluminio mokymosi metu teksto generavimas reiškia automatinio teksto pritaikymo natūralia kalba procesą naudojant Dirbtiniai neuroniniai tinklai (ANN) . Be to, tam konkrečiam tikslui naudojami skirtingi kalbų modeliai, kurie yra iš anksto paruošti dideliems duomenų rinkiniams, kad būtų galima numatyti būsimą žodį iš eilės, atsižvelgiant į ankstesnį žodį. Be to, pritaikytas tekstas gali būti naudojamas kelioms programoms, įskaitant kalbos vertimą, turinio generavimą, pokalbių robotus ir daug daugiau.

Šiame tinklaraštyje apžvelgsime toliau pateiktą turinį:

Kaip tinkinti teksto generavimą įkeliant modelį naudojant „vamzdyno“ funkciją iš transformatorių?

dujotiekis “ funkcija naudojama automatiškai atsisiųsti iš anksto paruoštą AI modelį pagal vartotojo reikalavimus. Norėdami naudoti šią konkrečią funkciją, vartotojai turi įdiegti „ transformatoriai “ paketus. Šis paketas suteikia prieigą prie naujausių transformatorių modelių, kurie gali atlikti nuotaikų analizę ir daugybę kitų Natūralios kalbos apdorojimas (NLP) užduotys.







Norėdami patikrinti praktinį aukščiau aprašyto scenarijaus demonstravimą, pereikite prie toliau pateiktų veiksmų!



1 veiksmas: įdiekite „transformatorių“ paketus

Iš pradžių paleiskite „! pipas“ komanda transformatoriaus paketams įdiegti:



! vamzdžių montavimo transformatoriai

Kaip matote, nurodytas paketas buvo sėkmingai įdiegtas:





2 veiksmas: importuokite transformatoriumi pagrįstą modelį

Tada importuokite reikiamą transformatoriaus modelį. Norėdami tai padaryti, pirmiausia importuokite „ dujotiekis ' funkcija iš ' transformatoriai “. Tada naudokite importuotą funkciją ir perduokite „ teksto generavimas “ kaip argumentą kartu su reikiamu modelio pavadinimu “ gpt2 “. Tada perduokite juos į ' generuoti “ kintamasis:



transformatoriai importuoti dujotiekis

generuoti = dujotiekis ( 'teksto generavimas' , modelis = 'gpt2' )

3 veiksmas: sukurkite tinkintą tekstą

Dabar perduokite norimą tekstą kaip argumentą „ generuoti “. Kaip parodyta žemiau:

generuoti ( 'Naudojant gpt2 modelį tekstui generuoti transformatoriuose' )

Pagal pateiktą išvestį atsisiųstas iš anksto apmokytas „ gpt3 “ modelis sėkmingai sugeneruotas tekstas:

Taip pat galite naudoti kitus argumentus, tokius kaip:

paraginti = 'Naudojant gpt2 modelį tekstui generuoti transformatoriuose'

spausdinti ( genas ( paraginti , grąžinimo_sekų skaičius = 5 , Didžiausias ilgis = dvidešimt ) )

Čia:

  • paraginti “ yra naudojamas kaip argumentas, išlaikantis įvestį.
  • skaičių_grįžimo_seka “ argumentas naudojamas pateikto teksto sekų skaičiui generuoti.
  • Didžiausias ilgis “ argumentas naudojamas sugeneruoto teksto ilgiui nurodyti. Mūsų atveju tai apsiriboja „ 30 “ žetonai (žodžiai arba skyrybos ženklai):

Pastaba: Tinkintas tekstas bus nurodyto raginimo, pagrįsto modelio mokymo duomenimis, tęsinys.

Kaip panaudoti transformatoriumi pagrįstą modelį tekstui generuoti „PyTorch“?

Vartotojai taip pat gali tinkinti tekstą „ PyTorch ' kuris yra ' Fakelas “ pagrįsta mašininio mokymosi sistema. Jis naudojamas įvairioms programoms, tokioms kaip NLP ir Computer Vision. Norėdami naudoti transformatoriumi pagrįstą modelį teksto tinkinimui PyTorch, pirmiausia importuokite „ GPT2 Tokenizatorius “ ir „ GPT2 modelis “ funkcijas iš „ transformatoriai “:

transformatoriai importuoti GPT2 Tokenizatorius , GPT2 modelis

Tada naudokite „ GPT2 Tokenizatorius “ tokenizatorius pagal mūsų norimą iš anksto paruoštą modelį pavadinimu “ gpt2 “:

tokenizatorius = GPT2 Tokenizatorius. iš_iš anksto apmokytas ( 'gpt2' )

Po to, iš anksto paruošto modelio svorių pakartojimas:

modelis = GPT2 modelis. iš_iš anksto apmokytas ( 'gpt2' )

Tada paskelbkite „ gen_tekstas “ kintamasis, kuriame yra tekstas, kurį norime tinkinti:

gen_tekstas = 'Naudojant gpt2 modelį tekstui generuoti transformatoriuose'

Dabar pereikite „ gen_tekstas “ ir „ return_tensors='pt' “ kaip argumentą, kuris sugeneruos tekstą „PyTorch“ ir išsaugos sugeneruotą reikšmę „ encoded_input “ kintamasis:

encoded_input = tokenizatorius ( gen_tekstas , return_tensors = 'pt' )

Galiausiai pereikite „ encoded_input “ kintamasis, kuriame tinkintas tekstas yra „ modelis “ kaip parametrą ir gaukite gautą išvestį naudodami „ Didžiausias ilgis “ argumentas, kuris nustatytas į „ dvidešimt “, kuris rodo, kad sugeneruotas tekstas bus apribotas pateiktais žetonais, „ grąžinimo_sekų skaičius “, kuris nustatytas į „ 5 “, kuris rodo, kad sukurtas tekstas bus pagrįstas 5 teksto sekomis:

išvestis = modelis ( **Encoded_input )

generatorius ( gen_tekstas , Didžiausias ilgis = dvidešimt , grąžinimo_sekų skaičius = 5 )

Išvestis

Kaip panaudoti transformatoriumi pagrįstą modelį kuriant tekstą „TensorFlow“?

Norėdami sukurti tekstą „Transformatoriuose“, „ TensorFlow “, taip pat naudojamos mašininio mokymosi sistemos. Norėdami tai padaryti, pirmiausia importuokite reikiamas funkcijas, pvz., „ GPT2 Tokenizatorius “ ir „ TFGPT2 modelis ' nuo ' transformatoriai “. Likusi kodo dalis yra tokia pati kaip aukščiau, tik mes naudojame ' TFGPT2 modelis ' funkcija vietoj ' GPT2 modelis ' funkcija. Kaip nurodyta toliau:

transformatoriai importuoti GPT2 Tokenizatorius , TFGPT2 modelis

tokenizatorius = GPT2 Tokenizatorius. iš_iš anksto apmokytas ( 'gpt2' )

modelis = TFGPT2 modelis. iš_iš anksto apmokytas ( 'gpt2' )

tekstą = 'Naudojant gpt2 modelį tekstui generuoti transformatoriuose'

encoded_input = tokenizatorius ( tekstą , return_tensors = 'tf' )

išvestis = modelis ( encoded_input )

generatorius ( gen_tekstas , Didžiausias ilgis = dvidešimt , grąžinimo_sekų skaičius = 5 )

Kaip matote, pritaikytas tekstas buvo sėkmingai sugeneruotas:

Viskas! Mes išsamiai aptarėme teksto generavimo pritaikymą programoje „Transformeriai“.

Išvada

Norint tinkinti teksto generavimą programoje „Transformatoriai“, yra įvairių būdų, pavyzdžiui, modelio įkėlimas su konvejerio funkcija, naudojant transformatoriumi pagrįstą modelį „ PyTorch “ ir „ TensorFlow “, kurie yra pagrįsti mašininio mokymosi sistemomis. Šiame vadove pateikėme trumpą informaciją ir praktinį teksto generavimo pritaikymo „Transformatoriuose“ demonstravimą.