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

УДК 681.3

НЕЧЕТКАЯ НЕЙРОСЕТЕВАЯ КЛАСТЕРИЗАЦИЯ ИНФОРМАЦИОННЫХ РЕСУРСОВ ПРОЕКТНОГО РЕПОЗИТАРИЯ

© 2010 Н.В. Корунова

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

Поступила в редакцию 14.05.2010

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

В настоящее время, в связи с геометрическим ростом информации, решение задач хранения, представления и информационного поиска электронных информационных ресурсов (ЭИР) является актуальной задачей, имеющей существенную научную и практическую ценность. Данная работа посвящена исследованию и разработки методов решения проблемы хранения и представления ЭИР. На данный момент хранение ЭИР различных архивов (в том числе и проектного репозитария) осуществляется ведением архива экспертом с использованием системы класса Enterprise Content Management systems (ECM) - системы управления информационными ресурсами предприятия. В российской практике ближе всего к понятию ECM находятся системы электронного документооборота.

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

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

Корунова Надежда Владимировна, ассистент кафедры "Информационные системы". E-mail: jng@ulstu.ru

Проблемная область проектного репозитария (архив документов ФНПЦ ОАО "НПО "МАРС") представляет собой огромный массив документации, содержащий неструктурированные ЭИР, такие как положения, стандарты, инструкции, руководства, спецификации проектов и т.п. Поставлена задача расширить функционал программного средства автоматизации деятельности архивной службы ЭИР с целью интеллектуализации части процессов по управлению информацией. В частности, разработать и реализовать основу среды хранения ЭИР в виде нечеткого нейросетевого кластеризатора.

Здесь формальная постановка задачи кластеризации заключается в следующем.

Пусть X — множество объектов, X — множество номеров (имён, меток) кластеров. Задана функция расстояния между объектами с(х, х). Имеется конечная обучающая выборка объектов XI = {х1,..., х1}сХ. Требуется разбить выборку на подмножества, называемые кластерами, так, чтобы каждый кластер состоял из объектов, близких по метрике с, а объекты разных кластеров существенно отличались. При этом каждому объекту хгеХ1 приписывается метка (номер) кластера г1.

Алгоритм кластеризации - это функция а: Х>Х , которая любому объекту хеХ ставит в соответствие метку кластера .

Решение задачи кластеризации ЭИР проектного репозитария выдвигает ряд требований к алгоритму кластеризации:

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

не более чем логолинейный рост времени работы кластеризатора с увеличением количе-стватекстов;

минимальная (в лучшем случае отсутствующая) настройка со стороны пользователя.

Таблица 1. Программные продукты, реализующие задачи систем ECM

Название Сайт Позиционируется как Индексатор Кластеризатор Классификатор Публикатор Семантический поиск Нечеткий поиск Самоорганизация

Aduna www.aduna-software.com Новая технология исследования данных + - - + + - -

RCO (russian context analyzer) www.rco.ru Технологии анализа и поиска текстовой информации + +/- + + +/- -/+

Hummingbird Portal www.ipi.ru Централизованная система хранения документов + + + +

Convera Retrieval Ware - платформа Exalead www.convera.ru Эффективное управление информацией + -/+ + + +/- -/+

Задача кластеризации текстов с трудом поддается формализации. Оценка адекватности разбиения ЭИР на кластеры, как правило, основывается на мнении эксперта и трудно выразима в виде какой-то одной численной характеристики. Возникает требование интерпретируемости результата, т.е. кластерам должны быть присвоены некоторые метки, отражающие их семантику. Следовательно, процедура кластеризации должна еще обладать свойством:

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

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

разбиение информационных ресурсов на кластеры с нечеткими границами;

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

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

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

Первая представлена алгоритмами иерархической кластеризации (Single/Complete/Average Link), неиерархическими алгоритмами (методы ближайшего соседа - модификация k-means, FCM, нейронные сети SOM, ART и т.д.) а также большим числом других базирующихся на них методов.

Примерами алгоритмов второй группы является алгоритм Suffix Trie Clustering (STC - древовидные структуры). Недостатки метода STC - обязательное наличие первоначального дерева, значительное время работы при больших размерах первоначального дерева.

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

Иерархические методы строят полное дерево вложенных кластеров. Сложности данных методов кластеризации: ограничение объема набора данных; выбор меры близости; негибкость полученных классификаций.

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

Таблица 2. Применимость методов к кластеризации ЭИР

Название Метод Интерпретируем ость результатов Применимость к сильно сгруппированным данным Наличие обучающего набора Обязательное указание количества получаемых класстеров Разбиение с нечеткими границами Принадлежность ЭИР к более чем одному кластеру Рост времени работы

Условия + + - - + + -

Метод ближайшего соседа (К-ближайших) [1],[5] Неиерархический метод, стабилизация центроида +/- -/+ +

Байбесовские сети доверия[1] Направленный ациклический граф + +/- - - - + +

FCM-метод [4] Неиерархический метод, нечеткое разбиение + + + -/+ + +

Сети Кохонена [2] Нейронная сеть + + - - -/+ -/+ -

Нейронная сеть Хопфилда [6] Нейронная сеть + +/- + - - - +

Single Link, Complete Link, Group Average [1] Агломеративный иерархический метод + - - - - - -

Suffix Tree Clustering (STC) [1] Суффиксное дерево + + +

определяет автоматически количество получаемых кластеров (является самоорганизующейся системой);

не требует наличия обучаемой выборки (используется метод обучения без учителя);

применима к сильно сгруппированным данным (позволяет настраивать параметры сети для более "тонкого" разбиения);

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

увеличение количества текстов не влечет за собой экспоненциальный рост времени обработки (время обработки зависит от размерности словаря словоформ);

интерпретация найденных кластеров осуществляется осмысленно в ключевых словах (входы представляют собой вектор частот встречаемости слов ЭИР, на выходе классы, описываемые ключевыми словами);

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

Для построения среды хранения на основе нейронной сети Кохонена необходимо модифицировать выбранную нейронную сеть в соответ-

ствии с применимостью к кластеризации ЭИР проектного репозитария, надстроить слой нейронной сети в виде системы нечеткого вывода.

Задача индексирования ЭИР заключается в том, что входным вектором X системы кластерного анализа ЭИР является результат индексирования - частотный портрет документа. В процессе индексирования ЭИР автоматически извлекается индекс в виде вектора основных понятий и их связи с весовыми характеристиками [3]. В качестве смыслового портрета текста рассматривается сеть понятий — множество ключевых слов или словосочетаний. Каждое понятие имеет некоторый вес, отражающий значимость этого понятия в тексте.

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

1. Частота дескриптора основывается на простом приравнивании веса термина к его частоте появления в тексте (TF - term frequency):

f = freq(xt).

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

2. Мера TFIDF является произведением двух сомножителей: TF и IDF.

TF = tf /tf_max, где tf — частота слова в документе; tf_max — максимальная частота слова в документе;

IDF (inverse document frequency — обратная частота документа) — инверсия частоты, с которой некоторое слово встречается в документах коллекции. Учёт IDF уменьшает вес широко употребительных слов.

IDF = log ———,

di С tr

где D — количество документов в выборке, dt ^ tt - количество документов, в которых встречается дескриптор t.

Большой вес в TF-IDF получат слова с высокой частотой в пределах конкретного документа и с низкой частотой употреблений в других документах.

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

Нейронная сеть Кохонена, использующая метод обучения без учителя (unsupervised learning) - это самоорганизующиеся карты Кохонена (Self-Organizing Map - SOM).

Сеть SOM позволяют осуществить отображение входного n-мерного пространства в выходное m-мерное, то есть [F : Rn ^ Rm ]. Процесс обучения характеризуется самообучением, выполняемым без учителя на основе образов, поступающих на нейроны сети. В качестве метода обучения используется конкурентное обучение. Сеть SOM (см. рис. 1) состоит из двух слоев.

Первый слой состоит из N обрабатывающих элементов (число которых соответствует размерности векторов признаков), каждый из которых получает n входных сигналов xl3 x2,...,xn. Входу xi и связи (i,j) приписывается вес wij. Данный слой выполняет распределительные функции. Каждый нейрон первого слоя имеет соединение со всеми нейронными элементами второго (или выходного) слоя.

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

Каждый обрабатывающий элемент слоя Ко-хонена подсчитывает свою входную интенсивность I; в соответствии с формулой:

1] = ЩР; , X) ,

