Ako prispôsobiť generovanie textu v Transformers

Ako Prisposobit Generovanie Textu V Transformers



V hlbokom učení sa generovanie textu týka procesu automatického prispôsobenia textu v prirodzenom jazyku pomocou Umelé neurónové siete (ANN) . Okrem toho sa na tento konkrétny účel používajú rôzne jazykové modely, ktoré sú vopred trénované na veľkých súboroch údajov na predpovedanie nadchádzajúceho slova v sekvencii v závislosti od predchádzajúceho slova. Okrem toho je možné prispôsobený text použiť pre viaceré aplikácie vrátane jazykového prekladu, generovania obsahu, chatbotov a mnohých ďalších.

V tomto blogu sa budeme zaoberať nižšie uvedeným obsahom:

Ako prispôsobiť generovanie textu načítaním modelu pomocou funkcie „potrubia“ z transformátorov?

' potrubia ” sa používa na automatické stiahnutie vopred trénovaného modelu AI podľa požiadaviek používateľa. Ak chcete použiť túto konkrétnu funkciu, používatelia si musia nainštalovať „ transformátory “balíčky. Tento balík poskytuje prístup k najmodernejším modelom založeným na transformátore, ktoré dokážu vykonávať analýzu sentimentu, ako aj mnoho ďalších Spracovanie prirodzeného jazyka (NLP) úlohy.







Ak chcete vyskúšať praktickú ukážku vyššie opísaného scenára, prejdite na nižšie uvedené kroky!



Krok 1: Nainštalujte balíky „transformátorov“.

Najprv vykonajte príkaz „! pecka“ príkaz na inštaláciu balíkov transformátora:



! pip inštalačné transformátory

Ako vidíte, zadaný balík bol úspešne nainštalovaný:





Krok 2: Importujte model založený na transformátore

Potom importujte požadovaný model založený na transformátore. Ak to chcete urobiť, najskôr importujte súbor „ potrubia “funkcia z “ transformátory “. Ďalej použite importovanú funkciu a odovzdajte „ generovanie textu “ ako argument spolu s požadovaným názvom modelu “ gpt2 “. Potom ich odovzdajte do „ generovať ” premenná:



od transformátory importovať potrubia

generovať = potrubia ( 'text-generation' , Model = 'gpt2' )

Krok 3: Vytvorte prispôsobený text

Teraz odovzdajte požadovaný text ako argument do „ generovať “. Ako je ukázané nižšie:

generovať ( 'Pomocou modelu gpt2 na generovanie textu v transformátoroch' )

Podľa poskytnutého výstupu stiahnuté predtrénované „ gpt3 ” model bol úspešne vygenerovaný text:

Môžete použiť aj iné argumenty, ako napríklad:

výzva = 'Pomocou modelu gpt2 na generovanie textu v transformátoroch'

vytlačiť ( gén ( výzva , num_return_sequences = 5 , maximálna dĺžka = dvadsať ) )

Tu:

  • výzva “ sa používa ako argument, ktorý zadržiava vstup.
  • num_return_sequence Argument ” sa používa na generovanie počtu sekvencií poskytnutého textu.
  • maximálna dĺžka Argument ” sa používa na určenie dĺžky vygenerovaného textu. V našom prípade je to obmedzené na „ 30 ” tokeny (slová alebo interpunkcia):

Poznámka: Prispôsobený text bude pokračovaním špecifikovanej výzvy, ktorá je založená na tréningových údajoch modelu.

Ako využiť model založený na transformátore na generovanie textu v PyTorch?

Používatelia môžu tiež prispôsobiť text v „ PyTorch ' Ktoré je ' Fakľa “rámec strojového učenia. Používa sa pre rôzne aplikácie, ako je NLP a počítačové videnie. Ak chcete použiť model založený na transformátore na prispôsobenie textu v PyTorch, najprv importujte súbor „ GPT2Tokenizer “ a „ Model GPT2 'funkcie z ' transformátory “:

od transformátory importovať GPT2Tokenizer , Model GPT2

Potom použite „ GPT2Tokenizer “tokenizer podľa nášho požadovaného vopred trénovaného modelu s názvom “ gpt2 “:

tokenizér = GPT2Tokenizer. od_predtrénovaných ( 'gpt2' )

Potom vytvorenie inštancie závaží z vopred trénovaného modelu:

Model = Model GPT2. od_predtrénovaných ( 'gpt2' )

Ďalej vyhláste „ gen_text ” premenná, ktorá obsahuje text, ktorý chceme prispôsobiť:

gen_text = 'Pomocou modelu gpt2 na generovanie textu v transformátoroch'

Teraz prejdite „ gen_text “ a „ return_tensors='pt' “ ako argument, ktorý vygeneruje text v PyTorch a uloží vygenerovanú hodnotu do „ kódovaný_vstup ” premenná:

kódovaný_vstup = tokenizér ( gen_text , return_tensors = 'pt' )

Nakoniec prejdite „ kódovaný_vstup premenná „, ktorá obsahuje prispôsobený text na „ Model “ ako parameter a získajte výsledný výstup pomocou „ maximálna dĺžka “ argument, ktorý je nastavený na “ dvadsať “, čo znamená, že vygenerovaný text bude obmedzený na poskytnuté tokeny, „ num_return_sequences “, ktorý je nastavený na “ 5 “, ktorý ukazuje, že vygenerovaný text sa bude opierať o 5 sekvencií textu:

výkon = Model ( **kódovaný_vstup )

generátor ( gen_text , maximálna dĺžka = dvadsať , num_return_sequences = 5 )

Výkon

Ako využiť model založený na transformátore na generovanie textu v TensorFlow?

Na generovanie textu v Transformers sa používa „ TensorFlow ” používajú sa aj rámce strojového učenia. Ak to chcete urobiť, najprv importujte požadované funkcie, ako napríklad „ GPT2Tokenizer “ a „ Model TFGPT2 “ z „ transformátory “. Zvyšok kódu je rovnaký ako vyššie, len používame „ Model TFGPT2 “ namiesto funkcie “ Model GPT2 “. Nasledovne:

od transformátory importovať GPT2Tokenizer , Model TFGPT2

tokenizer = GPT2Tokenizer. od_predtrénovaných ( 'gpt2' )

Model = Model TFGPT2. od_predtrénovaných ( 'gpt2' )

text = 'Pomocou modelu gpt2 na generovanie textu v transformátoroch'

kódovaný_vstup = tokenizer ( text , return_tensors = 'tf' )

výkon = Model ( kódovaný_vstup )

generátor ( gen_text , maximálna dĺžka = dvadsať , num_return_sequences = 5 )

Ako vidíte, prispôsobený text bol úspešne vygenerovaný:

To je všetko! Vypracovali sme prispôsobenie generovania textu v Transformers.

Záver

Ak chcete prispôsobiť generovanie textu v nástrojoch Transformers, existujú rôzne spôsoby, ako napríklad načítanie modelu pomocou funkcie potrubia pomocou modelu založeného na transformátore v „ PyTorch “ a „ TensorFlow “, ktoré sú založené na rámcoch strojového učenia. V tejto príručke sme poskytli stručné informácie spolu s praktickou ukážkou prispôsobenia generovania textu v Transformers.