Научная статья на тему 'Усовершенствование метода пополнения морфологического словаря'

Усовершенствование метода пополнения морфологического словаря Текст научной статьи по специальности «Экономика и бизнес»

CC BY
113
71
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Усовершенствование метода пополнения морфологического словаря»

Усовершенствование метода пополнения морфологического словаря

Черненьков Д.М.

Московский государственный институт электроники и математики, каф. ИТАС

Введение

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

Существует несколько методов создания автоматических морфологий. Требования к морфологическому анализатору зависят от задачи, для решения которой он применяется. Так, в [1] описаны методы морфологического анализа для поисковых систем. Основными требованиями в данном случае являются производительность и полнота анализа. Т.е. анализатор должен выдавать результат для максимального количества различных словоформ. При этом подробная информация как правило не требуется. Для основных задач информационного поиска достаточно получения нормальной формы из произвольной словоформы. В такого рода анализаторах словарь не является обязательным компонентом, и даже при его наличии производится анализ как словарных, так и несловарных словоформ. В [2,3] описаны варианты алгоритмов морфологического анализа, использующие индексы постфиксов, и набор правил словообразования.

Системы, в которых морфологический анализ является лишь промежуточной ступенью, за которой, как минимум, следует ступень синтаксического анализа [4,5], нуждаются в более подробной грамматической информации о каждой словоформе. В русском языке можно насчитать до 15 грамматических категорий, так или иначе выразимых морфологически, до 100 грамматических значений на часть речи (и соответственно, до 100 форм на слово) и свыше 2000 парадигм словоизменения [6]. В связи с этим, для полного, точного и подробного морфологического анализа русских словоформ необходим словарный алгоритм. Причем словарь должен содержать полную грамматическую информацию о каждом слове и каждой словоформе.

Большинство словарных морфологий для русского языка основаны на грамматическом словаре А.А. Зализняка. Однако для применения анализаторов в практических целях необходимо пополнение словаря тем или иным методом. В [7,8] описаны методы автоматического и автоматизированного пополнения морфологических словарей с использованием корпусов текстов. Эти методы основаны на статистических свойствах языка. Основной проблемой, которая решаются в этих работах, является проблема неоднозначности разбора несловарных словоформ и необходимости выбора правильной гипотезы лемматизации. В [7] предлагается группировать гипотезы различными методами, и выбирать группы с наибольшей встречаемостью словоформ в корпусе. В [8] данный метод дополняется учетом статистических свойств парадигм, а также учет наиболее используемых словообразовательных префиксов.

Оба метода дают достаточно высокую точность. Однако в [7] выходным результатом алгоритма является набор гипотез, из которых по прежнему необходимо выбирать верную, т.е. процесс пополнения словаря автоматизирован лишь частично. В [8], с другой стороны, на выходе мы получаем лишь канонические формы для несловарных словоформ, в то время как для многих задач необходимо определить полную парадигму словоизменения.

Кроме того, при решении задачи снятия омонимии (при которой возникают аналогичная проблема неоднозначности морфологического анализа) используются методы анализа ближайшего контекста анализуемой словоформы [9]. В основе метода лежит предположение, что соседние слова с большой вероятностью связаны грамматическими отношениями, такими как согласование или управление. Данный метод можно применять и для выбора гипотез лемматизации несловарных словоформ.

Цели и задачи

Целью данной работы является объединение существующих методов анализа несловарной лексики и пополнения словарей для создания максимально точного алгоритма пополнения, требующего минимальной ручной обработки результатов. За основу берется математическая модель и алгоритм, описанные в [10]. Кратко этот алгоритм можно описать как последовательность шагов:

1. Выделить несловарные словоформы из корпуса

2. По каждой словоформе построить все возможные гипотезы лемматизации. Объединить построенные гипотезы в одно множество без дубликатов

3. Отфильтровать гипотезы по некоторому признаку

4. Кластеризовать гипотезы, выделив компоненты связности в биграфе гипотезы-словоформы

5. Из каждого класса по некоторому критерию выбрать одну или несколько наилучших гипотез

Для достижения поставленной цели необходимо решить ряд проблем:

1. Оценка качества и анализ результатов. Отсутствие достаточно крупного размеченного корпуса с несловарной лексикой. Кроме того, пока неясен критерий оценки точности анализа. В приведенных во введении работах используются различные критерии качества. Необходима выработка критерия качества в соответствии с основным назначением данной системы.

2. Большое число факторов, которые нужно учитывать при отборе гипотез. Затруднителен ручной подбор критериев отброса и ранжирования гипотез.

3. Большое количество парадигм в словаре порождает множество гипотез для каждой словоформы. Среди этих гипотез лишь небольшая доля верных (около одной тысячной). При попытке анализа факторов совокупность верных гипотез оказывается статистически незначимой.

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

гипотез (в силу описанного алгоритма выбора словоформ, правильный их разбор всегда можно определить из словаря).

Применение машинного обучения

Задачи фильтрации и выбора объектов некоторого типа по множеству признаков можно сформулировать как задачи машинного обучения при условии наличия подходящей обучающей выборки. Кроме того, необходимо количественное выражение всех факторов отбора. Если использовать метод деления словарей, описанный выше, можно построить достаточно большую выборку гипотез, помеченых как либо верные, либо неверные. При этом для фильтрации можно использовать алгоритмы классификации (разделение на 2 класса - верные и неверные гипотезы), а для выбора гипотез из кластеров - алгоритмы регрессии (генерация метки-действительного числа для каждой гипотезы и выбор из каждого класса гипотез с наибольшими значениями меток).

Однако при построении классификатора для фильтрации возникает следующая проблема: в обучающей выборке присутствует хотя бы одна верная гипотеза для каждой анализируемой словоформы, в то время как основное назначение фильтрации - отбросить опечатки и прочий «мусор», т.е. токены, в принципе не имеющие верного разбора. Поэтому на данный момент предлагается использовать для фильтрации старые критерии, полученные в [10].

Рассмотрим подробнее вариант использования регрессии для выбора гипотез из кластера. Задача регрессии [11] состоит в поиске функции/(х):

Где XI - векторы входных значений (факторов), уг соответствующее выходное значение (метка), Ь - функция ошибки, конкретный вид которой зависит от алгоритма регрессии.

Метка в обучающей выборке может принимать 2 значения - для верных и для неверных гипотез. Однако удобно будет, если функция f будет принимать произвольные значения на некотором действительном отрезке - в таком случае из каждого кластера можно будет выбирать гипотезы с наибольшим ее значением. Для данной задачи хорошо подходят различные варианты логистической регрессии [12]. При этом меткам присваиваются значения 1 и 0 для верных и неверных гипотез соответственно. В общем случае функция / имеет вид

Ля-ттт®».

Легко видеть, что /(х}€ (0/1) при д(х) ё (—со^+ео). В большинстве вариантов д [;■:: имеет линейный или квадратный вид относительно аргументов, а функция ошибки имеет вид

£ (у^/ы) = -У[ * /Ы - (1 - У*) * (1 - /(*{))

При этом возвращаемое функцией значение можно рассматривать как оценку вероятности того, что у=1, т.е. что гипотеза верна, при данных значениях факторов.

Аналогично логистической регрессии можно использовать и другие алгоритмы регрессии, а также варианты алгоритмов классификации, дающие вероятностную оценку принадлежности объекта выборки к заданному классу. Выбор конкретного алгоритма и его параметров осуществляется экспериментально. При этом важно

понимать, что обучение регрессоров, сравнение качества регрессоров и финальная оценка качества должны проходить на разных выборках, в противном случае будет получена неверная, слишком оптимистичная оценка [11, 12].

Описание факторов

Как уже было сказано выше, для применения машинного обучения необходимо численное выражение всех факторов отбора гипотез. В [10] был предложен ряд факторов: частотность словоформ, покрываемых гипотезой, в корпусе, число различных покрываемых словоформ в корпусе, число лексем в словаре с тем же постфиксом псевдоосновы заданной длины. В данной работе предлагается модифицировать и расширить набор факторов. Ниже приводится полный список с описаниями:

1. Число вхождений в корпус словоформ, покрываемых данной гипотезой

2. Число различных словоформ входящих в корпус и покрываемых данной гипотезой

3. Число лексем в словаре с той же парадигмой, которые имеют тот же постфикс длины 1, что и словоформы данной гипотезы, причем берется среднее этих чисел для всех форм. Для разных значений 1 будут использованы разные факторы.

4. Сочетаемость по биграммам. Каждой словоформе присваивается тег (грамматическое значение, совокупность части речи, изменяемых и неизменяемых параметров), и производится подсчет биграммов

(с» \ и и и гр

последовательностей из двух слов) с каждой возможной парой тегов. Тег,

присваиваемый несловарной словоформе зависит от рассматриваемой гипотезы. В каждом вхождении покрываемой гипотезой словоформы ищется вероятность встретить такой же теговый биграм, как образует анализируемая словоформа либо со следующей словоформой, либо с предыдущей. Эти вероятности суммируются. При анализе следующих и предыдущих слов соответственно возникают два новых фактора.

5. Аналогичные признаки для триграмм. Считаются несловарных словоформ оказаться, соответственно, в начале, середине или конце триграмма.

6. Если у предполагаемой лексемы есть распространенная приставка, и то же самое слово без приставки уже есть в словаре, то условная вероятность что лексема с данной приставкой есть в словаре при том что есть аналогичная лексема без приставки. Здесь также необходим учет парадигм, к которым относятся соответствующие слова. Необходимо помнить, что при добавлении приставки парадигма может меняться («бежать» совершенного вида, «прибежать» - несовершенного)

7. Аналогичный фактор с анализом суффиксов вместо приставок.

Сокращение числа гипотез

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

• Кластеризация парадигм. Если у парадигм А и В одинаковые части речи и наборы неизменяемых параметров, и при этом множество форм парадигмы А целиком входит в множество форм В, то эти две парадигмы объединяются, а при генерации гипотез используется только В (с большим числом форм). Этот метод позволяет сократить число парадигм, а значит и генерируемых гипотез, приблизительно вдвое. Поскольку гипотезы считаются эквивалентными, верные разборы не теряются.

• Фильтрация гипотез перед кластеризацией. Подробнее описана в [10].

• Отсечение гипотез в кластерах. Для каждого кластера составляется список всех словоформ, покрываемых его гипотезами. Из этих словоформ выбирается 3, наиболее часто входящие в корпус. Гипотезы, не покрывающие хотя бы одну из этих словоформ, удаляются из кластера. При этом отсеивается около 60% неверных гипотез и около 5% верных. Данная эвристика предложена в [13], где она используется для сокращения размера поискового индекса.

Даже с учетом этих мер число неверных гипотез в выборке превышает число верных более, чем в 100 раз. Построение качественного регрессора на такой выборке затруднительно.

В связи с этим предлагается пересмотреть понятие верных и неверных гипотез. Во многих случаях, ошибка в выборе парадигмы случается единственно из-за разницы в малораспространенных формах, не встреченных в корпусе. Кроме того, разница может быть в морфологически не выраженных в большинстве ситуаций параметрах, таких как вид глагола. В связи с этим, можно ввести оценку верности парадигм в интервале от 0 до 1. Если неправильно определена часть речи, то гипотеза точно неверна и ее оценка 0. Далее, необходимо ввести коэффициенты а,Ь и считать оценку равной а*1(совпадают неизменяемые параметры) + Ь*(число совпавших с верной лексемой форм)/(общее число форм); а+Ь=1. Подбор параметров а и Ь должен осуществляться в зависимости от требования к словарю. В такой постановке задача окончательно принимает вид регрессионной.

Выводы

Разработан новый алгоритм извлечения несловарной лексики из корпуса текста. Его можно разделить на следующие шаги:

1. Кластеризация парадигм в словаре

2. Разбиение словаря на генерирующие и валидационный

3. Генерация гипотез, для словоформ, которых нет в генерационном словаре, но которые могут быть проверены с помощью валидационного

4. Расчет факторов фильтрации и фильтрация гипотез

5. Кластеризация гипотез

6. Отсечение гипотез в кластерах

7. Генерация выборки: расчет факторов и оценка гипотез по валидационному словарю

8. Разделение выборки на три части: обучающую, тестовую, валидационную

9. Обучение регрессоров на обучающей выборке.

10. Выбор регрессора и оптимизация его параметров на основе качества на валидационной выборке

11. Финальная оценка качества регрессии на тестовой выборке

12. Объединение словарей в один

13. Генерация гипотез по всем несловарным словам

І4. Расчет факторов фильтрации и фильтрация гипотез

ІЗ. Кластеризация гипотез

16. Отсечение гипотез в кластерах

17. Генерация выборки: расчет факторов и оценка гипотез по валидационному словарю

18. Использование регрессора на данной выборке, отбор гипотез по результатам регрессии

19. Вывод отобранных гипотез. Они могут быть добавлены в словарь.

Поскольку разбиения на шагах І и 8 можно сделать разными способами, для

уточнения оценки качества ее можно усреднить для нескольких вариантов разбиений (Возможные методы разбиений: k-fold, bootstrap и др.[12]).

Для оценки качества анализа необходимо провести эксперименты с различными алгоритмами и параметрами регрессии, а также с различными факторами и порогами фильтрации. В случае неприемлимого качества нужно будет провести анализ ошибок, по результатам которого модифицировать набор факторов.

Литература

1. Сегалович И.В., Маслов М. А., Русский морфологический анализ и синтез с генерацией моделей словоизменения для не описанных в словаре слов,

2. Гельбух А.Ф., Эффективно реализуемая модель морфологии флективного

т~ч и и и и

естественного языка, Всероссийский институт научной и технической информации, Москва І994,

3. Ножом И.М., Морфологическая и синтаксическая обработка текста (модели и программы), Москва 2003,

4. Крылов С.А., Старостин С.А., Актуальные задачи морфологического анализа и синтеза в интегрированной информационной среде Starling, Диалог 2003

З. Мальковский М.Г., Старостин А.С., Система морфо-синтаксического анализа Treeton и мультиагентный синтаксический анализатор Treevial: принцип работы, система правил и штрафов.

6. Зализняк А. А., Грамматический словарь русского языка, 2-е изд., «Русский язык», Москва, 1980.

7. Ляшевская О. Н., Сичинава Д. В., Кобрицов Б. П., Автоматизация построения словаря на материалемассива несловарных словоформ.

8. Андреев А.В., Березкин Д.В., Симаков К.В., Обучение морфологического анализатора на большой электронной коллекции текстовых документов.

9. Сокирко А. В., Сравнение эффективности двух методик снятия лексической и морфологической неоднозначности для русского языка, Москва 200З

10. Черненьков Д.М., Предсказание морфологических характеристик и парадигм словоизменения несловарных словоформ в текстах на русском языке, Мегалинг 2009

11. Alpaydin E, Introduction to Machine Learning, The MIT Press, October 2004

12. Friedman J, Hastie T, Tibshirani R, The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Springer, Stanford February 2009

13. Очагова Л.Н., Маслякова В.М., Зайцева Е.М., Дунаевская С.М. Универсальная технология формирования словаря баз данных CDS/ISIS с использованием основ терминов, Государственная публичная научно-техническая библиотека России, Москва 2000

i Надоели баннеры? Вы всегда можете отключить рекламу.