clasification

28
Автоматическая Автоматическая классификация текстов с классификация текстов с использованием использованием латентно-семантического латентно-семантического анализа анализа Соловьев Алексей Соловьев Алексей Auditech Ltd. Auditech Ltd. ; ; СПбГУ СПбГУ

description

 

Transcript of clasification

Page 1: clasification

Автоматическая Автоматическая классификация текстов с классификация текстов с

использованиемиспользованиемлатентно-семантического латентно-семантического

анализаанализа

Соловьев АлексейСоловьев Алексей

Auditech Ltd.Auditech Ltd.;; СПбГУСПбГУ

Page 2: clasification

Алгоритмы классификацииАлгоритмы классификации

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

►открытыеоткрытые, когда входной документ , когда входной документ может не принадлежать ни одной может не принадлежать ни одной из заданных рубрик, то есть из заданных рубрик, то есть принадлежать к “незаданной”, принадлежать к “незаданной”, “чужой”, “неизвестной” рубрике.“чужой”, “неизвестной” рубрике.

Page 3: clasification

Критерии оценки Критерии оценки алгоритмов алгоритмов

► Точность (качество) классификации.Точность (качество) классификации.► Соотношение качества и скорости. Как правило, Соотношение качества и скорости. Как правило,

это конкурирующие величины и их выбор часто это конкурирующие величины и их выбор часто ограничен вычислительными ресурсами ограничен вычислительными ресурсами компьютера.компьютера.

► Наличие и отсутствие предварительного Наличие и отсутствие предварительного обучения системы.обучения системы.

► Возможность работы алгоритма в режиме Возможность работы алгоритма в режиме самодополнения и самообучения с самодополнения и самообучения с поступлением новой информации на вход.поступлением новой информации на вход.

► Пересекаемость рубрик (в зависимости от Пересекаемость рубрик (в зависимости от поставленной задачи).поставленной задачи).

Page 4: clasification

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

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

►Пользователь определяет рубрики, Пользователь определяет рубрики, задавая набор текстов для каждой задавая набор текстов для каждой из множества рубрик.из множества рубрик.

►Пользователь задает корпус Пользователь задает корпус текстов, и множество рубрик текстов, и множество рубрик определяется автоматически.определяется автоматически.

Page 5: clasification

Обзор существующих методов и Обзор существующих методов и алгоритмовалгоритмов

► Suffics Tree ClusteringSuffics Tree Clustering ((STSSTS) – алгоритм быстрого ) – алгоритм быстрого поиска подстрок. поиска подстрок.

► ScatterScatter//GatherGather – алгоритм кластеризации на – алгоритм кластеризации на основе итеративного разбиения / объединения. основе итеративного разбиения / объединения.

► KK--meansmeans – итеративный процесс – итеративный процесс стабилизирования центроидов кластеров.стабилизирования центроидов кластеров.

► SOMSOM – нейронная сеть Кохонена, выполняющая – нейронная сеть Кохонена, выполняющая задачу классификации входных данных и задачу классификации входных данных и обучающаяся без учителя. обучающаяся без учителя.

► Latent Semantic Analysis / Latent Semantic Latent Semantic Analysis / Latent Semantic IndexingIndexing ((LSA / LSILSA / LSI) – метод латентно-) – метод латентно-семантического анализа и латентно-семантического анализа и латентно-семантического индексирования. семантического индексирования.

Page 6: clasification

Латентно-семантический Латентно-семантический анализ анализ

LSALSA / / LSILSI – это реализация основных принципов факторного анализа – это реализация основных принципов факторного анализа применительно ко множеству документов. применительно ко множеству документов.

