Автоматическая классификация лексики в неразмеченных

advertisement
Семинар по корпусной лингвистике
ИЛИ РАН
26 февраля 2007 г.
Автоматическая классификация лексики
в неразмеченных русскоязычных текстах
О.А. Митрофанова,
А.С. Мухин,
П.В. Паничева
(кафедра математической лингвистики СПбГУ)
1. Постановка проблемы
АКЛ =
> данные об иерархической структуре лексикона,
> формальные онтологии, словарная поддержка АОТ,
> автоматическое индексирование текстов,
> тематическое упорядочение документов в корпусах,
> повышение качества информационного поиска
> … и многое другое.
Создание открытых модулей АКЛ для русского языка
необходимо.
Ресурсы, которые выполняют процедуру АКЛ и смежные с
ней операции на основе русскоязычных текстов и
лексикографических баз, – редкость.
Специализированные ресурсы АКЛ:
Решается задача
> выделения кластеров близких по значению слов
> из корпусов англоязычных текстов
> на основе сходства дистрибуций:
COALS (http://dlt4.mit.edu/~dr/COALS/)
InfoMap (http://infomap.stanford.edu)
Google-Sets (http://labs.google.com/sets)
SenseClusters (http://senseclusters.sourceforge.net/)
LexSem
(http://www.isi.edu/~pantel/Content/Demos/LexSem/cbc.htm)
DSM (http://clg.wlv.ac.uk/demos/similarity/)
2. Цели исследования
Обсуждаемый проект направлен на
построение русскоязычного ресурса АКЛ, который
– позволяет качественно выделять лексико-семантические
классы слов из текстов разных объемов и разных типов,
– допускает классификацию лексики с различными
условиями,
– открывает возможность использования результатов
классификации в других системах автоматической обработки
текста.
3. Этапы реализации проекта
I. Создание инструмента АКЛ для работы с
неразмеченными текстами.
II. Усовершенствование инструмента АКЛ для
обработки размеченных текстов.
III. Усовершенствование инструмента АКЛ для
обработки корпусов параллельных текстов.
4. Используемые методы и процедуры
Кластерный анализ
Возможные методы кластеризации:
– иерархические (аггломеративные, дивизимные),
– неиерархические (итеративные – К-средних, К-медианы…),
– гибридные методы…
Выбор метода кластеризации определяется условиями
эксперимента: умеренный/значительный объем корпуса;
наличие/отсутствие ограничений на число итоговых кластеров...
Реализация: иерархический (аггломеративный) метод и
неиерерархический метод (К-средних).
Латентный семантический анализ
ЛСА =
> представление множества контекстов употребления
исследуемых лексем как точек или векторов
дистрибуций в N-мерном пространстве,
> вычисление расстояния между точками или
сравнение векторов дистрибуций.
Меры: мера Евклида, мера Хэмминга…, вычисление
значения косинуса угла между векторами дистрибуций…
Результаты измерений, сохраняемые в матрице расстояний,
используются при кластеризации.
5. Компьютерная реализация инструмента АКЛ
Программа АКЛ, созданная на языке Python,
предусматривает три блока.
Блок I. Предварительная обработка текста и вычисление
расстояний между исследуемыми лексемами.
Блок II. Иерархический кластерный анализ.
Блок III. Кластерный анализ методом К-средних.
Программирование: П.В.Паничева, А.С.Мухин.
Параметры, определяемые при активизации программы:
> имя файла, содержащего анализируемый текст (text.txt);
> имя файла, содержащего лексемы, отношения между
которыми требуется исследовать (words.txt);
> ширина контекстного окна (± s);
> наличие/отсутствие весовых значений для
ближних/удаленных элементов контекстов (yes / no);
> метод кластеризации (иерархический или К-средних);
> количество кластеров, которое необходимо получить (C).
Блок I. Предварительная обработка текста и вычисление
расстояний между исследуемыми лексемами:
1) обнаружение всех вхождений исследуемых лексем в текст,
2) автоматическое выделение границ контекстов в
соответствии с заданной шириной контекстного окна,
3) автоматическое определение весов элементов контекста,
4) формирование множества контекстов употребления для
каждой лексемы l, представление множества контекстов в виде
вектора дистрибуции в N-мерном пространстве,
5) сравнение векторов дистрибуций всех исследуемых лексем
применительно к обрабатываемому тексту с использованием
меры Евклида.
Итог: матрица расстояний между векторами дистрибуций для
каждой пары исследуемых лексем.
Блок II. Иерархический кластерный анализ:
1) пошаговое формирование совокупностей двух и более
лексем, имеющих близкую дистрибуцию и образующих
кластеры,
2) повторение процедуры до тех пор, пока все лексемы не
объединятся последовательно в один кластер, или пока
количество промежуточных кластеров (фактически,
глубина иерархии) не достигнет числа, указанного
пользователем.
Итог: построение иерархической структуры,
отражающей сходства и различия дистрибуций лексем.
Блок III. Кластерный анализ методом К-средних:
1) предварительное задание итогового числа кластеров,
2) назначение элементов кластеров случайным образом,
вычисление центров кластеров,
3) поиск ближайшего кластера – на каждом шаге
итерации для каждого элемента, вычисление центров
кластеров заново,
4) повторение процедуры до тех пор, пока элементы не
перестанут менять своё местоположение в структуре, т.е.
пока центры кластеров не стабилизируются.
Итог: построение классификации с заданным числом
классов.
Результаты работы программы:
> данные о частотности исследуемых лексем
в обрабатываемом тексте,
> значения расстояний во всевозможных парах
лексем из анализируемого набора,
> результаты кластеризации –
многоуровневый список слов в скобочной записи.
5. Эксперименты по АКЛ
– автоматическая классификация терминовдескрипторов в научных текстах
> на материале статей из русскоязычного корпуса по
корпусной лингвистике;
– автоматическая классификация глагольной лексики в
экспериментальном корпусе
> на материале базовых глаголов русского языка и
корпуса глагольных контекстов;
– автоматическая классификация лексики в
параллельных текстах
> на материале текстов оригинала и перевода
повести-притчи Дж. Оруэлла «Скотный двор».
5.1. Автоматическая классификация терминовдескрипторов в научных текстах
Материал: русскоязычные тексты статей из корпуса по
корпусной лингвистике (руководитель проекта В.П.Захаров).
Экспериментальные тексты: 10 статей из корпуса (Т1–Т10).
Предварительная обработка: для Т1–Т10 определены по
10 терминов-дескрипторов, позволяющих диагностировать
тематическую принадлежность текста.
Термины-дескрипторы представлены в нормализованном виде:
корпус (корпус, корпусов, корпусе, корпуса, корпусы, корпусах,
корпусом, корпусу)
В ходе экспериментов выполнены следующие
процедуры:
– определение частоты встречаемости каждого терминадескриптора в тексте;
– вычисление расстояний между парами терминовдескрипторов в наборах (при ширине контекстного окна
[-5…+5] и с учетом весов элементов контекстов);
– осуществление кластеризации терминов-дескрипторов
для каждого текста иерархическим методом и методом
К-средних с различными параметрами (при глубине
иерархии / конечном числе кластеров С = 3, 5, 7, 9).
Пример: результаты обработки текста Т1, описываемого
терминами-дескрипторами (архив, банк, данные, корпус,
массив, поиск, разметка, текст, формат, чешский)
Частота употребления терминов-дескрипторов в тексте Т1:
корпус (f = 43), текст (f = 25), данные (f =13), поиск (f = 8),
чешский (f = 6), разметка (f = 4), массив (f = 2), формат (f = 2),
архив (f = 1), банк (f = 1).
Расстояния между парами терминов-дескрипторов:
корпус–корпус = 0,0
корпус–текст = 0,344
корпус–данные = 0,509
корпус–поиск = 0,6739
корпус–чешский = 0,737
корпус–разметка = 0,984
корпус–массив = 1,477
корпус–формат = 1,492
корпус–архив = 1,848
корпус–банк = 2,088
Результаты кластеризации в тексте Т1 с использованием
иерархического метода (глубина иерархии С = 3, 5, 7, 9):
С = 3 (архив, банк, массив, разметка, формат, чешский, (поиск
((текст, корпус) данные)))
С = 5 (архив, банк, массив, формат (разметка (чешский
(поиск ((текст, корпус) данные)))))
С = 7 (архив, банк, (массив ((разметка (чешский (поиск ((текст,
корпус) данные)))) формат)))
С = 9 (банк (архив (массив ((разметка (чешский (поиск ((текст,
корпус) данные)))) формат)))
Результаты кластеризации в тексте Т1 с использованием
метода К-средних (конечное число кластеров С = 3, 5, 7, 9):
С = 3 ((архив) (банк) (данные, корпус, массив, поиск, разметка,
текст, формат, чешский))
С = 5 ((архив) (банк) (разметка) (данные, корпус, поиск,
текст, формат, чешский) (массив))
С = 7 ((архив) (банк) (данные, корпус, текст) (формат, чешский)
(массив) (поиск) (разметка)
С = 9 ((архив) (банк) (данные) (чешский) (массив) (поиск)
(разметка) (корпус, текст) (формат))
Эксперименты с текстами, для которых наблюдается
частичное совпадение наборов дескрипторов
Кластеризация совпадающих элементов в наборах
терминов-дескрипторов производилась с помощью
иерархического метода.
Результаты кластеризации идентичны:
Т1 и Т2 – (массив (данные (корпус, текст)))
Т4 и Т5 – (словарь (корпус, текст))
Т4 и Т9 – (частота (корпус, текстов))
Результаты кластеризации различны:
Т1 – (формат (разметка (поиск (текст, корпус))))
Т10 – (разметка (((корпус, текст) формат) (поиск))
Т9 – (поиск (слово (текст, корпус)))
Т10 – (поиск (корпус (слово, текст)))
Т6 – (лингвистика (разметка, корпус))
Т8 – (корпус (лингвистика, разметка))
Итог: АКЛ в корпусе по корпусной лингвистике с учётом
терминов-дескрипторов способствует решению ряда задач:
– структурирование знаний в предметной области КЛ:
> упорядочение терминологии,
> выявление понятийных категорий и их связей;
– подготовка данных для создания онтологии КЛ:
> выявление основных тематических областей,
> классификацию текстов внутри этих областей;
– разработка инструментов для
> определения количественных оценок близости текстов,
> осуществления процедуры автоматической
классификации текстов.
5.2. Автоматическая классификация глагольной
лексики в экспериментальном корпусе
Экспериментальный корпус:
сформирован на основе случайных выборок контекстов
употребления глаголов русского языка из корпуса Бокрёнок
(руководитель проекта И.В.Азарова, разработчик
экспериментального корпуса А.С.Марина).
Объём корпуса: свыше 100 тыс. с/у.
В ходе эксперимента использовалась версия корпуса
глагольных контекстов без морфологической разметки.
Объект исследования:
14 высокочастотных глаголов русского языка,
думать, понимать,
видеть, смотреть,
стоять, лежать,
брать, дать,
делать, работать,
держать, бросать,
идти, ехать
представляющих основные лексико-семантические
классы:
интеллектуальная деятельность, восприятие,
владение, созидательная деятельность,
социальная деятельность, физическое воздействие,
перемещение / местоположение в пространстве...
Эксперименты по иерархической кластеризации
четвёрок глаголов при ширине контекстного окна [-5…+5]
c учётом весов элементов контекстов.
Кластеры в следующих наборах глагольных лексем
сформированы корректно:
(идти, ехать (видеть, смотреть))
(идти, ехать (делать, работать))
(брать, дать (видеть, смотреть))
(держать, бросать (думать, понимать))
(стоять, лежать (думать, понимать))
Отдельные случаи:
Глаголы, относящиеся к одному лексико-семантическому
классу, проявляют высокое сходство дистрибуций:
думать–понимать = 0,107
делать–работать = 0,117
Глаголы, представляющие разные лексико-семантические
классы, отличаются по своим сочетаемостным способностям:
понимать–лежать = 0,152
видеть–идти = 0,151
Различие дистрибуций наблюдается у глаголов,
принадлежащих к из одному лексико-семантическому классу,
но находящихся в отношениях контраста: брать–дать = 0,131.
Итог: в ходе экспериментов с четвёрками глаголов из
экспериментальной группы получены положительные
результаты.
Хотя при решении задач АКЛ применительно к
глагольной лексике предпочтительна работа с
размеченными корпусами значительного объема и
осуществление кластеризации по тегам, есть аргументы в
пользу того, что желаемая цель может быть достигнута и
при обращении к неразмеченному корпусу текстов.
5.3. Автоматическая классификация лексики
в параллельных текстах
Материал: тексты оригинала и перевода повести-притчи
Дж. Оруэлла «Скотный двор» – G. Orwell «Animal Farm»
(версия электронной библиотеки М.Мошкова).
Объем текстов: ~ 24 тыс. с/у (русский текст),
~ 30 тыс. с/у (английский текст).
Объект исследования: тематическая группа «Живые
существа», объединяющая существительные, которые
обозначают человека, животных и птиц.
Экспериментальный набор лексем: более 50 имён,
присутствующих в оригинальном и переводном текстах и
релевантных с точки зрения сюжета.
Эксперименты по иерархической кластеризации лексем
проводились при ширине контекстного окна [-5…+5]
с учётом весов контекстных элементов.
Обработка текстов позволила получить данные
– о частотности лексических единиц,
– о расстояниях между исследуемыми словами в пределах
текстов оригинала и перевода,
– о вариантах их кластеризации.
Основные результаты:
Осуществлено разграничение микрогрупп в пределах
заданной тематической группы.
Кластеризация позволяет противопоставлять имена
животных и птиц:
(ворон (овца, животное))
(цыплята (животное, кошка))
(осел (утка, птица))
(коза (утята, птица))
(raven (animal, sheep))
(chickens (cat, animal))
(donkey (duck, bird))
(goat (ducklings, bird))
Для русских и для английских видовых наименований
родовое имя определяется корректно:
((голубь, утка) птица)
(bird (duck, raven)).
Осуществлена кластеризация существительных,
обозначающих представителей одного вида.
В ряде случаев иерархия имён для русского и английского
текстов является идентичной:
(цыплята (курица, петух)) (chickens (hen, cockerel)).
Случаи несовпадения результатов кластеризации, например:
(кобыла (жеребята, лошадь))
(foal (horse, mare)).
Возможные причины:
– асимметрия переводческих соответствий;
– различная частота употребления элементов пары
«лексема языка оригинала – лексема языка перевода».
лошадь (f = 20); кобыла (f = 2), кобылка (f = 2);
жеребята (f = 2), жеребец (f = 2));
horse (f = 25); mare (f = 4); foal (f = 2))
Особенности кластеризации в четвёрках
(птица (человек, животное) боров)
(bird (boar (man, animal))).
Причины отступления от логического соотношения родовых
имён и видового наименования:
– специфика употребления существительных боров и boar в
тексте повести-притчи,
– специфика сюжетной линии.
Данные о расстояниях между парами лексем:
аnimal–boar = 0,783
animal–human = 0,206
animal–bird = 0,950
животное–боров = 0,817
животное–человек = 0,224
животное–птица = 0,838
Итог:
проведённые эксперименты подтверждают
перспективность совершенствования инструмента
АКЛ для дальнейшей работы с корпусами
параллельных текстов.
6. Перспективы развития исследования
Осуществление первого этапа проекта по созданию и
практическому применению инструмента АКЛ,
рассчитанного на работу с неразмеченными
русскоязычными текстами, привело к желаемым
результатам.
В дальнейшем планируется:
– работа по техническому совершенствованию
инструмента АКЛ;
– проведение лингвистических экспериментов с более
сложными параметрами.
Работа по техническому совершенствованию
инструмента АКЛ:
– введение дополнительных возможностей:
> при кластеризации:
использование новых методов кластеризации;
> при измерении расстояний между лексемами:
добавление метрик;
– модернизация пользовательского интерфейса:
> добавление режима визуализации результатов.
Проведение лингвистических экспериментов
с более сложными параметрами:
– обработка
> размеченных текстов,
> текстов различной тематической принадлежности,
> разнообъёмных текстов,
> параллельных текстов;
– кластеризация
> в наборах лексем при различных условиях.
7. Благодарности:
В.П.Захарову
И.В.Азаровой
А.С.Мариной
В.С.Савицкому
М.А.Александрову
и всем нашим коллегам, поддержавшим проект.
Download