Jak przeprowadzić klasyfikację tekstu za pomocą transformatorów

Jak Przeprowadzic Klasyfikacje Tekstu Za Pomoca Transformatorow



W tej erze Transformersy są najpotężniejszymi modelami, które zapewniły najlepsze wyniki w wielu operacjach NLP (przetwarzania języka naturalnego). Początkowo był używany do zadań związanych z modelowaniem języka, w tym do generowania i klasyfikacji tekstu, tłumaczenia maszynowego i wielu innych. Ale teraz jest również używany do rozpoznawania obiektów, klasyfikacji obrazów i wielu innych zadań związanych z wizją komputerową.

W tym samouczku przedstawimy procedurę przeprowadzania klasyfikacji tekstu za pomocą Transformers.







Jak przeprowadzić klasyfikację tekstu za pomocą transformatorów?

Aby przeprowadzić klasyfikację tekstu za pomocą Transformersów, przede wszystkim zainstaluj „ transformatory ” bibliotekę, wykonując podane polecenie:



! pypeć zainstalować transformatory


Jak widać, określona biblioteka została pomyślnie zainstalowana:




Następnie zaimportuj „ rurociąg ” z „ transformatory ' biblioteka:





z rurociągu importującego transformatory


Tutaj ' rurociąg ” będzie zawierał zadanie NLP, które musimy wykonać oraz pożądany model transformatora do tej operacji wraz z tokenizerem.

Notatka: Tokenizer służy do przetwarzania tekstu, który ma zostać dostarczony do modelu, poprzez rozdzielenie tekstu na tokeny.



Następnie użyj przycisku „ rurociąg() ” i przekaż jej funkcję „ klasyfikacja zero-shot „jako argument. Następnie przekazujemy kolejny parametr jakim jest nasz model. Korzystamy z Facebooka „ BART model transformatora. Tutaj nie używamy tokenizera, ponieważ można go automatycznie wywnioskować z określonego modelu:

text_classifier = potok ( „klasyfikacja zero-shot” , Model = „facebook/bart-large-mnli” )


Teraz zadeklaruj „ nast ” zmienna przechowująca nasz tekst wejściowy, który należy sklasyfikować. Następnie podajemy kategorie, do jakich chcemy zaklasyfikować tekst i zapisać w „ laboratorium ”, znane jako etykiety:

nast = „Korekta i redakcja są niezbędnymi elementami zapewniającymi przejrzystość, spójność i bezbłędność treści”
laboratorium = [ 'aktualizacja' , 'błąd' , 'ważny' , 'weryfikacja' ]


Na koniec uruchom potok wraz z danymi wejściowymi:

klasyfikator_tekstu ( nast , laboratorium )


Jak widać po wykonaniu potoku, model przewidział, że podana przez nas sekwencja zostanie sklasyfikowana:


Dodatkowe informacje: Jeśli chcesz przyspieszyć działanie modelu, musisz użyć procesora graficznego. Jeśli tak, w tym celu możesz podać argument urządzenia dla potoku i ustawić go na „ 0 ”, aby korzystać z procesora graficznego.

Jeśli chcesz sklasyfikować tekst w więcej niż jednej instrukcji sekwencji/tekstu wejściowego, możesz dodać je do listy i przekazać jako dane wejściowe do potoków. W tym celu sprawdź fragment kodu:

nast = [ „Korekta i redakcja są niezbędnymi elementami zapewniającymi przejrzystość, spójność i bezbłędność treści” ,
„W dzisiejszych czasach optymalizacja SEO jest niezbędna, aby artykuły miały dobrą pozycję w rankingu i docierały do ​​szerszego grona odbiorców” ]

klasyfikator_tekstu ( nast , laboratorium )


Wyjście


Otóż ​​to! Opracowaliśmy najprostszy sposób klasyfikacji tekstu za pomocą Transformers.

Wniosek

Transformatory służą do wykonywania zadań modelowania języka, takich jak generowanie tekstu, klasyfikacja tekstu i tłumaczenie maszynowe, a także zadań związanych z widzeniem komputerowym, w tym rozpoznawania obiektów i klasyfikacji obrazów. W tym samouczku zilustrowaliśmy proces klasyfikacji tekstu za pomocą Transformers.