KR102244450B1 - 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법 - Google Patents

다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법 Download PDF

Info

Publication number
KR102244450B1
KR102244450B1 KR1020190150316A KR20190150316A KR102244450B1 KR 102244450 B1 KR102244450 B1 KR 102244450B1 KR 1020190150316 A KR1020190150316 A KR 1020190150316A KR 20190150316 A KR20190150316 A KR 20190150316A KR 102244450 B1 KR102244450 B1 KR 102244450B1
Authority
KR
South Korea
Prior art keywords
pattern
mining
importance
event
instance
Prior art date
Application number
KR1020190150316A
Other languages
English (en)
Inventor
최동완
김학규
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020190150316A priority Critical patent/KR102244450B1/ko
Application granted granted Critical
Publication of KR102244450B1 publication Critical patent/KR102244450B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법이 개시된다. 일 실시예에 따른 마이닝 시스템에 의해 수행되는 패턴 마이닝 방법은, 시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 단계; 및 상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 단계를 포함할 수 있다.

Description

다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법{RECENCY-BASED PATTERN MINING METHOD IN MULTIPLE EVENT SEQUENCES}
아래의 설명은 패턴 마이닝 기술에 관한 것이다.
순차 패턴 마이닝 방법은 데이터 마이닝 분야에서 오랫동안 연구가 진행되어 왔다. 전통적인 순차 패턴 마이닝 방법은 패턴의 빈도수만을 고려하여, 전체 시퀀스 데이터에서 가장 많은 빈도수가 발생하는 패턴을 검색하는 방식을 사용해왔다. 이러한 방식은 각 패턴이 얼마나 자주 발생하는 가에 관한 정보는 제공하지만, 패턴 내부에서 이벤트의 발생 지점을 고려하지 않아서 특정 이벤트로부터 다른 이벤트가 발생할 수 있는 확률이 어느 정도 될 지 파악하기 어렵다는 단점이 있다.
전통적인 데이터 마이닝 방식을 확장하여 패턴에 추가적인 제한 조건을 설정함으로써 원하는 형태의 패턴만을 검색할 수 있도록 하는 방식도 다양하게 연구되었다. 이 중에서도 gap-constraint 패턴 마이닝 방식에서는 이벤트의 발생지점 간의 거리를 제한함으로써 패턴에 속한 이벤트들이 너무 멀리 떨어져 있는 경우를 방지하고자 하였다. 그러나, 거리 제한 조건을 만족하는 경우에는 빈도수만을 고려하여 패턴의 중요도 지수를 계산함으로써 패턴 내부의 이벤트 발생 분포가 달라도 패턴의 중요도를 동일하게 평가하는 단순한 방식을 사용한다.
빈도수에 더불어 다른 지수를 추가함으로써 패턴의 중요도를 새롭게 정의하는 연구도 다양하게 존재하고 있다. 비특허문헌 1 "Tang L, Zhang L, Luo P, Wang M (2012) Incorporating occupancy into frequent pattern mining for high quality pattern recommendation. In: ACM International Conference on Information and Knowledge Management, pp 75-84"에 따르면, 시퀀스에서 특정한 윈도우 사이즈에 기반하여 각 윈도우 내부에서 패턴에 속하는 아이템셋(itemset)이 차지하는 비중을 고려하는 occupancy라는 지수가 정의되었다. 그러나 아이템셋을 고려할 때는 순차적인 정보를 활용하지 않아 순차 패턴을 검출하는 마이닝 방식과는 차이가 있다. 또한, 비특허문헌 2 "Cule B, Goethals B, Robardet C (2009) A new constraint for mining sets in sequences. In:Proceedings of the SIAM International Conference on Data Mining, pp 317-328" 및 비특허문헌 3 "Cule B, Feremans L, Goethals B (2016) Efficient discovery of sets of co-occurring items in event sequences. In: Machine Learning and Knowledge Discovery in Databases -European Conference, pp 361-377"에 따르면, 패턴에 존재하는 이벤트의 발생 시점간의 거리를 평균값으로 사용하는 cohesion이라는 지수가 정의되었다. 비특허문헌 2 및 3에 의하면, 발생 시점간의 거리가 가까울수록 패턴의 중요도가 높아지게 된다. 하지만, 최근에 발생하는 이벤트가 미래에 더욱 많은 영향을 끼치는 최신 효과(recency effect)를 고려해봤을 때, 서로 다른 발생시점 분포를 가지는 패턴을 구분할 수 없다는 단점이 있다.
또한, 패턴을 기반으로 한 다양한 이벤트 예측 방법도 연구되어 왔다. 가장 기본적인 형태는 마지막 이벤트를 제외한 패턴에 속하는 전체 이벤트를 기반으로 하여, 마지막 이벤트를 예측값으로 사용하는 규칙을 생성하여, 예측을 원하는 시퀀스 데이터가 입력되었을 때 가장 잘 매칭이 되는 규칙에 따라 예측하는 방식이다.
다수의 이벤트 시퀀스(Sequence) 데이터에서 각 이벤트가 발생하는 시점을 고려하여 최신효과(Recency Effect)가 크게 나타나는 패턴을 검색하여 예측 정확도를 높이기 위한 패턴 마이닝 시스템 및 방법을 제공할 수 있다.
마이닝 시스템에 의해 수행되는 마이닝 방법은, 시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 단계; 및 상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 단계를 포함할 수 있다.
상기 정의하는 단계는, 패턴 인스턴스(Pattern instance)의 길이와 패턴의 길이의 비율에 기초하여 제1 중요도 지수를 정의하는 단계를 포함하고, 상기 패턴 인스턴스는, 시퀀스 데이터에서 특정 패턴 시퀀스가 생성되는 부분 시퀀스(Subsequence)를 의미하고, 하나의 시퀀스 데이터에 특정 패턴에 대한 적어도 하나 이상의 인스턴스가 포함될 수 있다.
상기 정의하는 단계는, 상기 시퀀스 데이터에 속한 패턴 인스턴스에 대한 길이 비율값을 평균한 값을 통하여 제1 중요도 지수값을 획득하고, 상기 획득된 제1 중요도 지수값을 가산하여 씨서포트(cSupport)를 획득하는 단계를 포함하고, 상기 제1 중요도 지수값은, 상기 패턴 인스턴스에 패턴과 무관한 이벤트가 포함되어 있을수록 0에 가까운 값이 되고, 패턴과 패턴 인스턴스가 일치할 경우 1이 될 수 있다.
상기 정의하는 단계는, 패턴 인스턴스 내에서 패턴을 구성하는 이벤트가 발생하는 상대적인 위치 정보를 고려하여 시퀀스 데이터의 특정 위치에 이벤트가 발생하는 경우의 패턴 중요도 값을 최대화하기 위한 제2 중요도 지수를 정의하는 단계를 포함할 수 있다.
상기 정의하는 단계는, 특정 패턴에 대한 각 패턴 인스턴스의 최신 효과의 정도에 대하여 평균을 계산한 값을 통하여 제2 중요도 지수값을 획득하고, 상기 획득된 제2 중요도 지수값을 가산하여 알서포트(rSupport)를 획득하는 단계를 포함할 수 있다.
상기 패턴 마이닝을 수행하는 단계는, 제1 중요도 지수를 이용하여 획득된 씨서포트(cSupport)와 제2 중요도 지수를 이용하여 획득된 알서포트(rSupport)를 연장가능 길이(extendable length)에 기초하여 씨서포트 및 알서포트 각각의 상한값을 추정하는 단계를 포함하고, 상기 연장가능 길이는, 특정 패턴 인스턴스 또는 특정 패턴에 새로운 이벤트가 추가됨에 따라 연장 가능한 길이 정보를 의미할 수 있다.
상기 패턴 마이닝을 수행하는 단계는, 상기 추정된 씨서포트의 상한값 및 상기 추정된 알서포트의 상한값을 이용하여 패턴 마이닝 프로세스를 수행하는 단계를 포함할 수 있다.
상기 패턴 마이닝을 수행하는 단계는, 시퀀스 데이터에서 빈수도가 패턴의 중요도 입계값보다 높은 단일의 이벤트를 탐색하고, 상기 탐색된 이벤트를 길이가 1인 패턴으로 간주하고, 상기 탐색된 이벤트에 빈도수가 임계값 이상인 다른 이벤트를 접합(Concatenation)하여 점차 길이가 긴 패턴을 추출하고, 패턴에 이벤트를 추가할 때마다 패턴의 씨서포트의 상한값 및 알서포트의 상한값을 계산하고, 상기 계산된 씨서포트의 상한값 및 상기 알서포트의 상한값이 임계값 이하인 경우, 패턴으로부터 이벤트를 추가하는 프로세스를 중단하는 단계를 포함할 수 있다.
마이닝 시스템은, 시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 지수 정의부; 및 상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 패턴 마이닝부를 포함할 수 있다.
일 실시예에 따른 마이닝 시스템은 패턴 마이닝 방법에 따라 추출된 패턴을 기반으로 패턴 예측 결과, 예측 정확도를 향상시킬 수 있다.
일 실시예에 따른 마이닝 시스템은 패턴 중요도 지수값의 상한값을 사용하여 중요도 지수가 높은 패턴의 검색 속도를 향상시킬 수 있다.
도 1은 일 실시예에 따른 마이닝 시스템의 구성을 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 마이닝 시스템에서 마이닝을 수행하는 방법을 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 마이닝 시스템에서 지수를 정의하는 방법을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 마이닝 시스템에서 상한값을 사용하여 패턴 마이닝을 수행하는 방법을 설명하기 위한 흐름도이다.
도 5 및 도 6은 일 실시예에 따른 마이닝 시스템에서 시퀀스 데이터에서의 이벤트 발생 분포에 따라 정의된 중요도 지수에 기반하여 도출된 상한값을 이용하여 패턴 마이닝을 수행한 결과를 설명하기 위한 그래프이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
실시예에서는 다수의 이벤트 시퀀스(Sequence) 데이터에서 각 이벤트가 발생하는 시점을 고려하여 최신효과(Recency Effect)가 크게 나타나는 패턴을 검색하여 예측 정확도를 높이기 위한 패턴 마이닝 시스템 및 방법을 제안하기로 한다. 이때, 패턴의 발생 빈도수와 더불어 각 이벤트가 발생되는 시점이 최근 시점에 가까울수록 중요도가 높아질 수 있도록 패턴의 중요도 지수를 새롭게 정의하고, 패턴 중요도 지수값의 상한값(upperbound)을 단시간 내에 추측해서 계산할 수 있는 방법을 설명하기로 한다. 또한, 계산된 상한값을 사용하여 중요도 지수가 높은 패턴의 검색 속도를 향상시키는 방법을 설명하기로 한다.
최신효과(Recency Effect)란 심리학 용어로써 최근에 발생한 사건이나 최근에 수행한 행동이 그 이전의 사건이나 행동보다 미래의 사건 및 행동에 더 큰 영향을 끼치는 현상을 의미한다.
도 1은 일 실시예에 따른 마이닝 시스템의 구성을 설명하기 위한 블록도이고, 도 2는 일 실시예에 따른 마이닝 시스템에서 마이닝을 수행하는 방법을 설명하기 위한 흐름도이다.
마이닝 시스템(100)의 프로세서는 지수 정의부(110), 패턴 마이닝부(120)를 포함할 수 있다. 이러한 프로세서의 구성요소들은 마이닝 시스템(100)에 저장된 프로그램 코드가 제공하는 제어 명령에 따라 프로세서에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 프로세서 및 프로세서의 구성요소들은 도 2의 마이닝을 수행하는 방법이 포함하는 단계들(210 내지 220)을 수행하도록 마이닝 시스템(100)을 제어할 수 있다. 이때, 프로세서 및 프로세서의 구성요소들은 메모리가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.
프로세서는 마이닝을 수행하는 방법을 위한 프로그램의 파일에 저장된 프로그램 코드를 메모리에 로딩할 수 있다. 예를 들면, 마이닝 시스템(100)에서 프로그램이 실행되면, 프로세서는 운영체제의 제어에 따라 프로그램의 파일로부터 프로그램 코드를 메모리에 로딩하도록 마이닝 시스템(100)을 제어할 수 있다. 이때, 프로세서 및 프로세서가 포함하는 프로세서는 지수 정의부(110), 패턴 마이닝부(120) 각각은 메모리에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(210 내지 220)을 실행하기 위한 프로세서의 서로 다른 기능적 표현들일 수 있다.
단계(210)에서 지수 정의부(110)는 시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의할 수 있다. 도 3을 참고하면, 단계(310)에서 지수 정의부(110)는 패턴 인스턴스(Pattern instance)의 길이와 패턴의 길이의 비율에 기초하여 제1 중요도 지수를 정의할 수 있다. 단계(311)에서 지수 정의부(110)는 시퀀스 데이터에 속한 패턴 인스턴스에 대한 길이 비율값을 평균한 값을 통하여 제1 중요도 지수값을 획득하고, 획득된 제1 중요도 지수값을 가산하여 씨서포트(cSupport)를 획득할 수 있다.
또한, 단계(320)에서 지수 정의부(110)는 패턴 인스턴스 내에서 패턴을 구성하는 이벤트가 발생하는 상대적인 위치 정보를 고려하여 시퀀스 데이터의 특정 위치에 이벤트가 발생하는 경우의 패턴 중요도 값을 최대화하기 위한 제2 중요도 지수를 정의할 수 있다. 단계(321)에서 지수 정의부(110)는 특정 패턴에 대한 각 패턴 인스턴스의 최신 효과의 정도에 대하여 평균을 계산한 값을 통하여 제2 중요도 지수값을 획득하고, 획득된 제2 중요도 지수값을 가산하여 알서포트(rSupport)를 획득할 수 있다.
단계(220)에서 패턴 마이닝부(120)는 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행할 수 있다. 패턴 마이닝부(120)는 제1 중요도 지수를 이용하여 획득된 씨서포트(cSupport)와 제2 중요도 지수를 이용하여 획득된 알서포트(rSupport)를 연장가능 길이(extendable length)에 기초하여 씨서포트 및 알서포트 각각의 상한값을 추정할 수 있다.
도 4를 참고하면, 단계(410)에서 패턴 마이닝부(120)는 추정된 씨서포트의 상한값 및 추정된 알서포트의 상한값을 이용하여 패턴 마이닝 프로세스를 수행할 수 있다. 패턴 마이닝부(120)는 시퀀스 데이터에서 빈수도가 패턴의 중요도 입계값보다 높은 단일의 이벤트를 탐색할 수 있다. 이때, 탐색된 이벤트를 길이가 1인 패턴으로 간주될 수 있다. 단계(420)에서 패턴 마이닝부(120)는 탐색된 이벤트에 빈도수가 임계값 이상인 다른 이벤트를 접합(Concatenation)하여 점차 길이가 긴 패턴을 추출할 수 있다. 단계(430)에서 패턴 마이닝부(130)는 패턴에 이벤트를 추가할 때마다 패턴의 씨서포트의 상한값 및 알서포트의 상한값을 계산할 수 있다. 단계(440)에서 패턴 마이닝부(130)는 계산된 씨서포트의 상한값 및 알서포트의 상한값이 임계값 이하인 경우, 패턴으로부터 이벤트를 추가하는 프로세스를 중단할 수 있다.
도 5 및 도 6은 일 실시예에 따른 마이닝 시스템에서 시퀀스 데이터에서의 이벤트 발생 분포에 따라 정의된 중요도 지수에 기반하여 도출된 상한값을 이용하여 패턴 마이닝을 수행한 결과를 설명하기 위한 그래프이다.
마이닝 시스템은 시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하고, 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행할 수 있다. 예를 들면, 마이닝 시스템은 시퀀스 데이터에서의 이벤트 발생 분포에 따라 서로 다른 중요도를 가지도록 하기 위하여 두 가지의 중요도 지수를 정의할 수 있다. 마이닝 시스템은 정의된 각 중요도 지수를 기반으로 하여 중요도 지수값의 상한값을 도출하고, 도출된 중요도 지수값의 상한값을 이용하여 패턴 마이닝 속도를 향상시킬 수 있다.
우선적으로, 제1 중요도 지수에 대하여 설명하기로 한다. 실시예에서 마이닝 시스템은 패턴의 중요도 지수로 조밀도(Compactness) 지수를 정의할 수 있다. 조밀도는 패턴 인스턴스(Pattern instance)의 길이와 패턴 자체의 길이의 비율을 계산할 수 있다. 패턴 인스턴스는 실제 시퀀스 데이터에서 특정 패턴 시퀀스가 생성되는 부분 시퀀스(Subsequence)를 의미한다. 이때, 패턴 인스턴스는 패턴에서 정의한 이벤트와 관련없는 이벤트가 일부 포함되어 있을 수 있다. 또한, 하나의 시퀀스 데이터에 특정 패턴에 대한 인스턴스가 복수 개 포함되어 있을 수 있다. 예를 들면, 패턴 <a, b>에 대한 시퀀스 데이터 <a, d, e, b, x, a, y, b>의 패턴 인스턴스는 <a, d, e, b>, <a, y, b>라고 볼 수 있다. 다시 말해서, 패턴을 구성하는 이벤트 a와 b 외에도 d와 e 또는 y가 포함되어 있는 것을 확인할 수 있다. 주어진 패턴과 패턴 인스턴스에 대한 길이 비율값은 다은과 같이 계산할 수 있다.
주어진 순차데이터 X=<x1, x2, ..., xn>와 패턴 P=<p1, p1, ..., pm>에 대하여 X에 속한 P의 특정 인스턴스를 I=(X, <xi, xj, ..., xk>)라고 하면, 길이 비율값은
Figure 112019119838969-pat00001
이다. 여기서 I의 시퀀스 <xi, xj, ..., xk>는 p에 대응되는 X의 부분 시퀀스를 의미하며,
Figure 112019119838969-pat00002
은 특정 시퀀스의 길이를 의미한다.
각 시퀀스에는 특정 패턴에 대하여 복수 개의 인스턴스가 포함될 수 있으므로, 최종적인 조밀도 값은 각 인스턴스에 대한 비율값을 평균하여 수학식 1과 같이 계산될 수 있다.
수학식 1:
Figure 112019119838969-pat00003
수학식 1에서 특정 패턴이 특정 시퀀스에서 얼마나 중요한지를 정량적으로 수치화한 것이다.
이를 각 패턴의 빈도수와 함께 고려하기 위해서는 전체 시퀀스 데이터에서 대하여 Wc값을 모두 가산하면 된다. Wc값을 가산한 값을 씨서포트(cSupport)라고 명명하기로 한다. 직관적으로 패턴 인스턴스에 패턴과 무관한 이벤트가 많이 포함되어 있을수록 조밀도가 0에 가까운 값이 되며, 패턴과 패턴 인스턴스가 정확히 일치하는 경우는 조밀도가 가장 큰 값인 1이 된다.
우선적으로, 제2 중요도 지수에 대하여 설명하기로 한다. 실시예에서 마이닝 시스템은 패턴의 중요도 지수로 최신(Recency) 지수를 정의할 수 있다. 조밀도와 씨서포트에서는 패턴 인스턴스에 패턴과 관련된 이벤트의 개수의 비율을 정량화한 것이라고 볼 수 있다. 그래서, 패턴 인스턴스의 길이가 동일하더라도 패턴 인스턴스에서 패턴을 구성하는 이벤트가 발생하는 시점이 다른 경우를 구별하지는 못한다. 이를 해결하기 위하여 최신 지수라고 하는 새로운 지수가 제안될 수 있다. 기본적으로, 패턴 인스턴스 내에서 패턴을 구성하는 이벤트가 발생하는 상대적인 위치 정보를 고려하여 시퀀스의 오른쪽에 최대한 많은 이벤트가 몰려서 발생하는 경우의 패턴 중요도 값을 최대화할 수 있도록 계산할 수 있다. 마이닝 시스템은 각 이벤트가 발생하는 위치값을 랜드마크(landmark)로 정의할 수 있다.
주어진 순차 데이터 X=<x1, x2, ..., xn>와 패턴 P=<p1, p1, ..., pm>에 대하여 X에 속한 P의 특정 인스턴스를 I=(X, <xi, xj, ..., xk>)라고 하면, I에 대한 P의 랜드마크 L(I, P)는 P에 속한 이벤트가 발생하는 위치 정보를 인덱스 정수값의 시퀀스로 나타낸 것으로, 각 정수값은 오른쪽 끝을 1로 시작해서 몇 번째에 발생하는지를 나타낸다. 예를 들면, 상기에서 언급한 패턴 <a, b>에 대한 두 개의 패턴 인스턴스 I1=<a, d, e, b>와 I2=<a, y, b>에 대하여 L(I1, P) = <1, 4>와 L(I2, P) = <1, 3>이 된다.
특정 패턴 인스턴스에서 최신 효과가 가장 높게 나타나기 위해서는 랜드마크에 속한 정수값이 1부터 시작해서 최대한 작게 유지되어야 한다. 상기 예에서 패턴 <a, b> 최적의 랜드마크 값은 <1, 2>가 된다. 다시 말해서, 특정 패턴에 대해 각 패턴 인스턴스의 최신 효과의 정도는 수학식 2를 통하여 계산될 수 있다.
수학식 2:
Figure 112019119838969-pat00004
수학식 2에서 L(I, P)[i]는 I에 대한 P의 랜드마크에 속한 i번째 정수값을 나타낸다. 조밀도와 마찬가지로 각 시퀀스에는 복수 개의 패턴 인스턴스가 존재할 수 있으므로, 수학식 2를 각 시퀀스에 대하여 평균을 계산하여 다음과 같이 최신 지수라고 하는 새로운 중요도 지수를 정의할 수 있다.
최신 지수:
Figure 112019119838969-pat00005
특정 패턴에 대해 각 시퀀스의 최신값을 모두 더한 지수를 알서포트(rSupport)라고 명명하기로 한다.
이와 같이 정의된 씨서포트와 알서포트의 상한값을 계산하기 위해, 특정 패턴 인스턴스 또는 특정 패턴이 새로운 이벤트가 추가되어 얼마나 더 길어질 수 있는지를 고려한 연장가능 길이(Extendable Length)라는 개념이 정의될 수 있다. 각 패턴 인스턴스의 경우, 각 패턴 인스턴트가 속한 시퀀스의 마지막 이벤트까지만 연장될 수 있으므로, 패턴 인스턴스의 마지막 이벤트로부터 인스턴스가 속한 시퀀스의 마지막 이벤트까지의 상대적인 위치 차이값을 인스턴스의 연장가능 길이로 계산될 수 있다. 마이닝 시스템은 패턴 인스턴스의 마지막 이벤트로부터 인스턴스가 속한 시퀀스의 마지막 이벤트까지의 상대적인 위치 차이값을 이용하여 계산된 연장가능 길이에 기반하여 최대값을 정의할 수 있다. 예를 들면, 특정 패턴 P의 연장 가능 길이 EXT(P)는 특정 패턴 P의 모든 인스턴스들의 연장 가능 길이 값 중에서 최대값으로 정의할 수 있다.
연장 가능 길이라는 개념을 사용하여 씨서포트의 상한값은 수학식 3과 같이 계산될 수 있다.
수학식 3:
Figure 112019119838969-pat00006
수학식 3에서 P+는 P에 임의의 개수의 이벤트를 추가하여 연장된 임의의 패턴이고, k는 추가할 이벤트의 개수이고, 연장 가능 길이의 정의에 의하여 k의 최대값은 해당 패턴의 연장 가능 길이만큼 될 수 있다. Ic는 P의 인스턴스들 중에서 가장 길이가 짧아서 조밀도 지수를 최대로 만들 수 있는 인스턴스를 의미한다.
이와 유사하게, 알서포트의 상한값은 수학식 4와 같이 계산될 수 있다.
수학식 4:
Figure 112019119838969-pat00007
수학식 4에서 Ir은 P의 인스턴스들 중에서 최신 지수를 최대로 만들 수 있는 인스턴스를 의미한다.
마이닝 시스템은 씨서포트와 알서포트에 대해 추정된 상한값을 이용하여 패턴 마이닝 프로세스를 수행할 수 있다. 마이닝 시스템은 모든 시퀀스에서 빈도수가 패턴의 중요도 임계값(Threshold)보다 높은 단일 이벤트를 모두 탐색할 수 있다. 탐색된 임계값보다 높은 단일 이벤트들은 길이가 1인 중요 패턴으로 간주될 수 있으며, 각각의 이벤트에 빈도수가 임계값 이상인 다른 이벤트를 접합(Concatenation)하여 점차 길이가 긴 패턴을 추출해 나갈 수 있다. 패턴에 이벤트를 추가할 때마다, 해당 패턴의 씨서포트와 알서포트의 상한값을 수학식 3 및 수학식 4를 이용하여 계산할 수 있다. 계산된 각각의 상한값이 임계값 이하인 경우, 해당 패턴으로부터 이벤트를 추가하는 프로세스를 중단할 수 있다. 이러한 과정을 모든 패턴이 더 이상 연장이 불가능하거나 상한값이 임계값 이하가 될 때까지 반복하여 중요도가 높은 모든 패턴을 추출할 수 있다.
도 5를 참고하면, 종래의 빈도수 만을 고려한 패턴 마이닝 방법(Presence)과 실시예에서 제안된 복수 개의 중요도를 고려한 패턴 마이닝 방법(Recency, Compactness)을 이용하여 추출된 패턴을 이용하여 예측 정확도를 비교한 결과를 나타낸 그래프이다. 비교 결과, 최신 지수를 고려하여 추출된 패턴이 예측 정확도와 예측 가능도(coverage)가 모두 높게 나타나는 것을 확인할 수 있다. 조밀도 지수의 경우 종래의 Presence 방법보다는 정확도와 예측 가능도가 높게 나타나지만 이벤트의 발생 시점의 분포를 고려하지 않아서, 최신 지수보다는 예측 정확도가 떨어지는 것을 확인할 수 있다. 이를 통하여 최신 효과를 극대화한 패턴 마이닝의 경우, 패턴의 예측 정확도를 향상시킬 수 있다.
도 6을 참고하면, 상한값을 이용하여 마이닝 속도를 높인 경우(RF-Miver(Rec)와 상한값을 이용하지 않고 우선 빈도수 기반으로 검출한 뒤 후처리를 통해 패턴을 검색한 경우(PrefixSpan + Rec)를 비교한 결과를 나타낸 그래프이다. 상한값을 이용한 경우 수행속도가 훨씬 빨라진다는 사실을 확인할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (9)

  1. 마이닝 시스템에 의해 수행되는 마이닝 방법에 있어서,
    시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 단계; 및
    상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 단계
    를 포함하고,
    상기 정의하는 단계는,
    패턴 인스턴스(Pattern instance)의 길이와 패턴의 길이의 비율에 기초하여 제1 중요도 지수를 정의하고, 상기 시퀀스 데이터에 속한 패턴 인스턴스에 대한 길이 비율값을 평균한 값을 통하여 제1 중요도 지수값을 획득하고, 상기 획득된 제1 중요도 지수값을 가산하여 씨서포트(cSupport)를 획득하는 단계
    를 포함하고,
    상기 패턴 인스턴스는, 시퀀스 데이터에서 특정 패턴 시퀀스가 생성되는 부분 시퀀스(Subsequence)를 의미하고, 하나의 시퀀스 데이터에 특정 패턴에 대한 적어도 하나 이상의 인스턴스가 포함되고,
    상기 제1 중요도 지수값은,
    상기 패턴 인스턴스에 패턴과 무관한 이벤트가 포함되어 있을수록 0에 가까운 값이 되고, 패턴과 패턴 인스턴스가 일치할 경우 1이 되는
    마이닝 방법.
  2. 삭제
  3. 삭제
  4. 마이닝 시스템에 의해 수행되는 마이닝 방법에 있어서,
    시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 단계; 및
    상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 단계
    를 포함하고,
    상기 정의하는 단계는,
    패턴 인스턴스 내에서 패턴을 구성하는 이벤트가 발생하는 상대적인 위치 정보를 고려하여 시퀀스 데이터의 특정 위치에 이벤트가 발생하는 경우의 패턴 중요도 값을 최대화하기 위한 제2 중요도 지수를 정의하는 단계
    를 포함하는 마이닝 방법.
  5. 제4항에 있어서,
    상기 정의하는 단계는,
    특정 패턴에 대한 각 패턴 인스턴스의 최신 효과의 정도에 대하여 평균을 계산한 값을 통하여 제2 중요도 지수값을 획득하고, 상기 획득된 제2 중요도 지수값을 가산하여 알서포트(rSupport)를 획득하는 단계
    를 포함하는 마이닝 방법.
  6. 마이닝 시스템에 의해 수행되는 마이닝 방법에 있어서,
    시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 단계; 및
    상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 단계
    를 포함하고,
    상기 패턴 마이닝을 수행하는 단계는,
    제1 중요도 지수를 이용하여 획득된 씨서포트(cSupport)와 제2 중요도 지수를 이용하여 획득된 알서포트(rSupport)를 연장가능 길이(extendable length)에 기초하여 씨서포트 및 알서포트 각각의 상한값을 추정하는 단계
    를 포함하고,
    상기 연장가능 길이는, 특정 패턴 인스턴스 또는 특정 패턴에 새로운 이벤트가 추가됨에 따라 연장 가능한 길이 정보를 의미하는
    를 포함하는 마이닝 방법.
  7. 제6항에 있어서,
    상기 패턴 마이닝을 수행하는 단계는,
    상기 추정된 씨서포트의 상한값 및 상기 추정된 알서포트의 상한값을 이용하여 패턴 마이닝 프로세스를 수행하는 단계
    를 포함하는 마이닝 방법.
  8. 제7항에 있어서,
    상기 패턴 마이닝을 수행하는 단계는,
    시퀀스 데이터에서 빈수도가 패턴의 중요도 입계값보다 높은 단일의 이벤트를 탐색하고, 상기 탐색된 이벤트를 길이가 1인 패턴으로 간주하고, 상기 탐색된 이벤트에 빈도수가 임계값 이상인 다른 이벤트를 접합(Concatenation)하여 점차 길이가 긴 패턴을 추출하고, 패턴에 이벤트를 추가할 때마다 패턴의 씨서포트의 상한값 및 알서포트의 상한값을 계산하고, 상기 계산된 씨서포트의 상한값 및 상기 알서포트의 상한값이 임계값 이하인 경우, 패턴으로부터 이벤트를 추가하는 프로세스를 중단하는 단계
    를 포함하는 마이닝 방법.
  9. 마이닝 시스템에 있어서,
    시퀀스 데이터에서 이벤트 발생 분포에 따라 복수 개의 중요도 지수를 정의하는 지수 정의부; 및
    상기 정의된 복수 개의 중요도 지수에 기반하여 획득된 중요도 지수값을 이용하여 패턴 마이닝을 수행하는 패턴 마이닝부
    를 포함하고,
    상기 지수 정의부는,
    패턴 인스턴스(Pattern instance)의 길이와 패턴의 길이의 비율에 기초하여 제1 중요도 지수를 정의하고, 상기 시퀀스 데이터에 속한 패턴 인스턴스에 대한 길이 비율값을 평균한 값을 통하여 제1 중요도 지수값을 획득하고, 상기 획득된 제1 중요도 지수값을 가산하여 씨서포트(cSupport)를 획득하는 것을 포함하고,
    상기 패턴 인스턴스는, 시퀀스 데이터에서 특정 패턴 시퀀스가 생성되는 부분 시퀀스(Subsequence)를 의미하고, 하나의 시퀀스 데이터에 특정 패턴에 대한 적어도 하나 이상의 인스턴스가 포함되고,
    상기 제1 중요도 지수값은,
    상기 패턴 인스턴스에 패턴과 무관한 이벤트가 포함되어 있을수록 0에 가까운 값이 되고, 패턴과 패턴 인스턴스가 일치할 경우 1이 되는
    마이닝 시스템.
KR1020190150316A 2019-11-21 2019-11-21 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법 KR102244450B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190150316A KR102244450B1 (ko) 2019-11-21 2019-11-21 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190150316A KR102244450B1 (ko) 2019-11-21 2019-11-21 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법

Publications (1)

Publication Number Publication Date
KR102244450B1 true KR102244450B1 (ko) 2021-04-26

Family

ID=75733396

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190150316A KR102244450B1 (ko) 2019-11-21 2019-11-21 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법

Country Status (1)

Country Link
KR (1) KR102244450B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080012265A (ko) * 2005-05-20 2008-02-11 마이크로소프트 코포레이션 이벤트 스트림으로부터 이벤트 패턴 인식
KR20190115507A (ko) * 2018-03-15 2019-10-14 주식회사 피앤아이컨설팅 빅데이터 기술 기반의 인재 채용 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080012265A (ko) * 2005-05-20 2008-02-11 마이크로소프트 코포레이션 이벤트 스트림으로부터 이벤트 패턴 인식
KR20190115507A (ko) * 2018-03-15 2019-10-14 주식회사 피앤아이컨설팅 빅데이터 기술 기반의 인재 채용 시스템 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
황정희, ‘동적 가중치 기반의 연관 서비스 탐사 기법’, 한국디지털콘텐츠학회 논문지, 2016.10.* *
황정희, ‘빈발도와 가중치를 이용한 서비스 연관 규칙 마이닝’, 한국디지털콘텐츠학회 논문지, 2016.04.* *

Similar Documents

Publication Publication Date Title
US9569179B1 (en) Modifying models based on profiling information
US20100235485A1 (en) Parallel processing of input data to locate landmarks for chunks
Shah An improved DBSCAN, a density based clustering algorithm with parameter selection for high dimensional data sets
US9122407B2 (en) Deduplication device and deduplication method
US9645828B2 (en) Method of searching character string, character string searching device, and recording medium
WO2015180340A1 (zh) 一种数据挖掘方法及装置
EP3029581A1 (en) Processing program, processing system, and processing method
US8117343B2 (en) Landmark chunking of landmarkless regions
KR102244450B1 (ko) 다수의 이벤트 시퀀스 데이터에서 최신 효과를 기반으로 한 패턴 마이닝 방법
US20150058272A1 (en) Event correlation detection system
KR101222486B1 (ko) 비결정적 유한 오토마타의 비결정성을 선택적으로 제거하기 위한 방법, 서버, 단말 장치 및 컴퓨터 판독 가능한 기록 매체
JP5790755B2 (ja) データベース管理装置及びデータベース管理方法
Liu et al. Minimization algorithms based on supervisor and searcher cooperation
US20160161981A1 (en) Parallel operation system, apparatus and medium
CN107920067B (zh) 一种主动对象存储系统上的入侵检测方法
US9922040B2 (en) Information processing apparatus, information processing method and program
KR101145278B1 (ko) 유사한 이미지들로부터 대표 이미지를 선택하는 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
JP2019159538A (ja) データセット検証装置、データセット検証方法、およびデータセット検証プログラム
US11347689B2 (en) Method, device and computer program product for event ordering
US10580082B2 (en) Flow generating program, flow generating method, and flow generating device
JP6015662B2 (ja) 空間充填曲線処理システム、空間充填曲線処理方法およびプログラム
KR101815968B1 (ko) 그룹 분리 기능을 제공하기 위한 악성코드 분류 시스템 및 그 방법
KR101510990B1 (ko) 노드 오더링 방법 및 그 장치
KR101849595B1 (ko) 그룹 병합 기능을 제공하기 위한 악성코드 분류 시스템 및 그 방법
KR102371812B1 (ko) 생물지리학적 실루엣 최적화 데이터 클러스터링 방법 및 시스템

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant