JP3648709B2 - サブシーケンスマッチング方法 - Google Patents
サブシーケンスマッチング方法 Download PDFInfo
- Publication number
- JP3648709B2 JP3648709B2 JP2001547619A JP2001547619A JP3648709B2 JP 3648709 B2 JP3648709 B2 JP 3648709B2 JP 2001547619 A JP2001547619 A JP 2001547619A JP 2001547619 A JP2001547619 A JP 2001547619A JP 3648709 B2 JP3648709 B2 JP 3648709B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- storage means
- subsequence
- index
- data sequence
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は時系列データベースにおけるサブシーケンスマッチング方法に関するものであり、より詳細にはウィンドウの構成を工夫することによりサブシーケンスマッチングの性能を向上させた時系列データベースにおけるサブシーケンスマッチング方法に関するものである。
【0002】
【従来の技術】
まず、以下の説明で使用される用語を定義する。
長さがnである「シーケンス」はn個のエントリーから構成された配列を意味し、「時系列データ」は各時間別に測定した実数値を有するエントリーのシーケンスを意味し、「時系列データベース」は時系列データを保存したデータベースを意味する。
【0003】
また、「データシーケンス」は時系列データベースに保存された時系列データを意味し、「質問シーケンス」はユーザによって与えられるシーケンスを意味し、「類似シーケンスマッチング」とは質問シーケンスと類似したデータシーケンスを検索する方法を意味する。
【0004】
前記で、類似シーケンスマッチングの二つのシーケンス間の距離が、ユーザが提示した「許容値」であるε以下であれば、二つのシーケンスは「類似」しているという。そして、シーケンスXとYとの間の距離がε以下であれば、XとYとはεマッチ(ε−match)であると定義し、長さがnである二つのシーケンスの距離を計算する演算を「n次元距離計算」であると定義する。
【0005】
上記の距離計算において、本発明は特定の距離計算方法に限定されない。しかし、本発明の技術に対する理解を助けるためにユークリッド距離計算方法に基づいて説明する。長さがnである二つのシーケンスX={X0 ,X1 ,...,Xn-1 }とY={Y0 ,y1 ,...,Yn-1 }との「ユークリッド距離」は、
【0006】
【数1】
【0007】
の式により定義する。
【0008】
シーケンスSがシーケンスAを含んでいる場合、即ちAがSの一部分である場合、AはSの「サブシーケンス」であるという。この時、類似シーケンスマッチングは、全体マッチングとサブシーケンスマッチングとの2種類に区分される。前記で「全体マッチング」とは、データシーケンスS1 ,S2 ,...,SN があって、質問シーケンスQと許容値εとが与えられた時、Qとεマッチする全てのデータシーケンスを探索する方法である。この時、データシーケンスと質問シーケンスとの長さは同一である。また、前記で「サブシーケンスマッチング」とは、それぞれ異なる長さを有するデータシーケンスS1 ,S2 ,...,SN があって、質問シーケンスQと許容値εとが与えられた時、Qとεマッチするサブシーケンスを含むデータシーケンスSi と当該サブシーケンスの位置とを探索する方法である。
【0009】
「ウィンドウ」は、シーケンスを分割する単位であり、分割する方法によってスライディングウィンドウとディスジョイントウィンドウとに区分する。前記「スライディングウィンドウ」は、シーケンスの可能な全ての位置を開始位置として構成したウィンドウを意味するが、添付図面の図1aはシーケンスを大きさ4であるスライディングウィンドウに分割した例を表す。前記図1aにおいて201はシーケンスであり、202は長さ4であるスライディングウィンドウである。また、前記「ディスジョイントウィンドウ」はウィンドウの大きさの倍数になる位置を開始位置として構成したウィンドウを意味するが、図1bはシーケンスを大きさ4であるディスジョイントウィンドウに分割した例を表す。前記図1bにおいて203はシーケンスであり、204はディスジョイントウィンドウである。
【0010】
サブシーケンスマッチングにおける「錯誤棄却」は、与えられた質問シーケンスとεマッチするが、錯誤によって棄却されるサブシーケンスを意味し、「錯誤解答」は質問シーケンスとεマッチはしないが、錯誤によってεマッチするものとして選択されたサブシーケンスを意味する。前記サブシーケンスマッチングにおいては錯誤棄却と錯誤解答とが発生してはならない。
【0011】
「特性抽出関数」は長さがnであるシーケンスに対してnよりも小さな個数の特性f個を抽出する関数を意味するが、前記特性抽出関数を類似シーケンスマッチングに使用するためには、これを使用することによる錯誤棄却が発生しないようにすべきである。前記錯誤棄却が発生しないことを保障するための特性抽出関数の条件は、Agrawal 、R.、Faloutsos 、C.、and Swami 、A.、"Efficient Similarity Search in Sequence Databases、"In Proc. the 4th Int'l Conf. on Foundations of Data Organization and Algorithms、Chicago 、Illinois、pp. 69-84、Oct.1993. [参考文献1] 及びFaloutsos 、C.、Ranganathan 、M.、and Manolopoulos、Y.、"Fast Subseqeunce Matching in Time-Series Databases 、"In Proc. Int'l Conf. on Management of Data 、ACM SIGMOD、Minneapolis 、Minnesota 、pp.419-429、 May1994.[参考文献2] に詳しく記載されている。
【0012】
また、以下の説明で使用される表記法を定義する。
Len(S)はシーケンスSの長さを意味し、S[k]はシーケンスSのk番目のエントリーであり、S[i:j]はシーケンスSのi番目のエントリーからj番目のエントリーまでにより構成されたサブシーケンスを表す。この時、前記S[i:j]は二つのサブシーケンスS[i:k]S[k+1:j]で表現することができる。また、Si はシーケンスSをディスジョイントウィンドウで分割した時、i番目のディスジョイントウィンドウを意味し、ωはスライディングウィンドウ及びディスジョイントウィンドウの大きさを表す。
【0013】
近年、株式データ、企業の成長率、為替レート変動データ、医療データ、天気変動データなどのように多様な分野で多くの量の時系列データが発生しているが、コンピュータの計算及び記憶能力が発展することによって多くの量の時系列データを活用しようとする研究が活発になされている。特に、時系列データに対する類似シーケンスマッチングは、データベースの新しい応用分野であるデータマイニングの重要な分野として位置を占めている。
【0014】
以下、従来技術による時系列データに対する類似シーケンスマッチング方法を説明する。
【0015】
[参考文献1] の従来技術ではデータシーケンスと質問シーケンスとの長さが同一である場合の全体マッチング問題を解決するために次のような過程を行なう。
【0016】
まず、特性抽出関数を使用して長さがnであるデータシーケンスをf次元の点に変換し、これをf次元索引に保存する。このように特性を抽出する理由は、多次元索引の高次元問題(dimensionality curse)によって高次元のシーケンスを多次元索引に直接保存することが難しいためである。その後、質問シーケンスもやはり同一の関数を使用してf次元の点に変換し、変換した点と許容値εとを使用して範囲質問(range query) を構成する。そして、構成した範囲質問で多次元索引を検索してεマッチする全ての点を探索して候補集合(candidate set) を求める。このように候補集合を求めれば錯誤棄却は発生しないが、シーケンスの長さnの代りにf個の特性のみを使用することによって錯誤解答が発生し得る。
【0017】
従って、多次元索引に対する検索結果から得られた各点に対しては実際のデータシーケンスをアクセスし、質問シーケンスとの距離を調べて錯誤解答を除去するが、これを「後処理過程(post-processing step)」という。
【0018】
また、[参考文献2] の従来技術では[参考文献1] の全体マッチング問題を一般化したサブシーケンスマッチング問題を解決するために次のような過程を行なったが、本発明ではこの解決策を著者等の名前の頭文字を取って「FRM」と呼ぶ。
【0019】
サブシーケンスマッチングにおいて、質問シーケンスと類似したサブシーケンスはデータシーケンスのどの位置にも現れるので、FRMでは全ての可能なサブシーケンスを調べるためにデータシーケンスの全ての可能な位置に対して一定の大きさのスライディングウィンドウを構成し、質問シーケンスをスライディングウィンドウの大きさと同一の大きさのディスジョイントウィンドウに分割する方法を用いた。FRMではデータシーケンスを分割した各スライディングウィンドウを低次元空間の点に変換した。そして、変換した点の個数が多すぎて各点を個別に多次元索引に保存することが難しいため、ヒューリスティックを使用していくつかの点を含む最小包囲四角形(MBR:minimum bounding rectangle) を構成し、個別点を保存する代わりに、これらMBRのみを多次元索引に保存し、これを利用して多様な長さの質問シーケンスに対するサブシーケンスマッチングを試みた。
【0020】
前記FRMでは多様な長さの質問シーケンスに対するサブシーケンスマッチングのために下記のような2種類の定理を提示して使用した。
【0021】
<定理1>
同一の長さのシーケンスSとQとを各々p個のディスジョイントウィンドウSi とqi (1≦i≦p)とに分割した時、シーケンスSとQとがεマッチすると、少なくとも一つ以上の(si ,qi )対がε/√pマッチする
【0022】
<定理2>
同一の長さのシーケンスSとQとがεマッチすると、S[i:j],Q[i:j]のいかなるサブシーケンス対もεマッチする。
【0023】
前記<定理1>と<定理2>とを使用してFRMは質問シーケンスをp個のディスジョイントウィンドウに分割し、各ウィンドウをf次元の点に変換する。そして、変換した点とε/√pとを使用して範囲質問を構成し、多次元索引を検索して候補集合を求める。その後、データベースからデータシーケンスを読み込んでLen(Q)次元距離計算により候補集合に含まれる錯誤解答を除去するための後処理過程を行なう。
【0024】
前記サブシーケンスマッチングにおいて索引検索結果から求めた候補集合に錯誤解答がより多く含まれれば、後処理過程のディスクアクセス(データベースが記憶されているハードディスクへのアクセス)及びCPU演算もより増加し、その結果、性能が大きく低下するため、これを防止するためには錯誤解答を削減させなければならない。前記FRMにおいて索引検索結果から求めた候補集合に錯誤解答が含まれる最大の原因は個別点を多次元索引に直接保存せずに、多数個の点を含むMBRを構成してMBRのみを索引に保存するためである。即ち、同一の範囲質問に対して個別点を保存した時は候補にならないサブシーケンスが発生し、MBRのみを構成して保存した時は候補になる場合が多数発生するためである。
【0025】
【発明が解決しようとする課題】
しかし、FRMにおいて個別点を多次元索引に直接保存する場合、全てのデータシーケンスの長さの総計程度の多数のf次元点が生じる。この結果、本来のデータシーケンスの記憶空間よりも約f倍多い記憶空間が必要になる。また、これを保存する多次元索引の高さが大きくなって性能が大きく低下する([参考文献2] )。従って、FRMではMBRを構成して保存するので、個別点を索引に直接保存し、これを使用して点と点とを比較して錯誤解答を削減する効果、即ち、「点濾過効果(point-filtering effect)」を得ることができなくなる。この結果、錯誤解答が大きく増加し、性能が大きく低下するという問題点がある。
【0026】
【課題を解決するための手段】
本発明は、前記のような従来技術の問題点を解決するために案出したものであり、その目的はデータシーケンスをディスジョイントウィンドウに分割し、質問シーケンスをスライディングウィンドウに分割するという通常とは逆のウィンドウ構成を利用したデュアルマッチ(Dual Match:Duality-based subsequence Matching) 方法を使用することによって、錯誤解答を大きく削減し、性能を改善した時系列データベースにおけるサブシーケンスマッチング方法を提供することにある。
【0027】
また、本発明の他の目的は個別点を索引に直接保存し、これにより点濾過効果を得ることによって、錯誤解答を顕著に削減して性能を大きく向上させた時系列データベースにおけるサブシーケンスマッチング方法を提供することにある。
【0028】
また、本発明の更に他の目的は索引構成過程でCPUオーバーヘッドの多くの部分を占める特性抽出関数の使用を削減することによって迅速に索引を構成できる時系列データベースにおけるサブシーケンスマッチング方法を提供することにある。
【0029】
前記のような目的を達成するための本発明の第1の特徴によれば、データシーケンスを時系列データベースとして記憶した第1の記憶手段と、該第1の記憶手段が記憶しているデータシーケンスを一時記憶する第2の記憶手段と、前記第1及び第2の記憶手段にアクセス可能な制御手段とを備えたコンピュータシステムを使用してサブシーケンスマッチングを行なうサブシーケンスマッチング方法において、前記制御手段が、前記第1の記憶手段からデータシーケンスを読み出して前記第2の記憶手段に一時記憶させる第1の処理と、前記第2の記憶手段に一時記憶させたデータシーケンスをディスジョイントウィンドウに分割する第2の処理と、与えられた質問シーケンスをスライディングウィンドウに分割する第3の処理と、前記第1の記憶手段へのアクセス回数及びサブシーケンスマッチングに必要な距離計算の回数を削減するために、前記第2の記憶手段に一時記憶させたデータシーケンスを分割したディスジョイントウィンドウに対して、前記質問シーケンスを分割したスライディングウィンドウのサブシーケンスマッチングを行なう第4の処理とを実行する時系列データベースにおけるサブシーケンスマッチング方法を提供する。
【0030】
この時、本発明の付加的な特徴によれば、前記第4の処理においては、前記制御手段が、データシーケンスを分割したディスジョイントウィンドウを表わす個別点を特徴抽出関数を用いて変換する処理と、変換した個別点を前記第1の記憶手段に索引として直接記憶させる処理と、質問シーケンスを分割したスライディングウィンドウを表わす個別点を特徴抽出関数を用いて変換する処理と、変換した個別点を範囲質問に直接使用する処理とを更に実行する。
【0031】
この時、範囲質問の回数を削減するために、前記制御手段が、多数個の点を含む最小包囲四角形(MBR)を構成して質問することにより候補集合を求める処理を更に実行することが望ましい。
【0032】
なお、本発明の上述した特徴によれば、索引構成に必要な特性抽出関数の使用を削減して迅速に索引を構成することも可能になる。
【0033】
一方、前記のような目的を達成するための本発明の第2の特徴によれば、第1の特徴において、前記制御手段がサブシーケンスマッチングを行なうための多次元索引を構成する索引構成処理のために、前記制御手段が、一つのf次元索引を生成して初期化する第5の処理と、前記第2の処理でデータシーケンスを分割したディスジョイントウィンドウを特性抽出関数を用いてf次元の点に変換する第6の処理と、前記第6の処理で変換した点と、この点に変換されたウィンドウが含まれるデータシーケンスの識別子及び開始位置とでレコードを構成する第7の処理と、前記第7の処理で構成したレコードを前記第1の処理で初期化したf次元索引に挿入する第8の処理と、前記第2の処理で分割された全てのディスジョイントウィンドウに対して前記第6及び第7の処理を反復する第9の処理と、前記第1の記憶手段から次に読み込むべきデータシーケンスの有無を確認する第10の処理と、前記第10の処理において、次に読み込むべきデータシーケンスがないと判断した場合は索引構成を終了し、次に読み込むべきデータシーケンスがあると判断した場合は次に読み込むべきデータシーケンスを読み込んだ後に前記第3の処理へ戻る第11の処理とを更に実行する時系列データベースにおけるサブシーケンスマッチング方法を提供する。
【0034】
また、前記のような目的を達成するための本発明の第3の特徴によれば、第1の特徴において、前記第1の記憶手段が更に多次元索引を記憶しており、ユーザが提示した質問シーケンスと類似したサブシーケンスを前記制御手段が探索するサブシーケンスマッチング処理のために、前記制御手段が、サブシーケンスに含まれる最小ディスジョイントウィンドウの個数を求める第12の処理と、前記第3の処理で分割したスライディングウィンドウを特性抽出関数を用いてf次元の点に変換する第13の処理と、前記第13の処理で変換した点と、前記第12の処理で求めた最小ディスジョイントウィンドウの個数と、ユーザが提示した許容値とを用いて範囲質問を構成する第14の処理と、前記第14の処理で構成した範囲質問を用いて多次元索引を検索し、検索結果に基づいて候補集合を構成する第15の処理と、候補集合に含まれる候補サブシーケンスを前記第1の記憶手段から前記第2の記憶手段に読み込む第16の処理と、前記第16の処理で読み込んだ候補サブシーケンスと質問シーケンスとの間の距離計算を行うことにより、候補集合に含まれる全ての候補サブシーケンスに対して錯誤解答であるか否かを確認する第17の処理とを更に実行する時系列データベースにおけるサブシーケンスマッチング方法を提供する。
【0035】
また、前記のような目的を達成するための本発明の第4の特徴によれば、第1の特徴において、前記第1の記憶手段は更に多次元索引を記憶しており、ユーザが提示した質問シーケンスと類似したサブシーケンスを前記制御手段が探索する際に、範囲質問の回数を削減するためのサブシーケンスマッチング処理のために、前記制御手段が、サブシーケンスに含まれる最小ディスジョイントウィンドウの個数を求める第18の処理と、前記第3の処理で分割した各スライディングウィンドウを特性抽出関数を用いてf次元の点に変換した後、多数個の点を含む最小包囲四角形(MBR)を構成する第19の処理と、前記第19の処理で構成した最小包囲四角形(MBR)と、前記第18の処理で求めた最小ディスジョイントウィンドウの個数と、ユーザが提示した許容値とを用いて範囲質問を構成する第20の処理と、前記第20の処理で構成した範囲質問を用いて前記第1の記憶手段が記憶している多次元索引を検索する第21の処理と、前記第20の処理で範囲質問の構成に用いた最小包囲四角形(MBR)に含まれる各点と前記第21の処理での検索結果で探索した各点との間の距離計算を行うことにより、候補集合を構成する第22の処理と、前記候補集合に含まれる候補サブシーケンスを前記第2の記憶手段に読み込む第23の処理と、前記第23の処理で前記第2の記憶手段に読み込んだ候補サブシーケンスと質問シーケンスとの間の距離計算を行なうことにより、候補集合に含まれる全ての候補サブシーケンスに対して錯誤解答であるか否かを確認する第24の処理とを更に実行する時系列データベースにおけるサブシーケンスマッチング方法を提供する。
【0036】
本発明の詳述した目的と種々の長所はこの技術分野に熟練した人々により、添付された図面を参照して後述される本発明の望ましい実施の形態からより明確になることであろう。
【0037】
前記のように本発明のサブシーケンスマッチング方法はデータシーケンスをディスジョイントウィンドウに分割し、質問シーケンスをスライディングウィンドウに分割するデュアルマッチ方法を使用するが、従来技術のFRMでは本発明とは逆にデータシーケンスをスライディングウィンドウに分割し、質問シーケンスをディスジョイントウィンドウに分割する方法を使用する。この結果、本発明のデュアルマッチ方法によるサブシーケンスマッチング方法は従来技術において発生する多くの錯誤解答を除去して性能を向上させることができるようになる。
【0038】
従来技術のFRMは索引を保存するために必要な記憶空間を削減するために、ウィンドウが変換された個別点に代えて、多数個の点を含む最小包囲四角形(MBR)のみを保存することに起因して多くの錯誤解答が発生するが、本発明のデュアルマッチ方法によるサブシーケンスマッチング方法では従来技術のFRMと同様の大きさの記憶空間に個別点を索引に直接保存することによって、この問題を解決している。
【0039】
また、本発明では上記の通りに個別点を索引に直接保存し、保存された個別点を使用して点と点とを直接比較することによって錯誤解答を削減する点濾過効果を得ることができる。
【0040】
【発明の実施の形態】
以下、本発明のデュアルマッチ方法によるサブシーケンスマッチング方法が錯誤棄却を発生せずに、サブシーケンスマッチングを正しく遂行することを証明するための理論的根拠を詳細に説明する。
【0041】
まず、本発明のデュアルマッチ方法によるサブシーケンスマッチング方法を説明するために用語を定義する。
シーケンスSを決められたディスジョイントウィンドウに分割した時、これらのうちサブシーケンスS[i:j]に含まれるディスジョイントウィンドウをS[i:j]の「包囲ウィンドウ」と定義する。そして、長さLである全てのサブシーケンスの包囲ウィンドウの個数のうち、最小値を長さLであるサブシーケンスの「最小包囲ウィンドウ個数」と定義し、これをpで表す。長さLであるサブシーケンスの最小包囲ウィンドウ個数がpであるということは、長さLである全てのサブシーケンスはその位置に関係なく包囲ウィンドウの個数が、p以上であることを意味する。最小包囲ウィンドウ個数は下記の<定理3>を利用して求めることができる。
【0042】
<定理3>
シーケンスSを大きさωであるディスジョイントウィンドウに分割した時、長さLであるSのサブシーケンスの最小包囲ウィンドウ個数は「[(L+1)/ω]−1」である。
【0043】
前記<定理3>によれば、長さLen(Q)のSのサブシーケンスは「[(len(Q)+1)/ω]−1」個以上のディスジョイントウィンドウを含む。この時、前記Qは質問シーケンスを意味する。そして、デュアルマッチ方法は下記の<定理4>に基づいて錯誤棄却の発生無しに類似サブシーケンスの候補集合を求めることができる。
【0044】
<定理4>
データシーケンスSを大きさωであるディスジョイントウィンドウに分割し、質問シーケンスQを同一の大きさのスライディングウィンドウに分割した時、長さLen(Q)のSのサブシーケンスS[i:j]とQとがεマッチすると、少なくとも1つ以上のディスジョイントウィンドウS[i+k:i+k+ω−1](0≦k≦Len(Q)−ω)とスライディングウィンドウQ[k:k+ω−1]とがε/√pマッチする。ここで、pは<定理3>により求められるLen(Q)のサブシーケンスの最小包囲ウィンドウ個数である。
【0045】
前記<定理4>は図2を利用して次の通りに証明することができる。
図2で質問シーケンスQとサブシーケンスS[i:j]とがεマッチするとする。この時、最小包囲ウィンドウ個数がpであるので、S[i:j]はp個以上のディスジョイントウィンドウを含む。図2でS[i:j]はp個のディスジョイントウィンドウS1 ,...,Sp を含んでおり、これらのディスジョイントウィンドウの前後にSh (hはheadを意味する)とSt (tはtailを意味する)のサブシーケンスを含む。結局、S[i:j]は、Sh ,S1 ,...,Sp ,St のように表すことができる。
【0046】
同様の方法で、質問シーケンスQはqh ,q1 ,...,qp ,qt のように表すことができる。このように表した時、S[i:j]とQとがεマッチすると、<定理2>によってS1 ,...,Sp とq1 ,...,qp とがεマッチすることになる。そして、再び<定理1>によってS1 ,...,Sp とq1 ,...,qp とがεマッチすると、最小限一つのウィンドウ対Sk ,qk がε/√pマッチする。結局、S[i:j]とQとがεマッチすると、S[i:j]は最小包囲ウィンドウ個数(=p)以上のディスジョイントウィンドウを含んでおり、このうち最小限一つのディスジョイントウィンドウSk とQのスライディングウィンドウqk とがε/√pマッチする。
【0047】
質問時には、質問シーケンスQをスライディングウィンドウに分割するので、これらの内には<定理4>のウィンドウqk が含まれている。前記<定理4>によって、データシーケンスを分割したディスジョイントウィンドウと質問シーケンスを分割した任意のスライディングウィンドウとがε/√pマッチする時、即ち、<定理4>の必要条件が満足される時、当該ディスジョイントウィンドウを含むサブシーケンスにより候補集合を構成すれば錯誤棄却の発生無しに全ての類似サブシーケンスを探索することができる。
【0048】
本発明のデュアルマッチ方法によるサブシーケンスマッチング方法の最大ウィンドウ大きさは下記の<定理5>を使用して求めることができる。
【0049】
<定理5>
与えられた最小質問シーケンス長さをMin(Q)とすると、デュアルマッチ方法での最大ウィンドウ大きさは、「[(Min(Q)+1)/2]」である。
【0050】
以下、本発明による望ましい一実施の形態を添付図面を参照して詳細に説明する。
【0051】
本発明のデュアルマッチ方法によるサブシーケンスマッチング方法は、索引構成とサブシーケンスマッチングとの二つの過程からなる。この時、時系列データの記憶及び管理が可能で多次元索引構造を支援するデータベース管理システム機能が必要である。
【0052】
本発明では、効率的なサブシーケンスマッチングを遂行するためには、図3に示されているシステムが必要である。図3において、10はコンピュータのメモリ、15はコンピュータのCPUである。この時、前記メモリ10にはいずれもソフトウェアとしてのデータベース管理システム20及びサブシーケンスマッチングシステム25とが具備されるが、本発明のデュアルマッチ方法によるサブシーケンスマッチング方法は前記サブシーケンスマッチングシステム25で具現される。前記データベース管理システム20はデータベース記憶装置35に保存された時系列データベース40と多次元索引45とを管理するソフトウェアである。また、前記サブシーケンスマッチングシステム25はデータベース管理システム20を通じて時系列データベース40と多次元索引45とをアクセスして使用するソフトウェアである。
【0053】
デュアルマッチ方法での索引構成過程においては、時系列データベース40に保存されているデータシーケンスを入力としてサブシーケンスマッチングに用いる多次元索引45を構成するが、図4は索引構成過程のアルゴリズムを表す。
【0054】
図4を参照すれば、第1ステップS301では、一つのf次元索引を生成して初期化する。第2ステップS302では、時系列データベース40から一つのデータシーケンスをメモリ10に読み込んで現在のシーケンスとする。第3ステップS303では、第2ステップS302または後述する第8ステップS308で読み込んだデータシーケンスをディスジョイントウィンドウに分割する。その後、第4ステップS304では、各ディスジョイントウィンドウをf次元の点に変換する。
【0055】
第5ステップS305では、ウィンドウを変換した点と、当該ウィンドウ(点に変換されたウィンドウ)が含まれるデータシーケンスの識別子と、このデータシーケンスにおいて当該ウィンドウの開始位置とでレコードを構成する。第6ステップS306では、ディスジョイントウィンドウを変換した点をキーとして第5ステップS305で構成したレコードを第1ステップS301で構成した多次元索引45に挿入する。このように第3ステップ(S303) から第6ステップS306までを反復して一つのディスジョイントウィンドウに対する索引構成を遂行する。
【0056】
第7ステップS307では、時系列データベース40から次に読み込むデータシーケンスがあるか否かを確認する。第7ステップS307での確認の結果、次に読み込むデータシーケンスがある場合は、第8ステップS308においてこのデータシーケンスを読み込んだ後、第3ステップS303に戻って索引構成を続ける。しかし、第7ステップS307での確認の結果、これ以上読み込むデータシーケンスがない場合は、全てのデータシーケンスに対する索引構成が遂行されたので、索引構成過程を終了する。
【0057】
一方、サブシーケンスマッチング過程では質問シーケンスqと許容値εとを入力とし、質問シーケンスqと類似したサブシーケンスを探索する作業を行なう。図5はサブシーケンスマッチング過程のアルゴリズムを表す。
【0058】
図5を参照すれば、第1ステップS501では、<定理3>により長さLen(Q)のサブシーケンスに含まれる最小ディスジョイントウィンドウ個数「p=「Len(Q)+1/ω」−1」を求める。第2ステップS502では、質問シーケンスをスライディングウィンドウに分割して現在のシーケンスとする。次に各スライディングウィンドウに対して次の第3ステップS503から第5ステップS505までを反復する。第3ステップS503では、特性抽出関数を用いてスライディングウィンドウをf次元の点に変換する。第4ステップS504では、スライディングウィンドウを変換した点とε/√pとで範囲質問を構成して多次元索引45を検索し、スライディングウィンドウを変換した点とε/√p距離内にある全ての点とを捜し出す。
【0059】
その後、第5ステップS505では、スライディングウィンドウに対する検索結果を用いて候補集合を構成するが、検索に用いた点がi番目のスライディングウィンドウを変換した点であり、検索結果で捜し出した点がデータシーケンスSのj番目のディスジョイントウィンドウであれば、データシーケンスSの(j−i)番目のエントリーから始まるサブシーケンスを候補集合に含ませる。第6ステップS506では、現在のウィンドウが最後のスライディングウィンドウであるか否かを確認する。第6ステップS506での確認の結果、最後のスライディングウィンドウではない場合は、第7ステップS507において次のスライディングウィンドウを現在のスライディングウィンドウとして第3ステップS503に戻って検索をを続ける。しかし、第6ステップS506での確認の結果、最後のスライディングウィンドウであった場合は、全てのスライディングウィンドウに対する検索が遂行されたので、検索過程を終了する。このように、第3ステップS503から第5ステップS505を全てのスライディングウィンドウに対して反復して候補集合を求める。
【0060】
上記の過程により候補集合が求められると、候補集合に含まれる各候補サブシーケンスに対して第8ステップS508を行なう。第8ステップS508では、各候補サブシーケンスを時系列データベース40からメモリ10に読み込み、読み込んだ候補サブシーケンスと質問シーケンスとのLen(Q)次元距離を計算し、その距離がεより大きければ錯誤解答であるので解答から除き、ε以下であれば類似サブシーケンスであるので解答として出力する。
【0061】
前記のような索引構成過程とサブシーケンスマッチング過程とを用いれば従来技術のFRM方法では点濾過効果の欠如により発生する錯誤解答が本発明では現れないようになる。これは索引構成過程においてデータシーケンスを変換した個別点を時系列データベース40の多次元索引45に直接保存し、サブシーケンスマッチング過程において質問シーケンスを変換した個別点に質問するためである。即ち、索引構成において個別点をCPU15が多次元索引45に直接記憶させると共に検索に直接使用することによって点濾過効果を得ることができ、これにより錯誤解答を大きく削減することができる。このように錯誤解答を削減することによってその分だけ候補個数も大きく削減され、ディスクアクセス、即ちデータベース記憶装置35へのアクセスとLen(Q)次元距離計算とを削減して結局性能を向上させることができる。
【0062】
前述した、質問シーケンスをスライディングウィンドウに分割し、これを変換した個別点各々に対して範囲質問を行なうために生じ得る性能低下の問題点を解決するために、本発明では下記のように範囲質問の回数を削減する改善されたサブシーケンスマッチング過程を行うことができる。
【0063】
改善されたサブシーケンスマッチング過程においても質問シーケンスと許容値とを入力とし、類似サブシーケンスを探索する作業を行なうが、図6は改善されたサブシーケンスマッチング過程のアルゴリズムを表す。
【0064】
図6を参照すれば、第1ステップS601では、<定理3>により長さLen(Q)のサブシーケンスに含まれる最小ディスジョイントウィンドウ個数「p=[(Len(Q)+1)/ω]−1」を求める。第2ステップ(S602) では、質問シーケンスQをスライディングウィンドウに分割した後、特性抽出関数を用いて各ウィンドウをf次元の点に変換し、このような点を多数個含むMBR(最小包囲四角形)を構成する。第3ステップ(S603)では最初のMBRを現在のMBRとする。
【0065】
前記MBRを構成する方法としては、従来のFRM方法で用いたヒューリスティック方法、固定個数の点によりMBRを構成する方法、そして全ての点を一つのMBRに含ませる方法などがあるが、質問シーケンスが短い場合(ウィンドウ大きさの3〜4倍以下) には、一つのMBRを構成することが効果的であり、質問シーケンスが長い場合(ウィンドウ大きさの5倍以上) には、多数個のMBRを構成することが効果的であることを確認した。
【0066】
その後、前記構成した各MBRに対して第4ステップS604から第5ステップS605までを反復する。第4ステップS604では、現在のMBRとε/√pとで範囲質問を構成し、構成した範囲質問で多次元索引(f次元索引)を検索してMBRとε/√p距離内にある全ての点を捜し出す。第5ステップS605では、現在のMBRに含まれる各点と検索結果で捜し出した各点との距離計算により候補集合を構成する。
【0067】
具体的には、現在のMBRに含まれる一点が質問シーケンスQのi番目のスライディングウィンドウを変換した点であり、検索結果で捜し出した一点がデータシーケンスSのj番目のディスジョイントウィンドウであるとした時、二点間のF次元距離がε/√p以下であれば、データシーケンスSの(j−i)番目のエントリーから始まるサブシーケンスを候補集合に含ませる。第6ステップS606では、現在のMBRが最後のMBRであるか否かを確認する。第6ステップS606での確認の結果、最後のMBRではない場合は、第7ステップS607において次のMBRを現在のMBRとして第4ステップS604に戻って検索をを続ける。しかし、第6ステップS606での確認の結果、最後のMBRであった場合は、全てのMBRに対する検索が遂行されたので、検索過程を終了する。このように第4ステップS604から第5ステップS605までを全てのMBRに対して反復して候補集合を求める。候補集合が求められると、候補集合に含まれる各候補サブシーケンスに対して第8ステップS608を行なう。第8ステップS608では、候補サブシーケンスを時系列データベース40からメモリ10に読み込み、読み込んだ候補サブシーケンスと質問シーケンスとのLen(Q)次元距離を計算して、その距離がεより大きければ錯誤解答であるので解答から除き、ε以下であれば類似サブシーケンスであるので解答として出力する。
【0068】
このように個別点の代わりにMBRを構成して検索する改善されたサブシーケンスマッチング過程を用いれば、範囲質問の回数を点の個数からMBRの個数へ削減することができ、しかも個別点を質問に直接用いるサブシーケンスマッチング過程と同一候補集合を求めることができる。これはMBRにより検索した後に、MBRに含まれる各点と検索結果から得た各点との間の距離計算を行ない、二点間の距離がε/√p以下である場合のみに、二点で構成されるサブシーケンスを候補集合に含ませる「索引水準濾過(index-level filtering) 」を行なうためである。即ち、MBRを構成して質問することによって追加的な候補サブシーケンスを発生することができるが、MBRに含まれる各点と検索結果から得た各点との間のf次元距離計算を遂行することによってディスクアクセスとLen(Q)次元距離計算以前に追加的な候補サブシーケンスを除去することができる。
【0069】
このように改善されたサブシーケンスマッチング過程を用いることにより、従来技術のFRM方法に比べて、本発明では候補集合の大きさを削減して性能を向上させることができる。
【0070】
本出願人による実験結果では、デュアルマッチ方法では従来のFRMに比べて候補個数が最大1/9,000まで削減し、性能が最大160倍まで大きく向上させた。また、デュアルマッチ方法は、データシーケンスをディスジョイントウィンドウに分割することにより、データシーケンスをスライディングウィンドウに分割する従来のFRMに比べて索引構成が14乃至230倍迅速になる特徴を有する。このような結果から、デュアルマッチ方法は、サブシーケンスマッチングの一般的な解決策として見なされている従来のFRMを代替出来るものであることが判る。
【0071】
【発明の効果】
以上に説明したように、本発明の時系列データベースにおけるサブシーケンスマッチング方法ではデュアルマッチ方法により、ウィンドウを構成する方法を通常とは逆にしてデータシーケンスをディスジョイントウィンドウに分割することにより索引に保存すべき(データベースに記憶すべき)点の個数を従来のFRMの場合に比して1/ω(ω>100)に大きく削減して、個別点を索引に直接保存する(データベースに直接記憶する)ことができる。そして、質問シーケンスを分割したスライディングウィンドウを変換した個別点により多次元索引を検索する。従って、デュアルマッチ方法は、質問に用いられた点と索引に保存された点とを比較することによって、点濾過効果を得ることができ、これにより錯誤解答を大幅に削減して性能を大きく向上させることができる効果がある。
【0072】
また、本発明でのデュアルマッチ方法は、データシーケンスをディスジョイントウィンドウに分割することにより索引構成過程における特性抽出関数の使用をFRMの約1/ω(ω>100)以上に削減して、特性抽出関数の使用に必要なCPU演算の回数を大幅に削減し、従来のFRMに比べて迅速に索引を構成できる効果がある。
【0073】
以上では本発明を実施の形態によって詳細に説明したが、本発明は実施の形態によって限定されず、本発明が属する技術分野において通常の知識を有するものであれば本発明の思想と精神を離れることなく、本発明を修正または変更できるであろう。
【図面の簡単な説明】
【図1a】 シーケンスをスライディングウィンドウに分割する方法を示す例示図である。
【図1b】 シーケンスをディスジョイントウィンドウに分割する方法を示す例示図である。
【図2】 ウィンドウを利用したサブシーケンス及び質問シーケンスの表現方法を示す例示図である。
【図3】 本発明によるサブシーケンスマッチング方法が具現されるシステムの概略的な構成を示す例示図である。
【図4】 本発明によるサブシーケンスマッチング方法で多次元索引を構成する索引構成アルゴリズムを示す図面である。
【図5】 本発明によるサブシーケンスマッチング方法で類似サブシーケンスを捜し出すサブシーケンスマッチングアルゴリズムを示す図面である。
【図6】 本発明によるサブシーケンスマッチング方法で類似サブシーケンスを探索するが、範囲質問回数を削減する改善されたサブシーケンスマッチングアルゴリズムを示す図面である。
Claims (6)
- データシーケンスを時系列データベースとして記憶した第1の記憶手段と、該第1の記憶手段が記憶しているデータシーケンスを一時記憶する第2の記憶手段と、前記第1及び第2の記憶手段にアクセス可能な制御手段とを備えたコンピュータシステムを使用してサブシーケンスマッチングを行なうサブシーケンスマッチング方法において、前記制御手段が、
前記第1の記憶手段からデータシーケンスを読み出して前記第2の記憶手段に一時記憶させる第1の処理と、
前記第2の記憶手段に一時記憶させたデータシーケンスをディスジョイントウィンドウに分割する第2の処理と、
与えられた質問シーケンスをスライディングウィンドウに分割する第3の処理と、
前記第1の記憶手段へのアクセス回数及びサブシーケンスマッチングに必要な距離計算の回数を削減するために、前記第2の記憶手段に一時記憶させたデータシーケンスを分割したディスジョイントウィンドウに対して、前記質問シーケンスを分割したスライディングウィンドウのサブシーケンスマッチングを行なう第4の処理と
を実行することを特徴とするサブシーケンスマッチング方法。 - 前記第4の処理は、前記制御手段が、
データシーケンスを分割したディスジョイントウィンドウを表わす個別点を特徴抽出関数を用いて変換する処理と、
変換した個別点を前記第1の記憶手段に索引として直接記憶させる処理と、
質問シーケンスを分割したスライディングウィンドウを表わす個別点を特徴抽出関数を用いて変換する処理と、
変換した個別点を範囲質問に直接用いる処理と
を更に実行することを特徴とする請求項1に記載のサブシーケンスマッチング方法。 - 範囲質問の回数を削減するために、前記制御手段が、多数個の点を含む最小包囲四角形(MBR)を構成して質問することにより候補集合を求める処理を更に実行することを特徴とする請求項2に記載のサブシーケンスマッチング方法。
- 前記制御手段がサブシーケンスマッチングを行なうための多次元索引を構成する索引構成処理のために、前記制御手段が、
一つのf次元索引を生成して初期化する第5の処理と、
前記第2の処理でデータシーケンスを分割したディスジョイントウィンドウを特性抽出関数を用いてf次元の点に変換する第6の処理と、
前記第6の処理で変換した点と、この点に変換されたウィンドウが含まれるデータシーケンスの識別子及び開始位置とでレコードを構成する第7の処理と、
前記第7の処理で構成したレコードを前記第1の処理で初期化したf次元索引に挿入する第8の処理と、
前記第2の処理で分割された全てのディスジョイントウィンドウに対して前記第6及び第7の処理を反復する第9の処理と、
前記第1の記憶手段から次に読み込むべきデータシーケンスの有無を確認する第10の処理と、
前記第10の処理において、次に読み込むべきデータシーケンスがないと判断した場合は索引構成を終了し、次に読み込むべきデータシーケンスがあると判断した場合は次に読み込むべきデータシーケンスを読み込んだ後に前記第3の処理へ戻る第11の処理と
を更に実行することを特徴とする請求項1に記載のサブシーケンスマッチング方法。 - 前記第1の記憶手段が更に多次元索引を記憶しており、ユーザが提示した質問シーケンスと類似したサブシーケンスを前記制御手段が探索するサブシーケンスマッチング処理のために、前記制御手段が、
サブシーケンスに含まれる最小ディスジョイントウィンドウの個数を求める第12の処 理と、
前記第3の処理で分割したスライディングウィンドウを特性抽出関数を用いてf次元の点に変換する第13の処理と、
前記第13の処理で変換した点と、前記第12の処理で求めた最小ディスジョイントウィンドウの個数と、ユーザが提示した許容値とを用いて範囲質問を構成する第14の処理と、
前記第14の処理で構成した範囲質問を用いて多次元索引を検索し、検索結果に基づいて候補集合を構成する第15の処理と、
候補集合に含まれる候補サブシーケンスを前記第1の記憶手段から前記第2の記憶手段に読み込む第16の処理と、
前記第16の処理で読み込んだ候補サブシーケンスと質問シーケンスとの間の距離計算を行うことにより、候補集合に含まれる全ての候補サブシーケンスに対して錯誤解答であるか否かを確認する第17の処理と
を更に実行することを特徴とする請求項1に記載のサブシーケンスマッチング方法。 - 前記第1の記憶手段は更に多次元索引を記憶しており、ユーザが提示した質問シーケンスと類似したサブシーケンスを前記制御手段が探索する際に、範囲質問の回数を削減するためのサブシーケンスマッチング処理のために、前記制御手段が、
サブシーケンスに含まれる最小ディスジョイントウィンドウの個数を求める第18の処理と、
前記第3の処理で分割した各スライディングウィンドウを特性抽出関数を用いてf次元の点に変換した後、多数個の点を含む最小包囲四角形(MBR)を構成する第19の処理と、
前記第19の処理で構成した最小包囲四角形(MBR)と、前記第18の処理で求めた最小ディスジョイントウィンドウの個数と、ユーザが提示した許容値とを用いて範囲質問を構成する第20の処理と、
前記第20の処理で構成した範囲質問を用いて前記第1の記憶手段が記憶している多次元索引を検索する第21の処理と、
前記第20の処理で範囲質問の構成に用いた最小包囲四角形(MBR)に含まれる各点と前記第21の処理での検索結果で探索した各点との間の距離計算を行うことにより、候補集合を構成する第22の処理と、
前記候補集合に含まれる候補サブシーケンスを前記第2の記憶手段に読み込む第23の処理と、
前記第23の処理で前記第2の記憶手段に読み込んだ候補サブシーケンスと質問シーケンスとの間の距離計算を行なうことにより、候補集合に含まれる全ての候補サブシーケンスに対して錯誤解答であるか否かを確認する第24の処理と
を更に実行することを特徴とする請求項1に記載のサブシーケンスマッチング方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990059467A KR100344530B1 (ko) | 1999-12-20 | 1999-12-20 | 시계열 데이터베이스에서 윈도우 구성의 이원성을 사용한 서브시퀀스 매칭방법 |
KR1999/59467 | 1999-12-20 | ||
PCT/KR2000/001458 WO2001046771A2 (en) | 1999-12-20 | 2000-12-14 | A subsequence matching method using duality in constructing windows in time-series databases |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003518310A JP2003518310A (ja) | 2003-06-03 |
JP3648709B2 true JP3648709B2 (ja) | 2005-05-18 |
Family
ID=19627347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001547619A Expired - Fee Related JP3648709B2 (ja) | 1999-12-20 | 2000-12-14 | サブシーケンスマッチング方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6496817B1 (ja) |
EP (1) | EP1250636A2 (ja) |
JP (1) | JP3648709B2 (ja) |
KR (1) | KR100344530B1 (ja) |
AU (1) | AU2029501A (ja) |
WO (1) | WO2001046771A2 (ja) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7174340B1 (en) * | 2000-08-17 | 2007-02-06 | Oracle International Corporation | Interval-based adjustment data includes computing an adjustment value from the data for a pending adjustment in response to retrieval of an adjusted data value from a database |
US7146374B1 (en) * | 2001-02-21 | 2006-12-05 | Oracle Corporation | Automated multi-line labeling of a time axis |
US7283987B2 (en) * | 2001-03-05 | 2007-10-16 | Sap Ag | Compression scheme for improving cache behavior in database systems |
US6907426B2 (en) * | 2001-05-17 | 2005-06-14 | International Business Machines Corporation | Systems and methods for identifying and counting instances of temporal patterns |
KR100483321B1 (ko) * | 2001-10-17 | 2005-04-15 | 한국과학기술원 | 하이퍼사각형 기반의 다차원 데이터 세그먼테이션을이용한 유사성 검색 장치와 그 방법 |
KR100472949B1 (ko) * | 2001-10-18 | 2005-03-08 | 한국전자통신연구원 | 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법 |
KR20030032499A (ko) * | 2001-10-18 | 2003-04-26 | 한국전자통신연구원 | 시퀀스 데이터베이스에서 타임 워핑 기반의 서브시퀀스매칭방법 |
US7080072B1 (en) * | 2001-11-14 | 2006-07-18 | Ncr Corp. | Row hash match scan in a partitioned database system |
US20030130996A1 (en) * | 2001-12-21 | 2003-07-10 | International Business Machines Corporation | Interactive mining of time series data |
US20040034633A1 (en) * | 2002-08-05 | 2004-02-19 | Rickard John Terrell | Data search system and method using mutual subsethood measures |
US20040024755A1 (en) * | 2002-08-05 | 2004-02-05 | Rickard John Terrell | System and method for indexing non-textual data |
US7580812B2 (en) * | 2004-01-28 | 2009-08-25 | Honeywell International Inc. | Trending system and method using window filtering |
US7447666B2 (en) | 2004-04-09 | 2008-11-04 | The Boeing Company | System and method for analyzing a pattern in a time-stamped event sequence |
US7624098B2 (en) * | 2005-10-07 | 2009-11-24 | International Business Machines Corporation | Generating suitable data for statistical analysis |
US20070097755A1 (en) * | 2005-10-27 | 2007-05-03 | Marndi Raj N | Method for comparing a first data set with a second data set |
US20080016157A1 (en) * | 2006-06-29 | 2008-01-17 | Centraltouch Technology Inc. | Method and system for controlling and monitoring an apparatus from a remote computer using session initiation protocol (sip) |
US8036971B2 (en) * | 2007-03-30 | 2011-10-11 | Palantir Technologies, Inc. | Generating dynamic date sets that represent market conditions |
US7685099B2 (en) * | 2007-06-28 | 2010-03-23 | Microsoft Corporation | Forecasting time-independent search queries |
US7685100B2 (en) | 2007-06-28 | 2010-03-23 | Microsoft Corporation | Forecasting search queries based on time dependencies |
US7693908B2 (en) * | 2007-06-28 | 2010-04-06 | Microsoft Corporation | Determination of time dependency of search queries |
US7689622B2 (en) * | 2007-06-28 | 2010-03-30 | Microsoft Corporation | Identification of events of search queries |
US7693823B2 (en) * | 2007-06-28 | 2010-04-06 | Microsoft Corporation | Forecasting time-dependent search queries |
US8290921B2 (en) * | 2007-06-28 | 2012-10-16 | Microsoft Corporation | Identification of similar queries based on overall and partial similarity of time series |
US8090709B2 (en) * | 2007-06-28 | 2012-01-03 | Microsoft Corporation | Representing queries and determining similarity based on an ARIMA model |
US8484115B2 (en) | 2007-10-03 | 2013-07-09 | Palantir Technologies, Inc. | Object-oriented time series generator |
US10747952B2 (en) | 2008-09-15 | 2020-08-18 | Palantir Technologies, Inc. | Automatic creation and server push of multiple distinct drafts |
US20100070426A1 (en) | 2008-09-15 | 2010-03-18 | Palantir Technologies, Inc. | Object modeling for exploring large data sets |
US9177343B2 (en) * | 2010-11-23 | 2015-11-03 | At&T Intellectual Property I, L.P. | Conservation dependencies |
US8732574B2 (en) | 2011-08-25 | 2014-05-20 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US9348677B2 (en) | 2012-10-22 | 2016-05-24 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9069824B2 (en) | 2012-11-15 | 2015-06-30 | International Business Machines Corporation | Accelerating time series data base queries using dictionary based representations |
US9015183B2 (en) | 2012-11-26 | 2015-04-21 | International Business Machines Corporation | Accelerating time series data base queries using dictionary based representations |
KR101403949B1 (ko) * | 2013-02-26 | 2014-06-09 | 한국과학기술원 | 모바일 상황 모니터링을 위한 효율적 데이터 처리를 수행하는 모바일 장치, 이를 이용하는 데이터 처리 방법, 이를 이용하는 상황 모니터링 방법 및 이를 포함하는 상황 모니터링 시스템 |
US8855999B1 (en) | 2013-03-15 | 2014-10-07 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
US8868486B2 (en) | 2013-03-15 | 2014-10-21 | Palantir Technologies Inc. | Time-sensitive cube |
US8903717B2 (en) | 2013-03-15 | 2014-12-02 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
US8930897B2 (en) | 2013-03-15 | 2015-01-06 | Palantir Technologies Inc. | Data integration tool |
US8909656B2 (en) | 2013-03-15 | 2014-12-09 | Palantir Technologies Inc. | Filter chains with associated multipath views for exploring large data sets |
US8938686B1 (en) | 2013-10-03 | 2015-01-20 | Palantir Technologies Inc. | Systems and methods for analyzing performance of an entity |
US9105000B1 (en) | 2013-12-10 | 2015-08-11 | Palantir Technologies Inc. | Aggregating data from a plurality of data sources |
US9361329B2 (en) | 2013-12-13 | 2016-06-07 | International Business Machines Corporation | Managing time series databases |
US8935201B1 (en) | 2014-03-18 | 2015-01-13 | Palantir Technologies Inc. | Determining and extracting changed data from a data source |
CN105224543A (zh) * | 2014-05-30 | 2016-01-06 | 国际商业机器公司 | 用于处理时间序列的方法和装置 |
US10838956B2 (en) * | 2015-08-26 | 2020-11-17 | Pivotal Software, Inc. | Database acceleration through runtime code generation |
CN106709336A (zh) * | 2015-11-18 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 识别恶意软件的方法和装置 |
KR101937989B1 (ko) | 2017-12-29 | 2019-01-11 | 연세대학교 원주산학협력단 | 집합 기반 유사 시퀀스 매칭 장치 및 방법 |
KR102121304B1 (ko) * | 2018-04-04 | 2020-06-11 | 한양대학교 산학협력단 | 시계열 데이터베이스의 서브 시퀀스 매칭 시스템 및 그 방법 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60179797A (ja) * | 1983-10-27 | 1985-09-13 | 日本電気株式会社 | パタンマツチング装置 |
JPH01183793A (ja) * | 1988-01-18 | 1989-07-21 | Toshiba Corp | 文字認識装置 |
US5647058A (en) | 1993-05-24 | 1997-07-08 | International Business Machines Corporation | Method for high-dimensionality indexing in a multi-media database |
US5544352A (en) * | 1993-06-14 | 1996-08-06 | Libertech, Inc. | Method and apparatus for indexing, searching and displaying data |
US5553279A (en) * | 1993-10-08 | 1996-09-03 | International Business Machines Corporation | Lossless distribution of time series data in a relational data base network |
US5819266A (en) * | 1995-03-03 | 1998-10-06 | International Business Machines Corporation | System and method for mining sequential patterns in a large database |
US5630051A (en) * | 1995-03-06 | 1997-05-13 | Motorola Inc. | Method and apparatus for merging hierarchical test subsequence and finite state machine (FSM) model graphs |
US5570370A (en) * | 1995-04-28 | 1996-10-29 | Industrial Technology Research Institute | Frame timing acquisition method and system for cordless TDMA systems |
US5664174A (en) * | 1995-05-09 | 1997-09-02 | International Business Machines Corporation | System and method for discovering similar time sequences in databases |
US5799301A (en) * | 1995-08-10 | 1998-08-25 | International Business Machines Corporation | Apparatus and method for performing adaptive similarity searching in a sequence database |
US5742811A (en) * | 1995-10-10 | 1998-04-21 | International Business Machines Corporation | Method and system for mining generalized sequential patterns in a large database |
US6122759A (en) * | 1995-10-10 | 2000-09-19 | Lucent Technologies Inc. | Method and apparatus for restoration of an ATM network |
US5832496A (en) * | 1995-10-12 | 1998-11-03 | Ncr Corporation | System and method for performing intelligent analysis of a computer database |
US5787422A (en) * | 1996-01-11 | 1998-07-28 | Xerox Corporation | Method and apparatus for information accesss employing overlapping clusters |
US6012062A (en) * | 1996-03-04 | 2000-01-04 | Lucent Technologies Inc. | System for compression and buffering of a data stream with data extraction requirements |
EP0797161A3 (en) * | 1996-03-22 | 1998-05-27 | Pilot Software Inc | Computer system and computerimplemented process for applying database segment definitions to a database |
US5781906A (en) * | 1996-06-06 | 1998-07-14 | International Business Machines Corporation | System and method for construction of a data structure for indexing multidimensional objects |
US5940825A (en) * | 1996-10-04 | 1999-08-17 | International Business Machines Corporation | Adaptive similarity searching in sequence databases |
US6092064A (en) * | 1997-11-04 | 2000-07-18 | International Business Machines Corporation | On-line mining of quantitative association rules |
US6301575B1 (en) * | 1997-11-13 | 2001-10-09 | International Business Machines Corporation | Using object relational extensions for mining association rules |
US5987468A (en) * | 1997-12-12 | 1999-11-16 | Hitachi America Ltd. | Structure and method for efficient parallel high-dimensional similarity join |
US6003036A (en) * | 1998-02-12 | 1999-12-14 | Martin; Michael W. | Interval-partitioning method for multidimensional data |
US6360188B1 (en) * | 1998-10-27 | 2002-03-19 | Brixx Limited | Time-based modeling |
-
1999
- 1999-12-20 KR KR1019990059467A patent/KR100344530B1/ko not_active IP Right Cessation
-
2000
- 2000-04-27 US US09/559,673 patent/US6496817B1/en not_active Expired - Fee Related
- 2000-12-14 EP EP00983553A patent/EP1250636A2/en not_active Withdrawn
- 2000-12-14 JP JP2001547619A patent/JP3648709B2/ja not_active Expired - Fee Related
- 2000-12-14 WO PCT/KR2000/001458 patent/WO2001046771A2/en not_active Application Discontinuation
- 2000-12-14 AU AU20295/01A patent/AU2029501A/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP1250636A2 (en) | 2002-10-23 |
WO2001046771A3 (en) | 2002-08-15 |
AU2029501A (en) | 2001-07-03 |
KR20010064977A (ko) | 2001-07-11 |
US6496817B1 (en) | 2002-12-17 |
KR100344530B1 (ko) | 2002-07-24 |
JP2003518310A (ja) | 2003-06-03 |
WO2001046771A2 (en) | 2001-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3648709B2 (ja) | サブシーケンスマッチング方法 | |
Park et al. | Efficient searches for similar subsequences of different lengths in sequence databases | |
Goldin et al. | On similarity queries for time-series data: constraint specification and implementation | |
Roshdi et al. | Information retrieval techniques and applications | |
Shieh et al. | i SAX: indexing and mining terabyte sized time series | |
Hjaltason et al. | Index-driven similarity search in metric spaces (survey article) | |
KR100725664B1 (ko) | 2단계 n-gram 역색인 구조 및 그 구성 방법과 질의처리 방법 및 그 색인 도출 방법 | |
Keogh et al. | A simple dimensionality reduction technique for fast similarity search in large time series databases | |
US7603370B2 (en) | Method for duplicate detection and suppression | |
Gunopulos et al. | Time series similarity measures (tutorial pm-2) | |
Gog et al. | Fast and lightweight LCP-array construction algorithms | |
US20040267713A1 (en) | String predicate selectivity estimation | |
Li et al. | Skyline index for time series data | |
Chávez et al. | Near neighbor searching with K nearest references | |
Chávez et al. | A metric index for approximate string matching | |
Gog et al. | Large-scale pattern search using reduced-space on-disk suffix arrays | |
Eghbali et al. | Online nearest neighbor search in binary space | |
Park et al. | Similarity search of time-warped subsequences via a suffix tree | |
Hon et al. | Compressed property suffix trees | |
James et al. | A survey on information retrieval models, techniques and applications | |
Breve et al. | IndiBits: Incremental Discovery of Relaxed Functional Dependencies using Bitwise Similarity | |
Shaft et al. | When is nearest neighbors indexable? | |
Kim et al. | n-Gram/2L-approximation: a two-level n-gram inverted index structure for approximate string matching | |
KR100472948B1 (ko) | 시계열 데이터베이스에서 서브 시퀀스 매칭의 후처리최적화 방법 | |
Park et al. | An enhanced technique for k-nearest neighbor queries with non-spatial selection predicates |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040817 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041117 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050203 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080225 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090225 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100225 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100225 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110225 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |