5.2. Структура морфологического словаря

advertisement
Московский Энергетический Институт
(технический университет)
Кафедра вычислительных машин, систем и сетей.
Система классификации текстов на основе алгоритмов машинного
обучения и синтаксического анализа естественного языка.
Выполнил: Коростелёв И.В., А-8-02
Руководитель: Вышеславцев А.П.
Москва, 2007
Содержание
Содержание .............................................................................................................. 2
Обозначения и сокращения .................................................................................... 3
Введение ................................................................................................................... 4
1. Постановка задачи ............................................................................................. 5
2. Выбор подхода к построению системы ........................................................... 6
2.1. Характеристика методов, основанных на ручном создании правил .... 6
2.2. Характеристика методов, основанных на машинном обучении ........... 7
3. Выбор представления текста ............................................................................ 9
3.1. Выбор разбиения на термы ....................................................................... 9
3.2. Выбор весовой функции .......................................................................... 12
4. Выбор алгоритма машинного обучения ........................................................ 15
4.1. Методика измерения характеристик классификатора.......................... 15
4.2. Используемые метрики............................................................................ 16
4.2.1. Точность и полнота. ......................................................................... 16
4.2.2. Комбинированные метрики эффективности ................................. 19
4.3. Сравнение алгоритмов ............................................................................. 20
4.4. Метод опорных векторов......................................................................... 26
4.5. K ближайших соседей .............................................................................. 27
5. Разработка алгоритма морфологического анализа ....................................... 29
5.1. Выбор модели морфологического анализа............................................ 29
5.2. Структура морфологического словаря................................................... 31
5.3. Алгоритм морфологического анализа.................................................... 33
6. Разработка алгоритма синтаксического анализа и выбора термов (нет) ... 37
7. Ещё предстоит сделать (TODO) ..................................................................... 38
Список использованных источников .................................................................. 43
2
Обозначения и сокращения
АПТ – автоматическое понимание текста
ДОК – Документ-ориентированная классификация
КОК – Класс-ориентированная классификация
ИП – информационный поиск
МО – машинное обучение
МОВ – метод опорных векторов
ТК – текстовая классификация
k-NN – k ближайших соседей
3
Введение
С каждым годом увеличивается объем доступных пользователю
массивов текстовой информации, и поэтому становится все более актуальной
задача поиска необходимых пользователю документов в таких массивах. Для
решения
этой
классификаторы,
задачи
часто
рубрикаторы
применяются
и
т.
д.,
различные
которые
тематические
позволяют
искать
(автоматически или вручную) документы в небольшом подмножестве
документной базы, соответствующем интересующей пользователя тематике.
В данной работе рассматривается способ построения системы
автоматической
классификации,
способной
обучаться
на
заданных
пользователями образцах. Такая система может быть использована для
повышения
точности
поиска
в
информационно-поисковой
системе,
формирования тематических коллекций страниц Интернет, а также для
автоматической фильтрации сообщений.
Предложенная методика обеспечивает лучшее «понимание» системой
классификации текста, чем
аналоги, за счёт применения части методов
вычислительной лингвистики, а именно синтаксического анализа, что в
идеале позволяет добиться повышения качества классификации.
4
1. Постановка задачи
Требуется
разработать
систему
текстовой
классификации
для
произвольных текстовых документов, с использованием произвольного числа
иерархически связанных категорий (классов).
Задача текстовой классификации заключается в присвоении булевского
значения каждой упорядоченной паре (dj, ci) из D x C, где D – множество всех
документов, а C – множество определённых категорий. Истина, в случае,
если документ принадлежит категории, и ложь иначе. Более формально,
задача
заключается
в
приближении
неизвестной
целевой
функции
’: D x C  {T, F}, которая описывает как документы должны быть
классифицированы,
некоторой
функцией
: D x C  {T, F},
которая
называется классификатором, так, чтобы функции ’ и  совпадали как
можно больше. Существует несколько метрик совпадения этих функций, они
будут даны в разделе 4.2.
При теоретическом решении задачи текстовой классификации, как
правило, предполагают, что:
 Категории это просто метки. Их «физический» смысл неизвестен;
 Никаких внешних знаний о классифицируемых текстах нет. Т.е.
использование такой информации, как «источник текста», «дата
публикации», «тип документа» и им подобной не допускается.
Категории могут быть объединены в иерархию, которая задаётся
множеством H: C x C, состоящим из упорядоченных пар <ci, cj>, которые
указывают, что категория cj является подкатегорией ci.
5
2. Выбор подхода к построению системы
Существует два основных способа построения системы текстовой
классификации:
 ручное создание правил классификации;
 применение методов машинного обучения.
В
80е
годы
наиболее
популярным
подходом
к
построению
автоматических классификаторов было ручное создание экспертной системы.
В настоящее время наблюдается сдвиг внимания в область методов МО.
2.1. Характеристика методов, основанных на ручном создании правил
Как правило, система состоит из набора вручную определённых
логических правил, по одному на категорию. «Если (ДНФ формула), то
документ
принадлежит
к
категории».
Эта
модель
классификации
соответствует булевской модели поиска [1].
ДНФ (дизъюнктивная нормальная форма) – дизъюнкция нескольких
конъюнкций-подвыражений. Документ классифицируется, как относящийся
к категории, если формула принимает истинное значение, т.е. хотя бы одно
подвыражение – истинно. На рисунке 2.1.1 приведён пример одного правила
из системы Construe [3].
if (( wheat  farm) 
( wheat  com mod ity ) 
(bushel  exp ort ) 
( wheat  tonne) 
( wheat  wi nter  soft )) then WHEAT else WHEAT
Рисунок 2.1.1 – Правило для классификации текста под категорией
«пшеница» (wheat)
6
Этот подход за счёт тонкой ручной настройки может давать очень
хорошие результаты. Хайес используя этот подход добился результата
нахождения точки перелома в 0.90 [3], что превосходит большинство
классификаторов построенных на основе методик машинного обучения.
Недостатком этого метода является проблема «выделения знаний»,
хорошо известная в области экспертных систем. В частности, правило
должно быть вручную определено двумя людьми: экспертом в проблемной
области и инженером экспертной системы. Если набор категорий изменился,
то вновь придётся вручную добавлять новые и изменять старые правила. В
случае переноса системы на новую область знаний необходимо выполнять
всю работу по созданию правил с нуля.
2.2. Характеристика методов, основанных на машинном обучении
С развитием локальных и глобальных сетей объёмы информации,
требующей классификации, возросли многократно – ручное построение
правил слишком трудоёмко, а зачастую и вовсе невозможно, например, в
случае каталогов Интернет-ресурсов. Зачастую, можно пожертвовать
небольшой потерей точности, значительно упростив процесс настройки
классификатора. Этого можно добиться, применяя методы машинного
обучения.
МО подход основывается на наличии исходного корпуса документов,
классификация которых была произведена заранее. Т.е. значение функции
: D x C -> {T, F} известно для каждой пары (d, c) из   C. Документ dj –
положительный пример ci, если (dj, ci) = T, и отрицательный в противном
случае.
Большинство методов МО являются бинарными: рассматривают всего
два класса ci или ci . Если документ может принадлежать к 0 или более
категориям, то это классификация с пересекающимися категориями
(overlapping categories, multi-label). С теоретической точки зрения случай
7
бинарной классификации является более общим, чем с пересекающимися
категориями, т.к. алгоритм бинарной классификации можно применить к
нескольким
категориям:
достаточно
переформулировать
задачу
классификации под несколькими пересекающимися категориями c1, … , c|C|,
как |C| непересекающихся задач бинарной классификации для (ci и ci ).
Поэтому далее будут рассматриваться только бинарные методы.
В процессе машинного обучения некоторый предварительный процесс
(называемый обучением) автоматически строит классификатор для категории
ci, наблюдая за характеристиками документов, которым была присвоена
экспертом категория ci или ci . Из их характеристик выбираются те, которые
должен иметь классифицируемый документ, чтобы ему была присвоена
категория
ci .
В
терминах
машинного
обучения
–
это
процесс
контролируемого обучения, т.к. в процессе обучения известно к каким
категориям относятся все документы из тренировочной коллекции.
Методы, основанные на машинном обучении, имеют значительные
преимущества перед ручным составлением правил. Т.к. основные усилия
направлены не на создание классификатора, а на создание обобщённого
алгоритма обучения, то при изменении набора категорий или даже всей
предметной области достаточно просто ещё раз выполнить процесс
(автоматического) обучения, чтобы получить готовый классификатор. При
этом можно достигнуть качества классификации, сопоставимого с созданием
правил вручную (равного, или на несколько процентов меньшего). Поэтому в
качестве подхода к построению системы классификации текстов выбрано
использование алгоритмов на основе МО.
8
3. Выбор представления текста
Тексты
не
могут
напрямую
интерпретироваться
алгоритмами
классификации, так как они оперируют числовыми данными, а текст это
всего лишь последовательность символов. Поэтому требуется процесс
индексации, в результате которого получается компактное представление
документа dj, удобное для дальнейшей обработки. Выбор представления
текста зависит от того, что считается несущими смысл частями текста, и
какие правила обработки естественного текста допустимо применять к этим
частям.
Все алгоритмы МО используют представление документа dj в виде
вектора весов термов dj = <wj,1, …, wj,|T|>, где T – множество всех термов,
которые учитываются в тексте. wj,k – вес k-го терма в документе dj,
показывает, насколько большую смысловую нагрузку несёт k-й терм в
документе. Есть два основных различия в подходах к представлению текстов:
1. что считается термом;
2. как определяется вес терма.
3.1. Выбор разбиения на термы
Как правило, в качестве термов выбирают отдельные слова или их
основы (что позволяет считать вхождение в текст, например, слов «мама» и
«мамы» эквивалентными, так как правило делают люди). Эта модель носит
название “bag-of-words”, т.к. она не сохраняет информации о порядке
вхождения слов в документ.
В некоторых системах в качестве терма выбираются фразы. Под фразой
может пониматься n-грамма (n последовательно идущих в тексте слов) или
статистически часто встречающиеся пары слов в предложении.
Выбор в качестве термов отдельных слов уже достаточно глубоко
изучен, и повсеместно применяется на практике. Мы считаем, что требуется
9
переходить к альтернативным представлениям текста, более детально
учитывающим структуру текста.
В работе [15] было предложено проводить синтаксический анализ при
обработке текста в области информационного поиска. Даже использование
достаточно грубой модели языка позволило повысить качество поиска.
Аналогичных работ в области текстовой классификации для русского языка
не было, но близость методов, применяемых в ИП и ТК, позволяет
предположить, что за счёт использования синтаксического анализа, так же
можно повысить качество классификации.
Ещё больший выигрыш можно было бы получить, добавив этап
семантического (смыслового) анализа текста, но методов семантического
анализа пригодных к практическому применению пока не существует.
Теоретически
разработанные
алгоритмы
обладают
слишком
низкой
скоростью работы (единицы слов в секунду), а так же требуют использования
тезаурусов (семантических словарей), которые пока составлены для очень
небольшого подмножества языка.
Алгоритмы синтаксического анализа рассматривают в качестве
анализируемых единиц предложения, которые представлены в виде
последовательности слов, с приписанными к ним морфологическими
характеристиками (часть речи и т. п.). Разбором слов и приписыванием к ним
морфологических характеристик занимается морфологический анализатор.
Результатом
документа
в
виде
синтаксического
дерева.
На
анализа
рисунке
является
3.1.1
представление
приведён
результат
синтаксического анализа фразы «Пётр съел зелёную кошку». Но алгоритмы
МО могут работать только с векторами термов, поэтому требуется
преобразовать древовидное представление к неупорядоченному множеству
термов. При этом не удастся целиком сохранить структуру предложения, но
хотелось бы сохранить хотя бы наиболее сильные синтаксические связи
внутри предложения. В примере выше это будут «Пётр, есть», «есть, кошка»,
«зелёная, кошка».
10
предложение
фразасуществительное
глагольная фраза
имя
глагол
«Пётр»
«съел»
фразасуществительное
прилагательное
существительное
«зелёную»
«кошку»
Рисунок 3.1.1 – Результат синтаксического анализа.
Поэтому в качестве термов выберем:
1. Все (неупорядоченные) пары сильно связанных синтаксически
слов. Слова нормализуются (т.е. приводятся к единой форме).
Это позволяет считать «зелёная кошка» и «кошке зелёной»
эквивалентными термами, какими они и являются с точки зрения
семантики.
2. Все входящие в предложение слова по отдельности, т.к. если
сохранять слова только в парах, то будет потеряна информация,
которая несётся отдельными словами. Например, тексты про
Петра проще классифицировать по более общему терму «Пётр»,
чем по синтаксическим парам «Пётр, есть», «Пётр, ходить» и т. п.
Алгоритм морфологического анализа будет представлен в разделе 5.
Алгоритм синтаксического анализа и выбора термов рассмотрен в разделе 6.
На рисунке 3.1.2 изображена часть системы, ответственная за преобразование
текста документа к множеству термов, его представляющих.
11
Документ
Текст документа
Сегментация на
предложения
Предложения
Морфологический
анализ слов в
предложении
Слова текста
Морфологическое
представление
текста
Синтаксический
анализ
Объединение
Термы
Алгоритм
МО
Синтаксическое
дерево
Выбор синтаксически
связанных пар
Синтаксически сильно
связанные пары
Рисунок 3.1.2 – Потоки данных при выборе термов.
Все различные термы, полученные из документов обучающей
коллекции, получают свой уникальный индекс в векторе термов, и при
обработке представляются уже не в виде строки, а своим номером. При
решении
задачи
классификации
документа,
все
термы,
которые
отсутствовали в обучающей коллекции отбрасываются, т.к. алгоритм
машинного обучения был обучен без их учёта, а следовательно при
классификации они всё равно будут игнорироваться.
3.2. Выбор весовой функции
Веса термов wi, как правило, выбираются из диапазона [0, 1]. Частный
случай – бинарные веса, когда wi может принимать только два значения:
0 и 1. За вычисление веса терма отвечает весовая функция.
12
В области информационного поиска и текстовой категоризации
стандартной весовой функцией является tfidf [2]. tfidf часто критикуют, как
непродуманную весовую функцию, т.к. нет математической модели из
которой была бы выведена эта формула. Альтернативой являются весовые
функции, основанные на вероятностных моделях распределения слов в
документах:
биномиальной,
пуассоновской,
дважды-пуассоновской
[statistical]. Но хотя у вероятностных моделей есть сильная математическая
база, на практике tfidf показывает не менее хорошие результаты, являясь
значительно более простой и быстрой с точки зрения вычисления. Поэтому
предпочтение отдадим именно этой функции.
Вес терма wij = tfidf(di, tj) вычисляется по формуле:
tfidf (d i , t j )  tfij  idf j
(1)
Здесь:
 tfij – term frequency, частота встречаемости терма в документе;
 idfj – inverse document frequency, величина обратная числу
документов в коллекции, в которых встречается терм.
Эта функция основана на двух предположениях:
 Чем чаще терм встречается в документе, тем сильнее он
