(57)【特許請求の範囲】
【請求項１】
複数のアイテムを含むデータセットを解釈するための方法であって、
ルール生成モジュールによって、前記データセットの複数の同時に頻発するアイテムセットを特定することであって、前記複数の同時に頻発する前記アイテムセットのそれぞれがルールセット内にルールを形成することにより、および前記ルールセット内の前記ルールに対応する少なくとも１つのパラメータの値を推定することにより、前記データセットに関する前記ルールセットを演算する工程であって、前記ルールセットは少なくとも１つのパラメータの前記値に基づいてあらかじめ定められた結末のために演算される工程と、
前記ルール生成モジュールによって、複数のルールを含むルールカバーを生成する工程であって、前記ルールカバーは前記ルールセットのサブセットに対応し、前記ルールカバーは、前記ルールのサポートの降順に前記ルールセットの前記ルールをリストすることにより、および関心対象の結末を有するあらかじめ定められた数のトランザクションがカバーされるまで、リストされた前記ルールを前記ルールカバーに追加することにより生成される工程と、
解釈モジュールによって、前記ルールカバーにおける前記複数のルールのオーバラップの程度に基づいて、複数のルールペア間の複数の距離を演算し、および前記ルールカバーの複数の前記ルールペア間で演算された複数の距離に基づいて距離マトリックスを生成し、および、複数の前記ルールペア間で演算された複数の距離を記憶する工程と、
前記解釈モジュールによって、前記距離マトリックスを使用して前記ルールカバー内の重複するルールをクラスタリングする工程であって、重複する前記ルールはデータセットのトランザクションの共通セットを含む前記ルールに対応する工程と、
前記解釈モジュールによって、各クラスタから代表的ルールを選択する工程であって、前記代表的ルールは各クラスタに含まれる前記ルールによってカバーされるトランザクションを示す工程と、
前記解釈モジュールによって、各クラスタから選択される前記ルールセットの前記代表的ルールのそれぞれに対して少なくとも１つの例外を決定する工程であって、１つ以上の先例があらかじめ定められた結末とは異なる結果を提供する場合に、少なくとも１つの前記例外が決定される工程、および
前記解釈モジュールによって、前記ルールセットの前記代表的ルールおよび前記代表的ルールのそれぞれに対して決定される少なくとも１つの前記例外を使用して前記データセットを解釈する工程を含み、上記各工程はプロセッサ（１１０）によって実行される方法。
【請求項２】
前記複数のアイテムはトランザクションデータベースの複数の特有の分野に対応するものである請求項１に記載の方法。
【請求項３】
前記ルールセットの演算は関連するルールマイニング技術に基づく請求項１に記載の方法。
【請求項４】
少なくとも１つの前記パラメータは、前記ルールのサポート、前記ルールの信頼度、および前記ルールのリフトを含む請求項１に記載の方法。
【請求項５】
前記代表的ルールはバッチモード技術あるいはインタラクティブモード技術によって選択される請求項１に記載の方法。
【請求項６】
少なくとも１つの前記例外はあらかじめ定められた信頼度しきい値に基づいて決定される請求項１に記載の方法。
【請求項７】
前記データセットをデータベース（１０８）に記憶する工程をさらに含む請求項１に記載の方法。
【請求項８】
複数のアイテムを含むデータセットを解釈するためのデータ解釈システム（１０２）であって、
プロセッサ（１１０）と、
ルール生成モジュール（１２０）であって、
前記データセットの複数の同時に頻発するアイテムセットを特定する工程であって、前記複数の同時に頻発する前記アイテムセットのそれぞれがルールセット内にルールを形成することであって、前記ルールセットの中の各ルールは１つ以上の先例に基づくあらかじめ定められた結末を含むことにより、および前記ルールセット内の前記ルールに対応する少なくとも１つのパラメータの値を推定することにより、前記データセットに関する前記ルールセットを演算する工程であって、前記ルールセットは少なくとも１つのパラメータの前記値に基づいてあらかじめ定められた結末のために演算される工程と、
複数のルールを含むルールカバーを生成する工程であって、前記ルールカバーは前記ルールセットのサブセットに対応し、前記ルールカバーは、前記ルールのサポートの降順に前記ルールセットの前記ルールをリストすることにより、および関心対象の結末を有するあらかじめ定められた数のトランザクションがカバーされるまで、リストされた前記ルールを前記ルールカバーに追加することにより生成される工程とに適用されるルール生成モジュール（１２０）と、
解釈モジュール（１２２）であって、
前記ルールカバーの複数のルールペア間の複数の距離を演算し、および、複数の前記ルールペア間で演算された複数の距離に基づいて距離マトリックスを生成し、および、複数の前記ルールペア間で演算された複数の距離を記憶する工程と、
前記距離マトリックスを使用して前記ルールカバー内の重複するルールをクラスタリングする工程であって、前記重複するルールは前記データセットのトランザクションの共通セットを含む前記ルールに対応する工程と、
各クラスタから代表的ルールを選択する工程であって、前記代表的ルールは各クラスタに含まれる前記ルールによってカバーされるトランザクションを示す工程と、
各クラスタから選択される前記ルールセットの代表的ルールのそれぞれに対して少なくとも１つの例外を決定する工程であって、１つ以上の前記先例があらかじめ定められた結末とは異なる結果を提供する場合に、少なくとも１つの前記例外が決定される工程と、
前記ルールセットの前記代表的なルールおよび前記代表的ルールのそれぞれに対して決定される少なくとも１つの前記例外を使用して解釈する工程とに適用される解釈モジュール（１２２）と、
前記データセットを記憶するために適用されるデータベース（１０８）と
を含むデータ解釈システム（１０２）。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は２０１４年１２月１７日に提出されたインド仮特許出願第４０６６／ＭＵＭ／２０１４号の優先権を主張し、その全体が参照によって本願に組み込まれる。
【０００２】
本発明はデータ解釈に関し、排他的ではないが詳細には、データセットの解釈に関する。
【背景技術】
【０００３】
近年、分析産業が成熟し、したがって分析産業内での競争が激化している。今日の急速な国際ビジネス環境の成長によって、要求にかなう分析解に対する需要が以前にも増して増えている。通常は、企業は膨大な量のデータを可能な限りセットの情報として記憶する。当該データはデータに意味を持たせるように分析され、それに基づいてデータは意思決定のために用いられることができる。例えば、企業はさまざまなデータ分析アプリケーションを採用し、記憶されたデータセット間の関係を特定し、および、特定された関係に基づいて行動する。
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明の方法、システム、およびハードウェアの実施可能性を説明する前に、本発明の開示に明白に図示されていない複数の可能性がある実施形態が本発明にあるように、本発明は記載されている特定のシステム、および方法論に限定されるわけではないことを理解されたい。明細書に使用されている専門用語は特定の説明または実施形態のためだけに用いられているものであり、および、添付の特許請求の範囲によってのみ規定される本発明の範囲を制限するものではないことを理解されたい。
【０００５】
本願はデータセットの解釈のための方法およびシステムを提供する。
【０００６】
本願はデータセットの解釈のための方法を提供し、前記方法は以下のステップを実行するプロセッサを含み、当該ステップは、ルール生成モジュール（１２０）を使用してデータセットに関するルールセットを演算する工程であって、ルールセットの中の各ルールは１つ以上の先例に基づくあらかじめ定められた結末を含む工程、および、複数のルールを含むルールカバーを生成する工程であって、ルールカバーはルールセットのサブセットに対応する工程と、解釈モジュール（１２２）を使用して、複数のルールペア間の複数の距離を演算し、および、ルールカバーの複数のルールペア間で演算された複数の距離に基づいて距離マトリックスを生成し、および、複数のルールペア間で演算された複数の距離を記憶する工程と、距離マトリックスを使用してルールカバー内の重複するルールをクラスタリングする工程であって、重複するルールはデータのトランザクションの共通セットに対応する工程と、各クラスタから代表的ルールを選択する工程であって、代表的ルールは各クラスタに含まれるルールによってカバーされるトランザクションを示す工程と、各クラスタから選択されるルールセットの代表的ルールのそれぞれに対して少なくとも１つの例外を決定する工程であって、１つ以上の先例があらかじめ定められた結末とは異なる結果を提供する場合に、少なくとも１つの例外が決定される工程、および、ルールセットの代表的なルールおよび代表的ルールのそれぞれに対して決定される少なくとも１つの例外を使用してデータセットを解釈する工程を含む。
【０００７】
本願はデータセットの解釈のためのシステム（１０２）を提供し、当該システムはプロセッサ（１１０）と、データセットに関するルールセットを演算する工程であって、ルールセットの中の各ルールは１つ以上の先例に基づくあらかじめ定められた結末を含む工程と、複数のルールを含むルールカバーを生成する工程であって、ルールカバーはルールセットのサブセットに対応する工程のために適用されるルール生成モジュール（１２０）と、ルールカバーの複数のルールペア間の複数の距離を演算し、および、複数のルールペア間で演算された複数の距離に基づいて距離マトリックスを生成し、および、複数のルールペア間で演算された複数の距離を記憶する工程と、距離マトリックスを使用してルールカバー内の重複するルールをクラスタリングする工程であって、重複するルールはデータのトランザクションの共通セットに対応する工程と、各クラスタから代表的ルールを選択する工程であって、代表的ルールは各クラスタに含まれるルールによってカバーされるトランザクションを示す工程と、各クラスタから選択されるルールセットの代表的ルールのそれぞれに対して少なくとも１つの例外を決定する工程であって、１つ以上の先例があらかじめ定められた結末とは異なる結果を提供する場合に、少なくとも１つの例外が決定される工程と、代表的なルールおよび代表的ルールのそれぞれに対して決定される少なくとも１つの例外を使用してデータセットを解釈する工程のために適用される解釈モジュール（１２２）と、ルールセットおよびデータセットを記憶するために適用されるデータベース（１０８）を含む。
【０００８】
詳細な説明が添付の図面を参照して説明される。図面では、参照番号の最も左側の桁（単数または複数）は参照番号が最初にあらわれる図面を示す。同一の番号が類似する特徴およびコンポーネントに対して図面全体で使用される。本発明による実施形態によるシステムおよび／または方法のいくつかの実施形態が、ほんの一例として、添付の図面を参照して説明される。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態によるデータ解釈システムを実行するネットワーク環境を示す。
【図２】本発明の別の実施形態による複数のアイテムセットを有するデータセットを解釈するための方法を示す。
【発明を実施するための形態】
【００１０】
本明細書に記載のいずれのブロックダイヤグラムも本発明の原理を具現化するシステムを説明する概念図であることは当業者であれば当然分かる。同様に、いずれのフローチャート、フローダイヤグラム、状態遷移ダイヤグラム、疑似コード等も、コンピュータ読み出し可能媒体で実質的にあらわされ得るさまざまなプロセスを示し、および、コンピュータまたはプロセッサが明確に示されているか否かに関わらず当該コンピュータまたはプロセッサによって実行されることが理解されるであろう。
【００１１】
本発明は、複数のアイテムセットを有するデータセットを解釈するためのシステムおよび方法に関する。データセットはデータの集合として理解することができる。実施例では、データセットは、マーケットバスケットデータまたは消費者データ等に対応してもよい。
【００１２】
通常は、企業は膨大な量のデータを情報セットとして記憶している。しかしながら、このデータはしばしば大きく、例えば、スーパーマーケットのトランザクション数は大きくなるので、コンピュータ技術を使用してデータを要約することは困難である。データを利用する分析のゴールは、データから学習される小さなルールセットを見つけ出すこと、および、ビジネスアナリストが重要なパターンを理解することを手助けすることである。しかしながら、当該技術はしばしば大量の冗長な結果を生み出し、それらを理解すること、および、与えられたデータを要約することが困難になる。
【００１３】
従来から、関連するルールをグルーピングし、および、その例外を探し出す処理には多くの方法がある。しかしながら、それらは別々に処理され、および、現存する技術のいずれもが両方を組み込むことをしていない。さらに、関心の対象を統計的に測定し、ルールを順番に並べることによって特定される上位のＫ個のルールは、カバー範囲が狭く、すなわち、切り取られたルールのほとんどはほんのわずかの入力データしかカバーしないので、入力データに関するはっきりとした像を提供しない。入力データの包括的な見解が得られないことによって、さまざまな問題が引き起こされる。
【００１４】
従来は、企業は、複数のデータソース位置に記憶された異なる顧客に対応する入手可能なデータを活用することはできなかったので、顧客およびさまざまな企業間の顧客関係の断片化された見解だけを得ることができる。現存する技術では、全てのデータを活用し、複数の全く異なるデータソースにまたがる顧客の統一された、および、包括的な見解を生成し、維持することはできない。いずれか１つを決定する前に、全ての可能性がある関係を分析するが適切であることがよくある。このように、現存する技術では企業に関連するさまざまなエンティティ間の関係を総合的にあらわす関連性データを分析できなかった。
【００１５】
したがって、本発明は、トランザクションデータベースまたは探索的データリポジトリ（ＥＤＲ）等のデータベースに記憶された複数のアイテムセットを含むデータセットの解釈のためのシステムおよび方法を提供することである。ＥＤＲは１つ以上のアイテムセットを含む関連するデータを備えることができる。実施例では、ＥＤＲは、消費者行動、車両データ、およびセンサーデータ等のいずれかの分野に対応する関連データを含むことができる。さらに、ＥＤＲは外部ソースから生成または取得されてもよい。本発明はデータ解釈システムを含むことができる。データ解釈システムは、複数のアイテムセットに対して異なる解釈を提供してもよい。
【００１６】
一旦、ＥＤＲが取得または生成されると、データ解釈システムは、トランザクションデータベースの中で複数の頻発するアイテムセットを特定することができる。実施例では、頻発するアイテムセットは、既存の頻発パターンマイニング技術のいずれかを採用することによって特定してもよい。実施例では、複数の頻発するアイテムセットのそれぞれが、１つ以上の先例に基づくあらかじめ定められた結末に対するルールを形成する。さらに、頻発するアイテムセットのそれぞれに対して、データ解釈システムは、ルールに関連する可能性がある少なくとも１つのパラメータの値を推定できる。実施例では、少なくとも１つのパラメータは、ルールのサポート（ｓｕｐｐｏｒｔ）、ルールの信頼度（ｃｏｆｉｄｅｎｃｅ）およびルールのリフト（ｌｉｆｔ）を含んでもよい。
【００１７】
実装形態では、ルールに関する少なくとも１つのパラメータ対応する値が一旦推定されると、データ解釈システムはアイテムセットに対応するルールのセットを演算できる。実装形態では、ルールのセットは関連するルールマイニング技術に基づいて演算できる。実施例では、関連するルールは、ＥＤＲ等の情報リポジトリのアイテムセット間の関係を理解することを容易にするｉｆ／ｔｈｅｎステートメントであるかのように理解することができる。本願の実装形態では、ルールのセットは少なくとも１つのパラメータの値に基づいて結末に対して生成される。実施例では、これらのルールだけが、あらかじめ定められたしきい値を超えるサポートおよび信頼度を有するルールのセットであるとみなされる。
【００１８】
ルールのセットが一旦生成されると、データ解釈システムは、ルールのセットからルールカバーを特定できる。実装形態では、データ解釈システムはルールをサポートの降順に配列することができる。その後、これらのルールはルールの適用範囲があらかじめ定められたしきい値を超えるものに対して選択される。その後、たった１つのルールのサブセットが選択され、それは最初のルールセットによってカバーされるのとほとんど同一量のデータをカバーする。これらのルールは結末に対するルールカバーを形成する。実装形態では、カバーの特定されたルールの多くがお互いに重なり合い、すなわち、これらは入力データの同一トランザクションの多くをカバーすることができる。実施例では、データ解釈システムは、選択されたルール間のオーバラップの程度を演算することができる。
【００１９】
オーバラップの程度に基づいて、ルールペア間の距離が演算され、および、距離マトリックスが演算され、および、データ解釈システムは、ルールをルールカバーにクラスタする。実装形態では、クラスタリングは、Ｄｅｎｓｉｔｙ  Ｂａｓｅｄ  Ｓｐａｔｉａｌ  Ｃｌｕｓｔｅｒｉｎｇ  ｏｆ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｗｉｔｈ  Ｎｏｉｓｅ（ＤＢＳＣＡＮ）等のデータクラスタリングアプリケーションによって実行されることができる。実施例では、データ解釈システムはクラスタの重心間の距離等のいずれかの距離を測定し、クラスタ間の距離を決定できる。
【００２０】
一旦、上述のステップに基づいてトランザクションデータベースの全てのルールがクラスタ化されると、データ解釈システムは、クラスタを解釈するために各クラスタから１つのルールを選択することができる。実装形態では、データ解釈システムは、バッチモードまたはインタラクティブモード技術を採用することによって、各クラスタから１つのルールを選択することができる。例えば、バッチモードでは、最も高いサポートまたは最も高い信頼性を持つルール等のルールに関連するパラメータに基づいて、１つのルールが選択され、各クラスタからデータ解釈システムによって自動的に選択されることができる。インタラクティブモードでは、ユーザが対話形式で各クラスタから代替のルールを選択できるので、同一クラスタに複数の説明が提供される。
【００２１】
実装形態では、データ解釈システムは、各クラスタから選択されたルール毎に例外のセットを決定することができる。例えば、例外のセットは結末とは異なる結果に対する先例に対して演算することができる。例外は通常のパターンからのズレを示すので、戦略的計画を容易にする。
【００２２】
このように、本発明は、同一データセットに対して複数の説明を提供することを容易にすることである。さらに、本発明はそれぞれのルールに関連するさまざまな例外によって、ルールのさまざまなズレを理解するための分析を可能にする。さらに、あらかじめ定められたしきい値を超える適用範囲を持つルールに基づくので、本発明によって提供される説明は実際に包括的である。
【００２３】
データセットを解釈する上述のシステム（単数または複数）および方法（単数または複数）の実施形態は多くの異なるコンピューティングデバイス、環境、および／または構成でも実装可能であるが、以下の実施例システム（単数または複数）および方法（単数または複数）に基づいて実装方法が説明される。
【００２４】
図１は本発明の実施例によるデータセットを解釈するためのデータ解釈システム１０２を実装するネットワーク環境１００を図示する。データ解釈システム１０２は、これらに限定されるわけではないが、デスクトップコンピュータ、ハンドヘルドデバイス、ラップトップ、あるいは他のポータブルコンピュータ、タブレットコンピュータ等として実装することができる。データ解釈システム１０２とは別のネットワーク環境１００には、１つ以上のコンピューティングデバイス１０４ー１、１０４ー２、・・・、１０４ーＮが含まれる。説明および明確性のために、コンピューティングデバイス１０４ー１、１０４ー２、・・・、１０４ーＮは以降、集合的にコンピューティングデバイス１０４と称し、および、以降、個別的にコンピューティングデバイス１０４と称する。ネットワーク環境１００では、データ解釈システム１０２はネットワーク１０６を介してコンピューティングデバイス１０４に接続される。
【００２５】
ネットワーク１０６は、無線ネットワーク、有線ネットワーク、またはそれらの組み合わせであってもよい。ネットワーク１０６は異なるタイプのネットワークであって、例えばイントラネット、テレコムネットワーク、エレクトリカルネットワーク、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ（ＶＰＮ）、インターネットワーク、グローバルエリアネットワーク（ＧＡＮ）、インターネット等の１つとして実装することができる。ネットワーク１０６は専用ネットワークまたは共有ネットワークのいずれでもよく、それらはさまざまなプロトコルを使用する異なるタイプのネットワークの関係を示し、さまざまなプロトコルには、例えば、相互に通信するハイパートランスファープロトコル（ＨＴＴＰ）、トランスミッションコントロールプロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、無線アプリケーションプロトコル（ＷＡＰ）等が含まれる。さらに、ネットワーク１０６は、ルータ、ブリッジ、サーバ、コンピューティングデバイス、および、記憶デバイスを含むさまざまなネットワークデバイスを含むことができる。
【００２６】
データ解釈システム１０２およびコンピューティングデバイス１０４はネットワーク１０６を介して接続されて図示されるが、データ解釈システム１０２およびコンピューティングデバイス１０４は特定の場所に、または、１つ以上の地理的位置にまたがって配置することができ、および、お互いに物理的または論理的に接続できることは当業者にとって当然のことである。
【００２７】
実装形態では、データ解釈システム１０２はデータベース１０８に結合できる。図示されないが、データベース１０８はネットワーク環境１００のネットワーク１０６あるいは他の何れかのネットワークとも接続できることが理解されるであろう。実装形態では、データベース１０８はデータ解釈システム１０２が使用できる１つ以上のデータセットを含むことができる。実装形態では、データベース１０８はリレーショナルデータベースとして提供され、および、データを、リレーショナルテーブル、オブジェクトオリエンティッドリレーショナルテーブル、インデックステーブル等のさまざまなフォーマットで記憶できる。しかしながら、データベース１０８は、オペレーショナルデータベース、分析型データベース、階層型データベース、および、分散またはネットワークデータベース等の他のタイプのデータベースで提供され得ることが理解されるであろう。
【００２８】
データ解釈システム１０２は、さまざまな目的でコンピューティングデバイス１０４と結合することができる。例えば、データ解釈システム１０２はコンピューティングデバイス１０４と接続することができ、企業のＥＤＲ等の情報リポジトリにアクセスできる。データセットを解釈するためのデータ解釈システム１０２の実装および機能を以下に説明する。
【００２９】
１つの実装形態では、データ解釈システム１０２は１つ以上のプロセッサ（単数または複数）１１０、プロセッサ（単数または複数）１１０と結合するインターフェース（単数または複数）１１２およびメモリ１１４を含む。プロセッサ（単数または複数）１１０は単一の処理ユニットまたは複数の処理ユニットであり得て、それらの全てが複数の演算ユニットを含んでもよい。プロセッサ（単数または複数）１１０は、１つ以上のマイクロプロセッサ、マイクロコンピューター、マイクロコントローラ、デジタルシグナルプロセッサ、中央演算ユニット、状態マシン、論理回路、および／または、動作命令に基づいて信号を処理するいずれかのデバイスとして実装することができる。数ある能力の中で、プロセッサ（単数または複数）１１０はメモリ１１４に記憶されるコンピュータ読み出し可能命令およびデータをフェッチし実行するように構成される。
【００３０】
図に示されるさまざまなエレメントの機能は、「プロセッサ（単数または複数）」にラベル付けされたいずれかの機能ブロックを含むが、専用ハードウェアばかりではなく、適切なソフトウェアに対応するソフトウェアを実行可能なハードウェアの使用によって提供することができる。プロセッサが提供される場合には、当該機能は単一専用プロセッサ、単一共有プロセッサ、あるいは複数の個別プロセッサによって提供され、それらのいくつかが共有されてもよい。さらに、用語「プロセッサ」を明確に使用する場合、ソフトウェアを実行可能なハードウェアを除外する趣旨ではなく、これらに限定されるわけではないが、デジタルシグナルプロセッサ（ＤＳＰ）ハードウェア、ネットワークプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ソフトウェアを記憶する読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、および、不揮発性記憶装置を黙示的に含む。他のハードウェア、従来のハードウェア、および／またはカスタムハードウェアが含まれてもよい。
【００３１】
インターフェース（単数または複数）１１２は、さまざまなソフトウェアおよびハードウェアインターフェース、例えば、キーボード、マウス、外部メモリ、およびプリンター等の周辺デバイス（単数または複数）のためのインターフェースを含んでもよい。インターフェース（単数または複数）１１２は広い範囲のネットワークおよびプロトコルタイプの複数の通信を容易にでき、それらには、例えば、ローカルエリアネットワーク（ＬＡＮ）、ケーブル等の有線ネットワーク、および、無線ＬＡＮ（ＷＬＡＮ）、携帯、または衛星等の無線ネットワークが含まれる。目的によっては、インターフェース（単数または複数）１１２は、データ解釈システム１０２を複数のコンピューティングデバイス１０４に接続するための１つ以上のポートを含んでもよい。以下に説明するさまざまな例示実装形態では、データ解釈システム１０２は、インターフェース１１２を介してコンピューティングデバイス１０４と通信する。
【００３２】
メモリ１１４は、従来技術として知られているいずれかのコンピュータ読み取り可能媒体を含むことができ、当該従来技術には、例えば、スタティックランダムアクセスメモリ（ＳＲＡＭ）およびダイナミックランダムアクセスメモリ（ＤＲＡＭ）等の揮発性メモリ、および／または、読み出し専用メモリ（ＲＯＭ）、消去プログラム可能ＲＯＭ、フラッシュメモリ、ハードディスク、光ディスク、および、磁気テープ等の不揮発性メモリが含まれる。データ解釈システム１０２にはモジュール１１６およびデータ１１８も含まれる。
【００３３】
とりわけ、モジュール１１６は、ルーティン、プログラム、オブジェクト、コンポーネント、データ構造等を含み、これらは特定のタスクを実行し、あるいは、特定の抽象的なデータタイプを実装する。モジュール１１６には、ルール生成モジュール１２０、解釈モジュール１２２、および、他のモジュール（単数または複数）１２４が含まれる。他のモジュール（単数または複数）１２４はプログラムあるいはコード化された命令を含むことができ、それらはデータ解釈システム１０２のアプリケーションおよび機能を補充する。
【００３４】
他方で、とりわけ、データ１１８は１つ以上のモジュール１１６によって処理、受信、および、生成されたデータを記憶するためのレポジトリとして機能する。データ１１８は、例えば、ルールセットデータ１２６、解釈データ１２８、および、他のデータ１３０を含む。他のデータ１３０には、他のモジュール（単数または複数）１２４の１つ以上のモジュールの実行による結果として生成されるデータが含まれる。
【００３５】
実装形態では、ルール生成モジュール１２０は、データセットの中の複数の頻発するアイテムセットを特定できる。実施例では、各トランザクションは、データセットの１つ以上のアイテムを含むことができる。例えば、各調査回答はトランザクションとして理解されることができ、この中でアイテムは尋ねられた各質問に対する顧客の応答であり得る。同様に、複数のセンサーデータでは、各時間ステップはトランザクションとして理解され、ここで異なるセンサーのそれぞれの値はデータセットのアイテムを形成する。データセットは以下の式で表される。
【数１】
0006647849.tif 000002
【００３６】
実施例では、Ｄのサブセットはアイテムセットと称することができる。さらに、頻発するアイテムセットは、データセットの中の他のアイテムセットよりも同時に頻発するアイテムであると理解することができる。実施例では、データセットはデータ解釈システム１０２に関連するデータベース１０８に記憶することができる。当該頻発するアイテムセットは、１つ以上の先例に基づくあらかじめ定められた結末のためのルールを形成することができる。結末は、アイテムセットが発生した成果であると理解することができる。｛Ｘ、ｙ｝等の各頻発するアイテムセットは、ｙ等のあらかじめ定められた関心対象の結末（ＣＯＩ）に対するルールｒを形成する。この場合には、アイテムのサブセットであるＸは先例であるとみなされ、すなわち、Ｘ――――＞ｙである。実装形態では、データ解釈システム１０２はＦＰｇｒｏｗｔｈメカニズムを採用することができ、データセットの頻発するアイテムセットを決定する。
【００３７】
例えば、小売店に対応するデータセットを考えると、ここで頻発するアイテムセットは、顧客がパン、ミルクおよびバターを購入することであり得る。顧客のショッピング行動に基づいて、顧客がパンおよびミルクを買えば、彼または彼女はバターも買う等のルールに気づくことができる。したがって、パンおよびミルクは、この場合には結末がバターとなる先例として理解することができる。
【００３８】
実装形態では、ルール生成モジュール１２０はルールに対応する少なくとも１つのパラメータを推定できる。例えば、少なくとも１つのパラメータは、ルールＳ（ｒ）のサポートを含むことができる。実施例では、ルールのサポートは、頻発するアイテムセットの全てのアイテムを含むトランザクションのパーセンテージを推定することによって決定することができる。さらに、少なくとも１つのパラメータには、ルールＣ（ｒ）の信頼値を含むことができる。ルールの信頼値は、前記先例に基づいて前記結末が発生する確率を推定することによって特定することができる。言い換えれば、ルールの信頼値はＣ（ｒ）＝Ｐ（ｙ／Ｘ）としてあらわされる。さらに、少なくとも１つのパラメータは、ルールの関心度の測定として理解できるルールのリフト（ｌｉｆｔ）を含むことができる。ルールのリフトはルールの信頼度と結末が発生する確率の割合として定義することができる。言い換えれば、ルールのリフトは、Ｌ（ｒ）＝Ｐ（ｙ／Ｘ）／Ｐ（ｙ）としてあらわすことができる。
【００３９】
さらに、ルール生成モジュール１２０は、少なくとも１つのパラメータに基づいて、データセットに対応する複数のルールセットを演算することができる。実装形態では、ルール生成モジュール１２０は関連するルールマイニング技術を適用し、複数のルールセットを演算できる。実施例では、複数のルールセットは、ルールのサポートおよびルールの信頼度に基づいて生成できる。例えば、複数のルールセット（Ｒ）は、τｓよりも大きいサポート、および、τｐよりも大きい信頼値を持つあらかじめ定められたＣＯＩに対して生成される。実装形態では、複数のルールセットは頻発するアイテムセットに基づいて生成される。ルール生成モジュール１２０は、ルールセットに関する詳細をルールセットデータ１２６として記憶することができる。実施例では、τｓおよびτｐは、システム管理者が定義できるあらかじめ定められたしきい値であると理解することができる。したがって、共通の結末（ｙ）のために生成され、および、あらかじめ定められたしきい値を超えるサポートおよび信頼度を有する全てのルールセット（Ｒ）は、以下の式で表される。
【数２】
0006647849.tif 000003
【００４０】
実装形態では、解釈モジュール１２２は、ルールセットに基づいて、ルールカバーＲｃｏを演算することができる。実施例では、ルールの適用範囲は、関心事ｙの結末を含むパーセンテージからルールが満足されるトランザクションのパーセンテージで示すことができる。実施例では、ルールの適用範囲は以下のようにあらわすことができる。
【数３】
0006647849.tif 000004
【００４１】
したがって、ルールセット（Ｒ）に対して、共通の結末（ｙ）を有するルールカバーは以下の式で定義される。
【数４】
0006647849.tif 000005
実装形態では、ＲｃｏはＲのサブセットとして理解することができ、Ｒでカバーされるのと、ほとんど同一セットのトランザクションをカバーする。
【００４２】
実施例では、ルールカバーを演算するために、解釈モジュール１２２は、ルールセットをサポートの降順に操作またはリストすることができる。さらに、解釈モジュール１２２は、あらかじめ定められた数のＣＯＩを有するトランザクションがカバーされるまで、リストされたルールをルールカバーに追加することができる。代替実施例では、解釈モジュール１２２は、先頭からＫ個のルールを選択し、および、それらをルールカバーに含むことができる。一旦、ルールカバーが特定されると、解釈モジュール１２２は、２つのルール間のオーバラップの程度を決定することができる。例えば、多くのルールはデータの同一セットのトランザクションをカバーすることができるので、解釈モジュール１２２は、２つのルール間のオーバラップの程度Ｏｉｊを以下の式で定量化できる。
【数５】
0006647849.tif 000006
【００４３】
さらに、解釈モジュール１２２は、距離測定ｄｉｊを使用して、オーバラップの程度に基づいて、ルールをクラスタリングすることができる。実装形態では、解釈モジュール１２２はノイズ（ＤＢＳＣＡＮ）技術を用いた密度ベースの空間クラスタリングアプリケーションを採用し、オーバラップの程度に基づいてルールをクラスタリングする。実施例では、ルール間の距離測定は以下の式によって定義できる。
【数６】
0006647849.tif 000007
ここでｋは小さな値の定数または０．０１に等しい。
【００４４】
一旦、クラスタが定義されると、解釈モジュール１２２は各クラスタから１つの代表的ルールを選択し、クラスタを要約することができる。実施例では、当該１つのルールはクラスタ内の全アイテムセットの解釈を提供することであると理解できる。代表的ルールは、当該クラスタに存在する、当該ルールによってカバーされるトランザクションの全セットの解釈を提供する。実装形態では、解釈モジュール１２２はバッチモードを採用し、各クラスタのルールを選択することができる。実施例では、バッチモードは、あらかじめ定められたパラメータに基づいて、クラスタを要約するルールを自動的に選択する工程を含む。１つの実施例では、クラスタを解釈するために、クラスタで最も高いサポートを有するルールが自動的に選択されることができる。他の実施例では、バッチモードで、クラスタで最も高い信頼度を有するルールが自動的に選択されることができる。他の実装形態では、解釈モジュール１２２は、ユーザが対話形式でクラスタを要約するルール選択することを手助けすることができる。実施例では、トランザクションの同一セットについて複数の解釈を得るために、ユーザは、各クラスタから代替のルールを対話形式で選択することができる。解釈モジュール１２２は、クラスタに関する説明を解釈データ１２８として記憶することができる。
【００４５】
さらに、解釈モジュール１２２はルールセットのクラスタから選択される代表的ルールのそれぞれに対して少なくとも１つの例外を決定することができる。実施例では、例外を決定するために、結末が異なる場合には、解釈モジュール１２２は同一先例の成果を特定することができる。例えば、あらかじめ定められた結末がｙである場合には、解釈モジュール１２２は結末が―ｙであるさまざまなトランザクションを決定できる。当該動作は、ルールセットの全てのルールに対して例外のセットを提供できる。実装形態では、信頼度しきい値τｅに基づいて、全てのルールに対する例外が決定される。例えば、ルールｒ：Ｘ―――＞ｙに対して、信頼度しきい値は以下の式で決定できる。
【数７】
0006647849.tif 000008
ここでΔｃはルールｒに対する信頼度ギャップである。
【００４６】
実施例では、ルールの信頼度が８５％である場合、残りの１５％の時間は、ルールが満たされないことを意味する。言い換えれば、結末が得られず、例外は１５％に合致する。実装形態では、上述のステップは、マッシュルームデータセット、カーサーベイ（Ｃａｒ−ｕｒｖｅｙ）データセット、およびセンサーデータセット等のさまざまなデータセットに適用される。本発明に説明される技術は、ルールおよび例外という用語で簡潔な結果を提供する。さらに、本発明は、入力データからトランザクションの同一セットに複数の解釈を提供するので、データセットに関する全体論的見解を提供できる。
【００４７】
したがって、本発明は、データセットに対する適用範囲ベースの説明を提供することを容易にする。本発明はルール間で発生するいずれかのオーバラップを考慮するので、トランザクションの同一セットに複数の解釈を提供する。さらに、本発明はルールの例外、すなわち、通常のパターンからのズレを決定する。データセットの当該分析によって、企業にとって適切な意思決定および戦略の決定が容易になる。
【００４８】
図２は、本発明の実施形態による複数のアイテムセットを含むデータセットを解釈するための方法２００を図示する。当該方法２００は、コンピュータ実行可能な命令として記載できる。通常は、コンピュータ実行可能な命令は、ルーティン、プログラム、オブジェクト、コンポーネント、データ構造、プロシージャ、モジュール、特定の機能を実行するあるいは特定の抽象的なデータタイプを実行する関数を含むことができる。方法２００は、通信ネットワークによってリンクされる遠隔処理デバイスによって関数が実行される分散型コンピューティング環境でも実行することができる。分散型コンピューティング環境では、コンピュータ実行可能な命令はローカルおよび遠隔のメモリ記憶デバイスを含むコンピュータ記憶媒体の両方に位置することができる。
【００４９】
方法２００に記載される順序は制限的なものであることを意図しておらず、および、記載された方法ブロックの番号はどのような順番でも組み合わせることができ、方法２００または代替方法を実行できる。さらに、各ブロックは本発明の精神および思想から逸脱しない範囲で当該方法２００から削除することができる。さらに、当該方法２００は、いずれかの適切なハードウェア、ソフトウェア、ファームウェア、あるいはそれらの組み合わせに実装することができる。
【００５０】
図２を参照すると、ブロック２０２で、方法２００はデータセットの複数の頻発するアイテムセットを特定する工程を含むことができる。複数の頻発するアイテムセットのそれぞれは、１つ以上の先例に基づくあらかじめ定められた結末に対するルールを形成する。実装形態では、ルール生成モジュール１２０はデータセットの複数の頻発するアイテムセットを特定することができる。実施例では、ルール生成モジュール１２０は、ＦＰｇｒｏｗｔｈ技術あるいはいずれかのよく使用されるアイテムセットマイニング技術を採用し、複数の頻発するアイテムセットを特定することができる。
【００５１】
ブロック２０４で、方法２００は、ルールに対応する少なくとも１つのパラメータを推定する工程を含むことができる。実装形態では、ルール生成モジュール１２０は少なくとも１つのパラメータを推定できる。例えば、パラメータはルールの信頼度、ルールのサポート、およびルールのリフトを含むことができる。
【００５２】
さらに、ブロック２０６で、方法２００はデータセットの複数のルールセットを演算することができる。実装形態では、ルール生成モジュール１２０は、少なくとも１つのパラメータに基づいて、複数のルールセットを演算することができる。実施例では、ルール生成モジュール１２０は関連するルールマイニング技術を採用して、複数のルールセットを演算することができる。
【００５３】
さらに、ブロック２０８で、方法２００はルールカバーを生成する工程を含むことができる。ルールカバーは複数のルールから構成されることができる。
【００５４】
さらに、ブロック２１０で、方法２００は、複数のルールペア間の複数の距離を演算する工程、および、複数のルールペア間で演算された複数の距離に基づいて距離マトリックスを生成する工程、および、複数のルールペア間で演算された複数の距離を記憶する工程を含むことができる。
【００５５】
さらに、ブロック２１２で、方法２００はデータセットの中で重複するルールをクラスタリングすることができる。重複するルールは、データセットの共通トランザクションに対応するルールであると理解することができる。実装形態では、解釈モジュール１２２は重複するルールクラスタリングできる。そうするために、解釈モジュール１２２は距離測定を使用して重複するルールを特定することができる。一旦、重複するルールが特定されると、解釈モジュール１２２は、オーバラップの程度に基づいて重複するルールをクラスタリングし、および、各クラスタからルールを選択することができる。少なくとも１つのルールは、各クラスタに含まれるルールによってカバーされるトランザクションを解釈する。実装形態では、解釈モジュール１２２は各クラスタからルールを選択し、クラスタの中のルールによってカバーされるトランザクションの説明を解釈し、または、提供する。実施例では、解釈モジュール１２２は、バッチモードを使用して少なくとも１つのルールを選択することができる。バッチモードでは、ルールはあらかじめ定められたパラメータに基づいて自動的に選択される。他の実施例では、解釈モジュール１２２はユーザがルールを選択し、クラスタのための説明を取得することを手助けすることができる。ユーザは同一クラスタのための別のルールを選択し、同一クラスタに対する複数の説明を得ることができる。
【００５６】
さらに、ブロック２１４で、方法２００は、ルールセットのクラスタから選択される代表的ルールのそれぞれに対して少なくとも１つの例外を決定する工程を含むことができる。当該例外はルールの結末とは異なる結果を提供することができる。実装形態では、解釈モジュール１２２は、ルールセットの各ルールに対して例外を決定することができる。実施例では、当該例外は通用のパターンからのズレとして理解することができる。
【００５７】
本発明のための方法およびシステムの実施形態は、特定の構成の特徴および／または方法の言語によって説明されたが、本発明は記載された特定の特徴または方法に限定されるものではないことが理解されるであろう。むしろ、特定の特徴および方法は本発明のための例示実施形態として記載されている。
【図１】
0006647849.tif 000009
【図２】
0006647849.tif 000010