
- •Многомерная модель данных.
- •Концептуальное многомерное представление
- •3. Тест fasmi
- •4. Архитектура olap-систем
- •Интеллектуальный анализ данных
- •Интеллектуальный анализ данных
- •1. Добыча данных — Data Mining
- •2 Задачи Data Mining
- •2.1. Классификация задач Data Mining
- •2.2. Задача классификации и регрессии
- •2..3. Задача поиска ассоциативных правил.
- •2.4. Задача кластеризации
- •Классификация и регрессия
- •1. Постановка задачи
- •Представление результатов
- •1. Правила классификации
- •2. Деревья решений
- •3. Математические функции
- •3. Методы построения правил классификации
- •3.1. Алгоритм построения 1Rправил
- •5.3.2. Метод Naive Bayes
- •4. Методы построения деревьев решений
- •4.1. Методика "разделяй и властвуй"
- •4.2. Алгоритм покрытия
- •5. Методы построения математических функций
- •5.1. Общий вид
- •5.2. Линейные методы. Метод наименьших квадратов
- •Карта Кохонена
- •Поиск ассоциативных правил.
- •1. Постановка задачи 6.1.1. Формальная постановка задачи
- •6.2. Сиквенциальный анализ
- •3.1. Алгоритм Apriori
- •6.3.2. Разновидности алгоритма Apriori
- •Глава 7. Кластеризация.
- •7.1. Постановка задачи кластеризации
- •7.1.1. Формальная постановка задачи
- •7.1.2. Меры близости, основанные на расстояниях, используемые в алгоритмах кластеризации
- •7.2. Представление результатов
- •7.3. Базовые алгоритмы кластеризации
- •7.3.1. Классификация алгоритмов
- •7.3.2. Иерархические алгоритмы гломеративные алгоритмы
- •Дивизимные алгоритмы
- •7.3.3. Неиерархические алгоритмы
- •Алгоритм k-means (Hard-c-means)
- •Алгоритм Fuzzy c-Means
- •Кластеризация по Гюстафсону-Кесселю
- •7.4. Кластеризация данных при помощи нечетких отношений
- •7.4.1. Анализ свойств нечетких бинарных отношений применительно к анализу данных
- •Сравнение данных
- •Отношение альфа-толерантности
- •7.4.2. Отношение альфа-квазиэквивалентности
- •Построение шкалы отношения а-квазиэквивалентности как алгоритм анализа данных
- •Об использовании шкалы а-квазиэквивалентности для анализа данных
- •Примеры анализа данных при помощи шкалы а-квазиэквивалентности
Поиск ассоциативных правил.
1. Постановка задачи 6.1.1. Формальная постановка задачи
•Одной из наиболее распространенных задач анализа данных является определение часто встречающихся наборов объектов в большом множестве наборов.
Опишем эту задачу в обобщенном виде. Для этого обозначим объекты, составляющие исследуемые наборы (itemsets), следующим множеством:
I= {i1, i2...,ij, ...,in},
ij — объекты, входящие в анализируемые наборы; п — общее количество объектов.
В сфере торговли, например, такими объектами являются товары, представнные в прайс-листе (табл. 6.1).
Таблица 6.1
Идентификатор |
Наименование товара |
Цена |
0 |
Шоколад |
30.00 |
1 |
Чипсы |
12.00 |
2 |
Кокосы |
10.00 |
3 |
Вода |
4.00 |
4 |
Пиво |
14.00 |
5 |
Орехи |
15.00 |
Они соответствуют следующему множеству объектов:
I= {шоколад, чипсы, кокосы, вода, пиво, орехи}.
Наборы объектов из множества I, хранящиеся в БД и подвергаемые анализу, называются транзакциями. Опишем транзакцию как подмножество множества I:
T = {ij| ij принадлежит I}.
Такие транзакции в магазине соответствуют наборам товаров, покупаемых потребителем и сохраняемых в БД в виде товарного чека или накладной. В них перечисляются приобретаемые покупателем товары, их цена, количество и др. Например, следующие транзакции соответствуют покупкам, совершаемым потребителями в супермаркете:
Т1 = {чипсы, вода, пиво};
Т2 = {кокосы, вода, орехи}.
Набор транзакций, информация о которых доступна для анализа, обозначим следующим множеством:
где m — количество доступных для анализа транзакций.
Например, в магазине таким множеством будет:
D= {{чипсы, вода, пиво},
{кокосы, вода, орехи},
{орехи, кокосы, чипсы, кокосы, вода},
{кокосы,орехи, кокосы}}.
Для использования методов Data Mining множество D может быть представлено в виде табл. 6.2.
Таблица 6.2
|
Номер транзакции |
Номер товара |
Наименование товара |
Цена | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
0 |
1 |
Чипсы |
12.00 | ||||||||||||||||||||||||||||||||||||||||
|
0 |
3 |
Вода |
4.00 | ||||||||||||||||||||||||||||||||||||||||
|
0 |
4 |
Пиво |
14.00 | ||||||||||||||||||||||||||||||||||||||||
|
1
1
5 Орехи
15.00
2
2 Кокосы
10.00
2
1 Чипсы
12.00
2
2
Кокосы
10.00
2
3 Вода
4.00
3
2 Кокосы
10.00
3
5 Орехи
15.00
3
2
Кокосы
10.00 |
2 |
Кокосы |
10.00 | ||||||||||||||||||||||||||||||||||||||||
|
1 |
3 |
Вода |
4.00 | ||||||||||||||||||||||||||||||||||||||||
|
1 |
5 |
Орехи |
15.00
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
2 |
5 |
Орехи |
15.00 |
2 |
2 |
Кокосы |
10.00 |
2 |
1 |
Чипсы |
12.00 |
2 |
2 |
Кокосы |
10.00 |
2 |
3 |
Вода |
4.00 |
3 |
2 |
Кокосы |
10.00 |
3 |
5 |
Орехи |
15.00 |
3 |
2 |
Кокосы |
10.00 |
Множество транзакций, в которые входит объект ij,обозначим следующим образом:
В данном примере множеством транзакций, содержащих объект вода, является следующее множество:
Dвода={{чипсы, вода, пиво},
{кокосы, вода, орехи},
{орехи, кокосы, чипсы, кокосы, вода}}.
Некоторый произвольный набор объектов (itemset) обозначим следующим образом:
Например,
F = {кокосы, вода}.
Набор, состоящий из к объектов, называется k-элементным набором (в данном примере это 2-элементный набор).
Множество транзакций, в которые входит набор F, обозначим следующим образом:
В данном примере:
D{кокосы, вода} = { {кокосы, вода, орехи},
{орехи, кокосы, чипсы, кокосы, вода}}.
Отношение количества транзакций, в которое входит набор F, к общему количеству транзакций называется поддержкой (support) набора F и обозначается Supp(F):
Для набора {кокосы, вода} поддержка будет равна 0,5, т. к. данный набор входит в две транзакции (с номерами 1 и 2), а всего транзакций 4.
При поиске аналитик может указать минимальное значение поддержки интересующих его наборов Suppmin. Набор называется частым (large itemset), если значение его поддержки больше минимального значения поддержки, заданного пользователем:
Supp(F)>Suppmin.
Таким образом, при поиске ассоциативных правил требуется найти множество всех частых наборов:
В данном примере частыми наборами при Suppmin = 0,5 являются следующие:
{чипсы} Suppmm= 0,5;
{чипсы, вода} Suppmin = 0,5;
{кокосы} Suppmin=0,75;
{кокосы, вода} Suppmin= 0,5;
{кокосы, вода, орехи} Suppmin = 0,5;
{кокосы, орехи} Suppmin = 0,75;
{вода} Suppmi„=0,75;
{вода, орехи} Suppmin=0,5;
{орехи} Suppmin=0,75.