Алгоритм FUCPM

алгоритм сбор данных

Написано ранее: непрерывный последовательный анализ шаблонов является очень распространенной задачей в нашей повседневной жизни, такой как веб-журналы, анализ последовательности ДНК, траектории движения объектов и т. д., но существующие алгоритмы анализа не могут вводить данные для эффективного анализа, потому что последовательности, которые они обычно get находятся в состоянии разъединения и фрагментации между элементами, поэтому этот алгоритм предлагает лучшее решение проблемы постоянного извлечения сложных последовательностей.

Utility-driven Mining of Contiguous Sequences

мотивация

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

определение

  • пункт(item): наименьшая единица в наборе данных, сxix_iзначит, ограниченное количество

  • наборы предметов (itemset): состоит из конечного числа элементов, непустых, сXXпредставляет, а лексикографический порядок по умолчанию между каждым элементом композиции

  • последовательность(sequence): состоит из конечного числа наборов элементов, непустых, сSSпредставлены, а сформированные наборы товаров упорядочены

  • Количественный термин (quantitative item): Чтобы присвоить элементам атрибуты полезности и количества, используйте (xix_i:qq) илиqq-предмет означает

  • Наборы квантованных элементов (quantitative itemset): то же, что и выше, ограниченоqq-элементы составляются, а составные элементы упорядочены

  • последовательность квантования (quantitative sequence): то же, что и выше, ограниченоqq-наборы предметов составлены, упорядочены и имеют уникальные меткиSID

  • непрерывная последовательность (contiguous sequence): учитывая две разные последовательностиSmS_mиSn'S^\prime_n(нижний индекс указывает количество различных наборов элементов, содержащихся в последовательности), для любого1knm+11 \le k \le n-m+1,имеютX1Xk'X_1 \subseteq X^\prime_{k}, X2Xk+1'X_2 \subseteq X^\prime_{k+1}, \ldots, XmXk+m1'X_m \subseteq X^\prime_{k+m-1}установлено, тоSSдаS'S^\primeнепрерывная подпоследовательность ; в свою очередь,S'S^\primeдаSSПоследовательные суперпоследовательности [например, aa}, {afaf}> и cc}, {abab}, {aefaef}>】

  • совпадение(matching): данный набор элементовXXи квантованные наборы элементовYY, когда есть и только для любого1km1 \le k \le m,имеютxkx_k = yky_k, это называетсяXXсовпадениеYY, Упоминается какXYX \sim Y; Последовательность такая же, очевидно, в зависимости от атрибута количества,XXможет соответствовать несколькимYY

  • пример (instance): данная последовательностьSmS_mи последовательность квантованияQnQ_n(Нижний индекс указывает количество различных наборов элементов, содержащихся в последовательности,mnm \le n),какp\exists p, mpnm \le p \le nиk\forall k, 1km1 \le k \le m,имеютXk'Ypm+kX^\prime_k \sim Y_{p-m+k}иXkXk'X_k \subseteq X^\prime_kустановлено,QnQ_nв крайний срокppимеютSmS_mЭкземпляр , в зависимости от того, где находится отсечка, по-видимому, существуетQnQ_nправильноSmS_mнесколько разных экземпляров

    Ps. В статье множество положений отсечки специально обозначено как EP(S, Q), и когда в Q есть хотя бы один экземпляр S, говорят, что Q содержит S, обозначенное какSQS \sqsubseteq Q

  • полезность (utility): Для последовательностей в квантованииQQПервыйjjквантованные элементы в наборе квантованных элементовxix_i, его значение полезности рассчитывается какu(xi,j,Q)u(x_i, j, Q) = q(xi,j,Q)×p(xi)q(x_i, j, Q) \times p(x_i)[То есть количество * прибыль]; это рассуждение,

    • Включаютxix_iквантованные наборы элементовXXФормула расчета ценности полезности:u(X,j,Q)u(X, j, Q) = xiеXu(xi,j,Q)\sum_{x_i \in X}u(x_i, j, Q);
    • QQоSSПолезность экземпляраu(S,p,Q)u(S, p, Q) = j=1mu(Xj,pm+j,Q)\sum^m_{j=1}u(X_j, p-m+j, Q);
    • Поскольку существует несколько экземпляров, в качестве оценки берется максимальное значение.u(S,Q)u(S, Q) = max{u(S,p,Q)pеEP(S,Q)u(S, p, Q) \mid \forall p \in EP(S, Q)};
    • Наконец, последовательностьSSв наборе данныхDDЗначение полезности вu(S)u(S) = QеDu(S,Q)\sum_{Q \in D}u(S, Q)
  • значение полезности веса последовательности (sequence-weighted utilization, SWU): это оценочное значение с замыканием вниз, которое можно использовать в качестве условия оценки для сокращения, и его выражениеSWU(SS) = SQQDu(Q)\sum_{S \sqsubseteq Q \land Q \subseteq D}u(Q)[Но это очень приблизительная оценка, объясненная в разделе «Стратегия сокращения GUIP»]

  • Высокоэффективный режим непрерывной последовательности (high-utility contiguous sequential pattern): Согласно определению ценности полезности в предыдущем пункте, последовательностьSSдаHUCSPтогда и только тогда, когда значение полезности не меньшеξ×u(D)\xi \times u(D),ξ\xiминимальный порог, установленный пользователем в виде процента

  • расширение (extension): Любые наборы элементов низкого порядка могут быть объединены в наборы элементов высокого порядка с помощью определенных методов. При анализе последовательностей обычно одновременно расширяется только один элемент.SSи пунктxix_i, в этой статье представлены два метода расширения:

    • расширение элемента (I-extension):будетxix_iнепосредственно расширятьSSНа последнем наборе элементов , обозначенном как SxiS \oplus x_i> обратите внимание, что эта операция не увеличивает длину последовательности,
    • расширение последовательности (s-extension):будетxix_iПоскольку новый набор предметов расширяется вSSв конце помечается как SxiS \otimes x_i>, это сделаетSSдлина плюс 1
  • расширение ((extension item):данныйSS, QQиxix_ixix_iдаSSпоследний срок,EP(S,Q)EP(S, Q) = {ep1ep_1, \ldots, epnep_n},Так,

    • оSSсуществуетQQВверхI-extensionНабор обозначается какIitem(SS, QQ); аналогично, вDDНабор выше обозначается какIitem(SS) = QеD\bigcup_{Q \in D}Iitem(SS, QQ)
    • оSSсуществуетQQВверхS-extensionНабор обозначается какSitem(SS, QQ); аналогично, вDDНабор выше обозначается какSitem(SS) = QеD\bigcup_{Q \in D}Sitem(SS, QQ)
  • Остаточная последовательность (remaining sequence):существуетаккуратныйПо правилам предполагается, чтоQQсуществуетSSизppЕсть экземпляр на локации, оQQсуществуетSSОставшаяся последовательность на обозначается какQ/(S,p)Q / _{(S, p)}, который также можно назватьQQПоследовательность суффиксов ; соответственно, формула полезности оставшейся последовательности имеет видru(Q/(S,p))ru(Q / _{(S, p)}) = xiеQ/(S,p)u(xi)\sum_{x_i \in Q / _{(S, p)}}u(x_i)

  • расширенная полезность предмета (item-extension utilization):данныйSS, S'S^\prime, QQ,В том числеSS'S \subseteq S^\prime, S/xiS \oplus/\otimes x_i = S'S^\prime, QQдаSSэкземпляр ,QpQ^pвыраженный вQQвppнаборы предметов,pеEP(S,Q)p \in EP(S, Q),Так,

    • Для I-расширения (S'S^\prime = SxiS \oplus x_i), с и толькоxiеQpx_i \in Q^pчас,IEU(S',p,QS^\prime, p, Q) = u(S,p,Q)u(S, p, Q) + u(xi,p,Q)u(x_i, p, Q) + ru(Q/(xi,p))ru(Q/_{(x_i, p)});Напротив,IEU(S',p,QS^\prime, p, Q) = 0
    • Для S-расширения (S'S^\prime = SxiS \otimes x_i), с и толькоxiеQp+1x_i \in Q^{p+1}час,IEU(S',p,QS^\prime, p, Q) = u(S,p,Q)u(S, p, Q) + u(xi,p+1,Q)u(x_i, p+1, Q) + ru(Q/(xi,p+1))ru(Q/_{(x_i, p+1)});Напротив,IEU(S',p,QS^\prime, p, Q) = 0
    • Для нескольких I-расширений или S-расширенийIEU(S',p,QS^\prime, p, Q) = maxpе(S,Q)max_{p \in (S, Q)}IEU(S',p,QS^\prime, p, Q); дальше,IEU(SS) = SQQD\sum_{S \sqsubseteq Q \land Q \subseteq D}IEU(S,QS, Q)
  • Список информации о последовательности (sequence information list, SIL): аналогичноСписок утилит (utility list), каждый список хранитQQ, хотя бы одна из квантованных последовательностейqq-itemset, в каждом наборе элементов хранится как минимум один кортеж (qq-предмет, реальная полезность и остаточная полезность), схема структуры выглядит следующим образом

    SIL数据结构示意图

  • цепочка экземпляров (instance-chain, IChain): хранитEP(SS, QQ) информация и экземпляр в соответствующем положении отсечкиppПолезное значение , по сути, представляет собой информацию об экземпляре сжатого хранилища, структурная диаграмма выглядит следующим образом.

    IChain数据结构示意图

Стратегия обрезки

GUIP strategy

в соответствии сu(S)u(S)определение может знатьSWU(SS) на самом деле намного больше, чем реальное значение полезности, и прямым результатом этого является увеличение числа недействительных кандидатов; поэтому статья в оригиналеSWUНа основе стратегии обрезки каждый раз отсеиваются неэффективныеxix_i, затем обновитеQQи соответствующее оставшееся значение полезности, пока все элементы с низкой полезностью не будут полностью удалены

LUIP strategy

Первоначальная статья давала подробное доказательство и процесс рассуждений, поэтому я не буду здесь слишком подробно останавливаться;IEU(SS), когда он меньше минимального порога,SSи его последовательности расширения неэффективны и могут быть удалены напрямую

Поддельный код

FUCPM algorithm

FUCPM algorithm

Recursive search

Recursive search

Суммировать

Алгоритм использует жадную идею при сокращении элементов с низкой полезностью и повторяет цикл до оптимального решения.Одна из проблем, возникающих в связи с этим, заключается в том, каково потребление ресурсов при работе с различными наборами данных? С точки зрения производительности затрат памяти он хорошо работает на плотных наборах данных, но потребляет значительно больше на разреженных наборах данных, даже не так хорошо, как эталонный алгоритм для сравнения; но преимущества, которые дает это, также очень очевидны, то есть затраты времени явно малы, поскольку большое количество элементов с низкой полезностью удаляется на ранней стадии, количество сгенерированных наборов элементов высокого порядка будет намного меньше, что также подтверждается экспериментальным графиком сравнения кандидатов в статье ( за исключением разреженных наборов данных), и Экспериментальные данные сравнения стратегий также могут проиллюстрировать; в последнем эксперименте по сравнению между алгоритмом HUSPM и алгоритмом UCSPM видно, что количество смежных последовательностей слишком мало, что может уменьшить сложность анализа данных в определенной степени. Лично я считаю, что UCSPM является очень хорошим направлением исследований, и областей его применения также много.