(57)【要約】【課題】  訓練されたマイニングモデルからマイニングモデルソースデータへの汎用的なドリルスルーを提供するドリルスルー機能を提供すること。【解決手段】  ユーザまたはアプリケーションがモデルの所与のノードに関するモデルコンテンツ情報を得られるようにするために、汎用的な機能が提供される。この機能によって、ユーザはモデルおよびデータセットについてのノードを指定する。そうすると、このモデルおよびデータセットについての、このノード中の基礎のケースが返される。基礎のケースのサンプリングを提供することもでき、その場合は、ノード中で表されるケースのサンプリングだけが要求される。【選択図】  図３
2005025731.tif 000002
【特許請求の範囲】
【請求項１】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供する方法であって、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、
前記少なくとも１つのノードのうちから指定されたノードの基礎のデータを求める要求を受け取るステップと、
前記少なくとも１つのケースのどれが前記指定されたノードに対応するかを決定するステップと、
前記対応するケースに関するデータを提供するステップと
を備えたことを特徴とする方法。
【請求項２】
前記受け取るステップは、指定されたノードの基礎のデータを求める要求を検出するステップを含み、前記検出するステップは、
それに関連付けられたクエリ情報を持つクエリを受け取るステップと、
前記クエリ情報が、前記指定されたノードの基礎のデータを求める要求を含んでいることを検出するステップとを有することを特徴とする請求項１に記載の方法。
【請求項３】
前記クエリを受け取るステップは、指定のクエリ言語のクエリを受け取るステップを有することを特徴とする請求項２に記載の方法。
【請求項４】
前記クエリを受け取るステップは、ＳＱＬデータベースクエリ言語のクエリを受け取るステップを有することを特徴とする請求項３に記載の方法。
【請求項５】
前記対応するケースに関するデータを提供するステップは、前記対応するケースそれぞれに関するデータを提供するステップを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記要求を受け取るステップは、データのサンプルを求める要求を受け取るステップを含み、前記対応するケースに関するデータを提供する前記ステップは、前記対応するケースのサンプリングに関するデータを提供するステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
請求項１に記載の方法を実行するためのコンピュータ実行可能命令を有するコンピュータ実行可能モジュールを備えたことを特徴とするコンピュータ読取可能な媒体。
【請求項８】
コンピュータ実行可能命令を有するコンピュータ実行可能モジュールを備えたコンピュータ読取可能な媒体であって、前記モジュールは、データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するものであり、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、前記コンピュータ実行可能モジュールは、
前記少なくとも１つのノードのうちからノードの表示を受け取るための入力コンポーネントと、
前記少なくとも１つのケースのどれが前記指定されたノードに対応するかを決定するための分析コンポーネントと、
前記対応するケースに関するデータを出力する出力コンポーネントと
を備えたことを特徴とするコンピュータ読取可能な媒体。
【請求項９】
前記入力コンポーネントは、指定されたノードの基礎のデータを求める要求を検出することを特徴とする請求項８に記載のコンピュータ読取可能な媒体。
【請求項１０】
前記入力コンポーネントは、クエリを受け取り、前記指定されたノードの基礎のデータを求める要求を前記クエリが含むことを検出することを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１１】
前記入力コンポーネントは、指定のクエリ言語のクエリを受け取ることを特徴とする請求項１０に記載のコンピュータ読取可能な媒体。
【請求項１２】
前記入力コンポーネントは、ＳＱＬデータベースクエリ言語のクエリを受け取ることを特徴とする請求項１１に記載のコンピュータ読取可能な媒体。
【請求項１３】
前記出力コンポーネントは、前記対応するケースの各々に関するデータを提供することを特徴とする請求項８に記載のコンピュータ読取可能な媒体。
【請求項１４】
前記入力コンポーネントは、データのサンプルを求める要求を受け取り、前記出力コンポーネントは、前記対応するケースのサンプリングに関するデータを出力することを特徴とする請求項８に記載のコンピュータ読取可能な媒体。
【請求項１５】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供することに関連して使用されるアプリケーションプログラミングインタフェースであって、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、前記アプリケーションプログラミングインタフェースは、前記少なくとも１つのノードのうちから指定されたノードの基礎のデータを求める要求を入力として受け取り、前記データを含むデータベースにクエリを送って、前記少なくとも１つのケースのどれが前記指定されたノードに対応するかを検索し、前記対応するケースに関するデータを出力することを特徴とするアプリケーションプログラミングインタフェース。
【請求項１６】
クエリを受け取り、指定されたノードの基礎のデータを求める要求を前記クエリが含むことを検出することによって、前記指定されたノードの基礎のデータを求める要求を検出することを特徴とする請求項１５に記載のアプリケーションプログラミングインタフェース。
【請求項１７】
指定のクエリ言語のクエリを前記データベースに送ることを特徴とする請求項１６に記載のアプリケーションプログラミングインタフェース。
【請求項１８】
ＳＱＬデータベースクエリ言語のクエリを送ることを特徴とする請求項１７に記載のアプリケーションプログラミングインタフェース。
【請求項１９】
前記対応するケースの各々に関するデータを出力することを特徴とする請求項１５に記載のアプリケーションプログラミングインタフェース。
【請求項２０】
データのサンプルを求める要求を受け取り、前記対応するケースのサンプリングに関するデータを出力することを特徴とする請求項１５に記載のアプリケーションプログラミングインタフェース。
【請求項２１】
（ａ）アプリケーションプログラミングインタフェースから前記データベースに送る前記クエリをフォーマットしてサンプリングを取り出すか、または（ｂ）前記対応するケースすべてを求める標準的なクエリの完全な結果をサンプリングするかのいずれか一方を実行することを特徴とする請求項２０に記載のアプリケーションプログラミングインタフェース。
【請求項２２】
少なくとも１つのネットワークを介して、前記クエリは送られ、および前記結果は取り出されることを特徴とする請求項１５に記載のアプリケーションプログラミングインタフェース。
【請求項２３】
データセットに適用されたマイニングモデルのグラフ表現からユーザがユーザインタフェースを介してノードを指定することを可能とする汎用的な機能を公開するユーザインタフェースであって、前記データセットは少なくとも１つのケースを備え、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを備え、並びに前記ユーザが前記ノードを指定するのに応答して、前記モデルおよびデータセットについての前記ノードの基礎のケースは取り出され、および前記ユーザに対して表示されることを特徴とするユーザインタフェース。
【請求項２４】
前記指定されたノードの基礎のデータを求める要求を検出し、および応答して指定されたノードの基礎のデータを求める要求をアプリケーションプログラミングインタフェースを介して送ることを特徴とする請求項２３に記載のユーザインタフェース。
【請求項２５】
前記アプリケーションプログラミングインタフェースは、指定のクエリ言語のクエリをデータベースに送ることを特徴とする請求項２４に記載のユーザインタフェース。
【請求項２６】
前記アプリケーションプログラミングインタフェースは、ＳＱＬデータベースクエリ言語のクエリを送ることを特徴とする請求項２５に記載のユーザインタフェース。
【請求項２７】
前記対応するケースの各々に関するデータを表示することを特徴とする請求項２３に記載のユーザインタフェース。
【請求項２８】
前記指定されたノードに関するデータのサンプルを求める要求を受け取ると、前記アプリケーションプログラミングインタフェースに、前記対応するケースのサンプリングに関するデータを求める要求を送ることを特徴とする請求項２４に記載のユーザインタフェース。
【請求項２９】
前記対応するケースのサンプリングを表示することを特徴とする請求項２８に記載のユーザインタフェース。
【請求項３０】
少なくとも１つのケースを含むデータセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するシステムであって、
アプリケーションプログラミングインタフェースであって、（ａ）前記データセットに適用されたマイニングモデルのグラフ表現からの指定されたノードの基礎のデータを求める要求を入力として受け取り、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、（ｂ）前記データを含むクエリを送って、前記少なくとも１つのケースのうちで前記指定されたノードに対応する１つまたは複数の対応するケースを取り出し、および（ｃ）前記対応するケースに関するデータで前記要求に応答するアプリケーションプログラミングインタフェースと、
前記アプリケーションプログラミングインタフェースに動作可能に接続されたデータベースであって、前記データセットを記憶するステップ、および前記クエリを受け取って前記対応するケースに関する前記データを前記アプリケーションプログラミングインタフェースに返すステップを実行するデータベースと
を備えたことを特徴とするシステム。
【請求項３１】
前記クエリは、指定のクエリ言語のクエリを含むことを特徴とする請求項３０に記載のシステム。
【請求項３２】
前記クエリを受け取るステップは、ＳＱＬデータベースクエリ言語のクエリを受け取るステップを含むことを特徴とする請求項３１に記載のシステム。
【請求項３３】
前記対応するケースに関するデータを提供するステップは、前記対応するケースの各々に関するデータを提供するステップを含むことを特徴とする請求項３０に記載のシステム。
【請求項３４】
前記要求はデータのサンプルを求める要求を含み、前記対応するケースに関するデータは、前記対応するケースのサンプリングに関するデータを含むことを特徴とする請求項３０に記載のシステム。
【請求項３５】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するシステムであって、
ユーザインタフェースであって、（ａ）少なくとも１つのケースを含むデータセットに適用されたマイニングモデルのグラフ表現からの指定されたノードの基礎のデータを求める要求を入力として受け取り、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、（ｂ）前記データを含むクエリを送って、前記少なくとも１つのケースのうちから前記指定されたノードに対応する１つまたは複数の対応するケースを取り出し、（ｃ）前記対応するケースに関するデータで前記要求に応答するユーザインタフェースと、
前記ユーザインタフェースに動作可能に接続されたデータベースであって、前記データセットを記憶するステップ、および前記クエリを受け取って前記対応するケースに関する前記データを前記ユーザインタフェースに返すステップを実行するデータベースと
を備えたことを特徴とするシステム。
【請求項３６】
前記クエリは、指定のクエリ言語のクエリを含むことを特徴とする請求項３５に記載のシステム。
【請求項３７】
前記クエリを受け取るステップは、ＳＱＬデータベースクエリ言語のクエリを受け取るステップを含むことを特徴とする請求項３６に記載のシステム。
【請求項３８】
前記対応するケースに関するデータを提供するステップは、前記対応するケースの各々に関するデータを提供するステップを含むことを特徴とする請求項３５に記載のシステム。
【請求項３９】
前記要求はデータのサンプルを求める要求を含み、前記対応するケースに関する前記データは、前記対応するケースのサンプリングに関するデータを含むことを特徴とする請求項３５に記載のシステム。
【請求項４０】
前記マイニングモデルのグラフ表現からの指定されたノードの基礎のデータを求める要求は、ユーザが前記ノードを選択したとの表示を含むことを特徴とする請求項３５に記載のシステム。
【請求項４１】
前記表示は、マウスクリックを含むことを特徴とする請求項４０に記載のシステム。
【請求項４２】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するシステムであって、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、
前記少なくとも１つのノードのうちから指定されたノードの基礎のデータを求める要求を受け取る要求受領手段と、
前記少なくとも１つのケースのどれが前記指定されたノードに対応するかを決定する対応関係決定手段と、
前記対応するケースに関するデータを提供するデータ提供手段と
を備えたことを特徴とするシステム。
【請求項４３】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供する方法であって、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、
前記少なくとも１つのノードのうちから指定されたノードの基礎のデータを求める要求を受け取るステップと、
前記指定されたノードに対応する少なくとも１つの仮定のケースを決定するステップと、
前記対応する仮定のケースに関するデータを提供するステップと
を備えたことを特徴とする方法。
【請求項４４】
前記受け取るステップは、指定されたノードの基礎のデータを求める要求を検出するステップを含み、前記検出するステップは、
クエリ情報が関連付けられたクエリを受け取るステップと、
前記指定されたノードに対応する仮定データを求める要求を前記クエリ情報が含むことを検出するステップとを含むことを特徴とする請求項４３に記載の方法。
【請求項４５】
前記クエリを受け取るステップは、指定のクエリ言語のクエリを受け取るステップを含むことを特徴とする請求項４４に記載の方法。
【請求項４６】
前記クエリを受け取るステップは、ＳＱＬデータベースクエリ言語のクエリを受け取るステップを含むことを特徴とする請求項４４に記載の方法。
【請求項４７】
請求項４３に記載の方法を実行するコンピュータ実行可能命令を有するコンピュータ実行可能モジュールを備えたことを特徴とするコンピュータ読取可能な媒体。
【請求項４８】
コンピュータ実行可能命令を有するコンピュータ実行可能モジュールを備えたコンピュータ読取可能な媒体であって、前記モジュールは、データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するためのものであり、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、前記コンピュータ実行可能モジュールは、
前記少なくとも１つのノードのうちのノードの表示を受け取る入力コンポーネントと、
前記指定されたノードに対応する少なくとも１つの仮定のケースを決定する分析コンポーネントと、
前記対応する仮定のケースに関するデータを出力する出力コンポーネントと
を備えたことを特徴とするコンピュータ読取可能な媒体。
【請求項４９】
前記入力コンポーネントは、指定されたノードの基礎となる仮定のデータを求める要求を検出することを特徴とする請求項４８に記載のコンピュータ読取可能な媒体。
【請求項５０】
前記入力コンポーネントは、クエリを受け取り、前記指定されたノードの基礎となる仮定のデータを求める要求を前記クエリが含むことを検出することを特徴とする請求項４９に記載のコンピュータ読取可能な媒体。
【請求項５１】
データセットに適用されたマイニングモデルのグラフ表現に関する情報を提供するためのシステムであって、前記データセットは少なくとも１つのケースを含み、前記グラフ表現は、前記少なくとも１つのケースのうちの少なくとも１つに対応する少なくとも１つのノードを含み、
前記少なくとも１つのノードのうちから指定されたノードに対応する仮定のデータを求める要求を受け取る要求受領手段と、
前記指定されたノードに対応する少なくとも１つの仮定のケースを提供する仮定のケース提供手段と、
前記対応する仮定のケースに関するデータを提供するデータ提供手段と
を備えたことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、データマイニングの分野に関する。より詳細には、本発明は、算出されたモデルからソースデータを提供するドリルスルー（ｄｒｉｌｌ−ｔｈｒｏｕｇｈ）機能に関する。
【背景技術】
【０００２】
データマイニングとは、多量のデータを調査し分析して、データ中の相関、パターン、傾向を発見することである。また、データマイニングを用いて、将来のデータを予測したり既存のデータを分類したりするのに使用することができるモデルを生成することもできる。
【０００３】
例えば、ビジネスにおいては、その顧客に関する多量の情報の集まりを蓄積することがある。この情報には、購入情報や、その顧客に関するビジネスに利用することができるその他任意の情報を含めることができる。顧客データに関連するモデルを予測することにより、例えば顧客離れの管理、信用リスク管理、詐欺行為の検出、またはマーケティングに関する決定を行うことができる。
【０００４】
インテリジェントな抱合せ販売のサポートをすることもできる。例えば、データマイニング機能を使用すれば、ユーザに関するプロパティまたはユーザが注文した商品を、他のユーザが以前に注文した商品のデータベースと相関させることによって、ユーザが興味を持つであろう商品を提案することができる。ユーザは、ユーザの行動またはプロファイルに基づいてセグメント化することができるのである。データマイニングでは、セグメントモデルを分析して、ユーザを母集団セグメントに分割する特性を発見することができる。さらに、ユーザプロファイルデータ中で欠けている値を予測することもできる。例えば、ユーザがデータを供給しなかった場合、そのデータについての値を予測することができることになる。
【０００５】
データマイニングモデルを生成してテストするために、利用可能なデータを２つの部分に分割することができる。一方の部分は訓練用データセットであり、これを使用してモデルを生成することができる。残りのデータはテスト用データセットであり、これを使用してモデルのテストを行うことができ、これにより、予測を行う際のモデルの精度を決定することができる。データマイニングモデルを生成した後は、これを使用して他のデータセット中のデータに関する予測を行うことができる。
【０００６】
データセット内のデータは、ケースにグループ化される。例えば顧客データの場合、各ケースは異なる顧客に対応するようにすることができる。１つのケース中のデータは、１人の顧客について記述されているか、さもなければ１人の顧客に関連する。ケースに（例えば所与の顧客に）関連付けることのできるデータタイプの１つは、カテゴリ変数である。カテゴリ変数により、ケースはいくつかの予め定められた状態のうちの１つにカテゴリ分けされる。例えば、このような変数の１つには、顧客の教育レベルに対応するものがある。一例ではあるが、この変数は様々な可能な値をとる。これらの可能な値を、状態と呼ぶ。例えば、結婚状況変数の状態は、「既婚」または「未婚」であり、顧客の結婚状態に対応する。別の種類の変数は、継続的な変数である。継続的な変数は、一定範囲の可能な値を有する変数である。例えば、このような変数の１つは、顧客の年齢に対応するものである。年齢変数には、変数に対する一定範囲の可能な値が関連する。
【０００７】
前述のように、利用可能なデータは、訓練用データセットとテスト用データセットの２つのグループに分割される。通常、データの７０％が訓練に使用され、３０％がテストに使用される。この情報を含む訓練用データセットについて、モデルを訓練することができる。一度モデルを訓練すると、評価のためテスト用データセットについて実行することができる。このテストの間、年齢データを除いたすべてのデータがモデルに与えられ、モデルにより、与えられた他のデータから顧客の年齢を予測することが求められる。訓練および評価の後、他のデータセットについてモデルを使用することができる。
【０００８】
モデルをテスト用データセットに関して実行する際は、モデルによって生成された結果を実際のテスト用データと比較し、モデルが顧客の年齢を正しく予測するのにどれくらい成功したかをみる。
【０００９】
モデルを実行し終えたとき、データセットに適用されたこのモデルのグラフ表現を生成することができる。図１は、データマイニングモデルをデータセットに適用した結果を表示する決定ツリーグラフのモデルの例である。このグラフは、データセットからの特定のケースグループの年齢を予測するためにデータマイニングモデルを適用した結果を表示している。モデル中の各ケースは、グラフの１つまたは複数のノード中に存在する。例えば、グラフのルートノード１１４２は、「ａｌｌ」とラベル付けされており、グラフ中のすべてのケースを含む。ノードは「レベル」の点から記述することができ、ルートからリーフへのパスが最も長いリーフは決定ツリーにおけるレベル０ノードであり、レベルｎノードの親はレベルｎ＋１ノードである。この用語法に従えば、ルートノード１１４２はレベル４ノードである。
【００１０】
ルートノード１１４２の１つ下のレベルは、レベル３ノード１１３２および１１３４である。ケースは、各ケース中の結婚状況に基づいてこれらのノード間で分割される。これらのノードで表されるケースのグループはさらに、「Ｃａｐｉｔａｌｇａｉｎ」変数の値に基づいて４つのレベル２ノード１１２２、１１２４、１１２６、１１２８に細分される。レベル２ノード１１２２中で表されるケースはさらに、「Ｅｄｕｃａｔｉｏｎｎｕｍ」変数に基づいてレベル１ノード１１１２および１１１３に分割される。また、レベル２ノード１１２６中で表されるケースはさらに、「Ｅｄｕｃａｔｉｏｎｎｕｍ」変数に基づいて２つのレベル１ノード１１１４および１１１６に分割される。また、レベル２ノード１１２８中で表されるケースはさらに、「Ｈｏｕｒｓｐｅｒｗｅｅｋ」変数に基づいて２つのレベル１ノード１１１８および１１１９に分割される。レベル１ノード１１１４および１１１６中のケースはさらに、年齢変数に基づいて、レベル０ノード１１０２および１１０４（レベル１ノード１１１４の場合）と、レベル０ノード１１０６および１１０８（レベル１ノード１１１６の場合）に分割される。
【００１１】
このグラフは、マイニングモデルをデータセットに適用し視覚的に表現した場合を表している。クラスタマップなど他のグラフも、このような、マイニングモデルをデータセットに適用し視覚的に表現した場合を表している。いくつかのグラフ表示では、各ノードが情報バーまたはその他の表示を含んでおり、この情報バーにはそのノードに含まれるケースに関する情報が含まれている。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
この情報は有用である可能性があるものの、ノードに含まれているケースに関する情報をさらに多く見つける必要がある場合がある。データマイニングモデルをデータセットに適用した結果得られるグラフの作成プログラムの中には、ユーザがノードからのデータにアクセスすることができるものもある。このような既存の解決法は、使用されるデータマイニングプログラムの独自仕様であり、限定的なものである。このようなアクセスにおいてはさらなる拡張や一般化ができないのである。この機能は、グラフを生成し表示するのに使用されるツールに限定されている。しかし、ユーザに柔軟に対応するためには、データセットの記憶、データマイニングモデルの適用、データマイニンググラフの表示のための幅広いアプリケーションをユーザが使用できるようにすることが望ましい。したがって、そのアプリケーションがデータセットの記憶、データマイニングモデルの適用、データマイニンググラフの表示に使用されるか否かにかかわらず、データセットに適用されたデータマイニングモデルについてグラフ表示されたデータに対応して、そのデータセットからデータのアクセスを可能にすることが必要である。
【課題を解決するための手段】
【００１３】
データセットに適用されたマイニングモデルから、グラフ表現を生成することができる。少なくとも１つのノードのうちから指定されたノードの基礎のデータを求める要求が検出される。データセット中のどのケースがこのノードの基礎をなすかを決定する。基礎のケースに関するデータを提供する。基礎のケースに関するすべてのデータを提供することもでき、あるいは要求があれば、基礎のケースに関するデータのサンプリングを提供する。
【００１４】
その他の実施形態については後述する。  
前述の概要、ならびに現時点で好ましい実施形態に関する以下の詳細な説明は、添付の図面と共に読むことにより、よりよく理解される。本発明を例示するために、図面には本発明の例示的な構造を示す。ただし本発明は、開示する特定の方法および手段に限定されない。
【発明を実施するための最良の形態】
【００１５】
概観
訓練されたマイニングモデルからマイニングモデルソースデータへの汎用的な（ｕｎｉｖｅｒｓａｌ）ドリルスルーをもたらすドリルスルー機能が提供される。ユーザまたはアプリケーションがモデルの所与のノードに関するモデルコンテンツ情報を得られるようにするために、一実施形態において、汎用的な機能が提供される。この機能を用いて、ユーザはモデルおよびデータセットについてのノードを指定する。そうすると、このモデルおよびデータセットについての、このノード中のケースが返される。
【００１６】
例示的なコンピューティング環境
図２は、本発明の実施に適したコンピューティングシステム環境１００の例を示す図である。コンピューティングシステム環境１００は、適したコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲についてどんな制限も意味するものではない。またコンピューティング環境１００は、この例示的な動作環境１００に示すコンポーネントのいずれか１つまたは組合せに関してどんな依存や要件を有するものとも解釈すべきではない。
【００１７】
コンピュータあるいはその他のクライアントデバイスまたはサーバデバイスを、コンピュータネットワークの一部としてまたは分散コンピューティング環境で配置できることは、当業者なら理解できるであろう。これに関して、本発明は、任意の数のメモリまたは記憶ユニットを有する任意のコンピュータシステムに関係し、並びに任意の数の記憶ユニットまたはボリュームにわたって実施される任意の数のアプリケーションおよびプロセスに関係し、これらを本発明と共に使用することができる。本発明は、ネットワーク環境または分散コンピューティング環境で配置されたリモートまたはローカル記憶装置を有するサーバコンピュータおよびクライアントコンピュータを含む環境に適用することができる。本発明はまた、リモートまたはローカルサービスに関連して情報を生成、受信、送信するためのプログラミング言語機能と解釈および実行機能を有するスタンドアロンコンピューティングデバイスに適用することもできる。
【００１８】
本発明は、その他多くの汎用または専用コンピューティングシステム環境または構成でも動作する。本発明で使用するのに適すると考えられる周知のコンピューティングシステム、環境、および／または構成の例には、限定しないがパーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータや、これらのシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【００１９】
本発明は、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで述べることができる。一般にプログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は分散コンピューティング環境で実施することもでき、その場合、タスクは通信ネットワークまたはその他のデータ伝送媒体を介してリンクされたリモート処理デバイスによって実施される。分散コンピューティング環境では、プログラムモジュールおよびその他のデータは、メモリ記憶デバイスを含めたローカルとリモートの両方のコンピュータ記憶媒体に置くことができる。分散コンピューティングは、コンピューティングデバイスおよびシステムの間の直接交換によって、コンピュータリソースおよびサービスの共有を容易にする。これらのリソースおよびサービスには、情報の交換、ファイルについてのキャッシュ記憶およびディスク記憶が含まれる。分散コンピューティングは、ネットワーク接続性を利用し、クライアントがその総力を活用して企業全体を利することができるようにする。これに関して、様々なデバイスが、本発明の技法を利用できるアプリケーション、オブジェクト、またはリソースを有することができる。
【００２０】
図２を参照すると、本発明を実施するための例示的なシステムは、コンピュータ１１０の形の汎用コンピューティングデバイスを含む。コンピュータ１１０のコンポーネントには、限定しないが処理ユニット１２０と、システムメモリ１３０と、システムメモリを含めた様々なシステムコンポーネントを処理ユニット１２０に結合するシステムバス１２１とを含めることができる。システムバス１２１は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含めて、いくつかのタイプのバス構造のいずれかとすることができる。限定ではなく例として、このようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス（メザニンバスとも呼ばれる）が含まれる。
【００２１】
コンピュータ１１０は通常、様々なコンピュータ読取可能な媒体を備える。コンピュータ読取可能な媒体は、コンピュータ１１０からアクセスできる任意の利用可能な媒体とすることができ、揮発性と不揮発性の媒体、取外し可能と固定の媒体の両方が含まれる。限定ではなく例として、コンピュータ読取可能な媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体には、コンピュータ読取可能命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、取外し可能と固定の両方の媒体が含まれる。コンピュータ記憶媒体には、限定しないがＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ技術、ＣＤ  ＲＯＭ、ディジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピュータ１１０からアクセスできるその他任意の媒体が含まれる。通信媒体は通常、搬送波やその他のトランスポート機構などの変調されたデータ信号中に、コンピュータ読取可能命令、データ構造、プログラムモジュール、またはその他のデータを組み入れたものであり、任意の情報送達媒体が含まれる。「変調されたデータ信号」という語は、情報が信号中に符号化される形で１つまたは複数の特性が設定または変更された信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、無線周波、赤外線、その他の無線媒体などの無線媒体とが含まれる。以上の任意の組合せもコンピュータ読取可能な媒体の範囲に含めるべきである。
【００２２】
システムメモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１やランダムアクセスメモリ（ＲＡＭ）１３２など、揮発性および／または不揮発性メモリの形のコンピュータ記憶媒体を含む。ＲＯＭ１３１には通常、起動中などにコンピュータ１１０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）１３３が記憶されている。ＲＡＭ１３２は通常、処理ユニット１２０がすぐにアクセス可能な、および／または処理ユニット１２０が現在作用している、データおよび／またはプログラムモジュールを含む。限定ではなく例として、図２には、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７を示す。
【００２３】
コンピュータ１１０は、その他の取外し可能／固定、揮発性／不揮発性コンピュータ記憶媒体を備えることもできる。例にすぎないが図２には、固定な不揮発性の磁気媒体に対して読み書きするハードディスクドライブ１４１と、取外し可能な不揮発性の磁気ディスク１５２に対して読み書きする磁気ディスクドライブ１５１と、ＣＤ  ＲＯＭやその他の光媒体など取外し可能な不揮発性の光ディスク１５６に対して読み書きする光ディスクドライブ１５５を示す。この例示的な動作環境で使用できるその他の取外し可能／固定、揮発性／不揮発性コンピュータ記憶媒体には、限定しないが磁気テープカセット、フラッシュメモリカード、ディジタル多用途ディスク、ディジタルビデオテープ、固体ＲＡＭ、固体ＲＯＭなどが含まれる。ハードディスクドライブ１４１は通常、インタフェース１４０などの固定メモリインタフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は通常、インタフェース１５０などの取外し可能メモリインタフェースでシステムバス１２１に接続される。
【００２４】
以上説明し、図２に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ読取可能命令、データ構造、プログラムモジュール、その他のデータの記憶域をコンピュータ１１０に提供する。例えば図２には、ハードディスクドライブ１４１がオペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７を記憶しているのが示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７と同じものとすることもでき、異なるものとすることもできることに留意されたい。ここでは、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７が少なくとも異なるコピーであることを示すために、異なる番号を付けてある。ユーザは、キーボード１６２、マウスやトラックボールやタッチパッドと一般に呼ばれるポインティングデバイス１６１などの入力デバイスを介して、コンピュータ１１０にコマンドおよび情報を入力することができる。その他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどを含めることができる。これらおよび他の入力デバイスは、システムバスに結合されたユーザ入力インタフェース１６０を介して処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など、その他のインタフェースおよびバス構造で接続されてもよい。モニタ１９１や他のタイプの表示デバイスもまた、ビデオインタフェース１９０などのインタフェースを介してシステムバス１２１に接続される。モニタに加えて、コンピュータは通常、スピーカ１９７やプリンタ１９６など他の周辺出力デバイスも備えることができ、これらは出力周辺インタフェース１９５を介して接続することができる。
【００２５】
コンピュータ１１０は、リモートコンピュータ１８０など１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、図２にはメモリ記憶デバイス１８１しか示していないが、通常はコンピュータ１１０に関して上述した要素の多くまたはすべてを備える。図２に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１およびワイドエリアネットワーク（ＷＡＮ）１７３を含むが、その他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットでよくみられるものである。
【００２６】
コンピュータ１１０は、ＬＡＮネットワーキング環境で使用されるときは、ネットワークインタフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用されるときは通常、インターネットなどのＷＡＮ１７３を介した通信を確立するためのモデム１７２またはその他の手段を備える。モデム１７２は内蔵でも外付けでもよく、ユーザ入力インタフェース１６０またはその他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１１０に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。限定ではなく例として、図２には、リモートアプリケーションプログラム１８５がメモリデバイス１８１上にあるものとして示す。図示のネットワーク接続は例示的なものであり、コンピュータ間に通信リンクを確立するための他の手段を使用することもできることは理解されるであろう。
【００２７】
本明細書のいくつかの例示的な実施形態を、コンピューティングデバイス上にあるソフトウェアに関して述べるが、本発明の１つまたは複数の部分は、オペレーティングシステム、アプリケーションプログラミングインタフェース（ＡＰＩ）または「仲介人」オブジェクト、制御オブジェクト、ハードウェア、ファームウェアなどを介して実施することもでき、したがって本方法は、．ＮＥＴの言語およびサービスのすべて、ならびにその他の分散コンピューティングフレームワークに含まれるか、その中でサポートされるか、またはそれを介してアクセスされるものとすることができる。
【００２８】
ドリルスルー機能
既に説明したように、データマイニングアプリケーションでは、データセットについてモデルを訓練し、および使用することができる。一般に、データセットはデータテーブルとして表すことができる。各ケースはテーブルの行で表され、テーブルの各列は変数に対応する。行Ｒと列Ｃで索引付けされたセル中の値は、行Ｒに対応するケースについての、列Ｃに対応する変数の値である。データセットはデータテーブルとして表すことができ、またテーブル構造で記憶されることが多いが、その他のデータ記憶および表現も考えられる。
【００２９】
マイニングモデルがデータセットに適用されると、その結果はデータのグラフ表現となる。このグラフ表現はノードを含んでいる。グラフ表現のノードは、データセットからのケースによって配置（ｐｏｐｕｌａｔｅ）される。マイニングモデルをデータセットに適用するアプリケーションは、データセットからデータをとり、それを使用して、データセットに適用されたマイニングモデルのグラフ表現を配置する。しかし、グラフ表現中に一定の情報が失われることがある。例えば、データセットに適用されたマイニングモデルのグラフ表現中で、ノードは、ノードにおけるケースの数に基づいて陰影付けされる場合がある。ルートノードでは、データセット中のすべてのケースが示される。このノードは相応に陰影付けされることになる。ケースは次のレベルで分裂し、このレベルでの陰影付けは、どのノードがより多くのデータを有しどのノードがより少ないデータを有するかを示すことになる。しかし、このような陰影付き表現でも、各ノードにいくつのケースが含まれるかを陰影付けが示すことができるにもかかわらず、データセットからのその他の情報が失われる。例えば、データセットは「Ｉｎｃｏｍｅ」変数を含む場合がある。この変数は、図１のグラフ表現中のノード間でケースを分割する際には使用されない。変数がグラフ表現中で使用されない場合があることには多くの理由がある。例えば、ユーザは、マイニングモデルの使用または生成に特定の変数を含めないよう特に要求することがある。他の場合では、特定の変数がモデルの予測能力に良い影響を及ぼさないので、その変数を使用しないマイニングモデルが作り出されることがある。しかし、ユーザがその特定の変数の値を見る必要がある場合もある。
【００３０】
図３に示すように、データセットプログラム３００によって、記憶済みデータセット３１０へのアクセスが提供される。データセットへのアクセスは、クエリ言語を介して提供される。例えば、データセット記憶プログラム３００がＭｉｃｒｏｓｏｆｔ，Ｉｎｃ．（登録商標）から入手可能なＳＱＬアプリケーションの１つである場合、クエリ言語はＳＱＬクエリ言語となる。その他のデータベースアプリケーションがマイニングモデル機能または関連機能を含む場合もあり、そのような他のアプリケーションで本発明を使用することも考えることができる。
【００３１】
本発明の一実施形態においては、マイニングモデル３２０も記憶される。さらに、一実施形態において、マイニングモデル３２０をデータセット３１０に適用することにより、学習済みグラフ３３０が生成される。これらの学習済みグラフ３３０は、記憶しておくことができ、ユーザ３５０はコンテンツビューア３４０を介してこれを使用することができる。コンテンツビューアは、図３に示すように別個のアプリケーションでもよく、データセットプログラム３００に統合されてもよい。コンテンツビューア３４０により、図１に例示するようなグラフ表現など、学習済みグラフ３３０の情報に基づくグラフ表現へのアクセスが可能となる。図１のような決定ツリーのほかに、グラフ表現には別のグラフ表現、とりわけクラスタ表示をも含めることができる。
【００３２】
コンテンツビューア３４０のユーザ３５０は、コンテンツビューア３４０のユーザインタフェースと直接的または間接的に対話する人間のユーザとすることができる。ユーザ３５０はまた、コンテンツビューア３４０を使用する別のアプリケーションまたはツールとすることもできる。本発明の一実施形態によれば、ユーザ３５０は、データセットから特定ノード中のケースに対応するデータが表示されるよう要求することができる。このデータは、「ドリルスルー」データと呼ばれる。例えば、コンテンツビューア３４０を用いてデータを見ている人間のユーザが、ある特定ノードにおける基礎のデータを見て、そのノード中のそのケースに関する他の特徴を決定することを望む場合がある。コンテンツビューア３４０は、例えばノード上でのマウスクリックをみて、ユーザ３５０の要求を受け取ることができる。コンテンツビューア３４０は、そのデータを提供するためにデータセットプログラム３００にケースデータを要求する。本発明の一実施形態によれば、人間でないユーザがデータセットプログラム３００にケースデータを要求することもできる。一実施形態においては、これは自動化されたクエリを使用して行われる。
【００３３】
一実施形態において、コンテンツビューア３４０は、クエリによって、特定ノードについてのケースのデータをデータセットプログラム３００に要求する。例えば、本発明の一実施形態においては、ＳＱＬスタイルの構文がこの目的のために採用されている。例えば、一実施形態において、所与のノード「ＮｏｄｅＳｅｌｅｃｔｅｄ」についてモデル「ｍｏｄｅｌ−ｏｎｅ」からのケースを求めるクエリは、以下のようになる。  
Select*from[model-one].cases
Where IsInNode('NodeSelected')
【００３４】
この構文は、モデル「ｍｏｄｅｌ−ｏｎｅ」中のノード「ＮｏｄｅＳｅｌｅｃｔｅｄ」中にあるケースを返すよう、データセットプログラム３００に指示している。一実施形態において、「．ｃａｓｅｓ」がクエリ中にあるときに返されるケースは、モデルの訓練に使用されたモデルについて訓練するケースである。
【００３５】
要求によって多数のケースが選択されることがあるので、このようなケースのサンプルだけをデータセットプログラム３００から返すことが有用な場合がある。これにより、基礎のデータを求める要求は、基礎のデータすべてを返すのではなく、基礎のデータのサンプルを返すことができる。これにより、データ転送コストの点で有利となる。このような場合、モデル中のすべてのケースからの（上例の「ｆｒｏｍ［ｍｏｄｅｌ−ｏｎｅ］．ｃａｓｅｓ」）データに対する要求ではなく、モデル中の選択されたノードにおけるケースのサブセットだけを提供させる要求を出すことができる。このサブセットは、このノードにおけるデータを代表するサンプルケースを含む。例えば、一実施形態において、この要求の構文は以下のように作成することができる。  
Select*from[model-one].sample_cases
Where IsInNode('NodeSelected")
【００３６】
データセットプログラム３００は、この要求を解釈して、ＮｏｄｅＳｅｌｅｃｔｅｄの基礎のデータのサンプルを提供する。
【００３７】
別の実施形態においては、ケースのサンプリングが要求されたとき、ノードにある実際のケースではなく仮定のケースを返すことができる。ケースのサンプルを求める要求はノードのコンテンツを説明するために出されるので、より明確にする方法の１つは、クエリされているノードのコンテンツを説明する仮定のケースを提供することである。ケースによっては、実際のデータが仮定のケースよりも明確でないことがある。このような仮定のケースはモデルに対する訓練データの一部ではなかった場合もあるが、訓練ケースの一部であったならノードに存在したであろう仮定のケースが返される。仮定のケースは、仮定のケースを求める要求が出されたときに適切な仮定のケースを見つけることができるように、あらかじめ生成または提供しておくことができる。このような場合、記憶されてデータセットプログラム３００に利用可能なものとして図３に示す情報に加えて、仮定のケース情報もデータセットプログラム３００に利用可能になる。あるいは、仮定のケースは実行中に、要求が出されたときに生成してもよい。
【００３８】
図３に示すように、一実施形態において、データセットプログラムは、学習済みグラフ３３０の情報を記憶するのに加えてマッピング情報３３５も記憶する。このマッピング情報は、学習済みグラフ３３０のうちの１つの中にあるノードへの、ケースのマッピングに関する情報を記憶する。このようにすると、学習済みグラフに対するモデルにアクセス不可能な場合でも、クエリがあったときに学習済みグラフについてのケース情報を返すことができる。
【００３９】
図４には、ドリルスルーデータの例が表示されている。このデータは、図１のノード１１１２のドリルスルーに対応する。図示するように、図１の決定ツリーの中には表示されていない変数についてのデータを含め、このノードに関するケース情報がウィンドウ４００に表示されている。
【００４０】
図５のフローチャートに、本発明の一実施形態による方法を示す。ステップ５００で、前述の少なくとも１つのノードのうちの指定されたノードの基礎のデータを求める要求を受け取る。ステップ５１０で、データセット中のどのケースがこのノードの基礎となるかを決定する。ステップ５２０で、基礎のケースに関するデータを提供する。基礎のケースに関するデータのすべてを提供することもでき、あるいは要求があれば、基礎のケースに関するデータのサンプリングを提供する。
【００４１】
本発明をリレーショナルデータソースに関して説明してきたが、説明した本発明はこのようなデータソースに限らず適用することができる。これに限定しないが例えば、オンライン分析処理（ＯＬＡＰ）キューブソースなど、データソースが多次元であるコンテキストや、その他任意のマイニングモデルデータ型のコンテキストで本発明を実施できることが考えられる。
【００４２】
本発明を実施する方法としては複数の方法、例えば適切なＡＰＩ、ツールキット、ドライバコード、オペレーティングシステム、制御、スタンドアロンのまたはダウンロード可能なソフトウェアオブジェクトなどがあり、以上によりアプリケーションおよびサービスは本発明の製品構成方法を使用することが可能となる。本発明では、ＡＰＩ（またはその他のソフトウェアオブジェクト）の観点から、あるいは製品構成データとの関連で通信するソフトウェアオブジェクトまたはハードウェアオブジェクトから、本発明を使用することが企図されている。したがって、本明細書に述べる本発明の様々な実装形態は、完全にハードウェアのみを使った、部分的にハードウェアで部分的にソフトウェアを使った、ならびにソフトウェアを使った態様とすることができる。
【００４３】
前述のように、本発明の例示的な実施形態を様々なコンピューティングデバイスおよびネットワークアーキテクチャに関して述べたが、基礎をなす概念は、製品構成を実装するのが望ましい任意のコンピューティングデバイスまたはシステムに適用することができる。したがって、本発明によりデータを符号化／復号する技法は、様々なアプリケーションおよびデバイスに適用することができる。例えば、本発明のアルゴリズムおよびハードウェア実装形態は、コンピューティングデバイスのオペレーティングシステムに適用することもでき、デバイス上の別個のオブジェクトとして、別のオブジェクトの一部として、再利用可能な制御オブジェクト（ｃｏｎｔｒｏｌ）として、サーバからダウンロード可能なオブジェクトとして、デバイスまたはオブジェクトとネットワークとの間の「仲介人」として、分散オブジェクトとして、ハードウェアとして、メモリ中に、またはこれらの任意の組合せ等で提供することもできる。本明細書では、様々な選択肢の代表として例示的なプログラミング言語、名前、例が選択されているが、これらの言語、名前、例は限定的なものではない。本発明を達成するための制御の使用に関連する実施形態に関して、本発明は、．ＮＥＴ制御の提供に限らず、本発明による構成の目的を達成する任意のソフトウェア（および／またはハードウェア）のより広範なコンテキストで考えるべきである。本発明の様々な実施形態によって達成されるのと同一または同様または同等の機能を達成するオブジェクトコードおよび術語を提供する方法には多くのものがあることは、当業者なら理解するであろう。本明細書において用語「製品」は、製品および／若しくはサービス、並びに／またはインターネットカタログを介して販売に供することのできるその他どんなものをも指す。本発明は、オンラインオークションまたは入札サイトに関連して実施することもできる。
【００４４】
前述のように、本明細書に述べた様々な技法は、ハードウェアまたはソフトウェアと共に、あるいは適切ならこの両方の組合せと共に実施することができる。したがって、本発明の方法および装置、あるいはそのいくつかの態様または部分は、フロッピー（登録商標）ディスケット、ＣＤ−ＲＯＭ、ハードドライブ、その他任意のマシン読取可能な記憶媒体などの有形媒体に組み入れられた、プログラムコード（すなわち命令）の形をとることができる。このプログラムコードがコンピュータなどのマシンにロードされて実行されると、このマシン自体が本発明を実施するための装置となるのである。プログラム可能コンピュータ上でプログラムコードが実行される場合、このコンピューティングデバイスは一般に、プロセッサと、プロセッサによって読み取ることのできる記憶媒体（揮発性と不揮発性のメモリおよび／または記憶素子を含む）と、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスを備える。本発明の製品構成技法を例えばデータ処理ＡＰＩや再利用可能な制御などを用いて利用することのできる１つまたは複数のプログラムは、コンピュータシステムと通信するために高水準手続き言語またはオブジェクト指向プログラミング言語により実装することが望ましい。ただしプログラムは、必要ならアセンブリ言語または機械語により実装することもできる。いずれの場合も、言語はコンパイラまたはインタープリタとすることができ、ハードウェアと組み合わせて実装することができる。
【００４５】
本発明の方法および装置はまた、電気的なワイヤ配線またはケーブル配線、光ファイバ、その他任意の伝送形式など、何らかの伝送媒体を介して伝送されるプログラムコードの形で具体化された通信を介して実施することもできる。このプログラムコードがＥＰＲＯＭ、ゲートアレイ、プログラム可能論理デバイス（ＰＬＤ）、クライアントコンピュータ、ビデオレコーダなどのマシン、または前述の例示的な実施形態で述べた信号処理機能を有する受信マシンなどのマシンによって受け取られ、ロードされ、実行されると、このマシンは、本発明を実施するための装置になる。プログラムコードは、汎用プロセッサ上で実施されると、プロセッサと結合して、本発明の機能を呼び出すように動作する固有の装置を提供する。さらに、本発明と共に使用されるどんな記憶技法も、常にハードウェアおよびソフトウェアの組合せとすることができる。
【００４６】
本発明を様々な図の好ましい実施形態に関して述べたが、本発明を逸脱することなく本発明と同じ機能を実施するために、その他の同様の実施形態を使用することもでき、あるいは述べた実施形態に修正または追加を行うこともできることを理解されたい。例えば、本発明の例示的なネットワーク環境をピアツーピアネットワーク化環境などのネットワーク化環境のコンテキストで述べたが、本発明はこれに限らないこと、また、本出願に述べたように本方法は、有線か無線かにかかわらずゲームコンソール、ハンドヘルドコンピュータ、ポータブルコンピュータなど任意のコンピューティングデバイスまたは環境に適用することができ、通信ネットワークを介して接続されネットワークを介して対話する任意の数のこのようなコンピューティングデバイスに適用することができることは、当業者なら理解するであろう。さらに、特に無線ネットワーク化デバイスの数が急増し続けているため、ハンドヘルドデバイスオペレーティングシステムやその他のアプリケーション特有オペレーティングシステムを含めて様々なコンピュータプラットフォームが企図されることも強調しておくべきである。さらに、本発明は複数の処理チップまたはデバイス中で、あるいはこれらにまたがって実施することができ、記憶も同様に複数のデバイスにまたがって実施することができる。したがって本発明は、どんな単一の実施形態にも限定すべきではなく、添付の特許請求に従った範囲で解釈すべきである。
【図面の簡単な説明】
【００４７】
【図１】データセットに適用されたマイニングモデルのグラフ表現のブロック図である。
【図２】本発明の態様を実施することのできる例示的なコンピューティング環境のブロック図である。
【図３】本発明によるシステムのブロック図である。
【図４】ウィンドウ中に表示されたドリルスルーデータの例を示す図である。
【図５】本発明の一実施形態による、グラフ表現からドリルスルー情報を提供する方法の流れ図である。
【符号の説明】
【００４８】
１００  コンピューティング環境
１１０  コンピュータ
１２０  処理ユニット
１２１  システムバス
１３０  システムメモリ
１３１  ＲＯＭ
１３２  ＲＡＭ
１３３  ＢＩＯＳ
１３４  オペレーティングシステム
１３５  アプリケーションプログラム
１３６  その他のプログラムモジュール
１３７  プログラムデータ
１４０  固定な不揮発性メモリインタフェース
１４１  ハードディスクドライブ
１４４  オペレーティングシステム
１４５  アプリケーションプログラム
１４６  その他のプログラムモジュール
１４７  プログラムデータ
１５０  取外し可能な不揮発性メモリインタフェース
１５１  磁気ディスクドライブ
１５２  磁気ディスク
１６０  ユーザ入力インタフェース
１６１  ポインティングデバイス
１６２  キーボード
１７０  ネットワークインタフェース
１７１  ローカルエリアネットワーク
１７２  モデム
１７３  ワイドエリアネットワーク
１８０  リモートコンピュータ
１８１  メモリデバイス
１８２  グラフィックスインタフェース
１８５  リモートアプリケーションプログラム
１８６  ビデオメモリ
１９０  ビデオインタフェース
１９１  モニタ
１９５  出力周辺インタフェース
１９６  プリンタ
１９７  スピーカ
３００  データセットプログラム
３１０  記憶済みデータセット
３２０  マイニングモデル
３３０  学習済みグラフ
３３５  マッピング情報
３４０  コンテンツビューア
３５０  ユーザ
【図１】
2005025731.tif 000003
【図２】
2005025731.tif 000004
【図３】
2005025731.tif 000005
【図４】
2005025731.tif 000006
【図５】
2005025731.tif 000007
【外国語明細書】
2005025731000001.pdf