Научная статья на тему 'Алгоритм классификации нечетких многомерных объектов'

Алгоритм классификации нечетких многомерных объектов Текст научной статьи по специальности «Математика»

CC BY
69
11
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Герман Олег Витольдович, Дорожкина Наталия Николаевна, Самко А. Р.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Алгоритм классификации нечетких многомерных объектов»

УДК 681.3

Герман О. В., доцент; Дорожкина Н. Н., доцент;. Самко А. Р, аспирант АЛГОРИТМ КЛАССИФИКАЦИИ НЕЧЕТКИХ МНОГОМЕРНЫХ ОБЪЕКТОВ

The paper gives a new method of multidimensional fuzzy classification, which can be reduced to solving a linear disjunctive inequality system. The method develops the ideas of authors for realization of a retrieving mechanism based on the tree with the vertices, associated with linear inequalities, directing searching process to demanded final node. The retrieving process consists in transition from one node to another in dependence of fulfillment of the inequalities associated with the nodes. A specificity of the multidimensional fuzzy classification consists in the fact that the suggested algorithm of the retrieving tree building is oriented at minimization of the discrepancy between theoretical and experimental frequencies with which the objects are classified to given clusters. An algorithm for solving a linear disjunctive inequality system is built and theoretically approved. This algorithm is essential for building a retrieving tree. It is based on the iterative process of solving linear inequality systems by means of the residual elimination method.

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

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

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

F (х) = а0 + а^ + а2 Х2 +... + апхп.

Для каждого вектора хк вводим булеву переменную qk е 0,1 и два неравенства:

дк ^ ао + а1Хк + а2х| +... + апхП > 0,

ао + а1Хк + а2х^ +... + апх',\ дк. (1)

Коэффициенты ai и величины дк должны определяться из следующего общего условия:

X^к -Рк)2 ^ ^ aо,ап? (2)

к

Функционал (2) преобразуется к линейной целевой функции после возведения в квадрат выражения под знаком суммы:

X(дк * Рк + р2) ^=

к

-X(Чк* Рк + Р2к) ^= (3)

к

(1-2 Рк)* qк) ^ min.

к

Построение системы линейных дизъюнктных неравенств. Каждое из неравенств (1) приводится к виду дизъюнктного неравенства:

^ ао + а^ + «2х| +... + апхП > 0 = дк = 0 V «0 + а^ + «2х| +... + апхП > 0 =

qk >0 V дк >0 V а0 + а1х1к + а2х2 +... + апхП > 0

а0 + а1х1к + а2х| +... + апх^к > 0 ^ дк =

а0 + а1х1к + а2х| +... + апх^к < 0 V дк = 1 =

а0 + а1хк +... + апхп, < 0 Vк > 1V -дк >-1.

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

Алгоритм. Сначала рассмотрим алгоритм для случая простых неравенств. Итак, начнем с того, что покажем, как отыскать коэффициенты а! и а2 в случае двумерных векторов. Пусть дана табл. 1:

Таблица 1

Х1 2 -1 0 2 3 6 1 4

Х2 4 3 1 5 -2 3 1 3

У > 0 < 0

(4)

Запишем следующую систему неравенств:

2а1 + 4а2 > 0, -1а1 + 3а2 > 0, 0а1 + 1а2 > 0, 2а1 + 5а2 > 0, 3а1 - 2а2 < 0, 6а1 + 3а2 < 0, 1а1 + 1а2 < 0, 4а1 + 3а2 < 0.

Неравенства (4) составлены согласно описанному принципу. Если найти коэффициенты а1 и а2, то все множество записей будет разделено нужным нам образом на две условные половины: «0» и «1». Имеются две проблемы. Во-первых, следует избавиться от жестких неравенств («<»). Это сделать нетрудно, если ввести достаточно малую величину Е>0, такую что с1а1 + с2а2 <0 можно заменить на с1а1 + с2а2 <- Е.

Заметим, что такая замена может сделать систему неравенств несовместной, однако и исходная система может быть несовместна, так что наша основная задача - разрешить проблему несовместности системы неравенств. В иллюстративных целях зададим Е, = 1 и приведем все неравенства к виду «>»:

2а1 + 4а2 > 0,

-1а1 + 3а2 > 0,

0а1 + 1а2 > 0,

2а1 + 5а2 > 0,

-3а1 + 2а2 > 1,

-6а1 - 3а2 > 1,

-1а1 - 1а2 > 1,

-4а1 - 3а2 > 1.

Для решения мы используем стратегию устранения невязок (СУН) [2], которая приводит к решению: а1 = -2, а2 = 1.

Итак, разделяющее неравенство получено в форме

(5)

-2х1 + х2 > 0.

(6)

