Автоматическая кластеризация близких по смыслу слов

Post on 14-Dec-2014

2.051 views 0 download

description

20 апреля 2010 Витивцкий С.В.

Transcript of Автоматическая кластеризация близких по смыслу слов

. .Витвицкий СВ

Автоматическая кластеризация близких по смыслу слов

1

Основные понятия

2

• Нас интересует проблема выявления смысла слов по коллекции текстов, и, соответственно, «поведения» задаваемых сущностей в описываемом мире.

• Смысл должен отражаться в контекстах употребления соответствующих слов в предложениях текстов.

• Контексты употребления слов:o Линейные – набор окружающих слов.o Синтаксические – с какими словами данное слово связано

синтаксически.• Вектор контекста слова W – множество элементов вида

<w,I>, где w – слово, с которым слово W связано синтаксически, а I – некоторая информация об этой синтаксической связи. Под синтаксическим контекстом слова будем понимать это же множество.

• Смысл слов будем рассматривать через их синтаксические контексты.

Постановка задачи

3

Надо научиться:•автоматически выделять из корпуса текстов контексты слов.•измерять смысловое сходство слов через сходство их контекстов, которое также надо определённым образом измерять.•выявлять близкие по смыслу слова•некоторым образом объединять похожие слова в кластеры (группы)Затем обработать достаточно большую коллекцию текстов для выявления проблем и направления дальнейших действий.

Применение:•Автоматическое построение тезаурусов•Искусственный интеллект (машинное обучение, описание предметных областей)и т.п.

План своей работы:

4

1. Для некоторой достаточно большой базы русскоязычных текстов построить синтаксические контексты для всех достаточно употребляемых слов.

2. Выбрать способ исследования слов на предмет сходства синтаксических контекстов и выявить для каждого слова список достаточно схожих с ним слов.

3. Построить множество кластеров сходных по смыслу слов.

Синтаксические контексты

5

• База русскоязычных новостных текстов (примерно 17 000 документов)

• Требуется получить список пар вида <W,T>, где W – слово, T – его вектор контекста.

• Схема работы:

Синтаксические контексты

6

Пример:

Исходный текст обрабатывается синтаксическим анализаторомпрограммного средства АОТ

Синтаксические контексты

7

Пример:

Результат:•синтаксический разбор текста•множество синтаксических структур

Синтаксические контексты

8

Пример:

Фильтр по отношениям

1) ПРИЛ_СУЩ(длинная дорога)

2) ГЕНИТ_ИГ(рука Москвы)

3) ПРЯМ_ДОП(рубить дрова)

4) ПОДЛ (я пошел)

5) ГЛАГ_ИНФ(пойти выпить)

Синтаксические контексты

9

Пример:

Взятие нормальных форм слов. Проблема неоднозначных слов.

Синтаксические контексты

10

• Коллекция русскоязычных новостных документов объёмом порядка 17000 текстов.

• Построено множество без повторов четвёрок вида <r,w1,w2, c>, где r – синтаксическое отношение, w1 и w2 – слова в нормальной форме, c – количество троек <r,w1,w2> в коллекции документов, тройки <r,w1,w2> уникальны. ~210000 таких элементов.Примеры: ПОДЛ БЫТЬ ПРОЕКТ 92ПРЯМ_ДОП ПОДАВИТЬ ОППОЗИЦИЯ 5ПРИЛ_СУЩ КАМПАНИЯ ИЗБИРАТЕЛЬНЫЙ 144

• Фильтр по частоте вхождения (5). • Строился список слов в нормальной форме с количеством

их вхождений в рассмотренную базу. Применялся фильтр по частоте вхождения (30)

Синтаксические контексты

11

• Пусть W – слово в нормальной форме, а S – ранее введённое множество четвёрок вида <r,w1,w2,c>.

• Синтаксический контекст слова W:o Изначально это пустой список. o Среди всех элементов S ищутся четвёрки вида <r,W,w,c>

либо <r,w,W,c>, т.е. все вхождения W. o Для каждой такой четвёрки вычисляется функция I(W,r,w).

o* - произвольное словоoЕсли I(W,r,w) > 0, то в T добавляется элемент <r,w>.

где |W,r,w| - сумма значений c по вхождениям <r,w,W> или <r,W,w>

Синтаксические контексты

12

• Смысл I (Hindle, 1990): пусть для |r,w,w’,c| мы не знаем c.• События: А: случайно выбранное слово есть w; B:

случайно выбранное отношение есть r; C: случайно выбранное слово есть w’

• Вероятность наступления B, при нём A и C составляет

• Если же c известно, то

• Это нужно, чтобы отсеять «случайные» пары. • Вычисленное значение I потребуется в дальнейшем.

Синтаксические контексты

13

Пример:СВЕРДЛОВСКИЙ

_ ПРИЛ СУЩОБЛ_ ПРИЛ СУЩОБЛАСТЬ_ ПРИЛ СУЩ

ОТДЕЛЕНИЕ_ ПРИЛ СУЩ

ИСПОЛКОМ_ ПРИЛ СУЩ

