(57)【要約】【課題】  選択された初期データ可視化の仕様に基づいて、そのデータのための代替的可視化を決定すること。【解決手段】  本発明の１つの実施形態によれば、コンピュータにより実行される方法は、データ・セットの選択された第１の可視化の仕様と、データ・セットに関する情報を含むパラメータとに基づいて、データ・セットの代替可視化を作成することを含む。更に、第１の可視化の前記仕様にヒューリスティック・ルールを適用することにより、複数の新たな可視化の仕様を作成することと、新たな可視化の各々にスコアを割り当てることと、スコアに基づいて、前記新たな可視化のサブセットを生成することとを含む。【選択図】      図２
2014056573.tif 000002
【特許請求の範囲】
【請求項１】
データ・セットのための代替的可視化を決定する方法であって、
データ・セットの選択された第１の可視化の仕様と前記データ・セットに関する情報を含むパラメータとに基づいて、前記データ・セットの代替可視化を作成すること、
を含む、代替的可視化を決定する方法。
【請求項２】
前記パラメータは、前記データ・セットについてのメタデータをさらに含む、請求項１に記載の方法。
【請求項３】
前記パラメータは、前記データ・セットの２つ又はそれ以上の変数間の統計的関係をさらに含む、請求項１に記載の方法。
【請求項４】
前記代替可視化についての説明を作成することをさらに含む、請求項１に記載の方法。
【請求項５】
前記第１の可視化の前記仕様は、可視化コンポーネントの組を含み、
事前定義されたヒューリスティック・ルールを適用して前記可視化コンポーネントの組の修正されたインスタンスを作成することにより、代替可視化の仕様が作成される、
請求項１に記載の方法。
【請求項６】
前記第１の可視化の前記仕様にヒューリスティック・ルールを適用することにより、複数の新たな可視化の仕様を作成することと、
前記新たな可視化の各々にスコアを割り当てることと、
前記スコアに基づいて、前記新たな可視化のサブセットを生成することと
をさらに含む、請求項１に記載の方法。
【請求項７】
データ・セットのための代替的可視化を決定するコンピュータ・システムであって、
データ・セットの選択された第１の可視化の仕様と前記データ・セットに関する情報を含むパラメータとに基づいて前記データ・セットの代替可視化を作成するように構成された少なくとも１つのプロセッサを含む、コンピュータ・システム
を含む、システム。
【請求項８】
前記パラメータは、前記データ・セットについてのメタデータをさらに含む、請求項７に記載のシステム。
【請求項９】
前記パラメータは、前記データ・セットの２つ又はそれ以上の変数間の統計的関係をさらに含む、請求項７に記載のシステム。
【請求項１０】
前記少なくとも１つのプロセッサは、前記代替可視化についての説明を作成するようにさらに構成される、請求項７に記載のシステム。
【請求項１１】
前記第１の可視化の前記仕様は、可視化コンポーネントの組を含み、
事前定義されたヒューリスティック・ルールを適用して前記可視化コンポーネントの組の修正されたインスタンスを作成することにより、代替可視化の仕様が作成される、
請求項７に記載のシステム。
【請求項１２】
前記少なくとも１つのプロセッサは、
初期可視化仕様にヒューリスティック・ルールを適用することにより、複数の新たな可視化の仕様を作成し、
前記新たな可視化の各々にスコアを割り当て、
前記スコアに基づいて、前記新たな可視化のサブセットを生成する
ようにさらに構成される、請求項７に記載のシステム。
【請求項１３】
データ・セットのための代替的可視化を決定するコンピュータ・プログラムであって
データ・セットの選択された第１の可視化の仕様と前記データ・セットに関する情報を含むパラメータとに基づいて前記データ・セットの代替可視化を生成するように構成されたプログラム・コードを含むコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ可視化に関し、より具体的には、選択された初期データ可視化の仕様に基づいて、そのデータのための代替的可視化を決定することに関する。
【背景技術】
【０００２】
データを可視化する適切な方法を選択することは、そのデータについての知識と、データ可視化技術についての知識との組み合わせを伴う。しかしながら、特定の分野を専門とするビジネス・ユーザは、データ可視化技術における専門知識を持っていないことが普通である。研究によれば、ユーザが選択するデータの視覚表現と、利用可能な可視化のリスト内でのその位置との間には高度の相関があることが示されている。換言すれば、人は、かならずしもそのデータについての最適な可視化をもたらすとはいえない、単に利用可能な最も手近な可視化を選択する傾向がある
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の目的は、選択された初期データ可視化の仕様に基づいて、そのデータのための代替的可視化を決定する方法、システム、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００４】
本発明の１つの実施形態によれば、コンピュータによって実行される方法は、データ・セットの選択された第１の可視化の仕様と、データ・セットに関する情報を含むパラメータとに基づいて、データ・セットの代替可視化を生成することを含む。本発明の実施形態は、上記の方式と実質的に同じ方式でデータを可視化するためのシステム及びコンピュータ・プログラム製品をさらに含む。
【０００５】
概ね、種々の図面中の同様の参照番号は、同様の構成要素を示すために使用される。
【図面の簡単な説明】
【０００６】
【図１】本発明の一実施形態と共に使用するための例示的なコンピューティング環境の線図である。
【図２】本発明の一実施形態による、データの基本可視化を解析して、データの代替可視化を生成する方式を示す流れ図である。
【図３】本発明の一実施形態による、図２の流れ図について可視化目的及び統計的関係発見の方式を示す流れ図である。
【図４】本発明の一実施形態による、図２の流れ図について可視化推奨の方式を示す流れ図である。
【図５】本発明の一実施形態による、図４の流れ図についてルール実行の方式を示す流れ図である。
【図６】実施例の初期データ可視化の図である。
【図７】本発明の一実施形態による、図６の初期データ可視化に対して推奨される実施例の代替可視化を示す。
【図８】本発明の一実施形態による、図６の初期データ可視化に対して推奨される実施例の代替可視化を示す。
【発明を実施するための形態】
【０００７】
可視化は、一般に、データ・セットからのデータの視覚表現を指す。データ・セットからの変数は、典型的には、視覚表現のコンポーネントの組にマッピングされる。コンポーネントの例として、位置（例えば、グラフのＸ、Ｙ、Ｚ座標）、美的要素（例えば、色、サイズ、ラベル付け、形状など）及びファセット化（ｆａｃｅｔｉｎｇ）（例えば、図表のための行、列、外側行、外側列など）が挙げられる。リレーショナル・モデルにおける例示的なデータ・セットは、各レコード（即ち、データの各行）が、各列がデータ変数（フィールドとも呼ばれる）である列の組によって記述されるデータ・テーブルを含むことができる。
【０００８】
本発明の実施形態は、ユーザによって選択されたデータのための初期可視化に基づいて、そのデータのための推奨される代替可視化をユーザに提供する。本発明の一実施形態は、ユーザの初期可視化仕様、データ・セット、及びメタデータを解析する。この実施形態はさらに、データの更なる局面を記述する新たな可視化候補をユーザに供給し、又はより優れたデータの表現を提供する。
【０００９】
例えば、ユーザが最初に変数Ｘ及びＹの散布図を選択し、ＸとＹとの間に高度の相関が存在する場合、本発明の一実施形態は、元の散布図に重ね合わせた統計的平滑化の結果を示す可視化候補をユーザに供給することができる。同様に、データが付加的なカテゴリ情報を含む場合、可視化候補は、各（Ｘ、Ｙ）対のカテゴリを色、陰影付け、又はマーカ形状によって識別する散布図（凡例付き）を含むことができる。可視化候補の組は、元のものとは異なる型式の可視化を含むことができる。例えば、ユーザは、階層型データに対して最初に棒グラフを選択し、その階層型構造を表示するツリーマップを受け取る場合があり得る。同様に、金融時系列を表すために最初に棒グラフを選択したユーザが折れ線グラフを受け取る場合もあり、最初に集合棒グラフ（ｃｌｕｓｔｅｒｅｄ  ｂａｒ  ｃｈａｒｔ）を選択したユーザがドットプロット又はパネル化棒グラフ（ｐａｎｅｌｅｄ  ｂａｒ  ｃｈａｒｔ）を受け取る場合もあり、データが米国の州名を含む場合に最初に棒グラフを選択したユーザに地図が提供される場合もある。代替可視化の具体的な推奨は、文脈（例えば、ビジネス分野、データ、及び慣習的ルール）及びユーザの初期可視化に依存する。
【００１０】
本発明の実施形態と共に使用するための例示的な環境を図１に示す。詳細には、この環境は、１つ又は複数のサーバ・システム１０と、１つ又は複数のクライアント又はエンドユーザ・システム１４とを含む。サーバ・システム１０及びクライアント・システム１４は、互いに遠隔であってもよく、ネットワーク１２上で通信することができる。ネットワークは、任意の数のいずれかの適切な通信媒体（例えば、広域ネットワーク（ＷＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、インターネット、イントラネットなど）によって実装することができる。あるいは、サーバ・システム１０及びクライアント・システム１４は、互いにローカルであってもよく、いずれかの適切なローカル通信媒体（例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、有線、無線リンク、イントラネットなど）を介して通信することができる。
【００１１】
クライアント・システム１４は、ユーザが種々のアプリケーションについてサーバ・システム１０と対話することを可能にする。サーバ・システムは、ユーザが選択した初期データ可視化に基づいてデータの代替可視化を提供するための可視化モジュール１６を含む。可視化モジュールは、ユーザから、クライアント・システム１４を介して初期可視化選択を受け取る。可視化モジュールは、データ・セット及び他の入力（例えば、メタデータ及びルール・セット）をさらに受け取り、これらはデータベース・システム１８又は他のソース内に格納されたものであり得る。データベース・システムは、任意の従来型又は他のデータベース又はストレージ・ユニットにより実装することができ、サーバ・システム１０及びクライアント・システム１４に対してローカルとすることも又は遠隔とすることもでき、いずれかの適切な通信媒体（例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、有線、無線リンク、イントラネットなど）を介して通信することができる。
【００１２】
クライアント・システム１４は、所望のデータの可視化の初期選択並びに所望のデータ及び解析に関する他の情報をユーザから募るために、グラフィカル・ユーザ・インターフェース（例えば、ＧＵＩなど）又は他のインターフェース（例えば、コマンド・ライン・プロンプト、メニュー画面など）を提示することができ、かつ、初期可視化及び推奨される代替的可視化の組、並びにその他の生成チャート及び他のいずれかの型式の解析結果を含むレポートを表示することができる。
【００１３】
サーバ・システム１０及びクライアント・システム１４は、ディスプレイ又はモニタ、本体（例えば、プロセッサ、メモリ及び／又は内部若しくは外部通信デバイス（例えば、モデム、ネットワーク・カードなど）を含む）、随意的な入力デバイス（例えば、キーボード、マウス又は他の入力デバイス）、並びに、任意の市販及び／又は特注ソフトウェア（例えば、サーバ／通信ソフトウェア、可視化モジュール、ブラウザ／インターフェース・ソフトウェア）を装備することが好ましい、任意の従来型又は他のコンピュータ・システムにより実装することができる。さらに、可視化モジュール１６は、後述の種々の機能を実行するための１つ又は複数のモジュール又はユニットを含むことができ、任意の数量のソフトウェア及び／又はハードウェア・モジュール又はユニットの任意の組み合わせで実装することができる。
【００１４】
あるいは、１つ又は複数のクライアント・システム１４は、独立型ユニットとして動作するときにデータを解析することができる。独立型動作モードにおいて、クライアント・システムは、データを格納するか又はデータへのアクセスを有しており、データを解析して、ユーザが選択した初期データ可視化に基づいて推奨される代替的データ可視化を提供する、可視化モジュール１６を含む。
【００１５】
本発明の一実施形態による、初期データ可視化からそのデータのための代替可視化を決定する方式（例えば、可視化モジュール１６及びサーバ・システム１０及び／又はクライアント・システム１４による）を図２に示す。具体的には、可視化モジュール１６は、入力として、初期可視化仕様２１０（ユーザが選択した可視化を記述し、ソース・データ・セットを識別する）と、データ・セット２３０と、ビジネス・メタデータ２２０と、代替可視化を決定するためのヒューリスティック・ルール２６０の組とを受け取る。可視化モジュールは、可視化目的及び統計的関係発見段階２４０と、可視化推奨段階２７０とを含む段階で動作する。発見段階２４０は、仕様２１０、データ・セット２３０及びビジネス・メタデータ２２０を解析して、データ可視化に関するユーザの目的についての情報を見分け、データ・セット内の変数間の統計的関係を見つけ出す。その結果は、可視化推奨段階２７０にエンリッチ・メタデータ２５０の形で渡される。可視化推奨段階２７０は、エンリッチ・メタデータ２５０、仕様２１０及びヒューリスティック・ルール２６０を受け取り、ヒューリスティック・ルールを適用して、改善された可視化のための代替可視化候補２９０を生成する。可視化推奨段階の出力は、代替可視化候補２９０の組である。各々の最終可視化候補は、候補とした理由を述べた説明に関連付けられる。
【００１６】
本発明の一実施形態による、発見段階２４０が可視化推奨段階２７０のために情報をコンパイルする方式（例えば、可視化モジュール１６及びサーバ・システム１０及び／又はクライアント・システム１４による）を図３に示す。具体的には、可視化解析３１０は、初期可視化仕様２１０の意味構造を検査して、データ可視化に関するユーザの目的、及び、データの可視化コンポーネントに対する既存のマッピングを発見する。仕様は、初期可視化を十分に説明するものであり、変数の位置、変数の美的表現（例えば、色、サイズ、形状、又はラベルなど）、要素（例えば、棒、線、又は点など）、ファセット化、及び／又は事前計算された統計量のような情報を含む。このような情報は、ユーザの意図を反映する。例えば、位置によって表されるように選択されたフィールドは、おそらくユーザにとって重要度が高いフィールドであり、棒要素の使用は、傾向（トレンド）に対比して要旨（サマリ）の選好（ｐｒｅｆｅｒｅｎｃｅ）を示すものであり得る。
【００１７】
さらに、可視化は、データの統計的モデルと考えることができる。例えば、図表のＹ軸上の変数は、典型的にはＸ軸上の変数に従属すると想定される。後述の多変量モデル化における使用のために、前者を「目標（ｔａｒｇｅｔ）」変数、後者を「予測子（ｐｒｅｄｉｃｔｏｒ）」変数としてラベル付けすることができる。データを区分化するために用いられる変数、例えば図表をパネル化するため又は図表の点若しくは線を色付けするために用いられるような変数は、Ｙ変数が条件付け変数の値に応じて異なる様式でＸ変数に従属する条件付き関係を示す。
【００１８】
メタデータ解析３２０は、ビジネス・レベルのメタデータ２２０を収集し、このメタデータを解析して文脈を見分ける。ビジネス・メタデータ２２０は、例えば、変数を通貨型として識別することができ、さらにこの変数を支出フィールド又は収入フィールドとして分類することができる。収入フィールド及び支出フィールドは、それぞれ目標及び予測子として指定することができる。
【００１９】
統計的解析３３０は、個々の変数について統計量を計算し、データ・セットの変数間の統計的関係を発見する。変数の対について、多変数統計モデルを関連性尺度と共に生成することができる。最初に、一変量解析３３１が、各変数について統計的記述的データを独立に計算する。一変量解析は、平均、標準偏差、カウント、欠測値カウント、歪度、尖度、順序統計量（中央値、四分位数など）のような標準的な統計的尺度、及び、その変数が識別子であると判定された場合に真としてマーク付けされるフラグを含む特別なインジケータを含む。これは、変数が文字列又は整数の一意の値を有し、各データ行が一意の値を含んでいる場合である。これらの変数は、テキスト・コンポーネントを除いて、可視化のコンポーネントにマッピングされない。
【００２０】
さらに、統計的図表の作成での使用に適した、データの有界サイズの要旨（サマリ）が作成される。カテゴリ的データの場合、この要旨は、ある変数の一意のカテゴリについての度数表を含み、その一方で、その度数が上位の一定数（例えば、上位１００）に入らないカテゴリについては全ての最低度数の項目を単一の「その他」カテゴリに集約することによって、高々一定数のカテゴリ（例えば、最大で１００カテゴリ）しか生じないことを保証する。
【００２１】
数値データの場合は、同じ度数表が生成されるが、但し、統計的ビニング（ｂｉｎｎｉｎｇ）を用いて、値の範囲についての度数を作り出す。例えば、可変サイズのビンを形成して（可変ビン・ヒストグラム・アルゴリズム又は他のいずれかの適切な方法を利用して）、ある変数について一定数のビンを生成する（例えば、ビンの最大数を１００とする）ことができる。
【００２２】
可視化解析３１０（仕様の解析）、メタデータ解析３２０、及び個々の変数の統計量３３１の結果を用いて、二変量解析３３２のための変数の対を選択し、かつ、多変量予測子モデルのための目標及び予測子としての変数を識別する。二変量解析は、変数の対の間の関係の強さを決定する。他の変数に対して強い関連性を有する変数は、多変量予測子モデル化３３３に対する優先順位を与えられる。多変量予測子モデル化は、２つより多くの変数間の関係を決定する。得られた多変量予測子モデルは、可視化候補を生成するために用いることができる既知の統計的関係を有する変数の組を含む。
【００２３】
二変量解析３２２は、各々の選択された変数対について、関係の強さの尺度及びその統計的な確からしさの尺度を生成する。対になった値の各々の選択された組の度数を定める、有界サイズのクロス集計表が生成される。このクロス集計表は、変数対の同時分布を定める。表を解析して関連性の尺度が提供され、この尺度は、その関係が実在する統計的確率を決定するロバスト相関尺度、及び、説明分散（ｖａｒｉａｎｃｅ  ｅｘｐｌａｉｎｅｄ）における改善として測定される、関係の強さを含む。計算された尺度は、後で使用するために保存される。クロス集計表を用いて、二変量可視化を作成することができる。
【００２４】
統計的関係の強さは、変数間の関係の強さを計算するための従来の統計学的方法論に勝る幾つかの長所を提供する技術を用いて評価される。これは、カテゴリ的変数と連続変数との間の関係を容易に比較することを可能にするという長所、及び、一旦クロス集計が実行されると、結果として得られる解析はデータのスケールにしないので、所与の数の変数に対して一定の計算時間を有するという実施上の長所を提供する。アルゴリズムの詳細は後述する。
【００２５】
多数の変数の場合、得られる対の数は、過度に大きいものになることがある。従って、その解析は、可視化解析３１０（仕様の解析）、メタデータ解析３２０、及び個々の変数の統計量３３１の結果に基づいて、統計的に有意な最高の関係の強さを有する変数と、ユーザが関心を持っていると識別された変数とを選択することで、一定数の二変量可視化の生成に限定することが可能である。
【００２６】
クロス集計表の生成は、以下のようにより詳細に説明される。前述のように、データ・セットの各変数は、数値であってもカテゴリであっても、計算された有界サイズの度数表現を有することができる。この結果、各変数に対して、高々所与の数のビン（数値又はカテゴリ）が定義される。従って、一対の変数が、有界数のセルを有する１つの表を定めることになる（例えば、一変数あたり１００カテゴリの限度が与えられたとすると、その結果として一対の変数に対して高々１０，０００セルとなる）。アルゴリズムをデータ全体にわたって繰り返し、各対に対して、第１の変数（変数１）についてのビンと第２の変数（変数２）についてのビンとの交差により定められるセルを計算する。次いでそのセルについての度数がインクリメントされる。有界カテゴリの数（例えば１００カテゴリ）より少ないデータの場合、クロス集計表は、真の二変量分布の完全な表現になるはずである。
【００２７】
効率のため、クロス集計は、ゼロ値は格納されず、非ゼロの組み合わせのみが記録されるように生成することができる。
【００２８】
データが多様である場合、変数対の間のクロス集計は近似になる。数値データについてのビニング・アルゴリズムの選択は、この技術の有用性に強く影響を与えることになる。例示的な実施において、高度に非一様なデータの場合、周辺のビン度数がより一様になるように、従って一定幅のビンよりも解析のためにより有用なものになるように、可変幅のビンが用いられる。
【００２９】
変数メタデータ（可視化解析３１０及び／又はメタデータ解析３２０からの）は、選好により、Ｙ次元上を目標変数及びＸ次元上を予測子として、どの変数がＹ次元のために用いられ、どの変数がＸ次元のために用いられるかを示すために用いることができる。
【００３０】
ロバスト相関尺度を計算するために、二元表のための標準的な分散分析（ＡＮＯＶＡ）技術を用いてクロス集計表が解析される。カイ二乗尺度を用いて、関係が実在する統計的確率を計算する。関係の強さは、説明分散率（標準的なＡＮＯＶＡ用語における分数ＳＳＥ／ＳＳＴＯの平方根）として評価される。
【００３１】
データのロバスト相関尺度は、独立性についての標準的な統計的カイ二乗検定を用いて計算される。これは、カウントにおける変動の統計的有意性及び予測（周辺度数を用いてカウントを予測する場合の二乗誤差項の和であるＳＳＥを、全てのセルが等しい度数を有すると仮定した場合の二乗誤差項の和ＳＳＴＯで除することにより測定される）を含む、尺度を生成する。
【００３２】
多変量解析３３３は、２つ又はそれ以上の変数間の統計的関係を探す。一実施形態において、標準的な統計技術である「ランダムフォレスト」を使用して、予測子変数の組に対する目標変数の従属性がモデル化される。この技術は、全ての可能な組み合わせを検討するには変数の数が多すぎる場合でも有用である。この手法に関与する技術は、以下の通りである。
【００３３】
１．各目標変数Ｙについて、この変数を他の変数のサブセットを用いて予測するランダムフォレスト・モデルを構築する。
ａ．使用目的（ｕｓａｇｅ）が「未知」又は「予測子」の変数のみが変数を予測するために用いられることを保証するために、変数メタデータを使用する。
ｂ．このような変数が多数（モデルのフィッティングが過度に長くなるほど）存在する場合、二変量関連付けの間に計算された関連性データを用いて、目標変数との関係の強さが最大である変数を選択し、及び、初期可視化及びメタデータの解析に基づいてユーザが関心を持っていると識別された変数を選択する。
【００３４】
２．各モデルについて、（ｉ）関係が実在する統計的確率、及び（ｉｉ）説明分散における改善として測定される関係の強さ、を記録する。
【００３５】
３．モデルが統計的に有効であるならば、目標変数Ｙについてのモデルに対する、各変数Ｘの寄与を記録する。これは、標準的又は典型的なランダムフォレスト・モデルについて説明されている手法のような多くの手法で行うことができる。例示的な実施において、モデルに、そのモデルから除外された変数Ｘが再フィッティングされ、関係の強さの差が寄与尺度として用いられる。その結果は、各変数について、多変量的意味でこの変数に関連付けられる他の変数を、多変量モデルへのその寄与によって順序付け及びスコア付けしたリストである。
【００３６】
発見段階２４０の結果は、エンリッチ・メタデータ２５０としてコンパイルされ、このエンリッチ・メタデータは、ビジネス・メタデータ及びデータ・セット２３０内からの何らかのメタデータを含み、統計的情報（例えば、他のフィールドとの最も強い関連性）及びユーザにとってのフィールドの重要さの尺度（例えば、初期にｙ軸上で用いられたフィールドは、ユーザにとって非常に重要であると考えられる）で強化される。エンリッチ・メタデータ２５０は、可視化推奨段階２７０に提供される。
【００３７】
本発明の一実施形態による、可視化推奨段階２７０が新たな可視化候補を生成する方式（例えば、可視化モジュール１６及びサーバ・システム１０及び／又はクライアント・システム１４による）を図４に示す。具体的には、ルール実行４１０が、ヒューリスティック・ルール２６０、初期可視化仕様２１０、及びエンリッチ・メタデータ２５０を受け取り、暫定候補４２０を生成する。各暫定候補４２０には、プレーンテキストの説明と、候補を順序付けることができる１つ又は複数のスコアとが付属する。暫定候補４２０は、可視化の実際のレンダリングではないが、その代わり、ヒューリスティック・ルールを適用することが可能な可視化の仕様である。処理中、これらの仕様は、ルール実行４１０に対して更なる入力を提供するプール内に置かれる。ルールは、エキスパート・システム様式で、例えば前向き連鎖又は他の型式のエキスパート・システムで実行される。例えば、ルールを各々の新たな暫定候補に対して実行して、全ての一意の候補が見出されるまで又は限界に達するまで、更なる暫定候補を生成することができる。フィルタリング４３０は、暫定候補４２０から代替可視化候補２９０の最終組を（例えば、スコアを用いて）選択する。
【００３８】
本発明の一実施形態による、ルール実行４１及びフィルタリング４３０が暫定候補及び最終候補を生成する手法を図５に示す。具体的には、ヒューリスティック・ルール適用５４０は、ヒューリスティック・ルール２６０を適用することにより、新たな可視化候補を作成する。例えば、目的が「収益についての傾向を示す」ことであると判定され、かつ、収益と店舗についての識別子との間に強い関連性が存在する場合、線要素又は領域（ａｒｅａ）要素が、既に存在していなければ元の可視化に追加され、その線に対して平滑化関数を適用して傾向をより明らかにすることができる。ルール２６０は、エンリッチ・メタデータ２５０及び／又は初期可視化仕様２１０を評価して、可視化に対して改善を行うか又は改善された新たな可視化を作成するように設計される。ルールは、事前定義ルール、汎用ルール、分野の専門家により定められたルール（例えば金融ルール）、特定のデータ・セットに対して定められたルール、及び／又はユーザが特定の解析に対して定めたルールを含むことができる。システムのためのルールは、種々異なる目的に合わせて、例えば、初心者が犯す一般的な誤りに基づいて改善された可視化を作成すること、又は、特定の産業工業分野においてより妥当な表現に引き寄せるように調整することができる。各ルールは、典型的には、例えば、あるフィールドを表すために色を適用すること、又は、データを表すために棒の使用に対して点の使用を選択することなど、可視化のコンポーネント局面のみを修正する。
【００３９】
プレーンテキスト説明５５０は、新たな候補を生成する各ルールについて、プレーンテキストで正当性理由を提供する。これらの説明は、ルールが適用されるにときに生成され、キャプチャされる。プロセスの最後に、これらのセンテンスはパラグラフにまとめられてユーザに提示される。例えば、あるルールがグラフィックに統計的平滑子を追加することを決定した場合に、平滑化された表現が、全体的な傾向を見ることをどのようにより簡単にするかを説明するセンテンスを追加することができる。
【００４０】
スコア付け５６０は、暫定可視化候補４２０にスコアを割り当てる。いずれかの適切なスコア付けシステムを用いることができる。スコア付けシステムは、産業特有のルールを用いることができる。種々の所望の特徴を表す幾つかの異なるスコアを作成して割り当てることができる。例として、関連性の強さ、複雑さ／単純さ、及び表されるデータの次元のパネル化又は数を表すスコアが挙げられる。このような因子の重み付けされた組み合わせを用いて総合スコアを生成することができ、次にこれを用いて、可能な候補の中から最も情報を与える（ｉｎｆｏｒｍａｔｉｖｅ）可視化候補が選択される。
【００４１】
関連性の強さは、可視化の各コンポーネントにより示される統計的関係の強さ、及び、所与のタイプの統計的関係に対する各可視化コンポーネントの適性に基づいてスコア付けすることができる。コンポーネント毎のデータ適性の尺度は、データのメタ特性（カテゴリ数、歪度及び一様性など）と共に統計的特性に基づくものであり、所与のコンポーネントがある変数に対してどれほど適切であるかの尺度を提供する。例えば、５つの事例を伴うカテゴリ的変数は、歪んだ数値変数よりも色に対して用いるのに適している。具体的には、可視化候補は、例として下記の表１で与えられる予測子変数についての好ましい使用順序との適合性に従ってランク付けすることができる。
【表１】
2014056573.tif 000003
【００４２】
多変量可視化候補は、コンポーネントの複雑さ及びコンポーネントの組み合わせを想定して、その可視化をユーザが解釈することがどれほど容易であるかに基づいてスコア付けすることができる。例えば、Ｘ位置コンポーネントは、色コンポーネントよりも解釈が容易である。さらに、１ファセット化コンポーネントは比較的解釈し易いのに対し、２ファセット化コンポーネントは解釈がより難しい。例示的な実施形態において、複雑さは、制御された実験から導出された線形統計モデルを用いて測定され、この場合、モデルにおける複雑さの予測子は、存在するグラフィック要素のカウント数である。しかしながら、いかなるモデル化技術も、何らかの多変量可視化記述をスコア付けすることを可能にする限りにおいて使用することができる。例えば、モデルは、経験、ユーザの研究、又は他の技術に基づいて事前に構築することができる。
【００４３】
フィルタリング４３０（図４）において多変量可視化候補を選択するために使用するための例示的なアルゴリズムは、複雑性モデルを考慮に入れるが、単純に複雑さが最良又は最小の可視化を選択するわけではなく、このアルゴリズムは以下のことを反復的に実行する。
１．潜在的候補のリストから、スコアが最も高いモデルを選択する。
２．他の各々のモデルについて、選択されたモデルとの類似の程度に基づいてそのモデルについてのスコアを小さくする。好ましい実施において、これは以下のようにして達成される。
ａ．類似性Ｓは、２つの候補間で、共通の変数の数を変数の数の平均で除したものとして計算され、値は０と１との間にある。
ｂ．他方のモデルについてのスコアをＳの一定倍数（０．２５）を掛けて小さくする。
３．残りの全てのモデルがゼロを下回るスコアを有するまで、プロセスを繰り返す。
【００４４】
上述のアルゴリズムは、候補モデルの代表の組が選択されることを保証する。これは、最良の候補が、既に選択された候補に類似した候補の有用性を減らしていく「収穫逓減」ポリシーに従って選択されることを保証する。
【００４５】
各可視化仕様候補は、変数から可視化コンポーネントへのマッピングを記述する。これを直接的に用いて、適切な可視化システムを使用して可視化を構築する。要素の選択及び位置変数を用いて基本的な可視化型式を定義することができ、ここで色、サイズ及び形状の変数を用いてその可視化を修正する。最後に、ファセットに割り当てられた変数を用いて、可視化をパネル化する。
【００４６】
ユーザ・インターフェース制御を使用して、これらのスコアの値に基づいて可視化候補のリストを順序付け又はフィルタリングする。例えば、生成された図表のうち最高又は最良のランクを有する上位１０個のリスト又は他の適切な数のリストをユーザに提示することができる。ユーザは次に、提示されたものの中から１つ又は複数の図表を選択することができる。ユーザは、図表の生成のための探索空間及び／又は生成された図表の提示をいずれかの適切な方式で（例えば、特定の変数が二次元図表のＸ軸上に配置されることを要求することにより）さらに限定することができ、この場合、生成された図表は、ユーザにより実施された限定に基づいてランク付けされ、ユーザに提示される。
【００４７】
プロセスの結果は、当初に供給されたグラフィックに基づく様々な代替的視覚表現である。各候補には、そのグラフィックについての説明及び特定の局面が妥当である理由を与える数個のセンテンスが付属する。
【００４８】
実施例は、本発明の一実施形態による可視化推奨の態様を例証する。この実施例において、ユーザは最初に、図６に示されるような販売員に対する売上の単純な棒グラフを作成する。この図表のための例示的なデータ・セットを下記の表２に示す。
【表２】
2014056573.tif 000004
【００４９】
表の第１列は、売上高を含み、第２列は販売量を含み、最後の列は販売員の索引である（人名リスト「Ｂｏｂ」、「Ｎａｎｃｙ」、「Ｅｄ」、「Ｐａｔ」、「Ａｎｎ」、「Ｂｉｌｌ」、「Ｊａｎｅｔ」、「Ｂｒａｄ」、「Ｍａｒｙ」、「Ｒｏｇｅｒ」、「Ｍｅｌｉｓｓａ」、「Ｊａｃｋ」、「Ｂｏ」、「Ｋａｔｅ」、「Ｔｉｎａ」、「Ｊｏｎａｈ」に対応している）。
【００５０】
この例についてのヒューリスティック・ルール２６０は、下記のように表３において各ルールが起動されたときの重要度についての重みと共に定められる。
【表３】
2014056573.tif 000005
【００５１】
発見段階２４０は、量及び売上を数値変数として識別し、販売員索引をカテゴリ的変数として識別する。売上と量との間には、強い統計的相関が見出される。
【００５２】
初期可視化にヒューリスティック・ルールを適用すると、［Ａ］、［Ｂ］、［Ｃ］、及び［Ｆ］とラベルされたルールが起動される。ルール［Ｄ］は、州のＩＤが見出されなかったので起動されず、ルール［Ｅ］は、表示されている数値データ間に関係が存在しないので起動されない。
【００５３】
例として、上位２つの結果のみが用いられる。表３における重みに従えば、これらはルール［Ａ］及びルール［Ｃ］の結果である。結果として、２つの暫定可視化候補、即ち
［Ｎ１］  基本＋［Ａ］：ソートされた棒グラフ、
［Ｎ２］  基本＋［Ｃ］：Ｘ軸上にプロットされた量（不規則な間隔の棒と共に）
が作成され、ここで［Ｎ１］及び［Ｎ２］は新たな可視化をラベルで表したものであり、基本＋［ルール・ラベル］は、そのルール・ラベルに対応するヒューリスティック・ルールに従って修正された基本の可視化を示す。
【００５４】
ヒューリスティックは、これらの各々に対して再実行される。［Ｎ１］に対して、ルール［Ｃ］が起動するが、［Ｎ２］と同じ図表を生成することになるので棄却される。ルール［Ｆ］もまた起動し、新たな候補、
［Ｎ３］  基本＋［Ａ］＋［Ｆ］：棒の幅（「サイズ」）に対してマッピングされた量を伴う、ソートされた棒グラフ
を生成する。
【００５５】
ヒューリスティックを［Ｎ２］に適用すると、ルール［Ｂ］が始動し、及び、ルール［Ｅ］が始動し、その結果、２つの新たな候補、
［Ｎ４］：基本＋［Ｃ］＋［Ｂ］：ｘ軸が量である、色付き棒グラフ、
［Ｎ５］：基本＋［Ｃ］＋［Ｅ］：棒を点で置き換えて散布図を作成、
が得られる。
【００５６】
［Ｎ３］、［Ｎ４］、及び［Ｎ５］にヒューリスティック・ルールを適用すると、１つだけ新たな可能性、即ち、
［Ｎ６］：基本＋［Ｃ］＋［Ｂ］＋［Ｅ］：色付き散布図
を生成する。
【００５７】
この例において、６つの候補は、その重みを計算することによりスコア付けされる。ここでも、上位２つのみが用いられ、最終可視化候補［Ｎ３］及び［Ｎ６］が得られ、これらはそれぞれ図７及び図８で示される（図８において、色は記号で置き換えられている）。候補［Ｎ３］は、販売員別の売上げのソートされた棒グラフであり、棒の幅が量を示す。ルール［Ａ］及び［Ｆ］は、プレーンテキストの正当性理由「人員を売上の値により順序付けすることで、売上の最大値及び最小値を見ることがより容易になる。量は数値であるので、量をサイズとして符号化した。」を自動的に生成する。候補［Ｎ６］は、販売員別に色付けした、量対売上の散布図である。テキストの正当性理由「量をＸ軸に置くことで、量と売上との間の強い関連性を示す。両方の軸が数値データを示しているので点を選択した。販売員はカテゴリ的であるので、販売員を色としてコード化した。」は、ルール［Ｃ］、［Ｂ］、［Ｅ］により自動的に生成される。これらの最終可視化候補は、元の図表と共にユーザに提示される。
【００５８】
このようにして、本発明の実施形態は、多変量データ・セットからのデータの初期可視化に対して複数の代替可視化を自動的に生成し、検討用のサブセット（初期可視化の組のランク付け又はスコア付けに基づく）をユーザに提供し、その結果として、改善されたデータ可視化をもたらし、同時に、さもなければデータを表示する最良の方式を決定しようと試みるためにユーザが要したであろう時間及び労力を最小化する。
【００５９】
上で説明し、図面で示した実施形態は、初期可視化に基づいてデータ・セットの推奨される可視化の組をユーザに提供する実施形態を実施するための多くの方法のうちのごく少数を表したものであることが認識されるであろう。
【００６０】
推奨モジュールは、独立型のアプリケーションとして動作することもでき、又は可視化、報告、解析などのためのアプリケーションに対するアドオン若しくはそれらのアプリケーションの構成要素として動作することもできる。ユーザの初期可視化の仕様は、可視化アプリケーションの生成物とすることもでき、又は、可視化アプリケーションに対するユーザのコマンドを翻訳することにより、若しくは、可視化アプリケーションにより作成されるデータ構造若しくは他の可視化仕様を翻訳することにより作成することもできる。
【００６１】
ユーザの初期可視化は、任意の形態（例えば、棒グラフ、散布図など）を有することができる。代替的な又は推奨される可視化は、任意の形態（例えば、棒グラフ、散布図など）を有することができ、ユーザの初期可視化と同じ形態又は異なる形態を有することができる。
【００６２】
可視化仕様は、可視化をルール適用のために記述するのに適した任意のフォーマットを有することができる。このフォーマットは、可視化コンポーネントを付加可能な又は交換可能な部品として扱うことを可能にすることができる。メタデータ（エンリッチ・メタデータを含む）を可視化仕様に組み入れることができる。可視化仕様は、メタデータの形を取ることができる。
【００６３】
エンリッチ・メタデータは、変数の使用目的（ｕｓａｇｅ）に関する情報（例えば、目標又は予測子）、統計的情報（例えば、単変数統計量、及び、多変数モデル、表、ヒストグラムを含む統計的関係など）、分野情報（例えば、「時系列」、「バンキング」、「電子商取引」など）、格納型式（例えば、整数、浮動小数点、文字列、日付など）、尺度型式（例えば、比率、序数、二値など）のような任意の型式のメタデータを含むことができる。エンリッチ・メタデータは、既存のメタデータ、ユーザにより提供される情報、並びに、可視化の目的及び統計的関係の発見により決定される（例えば、変数名と正規表現とを比較することによる）情報などの、任意のソースから収集することができる。メタデータは、任意の型式の値（例えば、ブール型、英数字、数値、文字、記号など）により表すことができる。
【００６４】
統計的解析は、ユーザの初期可視化において示されたデータに加えて、例えば、ユーザの変数を含む表の付加的な列及び関連した表内の列などの、任意のデータを包含することができる。事前計算された統計量（例えば、メタデータから）を含む任意の統計的尺度（例えば、標準的相関）及び方法を用いることができる。統計量は、いずれかの型式のビニング（例えば、変数又は定数のビン・サイズ、ビニングされていないデータ、切り捨て範囲など）有り又はビニングなしで計算することができる。任意の型式のデータ・モデルを生成することができる（例えば、ランダムフォレスト・モデル、ニューラル・ネットワーク、パラメータ化モデルなど）。モデルは、可視化解析及び／又はメタデータ解析に基づいて選択することができる（例えば、重要であると識別された変数は、より大きな組み合わせでモデル化することができ、又は、追加の若しくはより詳細なモデルによってモデル化することができる）。統計的解析（例えば、個々の変数、変数対、多変量モデルなどについて）は、並列処理又は分散解析フレームワーク（クラウド・コンピューティング、ＨＡＤＯＯＰ、又は同様の環境上に構築される）を利用することができる。しかしながら、処理は、単一の処理スレッド内で又は他のいずれかの処理システム内で解析を実行することにより実施することもできる。
【００６５】
可視化推奨は、任意の手順に従って代替可視化候補を生成することができる。各ルールは、１つ又は複数の可視化の候補を生成することができる。ルール実行は、シングルパス、反復、エキスパート・システムなどのような任意の方式で行われることができる。代替可視化についての説明は、任意のフォーマットを取ることができ、任意の型式のテキスト、記号、及びグラフィックを含むことができる。説明は、任意の時点（例えば、新たな候補と同時、最終候補の選択後、など）で生成させることができる。任意の型式のスコア及びスコア付けシステムを用いることができる。スコアは、任意のユーザ入力及びメタデータを考慮に入れることができる。
【００６６】
最終代替可視化候補は、任意の時点（例えば、可視化推奨中、ユーザへの提示の前又は後、など）でレンダリングすることができ、可視化モジュール又は他のモジュール若しくはアプリケーションによりレンダリングすることができる。
【００６７】
本発明の実施形態のトポロジ又は環境は、任意の所望の様式で配置された任意の数のコンピュータ又は他の処理システム（例えば、クライアント又はエンドユーザ・システム、サーバ・システムなど）及びデータベース又は他のリポジトリを含むことができ、本発明の実施形態は、任意の所望の型式のコンピューティング環境（例えば、クラウド・コンピューティング、クライアント・サーバ、ネットワーク・コンピューティング、メインフレーム、独立型システムなど）に適用することができる。本発明の実施形態により使用されるコンピュータ又は他の処理システムは、任意の数の任意のパーソナル・コンピュータ又は他の型式のコンピュータ又は処理システム（例えば、デスクトップ、ラップトップ、ＰＤＡ、移動体デバイスなど）により実装することができ、任意の市販のオペレーティング・システム、及び市販又は特注のソフトウェア（例えば、ブラウザ・ソフトウェア、通信ソフトウェア、サーバ・ソフトウェア、可視化モジュールなど）を含むことができる。これらのシステムは、情報を入力し及び／又は閲覧するための任意の型式のモニタ及び入力デバイス（例えば、キーボード、マウス、音声認識など）を含むことができる。
【００６８】
本発明の実施形態のソフトウェア（例えば、クライアント・システム及びサーバ・システムの可視化モジュール）は、任意の所望のコンピュータ言語で実装することができ、本明細書内に含まれる機能的説明及び図面において示されるフローチャートに基づいて、コンピュータ技術の当業者によって開発することができることを理解されたい。さらに、本明細書における種々の機能を実行するソフトウェアへのいずれの言及も、これらの機能をソフトウェア制御下で実行するコンピュータ・システム又はプロセッサを一般的に指す。本発明の実施形態のコンピュータ・システムは、代替的に、いずれかの型式のハードウェア及び／又は他の処理回路により実装することができる。
【００６９】
コンピュータ又は他の処理システムの種々の機能は、任意の方式で任意の数のソフトウェア及び／又はハードウェア・モジュール又はユニット、処理システム又はコンピュータ・システム及び／又は回路の間に分散させることができ、コンピュータ又は処理システムは、互いにローカルに又は遠隔に配置することができ、いずれかの適切な通信媒体（例えば、ＬＡＮ、ＷＡＮ、イントラネット、インターネット、有線、モデム接続、無線など）を介して通信することができる。例えば、本発明の実施形態の機能は、任意の方式で、種々のエンド・ユーザ／クライアント及びサーバ・システム、及び／又は他のいずれかの中間処理デバイスの間に分散させることができる。上で説明し、流れ図で図示されたソフトウェア及び／又はアルゴリズムは、本明細書において説明された機能を達成するいずれかの方式で修正することができる。さらに、流れ図又は説明内の機能は、所望の操作を達成する任意の順序で実行することができる。
【００７０】
本発明の実施形態のソフトウェア（例えば、クライアント・システム及びデータベース・システムの可視化モジュール）は、独立型システム上、又はネットワーク若しくは他の通信媒体により接続されたシステム上での使用のために、記録可能媒体（例えば、磁気又は光媒体、光磁気媒体、フロッピィ・ディスケット、ＣＤ−ＲＯＭ、ＤＶＤ、メモリ・デバイスなど）上で利用可能とすることができる。
【００７１】
通信ネットワークは、任意の数の任意の型式の通信ネットワーク（例えば、ＬＡＮ、ＷＡＮ、インターネット、イントラネット、ＶＰＮなど）により実装することができる。本発明の実施形態のコンピュータ又は他の処理システムは、このネットワーク上でいずれかの従来型又は他のプロトコルによって通信するためのいずれかの従来型又は他の通信デバイスを含むことができる。コンピュータ又は他の処理システムは、ネットワークへのアクセスのために任意の型式の接続（例えば、有線、無線など）を用いることができる。ローカル通信媒体は、いずれかの適切な通信媒体（例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、有線、無線リンク、イントラネットなど）により実装することができる。
【００７２】
システムは、情報（例えば、統計データ又は他のデータ、モデル、可視化仕様、可視化、ルールなど）を格納するために任意の数の任意の従来型又は他のデータベース、データ・ストア又はストレージ構造（例えば、ファイル、データベース、データ構造、データ又は他のリポジトリなど）を用いることができる。データベース・システムは、情報（例えば、統計データ又は他のデータ、モデル、可視化仕様、可視化、ルールなど）を格納するための任意の数の任意の従来型又は他のデータベース、データ・ストア又はストレージ構造（例えば、ファイル、データベース、データ構造、データ又は他のリポジトリなど）により実装することができる。これらのシステムは、サーバ及び／又はクライアント・システム内に含めることもでき、又はこれらに結合することもできる。データベース・システム及び／又はストレージ構造は、コンピュータ又は他の処理システムから遠隔とすることもローカルとすることもでき、任意の所望のデータ（例えば、ルール、モデル、統計データ又は他のデータ、可視化仕様、可視化など）を格納することができる。
【００７３】
本発明の実施形態は、任意の情報を表す任意の型式（例えば、ブール型、文字、英数字、記号など）のデータの代替可視化を推奨するために利用することができる。さらに、本発明の実施形態は、任意の型式のストレージ・ユニット、システム又はデバイス（例えば、データベース、ファイル、メモリ・デバイス、データ構造、処理デバイス、種々の型式の固定の又は移動体コンピュータ又は処理システム又は処理デバイスなど）からのデータの代替可視化を推奨するために利用することができる。データ・セットは、１つ又は複数のデータ・セットを含むことができ、任意のサイズとすることができ、任意の型式のデータ及びメタデータを含むことができる。
【００７４】
本発明の実施形態は、情報を取得又は提供する（例えば、実行される所望の解析のための情報を取得する、図表又は他のデータ可視化を提供する、など）ために、任意の数の任意の型式のユーザ・インターフェース（例えば、グラフィカル・ユーザ・インターフェース（ＧＵＩ）、コマンドライン、プロンプトなど）を使用することができ、インターフェースは、任意の様式で配置された任意の情報を含むことができる。インターフェースは、いずれかの適切な入力デバイス（例えば、マウス、キーボードなど）により情報を入力／表示するため及び所望の動作を開始するための、任意の位置に配置された任意の数の任意の型式の入力機構又は作動機構（例えば、ボタン、アイコン、フィールド、ボックス、リンクなど）を含むことができる。インターフェース画面は、画面間をいずれかの方式でナビゲートするための任意の適切なアクチュエータ（例えば、リンク、タブなど）を含むことができる。
【００７５】
本発明の実施形態は、上記で説明された特定のタスク又はアルゴリズムに限定されるものではなく、任意の型式のプロセスのための任意のデータ・ソースからのデータの解析、及び可視化生成のために利用することができる。
【００７６】
本明細書において用いられる用語は、特定の実施形態を説明する目的のためのものにすぎず、本発明を限定することを意図するものではない。本明細書で用いられるとき、単数形「１つの（ａ）」、「１つの（ａｎ）」および「その（ｔｈｅ）」は、文脈が明らかにそうでないことを示していない限り、複数形も含むことが意図されている。本明細書で用いられるとき、「含む（ｃｏｍｐｒｉｓｅ）」、「含んでいる（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｅ）」、「含んでいる（ｉｎｃｌｕｄｉｎｇ）」、「有する（ｈａｓ）」、「有する（ｈａｖｅ）」、「有している（ｈａｖｉｎｇ）」、「備える（ｗｉｔｈ）」などの用語は、提示された特徴、整数、ステップ、動作、要素、及び／又はコンポーネントが存在することを規定するものであるが、１つ又は複数の他の特徴、整数、ステップ、動作、要素、コンポーネント、及び／又はそれらの群の存在又は追加を排除するものではないことがさらに理解されるであろう。
【００７７】
本明細書において用いられる用語は、特定の実施形態を説明する目的のためのものにすぎず、本発明を限定することを意図するものではない。本明細書で用いられるとき、単数形「１つの（ａ）」、「１つの（ａｎ）」および「その（ｔｈｅ）」は、文脈が明らかにそうでないことを示していない限り、複数形も含むことが意図されている。本明細書で用いられるとき、「含む（ｃｏｍｐｒｉｓｅ）」、「含んでいる（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｅ）」、「含んでいる（ｉｎｃｌｕｄｉｎｇ）」、「有する（ｈａｓ）」、「有する（ｈａｖｅ）」、「有している（ｈａｖｉｎｇ）」、「備える（ｗｉｔｈ）」などの用語は、提示された特徴、整数、ステップ、動作、要素、及び／又はコンポーネントが存在することを規定するものであるが、１つ又は複数の他の特徴、整数、ステップ、動作、要素、コンポーネント、及び／又はそれらの群の存在又は追加を排除するものではないことがさらに理解されるであろう。
【００７８】
当業者であればわかるように、本発明の態様は、システム、方法又はコンピュータ・プログラム製品として具体化することができる。従って、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）、又はソフトウェア及びハードウェア態様を組み合わせる実施形態の形式を取ることができ、これらはすべて本明細書において一般的に「回路」、「モジュール」、若しくは「システム」と呼ばれる。さらに、本発明の態様は、その上に具体化されたコンピュータ可読プログラム・コードを有する１つ又は複数のコンピュータ可読媒体において具体化されたコンピュータ・プログラム製品の形式を取ることができる。
【００７９】
１つ又は複数のコンピュータ可読媒体の任意の組み合わせを利用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体又はコンピュータ可読記憶媒体とすることができる。コンピュータ可読信号媒体は、例えば、電子、磁気、光、電磁気、赤外線若しくは半導体のシステム、装置、若しくはデバイス、又はこれらの任意の適切な組み合わせとすることができるがこれらに限定されない。コンピュータ可読記憶媒体のより具体的な例（非網羅的なリスト）は、１つ又は複数の配線を有する電気接続、携帯型コンピュータ・ディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、光ファイバ、携帯型コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、光記憶装置、磁気記憶装置、又はこれらの任意の適切な組み合わせを含む。本文書の文脈においては、コンピュータ可読記憶媒体は、命令実行システム、装置若しくはデバイスにより又はこれらとの関連で用いられるプログラムを含むか又は記憶することができる任意の有形媒体とすることができる。
【００８０】
コンピュータ可読信号媒体は、コンピュータ可読プログラム・コードが例えばベースバンド内に又は搬送波の一部として具体化された伝搬データ信号を含むことができる。こうした伝搬信号は、電磁気、光又はこれらの任意の適切な組み合わせを含むがこれらに限定されない、様々な形式のいずれかを取ることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、かつ、命令実行システム、装置若しくはデバイスにより又はこれらとの関連で用いられるプログラムを通信し、伝搬し、又は搬送することができる、任意のコンピュータ可読媒体とすることができる。
【００８１】
コンピュータ可読媒体上に具体化されたプログラム・コードは、無線、有線、光ファイバ・ケーブル、ＲＦ等、又はこれらの任意の適切な組み合わせを含むがこれらに限定されない、任意の適切な媒体を用いて送信することができる。
【００８２】
本発明の態様についての動作を実行するためのコンピュータ・プログラム・コードは、Ｊａｖａ（Ｊａｖａ及び全てのＪａｖａベースの商標及びロゴは、米国、他の国、又はその両方においてＳｕｎ  Ｍｉｃｒｏｓｙｓｔｅｍｓ，Ｉｎｃ．の商標である）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋等のオブジェクト指向プログラム言語及び「Ｃ」プログラム言語又は類似のプログラム言語等の従来の手続き型言語を含む、１つ又は複数のプログラム言語の任意の組み合わせで記述することができる。プログラム・コードは、全体をユーザのコンピュータ上で実行するか、独立型ソフトウェア・パッケージとして一部をユーザのコンピュータ上で実行するか、一部をユーザのコンピュータ上で実行し一部をリモート・コンピュータ上で実行するか、又は、全体をリモート・コンピュータ若しくはサーバ上で実行することができる。後者のシナリオにおいては、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）又は広域ネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを通してユーザのコンピュータに接続することができ、又は（例えば、インターネット・サービス・プロバイダを用いてインターネットを通して）外部コンピュータへの接続を確立することができる。
【００８３】
本発明の態様は、本発明の実施形態による方法、装置（システム）及びコンピュータ・プログラム製品のフローチャート図及び／又はブロック図を参照して、本明細書において説明される。フローチャート図及び／又はブロック図の各ブロック、及びフローチャート図及び／又はブロック図内のブロックの組み合わせは、コンピュータ・プログラム命令により実装できることが理解されるであろう。これらのコンピュータ・プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロック内で指定された機能／動作を実装する手段を作成するようにすることができる。
【００８４】
これらのコンピュータ・プログラム命令を、特定の方式で機能するようにコンピュータ、他のプログラム可能データ処理装置、又は他のデバイスに指示することができるコンピュータ可読媒体内に格納して、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャート及び／又はブロック図の１つ又は複数のブロック内で指定された機能／動作を実装する命令を含む製品を製造するようにすることもできる。
【００８５】
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイスにロードし、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で実行させて、コンピュータ実施プロセスを生成し、それにより、コンピュータ又は他のプログラム可能データ処理装置上で実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロック内で指定された機能／動作を実装するプロセスを提供するようにすることもできる。
【００８６】
図面内のフローチャート及びブロック図は、本発明の様々な実施形態によるシステム、方法及びコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能及び動作を示す。この点に関して、フローチャート又はブロック図中の各ブロックは、指定された論理機能を実装するための１つ又は複数の実行可能命令を含むモジュール、セグメント、又はコードの一部を表す。また、いくつかの代替的な実装においては、ブロック内に記された機能は、その図に記された順序とは異なる順序で行われる場合があることに留意されたい。例えば、連続して示された２つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又は、ブロックがときには逆順で実行されることもある。また、ブロック図及び／又はフローチャート図の各ブロック、及び、ブロック図及び／又はフローチャート図内のブロックの組み合わせは、指定された機能又は動作を行う専用ハードウェアベースのシステムによって実装することも、又は、専用ハードウェアとコンピュータ命令との組み合わせによって実装することもできることにも留意されたい。
【図１】
2014056573.tif 000006
【図２】
2014056573.tif 000007
【図３】
2014056573.tif 000008
【図４】
2014056573.tif 000009
【図５】
2014056573.tif 000010
【図６】
2014056573.tif 000011
【図７】
2014056573.tif 000012
【図８】
2014056573.tif 000013