Algorytm NLP

Algorytmy Machine Learning w Marketingu

Algorytmy Machine Learning w Marketingu

Artykuł uaktualniony 4 tygodnie

Kilka słów o NLP , czym jest, jak działa i co z nim można zrobić. I czym się różni od innych algorytmów takich jak: uczenie maszynowe, rozpoznawanie mowy, sztuczna inteligencja.

Rozwój sztucznej inteligencji co za tym idzie algorytmów w marketingu, jest widoczny na każdym kroku naszego codziennego życia, w takim stopniu, że nawet nie zastanawiamy się nad tym, jak coś działa.

Tenże artykuł będzie skupiał się na pewnym fragmencie sztucznej inteligencji, a konkretnie algorytmie przetwarzania języka naturalnego. Samo sformułowanie pewnie nie kojarzy się z niczym, ale kiedy porozmawiamy o rozwiązaniach oferowanych przez ten algorytm, mamy pewność, że „gdzieś już go widziałem”.

Natural Language Processing jest obszarem sztucznej inteligencji, która bada naukę ludzkiego języka przez technologię. Algorytm NLP(przetwarzanie języka naturalnego) sam w sobie jest tematem interdyscyplinarnym, który skupia zagadnienia programowania, lingwistyki, psychologii i socjologii.

Algorytmy w marketingu
Algorytmy w marketingu

Skoro wiemy już, czym jest ten algorytm, musimy omówić samo działanie tego algorytmu. Sam algorytm NLP składa się z kilku etapów, zaprezentowanych poniżej.

NLP Algorytm
NLP Algorytm

Dane wejściowe w algorytmie NLP

Pierwszym etapem analizy językowej podejmowanej przez omawiany algorytm NLP jest wyszczególnienie zbiorów danych, na których pracować będzie dany algorytm. S

Ponieważ każdy algorytm może różnić się implementacją co do wspieranego zakresu danych wejściowych, ale również co do rezultatu danych wyjściowych, specyfikacja danych wejściowych powinna być możliwie jak najbardziej szczegółowa. Dopiero poprzez zdefiniowanie kryteriów analizy i charakterystyki tychże danych wejściowych jesteśmy w ogóle w stanie przejść do wykorzystywanie narzędzi z zakresu NLP (przetwarzanie języka naturalnego).

Drugi etap – Analiza leksykalna algorytm NLP

W ramach analizy leksykalnej rozpoczyna się pierwszy etap działania samego algorytmu.
W ramach tej fazy wprowadzone dane są rozkładane na najprostsze możliwe elementy składowe. 

Taki pojedynczy składowy element nazywamy tokenem i to właśnie przetworzeniem początkowo nieznanego ciągu znaków na listę tokenów zajmuje się analiza leksykalna. 

Dzięki transformacji języka rozumianego przez człowieka na zestaw tokenów jesteśmy w stanie: 

  • Stwierdzić, czy wprowadzone dane wejściowe nadają się w ogóle do dalszej analizy. Jeżeli pewna składowa analizowanego tekstu nie może zostać zamieniona na rozumiany przez nasz algorytm token, oznacza to, że wprowadzone dane wejściowe wykraczają poza możliwości algorytmu, lub wprowadzone dane wejściowe są po prostu niepoprawne. Przykładem takiej walidacji może być, chociażby weryfikacja sprawdzanie, czy każdy token identyfikowany z wyrazem znajduje się w słowniku, czyli puli wspieranych przez nas wyrazów, części mowy.
  • Kontynuować analizę na podstawie zunifikowanej formy reprezentacji w postaci tokenów rozumianą przez algorytm. Bez wcześniejszego podziału tekstu na takie składowe, które opisują zawartość, niemożliwym jest z technicznego punktu widzenia dalsze analizowanie np: części mowy.

Przykładem analizy leksykalnej może być poniższy tekst:

Czy Ala ma 1 kota?

W zależności od algorytmu implementacja symboli może się od siebie różnić, ale pewnym przybliżonym obrazem wyniku analizy może być poniższa tabela

SymbolWartość
WyrazCzy
WyrazAla
Wyrazma
Liczba1
Wyrazkota
Symbol?

Jeżeli analiza semantyczna się powiedzie, możliwe jest pogłębienie analizy opisanej
w dalszych krokach.

Analiza syntaktyczna i wzorce Algorytm NLP