Пусть нужно провести «разбивку» точек в соответствии с табл. 2.

Таблица 2

2а3 + 4а4 > 0, -1а3 + 3а4 > 0, 0а3 - а4 > 1, -2а3 - 5а4 > 1, 3а3 - 2а4 > 0, 6а3 + 3а4 > 0, -а3 - а4 > 1, -4а3 - 3а4 > 1.

Решая систему неравенств (7), мы столкнулись со следующей ситуацией. Невязки невыполнимы вместе с базисными неравенствами. Следовательно, система противоречива. Это означает, что нельзя подобрать переменные а3, а4 в (7), чтобы разбить нужным образом записи на подмножества «0» и «1». Поступим так: просто исключим невязки, которые с базисными неравенствами дают противоречие.

В итоге не останется ни одной невязки и процесс завершится. Найдем

z1 = z2 = 0, а3 = 2, а4 = -1. и мы получим снова разделяющее неравенство: 2x1 - х2 > 0. (8)

Однако одним неравенством (8) нам обойтись не удается, так как оно неверно разделяет точки, соответствующие исключенным неравенствам. Неравенство (8) разбивает точки так, как показано на рис. 1.

(2, 4) (3, -2) (2, 4) (-1, 3)

(-1, 3) (6, 3) (3,-2) (0, 1)

(0, 1) (1, 1) (6, 3) (2, 5)

(2, 5) (4, 3) (1, 1)

(4, 3) (в )

А

Х1 2 -1 0 2 3 6 1 4

Х2 4 3 1 5 -2 3 1 3

У > 0 < 0 > 0 < 0

Снова составляем систему неравенств (для переменных а3 и а4).

Рис. 1. Разбиение точек на множества

Легко видеть, что ни множество точек на ветви «А», ни множество на ветви «В» не являются «правильными» в смысле рис. 1. Поэтому нам потребуется еще как минимум два неравенства (по одному на каждую из ветвей «А» и «В» на рис. 1), чтобы правильно «развести» точки. Более подробное изложение можно найти в [1].

Решение задач, формализуемых системами линейных дизъюнктных неравенств, соответст-

вует в целом решению систем простых неравенств и рассматривается для случая, имеющего следующий общий вид:

(1)

X > 0;

(2) x2 > 0 :

x„ > 0;

(2n)

-X >— — X2 > -a2 ;

- Xn >—an■.

(9)

(a j > 0, j = 1, n);

(2n+1) (fl > alw) v ... v (> a^);

(2n+2) (fl2 > a^) v ... v f > aW20);

"w20J

(2n+k) (fik > aló) v ... v f > akWk0).

Неравенства с (1) по (2n) системы (9) назовем базовым симплексом.

Каждое l-ое дизъюнктное неравенство состоит из простых неравенств f > alt0, где f означает линейную форму от Xj (j = 1, n), то есть

f

t — at1X1 + at2X2 + ... + atnXn .

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

Приведем алгоритм СУН для решения дизъюнктных неравенств.

Пусть дано некоторое дизъюнктное неравенство:

а11х1 +...+ а1пхп > Ь1 V а21х1 +...+ а2пхп > Ь2 V... V V ааХ1 +...+ а^п > bt.

Резольвентой этого дизъюнктного неравенства (в предположении, что х) > 0, у = 1, п) называется простое неравенство вида

тах(аи; а21; ...; atl)xl +...+ тах(а1п; а2п; ...; аы)х2 > min(bl; Ь2; ...; Ь).

Алгоритм СУН реализуется следующим образом:

1. 1 = 1 (1 - номер блочной итерации).

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

ху > 0, у = 1, п до тех пор пока:

(A) не будут удалены все невязки;

(B) не будет получена стоп-невязка.

Для ускорения сходимости СУН для поиска переменной и невязки, из которой определяется подстановка, применяется градиентный метод. При этом подстановки проводим одновременно как в систему из резольвент, так и в основную систему.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

В случае (В) устанавливается невыполнимость системы. В случае (А) - переход на следующий шаг.

3. Если в основной системе нет невязок, то решение найдено, иначе повторение шага 2.

Теорема. Стратегия устранения невязок финитна при решении задачи с дизъюнктными ограничениями [2].

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

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

Литература

1. Герман, О. В. Теория информационных процессов и систем. / О. В. Герман, Н. Н. До-рожкина, — Мн.: БГТУ, 2007. — 222 с.

2. Дорожкина, Н. Н. Математические методы и программные средства для исследования и решения задач, формализуемых системами линейных дизъюнктных неравенств: Автореф. дис... канд. физ.-мат. наук. / Н. Н. Дорожки-на, — Ставрополь: СГУ, 2003.

i Надоели баннеры? Вы всегда можете отключить рекламу.