Jak přizpůsobit generování textu v Transformers

Jak Prizpusobit Generovani Textu V Transformers



V hlubokém učení se generování textu týká procesu automatického přizpůsobení textu v přirozeném jazyce pomocí Umělé neuronové sítě (ANN) . Kromě toho se pro tento konkrétní účel používají různé jazykové modely, které jsou předem natrénovány na velkých souborech dat pro predikci nadcházejícího slova v sekvenci v závislosti na předchozím slově. Kromě toho lze přizpůsobený text využít pro různé aplikace, včetně jazykového překladu, generování obsahu, chatbotů a mnoha dalších.

V tomto blogu se budeme zabývat níže uvedeným obsahem:

Jak přizpůsobit generování textu načtením modelu pomocí funkce „potrubí“ z transformátorů?

' potrubí “ se používá k automatickému stažení předem trénovaného modelu AI podle požadavků uživatele. Chcete-li používat tuto konkrétní funkci, uživatelé musí nainstalovat „ transformátory “balíčky. Tento balíček poskytuje přístup k nejmodernějším modelům založeným na Transformeru, které mohou provádět analýzu sentimentu, stejně jako mnoho dalších Zpracování přirozeného jazyka (NLP) úkoly.







Chcete-li si vyzkoušet praktickou ukázku výše popsaného scénáře, přejděte k níže uvedeným krokům!



Krok 1: Nainstalujte balíčky „transformers“.

Nejprve spusťte příkaz „! pecka“ příkaz k instalaci balíčků transformátoru:



! pip instalační transformátory

Jak vidíte, určený balíček byl úspěšně nainstalován:





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

Poté importujte požadovaný model založený na transformátoru. Chcete-li to provést, nejprve importujte soubor „ potrubí “funkce z “ transformátory “. Dále použijte importovanou funkci a předejte „ generování textu “ jako argument spolu s požadovaným názvem modelu “ gpt2 “. Dále je předejte do „ generovat 'proměnná:



z transformátory import potrubí

generovat = potrubí ( 'generování textu' , Modelka = 'gpt2' )

Krok 3: Vygenerujte vlastní text

Nyní předejte požadovaný text jako argument do „ generovat “. Jak je ukázáno níže:

generovat ( 'Pomocí modelu gpt2 pro generování textu v transformátorech' )

Podle poskytnutého výstupu jsou stažené předtrénované „ gpt3 ” model byl úspěšně vygenerován text:

Můžete také použít další argumenty, například:

výzva = 'Pomocí modelu gpt2 pro generování textu v transformátorech'

tisk ( gen ( výzva , num_return_sequences = 5 , maximální délka = dvacet ) )

Tady:

  • výzva ” se používá jako argument, který zdržuje vstup.
  • num_return_sequence ” argument se používá ke generování počtu sekvencí poskytnutého textu.
  • maximální délka ” argument se používá k určení délky generovaného textu. V našem případě je omezena na „ 30 ” tokeny (slova nebo interpunkce):

Poznámka: Přizpůsobený text bude pokračováním zadané výzvy, která je založena na trénovacích datech modelu.

Jak využít model založený na transformátoru pro generování textu v PyTorch?

Uživatelé mohou také upravit text v „ PyTorch ' který je ' Pochodeň “rámec strojového učení. Používá se pro různé aplikace, jako je NLP a počítačové vidění. Chcete-li použít model založený na transformátoru pro přizpůsobení textu v PyTorch, nejprve importujte soubor „ GPT2Tokenizer ' a ' Model GPT2 ” funkce z “ transformátory “:

z transformátory import GPT2Tokenizer , Model GPT2

Poté použijte „ GPT2Tokenizer “tokenizer podle našeho požadovaného předem trénovaného modelu s názvem “ gpt2 “:

tokenizer = GPT2Tokenizer. od_předškolených ( 'gpt2' )

Poté vytvoření instance závaží z předem trénovaného modelu:

Modelka = Model GPT2. od_předškolených ( 'gpt2' )

Dále deklarujte „ gen_text ” proměnná, která obsahuje text, který chceme přizpůsobit:

gen_text = 'Pomocí modelu gpt2 pro generování textu v transformátorech'

Nyní předejte „ gen_text ' a ' return_tensor='pt' “ jako argument, který vygeneruje text v PyTorch a uloží vygenerovanou hodnotu do „ kódovaný_vstup 'proměnná:

kódovaný_vstup = tokenizer ( gen_text , return_tensors = 'pt' )

Nakonec předejte „ kódovaný_vstup ” proměnná, která uchovává přizpůsobený text na “ Modelka “ jako parametr a získejte výsledný výstup pomocí „ maximální délka argument, který je nastaven na hodnotu dvacet “, což znamená, že vygenerovaný text bude omezen na poskytnuté tokeny, „ num_return_sequences “, který je nastaven na “ 5 ” což ukazuje, že vygenerovaný text se bude opírat o 5 sekvencí textu:

výstup = Modelka ( **encoded_input )

generátor ( gen_text , maximální délka = dvacet , num_return_sequences = 5 )

Výstup

Jak využít model založený na transformátoru pro generování textu v TensorFlow?

Pro generování textu v Transformers, „ TensorFlow “ používají se také rámce strojového učení. Chcete-li to provést, nejprve importujte požadované funkce, jako je „ GPT2Tokenizer ' a ' Model TFGPT2 “ z „ transformátory “. Zbytek kódu je stejný jako výše, jen používáme „ Model TFGPT2 funkce “ místo funkce “ Model GPT2 funkce “. Následovně:

z transformátory import GPT2Tokenizer , Model TFGPT2

tokenizer = GPT2Tokenizer. od_předškolených ( 'gpt2' )

Modelka = Model TFGPT2. od_předškolených ( 'gpt2' )

text = 'Pomocí modelu gpt2 pro generování textu v transformátorech'

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

výstup = Modelka ( kódovaný_vstup )

generátor ( gen_text , maximální délka = dvacet , num_return_sequences = 5 )

Jak můžete vidět, přizpůsobený text byl úspěšně vygenerován:

A je to! Vypracovali jsme přizpůsobení generování textu v Transformers.

Závěr

Chcete-li přizpůsobit generování textu v aplikaci Transformers, existují různé způsoby, jako je načtení modelu pomocí funkce potrubí pomocí modelu založeného na transformátoru v „ PyTorch ' a ' TensorFlow “, které jsou založeny na rámcích strojového učení. V této příručce jsme poskytli stručné informace spolu s praktickou ukázkou přizpůsobení generování textu v Transformers.