ДЕЛЕГАЦИЯ_ ПРИЛ СУЩ

БИЗНЕСМЕН_ ПРИЛ СУЩДУМА_ ПРИЛ СУЩ

МИЛИЦИОНЕР_ ПРИЛ СУЩ

КОЛЛЕДЖ_ ПРИЛ СУЩОТРЯД_ ПРИЛ СУЩ

МАГИСТРАЛЬ_ ПРИЛ СУЩ

АГЕНТСТВО_ ПРИЛ СУЩДОРОГОЙ_ ПРИЛ СУЩДЕПО

ВОЛОГОДСКИЙ_ ПРИЛ СУЩОБЛАСТЬ_ ПРИЛ СУЩОТДЕЛЕНИЕ_ ПРИЛ СУЩ

ЛЕСОПРОМЫШЛЕННИК_ ПРИЛ СУЩОБЛ_ ПРИЛ СУЩОБЪЕДИНЕНИЕ_ ПРИЛ СУЩМЯСОКОМБИНАТ_ ПРИЛ СУЩМАШИНА_ ПРИЛ СУЩСКОРЫЙ

САРАТОВСКИЙ_ ПРИЛ СУЩОБЛАСТЬ_ ПРИЛ СУЩМЕЧЕТЬ_ ПРИЛ СУЩОТДЕЛЕНИЕ_ ПРИЛ СУЩДУМА

ПРИЗ_ ГЕНИТ ИГВРУЧЕНИЕ

_ ПРИЛ СУЩГЛАВНЫЙ_ ПРЯМ ДОП

ПОЛУЧИТЬ_ ПРИЛ СУЩЦЕННЫЙ

_ ГЕНИТ ИГФОНД_ ПРИЛ СУЩ

ДЕНЕЖНЫЙ…

_ ПРЯМ ДОПЗАВОЕВАТЬ

ПОДЛДОСТАТЬСЯ_ ПРЯМ ДОП

ЗАСЛУЖИВАТЬ_ ПРЯМ ДОПОТДАТЬ_ ПРЯМ ДОПВРУЧИТЬ_ ГЕНИТ ИГ

СОИСКАНИЕ

СФАЛЬСИФИЦИРОВАТЬ

ПОДЛОНИ_ ПРИЛ СУЩВЫБОРЫ_ ПРЯМ ДОП

РЕЗУЛЬТАТ ПОДЛЯНУКОВИЧ_ ПРИЛ СУЩ

РЕЗУЛЬТАТ ПОДЛЦИК ПОДЛИТОГ

ИЮЛЬ_ ГЕНИТ ИГ ГОД

_ ПРИЛ СУЩРАНЕНЫЙ

_ ГЕНИТ ИГВЕЩАНИЕ

_ ГЕНИТ ИГСЕРЕДИНА

_ ГЕНИТ ИГ РУБЛЬ_ ГЕНИТ ИГ

НАЧАЛО_ ГЕНИТ ИГКУЧМА_ ГЕНИТ ИГКОНЕЦ_ ГЕНИТ ИГ

ЗРИТЕЛЬ

Синтаксические контекстыПример:

14

Меры подобия слов

15

Меры подобия слов

16

Пример:

17

Меры подобия словПример:

Меры подобия словПример:

18

Меры подобия слов:

19

Замечания• Меры cosine, dice, jacard используют количество вхождений

слов лишь неявно.

• Остальные рассмотренные меры явно используют значения функции I(W,r,w).

• Для мер cosine, dice, jacard, lin коэффициент подобия двух слов не превышает единицы.

• Результаты применения мер cosine, dice, jacard, lin отличаются между собой не сильно, а результаты применения мер hindle отличаются существенно.

• Для каждого слова строился список самых близких слов слов.

Кластеризация похожих слов

20

• Есть N элементов и матрица NxN расстояний между элементами. Надо разделить элементы на группы по степени близости.

• Кластеризация – итеративный процесс.• Методы: способ выбора кластеров, способ определения

расстояния между кластерами.• Наш алгоритм: o Элементы – слова, каждое слово является кластером.o Расстояние между кластерами – среднее расстояние между

элементами первого кластера и элементами второго кластера.

o На каждом шаге два самых близких кластера объединяются в один.

o Конец - когда остался один кластер.

Методология

Кластеризация похожих слов

21

Пример:

НАГРАДА0,28354 ДИПЛОМ

ПРИЗ0,28690 ДИПЛОМ

ДИПЛОМ0,28354 НАГРАДА0,28690 ПРИЗ

Кластеризация похожих словПример:

СРЕДНЕСРОЧНЫЙ0,27854 ИНВЕСТИЦИОННЫЙ

ИНВЕСТИЦИОННЫЙ0,27854 СРЕДНЕСРОЧНЫЙПЕРЕДАВАТЬ0,30000 СООБЩАТЬ

СООБЩАТЬ0,30000 ПЕРЕДАВАТЬ

ИСКАЗИТЬ0,38490 СФАЛЬСИФИЦИРОВАТЬ

СФАЛЬСИФИЦИРОВАТЬ0,38490 ИСКАЗИТЬ

