Artykuł pochodzi z wydania: Luty 2023
Ostatnie miesiące przyniosły nam szczególny wzrost popularności chatbotów, czyli programów, z którymi możemy komunikować się w języku naturalnym. Wiele z nich realizuje konkretne zadania biznesowe i nie tylko – od wsparcia sprzedaży, przez automatyzację edukacji, aż po dbanie o nasze codzienne potrzeby.
Modele języka naturalnego zaskakują nas swoją wiarygodnością. Zastanawia jednak, czy nie jest to tylko zwykła sztuczka, jak występ iluzjonisty – wygląda jak prawdziwa magia, ale wiadomo, że nią nie jest. Jak to możliwe, że algorytm umie posługiwać się tak skomplikowanym tworem, jakim jest język? Przetwarzanie języka naturalnego łączy zagadnienia sztucznej inteligencji i językoznawstwa. Ta interdyscyplinarna dziedzina zajmuje się automatyzacją analizy, rozumienia, tłumaczenia i generowania języka naturalnego przez komputer. Przetwarzanie języka naturalnego (ang. natural language processing, NLP) stosuje algorytmy, których zadaniem jest identyfikowanie oraz wyodrębnienie reguł języka naturalnego, w taki sposób, aby niestrukturalne dane były konwertowane w postać zrozumiałą dla komputerów. Następnie komputer wykorzystuje algorytm, aby zebrać niezbędne dane i wydobyć znaczenie z każdego zdania. System generujący język naturalny przekształca informacje zapisane w bazie danych komputera na język łatwy do odczytania i zrozumienia przez człowieka. Tak jak ludzie muszą podświadomie analizować słowa, aby zrozumieć ich znaczenie, tak samo robią maszyny. Parsowanie semantyczne to umiejętność przekształcania danych języka naturalnego w coś, co maszyna może zrozumieć na własnych warunkach. Termin „język naturalny” używany jest, by odróżnić języki ludzkie (takie jak polski, angielski, węgierski) od języka formalnego czy komputerowego (jak C++, Java czy Python).
> Przetwarzanie języka
Podstawowym działaniem NLP jest wyodrębnienie zdania. Drugim etapem jest podział na tokeny. Umożliwiają one podzielenie tekstu na proste części, czyli liczby, słowa, punktacje. Techniki, jakie stosuje NLP, opierają się w głównej mierze na analizie syntaktycznej oraz semantycznej. Analiza syntaktyczna wykorzystywana jest do oceny zgodności języka naturalnego z zasadami gramatycznymi. Natomiast analiza semantyczna pomaga stworzyć szkielet przetwarzania języka naturalnego oraz wyjaśnia, jak NLP oraz sztuczna inteligencja interpretuje ludzkie zdania.
Architekturą używaną do tworzenia ML-ów są modele n-gramowe, rekurencyjne sieci neuronowe (RNN) i transformery. Od czasu debiutu w 2017 r. transformery są coraz częściej wybieranym modelem w przypadku problemów NLP, zastępując modele RNN, takie jak pamięć długo- i krótkotrwała (ang. long-, short-term memory – LSTM). Dodatkowa równoległość uczenia umożliwia trenowanie na większych zestawach danych, niż było to kiedyś możliwe. Doprowadziło to do rozwoju wstępnie wyszkolonych systemów, takich jak BERT (Bidirectional Encoder Representations from Transformers) i GPT (Generative Pre-trained Transformer), które były wytrenowane z użyciem dużych zestawów danych językowych, takich jak Wikipedia Corpus i Common Crawl, i mogą być dobrze dostrojone do konkretnych zadań.
Pod koniec 2022 r., w czasie powstawania tego artykułu, udostępniony szerokiej publiczności został ChatGPT – inteligentny chatbot, który, korzystając z modelu OpenAI GPT-3.5, może generować odpowiedzi na najróżniejsze zadawane w wielu językach pytania. W ciągu tygodnia liczba użytkowników ChatGPT przekroczyła milion. O ile Chat GPT jest jedynie fascynującą demonstracją możliwości współczesnych komputerów w zakresie przetwarzania języka naturalnego (NLP), o tyle w biznesie chatboty służą głównie do automatyzacji procesów obsługi klienta i zwiększenia efektywności pracy pracowników poprzez przejęcie części rutynowych zadań obsługi klienta.
[…]
Marcin Szeliga
Pracownik naukowy Wyższej Szkoły Bankowej w Poznaniu Wydział Zamiejscowy w Chorzowie, jest autorem książek poświęconych analizie danych i posiada tytuł Microsoft Most Valuable Professional.