JP4801566B2 - Data stream monitoring device, data stream monitoring method, program thereof, and recording medium - Google Patents

Data stream monitoring device, data stream monitoring method, program thereof, and recording medium Download PDF

Info

Publication number
JP4801566B2
JP4801566B2 JP2006318752A JP2006318752A JP4801566B2 JP 4801566 B2 JP4801566 B2 JP 4801566B2 JP 2006318752 A JP2006318752 A JP 2006318752A JP 2006318752 A JP2006318752 A JP 2006318752A JP 4801566 B2 JP4801566 B2 JP 4801566B2
Authority
JP
Japan
Prior art keywords
time
data
sequence
data stream
distance
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
Application number
JP2006318752A
Other languages
Japanese (ja)
Other versions
JP2008134706A (en
Inventor
保志 櫻井
雅司 山室
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006318752A priority Critical patent/JP4801566B2/en
Publication of JP2008134706A publication Critical patent/JP2008134706A/en
Application granted granted Critical
Publication of JP4801566B2 publication Critical patent/JP4801566B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、継続して大量に流入してくるデータをリアルタイムに分析する技術(ストリームマイニング技術)に関する。   The present invention relates to a technique (stream mining technique) for analyzing data that continuously flows in a large amount in real time.

近年、コンピュータ装置やネットワークに関する技術が発達し、ネットワーク上を大量のデータが継続的に流通することも少なくない。ネットワーク上で継続して大量に流通するデータのことをデータストリームと呼ぶが、データストリームの例としては、たとえば、インターネットにおける株価などの金融データや、LAN(Local Area Network)などのセンサネットワークにおけるセンサデータ(温度センサや照度センサの計測データなど)などが挙げられる。   In recent years, technologies related to computer devices and networks have been developed, and a large amount of data is often continuously distributed on the network. Data that continuously circulates in large quantities on a network is called a data stream. Examples of data streams include financial data such as stock prices on the Internet and sensors in sensor networks such as a LAN (Local Area Network). Data (such as temperature sensor and illuminance sensor measurement data).

そして、ストリームマイニング技術は、データベースに蓄えられた大容量のデータを分析するのではなく、継続的に受信する大量のデータをリアルタイムで分析しなくてはならないため、計算の高速化と省メモリ化を図る必要がある。また、そうすれば、利用者に対して必要な情報を迅速に提供することもできる。   Stream mining technology does not analyze the large amount of data stored in the database, but must analyze a large amount of continuously received data in real time, thereby speeding up computation and saving memory. It is necessary to plan. In addition, necessary information can be quickly provided to the user.

データストリームの分析としては、たとえば、ある問合せシーケンス(所定のデータ列)とある程度類似するシーケンスがデータストリーム中にあるか否かを、部分的なシーケンスマッチングによって見つける手法がある。この場合、データストリームのサンプリングレートなどによって、データストリームと問合せシーケンスでは相対的な経時速度が異なることもあるので、データの時間軸方向の伸縮も考慮に入れたマッチングを行うことが望ましい。   As an analysis of the data stream, for example, there is a method of finding out by partial sequence matching whether or not a sequence somewhat similar to a certain query sequence (predetermined data string) exists in the data stream. In this case, since the relative aging speed may differ between the data stream and the query sequence depending on the sampling rate of the data stream, it is desirable to perform matching taking into account the expansion and contraction of the data in the time axis direction.

そこで、動的計画法として、シーケンス間の時間軸方向の伸縮も考慮に入れ、シーケンス間の距離を最小化するように時間軸方向の調整を行いながらシーケンスマッチングを行う技術であるダイナミックタイムワーピング(DTW:Dynamic Time Warping)が、広く使用されている。
このDTWに基づいて作成および保存される行列をタイムワーピング行列と呼び、そのタイムワーピング行列によって2つのシーケンス間の距離であるDTW距離を算出することができる。DTW距離が小さいほど、2つのシーケンスは類似していることになる。
Therefore, as a dynamic programming method, dynamic time warping, which is a technology that performs sequence matching while adjusting the time axis direction so as to minimize the distance between sequences, taking into account the expansion and contraction in the time axis direction between sequences. DTW (Dynamic Time Warping) is widely used.
A matrix created and stored based on this DTW is called a time warping matrix, and a DTW distance that is a distance between two sequences can be calculated by the time warping matrix. The smaller the DTW distance, the more similar the two sequences are.

たとえば、非特許文献1と非特許文献2には、DTWに基づく類似部分シーケンスの検出の高速化に関する技術が記載されている。
また、非特許文献3には、データストリームのリアルタイム分析手法として、データストリーム中のデータ同士の相関係数も考慮することで精度を上げたStatStreamに関する技術が記載されている。
さらに、非特許文献4には、データストリームのリアルタイム分析手法において使用する、データ間の遅延相関を検出するアルゴリズムであるBRAIDに関する技術が記載されている。
Emonn Keogh,Exact Indexing of Dynamic Time Warping,Proceedings of the Twenty-eighth International Conference on VLDB(Very Large Data Bases),China,August 2002,pp.406-417 Yasushi Sakurai,MasatoshiYoshikawa,Christos Faloutsos,FTW:FastSimilarity Search under the Time Warping Distance, Proceedings of Symposium on PODS(Principles of Database Systems),USA,June 2005,pp.326-337 Yunyue Zhu,Dennis Shasha,StatStream:StatisticalMonitoring of Thousands of Data Streams in Real Time,Proceedingsof the Twenty-eighth International Conference on VLDB(Very Large Data Bases),China,August 2002,pp.358-369 Yasushi Sakurai,Spiros Papadimitriou, Christos Faloutsos,BRAID:StreamMining through Group Lag Correlations, Proceedings of ACM SIGMOD(Association For Computing Machinery Special Interest Group On Management Of Data),USA,June 2005,pp.599-610
For example, Non-Patent Document 1 and Non-Patent Document 2 describe techniques related to speeding up detection of similar partial sequences based on DTW.
Non-Patent Document 3 describes a technique related to StatStream that improves accuracy by considering a correlation coefficient between data in a data stream as a data stream real-time analysis technique.
Further, Non-Patent Document 4 describes a technique related to BRAID, which is an algorithm for detecting a delay correlation between data, which is used in a real-time analysis method of a data stream.
Emonn Keogh, Exact Indexing of Dynamic Time Warping, Proceedings of the Twenty-eighth International Conference on VLDB (Very Large Data Bases), China, August 2002, pp. 406-417 Yasushi Sakurai, Masatoshi Yoshikawa, Christos Faloutsos, FTW: Fast Similarity Search under the Time Warping Distance, Proceedings of Symposium on PODS (Principles of Database Systems), USA, June 2005, pp.326-337 Yunyue Zhu, Dennis Shasha, StatStream: Statistical Monitoring of Thousands of Data Streams in Real Time, Proceedingsof the Twenty-eighth International Conference on VLDB (Very Large Data Bases), China, August 2002, pp. 358-369 Yasushi Sakurai, Spiros Papadimitriou, Christos Faloutsos, BRAID: StreamMining through Group Lag Correlations, Proceedings of ACM SIGMOD (Association For Computing Machinery Special Interest Group On Management Of Data), USA, June 2005, pp.599-610

しかしながら、非特許文献1および非特許文献2は、蓄積されたデータ集合に適用する技術であり、データストリームのリアルタイム分析のための技術ではない。
また、非特許文献3および非特許文献4は、時間軸方向に調整を行うことなくシーケンスマッチングを行うものであり、DTWを使用したデータストリーム監視に関する技術ではない。
However, Non-Patent Document 1 and Non-Patent Document 2 are techniques applied to accumulated data sets, and are not techniques for real-time analysis of data streams.
Non-Patent Document 3 and Non-Patent Document 4 perform sequence matching without adjusting in the time axis direction, and are not related to data stream monitoring using DTW.

そして、DTWを使用したデータストリーム監視を行おうとすると、データストリームの長さに比例して計算量やメモリの使用量が増大してしまい、実用的ではなかった(詳細は、発明を実施するための最良の形態の比較例の説明を参照)。
そこで、本発明は、前記問題点に鑑みてなされたものであり、DTWを使用したデータストリーム監視において、計算コスト(計算量やメモリの使用量)の低減を図ることを目的とする。
When data stream monitoring using DTW is attempted, the amount of calculation and the amount of memory used increase in proportion to the length of the data stream, which is not practical (details are for carrying out the invention). (See description of comparative example of best mode).
Therefore, the present invention has been made in view of the above problems, and an object of the present invention is to reduce calculation costs (calculation amount and memory use amount) in data stream monitoring using DTW.

前記課題を解決するために、請求項1および請求項に係る発明は、継続的に受信するデータであるデータストリームから、所定のデータ列である問合せシーケンスと類似する部分シーケンスを、ダイナミックタイムワーピング距離に基づいて検出するデータストリーム監視装置において、記憶部が、データストリーム中の時刻tにおけるデータx を受信したときに、長さmのシーケンスY=(y ,y ,・・・,y )である問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)とデータストリーム中の時刻t−1におけるデータx t−1 との距離に関する情報d(t−1,i)と、当該距離に関する情報d(t−1,i)に対応する開始時刻に関する情報s(t−1,i)と、を(t−1,i)要素に持つ単一のタイムワーピング行列、および、ダイナミックタイムワーピング距離に関する所定の閾値εを記憶している
そして、処理部は、データ を受信したときに、記憶部に記憶されたタイムワーピング行列と以下の式(11)〜(14)を用いて、問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)とデータx との間の距離に関する情報d(t,i)と、以下の式(15)により計算される当該d(t,i)に対応する開始時刻に関する情報s(t,i)とを計算して、記憶部に記憶されたタイムワーピング行列を更新し、問合せシーケンス中のデータy とデータx との間の距離に関する情報d(t,m)が所定の閾値ε以下のときに、当該距離に関する情報d(t,m)に対応する開始時刻s(t,m)を開始時刻t とし、時刻tを終了時刻t とするデータストリーム中の部分シーケンスX[t :t を類似する部分シーケンスとして検出する。
In order to solve the above problems, the inventions according to claim 1 and claim 4 perform dynamic time warping on a partial sequence similar to a query sequence which is a predetermined data string from a data stream which is continuously received data. In the data stream monitoring device that detects based on the distance, when the storage unit receives the data x t at time t in the data stream, the sequence of length m = (y 1 , y 2 ,... y m) data y i in query sequence is (where, i = 1,2, ···, m ) information on the distance between the data x t-1 at time t-1 in the data stream d (t −1, i) and information s (t−1, i) related to the start time corresponding to the information d (t−1, i) related to the distance are simply included in the (t−1, i) element. One time warping matrix, and stores a predetermined threshold value ε to a dynamic time warping distance.
Then, the processing unit, when receiving the data x t, using the following formula stored time warping matrix in the storage unit (11) to (14), the data y i in query sequence (where, i = 1, 2,..., M) and the information d (t, i) regarding the distance between the data x t and the d (t, i) calculated by the following equation (15). information s (t, i) relating to the start time to calculate the, update the time warping matrix stored in the storage unit, information relating to the distance between the data y m and the data x t in query sequence d (t when m) is equal to or less than a predetermined threshold epsilon, the starting time s (t, m) a starting time t s corresponding to the information d (t, m) relating to the distance, the time t and the end time t e partial sequence X in the data stream [t s: t e] the class It is detected as a partial sequence that.

かかる発明によれば、タイムワーピング行列が単一であることで、計算コストの低減を図ることができる。また、類似する部分シーケンスを検出したときに、その開始時刻を特定することができる。 According to this invention, since the time warping matrix is single, the calculation cost can be reduced. Further, when a similar partial sequence is detected, the start time can be specified.

請求項および請求項に係る発明は、処理部が、類似する部分シーケンスX[t :t を検出した場合、その後、さらに、タイムワーピング行列の各行列要素の値の算出を行い、その類似する部分シーケンスX[t :t と時間帯が一部でも重複する部分シーケンスの中で、ダイナミックタイムワーピング距離がより小さいものがないと判断したときに、その類似する部分シーケンスX[t :t をより適切な部分シーケンスとして検出することを特徴とする。 In the inventions according to claims 2 and 5 , when the processing unit detects a similar partial sequence X [t s : t e ] , it further calculates a value of each matrix element of the time warping matrix. , The similar partial sequence when it is determined that none of the partial sequences whose time zone overlaps with the similar partial sequence X [t s : t e ] has a smaller dynamic time warping distance X [t s : t e ] is detected as a more appropriate partial sequence.

かかる発明によれば、類似する部分シーケンスと時間帯が重複する部分シーケンスを、その後、さらに調べることで、その類似する部分シーケンスがより適切な部分シーケンスであると判断することができる。   According to this invention, it is possible to determine that the similar partial sequence is a more appropriate partial sequence by further examining the partial sequence whose time zone overlaps with the similar partial sequence.

請求項および請求項に係る発明は、処理部が、類似する部分シーケンスX[t :t を検出した場合、その類似する部分シーケンスX[t :t の最後のデータの受信時刻を終了時刻とすると、その終了時刻後におけるタイムワーピング行列のある列において、各行列要素のうち、その開始時刻が終了時刻以前であって、かつ、その値が類似する部分シーケンスのダイナミックタイムワーピング距離よりも小さいものがないときに、その類似する部分シーケンスX[t :t をより適切なものとして検出することを特徴とする。 The invention according to claims 3 and 6, processing unit, similar to the partial sequence X: when detecting [t s t e], partial sequence X that similar [t s: t e] last data If the reception time is the end time, in a column of the time warping matrix after the end time, among the matrix elements, the dynamics of the partial sequences whose start time is before the end time and whose values are similar when there is no less than the time warping distance, the similar parts sequence X: and detecting as [t s t e] of the more appropriate.

かかる発明によれば、類似する部分シーケンスの終了時刻後におけるタイムワーピング行列のある列における各行列要素について上記のように調べることで、その部分シーケンスをより適切なものとして判断することができる。   According to this invention, it is possible to determine that the partial sequence is more appropriate by examining each matrix element in a certain column of the time warping matrix after the end time of the similar partial sequence as described above.

請求項に係る発明は、請求項から請求項のいずれか1項に記載のデータストリーム監視方法をコンピュータに実行させるためのプログラムである。 The invention according to claim 7 is a program for executing the data stream monitoring method according to the computer of claims 4 to any one of claims 6.

かかる発明によれば、データストリーム監視方法をコンピュータに実行させることができる。   According to this invention, the computer can execute the data stream monitoring method.

請求項に係る発明は、請求項のプログラムを記録することを特徴とする記録媒体である。 The invention according to an eighth aspect is a recording medium that records the program according to the seventh aspect.

かかる発明によれば、データストリーム監視方法のプログラムを記録することができる。   According to this invention, the program of the data stream monitoring method can be recorded.

本発明によれば、DTWを使用したデータストリーム監視において、計算コストの低減を図ることができる。   According to the present invention, calculation cost can be reduced in data stream monitoring using DTW.

以下、本発明に係るデータストリーム監視装置を実施するための最良の形態(以下、実施形態という。)について、適宜図面を参照しながら説明する。なお、参照図以外の図も適宜参照する。
その前に、理解を容易にするため、図8および図9を参照しながら、DTWを使用したデータストリーム監視の比較例(従来技術)について説明する。
Hereinafter, the best mode for carrying out a data stream monitoring apparatus according to the present invention (hereinafter referred to as an embodiment) will be described with reference to the drawings as appropriate. Note that drawings other than the reference diagram are also referred to as appropriate.
Before that, a comparative example (prior art) of data stream monitoring using DTW will be described with reference to FIGS. 8 and 9 for easy understanding.

図8は、DTWを使用したデータストリーム監視の比較例における、問合せ処理のイメージを示した図である。
図8において、シーケンスYは、固定長mのデータであり、シーケンスの類似判断の元となるデータである。
FIG. 8 is a diagram showing an image of query processing in a comparative example of data stream monitoring using DTW.
In FIG. 8, a sequence Y is data of a fixed length m, and is data that is a source of sequence similarity determination.

データストリームであるシーケンスXは、時々刻々と伸張している(データ量が増えている)シーケンスであり、その長さをnとし、また、シーケンスの類似判断の対象となるデータである。
TWM(タイムワーピング行列)1〜Sは、それぞれ時刻t=1〜t=Sから始まるタイムワーピング行列である。また、TWMSに示した黒いマスのつながりは、ワーピングパス(後記するDTW距離を算出するためにたどるルート)である。
The sequence X, which is a data stream, is a sequence that is constantly expanding (the amount of data is increasing), the length of which is n, and data that is the target of sequence similarity determination.
TWM (Time Warping Matrix) 1 to S are time warping matrices starting from time t = 1 to t = S, respectively. Further, the connection of the black cells shown in TWMS is a warping path (route to be followed for calculating the DTW distance described later).

ここで、目的は、DTW距離に基づき、シーケンスXにおいて、シーケンスYと類似する部分シーケンスを検出することである。以下、図8を参照しながらその概要を説明し、その後、図9を参照しながら具体例について説明する。なお、類似する部分シーケンスの検出方法は2つあり、それらを第1の方法、第2の方法と呼ぶ。まず、第1の方法について説明する。   Here, the purpose is to detect a partial sequence similar to the sequence Y in the sequence X based on the DTW distance. Hereinafter, the outline will be described with reference to FIG. 8, and then a specific example will be described with reference to FIG. There are two similar partial sequence detection methods, which are referred to as a first method and a second method. First, the first method will be described.

(第1の方法)
2つのシーケンス間のDTW距離とは、2つのシーケンスを、全体的あるいは部分的に時間軸方向に伸縮の調整を行った後の距離のことである。DTW距離は、タイムワーピング行列に基づいて算出することができる。
長さmのシーケンスY=(y,y,・・・,y)と長さnのシーケンスX=(x,x,・・・,x)の間のDTW距離D(X,Y)は、以下の式(1)〜(4)のようにして求めることができる。なお、t=(1,2,・・・,n)、i=(1,2,・・・,m)とする。
(First method)
The DTW distance between the two sequences is a distance after the two sequences are adjusted, in whole or in part, in the time axis direction. The DTW distance can be calculated based on the time warping matrix.
DTW distance D () between sequence Y = (y 1 , y 2 ,..., Y m ) of length m and sequence X = (x 1 , x 2 ,..., X n ) of length n X, Y) can be obtained by the following equations (1) to (4). Note that t = (1, 2,..., N) and i = (1, 2,..., M).

D(X,Y)=f(n,m)・・・(1)
f(t,i)=||x−y||+min{f(t,i−1),f(t−1,i),
f(t−1,i−1)}・・・(2)
f(0,0)=0・・・(3)
f(t,0)=f(0,i)=∞・・・(4)
D (X, Y) = f (n, m) (1)
f (t, i) = || x t −y i || + min {f (t, i−1), f (t−1, i),
f (t-1, i-1)} (2)
f (0,0) = 0 (3)
f (t, 0) = f (0, i) = ∞ (4)

式(1)は、DTW距離の定義である。式(2)は、具体的な計算式である。
式(2)において、||x−y||は、2つの数値(xとy)の距離を表す。2つの数値の距離としては、たとえば、ユークリッド距離やマンハッタン距離が考えられる。n次元空間において、a、bという2つの点の座標をa(a,a,・・・,a)、b(b,b,・・・,b)とし、また、(1≦j≦n)とすると、ユークリッド距離とは√(Σ(a−b)、マンハッタン距離とはΣ|a−b|で表される距離のことである。
以下の具体例では、計算を容易にするために、||x−y||として、ユークリッド距離の二乗の値を算出し、使用する。
Equation (1) is a definition of the DTW distance. Formula (2) is a specific calculation formula.
In Expression (2), || x t −y i || represents the distance between two numerical values (x t and y i ). As the distance between the two numerical values, for example, the Euclidean distance and the Manhattan distance can be considered. In the n-dimensional space, the coordinates of two points a and b are a (a 1 , a 2 ,..., a n ), b (b 1 , b 2 ,..., b n ), If (1 ≦ j ≦ n), the Euclidean distance is √ (Σ (a j −b j ) 2 ), and the Manhattan distance is a distance represented by Σ | a j −b j |.
In the following specific example, in order to facilitate calculation, the square value of the Euclidean distance is calculated and used as || x t −y i ||.

また、式(2)において、min{f(t,i−1),f(t−1,i),f(t−1,i−1)}は、{}内の3つの値のうち、最小のものを採用する、という意味である。なお、最小のものが2つあるいは3つある場合については、検出される部分シーケンスが長くなるような(あるいは短くなるような)値を選択する、あるいは、検出される部分シーケンスが問合せシーケンスYに近くなるような値を選択する、など、予めその選択基準を設定しておいてもよい。
式(3)および式(4)は、この3つの値を計算する際に使用する、タイムワーピング行列における境界条件である。
In the expression (2), min {f (t, i−1), f (t−1, i), f (t−1, i−1)} is among the three values in {}. Means to adopt the smallest one. When there are two or three minimum ones, a value that makes the detected partial sequence longer (or shorter) is selected, or the detected partial sequence becomes the query sequence Y. The selection criteria may be set in advance, such as selecting a value that is close.
Equations (3) and (4) are boundary conditions in the time warping matrix used when calculating these three values.

タイムワーピング行列は、DTWの関数の値、すなわち、上記式(2)におけるf(t,i)の値を保持するものである。比較例では、長さnのシーケンスXと長さmのシーケンスYの距離を求めるときに、n個のタイムワーピング行列を使用するため、計算にO(nm)(nとmの積に比例)の時間がかかってしまう。つまり、この方法では、nの値が大きくなると、計算時間が長くなりすぎて、実用に耐えない。   The time warping matrix holds the value of the DTW function, that is, the value of f (t, i) in the above equation (2). In the comparative example, when calculating the distance between the sequence X of length n and the sequence Y of length m, since n time warping matrices are used, O (nm) is calculated (proportional to the product of n and m). It will take a long time. In other words, in this method, if the value of n increases, the calculation time becomes too long and cannot be practically used.

なお、メモリの使用量はO(m)である。これは、タイムワーピング行列の情報として、現在時刻の列(タイムワーピング行列におけるその時刻の各行列要素の集合)の情報とその直前時刻の列の情報の計2列の情報だけを記憶しておけばよく、それ以前の情報は逐次消去可能だからである。   Note that the memory usage is O (m). This is because the time warping matrix information can be stored only in two columns of information: the current time column information (a set of matrix elements at that time in the time warping matrix) and the immediately preceding time column information. This is because the previous information can be erased sequentially.

また、X[t:t]を、時刻tから時刻tまでの部分シーケンスとする。すなわち、X=(x,x,・・・,x,・・・,x,・・・,x)において、X[t:t]=(x,・・・,x)である。ここでの目的は、固定長mの問合せシーケンスYと高い類似性を有するX[t:t]を発見(検出)することである。 In addition, X: the [t s t e], a partial sequence from time t s to time t e. That, X = (x 1, x 2, ···, x s, ···, x e, ···, x n) in, X [t s: t e ] = (x s, ··· , X e ). The purpose here is, a fixed length m of the query sequence Y and high similarity to a X: is to discover [t s t e] (Detection).

第1の方法では、所定の閾値εを設定しておき、次の式(5)を満たすX[t:t]を検出する。
D(X[t:t],Y)≦ε・・・(5)
In the first method, previously set a predetermined threshold epsilon, X satisfying the following equation (5): detecting the [t s t e].
D (X [t s: t e], Y) ≦ ε ··· (5)

第1の方法の具体例を、図9を参照しながら説明する。図9は、比較例におけるタイムワーピング行列の例を示した図である。
ここでは、時間経過とともに伸張するシーケンスXにおいて、シーケンスY=(11,6,9,4)と高い類似性を有する部分シーケンスを検出することを目的とする。図9(1)〜(7)では、シーケンスXの長さが「7」(X=(5,12,6,10,6,5,1))のときのタイムワーピング行列(TWM)1〜7(それぞれ太線の内部)の状態を示している。なお、閾値ε=20とする。
A specific example of the first method will be described with reference to FIG. FIG. 9 is a diagram illustrating an example of a time warping matrix in the comparative example.
Here, an object is to detect a partial sequence having a high similarity to the sequence Y = (11, 6, 9, 4) in the sequence X that expands with time. 9 (1) to (7), the time warping matrix (TWM) 1 to 1 when the length of the sequence X is “7” (X = (5, 12, 6, 10, 6, 5, 1)). 7 (each inside a thick line). Note that the threshold ε = 20.

また、上記式(1)〜(4)を、実際に各TWM1〜7の各要素(各行列要素)の値を算出するための式に変形すると、以下の式(6)〜(9)のようになる。
つまり、t番目のタイムワーピング行列(時刻tから始まるタイムワーピング行列)において、要素(k,i)のDTW距離をf(k,i)とする。なお、t=(1,2,・・・,n)、i=(1,2,・・・,m)、k=(1,2,・・・,n−t+1)とする。また、式(1)〜(4)と重複する事項に関しては、説明を適宜省略する。
Further, when the above formulas (1) to (4) are transformed into formulas for actually calculating the values of the elements (each matrix element) of the TWMs 1 to 7, the following formulas (6) to (9) are obtained. It becomes like this.
That is, in the t-th time warping matrix (time warping matrix starting at time t), the DTW distance elements (k, i) f t ( k, i) and. Note that t = (1, 2,..., N), i = (1, 2,..., M), and k = (1, 2,..., N−t + 1). In addition, regarding the items overlapping with the formulas (1) to (4), the description will be omitted as appropriate.

D(X[t:t],Y)=fts(t−t+1,m)=min(f(k,m))・・・(6)
(k,i)=||xt+k−1−y||+min{f(k,i−1),f(k−1,i),f(k−1,i−1)}・・・(7)
(0,0)=0・・・(8)
(k,0)=f(0,i)=∞・・・(9)
D (X [t s: t e], Y) = f ts (t e -t s + 1, m) = min (f t (k, m)) ··· (6)
f t (k, i) = || x t + k−1 −y i || + min {f t (k, i−1), f t (k−1, i), f t (k−1, i−) 1)} ... (7)
f t (0,0) = 0 (8)
f t (k, 0) = ft (0, i) = ∞ (9)

式(6)は、DTW距離の定義である。式(7)は、具体的な計算式である。式(8)および式(9)は、タイムワーピング行列における境界条件である。   Equation (6) is a definition of the DTW distance. Formula (7) is a specific calculation formula. Equations (8) and (9) are boundary conditions in the time warping matrix.

次に、図9を参照しながら、具体的な計算について説明する。
TWM1〜7の各要素には、上記式(6)〜(9)にしたがって算出された値が格納されている。
TWM2を例にとって説明すると、上記式(6)〜(9)から、まず、時刻t=2のとき、f(1,1)=(12−11)+min{f(1,0)=∞,f(0,1)=∞,f(0,0)=0}=1+0=1である。
また、f(2,1)=(6−11)+min{f(2,0)=∞,f(1,1)=1,f(1,0)=∞}=25+1=26である。
Next, specific calculations will be described with reference to FIG.
Each element of TWM 1 to 7 stores a value calculated according to the above formulas (6) to (9).
Taking TWM2 as an example, from the above formulas (6) to (9), first, at time t = 2, f 2 (1,1) = (12-11) 2 + min {f 2 (1,0) = ∞, f 2 (0, 1) = ∞, f 2 (0, 0) = 0} = 1 + 0 = 1.
Also, f 2 (2,1) = (6-11) 2 + min {f 2 (2,0) = ∞, f 2 (1,1) = 1, f 2 (1,0) = ∞} = 25 + 1 = 26.

さらに、f(1,2)=(12−6)+min{f(1,1)=1,f(0,2)=∞,f(0,1)=∞}=36+1=37である。
また、f(2,2)=(6−6)+min{f(2,1)=26,f(1,2)=37,f(1,1)=1}=0+1=1である。
以下、同様にして、各TWM1〜7における各要素の値を算出することができる。
Further, f 2 (1,2) = (12−6) 2 + min {f 2 (1,1) = 1, f 2 (0,2) = ∞, f 2 (0,1) = ∞} = 36 + 1 = 37.
Also, f 2 (2,2) = (6-6) 2 + min {f 2 (2,1) = 26, f 2 (1,2) = 37, f 2 (1,1) = 1} = 0 + 1 = 1.
In the same manner, the value of each element in each TWM 1 to 7 can be calculated in the same manner.

そして、各TWM1〜7のそれぞれの時刻において、それ以前のyのときの要素の値のうち最小の値がDTW距離となる。また、各TWM1〜7における各DTW距離の開始時刻(計算に使用したシーケンスXの値のうち最初の値の時刻)は、各TWM1〜7の番号(TWM1なら「1」、TWM3なら「3」)と一致している。 Then, at each time in each TWM1~7, the minimum value is DTW distance among the elements of the value when the previous y 4. Further, the start time of each DTW distance in each TWM 1 to 7 (the time of the first value among the values of the sequence X used for the calculation) is the number of each TWM 1 to 7 (“1” for TWM1 and “3” for TWM3). ).

このような状況で、シーケンスXにおいて、シーケンスYと類似性の高い部分シーケンスを検出する、すなわち、DTW距離が「20」以下になっているものを検出する。
まず、時刻t=1においては、タイムワーピング行列がTWM1しか存在せず、DTW距離が「54」なので、該当しない。
Under such circumstances, a partial sequence having a high similarity to the sequence Y is detected in the sequence X, that is, a DTW distance of “20” or less is detected.
First, at time t = 1, only TWM1 exists in the time warping matrix and the DTW distance is “54”, which is not applicable.

次に、時刻t=2において、TWM1のDTW距離は「54」、TWM2のDTW距離は「110」なので、該当しない。
そして、時刻t=3において、TWM1のDTW距離は「50」、TWM2のDTW距離は「14」、TWM3のDTW距離は「38」であり、TWM2が該当(「DTW距離が「20」以下」の条件を充足)するので、部分シーケンスX[2:3]を発見できたことになる。
Next, since the DTW distance of TWM1 is “54” and the DTW distance of TWM2 is “110” at time t = 2, this is not applicable.
At time t = 3, the DTW distance of TWM1 is “50”, the DTW distance of TWM2 is “14”, the DTW distance of TWM3 is “38”, and TWM2 is applicable (“DTW distance is“ 20 ”or less”). Therefore, the partial sequence X [2: 3] can be found.

このようにして、比較例によれば、シーケンスXの長さがnのときには、n個のタイムワーピング行列を使用することで、目的の類似する部分シーケンスを発見することができる。
ただし、上記式(6)〜(9)と図9による具体例からもわかるように、各TWM1〜7は、現在時刻およびその直前の時刻の2列分の情報のみをメモリに記憶させておけばよく、それよりも前の情報は逐次消去することができる。
Thus, according to the comparative example, when the length of the sequence X is n, the target similar partial sequence can be found by using n time warping matrices.
However, as can be seen from the above formulas (6) to (9) and the specific example shown in FIG. 9, each TWM 1 to 7 can store only the information for the two columns of the current time and the time immediately before in the memory. What is necessary is just to erase information before that.

そして、第1の方法によれば、DTW距離が閾値ε以下になった場合に、該当する部分シーケンスを検出したことになる。しかし、利用者の都合などによっては、その直後に、より類似性の高い部分シーケンスが存在する場合には、最初の部分シーケンスは検出したことにせず、後のより類似性の高い部分シーケンスのみを検出したことにしたい場合も多い。   According to the first method, when the DTW distance is equal to or smaller than the threshold ε, the corresponding partial sequence is detected. However, depending on the convenience of the user, if there is a partial sequence with higher similarity immediately after that, the first partial sequence is not detected and only the subsequent partial sequence with higher similarity is detected. Often you want to detect.

(第2の方法)
そこで、第2の方法では、最初に類似する部分シーケンスを検出した後、その類似する部分シーケンスと時間帯が少しでも重複する部分シーケンスの中で、より類似性の高い(DTW距離が小さい)ものがあるか否かを調べる。つまり、類似する部分シーケンスを検出した後、時間帯が少しでも重複する部分シーケンスの中で、より類似性の高いものがないことが確定して初めて、それを該当する部分シーケンス(以下、「最適な部分シーケンス」という。)と判断するのである。
(Second method)
Therefore, in the second method, after detecting a similar partial sequence first, among the partial sequences whose time zone overlaps with the similar partial sequence even a little, the one with higher similarity (small DTW distance) Find out if there is. In other words, after detecting a similar partial sequence, it is only determined that there is no more similar partial sequence that overlaps even a little in the time zone. It is called “a partial sequence”).

図9の例では、時刻t=3において、TWM2のDTW距離が「14」となり、まず、閾値ε以下という条件をクリアする部分シーケンスX[2:3]を発見できたことになる。この部分シーケンスは終了時刻がt=3なので、開始時刻がそれよりも後であるTWM4〜7は考慮する必要がない。   In the example of FIG. 9, at time t = 3, the DTW distance of TWM2 is “14”, and first, the partial sequence X [2: 3] that clears the condition that the threshold value ε or less is found. Since this partial sequence has an end time t = 3, it is not necessary to consider TWMs 4 to 7 whose start time is later than that.

そこで、TWM1〜3において、時刻t=3よりも後に、DTW距離が「14」よりも小さくなる可能性があるか否かが問題になる。まず、TWM1では、時刻t=3のときの各要素の値(下から、「62」,「37」,「46」,「50」)がすでにいずれも「14」よりも大きいので、その後、DTW距離が「14」よりも小さくなる可能性はない。同様に、TWM3についても、時刻t=3よりも後に、DTW距離が「14」よりも小さくなる可能性はない。   Therefore, in TWM 1 to 3, it becomes a problem whether there is a possibility that the DTW distance may become smaller than “14” after time t = 3. First, in TWM1, since the value of each element at time t = 3 (from the bottom, “62”, “37”, “46”, “50”) is already larger than “14”, then, There is no possibility that the DTW distance is smaller than “14”. Similarly, for TWM3, there is no possibility that the DTW distance becomes smaller than “14” after time t = 3.

ただし、TWM2では、時刻t=3のとき、f(2,2)=1、f(2,3)=10であり、その後、DTW距離が「14」よりも小さくなる可能性がある。実際に、時刻t=5において、DTW距離が「6」になっている。そして、その時刻t=5において、「6」以外の各要素の値(下から、「52」,「17」,「11」)がいずれも「6」よりも大きいので、その後、DTW距離が「6」よりも小さくなる可能性はない。 However, in TWM2, when time t = 3, f 2 (2,2) = 1 and f 2 (2,3) = 10, and thereafter, the DTW distance may be smaller than “14”. . Actually, at time t = 5, the DTW distance is “6”. At the time t = 5, the values of the elements other than “6” (from the bottom, “52”, “17”, “11”) are all larger than “6”. There is no possibility of being smaller than “6”.

しかし、DTW距離が「6」になるのは部分シーケンスX[2:5]なので、今度はTWM4とTWM5も関係してくる。そこで、TWM4を見ると、時刻t=5およびt=6に「6」以下の要素、すなわち、それぞれf(2,2)=1およびf(3,2)=2の値が存在するが、時刻t=7には、「6」以下の値が存在しない。また、TWM5においては、時刻t=5のときすでに、「6」以下の要素は存在しない。 However, since the DTW distance “6” is the partial sequence X [2: 5], TWM4 and TWM5 are also related this time. Therefore, when TWM4 is viewed, at time t = 5 and t = 6, there are elements of “6” or less, that is, values of f 4 (2,2) = 1 and f 4 (3,2) = 2, respectively. However, at time t = 7, there is no value less than “6”. Further, in TWM5, when time t = 5, there is no element equal to or less than “6”.

したがって、時刻t=7の時点で、DTW距離「6」を与えるTWM2の時刻t=5における部分シーケンスX[2:5]が最適なシーケンスであることがわかる。
また、TWMにおいて、このDTW距離「6」を算出するためにたどってきたルート「f(1,1)→f(2,2)→f(3,3)→f(4,4)」がワーピングパスの一例である。
Therefore, it can be seen that the partial sequence X [2: 5] at the time t = 5 of the TWM 2 giving the DTW distance “6” is the optimum sequence at the time t = 7.
Also, in the TWM, the route “f 2 (1,1) → f 2 (2,2) → f 2 (3,3) → f 2 (4,4) that has been taken to calculate the DTW distance“ 6 ”. 4) "is an example of a warping path.

このように、比較例の第1の方法および第2の方法によれば、シーケンスXの長さがnのとき、n個のタイムワーピング行列を使用する必要があり、計算にO(nm)の時間がかかってしまい、nの値が大きくなると計算時間が長くなりすぎて、実用的ではない。
そこで、以下、図1〜7を参照しながら、タイムワーピング行列が単一でよく、計算がO(m)の時間で済み、計算の高速化と省メモリ化を実現することのできる本実施形態のデータストリーム監視装置について説明する。
Thus, according to the first method and the second method of the comparative example, when the length of the sequence X is n, it is necessary to use n time warping matrices, and O (nm) of the calculation is performed. It takes time, and if the value of n increases, the calculation time becomes too long, which is not practical.
Accordingly, in the following, referring to FIGS. 1 to 7, the present embodiment is capable of realizing a high-speed calculation and memory saving with a single time warping matrix and a calculation of O (m). The data stream monitoring apparatus will be described.

図1は、本実施形態のデータストリーム監視装置の構成図である。データストリーム監視装置1は、コンピュータ装置であり、入力部2、通信部3、記憶部4、出力部5、メモリ6および処理部7を備えている。   FIG. 1 is a configuration diagram of a data stream monitoring apparatus according to the present embodiment. The data stream monitoring device 1 is a computer device, and includes an input unit 2, a communication unit 3, a storage unit 4, an output unit 5, a memory 6, and a processing unit 7.

入力部2は、データ入力を行うものであり、たとえば、キーボードやマウスである。データストリーム監視装置1の使用者は、入力部2を使って、問合せシーケンスを入力することができる。
通信部3は、外部装置(不図示)やセンサ(不図示)からインターネットやLANなどを介してデータを受信するものであり、たとえば通信インターフェースである。通信部3は、外部装置(不図示)などからデータストリームを受信する。
The input unit 2 is for inputting data, and is, for example, a keyboard or a mouse. A user of the data stream monitoring apparatus 1 can input an inquiry sequence using the input unit 2.
The communication unit 3 receives data from an external device (not shown) or a sensor (not shown) via the Internet or a LAN, and is a communication interface, for example. The communication unit 3 receives a data stream from an external device (not shown) or the like.

記憶部4は、データを記憶するものであり、たとえば、ハードディスクである。記憶部4は、問合せシーケンス41とタイムワーピングデータ42を記憶している。また、記憶部4は、図示を省略しているが、データストリーム監視方法が記述されたプログラムを記憶している。
問合せシーケンス41は、入力部2から入力された問合せシーケンスである。
タイムワーピングデータ42は、タイムワーピング行列などのタイムワーピングの演算に必要なデータである。
The storage unit 4 stores data and is, for example, a hard disk. The storage unit 4 stores an inquiry sequence 41 and time warping data 42. Although not shown, the storage unit 4 stores a program describing a data stream monitoring method.
The inquiry sequence 41 is an inquiry sequence input from the input unit 2.
The time warping data 42 is data necessary for time warping calculation such as a time warping matrix.

出力部5は、データを出力するものであり、たとえば、ディスプレイやスピーカである。出力部5は、所定の条件を充足する部分シーケンスなどの検出データを出力する。
メモリ6は、処理部7の作業領域であり、たとえば、RAM(Random Access Memory)である。
The output unit 5 outputs data, and is, for example, a display or a speaker. The output unit 5 outputs detection data such as a partial sequence that satisfies a predetermined condition.
The memory 6 is a work area of the processing unit 7 and is, for example, a RAM (Random Access Memory).

処理部7は、各種演算処理を行うものであり、たとえば、CPU(Central Processing Unit)である。処理部7は、入力部2が受け付けた問合せシーケンスを記憶部4に問合せシーケンス41として記憶したり、通信部3が受信したデータストリームに関して記憶部4のタイムワーピングデータ42を使用して問合せシーケンス41と類似性の高い部分シーケンスを検出したり、その部分シーケンスを出力部5から出力したりする。   The processing unit 7 performs various arithmetic processes, and is, for example, a CPU (Central Processing Unit). The processing unit 7 stores the query sequence received by the input unit 2 in the storage unit 4 as the query sequence 41 or uses the time warping data 42 of the storage unit 4 for the data stream received by the communication unit 3. The partial sequence having high similarity is detected, or the partial sequence is output from the output unit 5.

次に、図2を参照しながら、本実施形態のデータストリーム監視装置による問合せ処理のイメージについて説明する。図2は、本実施形態のデータストリーム監視装置による問合せ処理のイメージを示した図である。   Next, an image of inquiry processing by the data stream monitoring apparatus of this embodiment will be described with reference to FIG. FIG. 2 is a diagram showing an image of inquiry processing by the data stream monitoring apparatus of the present embodiment.

図2に示すように、データストリーム監視装置1による問合せ処理では、比較例の場合(図8参照)と異なり、単一のTWMを使用して、シーケンスXから、問合せシーケンスY’(問合せシーケンスYを少し変形したもの。詳細は後記)と類似する部分シーケンスを検出することができる。
図2では、該当する部分シーケンスとして、X[t:t](X)がまず検出され、その後に、Xが検出されている。
As shown in FIG. 2, in the query processing by the data stream monitoring apparatus 1, unlike the comparative example (see FIG. 8), a single TWM is used to change the query sequence Y ′ (query sequence Y ′) from the sequence X. A partial sequence similar to that described later can be detected.
In Figure 2, a corresponding portion sequence, X [t s: t e ] (X 1) is first detected, then, X 2 is detected.

なお、以下、長さmのシーケンスY=(y,y,・・・,y)に対して、先頭にyを付加し、Y’=(y,y,y,・・・,y)とする。このとき、yは、(−∞:∞)の値をとることができ、また、シーケンスXに関して時刻tのときに受信してこれからタイムワーピング行列の演算に使用するデータをxとすると、y=xである。
そして、そのY’と、長さnのシーケンスX=(x,x,・・・,x)の間でシーケンスマッチングを行うことになり、そのシーケンスマッチングは次の式(10)〜(14)により実現することができる。なお、t=(1,2,・・・,n)、i=(1,2,・・・,m)とする。また、式(6)〜(9)と重複する事項に関しては、説明を適宜省略する。
In the following description, y 0 is added to the beginning of a sequence Y = (y 1 , y 2 ,..., Y m ) of length m, and Y ′ = (y 0 , y 1 , y 2 , , Y m ). At this time, y 0 can take a value of (−∞: ∞), and x t is the data received at time t with respect to the sequence X and used for the calculation of the time warping matrix from now on. y 0 = x t .
Then, sequence matching is performed between the Y ′ and the sequence X = (x 1 , x 2 ,..., X n ) of length n, and the sequence matching is expressed by the following formula (10) to It can be realized by (14). Note that t = (1, 2,..., N) and i = (1, 2,..., M). In addition, regarding items that overlap with the formulas (6) to (9), description will be omitted as appropriate.

D(X[t:t],Y)=d(t,m)=min(d(t,m))・・・(10)
d(t,i)=||x−y||+dbest・・・(11)
best=min{d(t,i−1),d(t−1,i),d(t−1,i−1)}・・・(12)
d(t,0)=d(0,0)=0・・・(13)
d(0,i)=∞・・・(14)
D (X [t s: t e], Y) = d (t e, m) = min (d (t, m)) ··· (10)
d (t, i) = || x t −y i || + d best (11)
d best = min {d (t, i-1), d (t-1, i), d (t-1, i-1)} (12)
d (t, 0) = d (0,0) = 0 (13)
d (0, i) = ∞ (14)

上記の式(10)〜(14)のうち、式(13)が本実施形態のポイントの1つである。この式(13)によって、シーケンスYをシーケンスY’に変更したことと同じ効果が得られる。
すなわち、データストリーム監視装置1の処理部7は、ある時刻にデータストリーム中の1つのデータを受信した場合、問合せシーケンスYの先頭にその1つのデータと同じデータを付加してシーケンスY’としてから、そのシーケンスY’に関してタイムワーピング行列を使ってダイナミックタイムワーピング距離を算出し、そのダイナミックタイムワーピング距離が閾値以下のときに、そのダイナミックタイムワーピング距離に対応する部分シーケンスを類似する部分シーケンスとして検出することができるが、式(13)によって、シーケンスYをシーケンスY’に変更したことと同じ効果が得られるのである。
Of the above formulas (10) to (14), formula (13) is one of the points of this embodiment. This expression (13) provides the same effect as changing the sequence Y to the sequence Y ′.
That is, when the processing unit 7 of the data stream monitoring apparatus 1 receives one data in the data stream at a certain time, the processing unit 7 adds the same data as the one data to the head of the inquiry sequence Y to form the sequence Y ′. , Calculate a dynamic time warping distance using the time warping matrix for the sequence Y ′, and detect a partial sequence corresponding to the dynamic time warping distance as a similar partial sequence when the dynamic time warping distance is equal to or less than a threshold value. However, the same effect as changing the sequence Y to the sequence Y ′ can be obtained by the equation (13).

また、本実施形態のタイムワーピング行列の各要素は、距離d(t,i)だけでなく、次の式(15)で求める、各距離d(t,i)の開始時刻に関する情報s(t,i)(開始時刻がt=1なら「1」、開始時刻がt=3なら「3」)も保持する。   In addition, each element of the time warping matrix of the present embodiment is not only the distance d (t, i), but also information s (t I) (“1” if the start time is t = 1, “3” if the start time is t = 3).

<i≧2の場合>
s(t,i)=s(t,i−1) (dbest=d(t,i−1)のとき)
s(t−1,i) (dbest=d(t−1,i)のとき)
s(t−1,i−1) (dbest=d(t−1,i−1)のとき)
<i=1の場合>
s(t,i)=s(t,1)=t ・・・(15)
<If i ≧ 2>
s (t, i) = s (t, i−1) (when d best = d (t, i−1))
s (t-1, i) (when d best = d (t-1, i))
s (t-1, i-1) (when d best = d (t-1, i-1))
<When i = 1>
s (t, i) = s (t, 1) = t (15)

また、D(X[t:t],Y)の開始時刻tは、次の式(16)により得られる。
=s(t,m)・・・(16)
最適なワーピングパスはこのタイムワーピング行列による距離計算から求めることができ、検出された類似する部分シーケンスの開始時刻は、そのワーピングパス上で引き継がれていくことで、特定することができる。
Also, D (X [t s: t e], Y) starting time t s of is obtained by the following equation (16).
t s = s (t e , m) (16)
The optimum warping path can be obtained from the distance calculation by this time warping matrix, and the start time of the detected similar partial sequence can be specified by being taken over on the warping path.

次に、図3を参照しながら、本実施形態のタイムワーピング行列の具体例について説明する。図3は、本実施形態のタイムワーピング行列の具体例を示した図である。なお、図1に示したハードウェアであるデータストリーム監視装置1の動作に関する説明は、図4および図5とともに後記する。   Next, a specific example of the time warping matrix of the present embodiment will be described with reference to FIG. FIG. 3 is a diagram showing a specific example of the time warping matrix of the present embodiment. A description of the operation of the data stream monitoring apparatus 1 that is the hardware shown in FIG. 1 will be given later with reference to FIGS.

図3に示すように、タイムワーピング行列TWMは、図9の場合と同様、時間経過とともに伸張するシーケンスXにおいて、シーケンスY=(11,6,9,4)と高い類似性を有する部分シーケンスを検出することを目的とし、ここでは、シーケンスX=(5,12,6,10,6,5,1)である。なお、閾値ε=20とする。   As shown in FIG. 3, the time warping matrix TWM is a partial sequence having a high similarity with sequence Y = (11, 6, 9, 4) in sequence X that expands with time, as in FIG. The sequence is X = (5, 12, 6, 10, 6, 5, 1). Note that the threshold ε = 20.

具体的な計算について説明すると、上記式(10)〜(14)から、d(1,1)=(5−11)+min{d(1,0)=0,d(0,1)=∞,d(0,0)=0}=36+0=36である。また、このとき、式(15)から、開始時刻はs(1,1)=1であり、図3のTWMにおいては、「36」の下に「(1)」と記載している。 A specific calculation will be described. From the above formulas (10) to (14), d (1,1) = (5-11) 2 + min {d (1,0) = 0, d (0,1) = ∞, d (0, 0) = 0} = 36 + 0 = 36. At this time, the start time is s (1, 1) = 1 from the equation (15), and “(1)” is described below “36” in the TWM of FIG.

また、d(2,1)=(12−11)+min{d(2,0)=0,d(1,1)=36,d(1,0)=0}=1+0=1である。また、このとき、開始時刻はs(2,1)=2である。
比較例のTWM1(図9(1)参照)の場合と異なり、このTWMではd(2,1)=1となっているのが、本実施形態のポイントの1つである(図9のTWM1における該当箇所は「37」)。詳細は後記するが、このように、図3のTWMの最下行の各要素がそのすぐ左の要素の値と関係なく独立に算出されている、すなわち、前記したシーケンスY=(y,y,・・・,y)に対し先頭にyを付加してY’=(y,y,y,・・・,y)としたことと同様の効果を式(13)によって実現したことにより、タイムワーピング行列が単一で済むのである。
Further, d (2,1) = (12-11) 2 + min {d (2,0) = 0, d (1,1) = 36, d (1,0) = 0} = 1 + 0 = 1. . At this time, the start time is s (2,1) = 2.
Unlike the case of the TWM1 of the comparative example (see FIG. 9 (1)), d (2,1) = 1 is one of the points of the present embodiment in this TWM (TWM1 in FIG. 9). The corresponding part in "37"). Although details will be described later, in this way, each element in the bottom row of the TWM in FIG. 3 is independently calculated regardless of the value of the element immediately to the left, that is, the sequence Y = (y 1 , y 2 ,..., Y m ), y 0 is added to the head, and Y ′ = (y 0 , y 1 , y 2 ,..., Y m ) is obtained. ) Realizes a single time warping matrix.

同様にして、式(10)〜(15)を使用することで、TWMの各要素の値と各開始時刻の値を算出することができる。
以下、第1の方法と同様、閾値ε以下のDTW距離が求まったときにそれを類似する部分シーケンスとして検出する方法を第3の方法という。また、第2の方法と同様、最初に類似する部分シーケンスを検出した後、時間帯が少しでもその類似する部分シーケンスと重複するそれ以降の部分シーケンスの中で、より類似性の高いものがないことが確定してから、それを最適な部分シーケンスと判断する方法を第4の方法という。
Similarly, by using the equations (10) to (15), the value of each element of the TWM and the value of each start time can be calculated.
Hereinafter, similarly to the first method, when a DTW distance equal to or less than the threshold ε is obtained, a method of detecting it as a similar partial sequence is referred to as a third method. Similarly to the second method, after detecting a similar partial sequence first, there is no higher similarity among the subsequent partial sequences that overlap with the similar partial sequence even if the time zone is a little. A method of determining that the partial sequence is the optimum partial sequence after this is determined is referred to as a fourth method.

第3の方法では、時刻t=3のとき、DTW距離が「14」であることにより、類似する部分シーケンスとしてX[2:3]を検出する。なお、開始時刻t=2はd(3,4)=14の下の「(2)」からわかり、また、終了時刻t=3はそのときの時刻からわかる。   In the third method, at time t = 3, X [2: 3] is detected as a similar partial sequence because the DTW distance is “14”. The start time t = 2 is known from “(2)” under d (3,4) = 14, and the end time t = 3 is known from the time at that time.

この検出結果は、比較例による検出結果(図9(2)参照)と同じである。つまり、本実施形態のデータストリーム監視装置1によれば、単一のタイムワーピング行列により、比較例の場合よりも少ない計算量および少ないメモリ使用量で、比較例と同等の検出結果を得ることができる。   This detection result is the same as the detection result of the comparative example (see FIG. 9 (2)). That is, according to the data stream monitoring apparatus 1 of the present embodiment, a detection result equivalent to that of the comparative example can be obtained by a single time warping matrix with a smaller calculation amount and a smaller memory usage than in the comparative example. it can.

また、第4の方法では、類似する部分シーケンスX[2:3]を検出した後、さらに、その類似する部分シーケンスと少しでも時間帯が重複するそれ以降の部分シーケンスの中で、より類似性の高いものがあるか否かを判断する。
まず、左から3列目のd(3,1)、d(3,2)およびd(3,3)の値がいずれも「14」より大きければ、開始時刻がt=3以前でDTW距離が「14」以下になるものが存在する可能性がなくなるので、部分シーケンスX[2:3]が最適な部分シーケンスと判断できる。
Further, in the fourth method, after detecting a similar partial sequence X [2: 3], the similarity is further increased in the subsequent partial sequences whose time zone overlaps with the similar partial sequence as much as possible. It is determined whether there is a high one.
First, if the values of d (3,1), d (3,2), and d (3,3) in the third column from the left are all greater than “14”, the DTW distance is equal to or earlier than t = 3. Therefore, the partial sequence X [2: 3] can be determined as the optimum partial sequence.

しかし、ここでは、d(3,2)=1、d(3,3)=10なので、時刻t=3の時点で部分シーケンスX[2:3]が最適とは判断できない。
次に、時刻t=4に移り、その列の各要素の全てについて、「値が『14』よりも大きい」あるいは「開始時刻がt=4以降である」、という条件を満たすか否かを判断する。この条件を満たせば、部分シーケンスX[2:3]が最適であると判断できる。
ここでは、d(4,3)=2(開始時刻t=2)がこの条件を満たさないため、部分シーケンスX[2:3]が最適であると判断できない。
However, since d (3,2) = 1 and d (3,3) = 10 here, the partial sequence X [2: 3] cannot be determined to be optimal at the time t = 3.
Next, at time t = 4, it is determined whether or not the condition “value is greater than“ 14 ”” or “start time is after t = 4” is satisfied for all the elements in the column. to decide. If this condition is satisfied, it can be determined that the partial sequence X [2: 3] is optimal.
Here, since d (4,3) = 2 (start time t = 2) does not satisfy this condition, it cannot be determined that the partial sequence X [2: 3] is optimal.

続いて、時刻t=5に移り、DTW距離が「6」なので、最適な部分シーケンスの候補をX[2:5]に変更する。
次に、時刻t=6に移り、その列の各要素の全てについて、「値が『6』よりも大きい」あるいは「開始時刻がt=6以降である」、という条件を満たすか否かを判断する。
ここでは、d(6,2)=2(開始時刻t=4)がこの条件を満たさないため、部分シーケンスX[2:5]が最適であると判断できない。
Subsequently, at time t = 5, since the DTW distance is “6”, the optimum partial sequence candidate is changed to X [2: 5].
Next, at time t = 6, it is determined whether or not the condition “value is greater than“ 6 ”” or “start time is after t = 6” is satisfied for all the elements in the column. to decide.
Here, since d (6,2) = 2 (start time t = 4) does not satisfy this condition, it cannot be determined that the partial sequence X [2: 5] is optimal.

次に、時刻t=7に移り、その列の各要素の全てについて、「値が『6』よりも大きい」あるいは「開始時刻がt=6以降である」、という条件を満たすか否かを判断する。
ここでは、その条件を満たすので、部分シーケンスX[2:5]が最適であると判断できる。
Next, at time t = 7, it is determined whether or not the condition “value is greater than“ 6 ”” or “start time is after t = 6” is satisfied for all the elements in the column. to decide.
Here, since the condition is satisfied, it can be determined that the partial sequence X [2: 5] is optimal.

この検出結果は、比較例による検出結果(図9(2)参照)と同じである。つまり、本実施形態のデータストリーム監視装置1によれば、単一のタイムワーピング行列により、比較例の場合よりも少ない計算量および少ないメモリ使用量で、比較例と同等の検出結果を得ることができる。   This detection result is the same as the detection result of the comparative example (see FIG. 9 (2)). That is, according to the data stream monitoring apparatus 1 of the present embodiment, a detection result equivalent to that of the comparative example can be obtained by a single time warping matrix with a smaller calculation amount and a smaller memory usage than in the comparative example. it can.

(第3の方法)
次に、図4を参照しながら、第3の方法を実行する場合のデータストリーム監視装置の動作について説明する。図4は、第3の方法を実行する場合のデータストリーム監視装置の動作を示したフローチャートである。なお、d(t,i)(式(11)参照)をd、d(t−1,i)をd’と表記する。また、s(t,i)(式(15)参照)をs、s(t−1,i)をs’と表記する。
(Third method)
Next, the operation of the data stream monitoring apparatus when the third method is executed will be described with reference to FIG. FIG. 4 is a flowchart showing the operation of the data stream monitoring apparatus when the third method is executed. In addition, d (t, i) (refer to Formula (11)) is expressed as d i , and d (t−1, i) is expressed as d i ′. In addition, s (t, i) (see Expression (15)) is expressed as s i , and s (t−1, i) is expressed as s i ′.

まず、利用者は、データストリーム監視装置1において、入力部2から問合せシーケンスを入力し、入力された問合せシーケンスは記憶部4に問合せシーケンス41として記憶される。また、記憶部4には、単一のタイムワーピング行列(図3参照)や、所定の閾値εなどのタイムワーピングデータ42が記憶されている。
そして、通信部3は、外部装置(不図示)からデータストリームの受信を開始する。なお、以下、処理部7は、通信部3や記憶部4から受け取ったデータをメモリ6に展開して処理するが、メモリ6に展開する旨の記載は省略する。
First, the user inputs an inquiry sequence from the input unit 2 in the data stream monitoring apparatus 1, and the input inquiry sequence is stored in the storage unit 4 as an inquiry sequence 41. The storage unit 4 stores a single time warping matrix (see FIG. 3) and time warping data 42 such as a predetermined threshold ε.
And the communication part 3 starts reception of a data stream from an external device (not shown). Hereinafter, the processing unit 7 develops and processes the data received from the communication unit 3 and the storage unit 4 in the memory 6, but the description of developing in the memory 6 is omitted.

処理部7は、まず、時刻t=1として処理を開始し(ステップS401)、次に、そのときの時刻t(ここでは「1」)において、xを受信する(ステップS402)。
続いて、処理部7は、式(10)〜(15)に基づいて、全てのdとsを計算し(ステップS403)、タイムワーピング行列を更新する。このとき、タイムワーピング行列における時刻「t−2」以降のデータは、削除してもよい(t≧3の場合)。
Processing unit 7 first starts processing as a time t = 1 (step S401), then, at the time at that time t ( "1" in this case), receives the x t (step S402).
Subsequently, the processing unit 7 calculates all d i and s i based on the equations (10) to (15) (step S403), and updates the time warping matrix. At this time, data after time “t−2” in the time warping matrix may be deleted (when t ≧ 3).

次に、処理部7は、d、つまり、時刻tにおけるDTW距離が閾値ε以下であるか否かを判断する(ステップS404)。
時刻tにおけるDTW距離が閾値ε以下でなかった場合(ステップS404でNo)、処理部7は、ステップS408に進む。
Then, the processing unit 7, d m, i.e., DTW distance at time t is equal to or less than the threshold value epsilon (step S404).
If the DTW distance at time t is not less than or equal to the threshold ε (No in step S404), the processing unit 7 proceeds to step S408.

時刻tにおけるDTW距離が閾値ε以下であった場合(ステップS404でYes)、処理部7は、そのDTW距離の開始時刻sを開始時刻の変数tに代入し、そのときの時刻tを終了時刻の変数tに代入する(ステップS405)。
続いて、処理部7は、DTW距離d、その開始時刻t、および、その終了時刻tを出力部5に出力する(ステップS406)。
If DTW distance at time t is equal to or less than the threshold value epsilon (Yes in step S404), the processing unit 7 substitutes starting time s m of the DTW distance variable t s start time, the time t at that time It is assigned to the variable t e of the end time (step S405).
Subsequently, the processing unit 7, DTW distance d m, the starting time t s, and outputs the end time t e to the output unit 5 (step S406).

利用者は、出力部5から出力されたそれらのデータを見て、データストリーム中に、問合せシーケンスと類似する部分シーケンスがあったことを知ることができる。
次に、処理部7は、以降の処理のために、全てのdの値を初期化する、つまり、dに∞(プログラムを作成する際はεなどと比較して充分大きな値を使用。以下同様)を代入する(ステップS407)。
続いて、処理部7は、次の時刻の処理に移るために、全てのdとsの値を、それぞれ、1つ前の時刻の値の変数であるd’とs’に代入し(ステップS408)、「t=t+1」として(ステップS409)、ステップS402に戻り、処理を繰り返す。
The user can know that there is a partial sequence similar to the query sequence in the data stream by looking at the data output from the output unit 5.
Next, processing unit 7 for further processing, initializing the values of all d i, i.e., use a sufficiently large value as compared to like ε is when creating ∞ (program d i The same applies to the following (step S407).
Subsequently, the processing unit 7, in order to move to the processing of the next time, the value of all the d i and s i, respectively, to d i 'and s i' is a variable of one previous value of the time Substitution is performed (step S408), "t = t + 1" is set (step S409), the process returns to step S402, and the process is repeated.

このようにして、本実施形態のデータストリーム監視装置1によれば、単一のタイムワーピング行列を使用することで、データストリームが長くなっても、計算量やメモリの使用量を一定に保つことができ、それでいて比較例と同様の結果を得ることができる。
つまり、本実施形態のデータストリーム監視装置1によれば、たとえば、図3の例において、時刻t=3の時点で、DTW距離「14」、その開始時刻「2」、および、その終了時刻「3」を出力部5から出力することができる。
Thus, according to the data stream monitoring apparatus 1 of the present embodiment, by using a single time warping matrix, the calculation amount and the memory usage amount can be kept constant even when the data stream becomes long. However, the same result as the comparative example can be obtained.
That is, according to the data stream monitoring apparatus 1 of the present embodiment, for example, in the example of FIG. 3, at the time t = 3, the DTW distance “14”, its start time “2”, and its end time “ 3 ”can be output from the output unit 5.

(第4の方法)
次に、図5を参照しながら、第4の方法を実行する場合のデータストリーム監視装置の動作について説明する。図5は、第4の方法を実行する場合のデータストリーム監視装置の動作を示したフローチャートである。なお、図4の場合と重複する説明は、適宜省略する。また、図4の場合と同様、データストリーム監視装置1において、記憶部4には、問合せシーケンス41と、単一のタイムワーピング行列(図3参照)や、所定の閾値εなどのタイムワーピングデータ42が記憶されている。さらに、最適な部分シーケンスの候補を入力する変数としてdminを使用する。
そして、通信部3は、外部装置(不図示)からデータストリームの受信を開始する。
(Fourth method)
Next, the operation of the data stream monitoring apparatus when the fourth method is executed will be described with reference to FIG. FIG. 5 is a flowchart showing the operation of the data stream monitoring apparatus when the fourth method is executed. In addition, the description which overlaps with the case of FIG. 4 is abbreviate | omitted suitably. As in the case of FIG. 4, in the data stream monitoring apparatus 1, the storage unit 4 stores an inquiry sequence 41, a single time warping matrix (see FIG. 3), and time warping data 42 such as a predetermined threshold ε. Is remembered. Further, d min is used as a variable for inputting an optimum partial sequence candidate.
And the communication part 3 starts reception of a data stream from an external device (not shown).

処理部7は、まず、時刻t=1として処理を開始し(ステップS501)、次に、そのときの時刻t(ここでは「1」)において、xを受信する(ステップS502)。
続いて、処理部7は、式(10)〜(15)に基づいて、全てのdとsを計算し(ステップS503)、タイムワーピング行列を更新する。このとき、タイムワーピング行列における時刻「t−2」以降のデータは、削除してもよい(t≧3の場合)。
Processing unit 7 first starts processing as a time t = 1 (step S501), then, at the time at that time t ( "1" in this case), receives the x t (step S502).
Subsequently, the processing unit 7 calculates all d i and s i based on the equations (10) to (15) (step S503), and updates the time warping matrix. At this time, data after time “t−2” in the time warping matrix may be deleted (when t ≧ 3).

次に、処理部7は、dmin、つまり、時刻tにおけるDTW距離が閾値ε以下であるか否かを判断する(ステップS504)。
時刻tにおけるDTW距離が閾値ε以下でなかった場合(ステップS504でNo)、処理部7は、ステップS514で、「dmin≦ε」かつ「d<dmin」、を満たすか否かを判断するが、ステップS514では「dmin≦ε」を満たさないので(No)、さらに、ステップS516に進む。
Next, the processing unit 7 determines whether or not d min , that is, whether the DTW distance at time t is equal to or less than the threshold ε (step S504).
If DTW distance at time t is not less than the threshold value epsilon (No at step S504), the processing unit 7, in step S514, whether or not meet, "d min ≦ epsilon" and "d m <d min" Although it is determined, since “d min ≦ ε” is not satisfied in step S514 (No), the process proceeds to step S516.

時刻tにおけるDTW距離dminが閾値ε以下であった場合(ステップS504でYes)、処理部7は、そのDTW距離dminを与える部分シーケンスが最適か否か、つまり、その部分シーケンスよりも後のある時刻における全ての要素(「d」と「s」)について、「値dがdminよりも大きい」あるいは「開始時刻sがtよりも後である」、という条件を満たすか否かを判断する(ステップS505)。この条件を満たせば、そのDTW距離dminを与える部分シーケンスが最適であると判断できるからである。 When the DTW distance d min at time t is equal to or smaller than the threshold ε (Yes in step S504), the processing unit 7 determines whether or not the partial sequence that provides the DTW distance d min is optimal, that is, after the partial sequence. of all the elements at a certain time (the "d i", "s i"), "the value d i is greater than d min" or "start time s i is later than t e", a condition that It is determined whether or not it is satisfied (step S505). This is because, if this condition is satisfied, it can be determined that the partial sequence that provides the DTW distance d min is optimal.

すなわち、処理部7は、DTW距離dminが閾値ε以下の部分シーケンスを検出した場合、その後、さらに、タイムワーピング行列の各行列要素の値の算出を行い、その部分シーケンスと時間帯が一部でも重複する部分シーケンスの中で、DTW距離がより小さくなるものが存在しえないと判断したときに、その部分シーケンスを最適な(より適切な)部分シーケンスとして検出することができる。 That is, when the processing unit 7 detects a partial sequence whose DTW distance d min is equal to or less than the threshold value ε, the processing unit 7 further calculates the value of each matrix element of the time warping matrix, and the partial sequence and the time zone are partially However, when it is determined that there is no overlapping partial sequence having a smaller DTW distance, the partial sequence can be detected as an optimal (more appropriate) partial sequence.

ステップS505の条件を満たさない場合(No)、処理部7は、ステップS514で、「dmin≦ε」かつ「d<dmin」、を満たすか否かを判断する。
ここで、さらなる最適な部分シーケンスの候補があればステップS514の条件を満たし(Yes)、処理部7は、DTW距離dを変数dminに、その開始時刻sを変数tに、その終了時刻tを変数tに、それぞれ代入する(ステップS515)。
If the condition is not satisfied in step S505 (No), the processing unit 7, in step S514, it is determined whether meet, "d min ≦ epsilon" and "d m <d min".
Here, satisfies the condition of step S514 if there is a candidate for further optimal subsequence satisfied (Yes), then the process unit 7, the DTW distance d m in the variable d min, the starting time s m in the variable t s, the end time t to the variable t e, the values are (step S515).

ステップS505の条件を満たす場合(Yes)、そのDTW距離dminを与える部分シーケンスが最適であると判断できるので、処理部7は、そのDTW距離の開始時刻sを開始時刻の変数tに代入し、そのときの時刻tを終了時刻の変数tに代入してから、そのDTW距離dmin、その開始時刻t、および、その終了時刻tを出力部5に出力する(ステップS506)。
利用者は、出力部5から出力されたそれらのデータを見て、データストリーム中に存在する、問合せシーケンスと類似する部分シーケンスのうち、最適な部分シーケンスを知ることができる。
Satisfies case of step S505 (Yes), since the subsequence gives the DTW distance d min can be determined to be optimal, the processing unit 7, the variable t s start time start time s m of the DTW distance assignment and, after substituting the time t at that time in the variable t e end time, the DTW distance d min, the starting time t s, and outputs the end time t e to the output unit 5 (step S506 ).
The user can know the optimum partial sequence among the partial sequences similar to the query sequence existing in the data stream by looking at the data output from the output unit 5.

次に、処理部7は、以降の処理のために、dminに∞を代入し(ステップS507)、iに「0」を代入し(ステップS508)、さらに、ステップS509〜S513の処理を行う。
ステップS509〜S513の処理では、処理部7は、「1」から「m」までの「i」の値に関して(ステップS510とステップS513参照)、「s≦t」を満たせば(ステップS511でYes)、「d」に「∞」を代入する(ステップS512)。ここでは、ステップS506で出力した最適な部分シーケンスと少しでも時間帯が重複する部分シーケンスがこれ以降にステップS506で出力されてしまう可能性をなくすために、その時刻における各要素のうちステップS506で出力した最適な部分シーケンスの終了時刻t以前のものの値を無限大にしている。
Next, for the subsequent processing, the processing unit 7 substitutes ∞ for d min (step S507), substitutes “0” for i (step S508), and further performs the processing of steps S509 to S513. .
In the process of step S509~S513, processing unit 7 with respect the value of "i" from "1" to "m" (see step S510 and step S513), satisfies the "s it e" (Step S511 Yes), “∞” is substituted into “d i ” (step S512). Here, in order to eliminate the possibility that a partial sequence whose time zone overlaps with the optimum partial sequence output in step S506 even if it is a little later will be output in step S506, in step S506 among the elements at that time. is the value of the end time t e previous ones of output the best part sequence to infinity.

続いて、処理部7は、次の時刻の処理に移るために、全てのdとsの値を、それぞれ、1つ前の時刻の値の変数であるd’とs’に代入し(ステップS516)、「t=t+1」として(ステップS517)、ステップS502に戻り、処理を繰り返す。 Subsequently, the processing unit 7, in order to move to the processing of the next time, the value of all the d i and s i, respectively, to d i 'and s i' is a variable of one previous value of the time Substitution is performed (step S516), "t = t + 1" is set (step S517), the process returns to step S502, and the process is repeated.

このようにして、本実施形態のデータストリーム監視装置1によれば、使用するタイムワーピング行列が単一であっても、最適な部分シーケンスを出力することができる。
つまり、本実施形態のデータストリーム監視装置1によれば、たとえば、図3の例において、時刻t=3の時点のDTW距離「14」ではなく、時刻t=5の時点のDTW距離「6」(および、その開始時刻と終了時刻)を、最適な部分シーケンスのDTW距離として、出力部5から出力することができる。
この第4の方法によれば、そのアルゴリズムの特性上、比較例による方法と同様、最適な部分シーケンスを必ず検出することができる。
Thus, according to the data stream monitoring apparatus 1 of the present embodiment, an optimal partial sequence can be output even if a single time warping matrix is used.
That is, according to the data stream monitoring apparatus 1 of the present embodiment, for example, in the example of FIG. 3, the DTW distance “6” at the time t = 5, not the DTW distance “14” at the time t = 3. (And its start time and end time) can be outputted from the output unit 5 as the DTW distance of the optimum partial sequence.
According to the fourth method, the optimum partial sequence can be detected without fail due to the characteristics of the algorithm, as in the method according to the comparative example.

また、この第3の方法および第4の方法は、図4および図5のフローチャートを実行するプログラムを作成することで、データストリーム監視装置1などのコンピュータ装置において実現することができる。さらに、それらのプログラムは、ハードディスク、フラッシュメモリ、CD−ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)などの記録媒体に保存することが可能である。   Further, the third method and the fourth method can be realized in a computer apparatus such as the data stream monitoring apparatus 1 by creating a program for executing the flowcharts of FIGS. 4 and 5. Furthermore, these programs can be stored in a recording medium such as a hard disk, a flash memory, a CD-ROM (Compact Disk Read Only Memory), or a DVD (Digital Versatile Disk).

(第1実施例)
次に、図6を参照しながら、本実施形態のデータストリーム監視装置に関する第1実施例について説明する。図6は、本実施形態のデータストリーム監視装置に関する第1実施例を説明するための図であり、(a)は問合せシーケンス、(b)は部分シーケンス検出の様子を、それぞれ表している。
(First embodiment)
Next, a first example relating to the data stream monitoring apparatus of this embodiment will be described with reference to FIG. 6A and 6B are diagrams for explaining a first example relating to the data stream monitoring apparatus of the present embodiment, where FIG. 6A shows an inquiry sequence, and FIG. 6B shows a partial sequence detection state.

第1実施例は、本実施形態のデータストリーム監視装置1を、1GBのメモリ、Intel(登録商標)のXeon2.8GHzのCPUを搭載したLinux(登録商標)のマシンで実施したものである。ここでは、温度センサによって気温を計測した場合に関して、実験を行っている。
図6(a)は、問合せシーケンスの波形であり、縦軸が温度(摂氏)を表し、横軸が時間の経過を表している。この問合せシーケンスは、天候の変化によって、気温が約20度から約31度まで大きく変動しているパターンが2回存在していることを特徴としている。
In the first example, the data stream monitoring apparatus 1 according to the present embodiment is implemented on a Linux (registered trademark) machine equipped with a 1 GB memory and an Intel (registered trademark) Xeon 2.8 GHz CPU. Here, an experiment is performed in the case where the temperature is measured by the temperature sensor.
FIG. 6A shows the waveform of the inquiry sequence, where the vertical axis represents temperature (Celsius) and the horizontal axis represents the passage of time. This inquiry sequence is characterized in that there are two patterns in which the temperature varies greatly from about 20 degrees to about 31 degrees due to changes in the weather.

図6(b)は、データストリームの波形であり、(a)と同じく、縦軸が温度(摂氏)を表し、横軸が時間の経過を表している。このデータストリームは、温度センサによる約1分ごとの計測データを、上記マシンで受信したものである。
本実施形態の第4の方法を上記マシンで実行することで、図6(b)に示すように、データストリームにおいて、(a)の問合せシーケンスと類似している部分シーケンス(Subseq)としてSub1とSub2の2つを、逃さずに検出している。
FIG. 6B shows a waveform of the data stream. As in FIG. 6A, the vertical axis represents temperature (Celsius) and the horizontal axis represents the passage of time. This data stream is obtained by receiving data measured by the temperature sensor about every minute by the machine.
By executing the fourth method of the present embodiment on the above machine, as shown in FIG. 6B, in the data stream, Sub1 and Sub1 as a partial sequence (Subseq) similar to the query sequence of (a) Two of Sub2 are detected without missing.

(第2実施例)
続いて、図7を参照しながら、本実施形態のデータストリーム監視装置に関する第2実施例について説明する。図7は、本実施形態のデータストリーム監視装置に関する第2実施例について、データストリームのシーケンスの長さと計算時間との関係を表した図である。
(Second embodiment)
Next, a second example relating to the data stream monitoring apparatus of this embodiment will be described with reference to FIG. FIG. 7 is a diagram illustrating the relationship between the sequence length of the data stream and the calculation time in the second example relating to the data stream monitoring apparatus of the present embodiment.

第2実施例において、問合せシーケンスは人工データであり、長さは「256」である。データストリームは人工データであり、長さ(シーケンス長)を「10の3乗」から「10の6乗」まで可変とした。
図7において、縦軸は計算時間(ms)、横軸はデータストリームの長さ(シーケンス長)である。比較例による方法、および、本実施例による方法ともに、タイムワーピング行列の更新と類似する部分シーケンスの検出の合計時間を平均し、計算時間とした。
In the second embodiment, the inquiry sequence is artificial data and the length is “256”. The data stream is artificial data, and the length (sequence length) is variable from “10 to the third power” to “10 to the sixth power”.
In FIG. 7, the vertical axis represents the calculation time (ms), and the horizontal axis represents the length of the data stream (sequence length). In both the method according to the comparative example and the method according to the present embodiment, the total time of detection of the partial sequences similar to the update of the time warping matrix is averaged to obtain the calculation time.

図7に示すように、比較例による方法(L2)では、データストリームが長くなるにつれ、計算時間が増加している。一方、本実施例による方法(L1)では、データストリームが長くなっても、計算時間は一定に保たれている。これは、データストリームが長くなるにつれて、比較例による方法ではタイムワーピング行列の数が増えるのに対し、本実施例による方法ではタイムワーピング行列が常に単一であるからである。   As shown in FIG. 7, in the method (L2) according to the comparative example, the calculation time increases as the data stream becomes longer. On the other hand, in the method (L1) according to the present embodiment, the calculation time is kept constant even if the data stream becomes long. This is because as the data stream becomes longer, the number of time warping matrices increases in the method according to the comparative example, whereas the time warping matrix is always single in the method according to the present embodiment.

このように、第1実施例および第2実施例からもわかるように、本実施形態のデータストリーム監視装置1によれば、比較例の場合と比べて、計算コストの低減、つまり、計算の高速化と省メモリ化を実現できる。   Thus, as can be seen from the first example and the second example, according to the data stream monitoring apparatus 1 of the present embodiment, the calculation cost is reduced, that is, the calculation speed is higher than in the comparative example. And memory saving.

以上で実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。
たとえば、本実施形態では、問合せシーケンスおよびデータストリームに関して、一次元データの場合について説明したが、n次元データ(nは2以上の自然数)の場合でも同様に適用することができる。
また、本発明は、温度センサ以外に、映像や音楽の配信、バイオインフォマティックス、各種ロボットなど、多くの分野に適用可能である。
その他、具体的な構成について、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
This is the end of the description of the embodiments, but the aspects of the present invention are not limited to these.
For example, in the present embodiment, the case of one-dimensional data has been described with respect to the query sequence and the data stream.
In addition to the temperature sensor, the present invention is applicable to many fields such as video and music distribution, bioinformatics, and various robots.
In addition, the specific configuration can be changed as appropriate without departing from the spirit of the present invention.

本実施形態のデータストリーム監視装置の構成図である。It is a block diagram of the data stream monitoring apparatus of this embodiment. 本実施形態のデータストリーム監視装置による問合せ処理のイメージを示した図である。It is the figure which showed the image of the inquiry process by the data stream monitoring apparatus of this embodiment. 本実施形態のタイムワーピング行列の具体例を示した図である。It is the figure which showed the specific example of the time warping matrix of this embodiment. 第3の方法を実行する場合のデータストリーム監視装置の動作を示したフローチャートである。It is the flowchart which showed operation | movement of the data stream monitoring apparatus in the case of performing a 3rd method. 第4の方法を実行する場合のデータストリーム監視装置の動作を示したフローチャートである。It is the flowchart which showed operation | movement of the data stream monitoring apparatus in the case of performing a 4th method. 本実施形態のデータストリーム監視装置に関する第1実施例を説明するための図であり、(a)は問合せシーケンス、(b)は部分シーケンス検出の様子を、それぞれ表している。It is a figure for demonstrating the 1st Example regarding the data stream monitoring apparatus of this embodiment, (a) represents the inquiry sequence, (b) represents the mode of the partial sequence detection, respectively. 本実施形態のデータストリーム監視装置に関する第2実施例について、シーケンスの長さと計算時間との関係図である。It is a relationship figure of the length of a sequence, and calculation time about the 2nd Example regarding the data stream monitoring apparatus of this embodiment. DTWを使用したデータストリーム監視の比較例における、問合せ処理のイメージを示した図である。It is the figure which showed the image of the inquiry process in the comparative example of the data stream monitoring which uses DTW. 比較例におけるタイムワーピング行列の例を示した図である。It is the figure which showed the example of the time warping matrix in a comparative example.

符号の説明Explanation of symbols

1 データストリーム監視装置
4 記憶部
5 出力部
7 処理部
TWM タイムワーピング行列
1 Data Stream Monitoring Device 4 Storage Unit 5 Output Unit 7 Processing Unit TWM Time Warping Matrix

Claims (8)

継続的に受信するデータであるデータストリームから、所定のデータ列である問合せシーケンスと類似する部分シーケンスを、ダイナミックタイムワーピング距離に基づいて検出するデータストリーム監視装置であって、
前記データストリーム中の時刻tにおけるデータx を受信したときに、長さmのシーケンスY=(y ,y ,・・・,y )である前記問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)と前記データストリーム中の時刻t−1におけるデータx t−1 との距離に関する情報d(t−1,i)と、当該距離に関する情報d(t−1,i)に対応する開始時刻に関する情報s(t−1,i)と、を(t−1,i)要素に持つ単一のタイムワーピング行列、および、前記ダイナミックタイムワーピング距離に関する所定の閾値εを記憶している記憶部と、
記データ を受信したときに、前記記憶部に記憶されたタイムワーピング行列と以下の式(11)〜(14)を用いて、前記問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)と前記データx との間の距離に関する情報d(t,i)と、以下の式(15)により計算される当該d(t,i)に対応する開始時刻に関する情報s(t,i)とを計算して、前記記憶部に記憶されたタイムワーピング行列を更新し、前記問合せシーケンス中のデータy と前記データx との間の距離に関する情報d(t,m)が所定の閾値ε以下のときに、当該距離に関する情報d(t,m)に対応する開始時刻s(t,m)を開始時刻t とし、前記時刻tを終了時刻t とする前記データストリーム中の部分シーケンスX[t :t を前記類似する部分シーケンスとして検出する処理部と、
を有することを特徴とするデータストリーム監視装置。
d(t,i)=||x −y ||+d best ・・・(11)
best =min{d(t,i−1),d(t−1,i),d(t−1,i−1)}
・・・(12)
d(t,0)=d(0,0)=0・・・(13)
d(0,i)=∞・・・(14)
(ここで、||x −y ||は、2つの数値(x とy )の距離を表し、min{d(t,i−1),d(t−1,i),d(t−1,i−1)}は、{}内の3つの値のうち、最小のものを採用することを表す。)
<i≧2の場合>
s(t,i)=s(t,i−1) (d best =d(t,i−1)のとき)
s(t−1,i) (d best =d(t−1,i)のとき)
s(t−1,i−1)(d best =d(t−1,i−1)のとき)
<i=1の場合>
s(t,i)=s(t,1)=t ・・・(15)
A data stream monitoring device that detects a partial sequence similar to an inquiry sequence that is a predetermined data string from a data stream that is continuously received data based on a dynamic time warping distance,
When data x t at time t in the data stream is received , the data y i in the query sequence where the sequence of length m = (y 1 , y 2 ,..., Y m ) (however, , I = 1, 2,..., M) and the information d (t−1, i) regarding the distance between the data x t−1 at the time t−1 in the data stream and the information d ( a single time warping matrix having information s (t-1, i) relating to the start time corresponding to t-1, i) and (t-1, i) elements , and a predetermined relating to the dynamic time warping distance. a storage section for storing the threshold epsilon,
Upon receiving the pre-Symbol data x t, using said storage unit to the stored time warping matrix with the following equation (11) to (14), the data y i (except in the query sequence, i = 1 , 2, ..., m) and information d (t, i) regarding the distance between the data x t and the start corresponding to the d (t, i) calculated by the following equation (15) Information s (t, i) relating to time is calculated, the time warping matrix stored in the storage unit is updated, and information d relating to the distance between the data y m and the data x t in the inquiry sequence (t, m) when there is more than a predetermined threshold epsilon, the starting time s (t, m) a starting time t s corresponding to the information d (t, m) regarding the distance, terminating the time t time t the partial sequence X [t in the data stream as e s: a processing unit for detecting a t e] as subsequence said similar,
A data stream monitoring apparatus comprising:
d (t, i) = || x t −y i || + d best (11)
d best = min {d (t, i-1), d (t-1, i), d (t-1, i-1)}
(12)
d (t, 0) = d (0,0) = 0 (13)
d (0, i) = ∞ (14)
(Where || x t −y i || represents a distance between two numerical values (x t and y i ), and min {d (t, i−1), d (t−1, i), d (t−1, i−1)} represents that the smallest one of the three values in {} is adopted.)
<If i ≧ 2>
s (t, i) = s (t, i−1) (when d best = d (t, i−1))
s (t-1, i) (when d best = d (t-1, i))
s (t-1, i-1) (when d best = d (t-1, i-1))
<When i = 1>
s (t, i) = s (t, 1) = t (15)
前記処理部は、前記類似する部分シーケンスX[t :t を検出した場合、その後、さらに、前記タイムワーピング行列の各行列要素の値の算出を行い、その類似する部分シーケンスX[t :t と時間帯が一部でも重複する部分シーケンスの中で、前記ダイナミックタイムワーピング距離がより小さいものがないと判断したときに、その類似する部分シーケンスX[t :t をより適切な部分シーケンスとして検出する
ことを特徴とする請求項に記載のデータストリーム監視装置。
Wherein the processing unit, the similar parts sequence X: when detecting [t s t e], then further subjected to calculation of the value of each matrix element of the time warping matrix, partial sequences X [t that similar When it is determined that there is no partial sequence having a smaller dynamic time warping distance among partial sequences that overlap with s : t e ] even in part, the similar partial sequence X [t s : t e ] The data stream monitoring apparatus according to claim 1 , wherein: is detected as a more appropriate partial sequence.
前記処理部は、前記類似する部分シーケンスX[t :t を検出した場合、その類似する部分シーケンスX[t :t の最後のデータの受信時刻を終了時刻とすると、その終了時刻後における前記タイムワーピング行列のある列において、各行列要素のうち、その開始時刻が前記終了時刻以前であって、かつ、その値が前記類似する部分シーケンスX[t :t のダイナミックタイムワーピング距離よりも小さいものがないときに、その類似する部分シーケンスをより適切なものとして検出する
ことを特徴とする請求項に記載のデータストリーム監視装置。
Wherein the processing unit, the similar parts sequence X: when detecting [t s t e], partial sequence X that similar: When the end time of the reception time of the last data [t s t e], the in the column with the time warping matrix after the end time, of each matrix element, a the start time is the end time earlier, and partial sequence X whose value the similarity [t s: t e] of The data stream monitoring apparatus according to claim 2 , wherein when there is nothing smaller than the dynamic time warping distance, the similar partial sequence is detected as more appropriate.
継続的に受信するデータであるデータストリームから、所定のデータ列である問合せシーケンスと類似する部分シーケンスを、ダイナミックタイムワーピング距離に基づいて検出するデータストリーム監視装置によるデータストリーム監視方法であって、
前記データストリーム監視装置は、前記データストリーム中の時刻tにおけるデータx を受信したときに、長さmのシーケンスY=(y ,y ,・・・,y )である前記問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)と前記データストリーム中の時刻t−1におけるデータx t−1 との距離に関する情報d(t−1,i)と、当該距離に関する情報d(t−1,i)に対応する開始時刻に関する情報s(t−1,i)と、を(t−1,i)要素に持つ単一のタイムワーピング行列、および、前記ダイナミックタイムワーピング距離に関する所定の閾値εを記憶している記憶部と、処理部とを備えており
前記処理部は、前記データ を受信したときに、前記記憶部に記憶されたタイムワーピング行列と以下の式(11)〜(14)を用いて、前記問合せシーケンス中のデータy (ただし、i=1,2,・・・,m)と前記データx との間の距離に関する情報d(t,i)と、以下の式(15)により計算される当該d(t,i)に対応する開始時刻に関する情報s(t,i)とを計算して、前記記憶部に記憶されたタイムワーピング行列を更新し、前記問合せシーケンス中のデータy と前記データx との間の距離に関する情報d(t,m)が所定の閾値ε以下のときに、当該距離に関する情報d(t,m)に対応する開始時刻s(t,m)を開始時刻t とし、前記時刻tを終了時刻t とする前記データストリーム中の部分シーケンスX[t :t を前記類似する部分シーケンスとして検出する
ことを特徴とするデータストリーム監視方法。
d(t,i)=||x −y ||+d best ・・・(11)
best =min{d(t,i−1),d(t−1,i),d(t−1,i−1)}
・・・(12)
d(t,0)=d(0,0)=0・・・(13)
d(0,i)=∞・・・(14)
(ここで、||x −y ||は、2つの数値(x とy )の距離を表し、min{d(t,i−1),d(t−1,i),d(t−1,i−1)}は、{}内の3つの値のうち、最小のものを採用することを表す。)
<i≧2の場合>
s(t,i)=s(t,i−1) (d best =d(t,i−1)のとき)
s(t−1,i) (d best =d(t−1,i)のとき)
s(t−1,i−1)(d best =d(t−1,i−1)のとき)
<i=1の場合>
s(t,i)=s(t,1)=t ・・・(15)
A data stream monitoring method by a data stream monitoring device that detects a partial sequence similar to an inquiry sequence that is a predetermined data string from a data stream that is continuously received data based on a dynamic time warping distance,
The data stream monitoring device receives the data x t at time t in the data stream, and the inquiry sequence is a sequence m of length m = (y 1 , y 2 ,..., Y m ). Data d i (where i = 1, 2,..., M) and information d (t−1, i) relating to the distance between the data x t−1 at time t−1 in the data stream and A single time warping matrix having (t-1, i) elements as information s (t-1, i) related to the start time corresponding to the information d (t-1, i) related to the distance , and a storage unit for storing a predetermined threshold value ε about the dynamic time warping distance, and a processing unit,
Wherein the processing unit, when receiving the previous SL data x t, using said storage unit to the stored time warping matrix with the following equation (11) to (14), the data y i in the query sequence ( However, the information d (t, i) regarding the distance between i = 1, 2,..., M) and the data x t and the d (t, i) calculated by the following equation (15). ) To calculate the information s (t, i) related to the start time corresponding to), update the time warping matrix stored in the storage unit, and between the data y m and the data x t in the query sequence distance information d (t, m) in the case is less than a predetermined threshold epsilon, the starting time s (t, m) a starting time t s corresponding to the information d (t, m) regarding the distance, the time portion in the data stream to end time t e the t Shi Sequence X [t s: t e] the data stream monitoring method characterized by detecting a subsequence the similar.
d (t, i) = || x t −y i || + d best (11)
d best = min {d (t, i-1), d (t-1, i), d (t-1, i-1)}
(12)
d (t, 0) = d (0,0) = 0 (13)
d (0, i) = ∞ (14)
(Where || x t −y i || represents a distance between two numerical values (x t and y i ), and min {d (t, i−1), d (t−1, i), d (t−1, i−1)} represents that the smallest one of the three values in {} is adopted.)
<If i ≧ 2>
s (t, i) = s (t, i−1) (when d best = d (t, i−1))
s (t-1, i) (when d best = d (t-1, i))
s (t-1, i-1) (when d best = d (t-1, i-1))
<When i = 1>
s (t, i) = s (t, 1) = t (15)
前記処理部は、前記類似する部分シーケンスX[t :t を検出した場合、その後、さらに、前記タイムワーピング行列の各行列要素の値の算出を行い、その類似する部分シーケンスX[t :t と時間帯が一部でも重複する部分シーケンスの中で、前記ダイナミックタイムワーピング距離がより小さいものがないと判断したときに、その類似する部分シーケンスX[t :t をより適切な部分シーケンスとして検出する
ことを特徴とする請求項に記載のデータストリーム監視方法。
Wherein the processing unit, the similar parts sequence X: when detecting [t s t e], then further subjected to calculation of the value of each matrix element of the time warping matrix, partial sequences X [t that similar When it is determined that there is no partial sequence having a smaller dynamic time warping distance among partial sequences that overlap with s : t e ] even in part, the similar partial sequence X [t s : t e ] The data stream monitoring method according to claim 4 , wherein the data stream is detected as a more appropriate partial sequence.
前記処理部は、前記類似する部分シーケンスX[t :t を検出した場合、その類似する部分シーケンスX[t :t の最後のデータの受信時刻を終了時刻とすると、その終了時刻後における前記タイムワーピング行列のある列において、各行列要素のうち、その開始時刻が前記終了時刻以前であって、かつ、その値が前記類似する部分シーケンスX[t :t のダイナミックタイムワーピング距離よりも小さいものがないときに、その類似する部分シーケンスをより適切なものとして検出する
ことを特徴とする請求項に記載のデータストリーム監視方法。
Wherein the processing unit, the similar parts sequence X: when detecting [t s t e], partial sequence X that similar: When the end time of the reception time of the last data [t s t e], the in the column with the time warping matrix after the end time, of each matrix element, a the start time is the end time earlier, and partial sequence X whose value the similarity [t s: t e] of 6. The data stream monitoring method according to claim 5 , wherein when there is nothing smaller than the dynamic time warping distance, the similar partial sequence is detected as more appropriate.
請求項から請求項のいずれか1項に記載のデータストリーム監視方法をコンピュータに実行させるためのプログラム。 Program for executing a data stream monitoring method according to the computer of claims 4 to any one of claims 6. 請求項のプログラムを記録することを特徴とする記録媒体。 A recording medium for recording the program according to claim 7 .
JP2006318752A 2006-11-27 2006-11-27 Data stream monitoring device, data stream monitoring method, program thereof, and recording medium Expired - Fee Related JP4801566B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006318752A JP4801566B2 (en) 2006-11-27 2006-11-27 Data stream monitoring device, data stream monitoring method, program thereof, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006318752A JP4801566B2 (en) 2006-11-27 2006-11-27 Data stream monitoring device, data stream monitoring method, program thereof, and recording medium

Publications (2)

Publication Number Publication Date
JP2008134706A JP2008134706A (en) 2008-06-12
JP4801566B2 true JP4801566B2 (en) 2011-10-26

Family

ID=39559540

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006318752A Expired - Fee Related JP4801566B2 (en) 2006-11-27 2006-11-27 Data stream monitoring device, data stream monitoring method, program thereof, and recording medium

Country Status (1)

Country Link
JP (1) JP4801566B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018150589A1 (en) 2017-02-20 2018-08-23 三菱電機株式会社 Pattern extraction device, pattern extraction method, and pattern extraction program
SG10201800954QA (en) * 2018-02-02 2019-09-27 Nec Asia Pacific Pte Ltd Method and system for signal processing rehabilitation exercise signals
JP7204584B2 (en) * 2019-06-14 2023-01-16 ルネサスエレクトロニクス株式会社 Anomaly detection system, anomaly detection device and anomaly detection method
CN113305880B (en) * 2021-05-10 2022-08-05 佛山科学技术学院 Industrial robot consistency detection system and method based on DTW distance

Also Published As

Publication number Publication date
JP2008134706A (en) 2008-06-12

Similar Documents

Publication Publication Date Title
US11443015B2 (en) Generating prediction models in accordance with any specific data sets
US9305264B2 (en) Method and system for improved pattern matching
JP6350251B2 (en) Route information processing apparatus, method, and program
JP4801566B2 (en) Data stream monitoring device, data stream monitoring method, program thereof, and recording medium
TWI525460B (en) Electronic calculating apparatus, personalized information recommending method thereof, and computer program product thereof
JP5047534B2 (en) Multi-target tracking device
JP2007140965A (en) Method and system for predicting operation result
CN113628244A (en) Target tracking method, system, terminal and medium based on label-free video training
KR20130107889A (en) Aparatus and method for detecting anomalous subsequence
KR100440949B1 (en) Adaptive search method in feature vector space
JP5711171B2 (en) Data search device, data search method, and data search program
US20170148424A1 (en) Intuitive music visualization using efficient structural segmentation
JP4939349B2 (en) Trend detection method, trend detection program, and trend detection device
JP6110281B2 (en) Moving unit prediction model generation apparatus, moving unit prediction model generation method, and moving unit prediction model generation program
Zhan et al. Efficient online hyperparameter optimization for kernel ridge regression with applications to traffic time series prediction
Sankararaman et al. Computing similarity between a pair of trajectories
JP2009199507A (en) Similar partial sequence detecting method, similar partial sequence detection program, and similar partial sequence detecting device
Kim et al. Efficient method for mining high utility occupancy patterns based on indexed list structure
JP4697355B2 (en) Data retrieval device
JP5033155B2 (en) Similar partial sequence detection apparatus, similar partial sequence detection method, and similar partial sequence detection program
François et al. Global optimization methods for genome scaffolding
JP7376405B2 (en) Optimization processing device, optimization processing method, and optimization processing program
JP2009302723A (en) Image processing device, method and program
Maurya et al. Kalman filter based flexible sliding window algorithm for mining frequent itemset over data stream
Makhmutova et al. Uncertain Big Data Stream Clustering

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110408

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: 20110802

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110805

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140812

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees