Czy język angielski można uogólnić przy użyciu zestawu reguł gramatycznych?


10

W językach programowania istnieje zestaw reguł gramatycznych rządzących konstruowaniem poprawnych instrukcji i wyrażeń. Reguły te pomagają w analizie programów napisanych przez użytkownika.

Czy może istnieć funkcjonalnie kompletny zestaw reguł gramatycznych, które mogą dokładnie analizować dowolne wyrażenia w języku angielskim (specyficzne dla ustawień regionalnych) i które można ewentualnie zaimplementować do wykorzystania w projektach opartych na sztucznej inteligencji?

Wiem, że istnieje wiele zestawów narzędzi NLP dostępnych online, ale nie są one tak skuteczne. Większość z nich jest szkolona przy użyciu określonych zwłok, które czasami nie potrafią wywnioskować skomplikowanych korelacji między różnymi częściami wyrażenia.

Innymi słowy, pytam o to, czy komputer może przeanalizować dobrze napisane zdanie napisane w języku angielskim, tak jakby zostało przeanalizowane przez dorosłego anglojęzycznego człowieka?

EDYCJA: Jeśli nie można go przedstawić za pomocą prostych reguł gramatycznych, jakiego rodzaju struktury semantycznej można użyć do jego uogólnienia?

EDYCJA 2: Ten dokument dowodzi braku płynności kontekstowej w językach naturalnych. Szukam rozwiązania, nawet jeśli jest zbyt skomplikowane.


2
Nie mam odniesień do poparcia tego, ale wydaje mi się matematycznie, że nie można tego zrobić - że zrozumienie angielskiego całkowicie wymaga wskazówek kontekstowych, które wymagają rozumowania semantycznego wyższego poziomu, które nie mogą być zawarte w zasady gramatyki.
antlersoft

Według wikipedii większość języków naturalnych jest pozbawiona kontekstu: en.wikipedia.org/wiki/…
inf3rno

Odpowiedzi:


8

Czy kiedykolwiek może istnieć funkcjonalnie kompletny zestaw reguł gramatycznych, które mogą dokładnie analizować dowolne wyrażenia w języku angielskim (specyficzne dla ustawień regionalnych) i które można ewentualnie zastosować w projektach opartych na sztucznej inteligencji?

Parsuj tak, dokładnie najprawdopodobniej nie.

Dlaczego ?

Zgodnie z moim rozumieniem, w jaki sposób czerpiemy znaczenie z dźwięków, istnieją 2 uzupełniające się strategie:

Gramatyka Reguły: oparty na regułach system porządkowania słów w celu ułatwienia komunikacji, tutaj znaczenie wywodzi się z interakcji dyskretnych dźwięków i ich niezależnego znaczenia, dzięki czemu można przeanalizować zdanie na podstawie zbioru reguł.

