Кластеризация языковых выражений в корпусе текстов на основе стохастического ранжирования

Решение задач автоматической кластеризации новостных документов, расстановка списка тематических меток для всех классов. Тематические метки и ключевые слова, биграммные конструкции. Кластеризация, грамматика конструкций, эксперимент, соответствующий цели.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 29.10.2017
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Коллострукционный анализ применим для оценки сочетаемости слов. Сгенерированный текст (например, при машинном переводе) может быть грамматически корректен, но лишен, при этом, всякого смысла. Встречаются фразы, причины семантической несогласованности которых далеко не очевидны, а подчас и необъяснимы. Трудно объяснить, к примеру, разницу в оттенках значений слов жаркий и горячий (см. [Апресян 2010: 510]). Хотя на первый взгляд, эти слова можно назвать синонимами, существительные, с которыми они сочетаются, у каждого свои. Возникает вопрос: почему горячая вода и горячий чайник сочетаются, тогда как горячая погода, горячее лето уже нет? Универсальный ответ для любого словосочетания найти невозможно.

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

А. Стефанович и С. Грис [Stefanowitsch, Gries 2003] рассмотрели в качестве степени сочетаемости вероятность того, что события «встретилось слово x» и «встретилось слово y» зависимы. Для этого строилась статистическая модель, называемая таблицей сопряженности, а зависимость признаков оценивалась точным критерием Фишера. При таком подходе наибольшее значение получали устойчивые лексические конструкции.

Однако, если словосочетание отсутствует в корпусе, это вовсе не значит, что оно не является лексической конструкцией. Каким бы большим ни был корпус, нельзя ожидать, что он вместит в себя все мыслимые коллокации. Так, например, слово краска может встречаться с набором слов красный, белый, зеленый, но не встречаться со словами бежевый или фиолетовый. Возникает задача -- как извлечь информацию о сочетаемости слов, если они не встречались в корпусе. Данная задача получила свое разрешение в нашей статье [Букия и др., 2015].

Оценка взаимозаменяемости элементов конструкций

Для решения основных задач данного исследования мы разработали авторскую методику оценки взаимозаменяемости элементов конструкций, в которой развиваются идеи коллострукционного анализа А.Стефановича и Ст. Гриса [Bukia и др. 2015].

Итак, мы будем рассматривать текст как марковскую цепь нулевого порядка, считая, что каждое следующее слово зависит лишь от соседнего, а зависимостью от всего предшествующего текста мы пренебрегаем. Данное предположение можно обосновать тем, что корреляционная связь элементов внутри биграммной конструкции значительно сильнее, чем каждого элемента в отдельности со всем остальным текстом. Рассмотрим следующий пример:

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

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

Таблица сопряжённости

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

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

Из корпуса мы можем извлечь следующие статистические данные:

· Частота встречаемости первого слова ,

· Частота встречаемости второго слова ,

· Совместная частота встречаемости

· Общее количество слов в корпусе .

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

Здесь:

- частота события ,

- частота события «встретилось слово , а слово не встретилось,

- частота события «встретилось слово , а слово не встретилось,

- частота события «не встретилось ни , ни ».

Тогда для оценки корреляции можно воспользоваться следующими критериями.

Оценка корреляции в таблицах сопряжённости

Мы оставим за скобками теоретическое описание данных критериев, сославшись лишь на монографию, посвященную статистическим критериям корреляции [Кендалл и др., 1973].

Коэффициент ассоциации. Статистика критерия:

Принимает значения от 0, если слова не связаны, до 1 в случае полной тождественности. Эта оценка слишком приближенная, зато легко поддается вычислению.

Коэффициент коллигации Юла. Статистика критерия:

Между и существует связь:

Коэффициент контингенции . Статистика критерия:

Значения статистики от 0, если слова не связаны, и возрастает при наличии связности. Применим при больших значениях параметров, что, в случае с частотами, бывает далеко не всегда, особенно в корпусах небольшого размера.

Точный критерий Фишера. Статистика критерия:

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

Быстрый критерий z. Статистика критерия:

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

-критерий Вулфа [Woolf, 1957]. Для четырехклеточных таблиц критерий Вулва наиболее теоретически обоснован.

Каждый критерий имеет свои внутренние особенности, поэтому окончательный выбор можно осуществить только при непосредственной проверке.

3.2 Автоматическое выделение ключевых слов в документах

Существует немало методов автоматического извлечения ключевых слов как общего профиля, так и терминов, относящихся к определенной предметной области. Сравнение общих подходов можно найти в работе [Мирзагитова, 2014]. Вслед за большинством исследователей, под ключевыми словами мы будем понимать минимальный набор слов, наилучшим образом представляющий документ или коллекцию документов.