где = ^;,...,)Т и X = (*!,...,хп) ;

, X) - некоторая мера (метрика) расстояния между Ж; и Х.

В качестве меры сходства векторов чаще всего используют:

1) Эвклидово расстояние: X) = ||Ж - Щ.

2) Сферическое дуговое расстояние:

А (Ж, X) = 1 - ЖТ X = 1 - 0080,

где ЖТ X - скалярное произведение.

Угол между векторам V и т высчитывается следующим образом:

(

cos

Л

v  w

VI VlIWll у

Нормы или модули векторов вычисляются по формулам:

v =

2 2 v +... + v„2,

w=

л/w

w,2 +... + w„2.

Рис. 1. Структура сети SOM

При разработке модифицированной нейронной сети Кохонена для кластеризации ЭИР решено использовать эвклидово расстояние d (W, X).

Обучающие данные для слоя Кохонена предположительно состоят из последовательности входных векторов {Х}, которые извлекаются случайно с фиксированной плотностью распределения вероятностей. Как только очередной из векторов Х вводится в сеть, обрабатывающие элементы Кохонена начинают соревноваться между собой, чтобы найти победителя, для которого

достигается min d (X, W ) . Тогда для победив-

j

.* * шего нейрона j выход устанавливается z j, а

для всех остальных zj, j Ф j . В этот момент

происходит изменение весов в соответствии с

законом обучения Кохонена.

Представим работу алгоритма SOM пошагово:

Шаг 1. Вектор Х подается на вход сети.

Шаг 2. Определяются расстояния D(Wj, X) между Х и весовыми векторами Wj каждого нейрона по формуле:

А =Е

где хi - компонента i входного вектора X, wij -вес входа i нейронаj.

Шаг 3. Нейрон, который имеет весовой вектор, самый близкий к X, объявляется победителем. Этот весовой вектор, называемый Wc, становится основным в группе весовых векторов, которые лежат в пределах расстояния D от Wc, так называемой области активации нейрона-победителя.

Шаг 4. Определение весов нейронов внутри области активации по формуле:

(Г +1) = (Г) + а[X - (Г)],

где a- норма обучения, 0^<1, t - номер итерации.

Шаг 5. Повторяются шаги с 1 по 4 для каждого входного вектора.

Очевидно, что при таком обучении весовой вектор движется к входному вектору Х. В течение первых 1000 итераций, норма обучения должна быть около единицы a~1. Затем по мере обучения уменьшается до величины a=0,1. Характер уменьшения нормы обучения не имеет особого значения, может быть линейным, экспоненциальным или обратно-пропорциональным числу итераций.

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

Таким образом, сеть 80М имеет набор входных элементов (частотные портреты ЭИР), и набор выходных элементов (множество кластеров). Обучение нейронной сети происходит на каждом документе. Интерпретация полученных кластеров осуществляется осмысленно в ключевых словах, поскольку нейронная сеть Кохоне-на представляет весовые значения кластерного элемента как значения координат, описывающих позицию кластера в пространстве входных данных. Следовательно, на полученное пространство кластеров и объектов можно описать в виде нечетких отношений (меры близости).

Система нечеткого логического вывода, основой которой является проведение операции нечеткого логического вывода или это база пра-

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

Пусть в базе правил имеется т правил вида:

Я1: ЕСЛИ х1 это А11 ...И... хп это А1п, ТО у это В1

Яг: ЕСЛИ х1 это Ап .И. хп это А1п, ТО у это Вг

Ят :ЕСЛИ XI это Ап .И. хп это А^ ,ТО у это Вт,

где хк , k=1..n - входные переменные; у - выходная переменная; Агк - заданные нечеткие множества с функциями принадлежности.

Результатом нечеткого вывода является четкое значение переменной у* на основе заданных четких значений хк , k=1..n.

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

Алгоритмы нечеткого вывода различаются главным образом видом используемых правил, логических операций и разновидностью метода дефазификации. Разработаны модели нечеткого вывода Мамдани, Сугено, Ларсена, Цукамото.

Полученная в результате работы сети 80М система мер близости кластеров и объектов ЭИР позволяет использовать нечеткий логический вывод по алгоритму Сугено (иногда говорят алгоритм Такаги-Сугено).

Нечеткий вывод Сугено выполняется по нечеткой базе знаний:

^р У = ЪЛ» + - + ,п • хп.

иI Iх =аирс весом

]=1 V г=1

