Samouczek przetwarzania języka naturalnego: Co to jest NLP? Przykłady
Co to jest przetwarzanie języka naturalnego?
Przetwarzanie języka naturalnego (NLP) jest gałęzią sztucznej inteligencji, która pomaga komputerom rozumieć, interpretować i manipulować językami ludzkimi, takimi jak angielski lub hindi, aby analizować i wywodzić ich znaczenie. NLP pomaga programistom organizować i strukturyzować wiedzę w celu wykonywania zadań, takich jak tłumaczenie, podsumowanie, rozpoznawanie nazwanych jednostek, ekstrakcja relacji, rozpoznawanie mowy, segmentacja tematów itp.
Historia NLP
Oto ważne wydarzenia w historii przetwarzania języka naturalnego:
1950- NLP zaczęło się, gdy Alan Turing opublikował artykuł zatytułowany „Machine and Intelligence”.
1950- Próby zautomatyzowania tłumaczenia między językiem rosyjskim i angielskim
1960- Prace Chomsky'ego i innych dotyczące teorii języka formalnego i składni generatywnej
1990- Modele probabilistyczne i modele oparte na danych stały się dość standardowe
2000- Dostępna jest duża ilość danych mówionych i tekstowych
W dalszej części tego samouczka NLP dowiemy się, jak działa NLP.
Jak działa NLP?
Zanim dowiemy się, jak działa NLP, zrozummy, w jaki sposób ludzie używają języka-
Każdego dnia wypowiadamy tysiące słów, które inni ludzie interpretują jako niezliczone rzeczy. Uważamy to za prostą komunikację, ale wszyscy wiemy, że słowa sięgają znacznie głębiej. Zawsze istnieje jakiś kontekst, który czerpiemy z tego, co mówimy i jak to mówimy., NLP Artificial Intelligence nigdy nie skupia się na modulacji głosu; czerpie z wzorców kontekstowych.
Przykład:
Man is to woman as king is to __________? Meaning (king) – meaning (man) + meaning ( woman)=? The answer is- queen
Tutaj możemy łatwo powiązać się ze sobą, ponieważ mężczyzna jest płcią męską, a kobieta jest płci żeńskiej. W ten sam sposób król jest płcią męską, a jego płcią żeńską jest królowa.
Przykład:
Is King to kings as the queen is to_______? The answer is--- queens
Widzimy tutaj dwa słowa „królowie” i „królowie”, z których jedno jest w liczbie pojedynczej, a drugie w liczbie mnogiej. Dlatego też, kiedy pojawia się królowa świata, automatycznie koreluje to z królowymi w liczbie pojedynczej i mnogiej.
W tym miejscu najważniejsze pytanie brzmi: skąd wiemy, co oznaczają słowa? Powiedzmy, kto nazwie ją królową?
Odpowiedź jest taka, że uczymy się tego poprzez doświadczenie. Jednak tutaj główne pytanie brzmi: skąd komputer wie o tym samym?
Musimy dostarczyć wystarczająco dużo danych, aby maszyny mogły uczyć się poprzez doświadczenie. Możemy dostarczać szczegóły takie jak
- Jej Królewska Mość Królowa.
- Przemówienie królowej podczas wizyty państwowej
- Korona królowej Elżbiety
- Matka królowych
- Królowa jest hojna.
W powyższych przykładach maszyna rozumie istotę Królowa.
Maszyna tworzy wektory słów jak poniżej. Wektor słów jest budowany przy użyciu otaczających je słów.
Maszyna tworzy te wektory
- Jak dowiaduje się z wielu zbiorów danych
- Użyj uczenia maszynowego (np. algorytmów głębokiego uczenia)
- Wektor słów jest budowany przy użyciu otaczających je słów.
Oto wzór:
Znaczenie (król) – znaczenie (mężczyzna) + znaczenie (kobieta) =?
Sprowadza się to do wykonywania prostych operacji algebraicznych na wektorach słów:
Wektor (król) – wektor (mężczyzna) + wektor (kobieta)= wektor(?)
Na co maszyna odpowiada królowej.
W dalszej części tego samouczka dotyczącego przetwarzania języka naturalnego dowiemy się o składnikach NLP.
Składniki NLP
Pięć głównych komponentów przetwarzania języka naturalnego w sztucznej inteligencji to:
- Analiza morfologiczna i leksykalna
- Analiza syntaktyczna
- Analiza semantyczna
- Integracja dyskursu
- Analiza pragmatyczna
Analiza morfologiczna i leksykalna
Analiza leksykalna to słownictwo obejmujące słowa i wyrażenia. Przedstawia analizę, identyfikację i opis struktury słów. Obejmuje podział tekstu na akapity, słowa i zdania
Poszczególne słowa są analizowane pod kątem ich składników, a tokeny niebędące wyrazami, takie jak znaki interpunkcyjne, są oddzielane od słów.
Analiza semantyczna
Analiza semantyczna to struktura utworzona przez analizator składniowy, która przypisuje znaczenia. Komponent ten przenosi liniowe ciągi słów na struktury. Pokazuje, jak słowa są ze sobą powiązane.
Semantyka koncentruje się wyłącznie na dosłownym znaczeniu słów, wyrażeń i zdań. To jedynie wyodrębnia znaczenie słownikowe lub prawdziwe znaczenie z danego kontekstu. Struktury przypisywane przez analizator syntaktyczny zawsze mają przypisane znaczenie
Np. „bezbarwny, zielony pomysł”. Zostałoby to odrzucone w analizie firmy Symantec jako bezbarwne; zielony nie ma sensu.
Analiza pragmatyczna
Analiza pragmatyczna zajmuje się ogólną treścią komunikacyjną i społeczną oraz jej wpływem na interpretację. Oznacza abstrakcję lub wyprowadzenie znaczącego użycia języka w określonych sytuacjach. W tej analizie główny nacisk zawsze skupia się na tym, co zostało powiedziane, w związku z reinterpretacją tego, co mamy na myśli.
Analiza pragmatyczna pomaga użytkownikom odkryć ten zamierzony efekt poprzez zastosowanie zestawu reguł charakteryzujących dialogi kooperacyjne.
Np. „zamknąć okno?” należy rozumieć jako prośbę, a nie polecenie.
Analiza składni
Słowa są powszechnie akceptowane jako najmniejsze jednostki składni. Składnia odnosi się do zasad i reguł rządzących strukturą zdań w poszczególnych językach.
Koncentracja składniowa na właściwej kolejności słów, która może wpłynąć na ich znaczenie. Obejmuje to analizę słów w zdaniu poprzez śledzenie struktury gramatycznej zdania. Słowa są przekształcane w strukturę, aby pokazać, jak słowa są ze sobą powiązane.
Integracja dyskursu
Oznacza to poczucie kontekstu. Znaczenie dowolnego pojedynczego zdania, które zależy od tych zdań. Rozważa również znaczenie następującego zdania.
Na przykład słowo „to” w zdaniu „Chciał tego” zależy od wcześniejszego kontekstu dyskursu.
W dalszej części tego samouczka NLP dowiemy się o NLP i systemach pisania.
NLP i systemy pisania
Rodzaj systemu pisma stosowanego w danym języku jest jednym z czynników decydujących o wyborze najlepszego podejścia do wstępnego przetwarzania tekstu. Systemy pisma mogą być
- Logograficzne: a Duża liczba pojedynczych symboli reprezentuje słowa. Przykład japoński, mandaryński
- Sylabiczny: Poszczególne symbole reprezentują sylaby
- Alfabetycznie: Poszczególne symbole reprezentują dźwięk
Większość systemów pisma wykorzystuje system sylabiczny lub alfabetyczny. Nawet język angielski, ze stosunkowo prostym systemem pisma opartym na alfabecie rzymskim, wykorzystuje symbole logograficzne, które obejmują cyfry arabskie, symbole walut (S, £) i inne symbole specjalne.
Ta poza jest następująca po wyzwaniach
- Wydobycie znaczenia (semantyki) z tekstu jest wyzwaniem
- NLP w AI zależy od jakości korpusu. Jeśli domena jest obszerna, zrozumienie kontekstu jest trudne.
- Istnieje zależność od zestawu znaków i języka
Jak wdrożyć NLP
Poniżej podano popularne metody stosowane w Naturalnym Procesie Uczenia się:
Nauczanie maszynowe: Procedury uczenia nlp stosowane podczas uczenia maszynowego. Automatycznie koncentruje się na najczęstszych przypadkach. Dlatego też, gdy piszemy reguły ręcznie, często jest to w ogóle niewłaściwe ze względu na błędy ludzkie.
Wnioskowanie statystyczne: NLP może wykorzystywać algorytmy wnioskowania statystycznego. Pomaga tworzyć modele, które są solidne, np. zawierające słowa lub struktury, które są znane każdemu.
Przykłady NLP
Obecnie technologia uczenia się poprzez procesy naturalne jest powszechnie stosowana.
Oto typowe techniki przetwarzania języka naturalnego:
Wyszukiwanie informacji i wyszukiwanie w Internecie
Google, Yahoo, Bing i inne Wyszukiwarki opierają swoją technologię tłumaczenia maszynowego na modelach głębokiego uczenia NLP. Pozwala ona algorytmom czytać tekst na stronie internetowej, interpretować jego znaczenie i tłumaczyć go na inny język.
Korekta gramatyczna:
Technika NLP jest szeroko stosowana w edytorach tekstu, takich jak MS-word, do poprawiania pisowni i sprawdzania gramatyki.
Odpowiadanie na pytania
Wpisz słowa kluczowe, aby zadawać pytania w języku naturalnym.
Podsumowanie tekstu
Proces podsumowywania ważnych informacji ze źródła w celu stworzenia skróconej wersji
Tłumaczenie maszynowe
Używanie aplikacji komputerowych do tłumaczenia tekstu lub mowy z jednego języka naturalnego na inny.
Analiza sentymentów
NLP pomaga firmom analizować dużą liczbę recenzji produktu. Umożliwia także klientom wystawienie recenzji konkretnego produktu.
Przyszłość NLP
- Przetwarzanie języka naturalnego zrozumiałego dla człowieka jest największym problemem Al. Jest prawie takie samo jak rozwiązanie centralnego problemu sztucznej inteligencji i uczynienie komputerów tak inteligentnymi jak ludzie.
- Przyszłe komputery lub maszyny za pomocą NLP będą mogły uczyć się z informacji dostępnych w Internecie i stosować je w prawdziwym świecie, jednak w tym zakresie potrzeba dużo pracy.
- Zestaw narzędzi języka naturalnego lub nltk stają się bardziej skuteczne
- W połączeniu z generowaniem języka naturalnego komputery staną się bardziej zdolne do odbierania i przekazywania przydatnych i wartościowych informacji lub danych.
Język naturalny a język komputerowy
Poniżej znajdują się główne różnice między językiem naturalnym a językiem komputerowym:
Parametr | Język naturalny | Język komputerowy |
---|---|---|
Dwuznaczny | Mają charakter niejednoznaczny. | Są zaprojektowane tak, aby były jednoznaczne. |
Nadmierność | Języki naturalne charakteryzują się dużą redundancją. | Języki formalne są mniej zbędne. |
Dosłowność | Języki naturalne składają się z idiomów i metafor | Języki formalne oznaczają dokładnie to, co chcą powiedzieć |
Zalety NLP
- Użytkownicy mogą zadawać pytania na dowolny temat i uzyskać bezpośrednią odpowiedź w ciągu kilku sekund.
- System NLP dostarcza odpowiedzi na pytania w języku naturalnym
- System NLP oferuje dokładne odpowiedzi na pytania, bez zbędnych i niechcianych informacji
- Trafność odpowiedzi wzrasta wraz z ilością istotnych informacji podanych w pytaniu.
- Proces NLP pomaga komputerom komunikować się z ludźmi w ich języku i skaluje inne zadania związane z językiem
- Umożliwia przeprowadzenie większej ilości analiz danych językowych w porównaniu do człowieka, bez zmęczenia, w sposób obiektywny i spójny.
- Strukturyzacja wysoce nieustrukturyzowanego źródła danych
Wady NLP
- Złożony język zapytań — system może nie być w stanie udzielić prawidłowej odpowiedzi, jeśli pytanie jest źle sformułowane lub niejednoznaczne.
- System jest zbudowany tylko i wyłącznie do jednego, konkretnego zadania; nie jest w stanie dostosować się do nowych domen i problemów ze względu na ograniczone funkcje.
- System NLP nie posiada interfejsu użytkownika, w którym brakuje funkcji pozwalających użytkownikom na dalszą interakcję z systemem
Podsumowanie
- Przetwarzanie języka naturalnego to gałąź sztucznej inteligencji, która pomaga komputerom rozumieć, interpretować i manipulować ludzkim językiem
- NLP zaczęło się, gdy Alan Turing opublikował artykuł zatytułowany „Machine and Intelligence”.
- NLP nigdy nie koncentruje się na modulacji głosu; czerpie z wzorców kontekstowych
- Pięć podstawowych elementów przetwarzania języka naturalnego w sztucznej inteligencji to 1) Analiza morfologiczna i leksykalna 2) Analiza syntaktyczna 3) Analiza semantyczna 4) Integracja dyskursu 5) Analiza pragmatyczna
- Trzy typy systemu zapisu procesu Natural to: 1) logograficzny, 2) sylabiczny, 3) alfabetyczny
- Uczenie maszynowe i wnioskowanie statystyczne to dwie metody wdrażania uczenia się metodą naturalnego procesu
- Podstawowymi zastosowaniami przetwarzania języka naturalnego są wyszukiwanie informacji i przeszukiwanie sieci, korygowanie gramatyki i odpowiadanie na pytania, streszczanie tekstów, tłumaczenie maszynowe itp.
- Przyszłe komputery lub maszyny za pomocą NLP i Nauka danych będą mogli uczyć się na podstawie informacji dostępnych w Internecie i zastosować je w prawdziwym świecie, jednak wymaga to dużo pracy w tym zakresie
- NLP jest niejednoznaczne, podczas gdy język komputerowy typu open source jest zaprojektowany tak, aby był jednoznaczny
- Największą zaletą NLP w systemie sztucznej inteligencji jest to, że oferuje dokładne odpowiedzi na pytania, bez zbędnych i niechcianych informacji
- Największą wadą systemu NLP jest to, że jest zbudowany tylko do jednego i konkretnego zadania, więc nie jest w stanie dostosować się do nowych domen i problemów z powodu ograniczonych funkcji