влияет на смысл документа.
 Чем в большем числе документов встречается терм, тем менее
специфичным (для определённой темы) он является.
В качестве tfij можно выбрать, например, просто число вхождений
терма в документ. Но такой выбор опровергается практикой – влияние на
смысл текста терма встречающегося в L раз чаще, чем другой терм, будет
выше, но не прямо пропорционально L. В таблице Таблица 1 представлены
типичные варианты выбора формул для tf и idf.
13
Таблица 1. Варианты частей функции tfidf.
Часть tf
название варианта
бинарный
без изменений
логарифмический
дополненный
Часть idf
Название
без изменений
логарифмический
Формула
1
n
Формула
1/N
log
M
N
1 + log(n)
0.5  n
0.5 
maxn
Здесь n – число вхождений терма в документ, maxn – число вхождений
наиболее частого терма в документе, N – число документов, в которые
входит терм, M – общее число документов.
В [2] дано большее число вариантов формул и типичных сочетаний.
Мы выбрали формулу (2), так как в соответствии с ней термы встречающиеся
во всех документах получают вес равный 0, а встречающиеся только в одном
документе получают полный вес соответствующий частоте терма.
tfidf (d i , t j )  (1  log( n))  log
M
N
(2)
Эта формула обладает двумя недостатками:
 Значение веса никак не ограничено сверху, что налагает
ограничение на алгоритмы МО, которые можно применить к
такому представлению документа.
 Чем длиннее документ, тем больше он «нравится» этой
формуле (тем большие веса получают термы). Так как, чем
длиннее текст, тем больше в него вхождений термов, а
следовательно и выше tf.
Поэтому
результат,
полученный
по
формуле
(2)
требуется
нормализовать. Для этого используется косинусная нормализация, которая
приводит длину вектора w к 1:
wi , j 
tfidf (d i , t о )
|T |
 (tfidf (d , t
s 1
i
14
s
)) 2
(3)
4. Выбор алгоритма машинного обучения
Существует
большое
число
алгоритмов
машинного
обучения
классификаторов, оперирующих обобщёнными числовыми векторами. Не все
они могут быть использованы в случае текстовой классификации. В
работе [6] перечислены основные методы МО, которые нашли своё
применение в области ТК. Из них требуется выбрать один алгоритм, который
будет применён в нашей системе. Для этого требуется ввести метрики и
определить методику, по которым будет производиться сравнение, и на
основе них выбрать наилучший алгоритм.
4.1. Методика измерения характеристик классификатора
При
исследовании
и
сравнении
алгоритмов,
после
того
как
классификатор  был построен, необходимо каким-то образом измерить его
эффективность. Для этого, перед началом создания классификатора,
исходный корпус, на котором производится тестирование, делится на две
части (не обязательно одинакового размера):
 Тренировочная (и проверочная) коллекция TV. Классификатор 
строится на основе обзора характеристик этих документов.
 Тестовая коллекция Te, используется для проверки эффективности
классификатора. Каждый документ dj из Te подаётся на вход
классификатора и ответы классификатора (dj, ci) сравниваются с
экспертными оценками ’(dj, ci). Эффективность классификатора
определяется на основе того, насколько часто эти оценки
совпадают.
Документы из Te ни в каком виде не должны участвовать в построении
классификатора. Если это условие не соблюдается, то наблюдаемые при
тестировании результаты будут слишком хороши [9]. При практическом
15
применении классификатора, после того как его характеристики были
измерены, можно провести обучение, используя весь исходный корпус, для
повышения эффективности. В этом случае результаты предыдущих
измерений можно рассматривать как пессимистическую оценку реальной
эффективности, т.к. полученный в конечном итоге классификатор обучался
на большем количестве данных, чем классификатор, использовавшийся при
тестировании.
Подход с разделением исходной коллекции носит название «обучениеи-тестирование», альтернативой ему является метод «кросс-валидации» [9],
при котором строится k различных классификаторов 1, …, k, при
разделении исходной коллекции на k непересекающихся частей Te1, …, Tek и
применении
«обучения-и-тестирования»
на
парах
(TVi = -Tei, Tei}.
Конечная эффективность определяется с помощью усреднения показателей
отдельных классификаторов 1, …, k.
При обоих подходах в процессе обучения может возникнуть
необходимость проверить, как скажется изменение какого-либо параметра
на эффективности. В этом случае тренировочная и проверочная коллекция
TV = d1, …, d|TV| разделяется на две коллекции:
 Тренировочная коллекция Tr = d1, …, d|Tr|, на основе которой
строится классификатор.
Проверочная коллекция Va = d|Tr|+1, …, d|TV|, на которой проводятся
повторяющиеся тесты с целью оптимизации параметров классификатора.
4.2. Используемые метрики
4.2.1. Точность и полнота.
Эффективность
классификации,
как
правило,
измеряется
в
классических метриках информационного поиска – точности (precision) и
полноте (recall), адаптированных к случаю ТК [1].
16
Точность i категории ci определяется как условная вероятность
P(’(dx, ci) = T | (dx, ci) = T), т.е. вероятность того, что случайный документ
dx будет корректно отнесён к категории ci.
Аналогично
полнота
i
категории
ci
определяется,
как
P((dx, ci) = T | ’(dx, ci) = T), т.е. вероятность того, что документ dx, который
должен быть отнесён к категорией ci, будет классифицирован под ней.
Вероятности i и i могут быть оценены с помощью таблицы
совпадений 2 по формулам (4) и (5). Эта таблица содержит информацию о
совпадениях решений классификатора и экспертов. Столбцы соответствуют
оценкам экспертов, строки – оценкам классификатора. На их пересечениях
находятся четыре значения:
 FPi
(false
число
positives),
документов
некорректно
отнесённых классификатором к категории ci;
 TPi (true positives), число документов корректно отнесённых к
категории;
 TNi
(true
число
negatives),
документов
корректно
не
отнесённых к категории;
 FNi (false negatives), число документов некорректно не
отнесённых к категории.
i 
TPi
TPi  FPi
(4)
i 
TPi
TPi  FN i
(5)
Таблица 2. Таблица совпадений для категории ci
Оценки экспертов
Да
Нет
Оценки
Да
TPi
FPi
классификатора
Нет
FNi
TNi
17
Эти значения относительно категории могут быть усреднены, для
получения точности  и полноты  на всём наборе категорий. Существует две
методики усреднения:
 Макроусреднение – сначала вычисляются точность i и
полнота i для каждой категории отдельно и затем
усредняются по формулам (6) и (7).
C


i
(6)
i
(7)
i
C
C

 Микроусреднение

i
C
–
вычисляется
глобальная
таблица
совпадений (таблица Таблица 3),  и  вычисляются по
формулам аналогичным для i и i.
C
TP


TP  FP
 TP
i
i
C
 (TP  FP )
i
(8)
i
i
C
TP


TP  FN
 TP
i
i
C
 (TP  FN )
i
(9)
i
i
Эти методы дают значительно различающиеся результаты. При
микроусреднении вклад категории в конечный результат тем больше, чем
больше документов относятся к категории. При макроусреднении все
категории в равных пропорциях влияют на конечный результат. Выбор того
или иного усреднения зависит от области применения классификатора.
18
Таблица 3. Глобальная таблица совпадений
Оценки экспертов
Да
Оценки
Да
Нет
|C |
TP   TPi
классификатора
i 1
Нет
|C|
FN   FNi
i 1
|C|
FP   FPi
i 1
|C|
TN   TN i
i 1
4.2.2. Комбинированные метрики эффективности
Ни точность, ни полнота не имеют смысла, если их рассматривать по
отдельности. Например, классификатор (di, cj) = T для любых di и cj
(примитивный акцептор), имеет полноту =1, но его точность  близка к 0.
Аналогично, можно добиться более высоких значений точности за счёт
снижения полноты.
На практике, изменяя параметры классификатора, можно сделать
классификатор более либеральным (т.е. увеличить полноту за счёт точности)
или более консервативным (увеличить точность за счёт полноты). Таким
образом, сравнивать классификаторы нужно с помощью метрики, которая
сочетает  и . Было предложено несколько таких метрик [1]:
 Средняя точность по 11 точкам. Параметры классификатора
