Мищенко. Методы автоматического определения наиболее...
TRANSCRIPT
Методы автоматического определения наиболее
частотного значения слова
Автор: Мищенко Николай, 425 группаНаучный руководитель:
Лукашевич Наталья Валентиновна
Содержание
• Основная задача• Последовательность разработки• Базовая часть всех методов• Тематическое моделирование• Векторная модель• Улучшения методов• Результаты• Заключение
2
Основная задача• Семантический анализ текста требует выбора
правильного значения многозначного слова• Может помочь знание о наиболее частотном
значении слова– 85% существительных упоминается в наиболее
частотном значении – Прилагательные и глаголы в 45% и 48% соответственно
• Главная задача: определить по текстовой коллекции наиболее частотное значение заданного слова
3
Последовательность разработки
• Дана коллекция текстов• Получение коллекции документов с
заданным словом• Применение различных методов поиска
наиболее частотного слова:– Используя вероятностную тематическую модель
для выбранной коллекции текстов– Используя векторную модель
информационного поиска
4
Тезаурус• Для того, чтобы найти частотное значение слова мы
должны знать все используемые значения этого слова.• Тезаурус ― особая разновидность словарей, в которых
указаны семантические отношения между лексическими единицами.
• Используется тезаурус русского языка "Тезаурус РуТез", объем которого составляет 100 тысяч слов и выражений, между которыми вручную установлено более 210 тысяч отношений.
• Особенностью данного тезауруса является то, что в течение многих лет он тестировался в реальных проектах.
5
Примеры экспертной разметки• Авангардный
– Авангардизм, авангардное искусство– Авангард (группа людей)– Авангардные подразделения
• Автоматический– Машинальный– Автоматический режим– Автоматическая система
• Авторитет– влияние, авторитет– авторитетный человек– преступный авторитет
6
Получение коллекции для заданного слова
• Есть большая коллекция новостных документов, состоящая из 2169934 файлов
• Необходимо выбрать только те документы, в которых хоть раз встречалось данное многозначное слово
• Для удобства работы с документами нужно привести все слова в единый формат
7
Морфологический анализатор
• Морфологический анализ • Необходимо получение нормальной
формы слова• Используется морфологический анализатор
для русского языка pymorphy2
8
Базовая часть всех методов-1
• Для всех методов поиска частотного значения многозначного слова W необходимо получение синонимов для каждого значения (концепта) W, т.е. Wi
• Один шаг получения синонимов Wi : – Поиск концептов, через “отношения” c концептом Wi
– Получение синонимов для найденных концептов– Разбиение синонимов на отдельные слова
• Два шага: проделать первый шаг для каждого концепта, полученного через “отношения” с Wi
9
Базовая часть всех методов-2
• Проделав либо 1 шаг, либо 2 шага получения синонимов, получаем вектор синонимов данного значения Wi
• Используя данный вектор в каждом методе поиска, находим наилучший результат среди всех значений Wi
10
Пример 1 шага с разбиением
11
Пример 2-х шагов с разбиением
12
Пример 1 шага без разбиения
13
Пример 2-х шагов без разбиения
14
Тематическое моделирование-1
• Тематическая модель — модель коллекции текстовых документов, которая определяет, к каким темам относится каждый документ коллекции.
• Тематическое моделирование используется для нахождения скрытых тем встреченных в коллекции документов.
• На выходе имеем числовой вектор, cоставленный из оценок степени принадлежности данного документа каждой из тем.
15
Тематическое моделирование-2
• Используется вероятностная тематическая модель, которая основана на следующий предположениях:– Порядок документов в коллекции, как и слов в
документе, не имеет значения– Каждая тема описывается неизвестным
распределением на множестве слов– Каждый документ описывается неизвестным
распределением на множества тем
16
Tt p(w|t)Ww
Dd p(t|d) Tt
Тематическое моделирование-3• Используется модуль GibbsLDA++, реализованный на С++ и
использующий метод латентного размещения Дирихле, который предложен Дэвидом Блеем в 2003 году
• Метод LDA основан на той же вероятностной модели:
17
Тематическое моделирование-4
• Пример работы GibsLDA++
18
Тематическое моделирование-5
• Два варианта использования топиков• Наивный вариант:
– Для каждого значения Wi находим максимальное сопоставление частотного вектора синонимов с каждым из топиков
– Частотным значением многозначного слова W
считается максимальное среди всех значений Wi
19
Тематическое моделирование-6.Новый метод:
где , f(t) - "частота топика", т.е. это распределение слов данного топика, умноженного на частоту слов в нашей выборке, JS(S||T) - это расхождение Дженсена-Шеннона.
где D(P||M) - расхождение Кульбака-Лейблера.
После чего, среди всех найденных prevalence(si) выбирается максимальное, т.е. является наиболее частотным значением слова W
20
, - ,
,
Векторная модель-1
• Основная идея:– Посчитать частотный вектор слов из коллекции
документов для заданного слова• Наивный метод:
– Для каждого значения Wi найти косинус между вектором синонимов и вектором коллекции
– Частотным значением считается то, у которого максимальный косинус
21
Векторная модель-2
• Продвинутый метод:– Использование модели tf.idf– Предпосчет df для всех слова в большой
коллекции– Подсчет tf для маленькой коллекции для
заданного многозначного слова– Нахождения максимального косинуса между
вектором синонимов и улучшенного вектора коллекции
22
Улучшения методов-1
• При получении вектора синонимов использовать процентное отсечение
• Разбиение каждого синонима на отдельные слова может давать побочные эффекты, поэтому для каждого метода нужно придумать как его преобразовать для словосочетаний
23
Улучшения методов-2
24
Примеры работы
25
Результаты-1
• Есть набор из 330 многозначных слов, с эталонным ответам для каждого
• У каждого слова в среднем 4.59 значения, соответственно, стартовый результат рандомного выбора значения: 21.7%
26
Результаты-2
27
Название метода 1 шаг синонимов 2 шага синонимовТопики, Prevalence 0.5256 0.4833Топики, жадность 0.4169 0.3836
Вектора, жадность 0.5135 0.5226
Вектора, tf.idf 0.5015 0.5287Топики, замена уник-х син-в, Pr-ce
0.5045 0.4259
Топики, замена уник-х син-в, жад-ть
0.4773 0.4471
Отсечение синон-в, вектора, 8%
0.5347
Отсечение синон-в, вектора, 15%
0.5438
Отсечение синон-в, вектора, 18%
0.5498
Отсечение синон-в, Prev-ce, 18%
0.5105
Вектора, не разб-я 0.5558
Заключение
• Реализован метод получения наиболее частотного значения многозначного слова, который упрощает задачу семантического анализа
• Для каждого метода написана программная реализация, позволяющая получить результаты каждого этапа по-отдельности
• Получены хорошие результаты относительно стартового результата выбора значения многозначного слова
28
Спасибо за внимание!
Вопросы?