Спектр использования данной задачи в лингвистике чрезвычайно широк. Ключевые слова могут представлять документ для обеспечения быстрого поиска, для сортировки или группировки документов по смыслу или для установления тематической направленности. В узком смысле ключевые слова могут пониматься как термины, например, при автоматическом анализе научных работ. Подобным образом ключевые слова могут использоваться в новостных статьях для нахождения новостей близкой тематики.

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

Понятие ключевого слова

Ещё в 40-е годы прошлого века были первые попытки описать ключевые слова с точки зрения психолингвистики [Соколов 1941]. В современной науке есть несколько вариантов трактовки этого понятия.

В статьях [Камшилова 2013] и [Сахарный 1988] ключевые слова рассматриваются как разновидность «текста-примитива». С этой точки зрения набор ключевых слов:

· достаточны для восстановления исходного текста,

· используют наименьший возможный набор слов.

Для таких списков основополагающими являются не формальные (грамматические), а функциональные признаки (восприятие человеком).

Другая точка зрения постулирует, что максимизацию тематической составляющей и минимизацию связности между элементами.

В статье [Виноградова, Иванов 2015] отражены следующие представления о ключевых словах:

· совокупность ключевых слов должна представлять текст [Камшилова 2013];

· слова и конструкции, отражающие содержание документа [Шереметьева 2015];

· индексируемые слова, по которым может вестись поиск документа [Абрамов 2011];

· важные термины в документе, которые могут дать высокоуровневое описание содержания документа для читателя [Гринева 2009];

· неслучайно встречающиеся в документах слова и словосочетания, важные для рассматриваемой выборки (выдачи) в рамках общего массива документов [Большакова и др. 2011];

· слова, наиболее важные для решения поставленных в инструкции задач [Большакова и др. 2011].

Первые подходы, основанные на частотности слов, были предложены еще в середине прошлого столетия [Luhn 1957], с тех пор появилось немало новых алгоритмов, которые можно разделить на три категории: статистические, лингвистические и гибридные. Общий принцип всех этих методов можно сформулировать так:

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

2. Отбор кандидатов в ключевые слова.

3. Фильтрация кандидатов в ключевые слова (анализ значимых признаков для каждого кандидата).

4. Отбор ключевых слов из числа кандидатов.

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

Лингвистический подход

В прошлом столетии лингвистические методы были широко распространены [Солтон, 1979]. Как правило, они используют методы синтаксического и семантического анализа.

Это может быть описание правил построения текстов, разметка, словари терминов, антологии и прочее. Чаще всего такие методы недоступны для быстрой реализации, потому что требуют длительной подготовки и большого числа специалистов, ведь создание антологий - очень трудоёмкий процесс. Отдельные проблемы могут возникнуть из-за авторских прав при использовании готовых словарей. Как правило, лингвистические методы не универсальны и разрабатываются под конкретную задачу. Подобная технология использовалась при разработке автоматической информационной системы аудита нормативных документов [Баканова 2014].

Оригинальный способ обойти указанные проблемы был предложен в статье [Гринева 2009], в которой антология автоматически строится на основе корпуса статей Википедии. Тематический охват такой антологии был достаточно широк для охвата существенной части корпуса, при этом для работы системы не требовалось дополнительного обучения - термины выделяются на любом, сколь угодно маленьком корпусе, а внушительная система перекрёстных ссылок позволила достаточно неплохо оценить семантическую близость потенциальных ключевых слов.

В [Ефремова 2010] описывается способ извлечения с помощью лексико-синтаксических шаблонов, описывающих типичные терминологические конструкции. Такие системы особенно хорошо работают в текстах, имеющих жёсткую синтаксическую структуру, например, в научных статьях.

Статистические методы

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

Как правило, в статистических методах учитывается относительная частота встречаемости слов в документе. Слово, с одной стороны характерное для данной группы документов, с другой не характерное для всего корпуса, с большой вероятностью является тематическим. Традиционная статистика, оценивающая эту величину TF-IDF. TF (term frequency - частота слова) - отношение числа вхождения слова к общему количеству слов в документе:

Она характеризует, насколько данное слово является значимым для документа.

IDF (inverse document frequency - обратная частота документов) - инверсия частоты документов, содержащих данное слово:

Эта метрика уменьшает вес частотных слов языка, которые характерны для любых текстов коллекции.

Результирующая статистика является произведением TF и IDF, тем самым учитывает оба фактора [Маннинг 2011].

Сейчас появилось немало модификаций данного метода [Рубцова 2014].

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

Гибридные методы

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

В первом случае в качестве постобработки ключевых слов используют статистическую информацию об их встречаемости в корпусе, например, для сокращения перечня ключевых слов или для сортировки списка. Во втором случае используется лингвистическая обработка - морфо-синтаксические шаблоны, приведение к нормальному виду и прочее. В строгом смысле гибридных методов, в которых на равных участвует оба подхода, почти нет. Это обусловлено тем, что серьёзный лингвистический аппарат, как правило, сопряжён с высокими затратами на его создание, при этом существенно эффективность может и не повыситься. Поэтому, как правило, используются стандартные парсеры на этапе пред- и постобработки текста. Примеры таких подходов - алгоритмы C-Value, KEA, RAKE и др.

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

Известны и другие подходы к выделению ключевых слов, например, интересные идеи предлагаются в работе [Лукашевич 2011], в которой используется спектральный анализ и всё более популярное вейвлет-преобразование для представления текстов. Множество идей основано не только на статистических, но и на алгебраических и графовых представлениях, среди которых заметен алгоритм TextRank, ранжирующий слова методом, аналогичным ранжированию web-страниц - путем запуска случайного блуждания и пересчета весов.

4. Автоматическая кластеризация текстов в новостном корпусе с назначением ключевых слов - меток кластеров

4.1 Общие положения

Приступая к третьей главе нашей работы, скажем несколько слов о самом эксперименте.

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

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

Чтобы отделить зерна от плевел, мы разработали специальный двухступенчатый алгоритм, применимый в той или иной мере именно к новостным информационным сайтам.

Основное предположение

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

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

Применение

Может быть несколько вариантов применения данного метода. Прямое применение - организовать серию перекрестных ссылок, проставив метки каждому документу. Другой способ - составлять новостные карточки, объединяя новости с разных порталов и составлять краткое описание с помощью извлеченных ключевых слов подобно тому, как это делается порталом «Яндекс.Новости». Наконец, третий способ, как нам кажется, наиболее интересный и актуальный, - составление рекомендаций и ранжирование новых документов, исходя из предпочтений пользователя.

Данные

В работе использовался корпус новостей портала Ruposters за май 2016 года, объемом 94 тысячи словоупотреблений и 428 документов. Каждый документ имеет пометку «news» или «life», означающую категорию новости.

Мы нарочно ограничили корпус документов - в задачах машинного обучения без учителя увеличение корпуса приводит лишь к улучшению работы алгоритма - это было проверено на корпусе новостей за 2015 год. Далеко не всегда имеется в распоряжении такой большой корпус. Поэтому мы рассмотрели пограничный случай: когда корпус мал, чтобы алгоритму было «слишком легко», но достаточно велик, чтобы оценка была статистически значимой.

Тексты были предобработаны с помощью модуля Pymorphy2, каждое слово было переведено в нормальную форму и получило метку части речи.

Моделирование произведено на языке Python с использованием дополнительных математических библиотек numpy, scipy, scikit-learn и некоторых технических модулей.

План эксперимента

Таким образом, наш эксперимент состоит из четырех шагов:

1. Кластеризация новостного корпуса на два кластера, анализ кластеризации, подбор оптимальных параметров. Сравнение с эталонной классификацией.

2. Выделение ключевых слов, характерных для серьезного и несерьезного кластеров. Сравнение метрик, оптимизация алгоритма. Анализ списков.

3. Выделение конструкций, дополняющих список ключевых слов. Сравнение и анализ коллокационных метрик.

4. Кластеризация корпуса текстов на множество близких небольших групп. Анализ проставления меток кластеру.

4.2 Кластеризация

Основная цель данного эксперимента

Мы воспользовались порталом Ruposters, на котором разработчиками сайта уже произведена разметка: каждый документ, относящийся к серьезным и несерьезным новостям, размечен соответственно либо как news, либо как life. Эту классификацию будем считать эталонной и проверим, какие методы кластеризации при каких параметрах показывают лучшие результаты. Тем самым, при работе с другими порталами можно использовать оптимизированный алгоритм.

Итак, задача этого раздела отделить серьезные новости от несерьезных, приблизив параметры алгоритма к эталонным.

Корпус

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

Раздел life

· Пользователи Сети нашли серьезное нарушение Джамалой правил "Евровидения";

· Звезда реалити-шоу "Дом-2" попала в психиатрическую больницу;

· Звезда "Дома-2" Ольга Бузова полностью обнажилась, шокировав своих поклонников;

· В Москве установят павильоны "Куку-вата";

· 10 самых откровенных нарядов Каннского кинофестиваля.

Раздел news

· Красноярские чиновники "погуляли" в командировках почти на 6 млн бюджетных рублей;

· Кудрин заявил о "последнем рубеже", которого достигла российская экономика;

· Глава Азербайджана объявил о ядерной угрозе со стороны Армении;

· Эрдоган захотел реформировать Совбез ООН;

· "Газпром" продал свои 37% в эстонской AS Eesti Gaas.

Входные данные

В первую очередь, с помощью модуля Pymorphy2 производится предобработка корпуса, которая заключается в следующем:

1) Графематическая обработка, разделение слов и знаков препинания;

2) Приведение каждого слова к нормальному виду;

3) Выставление частеречных меток, отделенных от слова знаком `_';

Тем самым, каждый документ представлен в следующем виде:

речь_NOUN идти_INFN о_PREP хмель_NOUN ,_PNCT который_ADJF придавать_INFN алкогольный_ADJF напиток_NOUN характерный_ADJF горьковатый_ADJF вкус_NOUN._PNCT он_NPRO оказывать_INFN благотворный_ADJF воздействие_NOUN на_PREP организм_NOUN ,_PNCT благодаря_PREP свой_ADJF способность_NOUN останавливать_INFN рост_NOUN бактерия_NOUN и_CONJ развитие_NOUN болезнь_NOUN ._PNCT

Векторизация документов

Для кластеризации каждый документ представляется в векторном виде. При этом используется модель «мешка слов», то есть не учитывается порядок появления слов в документе. На данном этапе такое допущение вполне корректно - порядок слов будет учитываться при выделении конструкций.

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

Функцию определим двумя способами:

1) - частота слова в документе ;

2) - метрика TF-IDF.

Метод кластеризации

Мы выбрали наиболее эффективные методы кластеризации, позволяющие задать фиксированное число кластеров.

· Метод k средних;

· Спектральный метод

· Иерархические методы

Метрики оценки качества

Качество кластеризации оценивается стандартными критериями, описанными в первой главе:

· Несмещенный индекс Ранда

· Несмещенная взаимная информация

· Точность

· Полнота

· V-мера

· Коэффициент силуэта

Выходные данные

Модуль строит 4 текстовых документа:

· Объединенные в один файл документы, попавшие в первый кластер;

· Объединенные в один файл документы, попавшие во второй кластер;

· Файл с ошибочными документами первого класса, попавшие во второй кластер;

· Файл с ошибочными документами второго класса, попавшие в первый кластер.

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

Результат кластеризации

Результат помещен в двух таблицах - в первой даны значения метрик для частотной матрицы «слова на документы», а во второй - TF-IDF матрицы.

Рисунок 1. Меню первого файла программы: опции позволяют настроить кластеризацию

Таблица 1. Результаты кластеризации с использованием частотной матрицы «слова на документы»

Rand

MI

h

c

v

s

k-mean

0.838

0.757

0.757

0.779

0.768

0.013

Spectral

0.787

0.69

0.69

0.713

0.702

0.013

Agglomerative

0.698

0.58

0.58

0.596

0.588

0.01

Таблица 2. Результаты кластеризации с использованием метрики TF-IDF в матрице «слова на документы»

Rand

MI

h

c

v

S

k-mean

0.972

0.938

0.938

0.939

0.939

0.009

Spectral

0.754

0.681

0.681

0.72

0.7

0.008

Agglomerative

0.746

0.643

0.635

0.651

0.643

0.008

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

Высокий результат метода k средних косвенно подтверждает главный тезис: лексика серьезного и несерьезного классов существенно отличается.

Рисунок 2. Распределение документов при частотной векторизации. Вверху кластеризация, внизу эталонная классификация. Черным цветом обозначены документы, помеченные как серьезные, серым цветом - как несерьезные.

Рисунок 3. Распределение документов при TF-IDF векторизации. Вверху кластеризация, внизу эталонная классификация. Черным цветом обозначены документы, помеченные как серьезные, серым цветом - как несерьезные.

Заметно, что кластеры выпуклые и, при использовании TF-IDF, хорошо разделены. Это и объясняет полученный результат.

Анализ ошибок

Ряд документов из пограничной области был неверно размечен методом k средних. Анализ их лексики показал, что в действительности эти документы можно отнести как к первой, так и ко второй группе. Продемонстрируем один из таких документов:

Иракские ополченцы, сражающиеся против террористов "Исламского государства", предложили своим подписчикам в Instagram самим решить судьбу пойманного ими боевика при помощи онлайн-голосования.

"Юг Мосула. Вы можете проголосовать: убить его или отпустить. На голосование отводится один час. Мы сообщим о его судьбе через час", -- написали авторы аккаунта @iraqiswat в Instagram, опубликовав фотографию пленного террориста.

4.3 Выделение ключевых слов

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

Метод выделения ключевых слов

Здесь мы снова возвращаемся к модели таблицы сопряженности. Нам нужно оценить, в какой степени данное слово тяготеет к одному или другому документу. Обозначим:

- частота встречаемости слова в первом документе;

- частота встречаемости слова во втором документе;

- общая частота остальных слов в первом документе;

- общая частота остальных слов во втором документе;

и воспользуемся одним из критериев корреляции в таблице сопряженности, которые мы описали выше.

Сортируя слова, получим два списка ключевых слов, отвечающих каждой группе.

Статистики корреляции

Мы будем использовать следующие статистики:

· Быстрый критерий z;

· Коллигация Юла

· G-критерий Вулфа

· Взаимная информация

· Ассоциация

· Точный критерий Фишера

· Хи-квадрат

Статистики, принимающие неограниченные значения нормируются стандартным преобразованием .

Выходные данные

На выходе строятся два файла, отвечающие каждому кластеру. В каждом файле ранжированный по данной метрике список ключевых слов. Через табуляцию для каждого слова выводится его частота в первом кластере, во втором кластере и значение метрики.

Рисунок 4. Меню второго модуля программы. Опции позволяют регулировать длину списка.

Результаты

Быстрый критерий Z

Одна из простейших метрик показала достаточно неплохие результаты. Она не очень чувствительна к общим словам (в топ-10 попало слово как), но в целом ранжирование можно назвать удовлетворительным.

Таблица 3. Топ-10 ключевых слов для быстрого критерия Z

Life words

L

N

Вес

News words

L

N

Вес

мужчина_NOUN

73

3

0.889

россия_NOUN

27

233

0.927

life_LATN

55

0

0.881

украина_NOUN

3

166

0.926

женщина_NOUN

72

7

0.879

президент_NOUN

1

124

0.916

фильм_NOUN

53

3

0.869

российский_ADJF

17

158

0.914

девушка_NOUN

53

7

0.855

сирия_NOUN

0

106

0.911

учёный_NOUN

45

5

0.849

сша_NOUN

15

132

0.906

ранее_ADVB

78

22

0.848

страна_NOUN

31

161

0.903

как_CONJ

241

133

0.848

крым_NOUN

2

86

0.899

ruposters_LATN

57

11

0.847

глава_NOUN

4

86

0.896

картина_NOUN

30

0

0.845

савченко_Surn

0

70

0.893

Коллигация Юла, взаимная информация, ассоциация

Эти три метрики словам, встретившимся лишь в одном классе, дают максимальный вес, поэтому слово ячменный будет всегда выше слова Россия.

Таблица 4. Топ-10 ключевых слов для неудачных критериев

Life words

L

N

Вес

News words

L

N

Вес

a_LATN

3

0

1.0

ячменный_ADJF

0

2

1.0

персональный_ADJF

2

0

1.0

вооружение_NOUN

0

10

1.0

петербургский_ADJF

2

0

1.0

катастрофа_NOUN

0

3

1.0

печень_NOUN

2

0

1.0

понижать_INFN

0

2

1.0

жаркое_NOUN

2

0

1.0

касьянов_Surn

0

3

1.0

жанр_NOUN

2

0

1.0

кастро_Surn

0

4

1.0

пик_NOUN

2

0

1.0

пономарев_Surn

0

10

1.0

пикантный_ADJF

3

0

1.0

понятный_ADJF

0

5

1.0

пиксель_NOUN

2

0

1.0

вооружённый_ADJF

0

15

1.0

пингвин_NOUN

5

0

1.0

пообещать_INFN

0

21

1.0

G-критерий Вулфа

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

Таблица 5. Топ-10 ключевых слов для G-критерия Вулва

Life words

L

N

Вес

News words

L

N

Вес

мужчина_NOUN

73

3

0.988

украина_NOUN

3

166

0.995

life_LATN

55

0

0.986

россия_NOUN

27

233

0.994

женщина_NOUN

72

7

0.984

президент_NOUN

1

124

0.993

фильм_NOUN

53

3

0.982

сирия_NOUN

0

106

0.992

девушка_NOUN

53

7

0.976

российский_ADJF

17

158

0.992

учёный_NOUN

45

5

0.975

сша_NOUN

15

132

0.990

картина_NOUN

30

0

0.974

крым_NOUN

2

86

0.990

специалист_NOUN

33

2

0.973

страна_NOUN

31

161

0.989

ruposters_LATN

57

11

0.972

савченко_Surn

0

70

0.989

животный_ADJF

28

1

0.972

глава_NOUN

4

86

0.988

Точный критерий Фишера

Точный критерий Фишера в данной задаче показывает вполне удовлетворительный результат, однако его ранжирование отличается от g-критерия. Он так же чувствителен к перекосам.

Таблица 6. Топ-10 ключевых слов для точного критерия Фишера

Life words

L

N

Вес

News words

L

N

Вес

life_LATN

55

0

1.0

украинский_ADJF

1

72

1.0

мужчина_NOUN

73

3

1.0

крым_NOUN

2

86

1.0

женщина_NOUN

72

7

1.0

ес_NOUN

0

57

1.0

фильм_NOUN

53

3

0.999

президент_NOUN

1

124

1.0

девушка_NOUN

53

7

0.999

трамп_NOUN

1

65

1.0

картина_NOUN

30

0

0.999

военный_NOUN

4

77

1.0

учёный_NOUN

45

5

0.999

украина_NOUN

3

166

1.0

ruposters_LATN

57

11

0.999

сирия_NOUN

0

106

1.0

ранее_ADVB

78

22

0.999

страна_NOUN

31

161

1.0

как_CONJ

241

133

0.999

российский_ADJF

17

158

1.0

Хи-квадрат

Стандартный критерий Хи-квадрат показал результат, близкий к тривиальной метрике z.

Таблица 7. Топ-10 ключевых слов для критерия хи-квадрат

Life words

L

N

Вес

News words

L

N

Вес

мужчина_NOUN

73

3

0.984

россия_NOUN

27

233

0.993

life_LATN

55

0

0.981

украина_NOUN

3

166

0.993

женщина_NOUN

72

7

0.981

президент_NOUN

1

124

0.991

фильм_NOUN

53

3

0.977

российский_ADJF

17

158

0.991

девушка_NOUN

53

7

0.971

сирия_NOUN

0

106

0.990

как_CONJ

241

133

0.968

сша_NOUN

15

132

0.989

учёный_NOUN

45

5

0.968

страна_NOUN

31

161

0.988

ранее_ADVB

78

22

0.968

крым_NOUN

2

86

0.987

ruposters_LATN

57

11

0.967

глава_NOUN

4

86

0.986

картина_NOUN

30

0

0.965

савченко_Surn

0

70

0.985

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

Рисунок 5. Гистограмма распределения весов ключевых слов для критерия Вулва. Вверху несерьезные, внизу серьезные документы. Наиболее удачные слова имеют вес, больший 0.7.

4.4 Выделение конструкций

Задача

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

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

В качестве входных данных используются файлы, полученные на предыдущих этапах.

Выделение тематических конструкций

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

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

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

Как и в предыдущем разделе, мы рассмотрим те же метрики для таблиц сопряженности, однако теперь победители будут совсем другие. Попрежнему метрики, принимающие неограниченные значения нормируются стандартным преобразованием .

Шаблоны

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

· Прил. + сущ.

· Сущ. + гл.

· Гл. + сущ.

· Имя + фам.

· * + латиница

и т.п. комбинации.

Рисунок 6. Меню модуля выделения конструкций

Выходные данные

На выходе получается список биграмм, который отдельной процедурой объединяется с униграммами и упорядочивается.

Результаты

Итак, теперь поочередно применим различные варианты меры связи и сравним списки. Как и в случае с ключевыми словами, ниже будут представлены десять биграмм из каждого кластера.

Быстрый критерий Z

Данный метод показал себя не лучшим образом - его достоинство в этой задаче обратилось в недостаток. Он слишком чувствителен к частотным словам, в результате чего наибольший вес получили биграммы, состоящие из самых частотных слов.

Таблица 8. Конструкции, полученные методом z

Life

Вес

News

Вес

свой мужчина

1.885

российский украина

1.910

свой женщина

1.882

российский сирия

1.908

свой фильм

1.880

российский президент

1.906

свой снимка

1.857

российский глава

1.903

свой тело

1.849

российский военный

1.897

свой лента

1.847

российский политика

1.894

свой собака

1.845

российский мид

1.894

свой поклонник

1.843

российский власть

1.892

свой песня

1.841

российский правительство

1.891

свой композиция

1.841

российский лидер

1.891

Коллигация Юла

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

Таблица 9. Конструкции, полученные методом коллигации Юла

Life

Вес

News

Вес

ruposters life

1.953

исламский государство

1.896

rolling stones

1.791

минский соглашение

1.858

нижний бельё

1.790

барак обама

1.839

домашний питомец

1.782

петр порошенко

1.831

семейный пара

1.775

владимир путин

1.828

откровенный фотосессия

1.774

олег пешков

1.797

разбитый сердце

1.772

иностранный министр

1.792

метаболический синдром

1.755

дипломатический представительство

1.784

сексуальный фантазия

1.744

иностранный дело

1.782

психотропный вещество

1.736

вооружённый сила

1.781

G-критерий Вулва

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

Таблица 10. Конструкции, полученные критерием Вулва

Life

Вес

News

Вес

ruposters life

1.956

российский военный

1.950

хороший возраст

1.874

украинский власть

1.938

данный момент

1.867

владимир путин

1.932

откровенный фотосессия

1.852

исламский государство

1.929

знаменитый актёр

1.835

российский мид

1.917

пользователь youtube

1.832

американский президент

1.913

хороший фильм

1.823

европейский страна

1.912

данный заболевание

1.814

сирийский оппозиция

1.912

оригинальный фильм

1.811

иностранный министр

1.911

обычный мужчина

1.808

российский авиация

1.903

Взаимная информация

Взаимная информация страдает тем же недугом, однако сортирует слова иначе.

Таблица 11. Конструкции, полученные с помощью взаимной информации

Life

Вес

News

Вес

ruposters life

1.955

украинский власть

1.938

хороший возраст

1.888

владимир путин

1.937

сексуальный певица

1.887

сирийский оппозиция

1.934

данный заболевание

1.887

исламский государство

1.933

откровенный фотосессия

1.884

иностранный министр

1.930

оригинальный фильм

1.882

турецкий власть

1.921

обычный мужчина

1.881

российский военный

1.920

сексуальный тело

1.880

сирийский войско

1.916

женский тело

1.880

сирийский народ

1.916

пользователь youtube

1.877

российский авиация

1.914

Ассоциация

Распределение коэффициента ассоциации оказалось очень близко к сортировке методом взаимной информации.

Таблица 12. Конструкции, полученные методом ассоциации

Life

Вес

News

Вес

ruposters life

1.959

владимир путин

1.939

хороший возраст

1.888

исламский государство

1.936

откровенный фотосессия

1.884

сирийский оппозиция

1.931

данный заболевание

1.876

иностранный министр

1.930

пользователь youtube

1.876

украинский власть

1.925

данный момент

1.874

российский авиация

1.916

оригинальный фильм

1.873

мирный гражданин

1.909

обычный мужчина

1.867

сирийский народ

1.908

знаменитый актёр

1.867

турецкий власть

1.905

начать эксперимент

1.8656

верховный депутат

1.902

Точный критерий Фишера

Метод, предложенный Стефановичем и Гриссом показал неудовлетворительный результат. Частотные слова слишком сильно увеличивают вес конструкции.

Таблица 13. Конструкции, полученные точным критерием Фишера

Life

Вес

News

Вес

ruposters life

1.959

российский президент

1.983

хороший фильм

1.918

российский военный

1.979

свой тело

1.912

украинский президент

1.976

свой поклонник

1.905

сирийский президент

1.975

обычный мужчина

1.905

российский мид

1.972

свой композиция

1.903

российский лидер

1.968

данный заболевание

1.903

украинский политика

1.967

оригинальный фильм

1.900

украинский власть

1.965

хороший возраст

1.896

российский глава

1.964

...


Подобные документы

  • Основы для проведения кластеризации. Использование Data Mining как способа "обнаружения знаний в базах данных". Выбор алгоритмов кластеризации. Получение данных из хранилища базы данных дистанционного практикума. Кластеризация студентов и задач.

    курсовая работа [728,4 K], добавлен 10.07.2017

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

    курсовая работа [1,8 M], добавлен 30.06.2017

  • Сущность, структура, алгоритм функционирования самообучающихся карт. Начальная инициализация и обучение карты. Сущность и задачи кластеризации. Создание нейронной сети со слоем Кохонена при помощи встроенной в среды Matlab. Отличия сети Кохонена от SOM.

    лабораторная работа [36,1 K], добавлен 05.10.2010

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

    контрольная работа [1,5 M], добавлен 11.01.2016

  • Сущность и понятие кластеризации, ее цель, задачи, алгоритмы; использование искусственных нейронных сетей для кластеризации данных. Сеть Кохонена, самоорганизующиеся нейронные сети: структура, архитектура; моделирование кластеризации данных в MATLAB NNT.

    дипломная работа [3,1 M], добавлен 21.03.2011

  • "Наивная" модель прогнозирования. Прогнозирование методом среднего и скользящего среднего. Метод опорных векторов, деревьев решений, ассоциативных правил, системы рассуждений на основе аналогичных случаев, декомпозиции временного ряда и кластеризации.

    курсовая работа [2,6 M], добавлен 02.12.2014

  • Классификация задач Data Mining. Задача кластеризации и поиска ассоциативных правил. Определению класса объекта по его свойствам и характеристикам. Нахождение частых зависимостей между объектами или событиями. Оперативно-аналитическая обработка данных.

    контрольная работа [26,1 K], добавлен 13.01.2013

  • Роль информации в мире. Теоретические основы анализа Big Data. Задачи, решаемые методами Data Mining. Выбор способа кластеризации и деления объектов на группы. Выявление однородных по местоположению точек. Построение магического квадранта провайдеров.

    дипломная работа [2,5 M], добавлен 01.07.2017

  • Морфологические анализаторы (морфологизаторы) на различных языках программирования. Анализ методов и технологий автоматической обработки ЕЯ-текстов. Разработка модуля графематического анализа и создания таблицы лексем. Программная реализация классов.

    дипломная работа [3,0 M], добавлен 06.03.2012

  • Классификация задач DataMining. Создание отчетов и итогов. Возможности Data Miner в Statistica. Задача классификации, кластеризации и регрессии. Средства анализа Statistica Data Miner. Суть задачи поиск ассоциативных правил. Анализ предикторов выживания.

    курсовая работа [3,2 M], добавлен 19.05.2011

  • Анализ проблем, возникающих при применении методов и алгоритмов кластеризации. Основные алгоритмы разбиения на кластеры. Программа RapidMiner как среда для машинного обучения и анализа данных. Оценка качества кластеризации с помощью методов Data Mining.

    курсовая работа [3,9 M], добавлен 22.10.2012

  • Ознакомление с элементами топологии базы геоданных. Исследование и характеристика особенностей кластерной обработки. Изучение алгоритмов, использующихся при проверке и кластеризации. Анализ процесса использования пространственных отношений объектов.

    презентация [749,3 K], добавлен 18.10.2017

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

    курсовая работа [401,9 K], добавлен 18.06.2015

  • Методы обработки растровых изображений (кластеризация, пороговая и интерактивная сегментация). Разработка программного модуля для системы мониторинга биосферы и дистанционного зондирования. Создание пользовательского интерфейса программного модуля.

    курсовая работа [2,2 M], добавлен 29.04.2015

  • Принципы организации и функционирования биологических нейронных сетей. Система соединенных и взаимодействующих между собой простых процессоров. Нейронные сети Маккалока и Питтса. Оценка качества кластеризации. Обучение многослойного персептрона.

    курсовая работа [1,1 M], добавлен 06.12.2010

  • Определение архитектуры реляционных СУБД. Рассмотрение кластеризации как основного способа минимизации числа дисковых операций ввода-вывода данных. Применение индексов для повышения производительности SQL-запросов. Процесс кэширования в базах данных.

    курсовая работа [61,1 K], добавлен 15.07.2012

  • Разработка приложения, целью которого ставится преобразование черно-белых полутоновых изображений в цветные. Обзор методики обработки изображения, способов преобразования изображения с помощью нейронной сети. Описания кластеризации цветового пространства.

    дипломная работа [6,3 M], добавлен 17.06.2012

  • Понятие, виды и структура интеллектуальных поисковых систем. Российская интеллектуальная поисковая система Нигма: интерфейс и главные особенности. Математическая и химическая система Нигма. Понятие кластеризации как интеллектуального анализа данных.

    презентация [291,0 K], добавлен 21.08.2011

  • Исследование производительности труда методом компонентного и кластерного анализов. Выбор значащих главных компонент. Формирование кластеров. Построение дендрограммы и диаграммы рассеивания. Правила кластеризации в пространстве исходных признаков.

    лабораторная работа [998,9 K], добавлен 25.11.2014

  • Описание предметной области автоматизации. Программа обследования и план-график выполнения работ на предпроектной стадии. Метод группового принятия решения с помощью кластеризации экспертных оценок альтернатив. Построение диаграммы потоков данных DFD.

    дипломная работа [375,8 K], добавлен 07.12.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.