Изменения

Перейти к: навигация, поиск

Обработка естественного языка

71 байт убрано, 19:22, 14 января 2021
Частеречная разметка
=== Частеречная разметка ===
Частеречная разметка (POS-тэгирование, англ. part-of-speech tagging) используется в NLP для определения части речи и грамматических характеристик слов в тексте с приписыванием им соответствующих тегов. Модель необходима, когда значение слова зависит от контекста. Например, в предложениях "Каменный замокСтоловая ложка" и "Железный замокШкольная столовая" слово "замокстоловая" используется в разных значенияхимеет разные части речи. POS-тэгирование позволяет сопоставить слову в тексте специальный тэг на основе его значения и контекста.
Алгоритмы частеречной разметки делятся на несколько групп:
* ''Стохастический метод''. Такой метод имеет два похожих друг на друга подхода. Первый подход использует для выбора тэга частоту основывается на частоте встречаемости конкретного слова с конкретным тэгом. То есть, : если определенное слово встречается в тренировочном наборе чаще всего с тэгом "существительное", то скорее всего и сейчас оно будет иметь такой тэг. Второй вариант использует n-граммы {{---}} анализируя входную последовательность, алгоритм высчитывает вероятность, что в данном контексте будет определенный тэг. В конце просчета вероятностей выбирается тэг, который имеет наибольшую вероятность.
* ''Основанные на правилах''. Метод основан на заранее известных правилах. Алгоритм состоит из двух стадий. Сначала расставляются потенциальные тэги всем словам на основе словаря или по какому-либо другому принципу. Далее, если у какого-нибудь слова оказалось несколько тэгов, правильный тэг выбирается на основе рукописных правил. Правил должно быть много, чтобы решить все возникшие неопределенности и учесть все случаи. Например, правило: слова длиной меньше трех символов являются частицами, местоимениями или предлогами. Однако такое правило не учитывает некоторые короткие слова из других частей речи.
* ''С использованием [[Скрытые Марковские модели|скрытой марковской модели]]''. Пусть в нашей Марковской модели ''тэги'' будут '''скрытыми состояниями''', которые производят '''наблюдаемое событие''' - ''слова''. С математической точки зрения, мы хотим найти такую ''последовательность тэгов (C)'', которая будет максимизировать условную вероятность <tex>P(C|W)</tex>, где <tex>C = C_1, C_2, \dots C_T</tex> и <tex>W = W_1, W_2, \dots W_T</tex>. Воспользовавшись формулой Байеса получим, что максимизировать необходимо следующее выражение: <tex>p(C_1, C_2, \dots C_T) \cdot p(W_1, W_2, \dots W_T | C_1, C_2, \dots C_T)</tex>.
101
правка

Навигация