• Title/Summary/Keyword: 서브시퀀스의 탐색

Search Result 7, Processing Time 0.025 seconds

An Index Interpolation-based Subsequence Matching Algorithm supporting Normalization Transform in Time-Series Databases (시계열 데이터베이스에서 인덱스 보간법을 기반으로 정규화 변환을 지원하는 서브시퀀스 매칭 알고리즘)

  • No, Ung-Gi;Kim, Sang-Uk;Hwang, Gyu-Yeong
    • Journal of KIISE:Databases
    • /
    • v.28 no.2
    • /
    • pp.217-232
    • /
    • 2001
  • 본 논문에서는 시계열 데이터베이스에서 정규화 변환을 지원하는 서브시퀀스 매칭 알고리즘을 제안한다. 정규화 변환을 시계열 데이터 간의 절대적인 유클리드 거리에 관계 없이, 구성하는 값들의 상대적인 변화 추이가 유사한 패턴을 갖는 시계열 데이터를 검색하는 데에 유용하다. 기존의 서브시퀀스 매칭 알고리즘을 확장 없이 정규화 변환 서브시퀀스 매칭에 단순히 응용할 경우, 질의 결과로 반환되어야 할 서부시퀀스를 모두 찾아내지 못하는 착오 기각이 발생한다. 또한, 정규화 변환을 지원하는 기존의 전체 매칭 알고리즘의 경우, 모든 가능한 질의 시퀀스 길이 각각에 대하여 하나씩의 인덱스를 생성하여야 하므로, 저장 공간 및 데이터 시퀀스 삽입/삭제의 부담이 매우 심각하다. 본 논문에서는 인덱스 보간법을 이용하여 문제를 해결한다. 인덱스 보간법은 인덱스가 요구되는 모든 경우 중에서 적당한 간격의 일부에 대해서만 생성된 인덱스를 이용하며, 인덱스가 필요한 모든 경우에 대한 탐색을 수행하는 기법이다. 제안된 알고리즘은 몇 개의 질의 시퀀스 길이에 대해서만 각각 인덱스를 생성한 후, 이를 이용하여 모든 가능한 길이의 질의 시퀀스에 대해서 탐색을 수행한다. 이때, 착오 기각이 발생하지 않음을 증명한다. 제안된 알고리즘은 질의 시에 주어진 질의 시퀀스의 길이에 따라 생성되어 있는 인덱스 중에서 가장 적절한 것을 선택하여 탐색을 수행한다. 이때, 생성되어 있는 인덱스의 개수가 많을수록 탐색 성능이 향상된다. 필요에 따라 인덱스의 개수를 변화함으로써 탐색 성능과 저장 공간 간의 비율을 유연하게 조정할 수 있다. 질의 시퀀스의 길이 256 ~ 512중 다섯 개의 길이에 대해 인덱스를 생성하여 실험한 결과, 탐색 결과 선택률이 $10^{-2}$일 때 제안된 알고리즘의 탐색 성능이 순차 검색에 비하여 평균 2.40배, 선택률이 $10^{-5}$일 때 평균 14.6배 개선되었다. 제안된 알고리즘의 탐색 성능은 탐색 결과 선택률이 작아질수록 더욱 향상되므로, 실제 데이터베이스 응용에서의 효용성이 높다고 판단된다.

  • PDF

Efficient Subsequence Searching in Sequence Databases : A Segment-based Approach (시퀀스 데이터베이스를 위한 서브시퀀스 탐색 : 세그먼트 기반 접근 방안)

  • Park, Sang-Hyun;Kim, Sang-Wook;Loh, Woong-Kee
    • Journal of KIISE:Databases
    • /
    • v.28 no.3
    • /
    • pp.344-356
    • /
    • 2001
  • This paper deals with the subsequence searching problem under time-warping in sequence databases. Our work is motivated by the observation that subsequence searches slow down quadratically as the average length of data sequences increases. To resolve this problem, the Segment-Based Approach for Subsequence Searches (SBSS) is proposed. The SBASS divides data and query sequences into a series of segments, and retrieves all data subsequences that satisfy the two conditions: (1) the number of segments is the same as the number of segments in a query sequence, and (2) the distance of every segment pair is less than or equal to a tolerance. Our segmentation scheme allows segments to have different lengths; thus we employ the time warping distance as a similarity measure for each segment pair. For efficient retrieval of similar subsequences, we extract feature vectors from all data segments exploiting their monotonically changing properties, and build a spatial index using feature vectors. Using this index, queries are processed with the four steps: (1) R-tree filtering, (2) feature filtering, (3) successor filtering, and (4) post-processing. The effectiveness of our approach is verified through extensive experiments.

  • PDF

An Index-Based Subsequence Matching Algorithm Supporting Normalization Transform in Time-Series Databases (시계열 데이타베이스의 인덱스 보간법을 기반으로 정규화 변환을 지원하는 서브시퀀스 매칭 알고리즘)

  • 노웅기;감상욱;황규영
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04b
    • /
    • pp.152-154
    • /
    • 2000
  • 본 논문에서는 시계열 데이터베이스에서 정규화 변환을 지원하는 서브시퀀스 매칭 알고리즘을 제안한다. 정규화 변환은 시계열 데이터간의 절대적인 유클리드 거리에 관계없이, 구성하는 값들의 상대적인 변화 추이가 유사한 패턴을 갖는 시계열 데이터를 검색하는 데에 유용하다. 제안된 알고리즘은 몇 개의 질의 시퀀스 길이에 대해서만 각각 인덱스를 생성한 후, 이를 이용하여 모든 가능한 길이의 질의 시퀀스에 대해서 탐색을 수행한다. 이때, 착오 기각이 발생하지 않음을 증명한다. 본 논문에서는 이와 같이 인덱스가 요구되는 모든 경우 중에서 적당한 간격의 일부에 대해서만 생성된 인덱스를 이용한 탐색 기법을 인덱스 보간법이라 부른다. 질의 시퀀스의 길이 256~512 중 다섯 개의 길이에 대해 인덱스를 생성하여 실험한 결과, 탐색 결과를 선택률이 10-5일 때 제안된 알고리즘의 탐색 성능이 순차 검색에 비하여 평균 14.6배 개선되었다.

  • PDF

A Subsequence Matching Algorithm Supporting Moving Average Transformation of Arbitrary Order in Time-Series Databases (시계열 데이터베이스에서 임의 계수의 이동평균 변환을 지원하는 서브시퀀스 매칭 알고리즘)

  • 노웅기;김상욱;황규영;심규석
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.334-336
    • /
    • 1999
  • 본 논문에서는 시계열 데이터베이스에서 임의 계수의 이동평균 변환을 지원하는 서브시퀀스 매칭 알고리즘을 제안한다. 응용분야와 분석하려고 하는 시계열 데이터의 특성에 따라 잡음의 영향을 줄이는 정도와 경향을 파악하는 주기가 달라지므로 이동평균 계수의 선택도 달라진다. 본 논문에서는 하나의 이동평균 계수에 대해서 생성한 인덱스만을 이용하여 인덱스가 생성되어 있지 않은 계수에 대해서도 탐색을 수행하는 방법을 제안한다. 이때, 제안된 탐색 기법이 질의 결과로 반환되어야 할 서브시퀀스를 모두 찾아내지 못하는 착오 기각이 발생하지 않음을 증명한다. 실험 결과, 모든 이동평균 계수에 대해 인덱스가 생성되어 있는 경우와 비교하여 탐색 성능의 저하는 42%이내였으며, 제안된 알고리즘의 탐색 성능이 순차 검색에 비하여 초대 2.7배 우수하였다.

  • PDF

Efficient Processing of Subsequence Searching in Sequence Databases (시퀀스 데이터베이스를 위한 서브시퀀스 탐색의 효율적인 처리)

  • Park, Sang-Hyun;Kim, Sang-Wook;Park, Jeong-Il
    • Journal of Industrial Technology
    • /
    • v.21 no.A
    • /
    • pp.155-166
    • /
    • 2001
  • This paper deals with the subsequence searching problem under time-warping. Our work is motivated by the observation that subsequence searches slow down quadratically as the average length of data sequences increases. To resolve this problem, the Segment-Based Approach for Subsequence Searches (SBASS) is proposed. The SBASS divides data and query sequences into a series of segments, and retrieves all data subsequences. Our segmentation scheme allows segments to have different lengths; thus we employ the time warping distance as a similarity measure for each segment pair. For efficient retrieval of similar subsequences, we extract feature vectors from all data segments exploiting their monotonically changing properties, and build a spatial index using feature vectors. The effectiveness of our approach is verified through extensive experiments.

  • PDF

Optimization of Post-Processing for Subsequence Matching in Time-Series Databases (시계열 데이터베이스에서 서브시퀀스 매칭을 위한 후처리 과정의 최적화)

  • Kim, Sang-Uk
    • The KIPS Transactions:PartD
    • /
    • v.9D no.4
    • /
    • pp.555-560
    • /
    • 2002
  • Subsequence matching, which consists of index searching and post-processing steps, is an operation that finds those subsequences whose changing patterns are similar to that of a given query sequence from a time-series database. This paper discusses optimization of post-processing for subsequence matching. The common problem occurred in post-processing of previous methods is to compare the candidate subsequence with the query sequence for discarding false alarms whenever each candidate subsequence appears during index searching. This makes a sequence containing candidate subsequences to be accessed multiple times from disk, and also have a candidate subsequence to be compared with the query sequence multiple times. These redundancies cause the performance of subsequence matching to degrade seriously. In this paper, we propose a new optimal method for resolving the problem. The proposed method stores ail the candidate subsequences returned by index searching into a binary search tree, and performs post-processing in a batch fashion after finishing the index searching. By this method, we are able to completely eliminate the redundancies mentioned above. For verifying the performance improvement effect of the proposed method, we perform extensive experiments using a real-life stock data set. The results reveal that the proposed method achieves 55 times to 156 times speedup over the previous methods.

Searching Algorithms for Protein Sequences and Weighted Strings (단백질 시퀀스와 가중치 스트링에 대한 탐색 알고리즘)

  • Kim, Sung-Kwon
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.29 no.8
    • /
    • pp.456-462
    • /
    • 2002
  • We are developing searching algorithms for weighted strings such as protein sequences. Let${\sum}$ be an alphabet and for each $a{\in}{\sum}$ its weight ${\mu}(a)$ is given. Given a string $A=a_1a_2…a_n\; with each ai{\in}{\sum}$, a substring<$A(i.j)=a_ia_{i+1}…a_j$ has weight ${\in}(A(i.j))={\in}(a_i)+{\in}(a_i+1)+…+{\in}(a_j)$.The problem we are dealing with is to preprocess A to build a searching structure, and later, given a query weight M, the structure is used to answer the question of whether there is a substring A(i,j) such that$M={\in}(A(i,j))$.In this paper an algorithm that improves over the previous result will be presented. The previously best known algorithm answers a query in $0(\frac{nlog\;logn}{log\; n})$time using a searching structure that requires O(n) amount of memory. Our algorithm reduces the memory requirement to $0(\frac{n}{log\; n})$ while achieving the same query answer time.