Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lect_16.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
210.43 Кб
Скачать

Подсчёт поддержки кандидатов

Делая проход по исходным данным (сканируя наборы последовательностей), мы обрабатываем последовательности по одной. Для тех кандидатов, которые содержатся в обрабатываемой последовательности, увеличиваем значение поддержки на единицу. Другими словами, имея набор кандидатов C и набор исходных данных (последовательностей) d, мы ищем все последовательности из C, которые содержатся в d.

Рассмотрим на примерах как происходит поиск кандидатов в исходных последовательностях данных. Пусть исходный набор данных имеет вид:

Время транзакции

Объекты

10

1, 2

25

4, 6

45

3

50

1, 2

65

3

90

2, 4

95

6

Пусть max-gap = 30, min-gap = 5, размер окна равен нулю. Для последовательности-кандидата <(1,2)(3)(4)> мы сперва найдём вхождение элемента (1,2) в транзакции с временной отметкой 10, затем найдём элемент (3) в транзакции с отметкой 45. Разница во времени между двумя этими элементами составляет 35 дней, что больше чем значение max-gap. Данные значения нас не устраивают. Продолжаем поиск элемента (1,2) с временной отметки 15, потому что временная отметка для последнего найденного элемента (3) равна 45, а значение max-gap = 30. Если (1,2) встретился бы раньше временной отметки 15, то разница во времени между (3) и (1,2) всё равно была бы больше max-gap. Находим (1,2) в транзакции с временной отметкой 50. Так как это первый элемент последовательности-кандидата, то проводить сравнение max-gap не с чем. Двигаемся дальше. Так как (3) не встречается в ближайшие 5 дней (50 + min-gap), продолжаем поиск элемента (3) после значения 55. Находим этот элемент в момент времени 65. 65 - 50 < 30 (max-gap). Производим поиск элемента (4). Находим его в момент времени 90. 90 - 65 < 30, так что этот вариант нас устраивает. Мы установили, что последовательность-кандидат присутствует в исходной последовательности данных, значит поддержка последовательности-кандидата увеличивается на единицу.

Приведём пример поиска одно-элементной последовательности-кандидата в исходном наборе данных. В этот раз установим значение размера окна равным семи дням. Допустим, нам необходимо найти вхождение элемента (2,6) после временной отметки 20. Находим "2" в момент времени 50 и "6" в момент времени 25. Так как разница во времени между ними больше размера окна данное вхождение не считается, продолжаем поиск с момента времени 50 - 7 = 43. Помним, что объект "2" был найден в момент времени 50. Находим объект "6" в момент времени 95. Разница во времени всё ещё больше чем размер окна. Продолжаем поиск с позиции 95 - 7 = 88. Находим "2" в момент времени 90, при том, что объект "6" был найден в момент времени 95. Разница между ними меньше размера окна. На этом поиск окончен.Кандидат (2,6) присутствует в последовательности данных.

Иерархия данных. Таксономия

Таксономия отражает структуру в данных. В примере с книгами можно задать ориентированный граф, вершиной которого будет являться "Science Fiction", двумя узлами, связанными с вершиной будет "Asimov" и "Niven". Каждый из этих узлов будет связан с узлами "Foundation", "Foundation and Empire", "Second Foundation" и "Ringworld", "Ringworld Engineers" соответственно. Для учёта этих данных последовательность вида <(Foundation, Ringworld)(Second Foundation)> будет расширена до <(Foundation, Ringworld, Asimov, Niven, Science Fiction)(Second Foundation, Asimov, Science Fiction)>. После чего можно использовать алгоритм GSP для анализа полученной последовательности данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]