?

Log in

No account? Create an account

Компьютерная лингвистика

Новостная лента www.solarix.ru

Entries by tag: морфологический разбор текста

Исходники чат-бота (диалоговой системы): утилита для генерации вопросно-ответного датасета
kelijah
Продолжение https://kelijah.livejournal.com/231141.html.
Исходный текст утилиты (C#, проект для VS Studio 2015) лежит тут https://github.com/Koziev/chatbot/tree/master/CSharpCode/GenerateQA
Далее подробное описание.

Read more...Collapse )

Сеточные char-level модели морфологического анализа и лемматизации для MorphoRuEval 2017
kelijah

Далее будут кратко описаны три модели. Две модели для частичной разметки соответствуют последовательным экспериментам по выбору общей архитектуры. Условно они называются Model1 и Ensemble. Модель лемматизации общая, ансамбль для нее я не делал, хотя это безусловно возможно и даже желательно.


Исходные тексты можно найти на гитхабе: https://github.com/Koziev/MorphoRuEval2017

Read more...Collapse )
PS: Ансамбль будет описан отдельно.

Сеточная модель для определения части речи слова по его символьному представлению
kelijah
Еще одна сеточная модель для char-based language modeling.
Для произвольной цепочки символов пытаемся определить, к какой части речи это слово относится.
Read more...Collapse )

Консольный веб-сервис нормализации словосочетаний на русском языке
kelijah
Реализован на C# с использованием WCF в VisualStudio 2015
Запускается для удобства как консольное приложение (self-hosted web-service), то есть контейнер в виде IIS не нужен.
Позволяет через HTTP-запросы выполнять нормализацию словосочетаний, то есть приведение существительного к форме именительного падежа и единственного числа, и пересогласование зависимого прилагательного, и так далее:
Read more...Collapse )
Польза от реализации в виде веб-сервиса - словарная база грузится в память один раз, а потом все запросы выполняются уже без этого оверхеда.

Исходники лежат тут: https://github.com/Koziev/GrammarEngine/tree/master/src/demo/ai/solarix/Grammar_Engine/NormalizePhraseWebService
Сопутствующие изменения в низкоуровневом API грамматического словаря я пока не выкладываю, сделаем это попозже.

Новый релиз парсера с русской словарной базой под Win32
kelijah
Новый, расширенный русский лексикон.
Доработанная русская морфологическая модель.
Вероятностные модели обучены но новой версии эталонного корпуса.
Подключена новая модель вероятностного русского лемматизатора, который учитывает контекст слова.

Страница с описанием с ссылкой на скачивание: http://www.solarix.ru/parser.shtml

Сейчас этот релиз парсера обкатывается на задаче разбора отзывов. Собираю багрепорты, которые будут учтены в следующей версии. Также в следующем релизе будет добавлена большая порция словарных статей в русский лексикон.

Новая модель лемматизации, заточенная под задачу Named Entry Recognition
kelijah
Новая модель лемматизации работает поверх морфологической модели, и поэтому лучше приспособлена к работе с несловарными элементами - всякими фамилиями, названиями и так далее.

Эта модель будет включена в следующую версию Парсера.

Простой (отладочный) пример. На входе - предложение "Я встретил В.И.Ленина".

На выходе парсера имеем такую частеречную разметку:
Read more...Collapse )

Обратим внимание на следующий элемент:
Read more...Collapse )

Расширение морфологического движка для решения задачи Named Entry Recognition
kelijah
В морфологический движок внесена следующая фича.
Теперь, даже если слово найдено в лексиконе, движок все равно применяет некоторые правила несловарной морфологии и добавляет их результаты в набор.
Это позволяет распознавать различные ФИО без искажения опознанной части речи и формы.
Например, для входного предложения "Пихт грустно улыбнулся." можно заметить, что фамилия Пихт является формой родительного падежа множественного числа существительного "пихта". Из-за этого синтаксический парсер вынужден закрывать глаза на морфологическую форму слова, и далее по цепочке получается странная информации в tree bank - подлежащее в родительном падеже. Подозреваю, что некоторая доля от текущий 1.1% ошибаемости на part-of-speech tagging возникает из-за этих искажений.
Теперь же движок умеет делать так:Read more...Collapse )

