(57)【要約】【課題】  データストリームを記録し分析するシステムと、データストリームを分析する方法と、コンピュータにデータストリームを分析する方法を実行させる命令を記憶するコンピュータ可読メモリとが開示される。【解決手段】  システムは、入力ポート、出力ポート、バッファ及びコントローラを備える。コントローラは、バッファに記憶されたデータストリームの新たな抽出データセグメント（ＥＤＳ）と呼ばれるセグメントを識別し、新たなＥＤＳは抽出プロトコルを満足させる。コントローラは、類似性プロトコルを使用して新たなＥＤＳを複数の参照データセグメント（ＲＤＳ）の各々と比較する。新たなＥＤＳが既存のＥＤＳに類似していない場合、新たなＲＤＳが生成される。新たなＥＤＳがＲＤＳに類似している場合、ＲＤＳは、その新たなＥＤＳを類似しているものとして列挙するように更新される。【選択図】  図１
2020170499.tif 000002
【特許請求の範囲】
【請求項１】
データストリームを記録し分析するシステムであって、
前記データストリームを受け取るように適合された入力ポートであって、該データストリームはデータ値の順序付けられたシーケンスを含む、入力ポートと、
前記データストリームを大容量記憶デバイスに通信するように適合された出力ポートと、
前記データストリームが該システムによって受け取られる際に該データストリームの所定部分を一時的に記憶するために、前記入力ポートに接続されたバッファと、
前記バッファに記憶された前記データストリームの、抽出プロトコルを満足させる新たな抽出データセグメント（ＥＤＳ）と呼ばれるセグメントを識別し、第１の類似性プロトコルを使用して前記新たなＥＤＳを複数の参照データセグメント（ＲＤＳ）の各々と比較するコントローラであって、該コントローラは、前記第１の類似性プロトコルが、前記新たなＥＤＳが前記ＲＤＳのうちの１つに類似していることを示す場合、該新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶し、該コントローラは、前記新たなＥＤＳが前記ＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成し、各ＲＤＳは、そのＲＤＳと類似していることが分かった前記ＥＤＳと、該コントローラに前記新たなＲＤＳを生成させた前記新たなＥＤＳとのリストを含む、コントローラと、
を備える、システム。
【請求項２】
前記第１の類似性プロトコルは、２つのデータセグメントの間の距離の尺度と類似性閾値とを計算し、前記２つのデータセグメントは、前記距離が前記類似性閾値との所定関係を有する場合、類似しているものとして定義される、請求項１に記載のシステム。
【請求項３】
前記コントローラは、既存のＲＤＳから、前記第１の類似性プロトコルより制限的である第２の類似性プロトコルを使用して、そのＲＤＳに関連するＥＤＳを互いに比較することにより、複数の新たなＲＤＳを生成する、請求項２に記載のシステム。
【請求項４】
データ値の順序付けられたシーケンスを含むデータストリームを前記信号のクラスタに対して分析するように、データ処理システムを動作させる方法であって、
前記データストリームを逐次受け取り、各データ値に、該データ値が受け取られる際にインデックスを割り当てることと、
前記受け取られたデータストリームの一部をバッファに記憶することと、
前記バッファから、抽出プロトコルを満足させる新たなＥＤＳを抽出することと、
第１の類似性プロトコルを使用して、前記新たなＥＤＳを複数のＲＤＳの各々と比較することであって、前記データ処理システムは、前記第１の類似性プロトコルが、前記新たなＥＤＳが前記ＲＤＳのうちの１つに類似していることを示す場合、該新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶し、前記データ処理システムは、前記新たなＥＤＳが前記ＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成することと、
を含む、方法。
【請求項５】
前記抽出プロトコルは、前記新たなＥＤＳが開始する前記バッファにおけるデータ値と、前記新たなＥＤＳが終了する前記バッファにおけるデータ値とを識別し、前記新たなＥＤＳが終了する前記データ値は、前記新たなＥＤＳが開始した前記データ値からの一定数のサンプル値である、請求項４に記載の方法又は請求項１に記載のシステム。
【請求項６】
前記データ処理システムは、２つのデータセグメントの間の距離の尺度と類似性閾値とを計算し、前記距離が前記類似性閾値と所定関係を有する場合、前記２つのデータセグメントは類似しているものとして定義され、前記データ処理システムは、前記第１の類似性プロトコルより制限的ではない第２の類似性プロトコルによって判断される際に前記ＲＤＳが互いに類似している場合、ユーザ入力に応じて前記ＲＤＳのうちの２つを結合する、請求項４に記載の方法又は請求項１に記載のシステム。
【請求項７】
前記データ処理システムは、２つのデータセグメントの間の距離の尺度と類似性閾値とを計算し、前記距離が前記類似性閾値と所定関係を有する場合、前記２つのデータセグメントは類似しているものとして定義され、前記データ処理システムは、前記第１の類似性プロトコルより制限的である第２の類似性プロトコルを使用して、既存のＲＤＳから、そのＲＤＳに関連するＥＤＳを互いに比較することによって、複数の新たなＲＤＳを生成する、請求項４に記載の方法又は請求項１に記載のシステム。
【請求項８】
データ処理システムに、データ値の順序付けられたシーケンスを含むデータストリームを前記信号のクラスタに対して分析する方法を実行させる命令を含むコンピュータ可読メモリであって、前記方法は、
前記データストリームを逐次受け取り、各データ値に、該データ値が受け取られる際にインデックスを割り当てることと、
前記受け取られたデータストリームの一部をメモリバッファに記憶することと、
前記バッファから、抽出プロトコルを満足させる新たなＥＤＳを抽出することと、
第１の類似性プロトコルを使用して、前記新たなＥＤＳを複数のＲＤＳの各々と比較することであって、前記データ処理システムは、前記第１の類似性プロトコルが、前記新たなＥＤＳが前記ＲＤＳのうちの１つに類似していることを示す場合、該新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶し、データ処理システムは、前記新たなＥＤＳが前記ＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成することと、
を含む、コンピュータ可読メモリ。
【請求項９】
前記データ処理システムは、各ＥＤＳを、そのＥＤＳに類似していることが分かった前記ＲＤＳを表すシンボルに置き換えることにより、圧縮データストリームを生成する、請求項８に記載のコンピュータ可読メモリ、請求項１に記載のシステム、又は請求項４に記載の方法。
【請求項１０】
前記データ処理システムは、各ＥＤＳを、そのＥＤＳに類似していることが分かった前記ＲＤＳを表すシンボルに置き換えることにより、圧縮データストリームを生成し、前記データ処理システムは、ＥＤＳの一部ではないデータ値の各シーケンスを、該シーケンスにおけるシンボルの数を示すカウントに置き換える、請求項８に記載のコンピュータ可読メモリ、請求項１に記載のシステム、又は請求項４に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
データ記録システムは、今では、大量のデータを記録することができ、その量が大きいため、記憶データを逐次読み出すことにより記録データを検索する時間が非常に長くなる。テラバイトを超えるデータセットが日常的に記録される。従来のディスクドライブからテラバイト分のデータを読み出す時間は、数時間である。このため、対象パターンを求めて記録データを迅速に検索することは、難題を示す。
【発明の概要】
【０００２】
本発明は、データストリームを記録し分析するシステムと、データストリームを分析する方法と、コンピュータにデータストリームを分析する方法を実行させる命令を記憶するコンピュータ可読メモリとを含む。システムは、入力ポート、出力ポート、バッファ及びコントローラを備える。入力ポートはデータストリームを受け取るように適合され、データストリームはデータ値の順序付けられたシーケンスを含む。出力ポートは、データストリームを大容量記憶デバイスに通信するように適合されている。バッファは、データストリームがシステムによって受け取られる際にデータストリームの所定部分を一時的に記憶するために、入力ポートに接続されている。コントローラは、バッファに記憶されたデータストリームの新たな抽出データセグメント（ＥＤＳ：extracted data segment）と呼ばれるセグメントを識別し、新たなＥＤＳは抽出プロトコルを満足させる。コントローラは、第１の類似性プロトコルを使用して新たなＥＤＳを複数の参照データセグメント（ＲＤＳ：reference data segments）の各々と比較し、コントローラは、第１の類似性プロトコルが、新たなＥＤＳがＲＤＳのうちの１つに類似していることを示す場合、新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶する。コントローラは、新たなＥＤＳがＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成する。各ＲＤＳは、そのＲＤＳと類似していることが分かったＥＤＳと、コントローラに新たなＲＤＳを生成させた新たなＥＤＳとのリストを含む。
【０００３】
１つの態様では、バッファはＦＩＦＯバッファを含む。
【０００４】
別の態様では、抽出プロトコルは、新たなＥＤＳが開始するバッファにおけるデータ値と、新たなＥＤＳが終了するバッファにおけるデータ値とを識別する。
【０００５】
別の態様では、新たなＥＤＳが終了するデータ値は、新たなＥＤＳが開始したデータ値からの一定数のサンプル値である。
【０００６】
別の態様では、第１の類似性プロトコルは、２つのデータセグメントの間の距離の尺度と類似性閾値とを計算し、距離が類似性閾値と所定関係を有する場合、２つのデータセグメントは類似しているものとして定義される。
【０００７】
別の態様では、コントローラは、第１の類似性プロトコルより制限的ではない第２の類似性プロトコルによって判断される際にＲＤＳが互いに類似している場合、ユーザ入力に応じてＲＤＳのうちの２つを結合する。
【０００８】
別の態様では、コントローラは、第１の類似性プロトコルより制限的である第２の類似性プロトコルを使用して、既存のＲＤＳから、そのＲＤＳに関連するＥＤＳを互いに比較することによって、複数の新たなＲＤＳを生成する。
【０００９】
別の態様では、コントローラは、各ＥＤＳを、そのＥＤＳに類似していることが分かったＲＤＳを表すシンボルに置き換えることにより、圧縮データストリームを生成する。
【００１０】
別の態様では、コントローラは、ＥＤＳの一部ではないデータ値の各シーケンスを、そのシーケンスにおけるシンボルの数を示すカウントに置き換える。
【００１１】
本発明はまた、データ値の順序付けられたシーケンスを含むデータストリームを信号のクラスタに対して分析するようにデータ処理システムを動作させる方法も含む。本方法は、データストリームを逐次受け取ることと、データ値が受けられる際に各データ値にインデックスを割り当てることとを含む。受け取られるデータストリームの一部は、バッファに記憶され、そのバッファから、抽出プロトコルを満足させる新たなＥＤＳが抽出される。データ処理システムは、第１の類似性プロトコルを使用して新たなＥＤＳを複数のＲＤＳのうちの各々と比較し、データ処理システムは、第１の類似性プロトコルが、新たなＥＤＳがＲＤＳのうちの１つに類似していることを示す場合、新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶し、新たなＥＤＳがＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成する。
【００１２】
別の態様では、抽出プロトコルは、新たなＥＤＳが開始するバッファにおけるデータ値と、新たなＥＤＳが終了するバッファにおけるデータ値とを識別する。
【００１３】
別の態様では、新たなＥＤＳが終了するデータ値は、新たなＥＤＳが開始したデータ値からの一定数のサンプル値である。
【００１４】
別の態様では、データ処理システムは、２つのデータセグメントの間の距離の尺度と類似性閾値とを計算し、距離が類似性閾値と所定関係を有する場合、２つのデータセグメントは類似しているものとして定義される。
【００１５】
別の態様では、データ処理システムは、第１の類似性プロトコルより制限的ではない第２の類似性プロトコルによって判断される際にＲＤＳが互いに類似している場合、ユーザ入力に応じてＲＤＳのうちの２つを結合する。
【００１６】
別の態様では、データ処理システムは、既存のＲＤＳから、第１の類似性プロトコルより制限的である第２の類似性プロトコルを使用して、そのＲＤＳに関連するＥＤＳを互いに比較することにより、複数の新たなＲＤＳを生成する。
【００１７】
別の態様では、データ処理システムは、各ＥＤＳを、そのＥＤＳに類似していることが分かったＲＤＳを表すシンボルに置き換えることにより、圧縮データストリームを生成する。
【００１８】
別の態様では、データ処理システムは、ＥＤＳの一部ではないデータ値の各シーケンスを、そのシーケンスにおけるシンボルの数を示すカウントに置き換える。
【００１９】
コンピュータ可読メモリは、データ処理システムに、データ値の順序付けられたシーケンスを含むデータストリームを信号のクラスタに対して分析する方法を実行させる命令を含む。上記方法は、データストリームを逐次受け取ることと、データ値が受けられる際に各データ値にインデックスを割り当てることと、受け取られたデータストリームの一部をメモリバッファに記憶することとを含む。そのバッファから、抽出プロトコルを満足させる新たなＥＤＳが抽出される。新たなＥＤＳは、第１の類似性プロトコルを使用して複数のＲＤＳのうちの各々と比較され、データ処理システムは、第１の類似性プロトコルが、新たなＥＤＳがＲＤＳのうちの１つに類似していることを示す場合、新たなＥＤＳを識別する情報をＲＤＳデータベースに記憶し、新たなＥＤＳがＲＤＳのうちのいずれとも類似していない場合、新たなＲＤＳを生成する。
【００２０】
別の態様では、データ処理システムは、各ＥＤＳを、そのＥＤＳに類似していることが分かったＲＤＳを表すシンボルに置き換えることにより、圧縮データストリームを生成する。
【００２１】
別の態様では、データ処理システムは、ＥＤＳの一部ではないデータ値の各シーケンスを、当該シーケンスにおけるシンボルの数を示すカウントに置き換える。
【図面の簡単な説明】
【００２２】
【図１】本発明の１つの実施形態によるデータ記録装置を示す図である。
【図２】ＲＤＳからの距離の関数としての距離の分布の例示的なプロットを示す図である。
【発明を実施するための形態】
【００２３】
本発明がその利点を提供する方法は、入来データチャネルにおける信号がデジタル化され、ディスクドライブ等のメモリデバイスに記憶されるデータロギングシステムに関連してより容易に理解することができる。データストリームは、「抽出アルゴリズム」によって定義される対象信号と、以下の考察ではアイドル信号と呼ぶ、対象信号の間の信号とを含むものとみなすことができる。
【００２４】
概して、記録データのユーザは、データにおける様々な信号を理解し対象信号を検索することができる必要がある。この考察の目的で、ユーザは、記録すべきデータストリームにおける全ての信号の詳細な知識は有していないと想定する。データストリーム信号の数は、ユーザが一度に１つずつ検討するには多すぎるものと想定する。このため、ユーザは、データストリーム全体を見ることなく信号の重要な特徴を完全に理解することができる必要がある。この目的で、類似する信号のクラスタを定義することが有効である。こうしたクラスタの代表的なメンバを検査することにより、ユーザは、記録される信号のより十分な知識を取得し、対象信号を検索するために必要なパラメータを指定することができる。
【００２５】
本発明は、ユーザが、２つの信号の間の類似性に関連する類似度を計算する類似性アルゴリズムに基づいて、記録された信号の集まりにおいてクラスタを定義するのを可能にするツールを、ユーザに提供する。類似度に基づいてオブジェクトをクラスタリングするアルゴリズムは、本技術分野において既知である。不都合なことに、これらのアルゴリズムの多くを適用する際に固有の計算作業負荷は、Ｎ２次以上である。数テラバイトの記録データストリームが数１００万を超える信号を有する可能性があるとすると、ユーザが信号を探索する数分間で記録信号をクラスタリングすることは、多くの場合実際的ではない。
【００２６】
後により詳細に説明するように、本発明は、記録プロセス中に対象信号の小クラスタを検出する。そして、これらの小クラスタは、結合されて、入力データストリームにおける信号のクラスタと一致するより大きいクラスタを提供する。クラスタは、クラスタリングすべき信号の所定の記述を必要とすることなく構築される。理想的には、これらのクラスタの各々は、入力ストリームに存在する基礎となる信号の単一クラスタのわずかな部分を含む。各クラスタは、後述するように、入力ストリームにおける観測信号から開始する。クラスタのサイズは、第２の信号が第１の信号と同じクラスタ内に含まれるべきか否かを判断する閾値を含む類似性アルゴリズムによって求められる。クラスタが結合される、又はクラスタがより小さいクラスタに分解される方法について、より詳細に後述する。
【００２７】
本発明は、デジタル化データストリームを検査して、予めデータセグメントの詳細な知識を必要とすることなく、対象となるデータストリーム内のデータのセグメントを検出する。データセグメントは、データストリームが大容量記憶デバイスに向かう途中にデータロガーを通過する際、リアルタイムに識別される。データストリームは、主に、対象データセグメントを含まない領域によって分離された個々の信号からなると想定する。抽出アルゴリズムを満足させるデータストリームセグメントは、抽出データセグメント（ＥＤＳ）と呼び、抽出アルゴリズムを満足させない信号を含むデータストリームセグメントをアイドルデータセグメント（ＩＤＳ：idle data segments）と呼ぶ。
【００２８】
理想的には、各ＥＤＳは、いかなる背景サンプルもなしに１つの対象信号に対応するデータサンプルを含む。しかしながら、短期間でＥＤＳを識別する必要があることが、抽出アルゴリズムを制約する。正確な対象信号セグメントを見つけるためには、定義された閾値レベルを横切る立上りエッジ又は立下りエッジ等の容易に検出可能なイベントによって信号の開始を検出し、信号の開始に対する一定数のサンプルであるように信号の終了を定義することより、著しく長い時間が必要である。２つの信号が実際には同じであった場合、２つの信号に対するＥＤＳは依然として一致する。このため、本発明の１つの態様では、抽出アルゴリズムは、ＥＤＳの開始を定義するトリガ条件を指定し、ＥＤＳの終了は、ＥＤＳの開始に対する一定数の入力サンプルであるように定義される。この近似が、最終的なクラスタリングを干渉する場合、後述するように、長期記憶装置からＥＤＳを検索することができ、信号のより正確な終了に基づくクラスタリングを利用することができる。
【００２９】
ＥＤＳに遭遇すると、ＥＤＳは、更なる検査のためにバッファにコピーされ、データストリームにおけるＥＤＳの位置に関してＥＤＳを一意に識別するインデックス値が割り当てられる。類似性アルゴリズムにより、ＥＤＳに対して「類似度（similarity measure）」もまた定義される。類似度は、任意の２つの抽出データセグメントの間の類似性の程度を反映する。類似度により、本開示のシステムは、抽出データセグメントを互いに類似するＥＤＳのクラスタにグループ化することができる。本発明の１つの態様では、類似性アルゴリズムは閾値を含む。類似度が、閾値と所定関係を有する場合、２つのＥＤＳは、互いに類似しているように定義される。例えば、類似度が閾値未満である場合、２つのＥＤＳは互いに類似しているように定義することができる。
【００３０】
新たなＥＤＳが見つかると、システムは、ＥＤＳが既に見つけられているクラスタの一部であるか否かを判断する。ＥＤＳが既存のクラスタの一部である場合、既存のクラスタは、新たなＥＤＳの追加を反映するように更新される。ＥＤＳが既存のクラスタのうちのいずれにも十分に類似しない場合、新たなクラスタが定義され、そのクラスタにＥＤＳが追加される。
【００３１】
各クラスタは、参照データセグメント（ＲＤＳ）によって表される。抽出及びクラスタリングは、記録中にリアルタイムに実施され、そのため、ユーザは、新たに記憶されたデータストリームからＥＤＳを回復する必要なしに、データストリームに存在するＥＤＳのクラスタを見ることができる。データ記録及び初期クラスタリング中、データストリームにおいて識別された新たなＥＤＳのみがメモリに保持される。クラスタリング動作を容易にするために、ＲＤＳはシステムメモリに維持される。データストリームの記録が完了した後、クラスタリングされたＥＤＳを回復して更なる分類に使用することができる。
【００３２】
ここで、本発明の１つの実施形態によるデータ記録装置を示す図１を参照する。アナログ−デジタル変換器（ＡＤＣ）１１によって入来データストリームがデジタル化され、ＡＤＣの出力はローカルＦＩＦＯバッファ１２に記憶される。ＦＩＦＯバッファ１２は、ローカルメモリ１６に実装することができることが留意されるべきである。クロック１３からの各クロックサイクルに対して、１つのサンプルがデジタル化される。コントローラ１５が、各クロックサイクルにおいてインクリメントされる内部レジスタを維持し、ＦＩＦＯバッファ１２に転送されたばかりのデータサンプルで開始するデータセグメントを識別するための一意のインデックスを提供する。新たなデータエントリは、ＦＩＦＯバッファ１２に転送され、クロック１３の各サイクルにおいて、ＦＩＦＯバッファ１２における最も古いエントリが読み出される。各クロックサイクルにおいて、コントローラ１５は、対象データセグメントが開始したか又はその時点で完了しているかを判断する。コントローラ１５は、対象データセグメントの開始を検出するハードウェアを含むことができ、又は、コントローラ１５は、ＦＩＦＯバッファ１２の内容を検査して、対象データセグメントが開始したか又はその時点で完了しているかを判断することができる。オシロスコープの技術分野においてハードウェアトリガが使用され、それは、当業者には既知である。この時点で、対象データシーケンスがＦＩＦＯバッファ１２内にある場合、コントローラ１５は、そのデータシーケンスをＦＩＦＯバッファから新たなＥＤＳバッファ１７にコピーし、データストリームにおける新たなＥＤＳの位置を確認し、その情報をＥＤＳデータベース１９に入力する。
【００３３】
ディスク１４からのＥＤＳの検索を容易にするために、ディスクデータベース２２が、ディスク１４上のレコードの間の対応関係と、各ＥＤＳの開始に割り当てられたインデックスとを記録する。概して、ディスク１４は、ランダムにアクセスすることができる複数のディスクレコードとして編成される。コントローラ１５が、ディスク１４に記憶されるＥＤＳを回復する必要がある場合、ディスクデータベース２２を使用して、ＥＤＳに関連するインデックスが開始するディスクレコード番号が求められる。
【００３４】
対象データシーケンスが先行するサンプルで開始したばかりである場合、コントローラ１５は、データシーケンスがＥＤＳデータベースで開始したサンプルインデックスを記録する。
【００３５】
上述したように、抽出すべきデータセグメントを定義する所定の抽出アルゴリズムがなければならない。概して、抽出アルゴリズムは、抽出データセグメントとなるべきデータシーケンスの開始及び終了を定義する。抽出アルゴリズムを実行するコントローラは、データシーケンスがＦＩＦＯバッファ１２から出る前に識別を行うことができなければならない。抽出アルゴリズムは、リアルタイムに動作しなければならない。オシロスコープへの入力における対象シーケンスの開始を識別するリアルタイムトリガアルゴリズムが本技術分野において既知である。トリガアルゴリズムは、立上りエッジのように単純な特徴、又は特定の信号のように複雑な特徴を識別する。本開示のシステムでは、対象データシーケンスの正確な性質は予め既知ではないため、抽出アルゴリズムは、好ましくは広範囲の信号を選択し、そのため、大きい分類の信号を識別するリアルタイムトリガアルゴリズムが好ましい。抽出データセグメントとなるべきデータシーケンスの開始は、リアルタイムトリガを引き起こしたサンプルにおいて発生する必要はないことに留意されたい。例えば、抽出データセグメントは、リアルタイムトリガによって識別されるサンプルの所定数前のサンプルで開始することができる。
【００３６】
抽出アルゴリズムはまた、対象データシーケンスの終了も指定しなければならない。１つの例示的な実施形態では、抽出アルゴリズムは、トリガとＦＩＦＯバッファ１２における窓とを指定する。この例では、抽出データセグメントは窓の最後で終了し、対象信号が窓における最後のデータ値より前に終了する可能性があっても、指定された窓内のサンプルの全てがＥＤＳの一部である。
【００３７】
別の例示的な実施形態では、抽出アルゴリズムは、抽出すべきデータシーケンスの終了を通知するトリガを指定する。例えば、抽出アルゴリズムは、何らかの閾値未満の値で終了し何らかの指定された数のサンプルに対してその値以下であり続ける立下りエッジを構成するデータ値が、対象データセグメントの終了を通知することを必要とすることができる。したがって、ＥＤＳデータベースはまた、ＥＤＳの長さ、又はＥＤＳにおける最後のデータサンプルのインデックス等の等価な情報も含む。
【００３８】
本発明の１つの態様では、ＥＤＳの終了を指定する情報もまた、ＥＤＳデータベース１９内に含まれる。
【００３９】
新たなＥＤＳが抽出されると、そのＥＤＳは、動的に生成された参照ライブラリ内の各ＲＤＳと比較される。ＲＤＳライブラリは、ライブラリ内の各ＲＤＳに関する情報を記憶するＲＤＳデータベース１８を含む。新たなＥＤＳがＲＤＳのうちの１つに十分に類似する場合、その関連を示すようにＥＤＳデータベースにおける新たなＥＤＳエントリが更新され、ＲＤＳデータベースは、そのＲＤＳに関連するクラスタの一部であるものとして新たなＥＤＳの識別を示すように更新される。新たなＥＤＳがＲＤＳのうちの１つに十分に類似せず、新たなＥＤＳをＲＤＳデータベース内のＲＤＳの全てと比較した後に十分な処理時間が残っている場合、ＲＤＳとして新たなＥＤＳを使用し、ＲＤＳデータベースに関連データを入力して、新たなＲＤＳが開始される。十分な処理時間が利用可能でない場合、ＥＤＳデータベースにおける新たなＥＤＳエントリは、割り当てられなかったものとしてマーキングされる。例えば、ＲＤＳの全てが考慮される前に、ＥＤＳのＲＤＳへの照合中に新たなＥＤＳが発見される可能性があり、そのため、コントローラ１５は、この新たなＥＤＳのために新たなＥＤＳバッファを使用しなければならない。
【００４０】
データストリームの処理の開始時、コントローラ１５は、２つのデータセグメントの間の類似性を測定する類似性測定アルゴリズムを受け取る。本発明の１つの態様では、類似性アルゴリズムは、２つのデータセグメントが類似しているか否かを判断する際に閾値と比較される類似度を生成する。このアルゴリズムは、コントローラ１５によって、ＥＤＳとＲＤＳライブラリ内のＲＤＳとの類似性を測定するために使用される。類似性アルゴリズムは、４つのタイプのアルゴリズムを考慮することによってより容易に理解することができる。最初の３つのタイプのアルゴリズムは、データ値自体に対して動作する。第４のタイプのアルゴリズムは、各データシーケンスから導出される「シグネチャ」に対して動作する。
【００４１】
第１のタイプの類似性アルゴリズムは、データセグメントを直接比較してそれらの類似性を求める。最も単純な場合では、２つのデータセグメントは同じ長さを有し、類似性関数は、成分がデータ値である２つのベクトルの間の距離を測定する。例えば、ＥＤＳが、ｉ＝１〜Ｎに対してサンプル値ｐ（ｉ）を有し、ＲＤＳがｉ＝１〜Ｎに対してサンプル値ｑ（ｉ）を有する場合、ユークリッド距離
【数１】
2020170499.tif 000003
は、２つのデータセグメントの類似性の程度の尺度である。Ｄ（ｐ，ｑ）が閾値Ｔ未満である場合、２つのセグメントは互いに類似していると定義され、ここで、Ｔは所定の閾値である。この目的でユークリッド距離の代わりに使用することができる多くの距離関数がある。より詳細に後述するように、いくつかの応用では、関数を計算する際の計算作業負荷がより小さいため、特定の距離関数が好ましいものとなる。
【００４２】
第２のタイプの類似性関数は、データセグメントの間の距離を測定する前にデータセグメントを標準化する。いくつかの応用では、データセグメントの形状は、データセグメントの正確な一致より重要である。例えば、データセグメントは、振幅が異なるが同じ形状を有する２つの信号を表す場合がある。すなわち、ｐ（ｉ）＝Ｋｑ（ｉ）である。ユーザの目的が、信号の振幅とは無関係に同じ形状を有する信号を探すことである場合、各データセグメントは、最初に、セグメントの間の距離を計算する前に平均振幅によって決まる定数によって分割される。１つの例では、定数は、データセグメントの最大値である。別の例では、定数は、データセグメントにおけるデータ値の絶対値の平均値である。
【００４３】
第３のタイプの類似性関数は、相対的に小さいデータセグメントと相対的に大きいデータセグメントとの一致を探す。これは、ユーザが、何らかの相対的に小さいシーケンスを含むデータセグメントを見つけたい場合に有用である。この状況は、データセグメントが異なる長さである場合に発生する。基本的に、ユーザは、相対的に小さいデータシーケンスに類似するシーケンスを含む相対的に大きいデータシーケンスを探すことを望む。１つの例では、相対的に小さいデータセグメントと相対的に大きいデータセグメントの対応する部分との間の距離が測定される。相対的に小さいデータセグメントが、ｉ＝１〜ｍに対してｐ（ｉ）であり、相対的に大きいデータセグメントがｉ＝１〜Ｎに対してｑ（ｉ）である場合、ｋ＝０〜（Ｎ−ｍ−１）に対して、距離関数
【数２】
2020170499.tif 000004
を定義することができる。Ｄは、ｋの様々な値に対して求められ、Ｄの最小値は、閾値と比較すべき距離として選択される。上述したようにｐ及びｑの値を標準化することができる場合、この手続きを適用することができることが留意されるべきである。処理時間を短縮するために、ｋは小さい範囲に制限することができる。ユーザに、開始時に２つのデータシーケンスが位置合わせされていると考える理由がある場合、ｋはゼロに制限することができる。
【００４４】
上記類似性関数は、比較されているデータセグメントに直接作用する。このタイプの類似性関数は、クラスタリング分析における専門家ではない人が直観的に理解できる。しかしながら、ＥＤＳを分類するときに類似度を計算する作業負荷は、ＥＤＳが大きい場合、大きい可能性がある。さらに、ユーザがＥＤＳを分類するために使用したい類似性のタイプに応じて、第４のクラスの類似性関数が好ましい場合がある。
【００４５】
第４のクラスの類似性分析では、各データセグメントからシグネチャベクトルが導出される。そして、シグネチャベクトルの間の距離を使用して、上述したものと類似する方法で類似性を測定することができる。このタイプの類似性測定では、ＥＤＳの全てに対するシグネチャベクトルは、データセグメントの長さが異なる場合であっても、同じ成分を有する。概して、シグネチャベクトルにおける成分の数は、ＥＤＳにおけるデータ値の数よりはるかに小さく、このため、距離測定を実施する計算作業負荷は著しく低減するが、この節約は、対応するデータセグメントからシグネチャベクトルの成分を導出する計算作業負荷によって相殺される。概して、シグネチャベクトルの成分は、そのデータセグメントを他のデータセグメントから識別する可能性が高いデータセグメントの任意の関数とすることができる。抽出アルゴリズムが異なる長さのデータセグメントを生成する場合、シグネチャベクトルの１つの成分は、データセグメントの長さとすることができる。他の成分は、データセグメントに適用される有限インパルス応答フィルタから導出することができる。例えば、データセグメントの周波数成分の振幅を表す成分を使用することができる。
【００４６】
ＥＤＳを識別し、見つかった各新たなＥＤＳを考慮するようにＲＤＳライブラリを更新するプロセスは、好ましくはリアルタイムで実行される。本開示の目的で、プロセスが、本発明によりデータストリームがデータロガーに入る速度を低下させることなく完了することができる場合、プロセスはリアルタイムで実行されると言う。処理のデータ抽出部分の場合において、入力データストリームは、ＦＩＦＯを通った後、ディスク記憶装置に出て行き、したがって、抽出処理、すなわち新たなＥＤＳの識別により、コントローラは、抽出アルゴリズムを満足させるデータセグメントを識別し、そのデータセグメントをメモリ内のバッファに、そのデータセグメントの一部がＦＩＦＯバッファから出る前に、移動させることができなければならない。
【００４７】
予備的分類を完了しＲＤＳライブラリを更新する時間は、メモリの量と利用可能な並列処理の程度とによって決まる。１つの態様では、新たなＥＤＳは、メモリ内のＥＤＳバッファ１７に移動し、ライブラリ内のＲＤＳと比較される。ＲＤＳに対して新たなＥＤＳを検査するために必要な時間は、比較中にメモリ内にＲＤＳを維持することによって改善することができる。
【００４８】
さらに、一致を見つける時間は、既存のＲＤＳへの一致を見つける尤度を反映する順序で照合を実施することによって改善することができる。ＲＤＳデータベースは、そのＲＤＳに対して既に見つかったＥＤＳ一致のカウントを含む。それらのカウントは、対応するＲＤＳが次のＥＤＳと一致する尤度の尺度である。このため、各ＲＤＳに関連するカウントの順序で照合を実施することは、一致（存在する場合）を見つける速度を向上させる。
【００４９】
経時的に尤度が変化する場合、経時的に減衰する別個の尤度変数を利用することができる。ＲＤＳにＥＤＳが割り当てられる度に、そのＲＤＳに対する尤度カウントは１だけインクリメントされる。周期的に、尤度カウントは、カウントに１未満である減衰因子を掛けることによって減少する。一致の探索は、尤度カウントによって定義される順序で実行される。
【００５０】
最後に、並列処理により照合プロセス時間を短縮することができることが留意されるべきである。ＲＤＳのうちの１つへの新たなＥＤＳの照合は、ＲＤＳのうちの別のものへのＥＤＳの照合と並列に進むことができる。このため、約Ｍ分の１、照合時間を短縮することができ、ここで、Ｍは利用可能な並列プロセッサの数である。距離計算はまた、高性能グラフィックディスプレイカードのグラフィカルプロセッサコアでも実施することができ、このため、並列処理による速度の向上は、１０００分の１を超えることができる。
【００５１】
照合プロセスにおいて、コントローラは、ＥＤＳを見つけて抽出するために必要な平均時間で平均して１つのＥＤＳを処理すればよいこともまた留意されるべきである。処理を待っている新たなＥＤＳを記憶するために十分なバッファがある場合、システムは、一致を見つけるための最長時間ではなく、一致を見つけるための平均時間で１つのＥＤＳを処理すればよい。
【００５２】
依然として、ＲＤＳライブラリ内のＲＤＳに対するＥＤＳの照合は、一致を待っている新たなＥＤＳを保持するバッファ容量を超える前に完了し損なう可能性がある。この場合、照合されなかったＥＤＳに対するＥＤＳデータベースエントリは、一致が見つからなかったものとしてマーキングされ、処理は、照合されるのを待っている次のＥＤＳに進み、したがって、照合されなかったＥＤＳを保持していたバッファを新たなＥＤＳによって使用されるために空ける。照合されなかったＥＤＳは、記録期間の最後に、又は、記録期間の後続する部分の間に新たなＥＤＳの発見が低速であるためにバッファ空間が利用可能となると、処理することができる。
【００５３】
システムの１つの態様では、データ記録動作の開始時、参照データベースは空である。新たな抽出データセグメントに遭遇すると、新たな抽出データセグメントのうちのいくつかは参照データセグメントになる。例えば、第１の抽出データセグメントは、参照データセグメントになる。第２の新たな抽出データセグメントは、新たな参照データセグメントとなることができ、又は、単に、先行して生成された参照データセグメントによって表されるクラスタの一部としてラベル付けすることができる。
【００５４】
本発明の別の態様では、ユーザは、比較に使用するべき１つ以上の参照データセグメントを入力することができる。参照セグメントは、ユーザによって生成される、又はデータロギング装置の製造業者によって提供される、本発明に類似する装置によって分析された別のデータストリームにおいて、見つけられている場合がある。
【００５５】
本発明の１つの態様では、記録及び初期処理中にメモリに保持されるＲＤＳデータベース及び関連ＲＤＳは、ユーザがロギングされているデータストリームを理解するのに役立つように、記録中にユーザが見ることができる。１つの実施形態では、ユーザにはＲＤＳのリストが提示され、そのＲＤＳのリストは、そのＲＤＳと類似することが分かったＥＤＳの数のカウントによって順序付けられている。そして、ユーザは、表示するために１つ以上のＲＤＳを選択することができる。
【００５６】
上述したように、ＲＤＳデータベースは、各ＲＤＳに対して、特に、そのＲＤＳに類似することが分かった各ＥＤＳの識別を列挙するエントリを含む。１つの態様では、識別は、そのＥＤＳが見つかったデータストリームにおけるインデックスである。ここでＥＤＳが列挙されるのは、そのＥＤＳとＲＤＳとの間の類似性の尺度が何らかの所定の閾値条件を満たしたためである。例えば、ＥＤＳとＲＤＳとの間の距離は、何らかの閾値未満であった。閾値条件が緩すぎる場合、大量のＥＤＳがＲＤＳに関連付けられる。より重要なことには、単一のＲＤＳが、入力データストリームにおける信号の２つ以上の異なるクラスタからの信号を含む可能性がある。後により詳細に説明するように、こうしたＲＤＳは回避されるべきである。
【００５７】
閾値条件が厳しすぎる場合、更に多くのＲＤＳがあることになり、各ＲＤＳによって定義されるクラスタのサイズはより小さくなる。原則的に、記録後プロセス中に、相対的に小さいＲＤＳクラスタを結合してより大きいクラスタを提供することができる。しかしながら、データ収集中に大量の小さいＲＤＳクラスタがあることにより、新たなＥＤＳをＲＤＳクラスタに照合させることに関連する計算作業負荷が実質的に増大する。したがって、閾値条件とＲＤＳクラスタの特異性との間にトレードオフがある。
【００５８】
本発明の１つの態様では、各ＲＤＳに対するＲＤＳデータベースエントリはまた、そのＲＤＳに関連する各ＥＤＳに対する実際の類似性の尺度も含む。これらの尺度のヒストグラムは、任意選択的に、記録プロセス中及び記録後処理中にコントローラにより、ユーザの要求があるとユーザに提供される。ヒストグラムを見ることにより、特に、大量のＥＤＳがＲＤＳに関連付けられる場合、ユーザは、クラスタの構造に関して洞察を得ることができる。例えば、ヒストグラムが複数のピークを明らかにした場合、クラスタは、入力データストリームにおける信号の複数のクラスタからのＥＤＳを含む可能性があり、そのため、後述するように、ＲＤＳが複数の新たなＲＤＳに拡張されることを必要とする可能性がある。
【００５９】
記録段階の最後に、本発明は、２つのデータベースを生成していることになる。第１のデータベースは、抽出アルゴリズムを満足させたデータセグメントの全てを識別する。このデータベースは、記録データストリームにおける各ＥＤＳ、及びそのＥＤＳに類似するＲＤＳの全ての位置を含む。このデータベースを使用して、コントローラは、任意のＲＤＳに関連する任意のＥＤＳにアクセスすることができる。第２のデータベースは、記録プロセス中に生成されたＲＤＳの全てを識別する。ＲＤＳデータベースにおける情報は、所与のＲＤＳに関連するＥＤＳの全てと、記録データストリームにおいてＲＤＳを開始したＥＤＳの位置と、上述したようなＲＤＳに関する他の情報とを識別する。
【００６０】
場合によっては、ＩＤＳのうちの１つ以上を検査することが有用である可能性がある。例えば、抽出アルゴリズムがトリガ位置に対して固定窓を定義する場合、その窓は、トリガに関連する信号の全てを取り込むためには小さ過ぎる可能性がある。ＥＤＳの後のアイドルデータセグメントは、切り捨てられたＥＤＳの欠損部分を提供することができる。ＥＤＳの後のＩＤＳのディスク上のインデックスは、そのＥＤＳの最後のインデックスから計算することができる。
【００６１】
上述したように、比較の全てを行うために利用可能な時間が十分ではなかったために、ＲＤＳライブラリに関して分類に失敗したＥＤＳがある可能性がある。ＥＤＳデータベースは、任意のこうしたＥＤＳにタグ付けする。記録後処理において、これらの失敗したＥＤＳを再検討することができる。こうしたＥＤＳ各々の位置は、ＥＤＳデータベースに記録される。そのＥＤＳは、記録データストリームから、データストリームにおけるその位置が既知であるため検索することができる。さらに、記録データストリームがディスクドライブ又は同様のランダムアクセス記憶デバイス上にある場合、そのＥＤＳに達するために、記録データストリーム全体を再生する必要はない。このため、ＥＤＳを検索して現ＲＤＳライブラリに対して比較することができる。この時点で、類似性アルゴリズムを使用して、ＲＤＳのうちの１つ以上にＥＤＳを関連付けることができ、又は十分に類似するＲＤＳが見つからない場合、そのＥＤＳに対して新たなＲＤＳを定義することができる。
【００６２】
本明細書に記載するデータロギングプロセスの目的のうちの１つは、互いに類似する信号を登録し、そのため、ユーザが記録データにおける様々な信号タイプを理解するのを可能にすることである。各ＲＤＳはＥＤＳのクラスタを表すが、ＲＤＳの集まりは、必ずしも、ユーザが基礎となるＥＤＳのセットのクラスタリングを完全に理解するのを可能にするとは限らない。例えば、基礎となるＥＤＳのセットにあるクラスタよりはるかに大量のＲＤＳがある可能性がある。本発明は、基礎となる信号のクラスタリングに対する洞察を提供する２つのツールを提供する。
【００６３】
第１のツールは、同じ基礎となる信号クラスタの一部であるＲＤＳのグループを見つけるようにＲＤＳに対して作用する。ＲＤＳデータベースにおける各ＲＤＳエントリは、ＥＤＳの小さいグループを代表するＥＤＳを含む。このため、ＲＤＳのうちの選択されたものをクラスタリングすることにより、ユーザは、類似するＥＤＳのより大きいクラスタを構築することができる。ＲＤＳの数がＥＤＳの数より実質的に少ないため、ＲＤＳのクラスタリングは、実質的により小さい計算作業負荷で実施することができる。以下の考察において術語を簡略化するために、ＲＤＳのクラスタをグループと呼ぶことにする。
【００６４】
ＲＤＳをクラスタリングする目的は、単純な一例を参照してより容易に理解することができる。入力データストリームにおける信号のクラスタの中心にある又はその近くにあるＲＤＳを考慮する。類似性アルゴリズムは、２つのデータセグメントの間の距離を測定するものと想定する。特に、そのＲＤＳの基礎を形成するＥＤＳから、ＥＤＳライブラリにおける他のＥＤＳの各々までの距離を考慮する。図２に、ＲＤＳからの距離の関数としてのこうした距離の分布の例示的なプロットを示す。図２に示す例では、Ｔ１に、このＲＤＳに対応するＥＤＳを定義するために使用されたカットオフ距離を示し、ＲＤＳは、入力信号の第１のクラスタ３１に対応するＥＤＳのみを含む。理想的には、結果として得られるグループがＴ３に示すような有効なカットオフ距離を有するように、このＲＤＳは他のＲＤＳと結合されるべきである。
【００６５】
上述したように、Ｔ２に示すように元のカットオフ距離が大きすぎる場合、ＲＤＳは、入力信号における第２のクラスタ３２に対応するＥＤＳを含む。こうしたＲＤＳが別のＲＤＳと結合された場合、結果として得られるＲＤＳもまた、入力信号における２つのクラスタに属するＥＤＳを含み、そのため、結果として得られるグループは、入力信号における１つのクラスタに制限されない。上述したように、図２に示すもののような周波数分布は、大きすぎるＲＤＳを識別する際に有用である可能性がある。
【００６６】
ＲＤＳは、ＥＤＳからＲＤＳを生成するために使用された方法に類似する方法でグループ化される。グループを形成する際、類似性関係及び閾値は、上述した方法に類似する方法で定義される。これらの定義は、ユーザにより、ユーザインタフェース２１又はシステム自体を介して提供することができる。最も単純な場合では、ＲＤＳを生成するために使用されたものと同じ類似性関係を使用して、類似性閾値を、候補ＲＤＳをグループに入れる際にそれほど選択的でないように変更することにより、グループを生成する。しかしながら、異なる類似性関係を利用することができる。
【００６７】
最初に、グループはなく、このため、第１のグループは、試験される第１のＲＤＳからなる。本発明の１つの態様では、この第１のグループを開始するために、最多のＥＤＳを有するＲＤＳが選択される。この態様は、ＥＤＳにおける基礎となるクラスタがＲＤＳのうちの１つ又はその近くに中心を置くモデルに基づく。このため、最高カウントを有するＲＤＳが、こうしたクラスタの中心又はその近くに位置する可能性が高い。グループは、２つのＲＤＳに対する類似度がそれら２つのＲＤＳが類似性条件を満たすことを示す場合、未だグループに割り当てられていない残りのＲＤＳをそのグループに対して検査することにより、埋められる。そして、グループに未だ割り当てられていない最大カウントを有するＲＤＳにより、プロセスは繰り返される。それ以上未割当ＲＤＳがない場合、プロセスは完了する。
【００６８】
ユーザは、データ処理システムに与えられる適切なコマンドに応じて、各グループにおけるＲＤＳに対応するデータセグメントを見ることができる。この表示は、各ＲＤＳの中心として定義されるＥＤＳに、又はグループに関連するＥＤＳの全てに制限することができる。これらの表示により、ユーザは、類似性関係を使用してグループ化された信号が、実際に、ユーザに類似するように見えるか否かを判断することができる。最後に、ユーザは、グループ化プロセスが極端に実行されたか否かを判断するのに役立つように、図２に示すもののような周波数分布を見ることができる。
【００６９】
グループの数が依然として多すぎる場合、同じ類似性アルゴリズムを使用するが、類似性を見つけるためにそれほど厳密ではないように選択された異なる閾値を用いて、プロセスを繰り返すことができる。さらに、異なる類似性アルゴリズムを使用してプロセスを繰り返すことができる。類似性アルゴリズムに対する制限は、任意の２つのＥＤＳに対して動作することができなければならないということのみである。例えば、異なる長さのＥＤＳに対して動作する類似性アルゴリズムは、２つのＥＤＳの長さが実質的に同じでない場合に２つのＥＤＳが非類似となるように類似度を設定することにより、構築することができる。２つのＥＤＳの長さが実質的に同じである場合、距離関数が計算され、閾値と比較されて、２つのＥＤＳが類似しているか否かが判断される。別の例では、類似性アルゴリズムは、最初に、比較すべきＥＤＳの各々に対するシグネチャを導出し、その後、シグネチャの間の距離を測定して２つのＥＤＳが類似しているか否かを判断することができる。
【００７０】
上記説明は、ＲＤＳを再クラスタリングする特定のタイプのクラスタリングアルゴリズムを想定する。しかしながら、第１のツールを用いて他のクラスタリング技法を利用することができる。
【００７１】
上述したように、ＲＤＳのうちの１つを生成するために使用された類似性基準が緩すぎる場合、そのＲＤＳは、非常に多数のＥＤＳを含む可能性がある。さらに、そのＲＤＳは、入力信号クラスタ内で２つ以上のクラスタにわたる可能性がある。したがって、こうしたＲＤＳを、各ＲＤＳに関連するより少数のＥＤＳを有する複数のＲＤＳと置き換えることが有用である。本発明の１つの態様では、ＲＤＳは、そのＲＤＳに関連するＥＤＳの全てを検索し、より制限的である類似性カットオフ閾値を使用してそれらのＥＤＳを再クラスタリングすることにより、より小さいＲＤＳに分割することができる。再クラスタリングは、ＥＤＳの元のクラスタリングに関して上述した方法と類似する方法で進行する。第１の新たなＲＤＳは、抽出されたＥＤＳのグループの第１のＥＤＳを含むように定義される。そして、各連続するＥＤＳは、新たなＲＤＳと比較される。新たなカットオフ値によって判断される際にＥＤＳがＲＤＳに類似する場合、そのＥＤＳはその新たなＲＤＳに含まれる。ＥＤＳが、新たなＲＤＳのうちの１つに十分に類似していない場合、別の新たなＲＤＳが定義され、そのＲＤＳを開始するためにそのＥＤＳが使用される。ＲＤＳの新たなセットがＲＤＳライブラリに含まれるとき、ＲＤＳのグループ化を繰り返すことができる。
【００７２】
記録の後のＲＤＳのクラスタリングは、ＲＤＳにグループ化されたＥＤＳを選択する際に使用された抽出アルゴリズムに基づく。最初に、上述したように、各ＲＤＳは複数のクラスタを含むことができる。こうしたＲＤＳは、上述したようにＲＤＳを再生成することにより、又は、計算資源が許す場合、ＲＤＳに関連する全てのＥＤＳをロードし、それらのＥＤＳに対して直接クラスタリングアルゴリズムを実行することにより、より小さいクラスタに分割することができる。代替的に、例えば、抽出アルゴリズムが、開始トリガに対して固定サイズ位置の窓内のサンプルの全てを選択することによって動作する場合、結果として得られるＥＤＳは、単に、対象信号のみを含むデータセグメントを近似する。窓が大きすぎる場合、ＥＤＳは、距離計算を歪ませる可能性がある著しい数の背景サンプルを含むことになる。同様に、窓が小さすぎる場合、対象信号の一部がカットオフされることになる。上述したように、ＥＤＳに続くＩＤＳにアクセスすることができ、固定窓によって切り捨てられた信号の喪失部分を復元することができる。したがって、ＥＤＳは、対象データ信号に対する近似のみである。
【００７３】
上述した第２のツールにより、ユーザは、これらの近似を補正し、そのため、クラスタリングを改善することができる。例えば、ＥＤＳ抽出アルゴリズムが固定窓に基づいた場合、データ処理システムは、ＥＤＳに関連する停止位置を固定窓の最後から対象信号の物理的な最後に一致する位置まで変更するトリミングアルゴリズムを実行することができる。例えば、ＥＤＳの最後が、データチャネルにおける背景レベルを表すサンプルのストリングである場合、ＥＤＳの最後は、背景を上回る最後のデータ値の位置であるように定義することができる。同様に、ＥＤＳが窓によって切り捨てられ、当該ＥＤＳに隣接してアイドルデータセグメントがある場合、アイドルデータセグメントにおけるデータの最後を示すように、ＥＤＳの最後を変更することができる。
【００７４】
これらの近似を補正するようにＥＤＳが更新された後、同じ類似性アルゴリズム又は異なる類似性アルゴリズムを使用して、新たなＥＤＳの集まりをＲＤＳにクラスタリングすることができる。そして、第１のツールに関して上述したように、新たなＲＤＳのセットをグループにクラスタリングすることができる。十分な計算資源が利用可能である場合、元の大きいＲＤＳに置き換わるように新たなＲＤＳのセットを提供するように、再クラスタリングされているＲＤＳに対応するＥＤＳの全てをグループとして組み立てて再クラスタリングすることができる。
【００７５】
上記２つのツールを使用する記録後処理中、ユーザは、１つ以上のクラスタに対応する実際のＥＤＳを見ることができる。クラスタ内のＥＤＳがユーザに対して十分に類似しているように見えない場合、ユーザは、類似性を判断する際に使用された類似性アルゴリズム及び閾値の両方又は一方を変更することができる。本発明の１つの態様では、ユーザは、類似性アルゴリズムの所定のリストから類似性アルゴリズムを選択することができる。
【００７６】
上述した実施形態では、ＲＤＳデータベースは、空で開始し、記録が進むに従って埋められる。しかしながら、記録の開始の前に１つ以上のＲＤＳが定義される実施形態もまた構築することができる。これらの初期ＲＤＳにより、ユーザは、データストリームが受け取られる際にデータストリームの内容を依然として認識しながら、特定の信号を探すことができる。本発明に類似する装置によって分析された、又はユーザによって生成された別のデータストリームにおいて、参照データセグメントが見つけられている場合もある。
【００７７】
２つのデータセグメントの間の類似性を測定する前にＥＤＳ及びＲＤＳが標準化される類似性アルゴリズムもまた利用することができる。例えば、各データセグメントは、比較が形状における類似性を測定するように、データセグメントにおけるサンプルの最大値によって割ることができる。別の例では、ＥＤＳに定数が掛けられ、類似性が計算される。プロセスは、異なる所定の定数に対して完了することができ、最高の類似度を使用することができる。
【００７８】
本発明の１つの態様では、データストリームをリアルタイムで記録しながら、可能な限り多くの予備的データを提供するように、処理が組織化される。そして、背景において、又はデータ記録が完了した後、より高レベルの処理が実行される。大量のデータを記録する時点での処理により、抽出条件を満足させるデータセグメントの抽出、抽出データセグメントに基づく類似するデータセグメントの予備的分類、並びに、リアルタイム動作性能を必要とする、入力データの記録を実行しながらの参照データセグメントの検出及び登録が可能になる。最初に予備的分類の結果を使用して、予備的に分類された参照データセグメントに対するクラスタ分析によって分類を実行することができる。したがって、ユーザが、データが長期記録デバイスから回復されるのを待つ必要なしに、分析処理時間及びユーザクエリに対する応答を提供することができる。
【００７９】
言い換えれば、処理は、高速処理を最も優先し、したがって、最高の類似性を有するＲＤＳを識別しないが、代わりに、所定の閾値の精度でＥＤＳに類似するＲＤＳを、こうしたＲＤＳが見つかるとすぐにＥＤＳのタグとして採用し、それにより、処理を終了する。詳細なデータセグメントの分類の実行がクラスタリングによって実施されるまで、完全な分類決定を得る処理は延期される。
【００８０】
記憶されるデータセグメント及びＲＤＳの数は、類似性評価のために分類閾値を設定することによって調整することができる。その結果、予備的処理中に分類誤りを犠牲にして予備的分類に対する時間を短縮させることができる。
【００８１】
上述したように、上述したような並列処理を使用して処理時間を短縮させることができる。さらに、各ＲＤＳに関連するＥＤＳの数を反映する順序でＲＤＳを検査することにより、処理時間を更に短縮させることができる。さらに、予備的分類で使用される類似性評価関数は、低い計算負荷を有するように選択することができ、それにより、後の処理で、より複雑な類似度を使用してクラスタリングの精度を向上させることができる。
【００８２】
上述した実施形態は一例としてデータロガーを使用するが、本発明は、２つの信号が類似しているか否かを判断する類似性アルゴリズムと併せて抽出アルゴリズムを定義することができる広範囲のデータ信号に適用することができる。
【００８３】
上述した実施形態では、入力データストリームは本質的にスカラであった。すなわち、入力データストリームは、各クロックサイクルにおいて単一の値からなる。しかしながら、本発明の教示は、ベクトル入力データストリームに適用することができる。こうしたデータストリームでは、各クロックサイクルにおいて入力ベクトルを提供するように各チャネルがＡＤＣによって処理される複数の入力データチャネルがある。新たなＥＤＳの開始を定義するトリガ回路は、チャネルのうちの１つ又はチャネルのうちの複数に対して動作することができる。こうしたベクトルデータストリームに上述した教示を適用することができる。
【００８４】
上述した実施形態では、元のデータストリームは、元のアナログ信号をデジタル化することによって導入された任意の量子化誤差を除き、損失なしにディスク又は他の長期記憶デバイスから回復することができる。上述したように、この元のデータストリームに対する記憶要件は、何十テラバイトである可能性がある。いくつかの応用では、非可逆圧縮アルゴリズムを使用して圧縮データストリームを提供することができることが有利である。圧縮データストリームを提供するために使用することができる２つのタイプの近似がある。第１の近似は、ＩＤＳを各ＩＤＳにおけるデータサンプルの数のカウントに置き換える。これにより、各ＩＤＳが、それがＩＤＳであることを示すコードとカウントとまで縮小する。
【００８５】
第２の近似は、各ＥＤＳを、そのＥＤＳを含むＲＤＳにおけるＥＤＳに置き換える。各ＲＤＳは代表的なＥＤＳを含み、そのＲＤＳに関連するＥＤＳの残りはそのＥＤＳに類似する。このため、データストリームにおける各ＥＤＳは、そのＥＤＳが位置するＲＤＳの識別情報に置き換えられる。しかしながら、この近似では、データストリームにＲＤＳのライブラリが一度含まれることが必要である。しかしながら、ＲＤＳの平均数がＥＤＳの数よりはるかに小さいと想定すると、圧縮のレベルは著しい。各代表的なＥＤＳは、そのＥＤＳの圧縮バージョンに置き換えることができる。代表的なＥＤＳを圧縮する際、エントロピ符号化等の可逆圧縮アルゴリズムを使用することができる。代替的に、代表的なＥＤＳは、データ圧縮技術分野において既知である非可逆データ圧縮アルゴリズムのうちの１つを使用して圧縮することができる。これらの従来のデータ圧縮技法は、可逆圧縮アルゴリズム及び非可逆圧縮アルゴリズムの両方を含むことができることが留意されるべきである。
【００８６】
本発明はまた、事前記録データセットにおける信号を理解するための分析的ツールとしても利用することができる。この場合、事前記録データセットは、図１に示す装置に類似する装置に入力される。記録データが既にデジタル形態である場合、ＡＤＣ１１は省略することができる。こうした応用では、コントローラ１５は、任意選択的に、データがシステムに入力される速度を制御することができる。したがって、次の新たなＥＤＳを処理しなければならなくなる前に新たなＥＤＳをＲＤＳの各々と比較する十分な時間がない場合、コントローラ１５は、システムが追いつくことができるようにデータの入力を単に停止することができる。
【００８７】
事前記録データの圧縮バージョンが望ましい場合、圧縮データストリームで使用するべきＲＤＳを決定した後、第２の時間で、データセットを読み出すことができる。そして、ディスク１４に圧縮データストリームを出力することができる。
【００８８】
上述したように、本発明のコントローラは、従来のコンピュータ又はマルチプロセッサとすることができる。ＥＤＳのＲＤＳへの照合は、マルチプロセッサを利用することにより速度を上昇させることができるプロセスであり、その理由は、新たなＥＤＳとＲＤＳのうちの１つとの間の照合の結果は、そのＥＤＳとＲＤＳのうちの別のものとの照合と並列に実行することができるためである。マルチプロセッサは、従来のマルチコアコンピュータ、又は、何千ものコアを有するグラフィック処理ボードとすることができる。
【００８９】
本発明はまた、データ処理システムに本発明の方法を実行させる命令を記憶するコンピュータ可読媒体も含む。コンピュータ可読媒体は、米国特許法第１０１条の下で特許となり得る主題を構成する任意の媒体であるように定義され、米国特許法第１０１条の下で特許となり得る主題を構成しないいかなる媒体も排除する。こうした媒体の例としては、コンピュータ又はデータ処理システムが可読であるフォーマットで情報を記憶するコンピュータメモリデバイス等の非一時的媒体が挙げられる。
【００９０】
本発明の上述した実施形態は、本発明の種々の態様を示すために提供されている。しかし、異なる特定の実施形態において示される本発明の異なる態様を組み合わせて、本発明の他の実施形態を提供することができることが理解される。さらに、本発明に対する種々の変更形態が、上記の説明及び添付図面から明らかになるであろう。したがって、本発明は、添付の特許請求の範囲の範囲だけによって制限される。
【符号の説明】
【００９１】
１１  アナログ−デジタル変換器（ＡＤＣ）
１２  ＦＩＦＯバッファ
１３  クロック
１４  ディスク
１５  コントローラ
１６  ローカルメモリ
１７  ＥＤＳバッファ
１８  ＲＤＳデータベース
１９  ＥＤＳデータベース
２１  ユーザインタフェース
２２  ディスクデータベース
【図１】
2020170499.tif 000005
【図２】
2020170499.tif 000006
【外国語明細書】
2020170499000001.pdf