Chcę napisać coś, co wymaga zdania, identyfikuje każde słowo w nim zawarte i określa, jaką częścią mowy jest każde słowo.
Na przykład
Witaj świecie, jestem zdaniem
zwróciłbym to
verb noun, pronoun verb adjective noun
Idealnie, chciałbym w końcu pójść o krok dalej i zrobić zdanie i programowo zrozumieć, co próbuje zinterpretować, i może coś z tym zrobić.
Moje pytanie brzmi: czy ktoś słyszał o czymś takim?
Odpowiedzi:
Nazywa się to Przetwarzaniem języka naturalnego i jest to ogromne, złożone pole. Coś, co opisujesz, jest monumentalnym osiągnięciem, a nawet najlepsze rozwiązania, takie jak Watson , nie są dalekie od ideału.
Takie rzeczy sprawiają, że jest to trudne: „Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo”
źródło
Chociaż podzielenie zdania i określenie poprawności gramatycznej wraz z rozwiązaniem pierwszego problemu jest łatwiejsze niż drugi problem, wiele zawiłości, takich jak rzeczowniki czasownikowe lub gerunda, takie jak pływanie, programowanie itp. I inne tego rodzaju zawiłości, wciąż stanowi wyzwanie - patrz Morons. odpowiedź.
Ale twój drugi problem - ludzie włożyli wiele wysiłku w znalezienie idealnego rozwiązania, ale naprawdę doskonałego algorytmu „interpretacji” nie da się praktycznie zrealizować w żadnym języku naturalnym, takim jak angielski - istnieją odmiany, które popsułyby twój algorytm. Ta dziedzina - hybryda sztucznej inteligencji, informatyki i językoznawstwa znana jest jako NLP . Zastanów się: nawet Tłumacz Google nie jest idealny do „tłumaczenia” zdań.
Niemniej jednak jest to bardzo interesujące pole do zabawy.
źródło
Myślę, że powinieneś zacząć czytać ten artykuł w Wikipedii:
http://en.wikipedia.org/wiki/Part-of-speech_tagging
(jest to dziedzina badawcza, nie oczekujcie żadnego łatwego rozwiązania).
źródło
Tanim sposobem byłoby założenie bazy danych słownika (jestem prawie pewien, że ktoś to zrobił).
Potrzebujesz dwóch pól w tabeli:
word
iusage
Zamień frazę w tablicę ciągów (każde słowo jest ciągiem) i niezależnie:
To ciężkie rozwiązanie, ale z którego korzystałem w przeszłości.
źródło