Фактор – причина, движущая сила какого-либо процесса, Фактор – причина, движущая сила какого-либо процесса, определяющая его характер или отдельные его черты. определяющая его характер или отдельные его черты. (http://ru.wikipedia.org) (http://ru.wikipedia.org)

ФакторФактор – подобие некой семантической сущности, после – подобие некой семантической сущности, после определения числа и параметров которой происходит определения числа и параметров которой происходит отображение множества документов на пространство факторов. отображение множества документов на пространство факторов. Задачей факторного анализа является выделение главных Задачей факторного анализа является выделение главных факторов из пространства элементарных. факторов из пространства элементарных.

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

Page 7: clasification

SVDSVD разложение матрицы разложение матрицы

Наиболее распространенный вариант ЛСА основан на Наиболее распространенный вариант ЛСА основан на использовании разложения диагональной матрицы по использовании разложения диагональной матрицы по сингулярным значениям (SVD – Singular Value сингулярным значениям (SVD – Singular Value Decomposition). Используя SVD, огромная исходная Decomposition). Используя SVD, огромная исходная матрица разлагается во множество ортогональных матриц, матрица разлагается во множество ортогональных матриц, линейная комбинация которых является достаточно линейная комбинация которых является достаточно точным приближением исходной матрицы.точным приближением исходной матрицы.

Например, согласно теореме о сингулярном разложении Например, согласно теореме о сингулярном разложении любая вещественная прямоугольная матрица может быть любая вещественная прямоугольная матрица может быть разложена в произведение трех матриц:разложена в произведение трех матриц:

таких, что матрицы таких, что матрицы UU и и VV – ортогональные, а – ортогональные, а SS – – диагональная матрица, значения на диагонали которой диагональная матрица, значения на диагонали которой называются сингулярными значениями матрицы называются сингулярными значениями матрицы AA. .

TUSVA

Page 8: clasification

SVDSVD разложение матрицы разложение матрицы

Рисунок 1. SVD разложение матрицы А размерности (T X D) на матрицу термов U размерности (T X k), матрицу документов V размерности (k X D) и диагональную матрицу S размерности (k X k), где k – количество сингулярных значении диагональной матрицы S.

Page 9: clasification

SVDSVD разложение матрицы разложение матрицыТакое разложение обладает замечательной особенностью: если в Такое разложение обладает замечательной особенностью: если в SS

оставить только оставить только kk наибольших сингулярных значений, а в наибольших сингулярных значений, а в матрицах матрицах UU и и VV только соответствующие этим значениям только соответствующие этим значениям столбцы, то произведение получившихся матриц столбцы, то произведение получившихся матриц SlsaSlsa, , UlsaUlsa и и VlsaVlsa будет наилучшим приближением исходной матрицы будет наилучшим приближением исходной матрицы AA матрицей матрицей ранга ранга kk::

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

Таким образом, каждый терм и документ представляются при Таким образом, каждый терм и документ представляются при помощи векторов в общем пространстве размерности помощи векторов в общем пространстве размерности kk (так (так называемом пространстве гипотез). Близость между любой называемом пространстве гипотез). Близость между любой комбинацией термов и/или документов может быть легко комбинацией термов и/или документов может быть легко вычислена при помощи скалярного произведения векторов. вычислена при помощи скалярного произведения векторов.

Tlsalsalsa VSUAA

~

Page 10: clasification

Три основных разновидности Три основных разновидности решения задачи методом ЛСА:решения задачи методом ЛСА:

►сравнение двух термов между сравнение двух термов между собой;собой;

►сравнение двух документов между сравнение двух документов между собой;собой;

►сравнение терма и документа.сравнение терма и документа.

Page 11: clasification

Два варианта применения Два варианта применения латентно-семантического латентно-семантического

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

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

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

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

► - нахождения документов, достаточно близких по своей тематике (для дальнейшего - нахождения документов, достаточно близких по своей тематике (для дальнейшего их объединения);их объединения);

► - «замешивания» документов для добавления ассоциативных связей в похожие - «замешивания» документов для добавления ассоциативных связей в похожие документы с добавлением лексики из одной темы в другую и изменением весовых документы с добавлением лексики из одной темы в другую и изменением весовых функций лексических единиц. Это даст возможность находить темы, ассоциативно функций лексических единиц. Это даст возможность находить темы, ассоциативно близкие к входящему сообщению.близкие к входящему сообщению.

Page 12: clasification

Исследование ЛСА на Исследование ЛСА на материале базы спонтанной материале базы спонтанной

русской речирусской речи►Сегментация текста на термыСегментация текста на термы►Расчет весовых функций термов Расчет весовых функций термов ►Определение тематик документов Определение тематик документов ►Выбор порога для сингулярных Выбор порога для сингулярных

элементов диагональной матрицы при элементов диагональной матрицы при SVDSVD анализе анализе

►Выбор критерия ограничения Выбор критерия ограничения величины весовых функций при величины весовых функций при получении ассоциативного словаря получении ассоциативного словаря

Page 13: clasification

Материал для Материал для тестирования тестирования

Тестирование вышеописанных алгоритмов было произведено на Тестирование вышеописанных алгоритмов было произведено на речевой базе русской речи, собранной и обработанной речевой базе русской речи, собранной и обработанной компанией компанией AudiTech LtdAudiTech Ltd.. Речевая база содержит Речевая база содержит широкополосные записи 550 русскоязычных взрослых дикторов, широкополосные записи 550 русскоязычных взрослых дикторов, проживающих в разных регионах России. Записи проводились в проживающих в разных регионах России. Записи проводились в различных акустических условиях с учетом возрастных, различных акустических условиях с учетом возрастных, гендерных и региональных особенностей. Объем базы – около гендерных и региональных особенностей. Объем базы – около 160 часов речи. Корпус базы состоит из читаемой и вызванной 160 часов речи. Корпус базы состоит из читаемой и вызванной спонтанной речи. Вызванная спонтанная речь представляет спонтанной речи. Вызванная спонтанная речь представляет собой мини рассказы на заданную тему. Каждый респондент собой мини рассказы на заданную тему. Каждый респондент рассказывал 10 заданных тем.рассказывал 10 заданных тем.

База имеет орфографическую запись всех высказываний и База имеет орфографическую запись всех высказываний и специальные пометки, указывающие на наличие возможных специальные пометки, указывающие на наличие возможных шумов, оговорок, обрывов записи. шумов, оговорок, обрывов записи.

Из этой базы была сделана выжимка, содержащая только Из этой базы была сделана выжимка, содержащая только вызванную спонтанную речь. Общий объем подбазы вызванную спонтанную речь. Общий объем подбазы ccоставил оставил более 24 часов и содержит около 110 тысяч словоупотреблений более 24 часов и содержит около 110 тысяч словоупотреблений и 5165 высказываний пятисот респондентов.и 5165 высказываний пятисот респондентов.

Page 14: clasification

Сегментация текста на Сегментация текста на термытермы

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

Фонетическое словоФонетическое слово (ФС) (ФС) – знаменательная словоформа – знаменательная словоформа плюс клитика. Клитики – это акцентно-слабые плюс клитика. Клитики – это акцентно-слабые компоненты словосочетания. Разряд клитик образуют компоненты словосочетания. Разряд клитик образуют проклитики – акцентно-слабые компоненты, проклитики – акцентно-слабые компоненты, предшествующие сильному и сливающиеся с ним в одно предшествующие сильному и сливающиеся с ним в одно слово (напр., на берегу, дней пять и т. п.), и энклитики – слово (напр., на берегу, дней пять и т. п.), и энклитики – акцентно-слабые компоненты, которые следуют за акцентно-слабые компоненты, которые следуют за сильным и сливаются с ним в единое фонетическое слово. сильным и сливаются с ним в единое фонетическое слово. ФС характеризуется акцентным контуром слова.ФС характеризуется акцентным контуром слова.

С учетом этого был составлен частотный словарь, С учетом этого был составлен частотный словарь, содержащий около 19 тысяч словоформ. Объем словаря содержащий около 19 тысяч словоформ. Объем словаря оказалось на 19,7% больше, чем объем без учета ФС. оказалось на 19,7% больше, чем объем без учета ФС.

Для уменьшения объема вычислений при составлении Для уменьшения объема вычислений при составлении матрицы термы-на-документы были отброшены слова и матрицы термы-на-документы были отброшены слова и словоформы с частотностью менее 2. словоформы с частотностью менее 2.

Page 15: clasification

Расчет весовых функцийРасчет весовых функций

Весовые функции для матрицы термы-на-Весовые функции для матрицы термы-на-документы рассчитывались по формуле:документы рассчитывались по формуле:

где где tftf – частота терма, – частота терма, nn обозначает число обозначает число векторов в которых есть терм векторов в которых есть терм tftf, а , а NN - - общее число векторов. общее число векторов.

N

ntfdftfW jijijiij log

Page 16: clasification

Определение тематик Определение тематик документовдокументов

Рисунок 2. Факторы после проведения Рисунок 2. Факторы после проведения SVDSVD анализа для 30 документов; красный анализа для 30 документов; красный цвет – заранее классифицированный текст, синий – автоматический. Для цвет – заранее классифицированный текст, синий – автоматический. Для предварительно разделенного на темы текста, выявляется еще один фактор.предварительно разделенного на темы текста, выявляется еще один фактор.

0

20

40

60

80

100

120

140

160

180

200

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29

номер документа

факто

ры

Page 17: clasification

Сравнительная таблица пересечения Сравнительная таблица пересечения основных факторовосновных факторов

Таблица 1. Сравнительная таблица пересечения основных Таблица 1. Сравнительная таблица пересечения основных факторов в автоматически кластеризованных текстах и факторов в автоматически кластеризованных текстах и предварительно разделенных на темы (обозначены предварительно разделенных на темы (обозначены знаком +).знаком +).

Кол-во Кол-во документов документов

ПриблизительПриблизительное кол-во ное кол-во факторов факторов

Кол-во Кол-во факторов, факторов, совпавших с совпавших с 30+ 30+

Пересечение Пересечение с текстом 30+ с текстом 30+ (%) (%)

2020 66 55 5656

3030 88 77 7878

5050 1010 88 8989

30+30+ 99 99 100100

Page 18: clasification

Выбор порога для сингулярных Выбор порога для сингулярных элементов диагональной матрицы элементов диагональной матрицы

при при SVDSVD анализе анализе

Рисунок 3. Изменение объема лексикона с уменьшением Рисунок 3. Изменение объема лексикона с уменьшением числа сингулярных элементов диагональной матрицы.числа сингулярных элементов диагональной матрицы.

0

50000

100000

150000

200000

250000

30 27 24 20 16 12

количество сингулярных значений диагональной матрицы

ко

ли

че

ств

о т

ер

мо

в

Page 19: clasification

Выбор порога для сингулярных Выбор порога для сингулярных элементов диагональной матрицы элементов диагональной матрицы

при при SVDSVD анализе анализе

Рисунок 4. Объем лексикона для каждого документа при разных Рисунок 4. Объем лексикона для каждого документа при разных количествах сингулярных элементов диагональной матрицы: синий цвет количествах сингулярных элементов диагональной матрицы: синий цвет – все элементы – 30 (как до анализа); красный цвет – при сокращении на – все элементы – 30 (как до анализа); красный цвет – при сокращении на 6 элементов; желтый цвет – при сокращении на 18 элементов.6 элементов; желтый цвет – при сокращении на 18 элементов.

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29

номер документа

ко

ли

че

ств

о т

ер

мо

в

Page 20: clasification

Выбор критерия ограничения Выбор критерия ограничения величины весовых функций при величины весовых функций при

получении ассоциативного словаряполучении ассоциативного словаря

Рисунок 5. Весовые функции первых 100 слов для всех Рисунок 5. Весовые функции первых 100 слов для всех документов: желтый цвет – без сокращения диагональных документов: желтый цвет – без сокращения диагональных элементов матрицы; красный – для 20 элементов и синий для элементов матрицы; красный – для 20 элементов и синий для 12.12.

0

5

10

15

20

25

30

35

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

количество термов

ве

с т

ер

ма

Page 21: clasification

Результаты тестирования на Результаты тестирования на речевой базе русской речи речевой базе русской речи

Таблица 2. Результаты тестирования базы для Таблица 2. Результаты тестирования базы для разных соотношений обучающей и разных соотношений обучающей и тестируемой частей.тестируемой частей.

Тест \ Тест \ обучение обучение

полная полная база (%) база (%)

¾ (%) ¾ (%) ½ (%) ½ (%)

полная полная база база

88,1 88,1 90,8 90,8 82,2 82,2

¼ ¼ 80,2 80,2

½ ½ 77,6 77,6

Page 22: clasification

SVDSVD анализ анализ

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

► - кластеризацией базы и выделения нескольких - кластеризацией базы и выделения нескольких главных факторов и переклассификацией всех главных факторов и переклассификацией всех сообщений (для получения тестовых результатов сообщений (для получения тестовых результатов придется в ручную пересматривать часть базы на придется в ручную пересматривать часть базы на объект соответствия сообщений тому или иному объект соответствия сообщений тому или иному фактору);фактору);

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

Page 23: clasification

ВыводыВыводы

Исследования показали, что латентно-семантический Исследования показали, что латентно-семантический анализ вполне подходит для решения двух задач: анализ вполне подходит для решения двух задач:

► - автоматической кластеризации текста и - автоматической кластеризации текста и выявления в нем основных рубрик, которые можно выявления в нем основных рубрик, которые можно будет использовать в дальнейшем для будет использовать в дальнейшем для классификации входящих сообщений;классификации входящих сообщений;

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

Page 24: clasification

Изменение главных факторов при Изменение главных факторов при уменьшении числа сингулярных уменьшении числа сингулярных

диагональных элементов матрицыдиагональных элементов матрицы

Page 25: clasification

Изменение главных факторов при Изменение главных факторов при уменьшении числа сингулярных уменьшении числа сингулярных

диагональных элементов матрицыдиагональных элементов матрицы

Page 26: clasification

Области применения ЛСАОбласти применения ЛСА

► Рубрикация текста (Тематическая Рубрикация текста (Тематическая классификация и кластеризация классификация и кластеризация документов)документов)

► Системы поиска, индексация текстовых Системы поиска, индексация текстовых корпусовкорпусов

► Анализ связности дискурса и Анализ связности дискурса и когерентности текстакогерентности текста

►Представление и проверка знанийПредставление и проверка знаний►Использование ЛСА в когнитивных Использование ЛСА в когнитивных

моделях, понимание текстамоделях, понимание текста

Page 27: clasification

СПАСИБО ЗА ВНИМАНИЕ!СПАСИБО ЗА ВНИМАНИЕ!

Page 28: clasification

Некоторые Интернет-Некоторые Интернет-ресурсы, посвященные ЛСАресурсы, посвященные ЛСА

http://www-http://www-timc.imag.fr/Benoit.Lemaire/lsa.htmltimc.imag.fr/Benoit.Lemaire/lsa.html - Readings - Readings in Latent Semantic Analysis for Cognitive Science and in Latent Semantic Analysis for Cognitive Science and Education. – Education. – сборниксборник статейстатей ии ссылокссылок оо ЛСАЛСА..

httphttp://://lsalsa..coloradocolorado..eduedu/ - ЛСА моделирование. / - ЛСА моделирование. It is It is essential that you understand the LSA modeling methods essential that you understand the LSA modeling methods before using the applications on this website. Selecting before using the applications on this website. Selecting incorrect semantic spaces, number of dimensions, or incorrect semantic spaces, number of dimensions, or types of comparisons will result in flawed analyses.types of comparisons will result in flawed analyses.

http://www.cs.utk.edu/%7Elsi/ - Latent Semantic Indexing.http://www.cs.utk.edu/%7Elsi/ - Latent Semantic Indexing.http://lsi.research.telcordia.com/lsi/ - Telcordia Latent http://lsi.research.telcordia.com/lsi/ - Telcordia Latent

Semantic Indexing (LSI). Demo MachineSemantic Indexing (LSI). Demo Machine