Алгоритм UP-Span

искусственный интеллект сбор данных

Написано впереди: анализ шаблонов эпизодов отличается от анализа шаблонов наборов элементов. Его сложность намного больше, чем набор элементов. Прежде всего, «сюжет» означает возникновение серии событий. Несколько наборов элементов генерируются в течение определенного периода времени, и эти наборы элементов могут генерироваться последовательно, возникать и, возможно, в одно и то же время. То есть анализ эпизодов должен учитывать не только горизонтальную последовательность событий, но и объединять вертикальный набор событий.

Mining High Utility Episodes in Complex Event Sequences

определение

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

Частый класс

  • Простая последовательность событий (Simple event sequence):Предполагатьε={E1,E2,,Em}\varepsilon = \{E_1, E_2, \dots, E_{\rm m}\}это конечное множество событий, простая последовательность событийSS=<(E1,T1),(E2,T2),,(Em,Tm)>SS = <(E_1, T_1), (E_2, T_2), \dots, (E_{\rm m}, T_{\rm m})>это набор событийаккуратныйпоследовательность, где каждое событиеEiеεE_{\rm i} \in \varepsilonвсе в один момент времениTiеN+T_{\rm i} \in N^+Связанный. Например, на следующем рисунке (Рис. 1.):

    A simple event sequence

  • Простой сюжет (Simple episode): простой сюжетальфа\alphaпредставляет собой множество непустыхаккуратныйКоллекция событий. Например, на рисунке (Рис. 1.)<(A),(C)><(A), \, (C)>просто простой сюжет

  • Набор одновременных событий (Simultaneous event set): набор одновременных событийSE=(E1,E2,,Em)SE = (E_1, E_2, \dots, E_{\rm m})в тот же момент времениTiT_{\rm i}Набор событий, произошедших в.

  • сложная последовательность событий (Complex event sequence): сложная последовательность событийCS=<(SE1,T1),(SE2,T2),,CS = <(SE_1, T_1), (SE_2, T_2), \dots, (SEn,Tn)>(SE_{\rm n}, T_{\rm n})>это серияаккуратныйНабор событий содержит несколько одновременных наборов событий, и каждый одновременный набор событий формирует последовательность событий. Например, как показано на следующем рисунке (Рисунок 2.):

    A complex event sequence

  • длина и размер (Length and Size): сюжет событияальфа\alphaДлина определяется как (фактически количество событий в наборе), называемоеkk-эпизод; при этом сюжет событияальфа\alphaРазмер равен количеству одновременных наборов событий в эпизоде. Например:<(AB),(C)><(AB), (C)>представляет собой 3-серийный размер 2

  • происходить(Occurrence): Учитывая сюжет , когда 1) сюжетальфа=<(SE1),(SE2),,(SEm)>\alpha = <(SE_1), (SE_2), \dots, (SE_{\rm m})>произошло в период времени [Ts,TeT_{\rm s}, T_{\rm e}]; 2) сюжетальфа\alphaпервый одновременный набор событийSE1SE_1произошло вTsT_{\rm s}момент времени, последний набор одновременных событийSEmSE_{\rm m}произошло вTeT_{\rm e}момент времени, так называемый сюжетальфа\alphaпроисходит в промежутке времени [Ts,TeT_{\rm s}, T_{\rm e}] начальство. Среди них сюжетальфа\alphaМножество всех периодов времени возникновенияoccSet(альфа)occSet(\alpha). Например: на рисунке (Рисунок 2.)occSet(<(AB),(C)>)={[1,2],[1,3],[1,6],[1,7],[5,6],[5,7]}occSet(<(AB), (C)>) = \{[1,2], [1,3], [1,6], [1,7], [5,6], [5,7]\}

  • Кратчайший срок (Minimal occurrence): учитывая сюжетальфа\alphaдва временных интервала [Ts,TeT_{\rm s}, T_{\rm e}], [Ts',Te'T_{\rm s}', T_{\rm e}'], [Ts',Te'T_{\rm s}', T_{\rm e}'] Да [Ts,TeT_{\rm s}, T_{\rm e}] : когда 1) сюжетальфа\alphaпроизошло в [Ts,TeT_{\rm s}, T_{\rm e}] период времени; 2) [Ts',Te'T_{\rm s}', T_{\rm e}'] Подмножество не существует. Кратчайший период времени возникновения записывается какmo(альфа)mo(\alpha). Среди них сюжетальфа\alphaМножество всех кратчайших периодов времени появленияmoSet(альфа)moSet(\alpha). Например: сюжет<(AB),(C)><(AB), (C)>Кратчайший период времени появления [1,2] из , иmoSet(<(AB),(C)>)={[1,2],[5,6]}moSet(<(AB), (C)>) = \{[1,2], [5,6]\}

  • поддержка сюжета (Support of an episode):участокальфа\alphaслужба поддержкиSC(альфа)SC(\alpha)Определяется как набор периодов времени, которые происходят в кратчайшемmoSet(альфа)moSet(\alpha)Количество кратчайших периодов времени появления в (Ps.то есть это произошло один раз за этот период времени), скорость поддержки определяется как в CSSC(альфа)SC(\alpha)Отношение к моменту времени

  • частые приступы (Frequent episode): когда поддержка участка не ниже заданного пользователем порога поддержки (minSupminSup), то эпизод называют частым эпизодом.

В документе также упоминается, почему следует разработать новую утилиту майнинга, которая заменит частотный майнинг: во-первых, значение частотного выражения слишком узкое (например, в случае с бриллиантами и хлебом), а во-вторых, что трудно обсуждать события. параллелизм на основе частоты (одновременное возникновение (определяется как возникновение только одного события в один и тот же момент времени)

Класс полезности

ПредполагатьCS=<(tSE1,T1),(tSE2,T2),,(tSEn,Tn)>CS = <(t_{SE_1}, T_1), (t_{SE_2}, T_2), \dots, (t_{SE_{\rm n}}, T_{\rm n})>TiеN+T_{\rm i} \in N^+, каждое событиеEiеεE_{\rm i} \in \varepsilonобе сопутствующие прибылиp(Ei,CS)p(E_{\rm i}, CS)(внешняя полезность) и количествоq(Ei,Ti)q(E_{\rm i}, T_{\rm i})(внутренняя утилита). В следующей таблице (Таблица 1) и на рисунке (Рисунок 3) представлена ​​внешняя полезность и внутренняя полезность каждого события соответственно.

事件额外效用

复杂事件序列的内部效用

  • полезность события в определенный момент времени (Utility of an event at a time point): в какой-то момент времениTiеN+T_{\rm i} \in N^+следующее событиеEiE_{\rm i}Полезность определяется какu(Ei,Ti)=p(Ei,CS)×q(Ei,Ti)u(E_{\rm i}, T_{\rm i}) = p(E_{\rm i}, CS) \times q(E_{\rm i}, T_{\rm i})(выгода×\timesколичество)

  • Полезность набора событий, происходящих параллельно в определенный момент времени (Utility of a simultaneous event set at a time point): в какой-то момент времениTiеN+T_{\rm i} \in N^+Следующий набор параллельных (одновременных) событийSE=(E1,E2,,En)SE = (E_1, E_2, \dots, E_{\rm n})Полезность определяется какu(SE,Ti)=j=1nu(Ej,Ti)u(SE, T_{\rm i}) = \sum_{j = 1}^{n}u(E_{\rm j}, T_{\rm i})

  • Общая полезность на основе комплексных наборов данных последовательности событий (Total utility of database complex event sequence): на основе сложной последовательности событийCSCSПолная полезность определяется какu(CS)=i=1nu(SEi,Ti)u(CS) = \sum_{i = 1}^{n}u(SE_{\rm i}, T_{\rm i})

  • Построить график полезности по кратчайшему периоду появления (Utility value of an episode w.r.t its minimal occurrence):Предполагатьmo(альфа)=[Ts,Te]mo(\alpha) = [T_{\rm s}, T_{\rm e}]сюжетальфа=<(SE1,SE2,,SEn)>\alpha = <(SE_1, SE_2, \dots, SE_{\rm n})>кратчайший период времени возникновения, в течение которого каждый набор событий происходит параллельноSEiеальфаSE_{\rm i} \in \alphaв определенный момент времениTiеN+T_{\rm i} \in N^+Связанный. Полезность сюжета по отношению к кратчайшему периоду появления определяется какu(альфа,mo(альфа))=i=1nu(SEi,Ti)u(\alpha, mo(\alpha)) = \sum_{i = 1}^{n}u(SE_{\rm i}, T_{\rm i})

  • Полезность сюжетов, основанных на сложных последовательностях событий (Utility of an episode in a complex event sequence):ПредполагатьmoSet(альфа)=[TI1,TI2,,TIn]moSet(\alpha) = [T_{\rm I_1}, T_{\rm I_2}, \dots, T_{\rm I_n}]это о сюжетеальфа\alphaМинимальный набор вхождений . на основе сложных временных рядовCSCSПолезность сюжета определяется какuv(альфа,CS)=i=1nu(альфа,TIn)uv(\alpha, CS) = \sum_{i = 1}^{n}u(\alpha, T_{\rm I_n}), и имеетu(альфа)=uv(альфа)/u(CS)u(\alpha) = uv(\alpha) / u(CS)

  • максимальная продолжительность (Maximum time duration):ПредполагатьMTDMTDмаксимальная продолжительность, заданная пользователем,mo(альфа)=[Ts,Te]mo(\alpha) = [T_{\rm s}, T_{\rm e}]сюжетальфа\alphaкратчайший период возникновения. когда(TeTs+1)MTD(T_{\rm e} - T_{\rm s} + 1) \le MTD,сказатьmo(альфа)mo(\alpha)отMTDMTDОграничения (или выполняются) из (Ps.МПД играет роль временного окна, потому что мы должны определить диапазон, если мы хотим вычислить, иначе бесконечный период времени или бесконечно малый не способствует нашему исследованию)

  • Параллельные и последовательные соединения (Simultaneous and serial concatenations):Предполагатьальфа=<(SE1),(SE2),,(SEx)>,\alpha = <(SE_1), (SE_2), \dots, (SE_{\rm x})>, бета=<(SE1'),(SE2'),,(SEy')>\beta = <(SE_1'), (SE_2'), \dots, (SE_{\rm y}')>,альфа\alphaибета\betaПараллельная конкатенация определяется какsimulsimul-concat(альфа,бета)=<(SE1),(SE2),concat(\alpha, \beta) = <(SE_1),(SE_2), ,(SExSE1'),(SE2'),(SEy')>\dots, (SE_{\rm x} \cup SE_1'), (SE_2'), (SE_{\rm y}')>,альфа\alphaибета\betaПоследовательное соединение определяется какserialserial-concat(альфа,бета)=<(SE1),(SE2),concat(\alpha, \beta) = <(SE_1), (SE_2), ,(SEx),(SE1'),(SE2'),,(SEy')>\dots, (SE_{\rm x}), (SE_1'), (SE_2'), \dots, (SE_{\rm y}')>(Ps. Оба являются расширенными наборами предметов, но их комбинация отличается.)

  • Участок с высокой полезностью (High Utility Episode): когда сюжетEiE_{\rm i}полезностьu(Ei)minUtilu(E_{\rm i}) \ge minUtil, он считается нужным нам узором (ОТТЕНОК), в противном случае он не

  • эпизодические веса полезности (Episode-Weighted Utilization of an episode):ПредполагатьmoSet(альфа)=[TI1,TI2,,TIn]moSet(\alpha) = [T_{\rm I_1}, T_{\rm I_2}, \dots, T_{\rm I_n}]TIiеmoSet(альфа)T_{\rm I_i} \in moSet(\alpha)удовлетворитьMTDMTDограничение. Затем на основе сложной последовательности событийCSCSСюжетальфа\alphaполезный весEWU(альфа)=i=1nEWU(альфа,TIi)/u(CS)EWU(\alpha) = \sum_{i = 1}^{n}EWU(\alpha, T_{\rm I_i}) / u(CS). Например: пустьMTD=3,альфа=<(A),(C)>MTD = 3, \alpha = <(A), (C)>,ТакEWU(<(A),(C)>)=[u((AB),T1)+u((BC),T2)+u((C),T3)]+[u((AB),T5)+u((CD),T6)+u((C),T7)]/u(CS)=40/40EWU(<(A), (C)>) = [u((AB), T_1) + u((BC), T_2) + u((C), T_3)] + [u((AB), T_5) + u((CD), T_6) + u((C), T_7)] / u(CS) = 40 / 40

    EWUs of 1-episodes

  • Полезность, взвешенная по графику, по отношению к кратчайшему периоду появления (Episode-Weighted Utilization of an episode w.r.t a minimal occurrence):Предполагатьmo(альфа)=[Ts,Te]mo(\alpha) = [T_{\rm s}, T_{\rm e}]сюжетальфа=<(SE1),(SE2),,(SEn)>\alpha = <(SE_1), (SE_2), \dots, (SE_{\rm n})>Кратчайший период времени возникновения, когдаmo(альфа)mo(\alpha)отMTDMTDограничения. затем в [Ts,TeT_{\rm s}, T_{\rm e}] следующий эпизодальфа\alphaПолезность веса сюжетаEWU(альфа,mo(альфа))=EWU(\alpha, mo(\alpha)) = i=1nu(SEi,Ti)+i=e(s+MTD1)u(tSEi,Ti)\sum_{i = 1}^{n}u(SE_{\rm i}, T_{\rm i}) + \sum_{i = e}^{(s + MTD - 1)}u(t_{SE_{\rm i}}, T_{\rm i})tSEit_{SE_{\rm i}}вCSCSМомент времени в наборе одновременных событий вTiT_{\rm i}. Например: пустьMTD=4,альфа=<(C),(A)>,mo(<(C),(A)>)=[3,5]MTD = 4, \alpha = <(C), (A)>, mo(<(C), (A)>) = [3,5],ТакEWU(<(C),(A)>,[3,5])=[u((C),T3)]+[u((AB),T5)+u((CD),T6)]=25EWU(<(C), (A)>, [3, 5]) = [u((C), T_3)] + [u((AB), T_5) + u((CD), T_6)] = 25

  • Участки полезного назначения с большим весом (High Weighted Utilization Episode): когда сюжетальфа\alphaизEWU(альфа)minUtilEWU(\alpha) \ge minUtil, эпизод называется эпизодом полезности с большим весом (HWUE), который является событием-кандидатом следующего определения.

  • события-кандидаты (Promising event):когдаEWU(e)minUtilEWU(e) \ge minUtil, событиеeeявляется событием-кандидатом, и его полезность эпизода необходимо дополнительно рассчитать для точного суждения. В противном случае бесперспективное мероприятие, когдаальфа\alphaявляется некандидатным событием, для любого сюжетабета\beta, их надмножествоγ\gammaвсе неэффективны.

  • Нисходящее замыкание графиков весов (Episode-Weighted Downward Closure property (EWDC)):Предполагатьальфа\alphaибета\betaучастки, иγ=simul\gamma = simul-concat(альфа,бета)concat(\alpha, \beta)илиserialserial-concat(альфа,бета)concat(\alpha, \beta),когдаEWU(альфа)<minUtilEWU(\alpha) < minUtilчас,γ\gammaэто неэффективный сценарий

Стратегия

Discarding Global unpromising Events(DGE)

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

Discarding Local unpromising Events(DLE)

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

алгоритм

Идея основного алгоритма заключается в старом правиле: найти участок длиной 1, затем использовать это событие в качестве префикса и добавить другие события, чтобы проверить, может ли оно стать HEWU.Следует отметить, что каждый раз, когда событие продлено, время этого события не может совпадать с временем префикса, разница превышает МПД

UP-Span:

UP-Span

UP-Span

MiningSimultHUE:

В основном отвечает за интеллектуальный анализ параллельных событий текущего набора событий.

MiningSimultHUE

MiningSerialHUE:

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

MiningSerialHUE

Персональное резюме

Изучив алгоритм High-Utility Pattern Mining, понять его несложно.Большинство определений добавляет измерение времени. С точки зрения псевдокода, алгоритм в целом не очень сложен, и идея примерно такая же, как у алгоритма HUI-Miner, но текущие исследования в этой области относительно невелики, и места еще много. для расширения. В этой статье впервые предлагается и успешно реализована основанная на сценариях концепция добычи полезных ископаемых. Недостатком является то, что использование только предложенного EWU в качестве граничного значения неизбежно будет слишком расплывчатым и приведет к созданию множества наборов кандидатов, которые изначально не нужны. Также необходимо использовать лучшие алгоритмы обрезки, такие как те, что используются в FHM, или изменить структуру хранения данных для повышения эффективности поиска.