АЛГОРИТМ ПОИСКА АССОЦИАТИВНЫХ ПРАВИЛ FP-GROWTH
Пальмов С.В.
кандидат технических наук доцент кафедры «Информационные системы и технологии» Поволжский государственный университет телекоммуникаций и
информатики Россия, г. Самара Французова Е.Н.
студент
4 курс, факультет «Информационные системы и технологии»
Россия, г. Самара
ASSOCIATION RULES MINING ALGORITHM FP-GROWTH
Palmov S.V.
Candidate of Science, assistant professor of Povolzhskiy State University of Telecommunication & Informatics
Russia, Samara Frantsuzova E.N.
student
4th year, faculty «Information Systems and Technology»
Russia, Samara
АННОТАЦИЯ
В данной статье будет описан один из основных алгоритмов поиска ассоциативных правил. Дана краткая характеристика алгоритма FP-Growth и его работа. Так же будет проводиться сравнение алгоритм FP-Growth с Apriori.
ABSTRACT
This article will describe one of the basic algorithms for finding Association rules. A brief description of the algorithm FP-Growth and its work. Also will compare the algorithm of FP-Growth with Apriori.
Ключевые слова :FP-Growth, Apriori, FP-дерево, Frequent-Pattern Tree. Keywords : FP-Growth, Apriori, FP-tree, Frequent-Pattern Tree.
В предыдущей статье были описаны основные алгоритмы поиска ассоциативных правил [1]. В данной статье будет рассмотрен алгоритм FP-Growth (FPG).
FPG работает, в целом, более эффективно, чем Apriori. Главное отличие первого от последнего - предварительная обработка исходного набора данных, результатом которой является достаточно компактная древовидная структура - Frequent-Pattern Tree (дерево популярных предметных наборов, FP-дерево).
Основными достоинствами FPG являются: 1. Сжатие исходного набора данных в компактную структуру, что обеспечивает эффективное и полное извлечение часто встречающихся предметных наборов.
2. В процессе построения FP-дерева применяется технология разделения и захвата (divide and conquer). Она позволяет выполнить декомпозицию одной сложной задачи на множество более простых.
3. Процедура генерации наборов-кандидатов занимает меньше времени.
Основная цель алгоритма - найти в наборе данных все имеющиеся часто встречающиеся наборы с поддержкой, которая превышает минимально заданную.
Рассмотрим работу алгоритма FPG на конкретном примере. Пусть имеется исходный набор (табл. 1) [3]
Таблица 1
Исходный набор данных
N Предметный набор
1 a b c d e
2 a b c
3 a c d e
4 b c d e
5 b c
6 b d e
7 c d e
Процесс работы алгоритм FPG
1. На первом этапе строится FP-дерево представляющее информация о часто встречающихся предметных наборах.
1.1. Производится сканирование исходного набора данных и выделяется множество часто встречающихся наборов элементов, то есть наборов, у которых поддержка больше или равна минимальной.
1.2. Строится FP-дерево, в котором наборы элементов будут упорядочиваться по убыванию значений их поддержки. [2]
Правило построения
Правило построения можно сформулировать следующим образом: если в дереве встречается одноименный с элементом узел, то новый узел не создаётся, а индекс соответствующего узла увеличивается на единицу; иначе - создаётся новый узел с индексом 1.
Таким образом, после первого сканирования исходного набора, алгоритм построит компактное FP-дерево, которое представляет информацию о часто встречающиеся наборах элементов. Оно позволяет эффективно извлекать данные при втором проходе исходного набора данных.
2. Второй этап заключается в извлечении из FP-дерева часто встречающихся наборов элементов.
2.1. Выбирается какой-либо элемент из исходного набора, и находятся все возможные пути, которые ведут к узлам этого элемента. Далее производим подсчёт для каждого пути, сколько раз этот элемент встречается в нём. Например, для элемента а эта запись будет выглядеть так (сЬёва, 1), (сЬа, 1) и (сёва, 1).
Литература:
1. Пальмов С.В., Французова Е.Н. Алгоритмы поиска ассоциативных правил - режим доступа к изд.: http://modem-j. ru/domains_data/files/9/Palmov%20 S.V. %20 (o snov noy%20razdel) .pdf
2. Д. О. Кириченко, М. А. Артемов. Оптимизация входных данных в задаче поиска шаб-
2.2. Удаляется сам элемент (суффикс набора) из ведущих к нему путей, т.е. (cbdea, cba, cdea) и остаются только (cbde, cb, cde). Проводим подсчет совпадений элементов в префиксах путей и располагаем их в порядке убывания, благодаря чему образуется новая совокупность наборов.
2.3. На его основе строится новое FP-дерево -условное FP-дерево (conditional FP-tree); оно связано с одним объектом (в нашем случае, a).
2.4. В этом FP-дереве присутствуют все узлы, поддержка которых больше или равна заданного минимального значения. Индексы узла суммируются, если элемент встречается с частотой, большей 2.
2.5. Начиная с вершины, фиксируются пути до узлов, поддержка которых больше или равна заданной. Элемент, удалённый на втором шаге, возвращается назад, и рассчитывается результирующее значение поддержки.
Сравнение алгоритмов
FPG обладает большей эффективностью, чем Apriori. Удобен он тем, что можно представить исходный набор данных в виде FP-дерева. Если в нём каждый элемент встречается многократно, то FP-дереве каждый элемент изображается в виде узла, индекс которого говорит о частоте встречаемости элемента. Т.е., другими словами, если элемент встречается 200 раз, то можно создать узел в FP-дереве с индексом 200, тем самым упростив задачу.
Сравнительные исследования классического алгоритма Apriori и FPG показали, что с увеличением размеров исходного набора данных, временные затраты на поиск часто встречающихся наборов элементов растут для FPG намного медленнее,
лонов и ассоциативных правил - режим доступа к изд.:
http://www.vestnik.vsu.ru/pdf/analiz/2014/04/2014-04-09.pdf
3. FPG - альтернативный алгоритм поиска ассоциативных правил - режим доступа к изд.: https://basegшup.ш/commumty/aIlides/fpg.
чем для Apnon (рис. 1) [3]
Рисунок 1. Результаты сравнения