где Ъ},г - некоторые числа.

Рассмотрим алгоритм нечеткого логического вывода по Сугено пошагово:

Шаг 1. Фазификация. Определяются степени истинности, то есть значения функций принадлежности для левых частей каждого правила (предпосылок). Для базы правил с m правилами обозначим степени истинности как Агк (хк) , i=1.m, k=1..n. Цр (хк ) - функция принадлежности входа хг нечеткому терму р , то есть:

Рис. 2. Структура нечеткого логического вывода

к

a . =

if

К(х)7Х , Х е[х1,х].

Шаг 2. Нечеткий вывод. Заключения правил dj задаются не нечеткими термами, а линейной

функцией от входов: dj = Ъ10 + ^

Р =

2*

V max min '

n

-],г ' Х1 .

I =1, п

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

К (Х) = ^  I£К (Хг )]7= тт,

где V (л) - операция из 8-нормы (^нормы), т.е. из множества реализаций логической операций ИЛИ (И). В нечетком логическом выводе Сугено наиболее часто используются следующие реализации треугольных норм: вероятностное ИЛИ как 8-норма и произведение как ^норма.

Шаг 3. Композиция. В результате получаем такое нечеткое множество у , соответствующее входному вектору X:

у К

d

dr.

d_

Ч 2

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

Шаг 4. Дефазификация. Результирующее значение выхода у определяется как суперпозиция линейных зависимостей, выполняемых в данной точке X*n мерного факторного пространства. Для этого дефазифицируют нечеткое множество у , находя взвешенное среднее:

