Python - Wprowadzenie do przetwarzania tekstu

Przetwarzanie tekstu ma bezpośrednie zastosowanie do przetwarzania języka naturalnego, znanego również jako NLP. NLP ma na celu przetwarzanie języków, jakimi mówią lub piszą ludzie, kiedy się ze sobą komunikują. Różni się to od komunikacji między komputerem a człowiekiem, w której komunikacja odbywa się za pomocą programu komputerowego napisanego przez człowieka lub jakiegoś gestu człowieka, takiego jak kliknięcie myszą w jakiejś pozycji. NLP stara się zrozumieć naturalny język używany przez ludzi i sklasyfikować go, analizuje go również, jeśli trzeba, reaguje na niego. Python ma bogaty zestaw bibliotek, które zaspokajają potrzeby NLP. Zestaw narzędzi języka naturalnego (NLTK) to zestaw takich bibliotek, który zapewnia funkcje wymagane dla NLP.

Poniżej znajduje się kilka aplikacji, które używają NLP i pośrednio NLTK Pythona.

Podsumowanie

Często potrzebujemy podsumowania artykułu z wiadomościami, fabuły filmu lub ważnej historii. Wszystkie są napisane ludzkim językiem i bez NLP musimy polegać na interpretacji innego człowieka i przedstawieniu nam takiego podsumowania. Ale z pomocą NLP możemy napisać programy używające NLTK i podsumować długi tekst z różnymi parametrami, takimi jak procent tekstu, który chcemy uzyskać w końcowym wyniku, wybór pozytywnych i negatywnych słów do podsumowania itp. Źródła wiadomości online polegają na na temat takich technik podsumowania w celu przedstawienia spostrzeżeń dotyczących wiadomości.

Narzędzia głosowe

Narzędzia głosowe, takie jak jabłka Siri lub Amazon Alexa, polegają na NLP, aby zrozumieć szaloną interakcję z ludźmi. Dysponują dużym zestawem danych szkoleniowych, zawierającym słowa, zdania i gramatykę, aby zinterpretować pytanie lub polecenie pochodzące od człowieka i przetworzyć je. Chociaż chodzi o głos, pośrednio jest on również tłumaczony na tekst, a wynikowy tekst z głosu jest pobierany przez system NLP w celu uzyskania wyniku.

Wydobywanie informacji

Web scrapping to typowy przykład wyodrębniania danych ze stron internetowych przy użyciu kodu Python. Tutaj może nie opierać się ściśle na NLP, ale wymaga przetwarzania tekstu. Na przykład, jeśli musimy wyodrębnić tylko nagłówki obecne na stronie html, szukamy znacznika h1 w strukturze strony i znajdujemy sposób na wyodrębnienie tekstu tylko między tymi tagami. To wymaga programu do przetwarzania tekstu z Pythona.

Filtrowanie spamu

Spam w wiadomościach e-mail można zidentyfikować i wyeliminować, analizując tekst w temacie, a także treść wiadomości. Ponieważ wiadomości spamowe są zwykle wysyłane masowo do wielu odbiorców, nawet jeśli ich tematy i zawartość są niewielkie, można je dopasować i oznaczyć, aby oznaczyć je jako spam. Ponownie wymaga to użycia bibliotek NLTK.

Tłumaczenie językowe

Tłumaczenia komputerowe w dużej mierze opierają się na NLP. Ponieważ na platformie internetowej używanych jest coraz więcej języków, konieczne staje się zautomatyzowanie tłumaczenia z jednego języka ludzkiego na inny. Będzie to wymagało programowania w celu obsługi słownictwa, gramatyki i tagowania kontekstowego języków zaangażowanych w tłumaczenie. Ponownie NLTK jest używany do obsługi takich wymagań.

Analiza nastrojów

Aby poznać ogólną reakcję na wykonanie filmu, być może będziemy musieli przeczytać tysiące opinii od publiczności. Ale to również można zautomatyzować, stosując klasyfikację pozytywnych i negatywnych opinii poprzez analizę słów i zdań. A następnie mierzenie częstotliwości pozytywnych i negatywnych recenzji, aby określić ogólny nastrój odbiorców. To oczywiście wymaga analizy ludzkiego języka pisanego przez publiczność, a NLTK jest tutaj intensywnie wykorzystywane do przetwarzania tekstu.