УДК 519.237.8 DOI 10.25559/SITITO.2017.3.439
Отраднов К.К., Жуков Д.О., Новикова О.А.
Московский технологический университет (МИРЭА), г. Москва, Россия
МОДЕЛЬ КЛАСТЕРИЗАЦИИ СЛАБОСТРУКТУРИРОВАННЫХ ТЕКСТОВЫХ ДАННЫХ
Аннотация
В статье предложена модель кластеризации коллекций новостных текстовых сообщений, а также соответствующий алгоритм кластеризации «bubble trap». Суть предлагаемого подхода заключается в разделения всего векторного пространства текстовых документов на оболочки смысловых кластеров с минимальными ограничениями на признаки отбора таким образом, что объем смыслового кластера и положение его центра остаются неизменными в процессе добавления в него новых векторов, а критерием соотнесения является заданная постоянная метрика точности.
Ключевые слова
Модель кластеризации; алгоритм кластеризации; алгоритм bubble trap; обработка текстовых данных; интеллектуальный анализ текстов.
Otradnov K.K., Zhukov D.O., Novikova O.A.
Moscow Technological University (MIREA), Moscow, Russia
CLUSTERING MODEL OF LOW-STRUCTURED TEXT DATA
Abstract
The article proposes a clustering model for collections of news text messages, as well as the corresponding bubble trap clustering algorithm. The essence of the proposed approach is to divide the entire vector space of text documents into shells of semantic clusters with minimal restrictions on the selection criteria in such a way that the volume of the semantic cluster and the position of its center remain unchanged in the process of adding new vectors to it, and the criterion of affiliation is a given constant accuracy metric.
Keywords
Clustering model; clustering algorithm; bubble trap algorithm; processing of text data; text mining.
Введение
Анализ неструктурированных или слабоструктурированных естественно -языковых текстовых данных, является очень важной и актуальной задачей с точки зрения поиска скрытых закономерностей в больших объемах информации, создания
прогностических моделей различных процессов (в том числе социальных и экономических) и извлечения знаний.
При анализе больших объемов неструктурированных или
слабоструктурированных текстовых данных и поиске в них скрытых закономерностей возникает проблема отбора признаков существенной для анализа информации. С одной стороны, необходимо, чтобы выполнение поиска
происходило за приемлемое время, а с другой стороны необходимо, чтобы существенные данные не были потеряны. Отбор большого количества разнообразных признаков приводит к увеличению вычислительной сложности модели, и как следствие к необходимости использования значительных вычислительных ресурсов и затрат времени. Однако отбрасывание признаков, кажущихся несущественными, или проявляющимися на уровне шума, может привести к потере информации, значимой для поиска скрытых закономерностей. Таким образом, априори является неизвестным, какая часть имеющихся данных может понадобиться, а какая - нет. Определение связи шумовых признаков с целевой переменной решаемой задаче всегда является проблемой.
Следует отметить, что достаточно часто используемый для ускорения вычислений на практике метод, когда новые признаки формируются на основе старых, в данном случае является ненадежным, поскольку скрытые закономерности могут быть не линейным образом связаны с имеющимися данными и не являться их простой суперпозицией. Вместе с тем можно отметить, что формирование новых признаков на основе старых позволяет уменьшить их число для использования в моделях информационного поиска и приводит к ускорению выполнения модели.
При работе с большими объемами неструктурированных или
слабоструктурированных естественно-
языковых текстовых данных возникает необходимость осуществлять операции информационного поиска (в том числе поиска скрытых закономерностей), извлечения знаний и классификации, что требует создания соответствующих моделей для автоматизации этих процессов. Следует отметить, что в данном случае нет физически измеряемых величин, с которыми можно проводить математические операции и строить формальные модели.
Тексты состоят из универсальных лингвистических единиц (переменных), которыми являются слова и словосочетания. Лингвистические переменные сами по себе не имеют числовых или логических значений, поэтому построение математических моделей без предварительной формализации текстов не представляется возможным.
Основой формализации анализа естественноязыковых текстовых данных на основе лексического подхода с целью информационного поиска и классификации является статистическая семантическая гипотеза (statistical semantics hypothesis), согласно которой статистические зависимости употребления слов и терминов могут быть использованы для поиска заложенного в текст смысла [1]. В соответствии с гипотезой о скрытых связях, слова, термины и словосочетания, которые встречаются в похожих документах, стремятся иметь близкую семантическую зависимость [2].
Статистическая семантическая гипотеза позволяет формализовывать представление текстовые документы в виде векторной модели. Главная идея векторной модели семантики (vector space model, VSM) заключается в возможности представления каждого текстового документа в качестве точки в многомерном пространстве (вектора в векторном пространстве, размерности RM ). Близко лежащие друг к другу точки соответствуют семантически схожим документам.
Для векторного представления текстов необходим словарь терминов (модель «bag of
terms»), который может создаваться, как в процессе обработки документов, так, и взят готовый. Следует отметить, что использование для анализа заложенного в текст смысла, словаря, состоящего только из единичных слов, является недостаточным. Для повышения точности анализа текстов (более глубокого сохранения смысла) необходимо добавлять в словарь словосочетания (би-, три -, три-, тетра и т.д. граммы), более точно отображающие смысл описываемого объекта. Однако увеличение размера словаря приводит к увеличению времени обработки текстов, информационного анализа и поиска.
Суть модели векторизации текстов заключается в том, что если общее количество имеющихся различных уникальных терминов равно М (термы могут быть пронумерованы от 1 до М), а число текстовых документов равно N (документы могут быть пронумерованы от 1 до N), то данному документу (обозначим его Х0 i -принимает значения от 1 до N) можно поставить в соответствие вектор = {xli,x2,i,---xki,----xMi], где первый элемент характеризует частоту вхождений в документ первого термина, второй - второго, третий - третьего и т.д. Каждый элемент вектора xki может прининать положительное значение. Все Xt образуют матрицу (размера N на М , где N - число документов, а М - размер словаря терминов): термин - документ (столбцами матрицы являются вектора Xt , а строки определяют частоты вхождения отдельных терминов в документы коллекции):
х1,1 Х1,2 • хи X1,N
Х2,1 Х2,2 • X2,i X2,N
Xj,l Xi,2 xk,i Xi,N
ХМ,1 ХМ,2 XM,i XM,N
Отметим, что данная матрица является сильно разреженной, т.е. содержит большое число нулей. Это связано с тем, что размер текстов по числу слов может быть существенно меньше, чем размер словаря.
Векторная модель документа может быть использована для решения таких задач информационного поиска, как кластеризации документов.
Кластеризацию документов можно определить, как процесс обнаружения в их коллекции групп, имеющих примерно одинаковое смысловое значение (однородных классов в произвольной предметной области). Обратим внимание на две проблемы. Во-первых, заранее неизвестны кластеры, которые можно отнести к истинным. Во- вторых, неизвестно число истинных кластеров, на которые предстоит разделить коллекцию.
При кластеризации документов необходимо, чтобы попадающие в один кластер документы имели смысловую схожесть, которую можно задать численно следующими способами:
• значение близости между любыми двумя элементами векторов, принадлежащих кластеру, должно быть не меньше определённого порога;
• значение близости между любым документом множества и центроидом кластера должно быть не меньше определённого порога, а центроид кластера рассчитывается как среднее арифметическое между всеми документами кластера.
В отличие от классификации, при кластеризации кластеры формируются на основе схожести описаний документов, и никакие характеристики этих групп не задаются заранее.
Следует отметить, что задача смысловой кластеризации документов является одной из ключевых в анализе больших объемов неструктурированных или
слабоструктурированных естественно -языковых текстовых данных, и информационном поиске. В частности, кластеризация является единственным решением задачи, если нет точного представления о составе и структуры данных.
При использовании кластеризации на основе лексического подхода возникает ряд проблем, связанных с: выбором первичных кластеров, зависимостью качества кластеризации от длины текста, определением общего количества кластеров, отсутствие связи между близкими по смыслу текстами, в которых используется разная лексика и т.п. Для преодоления проблемы, связанной с различием в лексике необходимо использовать методы, основанные не только на основе лексического сходства, а еще и на основе семантической смежности или ассоциативности.
Современное состояние исследований в области кластеризации
слабоструктурированных текстовых данных
На сегодняшний момент существует множество методов кластеризации документов. Например, Custom Search Folders, Latent Semantic Analysis/Indexing (LSA/LSI); Suffix Tree Clustering (STC); Single Link, Complete Link, Group Average; Scatter/Gather, K-means, Concept Indexing (CI); Self-Organizing Maps (SOM) и пр. Однако, несмотря на достаточно серьёзные успехи в этой области, остаются нерешёнными ряд насущных задач кластеризации, таких как выбор первоначального расположения ядер кластеров, масштабирование и управление размерностью данных; повышение производительности
вычислений и ускорение процессов кластеризации, повышение точности кластеризации и др. Работы целого ряда исследователей посвящены актуальным вопросам кластерного анализа
слабоструктурированных текстов.
Предлагаемые авторами таких работ модели кластеризации весьма разнообразны и зачастую представляют собой гибридное решение на основе существующих алгоритмов.
Так, в работе [3] рассматривается алгоритм «искусственной пчелиной колонии» (ABC), который представляет собой метод стохастической оптимизации. Авторами предлагается гибридный алгоритм (MABCKM), основанный на модифицированных алгоритмах ABC и K-Means. Решения, создаваемые модифицированными ABC, рассматриваются как начальные решения для алгоритма K-Means. Производительность предлагаемого алгоритма оценивается в терминах разных параметров на шести стандартных наборах данных из алгоритма UCI Machine Learning Repository и сравнивается с алгоритмами ABC и K-Means. Экспериментальные результаты подтверждают превосходство алгоритма MABCKM для кластеризации текстовых данных и показывают, что предложенный алгоритм способен избегать локальных оптимумов и находить лучшие значения целевых функций с гораздо более низким стандартным отклонением по сравнению с другими двумя алгоритмами. Предлагаемый алгоритм также превосходит другие методы с точки зрения некоторых показателей (F-меры, ARI, CH и DB) и обеспечивает наилучшее ранжирование среди трех методов. Результаты показывают, что модифицированный алгоритм дает лучшие кластерные разделы и, естественно, приводит к выводу, что MABCKM является жизнеспособным методом кластеризации данных. Но предлагаемый метод нуждается в улучшении для выполнения автоматической кластеризации без какого-либо предварительного знания количества кластеров.
В работе [4] предлагаются три алгоритма кластеризации текстовых документов: с выбором функций, с функцией весовой схемы и динамического уменьшения размеров. В процессе кластеризации текстовые документы разделяются на несколько когерентных кластеров в соответствии с тщательно подобранными информативными
особенностями, используя правильную функцию оценки, которая обычно зависит от временной частоты. Информативные функции в каждом документе выбираются с использованием
методов выбора объектов. Генетический алгоритм (GA), алгоритм гармонического поиска (HS) и алгоритм оптимизации (PSO) являются наиболее успешными методами выбора признаков, установленными с использованием новой схемы взвешивания, а именно: весовой коэффициент длины (LFW), который зависит от частоты и появления признаков в других документах. Также в статье предлагается новый метод уменьшения динамических размеров (DDR) для уменьшения числа функций, используемых в кластеризации, и, таким образом, для повышения эффективности алгоритмов. Алгоритм K-Means используется для кластеризации набора текстовых документов на основе терминов (или признаков), полученных динамическим сокращением. Оцениваются семь тестовых наборов текстовых данных разного размера и сложности. Анализ результатов показывает, что оптимизация с весом длины и динамическим уменьшением дает оптимальные результаты для почти всех тестируемых наборов данных.
В [5] представлен высоко масштабируемый алгоритм расширенной кластеризации, основанный на использовании n-грамм для уменьшения высокой размерности и получения высококачественных кластеров тестовых документов. Также в статье приведён сравнительный анализ, показывающий, что для образцов текстовых наборов данных с удалением стоп-слов, предлагаемый алгоритм работает лучше, чем без удаления стоп-слов.
Авторы статьи [6] изложили методы улучшения работы системы по извлечению событий из социальных данных. В ранних работах, например, в [7], сообщения обрабатывались индивидуально, что генерировало множество бессмысленных событий из-за недостающих деталей, разбросанных в миллионах текстовых сегментов. Кроме того, было проанализировано значительное число ненужных текстов, которые увеличили время обработки и снизили производительность системы. В данной работе была предложена кластеризация для группирования семантически связанных текстовых сегментов, фильтрации шума, уменьшения объема данных для обработки и продвижения только соответствующих текстовых сегментов в конвейер для извлечения информации. Алгоритм кластеризации был перенесён в инфраструктуру обработки потоков, под названием Storm, чтобы создать решение для кластеризации потоков и масштабировать до постоянно растущих объемов данных.
В работе [8] подчёркивается важность
совместной кластеризации, особенно при рассмотрении разреженных высокоразмерных данных. В статье представлена новая генеративная модель Sparse Poisson Latent Block Model (SPLBM), основанная на распределении Пуассона, которое возникает для таблиц, таких как матрица документов-термов. Авторы утверждают, что SPLBM имеет два больших преимущества. Во-первых, это строгая статистическая модель. Во-вторых, алгоритм был разработан с нуля, чтобы справиться с проблемами разреженности данных. Как следствие, помимо поиска однородных блоков, как и других доступных алгоритмов, он также отфильтровывает однородные, но шумные из-за разреженности данные. Эксперименты по различным наборам данных различного размера и структуры показывают, что алгоритм, основанный на SPLBM, явно превосходит современные алгоритмы. В частности, представленный здесь алгоритм на основе SPLBM преуспевает в получении естественной кластерной структуры сложных
несбалансированных наборов данных, которые другие известные алгоритмы не могут эффективно обрабатывать.
В статье [9] представлен новый метод автоматического обнаружения и отслеживания тем новостей из новостного архива мультимодального ТВ. Авторы предлагают тему и график (MT-AOG) для совместного представления текстовых и визуальных элементов новостей и их скрытых тематических структур. MT-AOG использует контекстно-зависимую грамматику, которая может описывать иерархический состав тем новостей по семантическим элементам, касающимся вовлеченных людей, связанных с ними мест и того, что произошло, и моделировать контекстуальные отношения между элементами в иерархии. В статье описано как с помощью процесса кластеризации, который объединяет истории о близких событиях, были выделены новостные темы. Сначала новостные документы кластеризуются, затем обнаруженные темы непрерывно отслеживаются и обновляются входящими потоками новостей. Генерируются траектории темы, чтобы показать, как темы появляются, эволюционируют и исчезают с течением времени.
Авторы [10] рассматривают способы кластеризации документов по темам. Они провели ряд экспериментов на разных реальных и искусственных наборах данных, таких как NEWS 20, Reuters, электронные письма, исследовательские работы по различным темам. Используется алгоритм TFI-DF с Fuzzy K-Means c
иерархическим алгоритмом. Изначально эксперименты были выполнены на небольшом наборе новостных данных. Далее, наилучший алгоритм был применён к расширенному набору данных. Наряду с различными кластерами соответствующих документов представлен приведенный коэффициент, энтропия и тренд F-меры, чтобы показать поведение алгоритма для каждого набора данных.
В статье [11] предлагается новый параллельный дизайн недавно появившейся эвристики для неконтролируемой и жесткой кластеризации. Исходный метод находит кластеры путем разбиения категориальных больших наборов данных в соответствии с линейной математической моделью, известной как реляционный анализ. Авторы улучшили этот метод для обработки кластеризации документов с итеративным использованием модели программирования MapReduce. Эффективность предлагаемого метода оценивается с использованием набора данных BBC, предоставленного сайтом BBC News. И эксперименты показали, что этот метод дает результаты качества с низкой вычислительной стоимостью.
В работе [12] была рассмотрена проблема роста цифровых новостей, хранящихся в базах данных и необходимости их моделирования, для того, чтобы их было легче понять и получить возможность извлечь из них важную информацию. Для упрощения обработки информации в базе данных требуется модель и конкретный метод кластеризации новостей, основанный на близости и характеристиках цифровых новостей. Авторы предлагают использовать модели и методы базы данных графов, алгоритм кластеризации графов MCL (алгоритм кластеризации Маркова), который может упростить обработку информации, идентифицируя характеристики каждой вершины на графике. В процессе идентификации кластеров графика цифровые новостные документы будут храниться в одной вершине, чтобы быть связанными с другой вершиной в общей категории новостей. Процесс расширения и раздувания матрицы является основным процессом кластеризации цифровых новостей, которые были преобразованы в модели базы данных графов. Между тем, процесс раздувания направлен на укрепление сильного края и ослабление слабого края. Так что при кластеризации цифровых новостей процесс раздувания матрицы очень влияет на время выполнения алгоритма MCL, а процесс раздувания матрицы влияет на формирование количества кластеров.
В статье [13] авторы рассматривают технологии качественного поиска документа в качестве ответа на любой поисковый запрос и анализируют, сравнивают различные алгоритмы кластеризации документов, используемых другими исследователями.
В работе [14] решается так называемая «новая проблема пользователя». Она заключается в необходимости получить некоторые данные о новом пользователе, чтобы начать делать персонализированные предложения. Авторы пытаются решить новую проблему пользователей с помощью уникальной персонализированной стратегии и изучают возможное улучшение результатов
кластеризации документов и, в частности, кластеризацию новостных статей из Интернета при использовании текстовых n-грамм во время фазы извлечения ключевых слов. В статье представляется и оценивается
автоматизированный подход, который объединяет кластеризацию новостных статей, полученных из Интернета, используя n-граммы. Затем этот метод сравнивается с методом «мешок слов», которое ранее был использован авторами в качестве алгоритма кластеризации (W-kmeans). Эксперименты показывают, что путем точной настройки весовых параметров между ключевым словом и n-граммами, а также самого значения n можно добиться значительного улучшения в отношении показателей результатов кластеризации.
Авторы работы [15] предлагает идею применения кластеризации документов на основе алгоритма Feature Based Clustering (FBC), т.к. считают, что будет проще использовать огромное количество существующих документов, если они объединены в несколько тем. FBC для кластеризации функций последовательных данных использует алгоритм K-Means. Особенности текстового документа могут быть представлены как
последовательность слов. Для обработки в виде последовательных данных функции должны быть извлечены из коллекции
неструктурированных текстовых документов. Поэтому авторами ставятся задачи предварительной обработки данных, чтобы предоставить для кластеризации
соответствующие формы документов. В статье рассматривается два типа последовательного шаблона с использованием простой формы: частая последовательность слов (FWS) и максимальная частая последовательность (MFS). Оба типа подходят для текстовых данных. Разница заключается в применении принципа максимума в MFS. Следовательно, сумма MFS из
текстового документа будет меньше суммы его FWS. В этом исследовании авторы выбирают максимальные частотные последовательности (MFS) как представление функции и предлагают структуру для проведения FBC с использованием MFS в качестве функций. Структура тестируется на наборе данных кластеров, который является подмножеством текстовых данных группы новостей. Результат показывает, что на точность результата кластеризации влияет значение параметра, набор данных и количество целевого кластера.
В работе [16] иллюстрируется система поиска новостей, базовый алгоритм, ориентированный на нахождение новостных событий. Благодаря этой системе новостные статьи группируются вокруг одного центрального новостного события или события и его вспомогательных событий. Представленный алгоритм может помочь создать новые события и их компактные ярлыки в качестве исходных документов для процесса кластеризации. Система
сконфигурирована для создания кластеров новостных событий верхнего уровня на основе текстовой метки, снабженной редакцией, известной как «линия слизняка», и создания кластеров на основе алгоритма, ориентированных на подтемы. Система использует алгоритм агломерационной кластеризации для сбора и структурирования документов в различные результирующие наборы. Решения о том, следует ли объединять связанные документы или кластеры, производятся в соответствии со сравнением подобия доказательств, полученных из двух разных источников: один - на основе цифровой подписи на основе неструктурированного текста в документе, другой - на основании наличия тегов с именованным объектом, которые были назначены документу с помощью тегатора, в данном случае движком Calais Thomson Reuters.
Авторы статьи [17] рассматривают проблему коротких текстовых сообщений на основе новостных документов, акцентируя внимание на смысле названия новостей. Короткие текстовые сообщения, которые сопровождаются метками времени и обычно краткими событиями, используя только несколько слов, отличаются от других более длинных текстовых документов, таких как веб-страницы, новостные статьи, блоги, технические документы и книги. Например, несколько слов повторяются в тех же заголовках новостей, поэтому частота слова не столь важна в коротком текстовом корпусе, как в более длинном текстовом корпусе. В статье предложен способ поиска кластеров объектов с использованием алгоритма совместного
использования (FTCCT) для автоматического создания тем из короткого текстового корпуса и разработки алгоритма эволюции событий Evolution Mining (EEM) для обнаружения актуальных событий и их эволюций (т. к. степень популярности события со временем меняется). В FTCCT термин (одно слово или многословная фраза) относится только к одной теме в корпусе. Авторами были проведены и описаны эксперименты по новостям из 157 стран в течение 4 месяцев (с июля по октябрь 2013 года), которые показали, что метод FTCCT (объединяющий FTCCT и EEM) обеспечивает гораздо более высокое качество содержания и описания слов события, чем метод LDA (объединение LDA и EEM) для анализа потоков короткого текста. Метод также визуализирует эволюцию актуальных событий. Достоинством данного метода является возможность предсказывать и объяснять некоторые события. Обнаружившиеся всемирные события развили некоторые интересные корреляции
наступления всемирных событий. Например, экстремальные погодные явления,
происходящие в разных местах - тайфун в Гонконге и на Филиппинах, следовали за ураганом и штормовым наводнением в Мексике в сентябре 2013 года.
В работе [18] уделено внимание выбору алгоритмов кластеризации текстовых поисковых запросов. Основными критериями отбора стали: возможность работы с большим объёмом информации и вычислительная сложность. В данной работе использовались метод K-Means и DBSCAN.
В статье [19] сделан обзор существующих подходов к решению задачи кластерного анализа. Рассматриваются новые разработки в области кластерного анализа, основанные на привлечении ансамблей алгоритмов и логических моделей. Описываются
преимущества таких алгоритмов. Ансамблевые методы позволяют значительно повысить устойчивость группировочных решений. Логические модели позволяют группировать разнотипные данные, а также давать объяснение результатов анализа на языке логических высказываний. Формулируются перспективные направления развития кластерного анализа.
Модели анализа слабоструктурированной текстовой информации созхданые на основе стохастичеких моделей описаны в работах [2022].
Анализ перечисленных и прочих работ по тематике кластерного анализа
слабоструктурированных текстов
свидетельствует о том, что несмотря на значительные результаты в повышении эффективности кластеризации, многие актуальные вопросы, затронутые нами в начале обзора, по-прежнему остаются вынесенными за скобки.
Постановка задачи для разработки модели кластеризации слабоструктурированных текстовых данных
Большинство используемых способов кластеризации базируются на определении расстояний между векторами и между кластерами. Вектора относят к определённым кластерам таким образом, чтобы расстояние между векторами, принадлежащими одному кластеру, было минимальным.
Построение моделей кластеризации текстовых документов основывается на методологии отбора существенных признаков для решения поставленной задачи информационного поиска. Не существует модели кластеризации, которая одновременно имела бы очень небольшое время выполнения, обладала бы абсолютной точностью и обрабатывала бы большие объемы неструктурированных или слабоструктурированных данных. Кроме того, следует отметить, что набор признаков необходимых для анализа скрытых закономерностей в больших объемах данных априори является неизвестным, поэтому при построении модели кластеризации и информационного поиска необходимо основываться на минимальном числе допущений, при максимальном сохранении разнообразных признаков, используемых для кластеризации. Однако следует учесть, что время выполнения модели при этом должны оставаться приемлемым, а реализация вычислений не требовать значительных аппаратных ресурсов.
Существующие модели кластеризации вне зависимости от того являются они лексическими или семантическими
основываются на том, что исходя из задач информационного поиска для решения которых они предназначены, производится отбор значимых признаков. Далее всё множество документов векторизуется (с использованием терминов, или ассоциативно-семантических классов или т.д.) и в соответствии со значимыми признаками и заданной метрикой точности (или, например, заданным числом возможных кластеров и т.д.) кластеризуется по смысловым группам. Для каждого кластера определяется его центр и вектор задающий положение центра (центроид). При появлении новых документов,
их вектора сравниваются по заданной метрике с центроидом, и по результатам сравнения добавляются в тот или иной кластер, или создается новый кластер. При таком подходе добавление каждого нового вектора изменяет положение центра кластера, и каждого из ранее вошедших в него векторов по отношению к нему. В конечном итоге это может привести к размыванию первоначального смыслового значения и необходимости повторной перекластеризации всего множества векторов, или использовании пост кластеризации, при обработке блоков документов. В существующих моделях, кластеры могут динамически изменяться не только по числу векторов, но и по объему.
Предлагаемая нами модель кластеризации (bubble trap) основана на других принципах. В соответствии с которыми, объем смыслового кластера и положение его центра (центроид), не должны изменяться в процессе добавления в него новых векторов. Критерием соотнесения является заданная постоянная метрика точности, на которую должно отличаться расстояние между данным вектором и центроидом оболочки кластера, для вхождения вектора в кластер.
Главной задачей при создании такой модели кластеризации является методика разделения всего векторного пространства текстовых документов на оболочки смысловых кластеров, по возможности с минимальными ограничениями на признаки отбора (чтобы не потерять скрытые закономерности, поведение которых имеет характер шума), что необходимо для создания эффективной модели анализа неструктурированных или
слабоструктурированных текстовых данных.
Иными словами, при построении модели необходимо разделить всё информационное пространство размерности RM на отдельные плотно упакованные области (назовем их space box), которые не изменяются в процессе кластеризации. Положение центра определяет смысловое значение всех векторов, попадающих в данную область, и не должно изменяться (даже незначительно) в процессе кластеризации. Разделение должно удовлетворять следующим требованиям. Если, длина вектора задающего положение центра данной области равна некоторой величине Y, то все вектора текстовых документов, положение которых отличается от положения центра не более чем на величину fY (где f заданная точность кластеризации) принадлежат данной смысловой области.
При построении модели необходимо решить две основные задачи. Во-первых, разработать
методику разделения информационного пространства на смысловые области (space box). Во-вторых, разработать методику отнесения вектора конкретной области.
Перечислим основные требования к модели:
1. Исходными данными модели являются: словарь значимых терминов (содержащий некоторое число объектов), коллекция документов (содержащая некоторое произвольное число объектов, каждый из которых содержит некоторое произвольное число значимых терминов), заданная точность отнесения документа к определенной смысловой группе. Метрикой точности является заданная величина отклонения данного вектора от центра кластера;
2. Положение центра и объем каждого кластера не должны изменяться при добавлении новых векторов. Изменяться может только число векторов внутри кластера, что не приводит к изменению первоначально заданного смыслового значения, а значит появлению или исчезновению анализируемой скрытой закономерности;
3. Выполнение модели не должно требовать сверх больших аппаратных ресурсов и иметь в зависимости от объема данных приемлемое время их обработки.
Предлагаемая модель кластеризации
Для кластеризации коллекции текстовых документов по смысловым группам (определение однородных классов в произвольной проблемной области) после создания матрицы терм-документ мы предлагаем следующую модель.
Воспользовавшись классическим определением расстояния между двумя точками в пространстве любой размерности, определяем длины всех N - векторов:
к = \ X2 + Х2,1 + 4i +•••• ••• +xf1 +..... ■■■■ X2 лм, 1
12 = \ X2 + Х2,2 ••• +x?,2 +..... • • •• X2 лм,2
lj = N х2 • + 4 j •• +xtj +..... • • •x2 ■
in = J X2 + x2,n + x3,n + ••• +xf1 +•••• ..... г2
Далее выбираем вектор с максимальной
~ , (max)
длиной I к , и вектор с минимальной длиной ^(min) . Величина I р™п) определяет радиус гиперсферы в пространстве RM, внутри которой не будет находиться ни одного вектора, т.к. их длин будут больше I р™п) . Все вектора будут лежать внутри гипершарового слоя r, для которого будет выполняться условие Iр™п) <
г < 1 fax).
При использовании TF-IDF меры длина каждого из векторов будет одинакова (равна 1) и их координаты находятся не внутри гипершара, а попадают на поверхность гиперсферы. В этом случае деления шара на слои не требуется.
В случае, когда длины векторов имеют разные значения, то для кластеризации документов можно сформулировать следующую задачу: на сколько областей можно разделить гипершаровой слой r таким образом, чтобы выполнялись следующие условия:
• документы, попавшие в один кластер, имели бы примерно одинаковое смысловое значение;
• при очень большом числе документов (например, N^го) все кластеры имели различимую границу, т.е. не пересекались бы между собой и не образовывали бы единый кластер.
Начнем с определения критерия одинаковости смысловых значений векторов. Возьмём некоторый вектор (любой из их множества), имеющий длину l pmin) , точка соответствующая концу этого вектора будет
иметь координаты (xlp,x2iP,x3iP, ......xMp) и
принадлежать определенному смысловому кластеру, вектора которого близки к данному вектору. Следует отметить, что в пространстве гипершара существует множество таких векторов, а множество точек, определяющих их концы будет образовывать гиперсферу радиуса
l (min) 1 Р .
В качестве критерия «близости» можно выбрать условие, что расстояние от центроида кластера C (на рисунке 1 обозначен как ) до любого другого вектора (точки соответствующей его концу) входящего в данный кластер (в том числе и вектора 1р), не превышала бы некоторую заданную величину f от величины вектора 1С.
Подобный подход позволяет предположить, что при большом и плотном заполнении кластера векторами, его форма должна будет стремиться к гипершару радиуса flc в пространстве размерности RM. А оболочки этих кластеров должны образовать субслой находящийся от центра координат на расстоянии lc=lpmin/(1-^j (т.к. lc=lpmin+^o см. рисунок 1).
Поскольку радиус кластера связан с величиной вектора центроида, а каждый из последующих векторов центроидов будет иметь длину больше, чем предыдущий, то при переходе к следующим субслоям, радиус кластеров должен увеличиваться.
Рисунок 1 - Графическая интерпретация критерия близости векторов из выбранного кластера к его центроиду (вектору задающему положение центра данного кластера)
Используя описанный подход, разделим гипершаровой слой на «субслои» 1, 2 ,3 ,4, ... , K,
п 7 (min) 7 (max)
как это показано на рисунке 2, от I ^ J до I yk J.
При этом каждый следующий субслой будет несколько больше по ширине, чем предыдущий. Оболочки кластеров внутри каждого из субслоев показаны в виде сфер с увеличивающимся от субслоя к субслою размером. Еще раз отметим, что заполнение субслоев оболочками кластеров может быть максимально компактным. Однако, какие-то из кластеров, могут остаться пустыми (или содержать малое количество векторов, показаны на рисунке 2 белыми), а какие-то заполненными векторами (показаны на рисунке 2 серым цветом).
Рисунок 2 - Разделение гипершарового слоя на субслои с плотно упакованными кластерами
А Е F
Рисунок 3 - Взаимное расположение соседних кластеров
Изучение топологии распределения пустых кластеров в информационном пространстве с точки зрения анализа само по себе является интересной задачей, однако это выходит за рамки данной работы.
Оболочки всех кластеров первого субслоя будут находиться от центра системы координат на расстоянии У1=/рт1п/(1-^), второго на расстоянии У2, третьего на расстоянии Уз и т.д. до тех пор, пока не выполниться условие Уп</ктах/(1+^). Определим величину У2 (радиус слоя). Обратим внимание на рисунок 2, на котором можно заметить, что оболочки кластеров различных субслоев могут быть выстроены в одну линию (проходящую через их
центры, показана на левой части рисунка 2 пунктиром), либо несколько смещены относительно осевой линии (показана на левой части рисунка 2 пунктиром). Однако для определения У2 это не играет роли, т.к. при сдвиге оболочек кластеров внутри своих субслоев их центры будут по-прежнему оставаться на расстоянии Уп от начала координат. Для нахождения У2 воспользуемся рисунком 3.
Из рисунка 3 видно, что Г22 = \АС\2 = \^\2 + ^\2 = (\АЕ\ + \^\)2 +
= (^\АВ\2-\ВЕ\ + 7\ЯС\2-\СЯ\2)2 +^\2
j (min)
\AB\ = Y1=f-j
\ВЕ\ =\Y1 \ВС\ = ы + Ы = ^ + Y2) \CF\ = fY2
\CD\ = \CF\ - \BE\ = fY2 - (Y± = ((Y2 - Y1) Y2 = [j\AB\2 - \BE\2 + ^\BC\2 - \CD\2)2 +\CF\2 =
= (JYI2 - +vm+- та - n)2) +
+f2y22 = J^ + Z^/y^)2 + {2Y2 = = 0-£№+_4f2Y1Y2 + +4 +
или
Y22(l - f2) -(!- f2)Y2 - 4^2Y,Y2 --4 ^Y1^Y1Y2(1 - f2) = 0 (1)
Таким образом, Y2 может быть найдено из решения уравнения (1) с учетом того, что Y2 должно быть больше Yi, и любые Yn не являются комплексными. Легко заметить из рисунка 1, что Ys может быть найдено заменой Yi в формуле (1) на Y2, а Y2 на Ys, после нахождения Y2 по формуле (1).
Y2(1 - ?)- (1-t2)Y22 - 4{2Y2Y3 -4 tY2jY2Y3(1-t2) = 0 (2)
В общем случае получаем:
Yn2(1 - f2) - (1-f2)Yn2.1-4f2Yn_1Yn -4 f Yn_1^Yn_1Yn(1-f2) = 0, (3) где n=2, 3, 4, ..., k, а для любого Yn должно выполняться условие Yn<lkmax/(1+^).
Если Yn+1>lkmax/(1+^), а Yn<lkmax/(1+^), то ширина последнего слоя (с номером n+1) определяется условием: (lkmax-Yn(1+^)}.
Следует отметить, что упаковка оболочек кластеров может содержать разреженные области между слоями может и не являться самой плотной. Наличие разреженных областей снижает общую плотность упаковки оболочек кластеров в гипершаре, но вместе с тем не снижает точности соотнесения векторов между субслоями, поскольку в разреженных областях выполняется условие
\ВС\ > SY± + !;Y2 = S(Y± + Y2) и кроме того не сказывается на дальнейшем распределении векторов между оболочками кластеров внутри своего субслоя. Таким образом, плотное расположение дает нижнюю границу обеспечения точности распределения текстов по смысловым группам.
Рассмотренный подход позволяет найти число субслоев K в пространстве RM, чтобы с заданной точностью (1-f) распределить всё множество текстовых документов M по смысловым значениям.
Описанная методика позволяет дать
определение класса, согласно которому понятие класса совпадает с понятием субслоя.
После распределения векторов по отдельным субслоям, рассмотрим задачу отнесения вектора к конкретному кластеру внутри субслоя.
Из соображений удобства желательно, чтобы покрытие слоя оболочками кластеров было равномерным. Учитывая, что часть векторов слоя может попадать в пространство вне оболочек, то для того, чтобы число таких не соотнесенных векторов было минимальным, необходимо стремиться, чтобы упаковка оболочек внутри слоя была максимально плотной. Далее необходимо определить координаты узлов сети (центров оболочек кластеров). Затем для каждого вектора слоя необходимо попарно вычислить метрики его расстояний от узлов сети. Величина каждой метрики должна быть меньше или равна величине Удовлетворяющие данной метрике вектора относятся к выбранному кластеру.
Для соотнесения векторов субслоя определенному кластеру необходимо найти координаты центров оболочек кластеров в пространстве RM.
Для удобства вычислений перейдем в сферическую систему координат.
В и-мерном пространстве, сферические координаты определяются следующим образом: хм = Усоб61
Xi = Ycosdi_1 nijLi1 sineq, (4)
при i = 2,3,4,- M -1,
V x1 = Ysin91sin92sin93..........sindM_i
где Y - сферический радиус (Y> 0), 61,62, ...A-i -сферические углы, которые в общем случае изменяются в пределах: 0 <61< 2п, 0 <6i<n при i= 2, 3, ..., М-1.
Учитывая, что все координаты xi являются положительными: 0 <вг< п/2, 0 <9i<n/2 при i= 2, 3, ..., M-1. Вектора находятся не во всем гипершаре, а только в его части.
Учитывая изотропность пространства и равнозначность осей можно предположить, что для обеспечения равномерности покрытия угловые координаты 0i должны изменяться с одинаковым дискретным шагом Si от 0 до п/2.
Выберем субслой с номером n, и определим Si,i - шаг по углу в1 (в1 - угол между осью М и вектором, определяющим положение центра кластера) для цепочки кластеров с номером 1. Поясним нахождение величины Si,i. На рисунке 5 показаны ось М и произвольно выбранная ось F,
индексы 1,2, 3 и т.д. одновременно обозначают цепочки кластеров и их проекции на плоскость OMF.
Рисунок 5 - Проекции цепочек кластеров на дугу между произвольными осями М и F
Выберем значение всех углов вi равными нулю, и получим следующий набор координат:
хм,о — ^п
Ч,о
= 0
^1,0 = 0
Точка с данными координатами (обозначим её А) лежит на оси М.
Далее рассмотрим ближайшую к данной точке цепочку кластеров, у которой относительно угол между осью М и вектором задающим центр первой осевой линии в1=д1,1 (см. рисунок 7), а угловые координаты относительно остальных осей равны 0.
Хм ^ — ^
^м — 1 1 — -1
хи = 0
(5)
^ Х11 — 0
Далее запишем уравнение для метрики, определяющей расстояние между вектором, задающим осевую линию первой цепочки кластеров и точкой А, лежащей на оси М:
(Х1,1 — Х1,о) + (Х2,1 — Х2,о) +.....
+ (Х1,1— Х1,о) +...... +(ХМ,1 — ХМ,о) = {2(Т^п}2
У^т2^ + (упсоз311 — Гп)2 — {2(Гп}2 2У„2(1 — созЗ^) — {2 ^п}2
С0551Д — 1—1 —(6)
Угол в1 будет изменяться с дискретным шагом 8ц от 0 до п/2. Общее число цепочек кластеров будет равно Км=тс/251,1 с округлением до минимального целого значения.
Определим 81,2 - шаг по углу в2,1 (в2,1 - угол для
оси М-1) для цепочки кластеров с номером 1. Выберем значение всех углов в,, (кроме в1=8ц и в2,1=81,2) равными нулю, и получим следующий набор координат:
(хм,2 — Упсоз8Ь1
Хм_^ 2 — ^созё^ 2
— У„8т8Л 151П51
4,2
— 0
—0
(7)
VХ1,2
Отметим, что данный набор координат должен определять положение внутри цепочки кластера, являющимся ближайшим к кластеру, положение центра которого задается системой уравнений (5).
Далее запишем уравнение для метрики, определяющей расстояние между вектором, задающим центр кластера, с координатами, заданными системой уравнений (7) и вектором, задающим центр кластера, с координатами, заданными системой уравнений (5):
(Х1,2 — Х1д) + (Х2,2 — Х2д) +.....
+ (Х1,2 — Х1д) +...... +(ХМ,2 — ХМ, 1) — {2С^П}2
(Уп51п51д51П51,2) + (Уп51п511С055п,2 — Уп51П51д)2 + (Упсоз81 х — /„С055! х)2
— {2С^„}2 , ,
, — {2С^„}2 , ,
2Уп251П251Д{1 — СО5512] — {2^УП}2
, {2^п}2 ,
о — 1 " V , 0
— 1 —■
(8)
°1Д
Угол в2,1 будет изменяться с дискретным шагом 81,2 от 0 до п/2. Общее число кластеров будет равно Км-1,1=п/251,2 с округлением до минимального целого значения.
Далее необходимо взять угол в1=28ц, и определить 82,2 - шаг по углу в2,2 (в2,2 - угол для оси М-1) для цепочки кластеров с номером 2. Выберем значение всех углов в,, (кроме в1=28ц и в2,2=82,2) равными нулю, и получим следующий набор координат:
хм,з — Упсоз^ хм-1,з — ^„51п251,1со552,2 *м-2,з — ^„51п251,151п52,2
*г,з — 0
V х,я — 0
Далее запишем уравнение для метрики, определяющей расстояние между вектором, задающим центр кластера, с координатами, заданными системой уравнений (9) и вектором, задающим центр кластера, с координатами заданными системой уравнений (10):
4 — -у
Хм
-1 4 —~ 2
На
— 0
(10)
V Х1А
2
—0
(Х1,3 Х1д) + (Х2,3 Х2д) +.....
+ (Х1,з — +......+ (хм,з — хмд) — {2(Т^п}2
(Уп51П251Д51П5 2,2)
+ (Уп5т251Дсо552,2
\2
— Уп51П2Й1Д) + + (упсоз281Л — УпСО5251Д)2 — {2^п}2 У^5т2251Д5т252,2 + У^^Б1П22811со52822 — —2У25т22811со58212 + У2БЫ22811 — {2^УП}2 2Уп251П22511{1 — 00582 2} — {2<ПУ2 С05Д„ —1 — —1- ^
2 , , - - , , (11)
2У^Х1П2251Д Б1П2261Л 4 '
Угол 62,2 будет изменяться с дискретным шагом 82,2 от 0 до п/2. Общее число кластеров будет равно
Км-1,2=л/252,2 с округлением до минимального целого значения.
Аналогичным образом берем угол 61=381,1, и определить 82,3 - шаг по углу 62,2 (62,3 - угол для оси М-1) для цепочки кластеров с номером 3.
соз82 з — 1— {2^}1 —1— 2/' (12)
И т.д. получаем, что для оси М шаг по углу составляет 61,1, а число цепочек Км=тс/2б1,1 (с округлением до наименьшего целого). Для первой цепочки кластеров относительно оси М-1 угловой шаг составит 61,2, для второй цепочки кластеров 82,2, для третей цепочки кластеров 82,3, и т.д. до цепочки Км:
соб81 1 — 1 — 2^2 , 2^2
соб812 — 1 —
, Б1Пг8
2^2
1,1
соб822 — 1 —
соб8,, 9 — 1 — ■
2^2
1,1
2^2
С058^ — 1—'5Ы2Км81,1 Далее переходим к оси М-2. Определим шаг по углу 63 (63 - угол для оси М-2). Здесь должна быть реализована следующая процедура. Выбираем угол 81,1, затем берем угол 81,2 и определяем углы
81,3, 82,3, и т.д. как это было проделано ранее для углов 81,2, 82,2 и т.д. при условии, что углы 63,1, 63,2, 63,3, и т.д. дискретно изменяются с шагом 81,3, 82,3, и т.д. от 0 до п/2. Далее выбираем угол 81,1 и угол 82,2 и проделываем описанную выше процедуру. Далее выбираем угол 81,1 и угол 83,2 и проделываем описанную выше процедуру до 8Км2 , пока не будет достигнут угол п/2. Потом берем угол 281,1 и повторяем все вновь, потом берем 281,1 и т.д. до тех пор, пока 61 не достигнет п/2.
Выберем значение всех углов 6,, (кроме 61=81,1, 62=81,2 и 63=81,3) равными нулю, и получим следующий набор координат:
хм,5 = Упсоз81}1
ХМ—1,5 — Уп51П511С0551,2
ХМ—2,5 — Уп51П51д51П51,21
ХМ—3,5
Х1,5 — 0
соб813 б1П81 з
(13)
^Х1,5 — 0
Далее запишем уравнение для метрики, определяющей расстояние между вектором, задающим центр кластера, с координатами, заданными системой уравнений (13) и вектором, задающим центр ближайшего по цепочке кластера, с координатами, заданными системой уравнений (7):
(х1,5 — х1,г) + (х2,5 — х2,г) +.....
+ (х1,5—х1,г) +......+(хм,5 —хм,г) — {2(Т^п}2
(Уп51П51Д51П51,251П51,з)2 + 2
+ (УП51П51Д51П51,2С0551,3 — УП51П51Д51П51,2) + (УП51П51ДС0551,2 — Уп51п811соз812)2 + + {Упсо5811 — УпСО551Д)2 — {2^УП}2
(Уп51П51Д51П51,251П51,з)2 + 2
+ (упб1п81 1б1п81 2соб81 3 — ¥п51п811б1п812)
, — {2Ш2 , , \
У^5т251Д5т2512 {зт2813 + (СОБ813 — 1)2|
, — {ВД2 , ,
2У^5т251Д5т2512(1 — СО5513) — {2^УП}2 , , {2 Ш2
+
СОбЗ, з — 1 —
2^2
— 1 —
(14)
Используя описанный ранее подход, рекурсивно можно найти угловые координаты всех оболочек кластеров для данного субслоя.
Очевидно, что число оболочек во всем субслое будет настолько велико, что нахождение координат их центров является технически неразрешимой задачей. Однако отметим, что её
решение для кластеризации векторов внутри слоя не требуется.
Рассмотрим текстовый документ] состоящий из Wj значимых терминов. Соответственно из всего множества RM, отличными от 0 будет только Wj координат, для которых можно записать систему уравнений (4): (хм = Усоб81
Xj = Ycosdi_
т — ±
■П*
sin6„, при i = 2,3,4,-
■M — l
q=i
Х1 = Уз1пв151пв251пв3 ........................................51пвм_1
В которой останутся только строки соответствующие отличным от нуля хи Для того чтобы рассматриваемый вектор, принадлежал определенному кластеру, необходимо чтобы выполнялось условие:
(х1,с — х1,у) + (х2,с — х2,у) +..... + {.х1,с —
Х1,у) +...... + {.ХМ,С — ХМ,у) — (С^п)2,
где х,е - координаты центра кластера, а х,у -соответствующие координаты вектора.
Используя, для угловых координат, полученные ранее рекурсивные соотношения и систему уравнений (4) можно восстановить по ним соответствующие координаты х*,с центров кластеров. Критерием точности нахождения координат является соотношение: — х^,с| — Д, где Д - величина ошибки (по сути, каждая из х,с подгоняется к х,у, таким образом, чтобы рассчитываемая с использованием формул (4) величина отличалась от соответствующей координаты вектора не более чем на Д). Величину Д можно оценить используя уравнение:
(Д)2 + (Д)2 +.....+(Д)2 +......+(Д)2 — {^¥п}2
м(Д)2 — {Ш2
А<
Далее зная к какому кластеру принадлежит данный вектор, можно кластеризовать все документы по смысловым группам с заданной ошибкой 5.
Пусть документ имеет значимый термин, соответствующий в рассматриваемом пространстве координате Х1. Тогда используя условие:
¿У ¿У
хЬу—р= — X; с — X; у + -г= подбираем 01,
используя для этого его наборы угловых координат 5. Если Х1=0, то соб61 = 0, а б1п61 = 1. При соб61 = 0, координата кластера по оси 1 выбирается из множества: в1 = и 25г и 35г и•
.................,пвл 51Д, где 51,1 - шаг по углу 01 (01
угол по оси 1). Отметим, что необходимо найти
птах$ 1,1 ~ ¡2 или Пш,
U
/28,
округлением до минимального целого числа. Если соб61 Ф 0, то 01 сразу выбирается из в1 =
Si д, 2Sii, 38
1,1,
Ji,i,
Переходим к определению 02. Зная созв1 (подобранный или найденный из значения координаты Х1), находим величину Б1пв1, а затем
величину cosB2 =
YsinB-,
Далее используя
£У £У
условие: хЬу —== — х1с — х^ у + -г= подбираем 02,
используя для этого его наборы угловых координат 5 для 02, но уже с известным в1 = пв1^1,1 (с ограничением для 01), что существенно уменьшает число вариантов для угловых наборов 02. Отметим, что предварительного расчета всех угловых наборов для всех углов 0 не требуется, т.к. все значения можно рассчитывать при отнесении вектора к кластеру. Используя для этого описанную ранее рекурсивную методику и полученные с её помощью в общем виде для любых 0 и 5 математические выражения, что существенно уменьшает объем вычислений и увеличивает скорость кластеризации.
Далее аналогичным образом определяем все остальные координаты.
п(vector)
= arccos
координата вектора по оси 1;
(vector) ±
, при j=1, X
(vector)
5г = arccos(l — 2* (2), при j=1;
ig(vector)\
-1 , (выбирается целое
1 'integer
пв1, для которого наименьшая погрешность при округлении);
г. (cluster) с ^ п п (cluster)
0-l = пв1 * о1 < где - угловая
координата по оси 1 центра кластера, которому принадлежит данный вектор;
6 (vector)
; = arccos
(vector) 1 ^ * У Xj ^
Y*U^--11sin{nd._i*Sj_1}
при j = 2,3,4, •
■М, г
7-1
(vector) 'j
координата
данного вектора по оси j;
Si = arccos < l —
2*%2
U^sin2 {
* S,
йу
M;
ne.
при j = 2,3,4,.........
^(vector)
пв. = тт^-^—
1 integer
для которого наименьшая погрешность при
, (выбирается целое
округлении);
п (cluster) г ^ п п (cluster)
fey = пв. * dj < -, где в- - угловые
координаты по осям j=1,2,3, М центра кластера, которому принадлежит рассматриваемый вектор.
Заключение
Обобщая изложенное выше, представим осуществление кластеризации
слабоструктурированных текстов на основе разработанной модели в виде следующей последовательности действий (алгоритм кластеризации «bubble trap»):
1. Обрабатываем с помощью методов математической лингвистики (разметка, нормализация и т.д.) и словаря терминов содержащего слова и n - граммы всю коллекцию текстовых документов, и создаем матрицу документ - термин (с использованием TF-IDF метрик или абсолютных частот вхождения терминов);
2. Для повышения точности информационного анализа можно учесть смысловую близости различных семантических единиц, и перейти от матрицы документ -термин к матрице документ - семантический класс. Для этого можно использовать следующую методику:
a) создаем обучающую выборку документов, и на её множестве определяем ассоциативно -семантические классы для часто употребляемых общих терминов (например, используя алгоритм Word2Vec). В один класс попадают имеющие разную семантику, но обладающие схожим смысловым значением термины (слова, словосочетания и т.д.);
b) заменяем термины на семантические классы. При этом первоначальная размерность информационного пространства уменьшается, за счет того, что отдельные термины частично объединяются в классы. Те термины, которые не объединились, образуют классы, каждый из которых включает всего один элемент;
c) рассчитываем частотные характеристики вхождения классов в документы (используя либо TF-IDF метрику, либо абсолютные частоты вхождения объектов семантических классов в документы);
3. Определяем длины всех N - векторов коллекции документов. Выбираем вектор с
, (max)
максимальной длиной t , и вектор с минимальной длиной Zp™n). До момента выбора минимального и максимального векторов данная операция может осуществляться параллельно;
4. Задаем величину критерия ^ смыслового совпадения документов. И решая уравнение:
вд—а — а—№2-1——
4 —<Т2) — 0 (где п=2, 3, 4.....к)
определяем радиусы (Уп) слоев оболочек кластеров в информационном пространстве (учитывая, что У± — I ртш)/(1 — ). Для любого Yn должно выполняться условие Уп < I (1 +
, п - номер соответствующего слоя. Если Yn+l>/kmax/(l+^), а Yn</kmax/(l+^), то ширина последнего слоя (с номером п+1) определяется условием: {/ктах^п(1+^)};
5. Сортируем все вектора по слоям (классам), используя следующее условие:
уп(1 — о < г7- < Уп(1 + О;
6. Используя описанные ранее рекурсивные методику определения координат оболочек кластеров при их покрытии субслоя и распределения векторов внутри классов, определяем угловые координаты кластера (наборы 8 для углов 6), к которому относится данный вектор. Данная операция может осуществляться параллельно не только по обработки каждого субслоя, но и по обработке каждого из векторов, отнесенного к тому или иному субслою;
7. Зная координаты центров кластеров, к которым относятся вектора, проводим кластеризацию документов по смысловым группам;
8. Извлекаем знания из текстов документов образовавших кластер, проводим их аннотирование и определяем смысловую тематику данного кластера.
Как видно из описания, данный подход не требует предварительного расчета значений координат оболочек всех кластеров. Отметим, что при нахождении координат на каждом следующем этапе используются результаты предыдущего этапа. Координата
принадлежности вектора определенному кластеру находится в процессе обработки самого вектора и не связана с обработкой других векторов, что существенно уменьшает объем вычислений и сокращает время обработки данных. Кроме того, поскольку обработка векторов производится независимо, это позволяет значительно распараллелить вычисления и получить выигрыш в производительности.
Благодарности
Работа выполнена за счет финансирования Министерством образования и науки Российской Федерации конкурсной части государственных заданий высшим учебным заведениям и научным организациям по выполнению инициативных научных проектов, номер проекта 28.2635.2017/ПЧ, наименование
«Разработка моделей стохастической самоорганизации слабоструктурированной информации и реализации памяти при прогнозировании новостных событий на основе массивов.естественно-языковых текстов».
Acknowledgments
The work is executed due to financing by the Ministry of Education and Science of the Russian
Federation as the competitive part of government tasks of higher education and scientific organizations for the implementation the initiative scientific projects; the number of the project -28.2635.2017 / IF named «Development of models of stochastic self-semistructured information and implementation of memory in predicting the news events array-based natural language texts».
Литература
10.
ii.
12.
13.
14.
15.
16. 17.
18.
19.
20.
21.
22.
Feldman R., Sanger J. The Text Mining Handbok. Cambridge: Cambridge University Press, 2007. Christopher D. Manning, Prabhakar Raghavan, Hinrich Schütze. Introduction to Information Retrieval. Cambridge University Press, 2008, 544 p.
Turney, P. D. The latent relation mapping engine: Algorithm and experiments. // Journal of Artificial Intelligence Research, 33, 2008, P. 615-655.
Kumar, A., Kumar, D., Jarial, S.K. A novel hybrid K-means and artificial bee colony algorithm approach for data clustering. // Decision Science Letters . - 2018, Vol. 7, Issue 1, P. 65-76.
Abualigah, L.M., Khader, A.T., Al-Betar, M.A., Alomari, O.A. Text feature selection with a robust weight scheme and dynamic dimension reduction to text document clustering. / Expert Systems with Applications. - 2017, 84, P. 24-36.
Kanimozhi, K.V., Venkatesan, M. A novel map-reduce based augmented clustering algorithm for big text datasets. // Advances in Intelligent Systems and Computing. - 2018, Vol. 542, P. 427-436.
Jenhani, F., Gouider, M.S., Said, L.B. Social stream clustering to improve events extraction. // Smart Innovation, Systems and Technologies. - 2018, Vol. 73, P. 319-329.
Jenhani, F., Gouider, M.S., Ben Said, L.A hybrid approach for drug abuse events extraction from Twitter (2016). 20Th International Conference on Knowledge-Based and Intelligent Information and Engineering Systems (ICKIIES 2016), York, United Kingdom. -2016. Ailem, M., Role, F., Nadif, M. Sparse Poisson Latent Block Model for Document Clustering. / IEEE Transactions on Knowledge and Data Engineering. - 2017, №29 (7), P. 1563-1576.
Li, W., Joo, J., Qi, H., Zhu, S.-C. Joint Image-Text News Topic Detection and Tracking by Multimodal Topic And-Or Graph. // IEEE Transactions on Multimedia. - 2017, Vol. 19, Issue 2, 19(2), P. 367-381.
Bafna, P., Pramod, D., Vaidya, A. Document clustering: TF-IDF approach. // International Conference on Electrical, Electronics, and Optimization Techniques, ICEEOT 2016. - 2016, P. 61-66.
Lamari, Y., Slaoui, S.C. Parallel document clustering using iterative mapreduce. 2016 International Conference on Big Data and Advanced Wireless Technologies, BDAW 2016; Blagoevgrad; Bulgaria; 10 November 2016 to 11 November 2016. // ACM International Conference Proceeding Series.
Al-Fath, A.M.U., Saleh, W.K.R., Sa'Adah, S. Implementation of MCL algorithm in clustering digital news with graph representation. // 4th International Conference on Information and Communication Technology, ICoICT 2016; Bandung; Indonesia; 25 May 2016 до 27 May 2016.
Patil, H., Thakur, R.S. Document clustering: A summarized survey (Book Chapter) // Pattern and Data Analysis in Healthcare Settings. - 22 July 2016, P. 264-281.
Le, T.M.V., Lauw, H.W. Semantic visualization with neighborhood graph regularization. / Journal of Artificial Intelligence Research. -2016, Vol. 55, P. 1091-1133.
Rahmawati, D., Putri Saptawati, G.A., Widyani, Y. Document clustering using sequential pattern (SP): Maximal frequent sequences (MFS) as SP representation. // Proceedings of 2015 International Conference on Data and Software Engineering, ICODSE 2015. -2016, P. 98-102.
Conrad, J.G., Bender, M. Semi-supervised events clustering in news retrieval. // CEUR Workshop Proceedings. - 2016, P. 21-26. Huang, G., He, J., Zhang, Y., (...), You, Y., Cao, J. Mining streams of short text for analysis of world-wide event evolutions. / World Wide Web . -2015, 18(5), P. 1201-1217.
О. А. Безверхий, С. Г. Самохвалова. Кластеризация большого объёма текстовых поисковых запросов. // «Ученые заметки ТОГУ». - 2016, Том 7, № 3.
А. В. Потемкин, А. Ю. Бородащенко. Алгоритм динамической кластеризации сообщений средств массовой информации сети Интернет по сюжетным линиям. // «Human Progress». -2016, Том 2, № 8.
Lesko, S.A., Zhukov, D.O Trends, self-similarity, and forecasting of news events in the information domain, its structure and director. Proceedings - 2015 IEEE International Conference on Big Data Intelligence and Computing, DataCom 2015, DOI: 10.1109/SmartCity.2015.178
D.O. Zhukov, S.A. Lesko. Stochastic self-organisation of poorly structured data and memory realisation in an information domain when designing news events forecasting models. The 2nd IEEE International Conference on Big Data Intelligence and Computing. 2016, August 8-12, Auckland, New Zealand, DOI: 10.1109/DASC-PICom-DataCom-CyberSciTec.2016.153
Sigov, A., Zhukov, D., Novikova, O. Modelling of memory realization processes and the implementation of information self-organization in forecasting the new's events using arrays of natural language texts. Proceeding the 1st International Scientific Conference Convergent Cognitive Information Technologies, Convergent 2016; Moscow; Russian Federation; 25 November 2016 through 26 November 2016; Code 125487, CEUR Workshop Proceedings Volume 1763, 2016, pp. 42-55
References
1. Feldman R., Sanger J. The Text Mining Handbok. Cambridge: Cambridge University Press, 2007. Christopher D. Manning, Prabhakar Raghavan, Hinrich Schütze. Introduction to Information Retrieval. Cambridge University Press, 2008, 544 p.
2. Turney, P. D. The latent relation mapping engine: Algorithm and experiments. // Journal of Artificial Intelligence Research, 33, 2008, P. 615-655.
3. Kumar, A., Kumar, D., Jarial, S.K. A novel hybrid K-means and artificial bee colony algorithm approach for data clustering. // Decision
Science Letters . - 2018, Vol. 7, Issue 1, P. 65-76.
4. Abualigah, L.M., Khader, A.T., Al-Betar, M.A., Alomari, O.A. Text feature selection with a robust weight scheme and dynamic dimension reduction to text document clustering. / Expert Systems with Applications. - 2017, 84, P. 24-36.
5. Kanimozhi, K.V., Venkatesan, M. A novel map-reduce based augmented clustering algorithm for big text datasets. // Advances in Intelligent Systems and Computing. - 2018, Vol. 542, P. 427-436.
6. Jenhani, F., Gouider, M.S., Said, L.B. Social stream clustering to improve events extraction. // Smart Innovation, Systems and Technologies. - 2018, Vol. 73, P. 319-329.
7. Jenhani, F., Gouider, M.S., Ben Said, L.A hybrid approach for drug abuse events extraction from Twitter (2016). 20Th International Conference on Knowledge-Based and Intelligent Information and Engineering Systems (ICKIIES 2016), York, United Kingdom. -2016.
8. Ailem, M., Role, F., Nadif, M. Sparse Poisson Latent Block Model for Document Clustering. / IEEE Transactions on Knowledge and Data Engineering. - 2017, №29 (7), P. 1563-1576.
9. Li, W., Joo, J., Qi, H., Zhu, S.-C. Joint Image-Text News Topic Detection and Tracking by Multimodal Topic And-Or Graph. // IEEE Transactions on Multimedia. - 2017, Vol. 19, Issue 2, 19(2), P. 367-381.
10. Bafna, P., Pramod, D., Vaidya, A. Document clustering: TF-IDF approach. // International Conference on Electrical, Electronics, and Optimization Techniques, ICEEOT 2016. - 2016, P. 61-66.
11. Lamari, Y., Slaoui, S.C. Parallel document clustering using iterative mapreduce. 2016 International Conference on Big Data and Advanced Wireless Technologies, BDAW 2016; Blagoevgrad; Bulgaria; 10 November 2016 to 11 November 2016. // ACM International Conference Proceeding Series.
12. Al-Fath, A.M.U., Saleh, W.K.R., Sa'Adah, S. Implementation of MCL algorithm in clustering digital news with graph representation. // 4th International Conference on Information and Communication Technology, ICoICT 2016; Bandung; Indonesia; 25 May 2016 до 27 May 2016.
13. Patil, H., Thakur, R.S. Document clustering: A summarized survey (Book Chapter) // Pattern and Data Analysis in Healthcare Settings. - 22 July 2016, P. 264-281.
14. Le, T.M.V., Lauw, H.W. Semantic visualization with neighborhood graph regularization. / Journal of Artificial Intelligence Research. -2016, Vol. 55, P. 1091-1133.
15. Rahmawati, D., Putri Saptawati, G.A., Widyani, Y. Document clustering using sequential pattern (SP): Maximal frequent sequences (MFS) as SP representation. // Proceedings of 2015 International Conference on Data and Software Engineering, ICODSE 2015. -2016, P. 98-102.
16. Conrad, J.G., Bender, M. Semi-supervised events clustering in news retrieval. // CEUR Workshop Proceedings. - 2016, P. 21-26.
17. Huang, G., He, J., Zhang, Y., (...), You, Y., Cao, J. Mining streams of short text for analysis of world-wide event evolutions. / World Wide Web . -2015, 18(5), P. 1201-1217.
18. O. A. Bezverhij, S. G. Samohvalova. Klasterizacija bol'shogo objoma tekstovyh poiskovyh zaprosov. // «Uchenye zametki TOGU». -2016, Tom 7, № 3.
19. V. Potemkin, A. Ju. Borodashhenko. Algoritm dinamicheskoj klasterizacii soobshhenij sredstv massovoj informacii seti Internet po sjuzhetnym linijam. // «Human Progress». -2016, Tom 2, № 8.
20. Lesko, S.A., Zhukov, D.O Trends, self-similarity, and forecasting of news events in the information domain, its structure and director. Proceedings - 2015 IEEE International Conference on Big Data Intelligence and Computing, DataCom 2015, DOI: 10.1109/SmartCity.2015.178
21. D.O. Zhukov, S.A. Lesko. Stochastic self-organisation of poorly structured data and memory realisation in an information domain when designing news events forecasting models. The 2nd IEEE International Conference on Big Data Intelligence and Computing. 2016, August 8-12, Auckland, New Zealand, DOI: 10.1109/DASC-PICom-DataCom-CyberSciTec.2016.153
22. Sigov, A., Zhukov, D., Novikova, O. Modelling of memory realization processes and the implementation of information self-organization in forecasting the new's events using arrays of natural language texts. Proceeding the 1st International Scientific Conference Convergent Cognitive Information Technologies, Convergent 2016; Moscow; Russian Federation; 25 November 2016 through 26 November 2016; Code 125487, CEUR Workshop Proceedings Volume 1763, 2016, pp. 42-55
Поступила: 29.09.2017
Об авторах:
Отраднов Константин Константинович, соискатель, старший преподаватель кафедры автоматизированных систем управления Института комплексной безопасности и специального приборостроения, Московский технологический университет (МИРЭА),
Жуков Дмитрий Олегович, доктор технических наук, профессор, заместитель директора по научной работе института комплексной безопасности и специального приборостроения, Московский технологический университет (МИРЭА), zhukovdm @yandex. ru
Новикова Ольга Александровна, соискатель, заместитель заведующего аспирантурой, Московский технологический университет (МИРЭА), ol-novikova @bk. ru
Note on the authors:
Otradnov Konstantin K., Applicant, Senior Lecturer, Moscow Technological University (MIREA), [email protected]
Zhukov Dmitry O., Doctor of Technical Science, Professor, Deputy Director on scientific work, Moscow Technological University (MIREA), zhukovdm @yandex. ru
Novikova Olga A., Applicant, Deputy Head of the graduate school, Moscow Technological University (MIREA), [email protected]