EG „To był triumf” : parser wyodrębni zaimek ( This ) o odpowiednim znaczeniu (konkretna osoba lub rzecz); czasownik ( był ) o odpowiednim znaczeniu (wystąpił); ( a ) i tutaj zaczynamy od pewnych problemów z analizą, co wyodrębniłby parser, rzeczownik lub nieokreślony artykuł? A więc konsultujemy gramatykę i zadowalamy się znaczeniem (artykuł nieokreślony), musisz przeanalizować następne słowo i odnieść się do niego, ale pomińmy to na razie, a na koniec ( triumf ) rzeczownik (może to być także czasownik, ale dzięki książce reguł gramatycznych zdecydowaliśmy się na rzeczownik o znaczeniu: (zwycięstwo, podbój), więc w końcu mamy (łącząc znaczenia):

Szczególne wydarzenie miało miejsce w przypadku zwycięstwa. Wystarczająco blisko i przeglądam kilka innych zasad, ale nie o to chodzi, inna strategia to:

Słownik leksykalny (lub leksykon), w którym słowa lub dźwięki mają określone znaczenie. Tutaj znaczenie wywodzi się z jednego lub więcej słów lub dźwięków jako jednostki. To wprowadza problem do parsera, ponieważ cóż, nie powinien on parsować niczego.

EG „Non Plus Ultra” A więc parser AI rozpoznałby, że tego wyrażenia nie należy analizować, a zamiast tego dopasowuje znaczenie:

Najwyższy punkt lub kulminacja

Jednostki leksykalne wprowadzają inną kwestię, ponieważ same mogą być częścią pierwszego przykładu, więc kończy się rekurencja.

czy możliwe jest, aby komputer przeanalizował dobrze wypowiadane zdanie napisane w języku angielskim, tak jakby zostało przeanalizowane przez dorosłego człowieka mówiącego po angielsku?

Wierzę, że jest to możliwe, większość przykładów, które widziałem, skutecznie radzi sobie z książką reguł gramatycznych lub częścią leksykonu, ale nie znam kombinacji obu, ale jeśli chodzi o programowanie, może się zdarzyć.

Niestety, nawet jeśli rozwiążesz ten problem, twoja sztuczna inteligencja tak naprawdę nie zrozumie rzeczy w ścisłym tego słowa znaczeniu, ale raczej przedstawi ci bardzo rozbudowane synonimy, dodatkowo kontekst (jak wspomniano w komentarzach) odgrywa rolę w strategiach gramatycznych i leksykalnych.

Jeśli nie można go przedstawić za pomocą prostych reguł gramatycznych, jakiego rodzaju struktury semantycznej można użyć do jego uogólnienia?

Jednym z nich może być mieszany, w którym istnieją zarówno reguły gramatyczne, jak i leksykon, i na oba można wpływać w zależności od kontekstu i doświadczenia specyficznego dla AI, a także system radzenia sobie z tymi obiektami.


Mój zakres języka angielskiego jest ograniczony do formalnego użytkowania. Gdybyśmy choć raz pominęli bardzo złożone byty, takie jak metafory lub idiomy, czy zdefiniowanie gramatyki kontekstowej osiągnęłoby cel?
skrtbhtngr

@skrtbhtngr: teoretycznie tak, byłby to podzbiór, ponieważ język formalny jest, ale kontekst będzie nadal trudnym problemem.
Keno,

Boczny przypadek: „To był triumf” mówiący o motocyklu z różnych powodów (pierwszy rower, spalony rower). Może możemy argumentować, że odróżnienie marki od rzeczownika wymaga dużej litery.
Tensibai,

Zgadzam się, że zrozumienie znaczenia tekstu jest najtrudniejsze. Tylko proste zdanie: „Peter poszedł do kina”. zawiera wiele ukrytych informacji: Peter jest mężczyzną, najprawdopodobniej poszedł tam, aby obejrzeć film ze swoją dziewczyną, jego lokalizacja się zmieniła itp. Budowanie modelu, na przykład wykresu na podstawie tekstu, nie wystarczy, ponieważ jest nie jest to coś statycznego, może opisywać wiele osi czasu, zdarzeń i kontekstów, a ponadto w każdym zdaniu można wnioskować i używać go do zrozumienia poprzednich lub kolejnych zdań.
inf3rno

2

Jestem prawie pewien, że odpowiedź brzmi „nie” w najściślejszym sensie, ponieważ angielski po prostu nie ma formalnej definicji. Oznacza to, że nikt nie kontroluje języka angielskiego i publikuje formalną gramatykę, do której przestrzegania każdy musi się stosować. Angielski jest oparty na doświadczeniu i ma sprzeczności i wady, ale probabilistyczna natura ludzkiego umysłu pozwala nam na obejście tych problemów.

Na przykład, że to „zdanie”:

To zdanie bez czasownika

Technicznie rzecz biorąc, to wcale nie jest zdanie, ponieważ nie ma czasownika. Ale czy ktoś miał problem ze zrozumieniem, co to znaczy? Wątpliwy. Spróbuj jednak znaleźć formalną regułę. I to tylko jeden przykład.

Czy mógłbyś wymyślić formalną gramatykę obejmującą może 90% przypadków i „wystarczającą” do większości praktycznych zastosowań? Być może, a może nawet prawdopodobnie. Ale jestem prawie pewien, że nie można uzyskać 100%.


1
Twój przykład nie jest gramatyczny, więc dlaczego gramatyka powinna zawierać formalną regułę opisującą go?
BlindKungFuMaster

1
Właśnie o to mi chodzi. Jest wyraźnie angielski i zrozumiały, ale jeśli nie spełnia powszechnie stosowanej definicji gramatyki angielskiej. Stąd jest to przykład tego, jak angielski mówi w świecie rzeczywistym poza granicami sztywnej gramatyki.
Mindcrime

2

Doszliśmy do wniosku, że jest to dwojaki, kołowy problem: struktury nie można wywnioskować bez kontekstu, ale znajomość struktury pomaga również wnioskować o kontekście. Oto twoje złożone rozwiązanie: zacznij od kontekstu, który jest określony przez kombinację słów w zdaniu (kombinatoryka i problem wyszukiwania), stamtąd określ swoją strukturę lub „parsuj” (na tym etapie możesz również odfiltrować niektóre nieistotne słowa lub przynajmniej przypisuj im mniejsze wagi), wróć do kontekstu, wróć do analizy i kontynuuj, aż dojdziesz do znaczenia. Zatem poprzez iteracyjną, rekurencyjną redukcję cały problem można rozwiązać.


2

Zdecydowanie nie zgadzam się ze wszystkimi poprzednimi komentarzami. Nie dlatego, że się mylą - a nie są - ale dlatego, że wprowadzają w błąd - choć nieumyślnie.

Na przykład: jeśli spojrzeć na te problemy ze stanowiska akademickiego, problemy zawsze będą wydawać się nie do pokonania. Jest tak, ponieważ wszystko jest zimno oceniane i obliczane w oderwaniu od wszystkiego innego.

Odpowiedź polega głównie na skojarzeniu słów . Musisz napisać program, który może przetwarzać rozległą bazę danych książek cyfrowych, aby zarejestrować każde słowo i wszystkie słowa w tym języku, które są z nim związane. Plus wszystkie informacje statystyczne z każdym powiązanym słowem i związaną z nim interpunkcją.

To da ci podstawę, na podstawie której AI może zdecydować o kilku rzeczach:

  1. Czy struktura danego zdania jest poprawna.
  2. Jeśli struktura jest zła, jakie jest prawdopodobieństwo określenia kontekstu i intencji tego, co się mówi.
  3. Prawidłowe znaczenie i zastosowanie wieloaspektowego słowa (Triumph) wynika z prawdopodobieństwa - zgodnie ze statystykami.
  4. Aby ustalić, gdzie prawdopodobnie odbędzie się rozmowa.
  5. Jaka powinna być poprawna gramatyka i interpunkcja.

Podsumowując, musisz szukać dwóch rzeczy: skojarzenia i prawdopodobieństwa.

Podczas cyfrowej analizy danych modelu językowego występuje możliwość „ciągów” wyrazów i zdań, dzięki czemu można określić każdą odmianę struktury języka w dowolnym zdaniu przed, w trakcie i po zapisaniu próbki tekstu. Ta ścisła kontrola nad wzorcami modeli językowych oznacza, że ​​wrażliwe komponenty, takie jak „temat” i „obiekt” można łatwo określić za pomocą kodu.


Myślę, że to jest zbyt optymistyczne. Język jest zbyt niechlujny, aby to działało.
Oliver Mason
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.