У =

Yiudj (X) • d.

j=1, m

Yldj

j=1 ,m

Для разрабатываемой модели было определено несколько объектных переменных и для них найдены функции принадлежности.

Функция принадлежности /и(Ъ, /) определяет объектную переменную "тип класса", где базовое значение Ь=[0;1] и нечеткие значения F = {плотный, средний, разреженный}.

Переменная Ь представляет собой коэффициент плотности класса p и рассчитывается следующим образом:

где rmax, rmm - расстояния, максимально и минимально удаленного от центра класса объекта (ЭИР); n - количество объектов рассматриваемого класса.

Функция принадлежности /и(Ъ, f) представлена 3 функциями, каждая из которых описывает одно нечеткое значение:

Z - функция для значения "плотный";

PI - функция для "средний";

S - функция для "разреженный".

Другая функция принадлежности /и(Ъ, f) определяет расстояние объекта до класса, где b=[0;1] и F = {центр, близко, граница, недалеко, далеко}.

База правил состоит из набора 15 правил. Приведем несколько из них:

Если x1 = "плотный" и x2 ="центр", то y = "в классе"

Если x1 = "плотный" и x2 = "близко", то y = "граница класса"

Если x1 = "средний" и x2 = "центр", то y = "в центре класса"

Если x1 = "средний" и x2 = "близко", то y = "в классе"

Если x1 = "разреженный" и x2 = "близко", то y = "в центре классе".

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

Модуль нечеткой кластеризации представляет собой отдельный модуль программного обеспечения "Интеллектуальный сетевой архив ЭИР" архивной службы, предназначенный для разбивки массива ЭИР на классы на основе частотных портретов, полученных в процессе работы модуля "Индексатор". Программное обеспечение реализовано средствами JDK 6 (Java SE Development Kit) в свободнораспространяемой среде разработки NetBeans 6.1.

В программном продукте "Кластеризатор G_SOM 2.0" реализован модифицированный алгоритм нейронной сети Кохонена и система нечеткого логического вывода Сугено. Кластеризатор позволяет пользователю выполнить следующие действия:

интерактивно настроить параметры подключения и подключиться к базе данных;

интерактивно изменить параметры нейронной сети;

ЭИР

Модуль индексатор

Подклю чение к БД Настройка параметров cd cd Кластеризация \> Дг Система нечеткого логического вывода

Просмотр результата

БД частотных словарей, системы классов, сети Кохонена, служебные

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

публикатор

Рис. 3. Работа программного обеспечения "Интеллектуального сетевого архива ЭИР"

запустить процесс кластеризации (четкой или нечеткой);

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

сохранить полученный результат в базе данных или в файле.

Таким образом, нечеткий нейросетевой кла-стеризатор на основе 80М прост в реализации, удобен в обучении, требует минимального участия эксперта, а так же позволяет выбирать оптимальное соотношение точность/полнота результата разбиения ЭИР на классы за счет настройки параметров нейронной сети и системы нечеткого логического вывода. При этом результаты работы сети 80М могут быть выражены не только числовыми значениями, но и нечеткими, то есть на естественном языке.

СПИСОК ЛИТЕРАТУРЫ

1. Nigma. Интеллектуальная поисковая система Internet. [Электронный ресурс]. URL: http:// www.nigma.ru (дата обращения 5.02.2010).

2. Гарант-Парк-Интернет. RCO КАОТ Комплекс аналитической обработки текста. [Электронный ресурс]. URL: http://www.rco (дата обращения 3.02.2010).

3. Селяев А.Г. Решение задач взвешивания терминов в процессах индексирования электронных информационных ресурсов// Информатика и экономика: сб. науч. тр. Ульяновск: УлГТУ. 2007. С. 97-104.

4. Островский А. А. Кластеризация документов интеллектуального проектного репозитария на основе FCM-метода // Программные продукты и системы: приложение к международному журн. "Проблемы теории и практики управления". Тверь. 2008. №4. С.55-56.

5. Толчеев В.О. Разработка и исследование новых модификаций метода ближайшего соседа// Приложение к журналу "Информационные технологии". 2005. № 2.

6. Харламов А.А. Фильтрация текстовой информации с помощью нейросетевых алгоритмов // Информационные технологии. 2003. №3. С. 9-1.

FUZZY NETWORK CLUSTERIZATION OF INFORMATION RESOURCES OF PROJECT REPOSITORY

© 2010 N.V. Korunova

Ulyanovsk State Technical University

In this article we solve a problem clusterization of document information archive based on a Kohonen network in the conditions of fuzzy relations between investigated objects.

Key words: clusterization of document information archive, Kohonen network, information resources.

Nadezhda Korunova, Assistant Lecturer at the Information Systems Department. E-mail: jng@ulstu.ru