22

Кластеризация похожих слов

23

Пример:

Кластеризация похожих слов

24

Пример:

Поддеревья, полученные из исходного дерева отсечением по неположительному весу

Кластеризация похожих слов

25

Пример:

Полученные кластерыпохожих по смыслу слов

Проблемы

26

• Проблема «неоднозначности» слов.

• Проблема «странных» групп.

• Проблема кластеризации слов, имеющих «неоднозначный» смысл.

o Слово должно быть отнесено к нескольким кластерам, а не к одному

o Пример: берет/берёт

o Решение – другой алгоритм кластеризации

Обзор существующих решений

27

• Dekang Lin, Patrick Pantel, University of Manitoba, Canada

• Размеченный корпус англоязычных текстов• Извлекались тройки вида |r,w1,w2|, где r – синтаксическое

отношение, w1, w2 – слова, с количеством вхождений в текст.

• 8,7 млн уникальных троек.

• Особенности:o Слова разбивались на классы по части речиo Исследовались слова внутри одного классаo Ограничение на количество вхождений слов (100)

• Мера подобия - lin.

• Для каждого слова составлен тезаурус из 200 наиболее близких слов.

brief (noun): affidavit 0.13, petition 0.05, memorandum 0.05, motion 0.05, lawsuit 0.05, deposition 0.05, slight 0.05, prospectus 0.04, document 0.04 paper 0.04, ...

brief (verb): tell 0.09, urge 0.07, ask 0.07, meet 0.06, appoint 0.06, elect 0.05, name 0.05, empower 0.05, summon 0.05, overrule 0.04, ...

brief (adjective): lengthy 0.13, short 0.12, recent 0.09, prolonged 0.09, long 0.09, extended 0.09, daylong 0.08, scheduled 0.08, stormy 0.07, planned 0.06, ...

Обзор существующих решенийПример:

28

Обзор существующих решений

29

• Вопрос сравнения автоматически созданного тезауруса и тезаурусов, созданных вручную – Roget и WordNet.

• Преобразование тезаурусов к виду:

• Вопрос меры подобия тезаурусов.o Для слова w

вводится коэффициент

o Мера подобия - его среднее значение по множеству наиболее употребляемых слов

Значение коэффициента подобия между тезаурусом авторов и WordNet – 0.297, а между Roget и WordNet – 0

Пример:

Обзор существующих решений

Тезаурус авторовbrief (noun): affidavit 0.13, petition 0.05, memorandum 0.05, motion 0.05, lawsuit 0.05, deposition 0.05, slight 0.05, prospectus 0.04, document 0.04 paper 0.04.WordNetbrief (noun): outline 0.96, instrument 0.84, summary 0.84, affidavit 0.80, deposition 0.80, law 0.77, survey 0.74, sketch 0.74, resume 0.74, argument 0.74.Rogetbrief (noun): recital 0.77, saga 0.77, autobiography 0.77, anecdote 0.77, novel 0.77, novelist 0.77, tradition 0.70, historian 0.70, tale 0.64.

30

Обзор существующих решений

31

• Построены тезаурусы на основе мер lin, Hindler, Hindler и cosine

• Сравнение с WordNet, Roget

Выводы:

•Автоматические построенные тезаурусы более похожи на построенный вручную WordNet, чем Roget, но WordNet похож на Roget больше них.

•Hindler лучше Hindle.

•sim (lin) лучшая мера подобия.

Обзор существующих решений

32

Алгоритм кластеризации CBC (Clustering By Committee)

• Мера подобия слов - cosine.

• Решена проблема жесткой кластеризации - многозначных слов

o Каждый кластер, в котором состоит слово, раскрывает его некий смысл

o Принципиально иная идея кластеризацииo Ищутся всевозможные кластеры на основе подобия с

методом взвешенного среднего. o Среди них формируется множество достаточно хороших (в

частности, по включению) кластеров (комитетов).o Каждое слово приписывается ко всем возможным комитетам.

Полученный ранее список похожих слов для слова suit и кластеры.

Пример:

Обзор существующих решений

suit: lawsuit, jacket, shirt, pant, dress,case, sweater, coat, trouser, claim, business suit, …

(suitNq34 0.39 (blouse, slack,

legging, sweater)Nq137 0.20 (lawsuit, allegation,

case, charge))

33

Заключение

34

• Обработана коллекция русскоязычных новостных документов объёмом 17000 текстов.

• Рассмотрены основные способы определения смысловой близости слов.

• Сделан обзор полученных к настоящему моменту результатов по данной тематике для англоязычных текстов.

• Предложен некоторый алгоритм автоматического выделения кластеров похожих слов из русскоязычного текста.

• Выявлены проблемы, которые подлежат дальнейшему изучению и разрешению.

Литература

35

• «Automatic Retrieval and Clustering of Similar Words»Dekang Lin, Department of Computer Science, University of

Manitoba, Canada, 1998

• «Discovering Word Senses from Text»Patrick Pantel, Dekang Lin, Department of Computing Science,

University of Alberta Edmonton, Canada, 2003