подбираются таким образом, чтобы i принимала значения
0.0, 0.1, … 0.1, 1.0. Для этих 11 точек вычисляется i и затем
усредняется.
 Точка перелома (breakeven). Точка перелома это точка, в
которой =. Этого можно добиться, применяя процесс
подстройки, аналогичный использованному в усреднении
точности по 11 точкам. Если не удаётся подобрать такие
параметры,
при
которых
19
=,
то
используют
интерполированную точку перелома: подбираются такие
параметры, при которых разница  и  минимальна. В
качестве точки перелома используется среднее значение.
 Функция F (10), для некоторого 0     [7].  можно
рассматривать, как меру важности параметров  и . При
 = 0 F совпадает с , при  =  F совпадает с . Как
правило
используется
F1,
т.е.
точности
и
полноте
присваивают одинаковую важность.
(1   2 )
 2  
F 
(10)
4.3. Сравнение алгоритмов
Для сравнения характеристик различных классификаторов существуют
стандартные
тестовые
коллекции,
которые
свободно
доступны
для
проведения экспериментов. Наиболее широко используется коллекция
Рейтер [16], которая состоит из новостей, классифицированных под
категориями, относящимися к экономике.
В общем случае, несколько экспериментов могут использоваться для
достоверного сравнения алгоритмов классификации только при выполнении
трёх условий:
 Использование одной и той же коллекции документов и
категорий.
 Использование
одинакового
разбиения
коллекции
на
тренировочную и тестовую части.
 Использование единой метрики.
Большинство экспериментов (в том числе и проводящихся на
коллекциях Рейтер) не учитывают всех этих ограничений. Тестируя три
классификатора на пяти популярных коллекциях Рейтер, Янг показал, что
20
несоответствие
трём
вышеперечисленным
условиям,
делает
экспериментальные данные с трудом сопоставимыми [4].
В таблице
некоторая система тестировалась на всех вариантах
коллекций, то её результаты можно было бы взять за базовую линию, и
определить коэффициенты сложности коллекций относительно неё. Но в
данном случае эту методику применить нельзя, так как ни одна система не
проверялась
более,
чем
на
трёх
коллекциях.
Поэтому
приходится
использовать более сложный метод. Сначала вычислим по формуле
усреднённые по всем системам коэффициенты Vij
(11)
взаимной сложности
каждой пары коллекций. Vij показывает во сколько раз коллекция j сложнее
для классификации, чем коллекция i.
21
Таблица 4 приведены характеристики классификаторов, которые
тестировались на 5 наиболее популярных коллекциях Рейтер. Источник
данных (кроме Kavg) – [6]. Ключевая характеристика, по которой
сравниваются
классификаторы
–
точка
перелома,
для
объединения
результатов на отдельных категориях использовалось микроусреднение. В
первых двух столбцах указаны тип использованного алгоритма и конкретная
реализация системы, в которой он был применён. Следующие пять столбцов
содержат положение точки перелома при тестировании систем на наиболее
популярных вариантах коллекции Рейтер. В последнем столбце содержится
усреднённый по всем коллекциям показатель качества классификации Kavg,
вычисленный на основе предыдущих пяти столбцов.
Так как системы тестировались на различных коллекциях, то их
результаты не являются напрямую сравнимыми. Некоторые коллекции
(например, Reuters-22173 ModLewis) являются явно более сложными для
классификации. Поэтому требуется найти коэффициент сложности Li каждой
из коллекций, и затем усреднить результаты каждого классификатора с
учётом коэффициентов сложностей систем, на которых он тестировался.
Если бы некоторая система тестировалась на всех вариантах
коллекций, то её результаты можно было бы взять за базовую линию, и
определить коэффициенты сложности коллекций относительно неё. Но в
данном случае эту методику применить нельзя, так как ни одна система не
проверялась
более,
чем
на
трёх
коллекциях.
Поэтому
приходится
использовать более сложный метод. Сначала вычислим по формуле
усреднённые по всем системам коэффициенты Vij
(11)
взаимной сложности
каждой пары коллекций. Vij показывает во сколько раз коллекция j сложнее
для классификации, чем коллекция i.
22
Таблица 4. Эффективность алгоритмов классификации
Общий размер коллекции
Размер тренировочной коллекции
Коллекция
Reuters22173
ModLewis
21450
14704
Reuters22173
ModApte
14347
10667
Reuters22173
ModWiener
13272
9610
Reuters21578
ModApte
12902
9603
Reuters21578[10]
ModApte
12902
9603
Размер тестовой коллекции
6746
3680
3662
3299
3299
Число категорий
Тип
Система
135
93
92
90
10
Вероятностный
.650
Деревео
решений
PropBayes
.650
Bim
.773
Дюмайс, 1998
.725
Йоахимс, 1998
.720
.621
NB
.795
.686
Дюмайс, 1998
Swap-1
К ближайших
соседей
.670
.805
.695
.683
.811
.820
.692
SleepingExperts
.753
.759
.827
.703
.820
.694
Charade
.738
Lisf
.855
BalancedWinnow
.747
.637
.810
.722
.733
.822
.695
.776
.654
Йоахимс, 1998
.799
.676
Лам, 1998
.781
.661
Ли, 1999
.625
.529
Лам, 1998
.860
.728
Йоахимс, 1998
.823
.696
Кохен, 1999
.660
.690
.748
.852
.820
.715
.856
Дюмайс
.724
.920
.712
Йоахимс, 1998
.864
.731
Ли, 1999
.841
.711
.859
.727
Янг и Лю, 1999
Classi
.802
.692
Nnet
.838
Винер, 1995
Байесовские
сети
Комитет
.849
.833
Янг и Лю, 1999
Нейронные
сети
.684
Ripper
Янг, 1999
Метод
опорных
векторов
.670
.672
.670
Widdrow-Hoff
Роччио
.815
.794
Dl-Esc
Регрессионный
анализ
Перцептрон
.667
.884
C4.5
Ind
Решающие
правила
Kavg
.820
Дюмайс, 1998
AdaBoost.MH
.709
.718
.800
.860
.850
.667
.742
Вейсс, 1999
.873
23
.739
N
1 ij Bijk
Vij 

N ij k 1 B jik
(11)
Здесь:
 Nij – число систем тестировавшихся на коллекциях i и j
 Bijk – результат на коллекции i k-й из этих систем
 Bjik – результат на коллекции j k-й из этих систем
Коэффициенты взаимной сложности для пяти вариантов коллекций
Рейтер приведены в таблице Error! Not a valid bookmark self-reference..
Таблица 5. Коэффициенты взаимной сложности коллекций
Reuters-22173
ModLewis
Reuters-22173
ModApte
Reuters-22173
ModWiener
Reuters-21578
ModApte
Reuters-21578[10]
ModApte
Reuters-22173
ModLewis
1
Reuters-22173
ModApte
0.880
Reuters-22173
ModWiener
0.841
Reuters-21578
ModApte
0.863
1.136
1
1.047
0.968
–
1.188
0.955
1
0.954
–
1.158
1.03
1.048
1
0.915
1.093
1
Используя
–
–
–
коэффициенты
взаимной
сложности
Reuters-21578[10]
ModApte
–
Vij
можно
аппроксимировать абсолютные коэффициенты сложности Li. Так как
коэффициенты сложности являются относительными, то нужно выбрать
базовую коллекцию, относительно которой будут измеряться сложности
остальных коллекций. Выберем коллекцию Reuters-22173 ModLewis в
качестве базовой, её L1 = 1. Для i > 1 нужно подобрать такие Li, чтобы
разница между всеми Vij и Lj/Li была минимальна для любых i, j. Численно
эту разницу можно представить в виде среднеквадратичного отклонения:
L

    j  Vij 
i 1 j 1  Li

N
N
2
(12)
Учитывая, что функция квадратного корня является монотонно
возрастающей, то задачу оптимизации можно представить в виде:
24
2
L

f L2 ,..., LN     j  Vij   min
i 1 j 1  Li

N
N
(13)
Эту задачи оптимизации можно решить несколькими способами.
Используя метод градиентного спуска с начальным приближением (1,…,1)
получаем коэффициенты представленные в таблице 6.
Таблица 6. Коэффициенты сложности коллекций
Коллекция
Reuters-22173
ModLewis
Reuters-22173
ModApte
Reuters-22173
ModWiener
Reuters-21578
ModApte
Reuters-21578[10]
ModApte
Li
1
0.863
0.876
0.846
0.774
На основе этих коэффициентов можно вычислить показатель качества i
системы Kavg i, как среднее значение точки перелома при тестировании на
различных коллекциях, с учётом сложности коллекций:
K avg i
1

Ni
N
 (L B
j
ij
)
(14)
j
Здесь:
 N – общее число коллекций.
 Ni – число коллекций, на которых тестировалась i-я система.
 Bij – результат тестирования i-й системы на j-й коллекции,
либо 0 в случае если такого теста не проводилось.
Таблица 4 позволяет сделать некоторые выводы об эффективности
различных алгоритмов. Но сравнение не может быть абсолютно надёжным,
т.к. измерение характеристик классификаторов производилось в различных
условиях, внешних по отношению к выбранному алгоритму. Такими
внешними факторами могут быть: выбор термов, формула вычисления их
весов, алгоритм уменьшения размерности.
Тем не менее, можно сделать следующие выводы:
25
 Классификаторы на основе комитета, метода опорных
векторов, методов регрессионного анализа и k ближайших
соседей показывают наилучшие результаты. Разница в их
показателях настолько незначительна, что может быть
списана на особенности методики измерения. Выбор одного
из этих алгоритмов надо производить на основе других
критериев,
таких
как
производительность,
простота
реализации (наличие готовых библиотечных реализаций).
Факторы специфичные для области применения тоже могут
оказать влияние.
 Вероятностные
классификаторы
(«наивный
подход»
и
Байесовские сети) и классификаторы на основе метода Роччио
показывают наихудшие результаты из всех методов МО.
Найденные закономерности сильно связаны с характеристиками
тестовой коллекции. Так в согласно [8] метод опорных векторов, k-NN,
деревья решений, Роччио и вероятностные методы показывают схожую
эффективность, если в тренировочной коллекции присутствует более 300
положительных образцов для каждой категории.
Нами выбран алгоритм на основе метода опорных векторов, так как он
показывает хорошие результаты, и существуют его эффективные реализации
[17]. Но у МОВ есть ограничения по области применения – для хорошей
классификации классы должны быть линейно разделимы, а так же число
положительных образцов для заданного класса в обучающей коллекции
должно быть достаточно велико (от нескольких десятков). Если класс
документов не удовлетворяет этим ограничениям, то разумно использовать
другой метод, обладающий высокими показателями, – регрессионный анализ
или K ближайших соседей. Методы Регрессионного анализа так же являются
линейными, и поэтому будут справляться с линейно неразделимыми
классами так же плохо, как и МОВ. Таким образом в качестве дополняющего
26
выбран метод k-NN, который хорошо ведёт себя в случае нелинейных
данных и при небольшом числе положительных образцов.
4.4. Метод опорных векторов
Использовать метод опорных векторов в ТК впервые предложил
Йоахимс [8].
Как уже было сказано в разделе 3, текст представляется в виде вектора
весов термов. Предположим, что терма всего два, тогда множество
документов можно будет графически, отложив по осям веса термов
(рис. 4.4.1).
Рисунок 4.4.1 – пример графического представления набора документов.
Чёрные точки – относятся к категории, серые – нет.
Часто оказывается, что, как и на рисунке 4.4.1, две категории можно
разделить линией. Документы лежащие по одну сторону линии относятся к
категории, по другую – нет. Более формально, линия задаётся уравнением
w1 x1  w2 x2  b . Документ представленный вектором x  ( x1 , x2 ) T принадлежит к
категории ci, если w1 x1  w2 x2  b , и к ci , в противном случае.
Этот подход можно обобщить на векторные пространства больших
размерностей. Фигура, разбивающая пространство документов на два
полупространства, соответствующие классам, называется гиперплоскостью.
27
Она характеризуется вектором w и параметром b. Соответственно, документ
принадлежит к классу ci, если w  x  b , и к ci , в противном случае.
Класс алгоритмов, использующих этот подход, называется линейным.
А набор документов, который можно разделить гиперплоскостью, – линейно
разделимым.
В большинстве случаев, так же как и на рисунке ХХХ, существует
более одного разделителя между классами. Интуитивно серые линии
выглядят лучшими разделителями, чем чёрная штриховая, так как граница
классов пролегает по середине пустоты между документами различных
классов. Метод опорных векторов, в частности, определяет в качестве
критерия для поиска разделяющей плоскости максимальную удалённость
этой плоскости от любых точек данных, в обучающей коллекции. Расстояние
от разделяющей плоскости до ближайшей точки называется допуском
(margin) классификатора.
А нужна ли здесь подробная математика, если используется SVMLight?
4.5. K ближайших соседей
Метод опорных векторов применим только к линейно-разделимым
классам, на рисунке 4.5.1 приведён нелинейный пример. Хорошо с такими
задачами справляется метод K ближайших соседей (k-NN). Он заключается в
том, что документ относится к тому классу, к которому принадлежат k его
ближайших соседей. k-NN не требует времени на обучение – для каждого
документа, который требуется классифицировать, вычисляется его евклидово
расстояние до всех документов и выбираются k наиболее близких к нему. В
случае бинарной классификации рекомендуется выбирать нечётное k, т.к. в
этом случае невозможен конфликт при определении к какому классу отнести
документ.
28
Рисунок 4.5.1 – Пример линейно неразделимых классов
Реализация k-NN тривиальна и при этом показывает высокую
эффективность. Но скорость классификации напрямую зависит от числа
документов в тренировочной коллекции, т.к. при классификации идёт
сравнение документа со всеми известными примерами.
29
5. Выбор алгоритма морфологического анализа
Цель морфологического анализа состоит в том, чтобы для каждого
текстового элемента, выделенного как словоформа (последовательность
букв), определить [13]:
1. полную морфологическую характеристику;
2. лемму (основу слова).
Если словоформа имеет несколько морфологических прочтений, то ей
должны
быть
сопоставлены
все
возможные
наборы
<лемма, морфологические характеристики>.
5.1. Выбор модели морфологического анализа
Существует два основных метода к морфологического анализа [13]:
1. бессловарный;
2. словарный.
Первый метод не использует словаря значимых элементов (основ), а
только словарь окончаний и префиксов, пытаясь угадать основу слова.
Методы со словарём используют так же и словарь основ. Хотя методы
бессловарного анализа проще, они так же дают больше шума, так как для них
каждое слово является незнакомым. Поэтому все современные системы
использую словарный подход.
Все модели морфологического анализа текста со словарём основаны на
грамматическом
словаре
А.
А.
Зализняка
[14].
Для
реализации
морфологического анализатора выбрана модель системы Диалинг [11]. Это
обусловлено тем, что это единственная свободно доступная модель, которая
позволяет
по
словоформе
получить
полную
морфологическую
характеристику.
Другие популярные модели – Mystem и словари iconv. Система Mystem
не предоставляет морфологического словаря, а только готовую реализацию
30
алгоритма (в виде исполняемой программы), что делает невозможным
создание альтернативных алгоритмов на основе её словарей, а так же очень
неудобным использование этой системы в своих разработках. Словари iconv
включают в себя только правила словообразования, без морфологических
характеристик полученных слов.
В системе Диалинг морфологические характеристики включают в себя:
 морфологическую часть речи;
 набор граммем.
Граммема – это элементарный морфологический описатель, относящий
словоформу к какому-то морфологическому классу, например, словоформе
«стол» с леммой СТОЛ будут приписаны следующие наборы граммем:
«мр, ед, им, но» и «мр, ед, вн, но», которые означают «мужской род,
единственное число, неодушевлённый» в «именительном» и «винительном»
падежах, соответственно.
В таблицах 7 и 8 представлены все части речи и используемые
граммемы.
Таблица 7. Перечень частей речи
Обозначение части речи
С
П
МС
Г
ПРИЧАСТИЕ
ДЕЕПРИЧАСТИЕ
ИНФИНИТИВ
МС-ПРЕДК
МС-П
ЧИСЛ
ЧИСЛ-П
Н
ПРЕДК
ПРЕДЛ
СОЮЗ
МЕЖД
ЧАСТ
ВВОДН
Пример
мама
красный
он
идёт
идущий
идя
идти
нечего
всякий
восемь
восьмой
круто
интересно
под
и
ой
же, бы
конечно
Расшифровка
существительное
прилагательное
Местоимение-существительное
глагол в личной форме
причастие
деепричастие
инфинитив
местоимение-предикатив
местоимение-прилагательное
числительное (количественное)
порядковое числительное
наречие
предикатив
предлог
союз
междометие
частица
вводное слово
31
Таблица 8. Перечень граммем
Граммемы
мр, жр, ср
Од, но
ед, мн
им, рд, дт, вн, тв, пр, зв
2
св, нс
пе, нп
дст, стр
нст, прш, буд
пвл
1л, 2л, 3л
0
Кр
сравн
имя, фам, отч
лок, орг
кач
вопр, относ
дфст
опч
жарг, арх, проф
аббр
безл
Значение
мужской, женский, средний род
Одушевлённость, неодушевлённость
единственное, множественное число
падежи: именительный, родительный, дательный,
винительный, творительный, предложный, звательный
обозначает второй предложный или второй родительский
падежи
совершенный, несовершенный вид
переходный, непереходный глагол
действительный, страдательный залог
настоящее, прошедшее, будущее время
повелительная форма глагола
первое, второе, третье лицо
неизменяемое
краткость (для прилагательных и причастий)
сравнительная форма (для прилагательных)
имя, фамилия, отчество
локативность, организация
качественное прилагательное
вопросительность и относительность (для наречий)
слово обычно не имеет множественного числа
частая опечатка или ошибка
жаргонизм, архаизм, профессионализм
аббревиатура
безличный глагол
5.2. Структура морфологического словаря
Морфологический словарь задаёт все словоформы языка. За основу
выбрана структура словаря системы Диалинг. На рисунке 5.2.1 изображена
структура словаря в виде реляционной схемы.
Таблица Lemmata содержит перечень всех лемм словаря, для каждой
леммы даны её свойства:
1. псевдооснова слова (общая для всех слоформ данного слова
подстрока) – BaseStr;
2. ссылка на набор моделей словообразования – ModelId;
3. ссылка на набор приставок – PrefixSetId
4. ссылка на общие (для всех словоформ) граммемы данной
леммы – Ancode;
32
Lemmata
Model
PrefixSets
FK1
ModelId
PrefixStr
FlexiaStr
Ancode
FK2
FK1
FK3
BaseStr
ModelId
PrefixSetId
Ancode
PrefixSetId
PrefixStr
Ancode
Ancode
PartOfSpeech
Grammems
Рисунок 5.2.1 – Структура морфологического словаря.
В таблице PrefixSets содержатся наборы приставок. Набор приставок
леммы – это те приставки, с которыми лемма образует полное слова языка. В
набор приставок может входить пустая приставка, что означает, что лемма
может быть использована сама по себе (без приставок).
Таблица Models содержит перечень возможных окончаний всех лемм.
Ключом (не уникальным) в ней служит поле ModelId, которое задаёт номер
модели словообразования. Каждой модели может соответствовать один или
более вариант словообразования (запись в таблицы), который определяется 3
полями:
1. окончание словоформы FlexiaStr (возможно, пустое);
2. префикс словоформы PrefixStr (возможно, пустой);
3. ссылка
на
граммемы,
соответствующие,
этому
способу
словообразования – Ancode.
Таблица
Ancodes
содержит
все
возможные
морфологические
интерпретации. Ключом является поле Ancode («аношкинский код», анкод).
Поле PartOfSpeech содержит часть речи (C, Г, П, ...), а поле Grammems набор
граммем, типа «мр, но, ед, им».
Пусть у нас есть запись Q из таблицы Lemmata. Пусть P один из ее
возможных префиксов, взятых по полю Q.PrefixSetId, а R – одна из моделей
33
изменения слова, соответствующих Q.ModelId, тогда полная словоформа W
будет равна:
W = P.PrefixStr + R.PrefixStr + Q.BaseStr + R.FlexiaStr
А морфологическая
(15)
характеристика получается путём объединения
характеристик, соответствующих анкодам Q.Ancode и R.Ancode.
Вышеописанная схема показывает принципиальные возможности и
ограничения структуры одного словаря. Видно, что словарь может хранить
информацию о словах, возможных окончаниях, возможных приставках,
которые могут присоединяться либо к отдельным словоформам, либо ко всем
словоформам данной парадигмы. Словарь не пригоден к полному
морфологическому анализу слова, с лингвистической точки зрения: в нём
отсутствует информация об ударениях, структура слова сильно упрощена
и т.д. Тем не менее, словарь обеспечивает достаточное количество
информации для последующего синтаксического разбора текста, на основе
морфологического анализа.
5.3. Алгоритм морфологического анализа
В системе Диалинг морфологический анализатор выполнен в виде
конечного автомата, который на входе получает буквы анализируемого
слова, ив результате работы оказывается в конечном состоянии, к которому
приписана морфологическая характеристика входного слова. Первоначально,
на этапе подготовки – до начала морфологического анализа, по формуле (15)
строятся все возможные словоформы (около 3 миллионов), задаваемые
словарём,
и
вносятся
в
конечный
автомат,
который
затем
минимизируется [11].
Этот подход позволяет достичь высокой скорости анализа (время
линейно зависит от длины слова), но совсем не справляется с предсказанием
неизвестных (не встречающихся в словаре) слов. Поэтому в системе Диалинг
дополнительно применяется специальный метод предсказания слов, который
34
в предсказании ограничен последними 5 символами слова и в худшем может
выдать очень большое число интерпретаций неизвестного слова, не выделив
среди них приоритетных.
В системе Mystem [12, 19] используется подход метод быстрого обхода
морфологического словаря. При этом за счёт небольшого теоретического
проигрыша в скорости, по сравнению с Диалинг, обеспечивается гораздо
лучшее предсказание морфологических характеристик неизвестных слов (так
как поиск совпадения неизвестного слова со словарём производится не по
последним пяти символам словоформы, а произвольному их числу). При
этом используется один и тот же алгоритм для известных и неизвестных
слов. В силу этих двух обстоятельств Mystem представляется в качестве
лучшего выбора в качестве основы алгоритма.
Приведённый ниже алгоритм дополняет алгоритм Mystem немного
более сложной моделью словообразования, использующейся в системе
Диалинг, в частности добавляет поддержку префиксов. Mystem определяет
морфологические характеристики только по суффиксу и основе, игнорируя
префиксы, если они есть.
Так как единственная часть слова местоположение, которой всегда
определено (в конце слова) это суффикс, то анализ производится с конца
слова. В качестве основной структуры данных используется бор (trie) –
сильноветвящееся дерево, у которого ветви помечены буквами [21].
Используется два бора: для обхода окончаний и для обхода основ.
В бор окончаний помещаются все возможные окончания, в обратном
порядке. При этом, если вершина бора содержит значение логическая истина,
то путь от корня до этой вершины задаёт корректный суффикс. Например,
для суффиксов «-ий, -ей, -а, -на» будет построен бор изображённый на
рисунке Рисунок 5.3.1.
35
й
а
истина
и
е
ложь
н
Рисунок 5.3.1 – Пример бора суффиксов.
В
бор
основ
аналогичным
образом
помещаются
все
псевдоосновы. Если путь от корня до вершины бора является корректной
основой,
то
в
этой
вершине
хранится
информация,
позволяющая
восстановить морфологические характеристики слова: лемма, модель
словообразования и анкод.
Так как в зависимости от модели один и тот же суффикс может нести
разную морфологическую информацию, то третья структура данных –
таблица, которая отображает пару <суффикс, модель> в список пар анкодов и
префиксов, ей соответствующих.
Алгоритм анализа состоит из следующих основных шагов:
1. Найти все возможные пары <суффикс, остаток>
2. Для
каждой
найденной
интерпретации
правой
пары
части
найти
все
остатка,
как
возможные
основы,
с
соответствующей ей леммой.
3. Для каждой тройки <суффикс, лемма, остаток> с помощию
таблицы
<суффикс, модель>  список <анкод, префикс>.
проверить, что модель леммы согласуется с суффиксом (есть
соответствующая
запись
в
таблице)
и
остаток
является
префиксом, который согласуется с суффиксом и моделью леммы.
4. Если существуют тройки, которые не отсеялись на шаге 3, то их
интерпретации (объединение морфологических характеристик
36
анкода
леммы
являются
и
анкода пары
результатом
<суффикс, модель леммы>)
морфологического
анализа,
работа
алгоритма закончена.
5. Если не найдено ни одной тройки, соответствующей условиям
шага
три,
то
выдвинуть
гипотезу
о
морфологических
характеристиках слова на основе механизма предсказания.
Рассмотрим более детально, как осуществляется шаг 1:
1. Начать обход бора с вершины и анализируемого слова с конца.
2. Если текущая вершина, содержит значение истина. То добавить
пару, состоящую из частей слова справа и слева (включительно)
от текущей буквы к результату.
3. Если текущая буква не является самой левой и из текущей
вершины исходит дуга, соответствующая этой букве, то
произвести переход по этой дуге, сдвинуть текущую букву на
одну позицию влево и перейти к шагу 2.
4. Иначе все разбиения найдены.
Шаг 2, реализуется обходом бора основ полностью аналогично шагу 1.
37
6. Разработка алгоритма синтаксического анализа и выбора термов
(нет)
38
7. Экспериментальная часть
С 2003 года проводится ежегодный Российский Семинар по Оценке
Методов Информационного Поиска (РОМИП) [20], в рамках которого
производится оценка и сравнение различных систем информационного
поиска
и
текстовой
классификации.
Для
измерения
характеристик
классификатора будем использовать тестовые коллекции именно этого
семинара, так в отличие от большинства общепринятых коллекций,
использующих английский язык, таких как Рейтер, они состоят из текстов на
русском языке.
В рамках РОМИП предлагается 3 коллекции для классификации: 2
коллекции, состоящих из страниц Интернет, и коллекция нормативных
документов российской федерации. Мы будем использовать коллекцию
нормативных документов, так первые две не подходят по двум критериям:
1. Разделение навигационной и информационной частей документа.
Документы в веб-коллекциях представлены «как есть», без
предварительной обработки. Т. е. они содержат не несущие
смысла с точки зрения классификации элементы навигации и
визуального оформления, выделение удаление которых само по
себе является сложной задачей.
2. Грамматическая правильность текста. В силу применения
синтаксического анализа, алгоритм классификации достаточно
чувствителен к морфологической и синтаксической корректности
текста.
Подавляющее
большинство
текстов
в
Интернете
содержит высокий процент ошибок, что не может не сказаться на
качестве классификации.
Коллекция нормативных документов предоставлена компанией Кодекс
и состоит из HTML документов, общим объёмом 1.6 Гб. В неё входит 61000
39
документов, которые организованы в 183 рубрики. В обучающей выборке
13772 документа.
Оценка результатов проводится для некоторого количества выбранных
определённым образом рубрик и будет основана на использовании полного
каталога Кодекс (верифицированного экспертами вручную).
Также планируется проведение независимой оценки части данных
экспертами (не имеющими опыта работы с нормативными документами). В
этом случае предполагается следующая процедура:
1. постановка задания эксперту: эксперт оценивает соответствие
документа указанной теме.
2. шкала оценки релевантности:
a. точно/возможно/вероятно/нет/невозможно оценить
b. да/нет/невозможно оценить
Используемые метрики: точность, полнота и F-функция (см раздел 4.2).
Выберем для оценки те же рубрики, что использовались в рамках
РОМИП в прошлом – это позволит сравнить результаты разработанной и
конкурирующих систем.
В таблице
9 перечислены используемые рубрики, с их описанием,
которое используется экспертами при ручной оценке документов.
Таблица 9. Категории для оценки
Шифр
rblc3800301
Название
Семейное право
rblc9001175
Наследственное право
rblc9001285
Водное хозяйство
Описание
Нормативные документы, регулирующие
имущественные и личные неимущественные
отношения, складывающиеся между отдельными
членами семьи.
Нормативные документы, устанавливающие
порядок перехода прав и обязанностей умершего
лица по праву наследования.
Нормативные акты, регулирующие общественные
отношения по охране и использованию вод. Сюда
входят акты устанавливающие: право
собственности государства и частных лиц на воды
в Российской Федерации, порядок пользования
поверхностными и подземными водными
объектами для различных нужд, охрану вод от
загрязнения, засорения и истощения, организацию
государственного управления в области
использования и охраны вод.
40
rblc9001359
Общественное питание
rblc9001752
Бытовое обслуживание населения
rblc9002022
Арендные отношения
rblc901716586
Международное воздушное право
rblc901716587
Международное космическое право
rblc901800554
Территория в международном праве
rblc901800803
Субъекты внешнеэкономических
отношений
rblc901800805
Внешнеэкономические сделки
rblc901800807
Зоны свободной экономической
торговли. Таможенные союзы
Нормативные документы, регулирующие вопросы
хозяйственной деятельности предприятий
общественного питания, вопросы взаимодействия
органов государственной власти с организациями,
осуществляющими деятельность в сфере
общественного питания, взаимоотношения между
потребителем и исполнителем в сфере оказания
услуг общественного питания и др.
Нормативные документы, регулирующие вопросы
предпринимательской деятельности в сфере
бытового обслуживания населения, вопросы
взаимодействия органов государственной власти с
организациями и предприятиями,
осуществляющими деятельность в данной сфере.
Документы, регулирующие отношения по
предоставлению имущества за плату во временное
владение и (или) пользование.:
Нормативные документы, регулирующие
отношения между государствами при
использовании воздушного пространства. В
частности, м. в. п. регулирует межгосударственные
отношения, возникающие в ходе установления,
осуществления и развития воздушных сообщений.
Нормативные документы, регулирующие
отношения между государствами в процессе
исследования и использования космического
пространства и небесных тел и определяющие их
правовой режим.
Нормативные документы, регламентирующие
правовой статус и режим территорий в
международном праве.
Нормативные документы, характеризующие и
регламентирующие правовой статус, положение по
отношению к государству субъектов
внешнеэкономических отношений, то есть
отношений, связанных с деятельностью в области
международного обмена товарами, работами,
услугами, информацией, результатами
интеллектуальной деятельности, в том числе
правами на них.
Нормативные документы, характеризующие форму
и регулирующие осуществление и порядок
подписания, оформления внешнеэкономических
сделок. Такие, как договоры международной
купли-продажи, оговоры поставки, подряда,
перевозки, страхования, лицензионные и др. виды
сделок.
Нормативные документы, регламентирующие
создание, развитие и ликвидацию зон свободной
экономической торговли, таможенных союзов,
регулирующие торговлю и отношения между
участниками деятельности, осуществляемой в
зонах свободной торговли, участниками
таможенных союзов.
41
В таблице 10 представлены результаты, полученные путём сравнения с
эталонной классификацией. Столбцы RelDoc, TrainDoc, TDoc, FDoc, P, R, F1
содержат: общее число число документов, относящихся к классу, число в
обучающей коллекции, число корректно классифицированных и число
ошибочно классифицированных документов, точность, полноту и Fфункцию.
Таблица 10. Оценка на основе сравнения с эталоном.
Категория
RelDoc
TrainDoc TP
FP
P
R
F1
rblc3800301
143
14
68
34
.667
.476
0.556
rblc9001175
28
3
21
7
.750
.750
.750
rblc9001285
167
16
62
99
.385
.371
.378
rblc9001359
55
6
18
32
.357
.327
.341
rblc9001752
58
6
27
0
1
.466
.636
rblc9002022
228
18
29
23
.556
.127
.207
rblc901716586 26
3
3
112
.026
.115
.042
rblc901716587 32
4
10
0
1
.312
.476
rblc901800554 17
2
1
333
.003
.059
0.06
rblc901800803 9
1
2
140
.014
.222
.026
rblc901800805 40
4
13
78
.143
.325
.199
rblc901800807 23
2
0
0
0
0
0
(результаты пока плохие – чуть ниже среднего по РОМИП. Надо
дорабатывать синтаксический компонент). Объясняется слишком малым
числом положительных образцов в обучающей коллекции, что плохо
сказывается на методе опорных векторов. А метод k-NN пока не
тестировался. Надо будет провести тестирование на рубриках с большим
числом положительных образцов.
42
8. Ещё предстоит сделать (TODO)
Здесь перечислены задачи, которые ещё не сделаны:
 Добавить взвешенность в k-NN
 Выделить и описать этап графематического анализа.
 Записать
более
формально
процесс
морфологического
анализа. Может быть добавить пример.
 Дописать предсказание морф. анализа неизвестных слов
 Описать алгоритм «дугового» синтаксического анализа с
пометами.
 Построить адекватную грамматику для русского языка (на
основе
алгоритмов
Диалинг,
у
которых
нет
чёткой
формальной модели).
 Дописать и описать практическую реализацию.
 Более тщательно протестировать реализацию на предмет
эффективности и производительности.
 Написать заключение.
43
Список использованных источников
1.
Baeza-Yates, Ricardo, and Berthier Ribeiro-Neto. 1999. Modern
Information Retrieval. Harlow: Addison-Wesley.
2.
Salton G., Buckley C. Term-weighting approaches in automatic text
retrieval – Information Processing and Management, 24:513-523,
1988
3.
Hayes P. J., Andersen P. M., Nirenburg I. B.. Schmandt L. M., 1990.
Tcs: a shell for content-based text categorization. In Proceedings of
CAIA-90,
6th
IEEE
Conference
on
Artificial
Intelligence
Applications (Santa Barbara, CA, 1990), 320–326.
4.
Yang Y., Liu, X., 1999. A re-examination of text categorization
methods. In Proceedings of SIGIR-99, 22nd ACM International
Conference on Research and Development in Information Retrieval
(Berkeley, CA, 1999), 42–49.
5.
Dumais S. T., Platt J., Heckerman D., Sahami M., 1998. Inductive
learning algorithms and representations for text categorization. In
Proceedings of CIKM-98, 7th ACM International Conference on
Information and Knowledge Management (Bethesda, MD, 1998),
148–155.
6.
Fabrizio Sebastiani. Machine Learning in Automated Text
Categorization – ACM Computing Surveys, Vol. 34, No. 1, March
2002, pp 1–47.
7.
van Rijsbergen C. J., 1979. Information Retrieval, 2nd ed.
Butterworths, London, UK.
8.
Joachims T. 1998., Text categorization with support vector
machines: learning with many relevant features. In Proceedings of
ECML-98, 10th European Conference on Machine Learning
(Chemnitz, Germany, 1998), 137–142.
44
9.
Рассел Стюарт, Норвиг Питер. Искусственный интеллект:
современный подход, 2-е изд.. : Пер с англ. – М : Издательский
дом «Вильямс», 2006. – 1408 с.
10. Автоматическая Обработка Текста. http://aot.ru
11. Алексей Сокирко. 2004
Морфологические модули на сайте
www.aot.ru. http://aot.ru/docs/sokirko/Dialog2004.htm.
12. Илья Сегалович, Михаил Маслов. Русский морфологический
анализ и синтез с генерацией моделей словоизменения для не
описанных в словаре слов. Казань, Т. 2. С. 547-552, 1998.
13. Леонтьева Н.Н.,. Автоматическое понимание текстов: системы,
модели,
ресурсы:
учебное
пособие
для
студентов
лингвистических факультетов вузов. – М.: Издательский центр
«Академия», 2006. – 304 с.
14. Зализняк А. А. Грамматический словарь русского языка
(словоизменение). 2-е изд., М., "Русский язык", 1980.
15. Tomek Strzalkowski, Jose Perez Carballo, Mihnea Marinescu.
Natural language information retrieval: TREC-3 report, 1995
16. Reuters-21578
Text
Categorization
Collection.
http://kdd.ics.uci.edu/databases/reuters21578/reuters21578.html
17. T. Joachims, Making large-Scale SVM Learning Practical.
Advances in Kernel Methods - Support Vector Learning, B.
Schölkopf and C. Burges and A. Smola (ed.), MIT-Press, 1999.
18. В.И. Шабанов, А.М. Андреев. Метод классификации текстовых
документов, основанный на полнотекстовом поиске. //Труды
первого
российского
семинара
по
оценке
методов
информационного поиска. Под ред. И.С. Некрестьянова –
Санкт-Петербург: НИИ Химии СПбГУ, 2003, 132с.
19. Ilya Segalovich. A fast morphological algorithm with unknown
word guessing induced by a dictionary for a web search engine.
MLMTA-2003. Las Vegas, 2003
45
20. Российский семинар по Оценке Методов Информационного
Поиска. http://romip.ru
21. Т. Кормен, Ч. Лейзерсон, Р. Ривес. Алгоритмы: построение и
анализ. М.: МЦНМО, 2000 – 960 с., 263 ил.
46
Download