Текущие работы над английским парсером
kelijah
1. Еще одно давно запланированное изменение в модели английской морфологии: из лексикона убраны статьи для фразовых глаголов. Решение описывать эти сущности жесткими словарными статьями, конечно, было неверным, и вот я исправился. Теперь будем разбирать их примерно так же, как это делает Link Grammar Parser. Какие-то фразовые глаголы будут формально разбираться с предложными дополнениями, какие-то с наречными. Отдельную категорию частиц-постфиксов вводить не буду, резона в этом не вижу.

Кстати, интересный нюанс. Английские фразовые глаголы - это полное и безоговорочное уничтожение любой попытки описывать смысл предложения через формальное сложение "смыслов" слов. Потому что to look out это, конечно, не есть сумма значения to look и наречия out. И в отличие от русского языка с идиоматическими "бить баклуши" и "дать деру", в английском эти фразовые глаголы употребляются очень интенсивно. Так вот я почему-то ни разу не встречал, например, у Сочера в его работах по векторной модели предложения упоминания о каких-то особенностях в связи с этими штуками. А по идее-то вопрос очень важный, так как часть фразовых глаголов, которые конструируются с постфиксом, нужно считать MWU и обрабатывать в word2vector модели как единое целое, даже если постфикс отделен от глагола другими словами:

You should think it over.

2. Разбор с притяжательным постфиксом теперь выглядит так.

Исходное предложение: Aeneas's forces prevailed.

Неслованая форма Aeneas в нем обрабатывается так же, как в русском синтаксисе. Итоговый вид синтаксического дерева:

Изменения в морфологической и синтаксической модели английского языка...Collapse )

Изменения в английской морфологической модели
kelijah
Делаю ревизию английской морфологии в словарной базе. Первое изменение было задумано очень давно, но большой нужды до последнего момента не было.

Теперь, начиная с версии словаря 179, окончание притяжательных форм существительных 's выделено в отдельный "притяжательный постфикс". Таким образом, токенизатор теперь не делает отдельные ветки в графе токенизации, чтобы правильно учесть альтернативный вариант с формой глагола is.
Притяжательные формы убраны из парадигмы английского существительного. Вместо них введен тег "HAS_POSSESSIVE_FORM", чтобы синтаксический парсер мог связать постфикс с существительным.

Дальнейшие планы по анлийскому словарю:

1. Проверить возможность обучить вероятностную морфологическую модель (part-of-speech tagger) на той же алгоритмической базе, которая использована в русской частеречной разметке. Для этого я сейчас выбираю оптимальный вариант получения обучающего корпуса.

2. Проверить возможность обучения синтаксического парсера. В DESR и других аналогичных парсерах есть готовые обученные модели, но возможность самостоятельно дообучить модель на своих примерах может быть важна.

Глокая куздра и морфологический разбор с синтаксическим анализом
kelijah
[В продолжение темы kelijah.livejournal.com/154769.html]

Синтаксический разбор предложения "Глокая куздра штеко будланула бокра и курдячит бокрёнка" силами только модуля несловарной морфологии в текущей разрабатываемой версии.

Рендеринг синтаксического дерева:Read more...Collapse )

Выдача морфологического анализатора (part-of-speech tagger'а):
Read more...Collapse )

И дерево зависимостей в текстовом виде:
Read more...Collapse )

Наречия по-прежнему остаются основной проблемой. В данном случае слово "штеко" на самом деле дает также и вариан распознавания в виде существительного, аналогично "блио". Несклоняемость таких существительных приводит к тому, что "штеко" дает и вариант существительного в родительном падеже, что далее приводит к появлению связывания "куздра штеко", которое в демонстрации отсутствует по техническим причинам - задано ограничение на число анализируемых вариантов в виде beam_size=10.