яндекс обещает вывести томиту в опен-сорс

Называется технология Томита-парсер, и по большому счету, любой желающий может воспользоваться ей уже сейчас: бинарные файлы доступны для скачивания. Однако прежде чем пользоваться технологией, нужно научиться ее правильно готовить.

Алгоритм GLR

Назван инструмент в честь японского ученого Масару Томита, автора алгоритма GLR-парсинга (Generalized left-to-right algorithm), на основе которого и был создан Томита-парсер. Еще в 1984 году он описал имплементацию этого алгоритма, поставив перед собой задачу эффективно и точно производить анализ текстов на естественном языке. В некотором роде GLR-алгоритм — это расширенная версия алгоритма LR-парсинга. Но LR-алгоритм предназначен для анализа текстов, написанных на достаточно строго детерминированных языках программирования, и с естественным языком работать не может. Томита решил эту проблему путем параллелизации стеков, что позволило рассматривать различные трактовки тех или иных участков текста: как только возникает возможность различной трактовки, стек разветвляется. Таких последовательных разветвлений может быть несколько, но в процессе анализа ошибочные ветви отбрасываются, и результатом становится наиболее длинная цепочка. При этом алгоритм выдает результаты своей работы в режиме реального времени, по мере продвижения вглубь текста, другие алгоритмы обработки естественного языка такой особенностью не обладают.

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

Об авторе Лидия Пивоварова

СПбГУ - старший преподаватель, University of Helsinki - PhD student http://philarts.spbu.ru/structure/sub-faculties/itah_phil/teachers/pivovarova
Запись опубликована в рубрике Без рубрики. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *