Abstract
We propose a single Index approach for subsequence matching that supports moving average transform of arbitrary order in time-series databases. Using the single index approach, we can reduce both storage space overhead and index maintenance overhead. Moving average transform is known to reduce the effect of noise and has been used in many areas such as econometrics since it is useful in finding overall trends. However, the previous research results have a problem of occurring index overhead both in storage space and in update maintenance since tile methods build several indexes to support arbitrary orders. In this paper, we first propose the concept of poly-order moving average transform, which uses a set of order values rather than one order value, by extending the original definition of moving average transform. That is, the poly-order transform makes a set of transformed windows from each original window since it transforms each window not for just one order value but for a set of order values. We then present theorems to formally prove the correctness of the poly-order transform based subsequence matching methods. Moreover, we propose two different subsequence matching methods supporting moving average transform of arbitrary order by applying the poly-order transform to the previous subsequence matching methods. Experimental results show that, for all the cases, the proposed methods improve performance significantly over the sequential scan. For real stock data, the proposed methods improve average performance by 22.4${\~}$33.8 times over the sequential scan. And, when comparing with the cases of building each index for all moving average orders, the proposed methods reduce the storage space required for indexes significantly by sacrificing only a little performance degradation(when we use 7 orders, the methods reduce the space by up to 1/7.0 while the performance degradation is only $9\%{\~}42\%$ on the average). In addition to the superiority in performance, index space, and index maintenance, the proposed methods have an advantage of being generalized to many sorts of other transforms including moving average transform. Therefore, we believe that our work can be widely and practically used in many sort of transform based subsequence matching methods.
본 논문에서는 단일 색인을 사용하는 임의 계수의 이동평균 변환 지원 서브시퀀스 매칭 방법을 제안한다. 단일 색인을 사용함으로써, 제안한 방법은 색인 저장 공간 및 색인 관리의 오버헤드를 크게 줄일 수 있다. 이동평균 변환은 시계열 데이타 내의 노이즈 영향을 감소시킴으로써, 시계열 데이타 전체의 경향을 파악하는데 매우 유용하다. 그런데, 기존 연구에서는 임의 계수를 지원하기 위해 여러 색인을 생성해야 하고, 이에 따라 색인 저장 공간의 오버헤드와 색인 관리의 오버헤드가 발생하는 문제점이 있다. 본 논문에서는 우선 이동평균 변환의 정의를 확장한 다계수 이동평균 변환(poly-order moving average transform) 개념을 제시한다. 다계수 이동평균 변환이란, 각 윈도우를 하나의 이동평균 계수에 대해서 이동평균 변환하는 것이 아니라, 여러 계수에 대해서 이동평균 변환하여 윈도우의 집합을 구성하는 변환으로서, 이동평균 변환의 정의를 여러 계수로 구성된 집합에 대해서 확장한 것이다. 다음으로, 이러한 다계수 이동평균 변환 개념을 사용한 서브시퀀스 매칭 방법의 이론적 근거인 정확성을 정리로서 제시하고 증명한다. 또한, 다계수 이동평균 변환을 기존 서브시퀀스 매칭 연구인 Faloutsos 둥의 방법 및 DualMatch에 각각 적용하여, 두 가지 이동평균 변환 지원 서브시퀀스 매칭 방법을 제시한다. 실험 결과, 제안한 두 가지 서브시퀀스 매칭 방법은 모든 경우에 있어서 순차 스캔보다 성능을 크게 향상시킨 것으로 나타났다. 실제 주식 데이타에 대한 실험 결과, 제안한 방법은 순차 스캔에 비해서 평균 22.4배${\~}$33.8배까지 성능을 향상시킨 것으로 나타났다. 또한, 각 계수에 대해 모두 색인을 생성하는 경우와 비교할 때, 성능 저하는 매우 적은 반면 필요한 색인 공간은 크게 줄인 것으로 나타났다(일곱 개의 계수를 사용한 경우, 성능 저하는 평균 $9\%{\~}42\%$에 불과한 반면 색인 공간은 약 1/7.0로 크게 줄인다). 이와 같이 성능 측면과 색인 공간 및 관리 측면에서의 우수성에 덧붙여, 제안한 방법은 이동평균 변환 이외의 다른 변환을 지원하는 서브시퀀스 매칭으로 일반화 될 수 있는 장점이 있다 따라서, 제안한 방법은 이동평균 변환을 포함하는 많은 다른 종류의 변환을 지원하는 서브시퀀스 매칭에 폭넓게 적용되는 우수한 연구결과라 사료된다.