AI z Pythonem - przetwarzanie języka naturalnego
Przetwarzanie języka naturalnego (NLP) odnosi się do metody AI komunikacji z inteligentnymi systemami przy użyciu języka naturalnego, takiego jak angielski.
Przetwarzanie języka naturalnego jest wymagane, gdy chcesz, aby inteligentny system, taki jak robot, działał zgodnie z twoimi instrukcjami, gdy chcesz usłyszeć decyzję od opartego na dialogu klinicznego systemu eksperckiego itp.
Dziedzina NLP obejmuje sprawianie, by komputery wykonywały użyteczne zadania przy użyciu języków naturalnych, którymi posługują się ludzie. Wejście i wyjście systemu NLP może być -
- Speech
- Tekst pisany
Składniki NLP
W tej sekcji dowiemy się o różnych składnikach NLP. Istnieją dwa składniki NLP. Komponenty opisano poniżej -
Rozumienie języka naturalnego (NLU)
Obejmuje następujące zadania -
Odwzorowanie danych wejściowych w języku naturalnym na przydatne reprezentacje.
Analiza różnych aspektów języka.
Generowanie języka naturalnego (NLG)
Jest to proces tworzenia znaczących fraz i zdań w formie języka naturalnego z jakiejś wewnętrznej reprezentacji. Obejmuje -
Text planning - Obejmuje to pobieranie odpowiednich treści z bazy wiedzy.
Sentence planning - Obejmuje to wybór wymaganych słów, tworzenie znaczących zwrotów, nadawanie tonowi zdania.
Text Realization - To jest mapowanie planu zdań na strukturę zdań.
Trudności w NLU
NLU jest bardzo bogata w formę i strukturę; jednakże jest to niejednoznaczne. Mogą występować różne poziomy niejednoznaczności -
Niejednoznaczność leksykalna
Jest na bardzo prymitywnym poziomie, takim jak poziom słów. Na przykład traktując słowo „tablica” jako rzeczownik lub czasownik?
Niejednoznaczność na poziomie składni
Zdanie można analizować na różne sposoby. Na przykład: „Podniósł chrząszcza z czerwoną czapką”. - Czy użył czapki do podniesienia chrząszcza, czy podniósł chrząszcza, który miał czerwoną czapkę?
Niejednoznaczność referencyjna
Odnoszenie się do czegoś za pomocą zaimków. Na przykład Rima udał się do Gauri. Powiedziała: „Jestem zmęczona”. - A kto jest zmęczony?
Terminologia NLP
Spójrzmy teraz na kilka ważnych terminów w terminologii NLP.
Phonology - To nauka o systematycznym organizowaniu dźwięku.
Morphology - Jest to studium konstrukcji słów z prymitywnych znaczących jednostek.
Morpheme - To prymitywna jednostka znaczeniowa w języku.
Syntax- Odnosi się do układania słów w zdanie. Obejmuje również określenie strukturalnej roli słów w zdaniu i frazach.
Semantics - Dotyczy znaczenia słów i łączenia słów w sensowne wyrażenia i zdania.
Pragmatics - Dotyczy używania i rozumienia zdań w różnych sytuacjach oraz wpływu na interpretację zdania.
Discourse - Dotyczy tego, jak bezpośrednio poprzedzające zdanie może wpłynąć na interpretację następnego zdania.
World Knowledge - Obejmuje ogólną wiedzę o świecie.
Kroki w NLP
Ta sekcja przedstawia różne kroki w NLP.
Analiza leksykalna
Obejmuje identyfikację i analizę struktury słów. Leksykon języka oznacza zbiór słów i zwrotów w języku. Analiza leksykalna polega na podzieleniu całego fragmentu tekstu na akapity, zdania i słowa.
Analiza syntaktyczna (parsowanie)
Polega na analizie słów w zdaniu pod kątem gramatyki i ułożeniu słów w sposób pokazujący związek między słowami. Zdanie typu „Szkoła idzie do chłopca” jest odrzucane przez angielski analizator syntaktyczny.
Analiza semantyczna
Rysuje dokładne znaczenie lub znaczenie słownikowe z tekstu. Tekst jest sprawdzany pod kątem znaczenia. Odbywa się to poprzez mapowanie struktur składniowych i obiektów w domenie zadań. Analizator semantyczny pomija zdania typu „gorące lody”.
Integracja dyskursu
Znaczenie każdego zdania zależy od znaczenia zdania tuż przed nim. Ponadto powoduje również znaczenie następującego bezpośrednio po nim zdania.
Analiza pragmatyczna
W tym czasie to, co zostało powiedziane, zostaje ponownie zinterpretowane na podstawie tego, co faktycznie oznaczało. Obejmuje wyprowadzenie tych aspektów języka, które wymagają znajomości świata rzeczywistego.