Mając listę tokenów, możemy rozpocząć pierwszy etap analizy pogłębionej, którą jest analiza syntaktyczna. W ramach tej fazy nasz algorytm będzie próbował budować na podstawie wcześniejszej listy pewne rozpoznawane, rozróżnialne wzorce. W zależności od algorytmu mogą to być zupełnie inne grupy. 

Najprostszym przykładem będzie dzielenie tokenów po zakresach tworzących np. zdania. Analizując poniższy tekst:

Marcel miał zacząć rysować, ale coś mu wypadło, więc musiał to przełożyć. Sytuacja ta miała miejsce wczoraj.

Zakładając, że podany tekst został poprawnie przetworzony na listę tokenów w poprzednim kroku, w ramach analizy syntaktycznej owa lista może zostać przetworzona na pewne grupy tworzące składniowe:

image 24

Jeżeli algorytm nie będzie w stanie rozróżnić takowych grup, analiza może nie być możliwa, a wynikiem analizy będzie błąd składni.

Analiza semantyczna i transformacja Algorytm NLP

Analiza semantyczna jest bardzo zależna od implementacji (przetwarzanie języka naturalnego) i od tego, jaki jest jej cel. W ramach tego etapu należy bowiem z uporządkowanej wcześniej struktury tokenów wyciągnąć informacje, które są nam potrzebne. 

Metodyka wyszukiwania intencji, która kryje się za każdym zdaniem, może opierać się na bazie z góry predefiniowanych algorytmach lub też w oparciu o pewne rozszerzane bazy wiedzy, jakimi mogą być, chociażby integracje z systemami uczenia maszynowego.

Przykładem wyciągania interesujących nas informacji z przygotowanego drzewa składniowego, może być diagnozowanie wartości emocjonalnej każdego zdania w tekście. 

Zakładając, że w naszej bazie przydzielamy danym słowom pewne współczynniki emocjonalne w zakresie <-1, 1>, gdzie wartość ujemna oznacza stosunek negatywny,
a dodatnia pozytywny:

SłowaWartość
dobra0.7
niezła0.4
nie działa-0.7
niestety-0.5

I analizując poniższą opinię:

Kupiłem grę Cyberpunk 2077 w dobrej cenie! Niestety okazało się, że nie działa ona najlepiej na moim komputerze. Fabuła była całkiem niezła, ale aspekt techniczny psuje mi ogólne wrażenie.

Możemy określić czy użytkownik był bardziej zadowolony, czy sfrustrowany produktem. Dla powyższej opinii współczynnik po zsumowaniu wynosi -0.1, czyli cała wypowiedź została uznana za bliższą negatywnym emocjom.

Dlaczego warto wiedzieć czym jest NLP? Gdzie można go zastosować?

Jak to wszystko działa w praktyce? Obecnie algorytm natural language processing wykorzystuje się na wiele sposobów, jednakże wyróżnia się kilka z nich. 

NLP(natural language processing) jakiś czas temu został nowym elementem algorytmu Google, wpływającym na SEO. Dzięki temu Google może się skupić na zrozumieniu kontekstu wyszukiwań użytkowników, patrząc nie tylko po słowach kluczowych.

 Co to oznacza? Jaki ma to wpływ?

Z odpowiedzią przychodzi Jaya Kumar, specjalista ds. głębokiego uczenia się i NLP:

„Gdy Google bierze pod uwagę NLP, aby lepiej zrozumieć zapytania użytkowników, oznacza to, że twórcy treści, którzy uzyskują bardziej szczegółowe, trafne i opisowe treści
i informacje (w tym linki) na swoich stronach, mają tendencję do zajmowania wyższych pozycji”.

Jednym słowem, NLP staje się naszym potężnym sojusznikiem w SEO. 

Google udostępnia swoje API, dzięki temu możemy przeskanować swój tekst pod kątem, jak on jest odczytywany przez algorytm i jak to może wpłynąć na nasze pozycjonowanie. 

Algorytm przeczyta tekst i oznaczy w nim części jako te traktujące np. o biznesie lub o globalizacji. NLP wyczuwa również sentyment zdań i jest w stanie ocenić nasze podejście do tematu w analizowanym tekście, czy jesteśmy wobec tego krytyczni lub nie.

 Tutaj widać, w jaki sposób NLP odbiera dany tekst i jak go przedstawia wyszukiwarce. Co ciekawe algorytm jest w stanie ocenić pewność zawartych w tekście informacji oraz ich autentyczność!

Wykorzystanie algorytmu pod analizę sentymentalną, na pierwszy rzut oka –  proste, ale piękne w swojej prostocie. Posiadając dane przeanalizowane w sposób sentymentalny, możemy zaobserwować odbiór na stworzone treści. 

Przykładowo, firma, która produkuje obuwie wykorzystując algorytm NLP, dla klientów, którzy zostali zidentyfikowani jako zadowoleni klienci (pozytywne opinie), może im zaproponować zniżki, czy też nowe produkty z ich oferty. Algorytm pozwala lepiej dbać o customer journey.   

Dla osób, które nie zostały usatysfakcjonowane z obsługi klienta, przedsiębiorstwo może skierować ankietę, która pozwoli naświetlić błędy związane z procesem zakupu i procesami pobocznymi, zwrócić pieniądze za produkt. Gwarancja klienta albo zwrot poniesionych kosztów – ten slogan jest bardzo często wykorzystywany w reklamach, na przykład: reklama kapsułek Wizir.  

Language Translations

Language Translations, czyli tłumaczenia językowe jest narzędziem, które pozwala na tłumaczenie treści na inny język niż docelowy.

 Zjawisko globalizacji coraz bardziej postępuje, dlatego to narzędzie potrafi wiele ułatwić w komunikacji na wielu płaszczyznach. Takie tłumaczenia występują na wielu platformach, najbardziej jednak są widoczne na platformach Google, takich jak YouTube czy Google Lens. 

YouTube umożliwia nam obejrzenie filmu, którego oryginalnym językiem był hiszpański,
a my tylko rozumiemy język angielski za pomocą automatycznie wygenerowanych napisów do filmu, ale także przetłumaczonego tytułu i opisu filmu. 

Jak Google Lens wykorzystuje ten algorytm do tłumaczeń? 

Wyobraźmy sobie, że ktoś zrobił zdjęcie przepisu po włosku, bardzo chcemy go zrobić, ale nie znamy tego języka. Analizując zdjęcie w Google Lens, jesteśmy w stanie go przetłumaczyć. 

Text Extraction oraz Topic classification są dwoma zastosowaniami, które naprzemiennie się ze sobą łączą. Oba te zastosowania skupiają się na analizie pod względem kontekstu. 

Ekstrakcja tekstu jest narzędziem, które umożliwia wyróżnienia ważnych informacji spośród dużej ilości danych. Algorytm analizuje pewien tekst i podkreśla w nim najważniejsze rzeczy w zależności od narzuconego mu klucza; mogą być to na przykład kolory, miejsca (lokalizacje) czy cechy specjalne. 

Algorytm, który zajmuje się klasyfikacją tematu, analizuje przygotowany tekst i przyporządkowuje fragmentom konkretny temat. Tak samo, jak
w przypadku analizy sentymentalnej algorytm musi nauczyć się jak przyporządkowywać te tematy, dlatego określa się pewien klucz, który ułatwi uczenie się. 

Jak przedsiębiorstwa mogą wykorzystać analizę tekstu pod względem tematu czy elementów w tekście? 

Przykładowo, przedsiębiorstwo zajmujące się produkcją, przykładowo sukienek, czytając opinie na temat produktu może “wyłapać” czego brakuje klientom (np. klientkom brakuje krótkich białych sukienek, bo zaraz zbliża się sezon urlopowy i one by takie chciały mieć) lub decydować się na zmiany pod wpływem opinii. Gdy klient opisze, że czas dostawy jest zbyt długi możemy skategoryzować tę konkretną opinię jako “dostawa”. Jeżeli tych opinii skategoryzowanych jako dostawa będzie coraz więcej to przedsiębiorca może zareagować i ulepszyć swoje usługi.

Chatboty są aplikacjami głównie służącymi do obsługi klienta. Taki chatbot może zostać zaimplementowany na stronę przedsiębiorstwa, sklepu itp., gdzie będzie służył do kontaktu
z klientami, odpowiadania na pytania i rozwiązując problemy. Taki chatbot jest dostępny 24/7 w ciągu 365 dni w roku, dzięki czemu używając chatbota możemy oddać cały dział obsługi klienta, oszczędzając fundusze oraz zyskując czas. 

Możliwości jest nieskończenie wiele, jedynym ograniczeniem jest nasza wyobraźnia. 

Autorzy : Patrycja Kaleta, Michał Jabłoński, Szymon Jazgara

Redakcja: Marcin Kordowski

Marcin Kordowski
Marcin Kordowski
17 lat doświadczenie w Digital Marketing i SEO, wykładowca PW, trener, bloger i praktyk. Projekty w ponad 30 krajach, specjalizuje się w branży finansowej, medycznej i e-commerce.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.