Automatyczne przetwarzanie języka naturalnego (ang. Natural Language Processing, NLP) to zbiór metod i technologii umożliwiających maszynom rozumienie, generowanie, interpretowanie oraz przetwarzanie ludzkiego języka w formie tekstu lub mowy. NLP znajduje się na styku lingwistyki, informatyki i sztucznej inteligencji i ma na celu wyposażenie komputerów w kompetencje językowe z uwzględnieniem złożoności, niejednoznaczności i bogactwa języków naturalnych. W przeciwieństwie do systemów obsługujących języki formalne (np. języki programowania), NLP musi radzić sobie z niejednoznacznością semantyczną, polisemicznością, zmienną składnią oraz ukrytym kontekstem typowym dla języka ludzkiego.
Przykłady zastosowań i użycia
NLP wykorzystuje się m.in. do analizy sentymentu w mediach społecznościowych, tłumaczenia maszynowego (Google Translate, DeepL), generowania tekstu (chatboty, asystenci głosowi), automatycznego streszczania dokumentów, ekstrakcji informacji (wyszukiwarki, automatyczny monitoring), korekty gramatycznej, rozpoznawania i syntezy mowy.
Na przykład systemy automatycznych odpowiedzi na e-maile wykorzystują NLP do rozumienia treści wiadomości i sugerowania adekwatnych odpowiedzi. Firmy analizują dzięki NLP opinie klientów oraz wykrywają nowe trendy lub problemy.
Główne narzędzia, biblioteki i frameworki
Najczęściej stosowane frameworki i biblioteki NLP to NLTK (Python), spaCy, Stanford NLP, OpenNLP oraz CoreNLP. W głębokim uczeniu istotne są Transformers (Hugging Face), Fairseq (Facebook), BERT, GPT i T5. Do rozpoznawania mowy często używa się Kaldi, DeepSpeech oraz Wav2Vec. W tłumaczeniu maszynowym powszechne są MarianNMT i OpenNMT.
Najnowsze osiągnięcia i trendy
Ostatnie postępy opierają się na dużych modelach językowych (LLM), takich jak GPT-4, BERT czy LLaMA, pozwalających realizować złożone zadania rozumienia, generowania i tłumaczenia tekstów na poziomie zbliżonym do ludzkiego. Trendy obejmują integrację NLP z systemami multimodalnymi (tekst, obraz, dźwięk), optymalizację modeli pod kątem efektywności zasobów oraz wzmacnianie odporności na błędy i uprzedzenia językowe. Coraz częściej pojawia się także personalizacja NLP do specyficznych obszarów (medycyna, prawo, finanse).