Обобщенные ассоциативные правила

УДК 004.62

ОБОБЩЕННЫЕ АССОЦИАТИВНЫЕ ПРАВИЛА

Т.М. Леденева, Е.А. Кретов

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

Ключевые слова: транзакция, ассоциативное правило, поддержка, достоверность

Введение

Растущие объемы информации, хранимые в современных базах данных, требуют новых «умных» алгоритмов анализа данных, способных выявлять связи и зависимости в данных. Данная исследовательская область получила название knowledge discovery in databases. Одним из часто используемых методов являются алгоритмы поиска ассоциативных правил.

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

Есть различные типы ассоциативных правил:

а) бинарные ассоциативные правила [4];

б) обобщенные [2] или многоуровневые ассоциативные правила, при построении которых элементы группируются согласно иерархии;

в) количественные ассоциативные правила [3], которые формируются с применением количественных или категориальных переменных.

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

Цель статьи заключается в исследовании подходов к построению ассоциативных правил.

1. Понятие бинарного ассоциативного правила

Пусть I - множество (набор) элементов некоторой природы, Т - множество транзакций, где каждая транзакция т - это набор элементов из I :тс I.

Количество элементов в наборе называется размером набора; набор, состоящий из k элементов, будем называть k-элементным набором.

Определение 1. Ассоциативным правилом называется выражение вида X ^ Y, где X,Y с I,X,Y Ф 0,X nY = 0.

Правило X ^ Y можно интерпретировать следующим образом: «каждая транзакция т, которая содержит X, так же содержит Y».

Для количественной оценки правил используются следующие характеристики [5]: поддержка (support) и достоверность (confidence). Они основываются на понятии поддержки набора элементов [1].

Леденева Татьяна Михайловна - ВГТУ, д-р техн. наук,

профессор, e-mail: dean@amm.vsu.ru

Кретов Евгений Алексеевич - ВГУ, аспирант, e-mail:

alpha90@vandex.ru

Определение 2. Поддержкой набора элементов 10 с I множеством транзакций Т называется величина

Supp (Io, T ) =

Определение 3. Поддержкой ассоциативного правила X ^ У множеством транзакций Т называется величина

5ирр(X ^ У, Т) = Бирр(Х и У, Т).

Определение 4. Достоверностью

ассоциативного правила X ^ У множеством транзакций Т называется величина

Бырр

Conf

Supp

Бпрр

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

Бырр (10), Бырр (X ^ У), Соп/ (X ^ У).

Поддержку можно интерпретировать как «вероятность того, что оба набора элементов X и У содержатся в транзакции», а достоверность как «вероятность того, что транзакция содержит У, если известно, что она содержит X».

Обе характеристики (поддержку и достоверность) можно рассматривать и в процентном соотношении.

2. Нахождение ассоциативных правил

Алгоритмы поиска ассоциативных правил предназначены для нахождения правил X ^ У. Поддержка и достоверность этих правил должны быть выше некоторых заранее определенных величин, которые называются соответственно минимальной поддержкой (штБырр) и минимальной достоверностью (штСоп/).

Пороговые значения штБырр и штСоп/ выбираются для уменьшения количества находимых правил. При большом значении поддержки будут найдены только очевидные правила. Но необходимо еще учитывать, что низкая величина поддержки приведет к нахождению громадного количества правил. Это потребует больших вычислительных мощностей, но позволит получить специфические правила, которые в [1] названы интересными.

Поиск ассоциативных правил чаще всего состоит из двух частей:

1. Поиск часто встречающихся наборов элементов, удовлетворяющих значению minSupp.

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

Базовым алгоритмом поиска ассоциативных правил является алгоритм Apriori [2].

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

Так как первый этап является затратным по ресурсам, то именно на его ускорение нацелены основные алгоритмы. Приведем утверждение, на котором основывается работа Apriori [6]:

Утверждение 1. (Свойство антимонотонности) Пусть I0 и I1 - два набора элементов I0, I1 с I, такие что I1 с I0. Тогда Supp (Io )> Supp (I).

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

Работу первого этапа алгоритма можно кратко представить в следующем виде: L1 — {Множество часто встречающихся 1 -элементных наборов} k — 1

while Lk ^ 0 do

k — k +1 { размер наборов на этом шаге}

Ck — AprioriGen (Lk _1) k k -1 {Строим множество k-

элементных наборов; у каждого все (k-1)-элементные "поднаборы" содержатся в Lk _1}

Lk — {c е Ck | Supp (c) > minSupp} {отбираем мн-во часто встречающихся k-элементных наборов Lk} end while

Result = ^ Lk

На втором этапе перебираются все полученные часто встречающиеся наборы. Для каждого такого набора F путем перебора всевозможных X с F где

Conf (X ^ Y) > minConf.

Если известна поддержка набора и множества, находящегося в условии правила, то можно рассчитать достоверность. Известна поддержка самого набора F, лежащее в условии правила его подмножество X тоже является часто встречающимся в силу свойства антимонотонности, следовательно, его поддержка тоже известна. Тогда достоверность легко можно подсчитать.

Утверждение 2. Пусть заданы два ассоциативных правила X ^ Y и X' ^ Y' такие, что X иY = X'u Y' и X с X'. Тогда Conf (X ^ Y) < Conf (X' ^ Y').

Действительно

Conf

подмножеств

X ^ Y,

ищутся все правила вида X и Y = F и

Supp

= Conf (X' ^ Y').

Бырр

В соответствии с данным утверждением стратегия перебора заключается в том, чтобы подмножества ^ от меньших к большим. Если мы обнаружили, что для какого-то X поддержка X ^ У не меньше заданного уровня, то это значит, что для

X' X с X'

всех где это условие тоже

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

правила к ответу.

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

3. Обобщенные ассоциативные правила

Главная особенность обобщенных

ассоциативных правил - это введение иерархической структуры и отношений предок/потомок между элементами.

Введем некоторые определения.

Определение 5. Таксономией (иерархией) элементов - это лес направленных деревьев; элементы транзакций - это их листья, а внутренние узлы являются группами элементов.

Иерархическая структура может дать следующие преимущества [1]:

1. Поиск ассоциаций не только между отдельными элементами, но и между разными уровнями иерархии.

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

3. Данные о группах элементов можно применять для отсечения «неинтересных» правил.

Пусть I ={/1, /2, /3,..., /„} - множество

элементов, являющихся лесом направленных деревьев. Тогда дуги в I являются зависимостями между элементами. Предположим, что есть некоторая иерархия в множестве I. При наличии дуги от а к Ь, будем говорить, что а - предок Ь и Ь -потомок а {а - это обобщение Ь}.

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

т с I

верно следующее утверждение:

Определение 6. Транзакция является расширенной, если она расширена предками всех элементов, входящих в эту транзакцию.

Определение 7. Обобщенным ассоциативным правилом называется импликация X ^ У, где X с I,У с I, X пУ = 0 , при этом ни один из

элементов, входящих в набор У, не должен являться предком любого элемента, входящего в X.

Определение 8. Правило

X ^ Y

имеет

С,. [Conf (X . Y)] = ^X...X

поддержку Supp, если Supp -100% расширенных транзакций содержат X u Y,

Supp (X ^ Y )= Supp (X и Y). Правило X ^ Y выполняется с достоверностью Conf, если Conf -100% расширенных транзакций, содержащих X , также содержат Y:

Conf

Достоверность правила характеризует, вероятность того, что при выполнении X выполняется Y.

Правило X ^ Y является обобщенным, потому что содержащиеся в нем элементы могут

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

Для нахождения обобщенных ассоциативных правил вводится понятие «интересного» правила [1].

Определение 9. Пусть Z - это предок Z, где Z и Z - множества элементов, принадлежащих (Z, Z с I). -

таксономии v ' Z является предком Z тогда

и только тогда, когда Z можно вывести из Z с помощью замены одного или нескольких элементов на их предков. Будем называть правила X ^ Y, X ^ Y, X ^ Y предками правила X ^ Y.

Определение 10. Правило X ^ Y называется

X Y

ближайшим предком правила ' если не

X' ^ у' r г

существует такого правила X 1 ' что X' ^ Y' -

это предок X ^ Y и X ^ Y- это предок X' ^ Y'.

X ^ Y X ^ Y Для правил можно ввести

аналогичные определения.

Определение 11. Пусть X ^ Y _ правило и Z = X u Y , тогда Supp (X и Y ) = Supp (Z). Тогда

E~z [ Supp (Z)] будет называться ожидаемым

значением Supp(Z) относительно Z. Пусть

Z ={ZP Z2 , Zn } , Z — Zi, Zi+1,..., Zn } Л < i < n.

Тогда верно следующее:

Et[Supp (Z)] = ^ X...X fS^i X Supp (Z).

Supp ( z1 ) Supp (Zt) v '

Также E1 ^ - [Conf (X ^ Y)] определим как

ожидаемое значение достоверности правила X ^ Y относительно X' ^ Y'. Пусть

Y ={ Уl, У 2, Уз — Ут },

Y = {yl,...,yj,Уj+l,...,Ут},1 < j < m. Тогда можно определить:

Supp (yj Supp (yj

-XConf (X ^ Y).

Определение 12. Правило

X ^ Y

называется

X ^ Y если больше

X ^ Y

R-интересным относительно правила-предка в том случае, когда поддержка правила X ^Y в R раз больше ожидаемой поддержки правила относительно правила-предка или достоверность правила X ^Y в R раз ожидаемой достоверности правила относительно правила-предка.

Определение 13. Если у правила нет предков или оно R -интересно относительно всех своих ближайших предков, то оно является интересным.

Определение 14. Правило является частично интересным при отсутствии у него предков или в том случае, когда оно R-интересно относительно любого своего ближайшего предка.

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

Один из этих алгоритмов выглядит следующим образом [1]:

Рассчитать I* множества предков элементов для всех элементов;

L1 = {Часто встречающиеся множества};

for

{

Ck = {Поиск кандидатов мощностью k на основе

Lkk_1 };

if k = 2 then удалить тех кандидатов из Ck, которые содержат элемент и его предка;

Пометить как удаленные множества предков элемента, который не является кандидатом;

для всех транзакций t е D

{

для каждого элемента x е t добавить всех предков x _*

из I к t;

Удалить дубликаты из транзакции t; if (t не помечена как удаленная) и (|t| > k ) then {для всех кандидатов c е Ck if c с t then c.count++;

если в транзакцию t не попал ни один кандидат, то

транзакция помечается удаленной; } }

// Отбор кандидатов

Lk = {c е Ck | c.count > minsupp}; }

Результат = U kLk;

4. GIT-дерево

Рассмотрим дерево G, каждая вершина которого представлена тремя полями:

1. Множество элементов I.

2. Множество транзакций T, содержащих I.

3. Минимальная поддержка I (обозначим ее minSupp(I)).

Вершину будем обозначать следующим образом: Iх T (I) .

minSupp

Дуга образуется соединением вершины k-го уровня (обозначим ее X) с вершиной (k+1)-го уровня (обозначим ее Y), если они имеют одинаковый k-префикс (k-префикс множества элементов X - это

набор {X[1],...,X [k]} ) и Y не содержит элемента,

который является предком любого элемента из X.

Алгоритм поиска правил с использованием GIT-дерева представим в виде [7]:

Входные данные: Иерархическая база данных D и минимальная достоверность minConf.

Создание таблицы минимальных поддержек (minSupp) IMS;

Создание узла элемента и предка в дереве G; SI=Sort(IMS); /*сортировка IMS по возрастанию minSupp */ F=F-gen(SI, D, IA);

Lr = Первый уровень GIT-дерева, содержащий узлы X х T (X) .

minSupp

EnumerateGeneralizedFIs (Lr).

//Код функции Enumerate Generalized FIs

Enumerate Generalized FIs (Lr).

foreach( X х T (X) e Lr) do

minSupp

{

lc = 0;

foreach( X х T (X) e Lr с Y после X) do

minSupp

{

X ' = X и Y; If

((Vx e X') && (-ф e X'): parent (x) = y) t = T (X )n T (Y); minSupp (X') =

= min

L = L и

X 'x T 1,minSupp

Enumerate Generalized FIs ( Lc ) ;

}

}

Эксперименты показывают, что

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

Заключение

В данной статье рассмотрены основные типы ассоциативных правил и алгоритмы их поиска. Для поиска бинарных правил используется алгоритм Apriori. Особое внимание уделено поиску обобщенных ассоциативных правил. Их отличает наличие иерархии, присущей объектам в реальной жизни (например, классификация продуктов различных производителей). Для поиска этих правил введено понятие интересных правил, предложен алгоритм их поиска.

Литература

1. С.В. Ларин. Выявление обобщенных ассоциативных правил. Exponenta Pro. Математика в приложениях, 2003, №3, с. 34-38.

2. R. Srikant, R. Agrawal. Mining Generalized Association Rules. In Proc. of the 21st International Conference on VLDB, 1995, с. 406-419.

3. M. Martínez-Ballesteros, F. Martínez-Álvarez, A. Troncoso, J.C. Riquelme. Selecting the best measures to discover quantitative association rules. Neurocomputing 126, 2014. - с. 3-14.

4. V.R. Vedula, S.Thatavarti. Binary Association Rule Mining Using Bayesian Network. IPCSIT, vol.4, 2011, с. 171176.

5. T. Hellstrom. Association Rules for Learning Behavioral Mappings in Robotics. UMINF-03.12, 2003, с. 118.

6. S. Rao, P. Gupta. Implementing Improved Algorithm Over APRIORI Data Mining Association Rule Algorithm. IJCST, Vol.3, 2012, с. 489-493.

7. B. Vo, B. Le. Fast Algorithm for Mining Generalized Association Rules. IJDTA, Vol. 2, №3, 2009, c. 1-12.

8. Проблемы разработки интеллектуальных систем многоальтернативного моделирования [Текст] / С. Л. Подвальный, Т. М. Леденева, А. Д. Поваляев, Е. С. Подвальный // Вестник Воронежского государственного технического университета. - 2013. - Т. 9. - № 3-1. - С. 1923.

9. Глекова, Н. Л. Технология реализации мониторинга научно-образовательной и инновационной деятельности [Текст] / Н. Л. Глекова, О. Я. Кравец, А. Д. Поваляев // Вестник Воронежского государственного технического университета. - 2005. - Т. 1. - № 5. - С. 61.

10. Podval'ny S.L., Ledeneva T.M. Intelligent modeling systems: Design principles // Automation and Remote Control. 2013. 74 (7), pp. 1201-1210

Воронежский государственный технический университет Воронежский государственный университет

GENERALIZED ASSOCIATION RULES T.M. Ledeneva, E.A. Kretov

The article is devoted to association rule mining. Algorithms of association rule mining which are based on support and confidence are introduced. Features of generalized association rule mining are identified Key words: transaction, association rule, support, confidence