(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】リスク許容度レーティングを用いた分布分析に基づくモデル劣化の警告
(51)【国際特許分類】
G06F 11/34 20060101AFI20241016BHJP
G06Q 10/0635 20230101ALI20241016BHJP
【FI】
G06F11/34 199
G06Q10/0635
(21)【出願番号】P 2022527779
(86)(22)【出願日】2020-10-12
(86)【国際出願番号】 IB2020059564
(87)【国際公開番号】W WO2021094852
(87)【国際公開日】2021-05-20
【審査請求日】2023-03-24
(32)【優先日】2019-11-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】サルケルド,イライザ
(72)【発明者】
【氏名】ヘイズ,シャナ
(72)【発明者】
【氏名】ワン,ウェイチェン
(72)【発明者】
【氏名】ルー,ルーシー
【審査官】坂庭 剛史
(56)【参考文献】
【文献】特開2001-109733(JP,A)
【文献】特開2007-255198(JP,A)
【文献】米国特許出願公開第2018/0348717(US,A1)
【文献】特開2019-079214(JP,A)
【文献】田辺 剛、井口 守,ポンコツAIシステム回避法,日経SYSTEMS,日本,日経BP社,2018年09月26日,第306号,pp.42-49,ISSN 1881-1620
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/34
G06Q 10/0635
(57)【特許請求の範囲】
【請求項1】
処理デバイスと、前記処理デバイスによって実行される命令を含むメモリとを含むデータ処理システムにおける分析モデル劣化を警告するためのコンピュータ実装方法であって、
分析モデルの劣化を警告するためのリスク許容度レーティングを受信するステップと、
前記処理デバイスによって、前記リスク許容度レーティングに基づき、モデル・メトリックに対する閾値を決定するステップであって、前記モデル・メトリックは、前記分析モデルに関連付けられたパラメータの尺度である、決定するステップと、
前記処理デバイスによって、前記モデル・メトリックに対する前記閾値およびモデル・メトリック値を用いて前記分析モデルの劣化を監視するステップと、
前記処理デバイスによって、前記分析モデルを監視することに基づいて前記分析モデルのモデル劣化を警告するステップと
を含む、方法。
【請求項2】
前記分析モデルを監視するステップは、
前記処理デバイスによって、健全な分析モデルの前記モデル・メトリックについての正規分布を決定するステップと、
前記モデル・メトリックに対する前記モデル・メトリック値を受信するステップと、
前記処理デバイスによって、前記モデル・メトリック値を前記正規分布と比較するステップと
を含む、請求項1に記載の方法。
【請求項3】
前記モデル・メトリック値を前記モデル・メトリック値の前記正規分布と比較するステップは、前記モデル・メトリック値の偏差を前記閾値と比較するステップを含む、請求項2に記載の方法。
【請求項4】
前記閾値は、前記正規分布の標準偏差の数である、請求項3に記載の方法。
【請求項5】
前記方法は、さらに、
前記偏差が前記閾値を超える場合にイベントにフラグを立てるステップ
を含む、請求項3に記載の方法。
【請求項6】
前記方法は、複数のリスク許容度レーティングの選択肢をエンドユーザ・デバイスに提供するステップをさらに含み、前記リスク許容度レーティングを受信するステップは、前記リスク許容度レーティングの選択肢のうちの1つの選択を前記エンドユーザ・デバイスから受信するステップを含む、請求項1~5のいずれか1項に記載の方法。
【請求項7】
前記リスク許容度レーティングを受信するステップは、前記分析モデルに関連付けられるエンティティの特性に基づいてレーティングを決定するステップを含む、請求項1~
5のいずれか1項に記載の方法。
【請求項8】
前記リスク許容度レーティングを受信するステップは、前記分析モデル
が検出するよう設計されたイベントに応じてレーティングを決定するステップを含む、請求項1~
5のいずれか1項に記載の方法。
【請求項9】
処理デバイスと、モデル劣化を警告するために前記処理デバイスによって実行される命令を含むメモリとを含む検出モデリング・システムであって、前記検出モデリング・システムは、
分析モデルの劣化を警告するためのリスク許容度レーティングを受信し、
前記処理デバイスによって、前記リスク許容度レーティングに基づき、モデル・メトリックであって、前記分析モデルに関連付けられたパラメータの尺度である、前記モデル・メトリックに対する閾値を決定し、
前記処理デバイスによって、前記モデル・メトリックに対する前記閾値およびモデル・メトリック値を用いて前記分析モデルの劣化を監視し、
前記処理デバイスによって、前記分析モデルの監視することに基づいて前記分析モデルのモデル劣化を警告する
ように構成された分布分析モジュールを含む、検出モデリング・システム。
【請求項10】
前記分析モデルを監視することは、
前記処理デバイスによって、健全な分析モデルの前記モデル・メトリックについての正規分布を決定することと、
前記モデル・メトリックに対する前記モデル・メトリック値を受信することと、
前記処理デバイスによって、前記モデル・メトリック値を前記正規分布と比較することと
を含む、請求項9に記載の検出モデリング・システム。
【請求項11】
前記モデル・メトリック値を前記モデル・メトリック値の前記正規分布と比較することは、前記モデル・メトリック値の偏差を前記閾値と比較することを含む、請求項10に記載の検出モデリング・システム。
【請求項12】
前記閾値は、前記正規分布の標準偏差の数である、請求項11に記載の検出モデリング・システム。
【請求項13】
前記偏差が前記閾値を超える場合にイベントにフラグを立てることをさらに含む、請求項11に記載の検出モデリング・システム。
【請求項14】
検出モデリング・システムが、複数のリスク許容度レーティングの選択肢をエンドユーザ・デバイスに提供することをさらに含み、前記リスク許容度レーティングを受信することは、前記リスク許容度レーティングの選択肢のうちの1つの選択を前記エンドユーザ・デバイスから受信することを含む、請求項9~13のいずれか1項に記載の検出モデリング・システム。
【請求項15】
前記リスク許容度レーティングを受信することは、前記分析モデルに関連付けられるエンティティの特性に基づいてレーティングを決定することを含む、請求項9~
13のいずれか1項に記載の検出モデリング・システム。
【請求項16】
前記リスク許容度レーティングを受信することは、前記分析モデル
が検出するよう設計されたイベントに応じてレーティングを決定することを含む、請求項9~
13のいずれか1項に記載の検出モデリング・システム。
【請求項17】
コンピュータ・プログラムであって、コンピュータに、請求項1~8のいずれか1項に記載の方法を実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分析モデルの健全性を評価するためのシステムに関し、より詳細には、分布分析に基づき、また、リスク許容度レーティングを用いて警告閾値を計算することに基づく、モデル劣化を警告するシステムおよび方法に関する。
【背景技術】
【0002】
イベント検出のための分析モデルは、ある範囲の分野および産業にとって重要である。例えば、種々の分析モデルが、銀行詐欺を検出するため、規制遵守を支援するため、他の多くの複雑なデータ駆動型の問題のために使用される。多くの分野では、正確で適時なイベント検出のため最新のモデルを必要とする。いくつかの分野、例えば、多くのタイプの不正では、第三者エージェントが、現在の分析モデルによる検出を回避するために積極的に活動している。検出モデリングの一つの態様は、いつモデルが劣化し、置換または更新されるべきであるかを決定することである。
【発明の概要】
【0003】
本発明の一実施形態は、エンティティ解決を実行するためのコンピュータ実装方法に関する。この方法は、処理デバイスによってステップを実行することを含み、これらのステップは、分析モデルの劣化を警告するためのリスク許容度レーティングを受信するステップと、リスク許容度レーティングに基づき、モデル・メトリックに対する閾値を決定するステップとを含む。モデル・メトリックは、分析モデルに関連付けられたパラメータの尺度であってよい。方法は、また、モデル・メトリックに対する閾値およびモデル・メトリック値を用いて分析モデルの劣化を監視するステップと、分析モデルを監視することに基づいて分析モデルのモデル劣化を警告するステップとを含んでもよい。
【0004】
一実施形態においては、本発明は、検出モデリング・システムに関する。検出モデリング・システムは、処理デバイス、メモリおよび分布分析モジュールを含んでもよい。分布分析モジュールは、分析モデルの劣化を警告するためのリスク許容度レーティングを受信し、リスク許容度レーティングに基づき、モデル・メトリックに対する閾値を決定してもよい。モデル・メトリックは、分析モデルに関連付けられたパラメータの尺度であってよい。分布分析モジュールは、また、モデル・メトリックに対する閾値およびモデル・メトリック値を用いて分析モデルの劣化を監視し、分析モデルの監視することに基づいて分析モデルのモデル劣化を警告してもよい。
【0005】
本発明のさらなる特徴および利点は、添付図面を参照して進める例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【0006】
本発明の上記および他の側面は、以下の詳細な説明から、添付の図面と関連して読まれた場合に、最もよく理解される。本発明を説明するために、現在好適である実施形態が図面に示されているが、しかしながら、本発明は、開示された特定の実施形態に限定されるものではないことを理解されたい。
【図面の簡単な説明】
【0007】
【
図1】サービス・プロバイダ・システムのブロック図。
【
図2】実施形態が実装され得るデータ処理システムのブロック図。
【
図4】分布分析を通して分析モデルを評価する際に用いられ得るモデル・メトリックの正規分布を示す。
【
図5】生存分析を通して分析モデルを評価する際に用いられ得る生存分析テーブルを示す。
【
図6】分析モデルを評価することへのアンサンブル・アプロ―チを示す。
【
図7】分布分析に基づいてモデル劣化を警告する処理のフローチャート。
【
図8】分布分析に基づいてモデル劣化を警告する他の処理のフローチャート。
【発明を実施するための形態】
【0008】
本説明および特許請求の範囲は、例示的な実施形態の特定の特徴および要素に関して、用語「a」、「~の少なくとも1つ」および「~の1または複数」を使用する可能性がある。これらの用語および句は、特定の例示的な実施形態中に含まれる特定の特徴または要素の少なくとも1つが存在することを意図しているが、2以上が存在してもよいことに理解されたい。すなわち、これらの用語/句は、説明または特許請求の範囲を単一の特徴/要素に限定することを意図するものではなく、複数のこのような特徴/要素が存在することを必要とすることを意図するものでもない。むしろ、これらの用語/句は、複数のこのような特徴/要素が説明および特許請求の範囲内にある可能性を有しながら、少なくとも単一の特徴/要素を要求するだけである。
【0009】
加えて、以下の説明は、例示的な実施形態の例示的な実装をさらに説明し、例示的な実施形態のメカニズムの理解を助けるために、例示的な実施形態の種々の要素について複数の種々の例を使用することを理解されるべきである。これらの例は、非限定的であり、例示の実施形態のメカニズムを実装するための潜在的な様々な可能性を網羅的することを意図するものではない。当業者には、本説明に照らせば、本発明の範囲から逸脱することなく、本明細書に提供される例に加えてまたはその代わりに利用され得る、これらの種々の要素についての他の多くの代替実装が存在することが明らかであろう。
【0010】
本発明は、システム、方法もしくはコンピュータ・プログラム製品またはそれらの組み合わせであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の側面を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体(複数の媒体)を含んでもよい。
【0011】
コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持し格納する有形のデバイスであってよい。コンピュータ可読ストレージ媒体は、例えば、これに限定されるものではないが、電子的ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたは上記の任意の適切な組み合わせであってよい。コンピュータ可読ストレージ媒体のより具体的な例示の非網羅的なリストとしては、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能プログラマブル・リード・オンリー・メモリ(EPROMまたはフラッシュメモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・オンリー・メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリースティック、フロッピー(登録商標)ディスク、パンチカードまたは記録された命令を有する溝内の隆起構造のような機械的エンコードされたデバイス、および上記の任意の適切な組み合わせが含まれる。コンピュータ可読ストレージ媒体は、本明細書で使用されるように、電波、自由伝搬する電磁波、導波路または他の伝送媒体を伝搬する電磁波(たとえば、ファイバ光ケーブルを通過する光パルス)または、ワイヤを通して伝送される電気信号のような、それ自体が一時的な信号として解釈されるものではない。
【0012】
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピュータ/処理デバイスに、または、例えばインターネット、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)もしくは無線ネットワークまたはこれらの組み合わせといったネットワークを介して外部コンピュータまたは外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジサーバまたはこれらの組み合わせを含んでもよい。各コンピュータ/処理デバイスにおけるネットワーク・アダプタ・カードまたはネットワーク・インタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。
【0013】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、または、1以上のプログラミング言語の任意の組み合わせで書かれたソース・コードあるいはオブジェクト・コードであってよく、1以上のプログラミング言語は、Java(登録商標)、Smalltalk(登録商標)、C++またはこれらに類するもなどの従来型のオブジェクト指向言語、Cプログラミング言語または類似のプログラミング言語などの手続型言語を含む。コンピュータ可読プログラム命令は、スタンド・アローンのソフトウェア・パッケージとして、全体としてユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上かつ部分的に遠隔のコンピュータ上で、または、完全に遠隔のコンピュータまたはサーバ上で実行されてもよい。後者のシナリオでは、遠隔のコンピュータは、ユーザのコンピュータに、LANまたはWANを含む任意のタイプのネットワークを通じて接続されてもよく、あるいは接続は、(例えば、インターネット・サービス・プロバイダを用いてインターネットを通じて)外部コンピュータになされてもよい。いくつかの実施形態においては、電気的回路は、本発明の側面を実行するために、コンピュータ可読プログラム命令の状態情報を利用して、電気的回路を個別化することによって、コンピュータ可読プログラム命令を実行してもよく、この電気的回路は、例えば、プログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む。
【0014】
本発明の側面は、本明細書において、本発明の実施形態に従った方法、装置(システム)およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照しながら、説明される。フローチャート図もしくはブロック図またはその両方の各ブロック、および、フローチャート図もしくはブロック図またはその両方における複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装されてもよいことが理解されよう。
【0015】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、特定用途コンピュータのプロセッサまたは他のプログラマブル・データ処理装置に提供され、コンピュータのプロセッサまたは他のプログラマブル・データ処理装置を介して実行される命令が、フローチャート図もしくはブロックまたはその両方のブロックまたは複数のブロックにおいて特定される機能/作用を実装するための手段を作成するように、マシンを生成する。これらのコンピュータ可読プログラム命令は、また、コンピュータ、プログラマブル・データ処理装置もしくは他のデバイスまたはこれらの組み合わせに特定のやり方で機能するよう指示できるコンピュータ可読ストレージ媒体に格納され、それに格納された命令を有するコンピュータ可読ストレージ媒体に、フローチャートもしくはブロックまたはその両方のブロックまたは複数のブロックで特定される機能/作用の側面を実装する命令を含む製品が含まれるようにする。
【0016】
コンピュータ可読プログラム命令は、また、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされ、コンピュータ、他のプログラマブル・データ処理装置または他のデバイス上で一連の動作ステップを実行させて、コンピュータ、他のプログラマブル・データ処理装置または他のデバイス上で実行される命令が、フローチャートもしくはブロックまたはその両方のブロックまたは複数のブロックで特定される機能/作用の側面を実装するように、コンピュータ実装処理を生成することもできる。
【0017】
本発明の側面が、本発明の実施形態に従う、方法、装置(システム)およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照して説明される。フローチャート図もしくはブロック図またはその両方の各ブロックおよびフローチャート図もしくはブロック図またはその両方における複数のブロックの組み合わせは、コンピュータ読み取り可能なプログラム命令によって実現することができることが理解されよう。
【0018】
図面におけるフローチャートおよびブロック図は、本発明の種々の実施形態に従ったシステム、方法およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能性および動作を示す。この点に関して、フローチャートまたはブロック図の各ブロックは、特定の論理機能を実装するための1以上の実行可能な命令を含む、モジュール、セグメントまたは命令の部分を表し得る。いくつかの代替の実装では、ブロックにおいて言及された機能は、図面に示された順序から外れて生じる可能性がある。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行されてもよいし、あるいは、複数のブロックが、関与する機能性に応じて逆の順序で実行されてもよい。ブロック図もしくはフローチャート図またはその両方の各ブロックおよびブロック図もしくはフローチャート図またはその両方の複数のブロックの組み合わせが、特定の機能または作用を実行し、または、特別な目的のハードウェアおよびコンピュータ命令の組み合わせを実施する、特定目的ハードウェアベースのシステムによって実装されてもよいことに留意されたい。
【0019】
概観として、コグニティブ・システムは、ハードウェアもしくはソフトウェア・ロジック(その上でソフトウェアが実行するハードウェア・ロジックと組み合わせて)またはその両方で構成され、人間の認知機能をエミュレートするように構成された特殊なコンピュータ・システムまたはコンピュータ・システムのセットである。これらのコグニティブ・システムは、人間のような特性を、概念を伝達することおよび操作することに適用し、これは、デジタル・コンピューティングの固有の強さと組み合わされると、高精度かつ大規模スケールでレリジエンスに問題を解決することができる。IBM(登録商標)Watson(登録商標)は、人間よりもはるかに高速で、またより大規模なスケールで、人間のような精度で、人間が可読な言語を処理し、テキスト・パッセージ間の推論を識別することができる、1つのこのようなコグニティブ・システムの一例である。概して、このようなコグニティブ・システムは、以下の機能を実行することができる:
【0020】
【0021】
本明細書の実施形態は、いつ分析モデルが劣化し、置換されるべきかを決定するためのシステムに関する。本明細書で使用されるように、個々の「ローカル・ノード」は、個人または法人のようなエンドユーザによってインストールされたソフトウェアもしくはソフトウェアを実行するように構成された関連のハードウェア・コンポーネントまたはその両方を参照する。いくつかの実施形態においては、ローカル・ノードは、1つのコンピュータ・システムを含む。いくつかの実施形態においては、ローカル・ノードは、エンドユーザによって制御される複数のコンピュータ・システムまたはサーバを含む。いくつかの実施形態においては、システム内の各ローカル・ノードは、そのローカル・ノードに特有の現在の分析モデルのセットを使用する。いくつかの実施形態においては、システム内の各ローカル・ノードは、1または複数の分析モデルによって生成されたシステム・データにアクセスし、分析する。このシステム・データは、各ローカル・ノードに特有であり、機微なまたは機密の情報を含む可能性がある。
【0022】
本明細書で使用されるように、個々の「検出モデル」、「分析モデル」または単に「モデル」は、データ分析技術を使用してあるイベントを検出するように設計されたソフトウェア・アルゴリズムである。いくつかの実施形態においては、分析モデルは、データ異常(例外,data anomaly)を検出する。いくつかの実施形態においては、分析モデルは、不正イベントを検出する。いくつかの実施形態においては、分析モデルによって使用されるデータ分析技術には、これらに限定されるものではないが、データ前処理技術、1または複数の統計パラメータの計算、分類またはグループに基づく統計比率、確率の計算、データクラスタリングおよびマッチングなどの分類技術、回帰分析およびギャップ分析が含まれる。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、1または複数の分析モデルを含む。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、1または複数の分析モデルおよび決定論的規則を含む。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、不正検出のための1または複数の分析モデルを含む。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、規則遵守または非遵守についての1または複数の分析モデルを含む。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、不正検出のための1または複数のモデルおよび決定論的規則を含む。いくつかの実施形態においては、ローカル・ノードのソフトウェアは、規則遵守または非遵守についての1または複数のモデルおよび決定論的規則を含む。
【0023】
いくつかの実施形態においては、任意のローカル・ノードを含む更新システムは、分析モデルを使用する任意のソフトウェアシステムのモデル更新を作成し、プッシュするスタンドアロン・システムである。いくつかの実施形態においては、更新システムは、それ自体、不正検出のための分析システムなどのより大きな分析システムのコンポーネントまたはサブ・システムである。
【0024】
図1は、例示的なサービス・プロバイダ・システム100の図である。サービス・プロバイダ・システム100は、検出モデリング・システム110、1または複数のデータ・ソース120およびエンドユーザ・デバイス130を含み得る。ネットワーク140が、検出モデリング・システム110、1または複数のデータ・ソース120もしくはエンドユーザ・デバイス130またはその組み合わせを接続してもよい。
【0025】
検出モデリング・システム110は、バックエンド・サーバのようなコンピューティング・デバイスであってもよい。検出モデリング・システム110は、いつ検出モデルが置換されるべきかを判定するためのモデル劣化検出の実装のような、データ分析機能およびその実際的な応用を可能にするコンポーネントを含んでもよい。
【0026】
1または複数のデータ・ソース120は、検出モデリング・システム110にデータを供給するように構成されたコンピューティング・デバイスもしくはストレージ・デバイスまたはその両方であってもよい。1つの例では、1または複数のデータ・ソース120は、その上で1または複数の検出モデルが動作するデータで埋められ得るデータベース123を含む。
【0027】
エンドユーザ・デバイス130は、コンピューティング・デバイス(例えば、デスクトップまたはラップトップ・コンピュータ、モバイル・デバイスなど)であってよい。エンドユーザ・デバイス130は、検出モデリング・システム110と通信して、情報を受信し、検出モデルの使用および実装に関連するフィードバックを提供してもよい。いくつかの実施形態においては、エンドユーザ・デバイス130は、1または複数のデータ・ソース(複数可)120から格納された顧客データを対象とした不正検出モデルのような検出モデルを受信し、生成し、デプロイし、または他の方法で操作するように構成されたモデル・マネージャ135を含んでもよい。
【0028】
ネットワーク140は、ローカルまたはグローバル・ネットワークであってもよく、有線もしくは無線またはその両方のコンポーネントおよび機能を含んでもよく、これらは、サービス・プロバイダ・システム100のコンポーネントのための内部もしくは外部またはその両方の通信を可能とする。ネットワーク140は、インターネットによって具現化されてもよく、少なくとも部分的にクラウド・サービスを介して提供されてもよく、もしくは、サービス・プロバイダ・システム100のシステムおよびコンポーネントへのデータ転送およびサービス・プロバイダ・システム100のシステムおよびコンポーネントからのデータ転送を可能にする1または複数の通信デバイスまたはシステムを含んでもよく、あるいはこれらの組み合わせがなされてもよい。
【0029】
いくつかの例示的な実施形態によれば、検出モデリング・システム110、データ・ソース(複数可)120、エンドユーザ・デバイス130または関連するコンポーネントは、サービス・プロバイダ・システム100または関連するコンポーネントを実装するため、特殊なハードウェア上で実装されるロジック、ハードウェア上で実行されるソフトウェア、特殊なハードウェアおよびハードウェア上で実行されるソフトウェアの任意の組み合わせを含む。いくつかの例示的な実施形態においては、検出モデリング・システム110またはそのコンポーネントのいずれかは、以下に説明する例示的な実施形態のメカニズムによって拡張された、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションから利用可能なIBM(登録商標)Watson(登録商標)システムであってもよいし、含んでもよい。
【0030】
図2は、例示的な実施形態の側面が実装される例示的のデータ処理システム200のブロック図である。データ処理システム200は、本発明の例示的な実施形態についてのプロセスを実装するコンピュータ使用可能なコードまたは命令が配置されるコンピュータの一例である。一実施形態において、
図2は、本明細書で説明されるサービス・プロバイダ・システム100の側面の少なくとも一部を実装する検出モデリング・システム110を表す。
【0031】
図示の例では、データ処理システム200は、ノース・ブリッジおよびメモリ・コントローラ・ハブ(NB/MCH)201およびサウス・ブリッジおよび入力/出力(I/O)コントローラ・ハブ(SB/ICH)202を含む、ハブ・アーキテクチャを採用する。処理ユニット203、メイン・メモリ204およびグラフィック・プロセッサ205は、NB/MCH201に接続されてもよい。グラフィック・プロセッサ205は、アクセラレーテッド・グラフィックス・ポート(AGP)を介してNB/MCH201に接続されてもよい。
【0032】
図示の例では、ネットワーク・アダプタ206は、SB/ICH202に接続する。オーディオ・アダプタ207、キーボードおよびマウス・アダプタ208、モデム209、読み出し専用メモリ(ROM)210、ハード・ディスク・ドライブ(HDD)211、光学ドライブ(CDまたはDVD)212、ユニバーサル・シリアル・バス(USB)ポートおよび他の通信ポート213、PCI/PCIeデバイス214は、バス・システム216を介して、SB/ICH202に接続されてもよい。PCI/PCIeデバイス214は、イーサネット・アダプタ、アドイン・カードおよびノートブック・コンピュータ用のPCカードを含んでもよい。ROM210は、例えば、フラッシュの基本入出力システム(BIOS)であってもよい。HDD211および光学ドライブ212は、インテグレーテッド・ドライブ・エレクトロニクス(IDE)またはシリアル・アドバンスド・テクノロジー・アタッチメント(SATA)インタフェースを使用してもよい。スーパI/O(SIO)デバイス215がSB/ICH202に接続されてもよい。
【0033】
オペレーティング・システムは、処理ユニット203上で実行されてもよい。オペレーティング・システムは、データ処理システム200内の種々のコンポーネントの制御を調整し、かつ、提供することができる。クライアントとして、オペレーティング・システムは、市販のオペレーティング・システムであってもよい。Java(登録商標)プログラミング・システムのようなオブジェクト指向プログラミング・システムは、オペレーティング・システムと組み合わせて実行し、データ処理システム200上で実行されるオブジェクト指向プログラムまたはアプリケーションからオペレーティング・システムへの呼び出しを提供することができる。サーバとして、データ処理システム200は、AIX(Advanced Interactive eXecutive)オペレーティング・システムまたはLinux(登録商標)オペレーティング・システムを実行するIBM(登録商標)eServer(登録商標)System p(登録商標)であってもよい。データ処理システム200は、処理ユニット203内に複数のプロセッサを含み得る対称マルチ・プロセッサ(SMP)システムであってもよい。あるいは、単一のプロセッサ・システムが採用されてもよい。
【0034】
オペレーティング・システム、オブジェクト指向プログラミング・システム、アプリケーションまたはプログラムのための命令は、HDD211のようなストレージ・デバイス上に配置され、処理ユニット203による実行のためにメイン・メモリ204にロードされる。ウェブサイト・ナビゲーション・システムの実施形態のためのプロセスが、例えば、メイン・メモリ204、ROM210のようなメモリまたは1または複数の周辺デバイスに配置され得るコンピュータ使用可能なプログラム・コードを使用して、処理ユニット203によって実行されてもよい。
【0035】
バス・システム216は、1または複数のバスで構成されてもよい。バス・システム216は、ファブリックまたはアーキテクチャに取り付けられた種々のコンポーネントまたはデバイス間でデータの転送を提供することができる任意のタイプの通信ファブリックまたはアーキテクチャを使用して実装されてもよい。モデム209またはネットワーク・アダプタ206のような通信ユニットは、データを送信および受信するために使用することができる1または複数のデバイスを含んでもよい。
【0036】
当業者は、実装に応じて
図2に示されたハードウェアが様々であり得ることを理解するであろう。例えば、データ処理システム200は、検出モデリング・システム110のいくつかの実施形態に直接含まれないであろう、いくつかのコンポーネントを含む。しかしながら、検出モデリング・システム110が、開示された実施形態による処理方法およびステップを実行するために、データ処理システム200のコンポーネントおよび構成のうちの1または複数を含み得ることを理解されたい。
【0037】
さらに、図示したハードウェアに加えて、またはその代わりに、フラッシュメモリや同等な不揮発性メモリまたは光ディスク・ドライブのような他の内部ハードウェアまたは周辺デバイスが使用されてもよい。さらに、データ処理システム200は、これらに限定されないが、クライアント・コンピューティング・デバイス、サーバ・コンピューティング・デバイス、タブレット・コンピュータ、ラップトップ・コンピュータ、電話または他の通信デバイス、パーソナル・デジタル・アシスタントなどを含む、多数の種々のデータ処理システムの形態をとってもよい。本質的には、データ処理システム200は、アーキテクチャ上の制約なく、任意の既知のまたは今後開発されるデータ処理システムであってもよい。
【0038】
図3は、検出モデリング・システム110の例示的な実施形態を示す。検出モデリング・システム110は、分布分析モジュール310と、生存分析(survival analysis)モジュール320と、アンサンブル(ensemble)モジュール330と、評価エンジン340とを含む。検出モデリング・システム110のこれらのサブ・システムは、単一のデバイスのコンポーネントであってもよいし、互いに(例えばネットワーク140を介して)接続された別個のデバイスであってもよい。いくつかの実施形態においては、検出モデリング・システム110は、1または複数のデータ・リポジトリ350をさらに含んでもよいし、もしくはこれらに接続されてもよいし、またはその両方であってもよい。
【0039】
分布分析モジュール310は、1または複数のモデル・メトリックに基づいて分析モデルの劣化を検出するために分布分析(distribution analysis)を実行するように構成されたハードウェアもしくはソフトウェアまたはその両方のシステムであってもよい。生存分析モジュール320は、類似モデルの統計的分析に基づいて分析モデルの劣化を検出するために生存分析を実行するように構成されたハードウェアもしくはソフトウェアまたはその両方のシステムであってもよい。アンサンブル・モジュール330は、検出モデルを評価するために、分布分析モジュール310および生存分析モジュール320の両方の出力を使用するように構成されたハードウェアもしくはソフトウェアまたはその両方のシステムであってもよい。評価エンジン340は、分布分析モジュール310、生存分析モジュール320およびアンサンブル・モジュール330の出力を使用して、出力結果からのフィードバックに基づいてそれぞれのモジュールを改善するために構成される。
【0040】
例示的な実施形態においては、分布分析モジュール310は、1または複数の分析モデルについて入力データに関連して統計的分析を実行するように構成される。例えば、分布分析モジュール310は、分析モデルに関連して1または複数の健全性メトリックを計算するように構成されてもよい。メトリックの例には、感度メトリック、精度メトリック、寿命メトリック、特異度などが含まれる。より具体的には、メトリックの例には、対数損失、真陽性率(感度)、偽陽性率、真陰性率(特異度)、F1スコア、適合率、再現率、平均絶対誤差、平均二乗誤差などが含まれる。分布分析モジュール310は、さらに、複数の異なる分析モデルを横断したメトリック測定の結果を使用して、
図4に示す近似正規分布400のような分布を作成するように構成される。分布400は、所与のメトリックについてのメトリックの結果の範囲を表す。分布400は、他の分析モデルと比較してメトリックが許容される程度を示す。例えば、分布400は、健全性および寿命の異なる段階での複数の分析モデルを横断して測定された感度メトリックの分布を表してもよい。
【0041】
分布分析モジュール310は、メトリック結果の分布上の位置に基づいて分析モデルの健全性の値を決定するためにメトリックのデータおよび分布を使用するようにさらに構成される。例えば、分布400が感度メトリックを表す場合、分布分析モジュール310は、分析モデルが使用中に信頼されることが許容可能な感度偏差のレベル(分布400に関連する標準偏差の数)を決定するように構成される。別の例では、分布分析モジュール310は、現在の分析モデルを評価する際に使用するために、1または複数のデータ・ソースもしくはユーザまたはその両方からの入力とともに評価エンジン340に結果を送信するように構成される。
【0042】
生存分析モジュール320は、分析モデルの性能を測定するための追加または代替のツールとして生存分析を使用するように構成される。生存分析モジュール320は、例えば、モデルがトレーニングされてからの時間が与えられて、その時間までに再トレーニングされる必要がない確率を決定するように構成されてもよい。逆に、生存分析モジュール320は、モデルがトレーニングされてからの時間が与えられて、それが故障する(再トレーニングを必要とする)確率を決定するように構成されてもよい。生存分析モジュール320の別の機能は、モデルが再トレーニングを必要とする確率が50%となるタイムスタンプを決定することであってもよい。
【0043】
生存分析モジュール320は、生存分析を実行するために、分布分析モジュール310からの情報を使用するように構成されてもよい。例えば、分布分析モジュール310は、いつモデルが故障したかを決定するために使用されてもよい。生存分析モジュール320は、次いで、(分布分析モジュールに基づく)トレーニングしてから「故障」までの時間を使用して、モデルの「半減期」または期待寿命を決定してもよい。生存分析モジュール320は、カプラン-マイヤー(Kaplan-Meier)推定値のようなメトリックを計算し、生存曲線、ハザード曲線を生成し、半減期(例えば、生存確率が0.5)を計算するように構成されてもよい。
図5は、生存分析モジュール320によって追跡されて、生存分析を実行する際に使用するための1または複数の分析モデル(例えば、モデルA~C)のイベントまでの時間(time to event)および故障状態を判定するための生存行列(survival matrix)の一例である。
【0044】
アンサンブル・モジュール330は、分布分析モジュール310および生存分析モジュール320の結果を組み合わせて、分析モデルの健全性を評価するための組み合わされたアプローチを利用するように構成されてもよい。
図6は、(いくつかの実施形態においては、分布分析モジュール310および生存分析モジュール320と組み合わせて)アンサンブル・モジュール330によって実行され得る組み合わせアプローチの視覚的フロー図である。いくつかの実施形態においては、アンサンブル・モジュール330は、分布分析モジュール610(分布分析モジュール310と同一または類似のものであってもよい)と、生存分析モジュール620(生存分析モジュール320と同一または類似のものであってもよい)とを含む。
【0045】
アンサンブル・モジュール330は、入力データ650およびモデル・メトリック660を使用して、指標スコア670を計算するように構成される。入力データ650は、行動統計学および人口統計学的な情報を含む顧客データもしくは取引データまたはその両方を含んでもよい。分布分析モジュール610は、入力データ650を受信し、ニューラル・ネットワークと組み合わせた統計的検定を用いて、統計的検定によって生成されたモデル・メトリックの分析に基づき、期待故障モデルを決定することができる。モデル・メトリック660は、分布分析モジュール610によって実行される統計的検定の結果であってもよい。これらのメトリック660は、生存分析のために生存分析モジュール620に供給されてもよい。例えば、メトリック660は、特定のモデルまたは特定のタイプ、クラスまたはカテゴリの分析モデルについて、「故障までの時間(time to failure)」を識別するメトリックの分布を含んでもよい。いくつかの実施形態においては、分布分析モジュール610は、入力データ分布がある程度変化したかどうかについての結果を得るために統計的仮説検定を実行してもよい。
【0046】
アンサンブル・モジュール330は、分布分析モジュール610および生存分析モジュール620の結果を受信し、結果を結合して指標スコア670を生成するベイズ・アンサンブル・エンジン680をさらに含んでもよい。例えば、ベイズ・アンサンブル・エンジン680は、分布分析および生存分析の結果に基づいて、分析モデルの健全性を示す0から1の範囲のスコア(モデルが再トレーニングを必要とする尤度(likelihood))を計算することができる。いくつかの実施形態においては、ベイズ・アンサンブル・エンジン680は、分布分析および生存分析の出力に対する重み付けされたアプローチを使用することができる。他の実施形態においては、ベイズ・アンサンブル・エンジン680は、多数決、平均重み付け、または出力の積み重ね(stacking)を使用して、指標スコア670を計算してもよい。指標スコア670は、モデルが再トレーニングされるべきか否かを決定するために使用されてもよい。
【0047】
開示された実施形態は、金融機関からのデータセットにおける不正挙動を識別するための検出モデルのような分析モデルの健全性を評価するためのいくつかのシステムおよび方法を提供する。分析モデルの健全性は、モデルが再トレーニングされるべき尤度の尺度であってよい。これらの選択肢には、分布分析、生存分析、並びに分布分析および生存分析の両方を用いたアンサンブル・アプローチが含まれる。
【0048】
開示された実施形態と整合して、サービス・プロバイダ・システム100は、ユーザが分析モデルを評価するための開示された方法の結果に基づいて配信される警告をカスタマイズすることを可能にする、対話型プログラムを実装してもよい。例えば、金融機関は、古い分析モデルを使用してリスクをとってもよい度合いに基づいてリスク許容値を提供することができる。サービス・プロバイダ・システム100は、リスク許容値を、モデルが置換/再訓練されるべきであることをモデルの健全性評価の出力が示すかどうかを判定するために使用される閾値に変換するように構成されてもよい。
【0049】
図7は、モデル・メトリックの分布分析に基づいてモデル劣化を警告するための例示的なプロセス700のフローチャートである。検出モデリング・システム110は、プロセス700の1または複数のステップを実行することができる。例えば、分布分析モジュール310は、いつモデルが劣化し、置換されるべきとなったかを検出するためにプロセス700を実行してもよい。いくつかの実施形態においては、分布分析モジュール610は、アンサンブル・アプローチの一部として、プロセス700の1または複数のステップを実行してもよい。
【0050】
ステップ710においては、分布分析モジュール310は、分布分析に含めるべきモデル・メトリックを選択することができる。これらのモデル・メトリックは、例えば、感度メトリック、精度メトリック、年齢メトリックなどを含むことができる。いくつかの実施形態において、ユーザがモデル・メトリックを選択してもよく、あるいは、モデル・メトリックが、ユーザプロファイルまたは評価すべきモデルのタイプに基づいて自動的に選択されてもよい。
【0051】
ステップ720においては、分布分析モジュール310は、モデル動作からモデル出力を受信してもよい。例えば、エンドユーザ・デバイス130のモデル・マネージャ135は、データ・ソース(複数可)120からのデータに基づいて分析モデル(例えば、金融機関用の不正モデル)を動作させ、検出モデリング・システム110に結果を提供し、そこで、それは分布分析モジュール310によって受信される。ステップ730においては、分布分析モジュール310は、選択されたモデル・メトリックおよびモデル動作からのモデル出力に基づいてモデル・メトリック結果を計算する。いくつかの実施形態においては、分布分析モジュール310は、エンドユーザ・デバイス130によるメトリック決定の後、エンドユーザ・デバイス130からモデル・メトリックを受信する。つまり、ステップ720において分布分析モジュール310によって受信される出力は、ステップ730の計算されたメトリックであってもよい。
【0052】
ステップ740においては、分布分析モジュール310は、選択された各モデル・メトリックに関連するメトリック分布を決定し、または他の方法で取得する。例えば、分布分析モジュール310は、選択された各モデル・メトリックについて、
図4に示す分布曲線400と同様のメトリック値の正規分布を決定する。分布分析モジュール310は、時間の期間にわたってメトリックを追跡し、必要に応じて結果を正規化することによって、メトリック分布を決定することができる。いくつかの実施形態においては、メトリック分布は、特定のメトリックについて、分析モデルまたはタイプ、カテゴリまたはクラスの分析モデルの履歴出力に基づいてもよい。いくつかの実施形態においては、メトリック分布は、開示される警告方法において使用するために十分なサンプル・サイズとみなし得る前に、データ・ポイントの閾値数を要求してもよい。
【0053】
ステップ750において、分布分析モジュール310は、新しいモデル・メトリック結果を、決定されたメトリック分布と比較するように構成される。例えば、分布分析モジュール310は、不正挙動を検出するように構成された分析モデルについて感度レーティングを受信してもよい。分布分析モジュール310は、感度レーティングが、同状況の不正検出モデルの感度レーティングについての関連する正規分布のどの範囲内に入るかを決定することができる。例えば、分布分析モジュール310は、所与の感度レーティングについて分布の平均値からの標準偏差を算出してもよい。
【0054】
ステップ760においては、分布分析モジュール310は、モデル劣化を警告するように構成される。例えば、分布分析モジュール310は、得られたメトリック値がこれらのメトリックの正規分布と比較した場合に許容範囲外であることを示す「イベント」のフラグを立てるように構成されてもよい。所与の例では、分布分析モジュール310は、感度レーティングの標準偏差を比較して、偏差が許容可能であるかどうかを判定することができる。例えば、分布分析モジュール310は、偏差を閾値と比較し、許容値を超える任意のメトリック値について警告を行うことができる。分布分析モジュール310は、特定の分析モデルが経時劣化により再トレーニングを必要とする可能性があることを示す「イベント」のフラグを立ててエンドユーザ・デバイス130に警告を提供するように構成されてもよい。
【0055】
いくつかの実施形態においては、フラグが立てられた「イベント」を使用して、格納された基準に基づいてモデル劣化を評価することができる。例えば、ある数のイベントが、モデルが再トレーニングを必要とする点まで劣化したことを示す可能性がある。いくつかの実施形態においては、分布分析モジュール310は、フラグが立てられた「イベント」を利用するモデル劣化式(model degradation equation)を用いて、モデルが再トレーニングまたは置換されるべき尤度を決定し、エンドユーザ・デバイス130またはサービス・プロバイダ・システム100の他のコンポーネントに警告を行うことができる。
【0056】
分布分析に基づき劣化を警告するための開示された方法700は、モデル・メトリックに基づいて、いつ分析モデルが劣化(例えば、十分に規則正しくその目的を達成することがもはやできないことから)したかを決定するアプローチを提供する。時間が経過すると、これらのモデル・メトリックは、どれだけ健全なモデルが動作することを期待できるかに関する情報を提供する。新しいメトリック値を正規分布と比較することによって、検出モデリング・システム110は、いつモデルが再トレーニングされるかまたは置き換えられる必要があるかを決定することができる。その結果として、サービス・プロバイダおよび顧客は、分析モデルの出力をより容易に信頼することができ、必要に応じてこれらが置換または再トレーニングされることを確信することができる。
【0057】
さらに、開示された実施形態は、カスタマイズ可能な閾値を分布分析に適用し、サービス・プロバイダ、顧客、モデルなどの特定のリスク・プロファイルにモデル劣化分析を適合させることができる。
図8は、このような適合された情報に基づいてモデル劣化を警告するための例示的なプロセス800のフローチャートである。分布分析モジュール310は、モデル劣化を警告するために、プロセス800の1または複数のステップを実行することができる。
【0058】
ステップ810においては、分布分析モジュール310は、カスタマイズ可能な検出システムをエンドユーザ・デバイス130に提供することができる。例えば、分布分析モジュール310は、金融機関のようなエンティティに関連付けられたエンドユーザ・デバイス130に分析モデルを提供することができる。分析モデルは、また、モデルの動作中にエンドユーザ・デバイス130にフィードバックを提供するカスタマイズ可能な警告システムを含むことができる。カスタマイズ可能な警告システムは、エンドユーザ・デバイス130が、受信された分析モデルに基づいてリスク許容度を提供することを可能してもよい。いくつかの例では、エンドユーザ・デバイス130は、ユーザによるリスク許容度レーティングの選択肢を提示することができる。他の例では、エンドユーザ・デバイス130は、エンティティ(事業者)のタイプ、エンティティのガイドライン、保険要件などのような、分析モデルに関連するエンティティの特性に基づいて、リスク許容度レーティングを決定することができる。
【0059】
ステップ820においては、分布分析モジュール310は、エンドユーザ・デバイス130からリスク許容度レーティングを受信することができる。リスク許容度レーティングは、エンドユーザ・デバイス130に関連するエンティティにとって許容可能なリスクの評価であってもよい。例えば、いくつかのエンティティは、モデル・メトリックの偏差に基づいて分析モデルが再トレーニングされる必要がある確率を考慮する場合に、より高い許容度を有する可能性がある。いくつかの実施形態においては、リスク許容度は、サービス・プロバイダに関連したエンドユーザについてのメンバシップ・レベルまたは料金構造と関係がある可能性がある。より高いリスク・モデル(例えば、不正挙動または犯罪を検出するモデル)に関連するエンティティは、より低いリスク・モデル(例えば、従業員または構成員のデータレコード内の整合性を検出するモデル)に関連するエンティティよりも低いリスク許容度を求めまたは要求する可能性がある。
【0060】
ステップ830においては、分布分析モジュール310は、受信されたリスク許容度に基づいてモデル・メトリックの閾値を計算するように構成される。例えば、リスク許容度レーティングが低い場合、これは、エンティティが古いモデルの使用に対してより安全な保護を選好することを示しているが、メトリック偏差に対する閾値は、より低いまたは狭い範囲内に設定されてもよい。逆に、エンティティが低リスクにあるかまたは低い優先度の位置づけにあるためリスク許容度レーティングが高い場合は、メトリック偏差に対する閾値は、より高いまたはより広い範囲内に設定されてもよい。メトリックの閾値は、モデルの健全性を評価するために使用される複数のモデル・メトリックについて計算されてもよい。
【0061】
ステップ840においては、分布分析モジュール310は、分析モデルについて個々のモデル監視を実行するように構成される。例えば、分布分析モジュール310は、プロセス700のステップを実行して、所与の分析モデルについて、モデル・メトリックをメトリック分布と比較するように構成されてもよい。監視プロセスは、モデル・メトリックの偏差を、ステップ830で計算された閾値と比較することを含んでもよい。このようにして、分布分析モジュール310は、モデルの動作中、いつカスタマイズされたリスク許容度に一致する偏差が発生したかを決定するように構成される。いくつかの実施形態においては、分布分析モジュール310は、フラグが立てられた「イベント」を使用するモデル劣化式を計算して、プロセス800で受信されたリスク許容度に基づいてモデル健全性を評価することができる。ステップ850においては、分布分析モジュール310は、イベントが発生した(例えば、モデル・メトリックが正規分布の平均から閾値を超えて逸脱した)ことをエンドユーザ・デバイス130(またはサービス・プロバイダ・システム100の他のコンポーネント)に警告するように構成される。
【0062】
プロセス800は、所定の程度に劣化する前にモデルを再トレーニングすることの重要性を識別するリスク許容度レーティングを含む種々の因子に応じて分析モデル評価をカスタマイズすることができる追加のプロセスを提供する。
【0063】
当業者は、本明細書に記載されたシステムおよび方法の任意のものを実行するために必要なハードウェアは、実装に依存して様々であり得ることを理解するであろう。図示のハードウェアに加えて、またはそれに代えて、フラッシュメモリや同等の不揮発性メモリ、または光学ディスク・ドライブのような他の内部ハードウェアまたは周辺デバイスを使用してもよい。さらに、本明細書に記載のシステムのいずれも、クライアント・コンピューティング・デバイス、サーバ・コンピューティング・デバイス、タブレット・コンピュータ、ラップトップ・コンピュータ、電信または他の通信デバイス、パーソナル・デジタル・アシスタントなどを含むがこれらに限定されない多数の異なるデータ処理システムの任意の形態をとることができる。本質的には、本明細書に記載されるシステムの任意のものは、アーキテクチャ上の制約なく、任意の既知のまたは今後開発されるデータ処理システムであってもよい。
【0064】
図面のシステムおよび方法は、排他的ではない。同一の目的を達成するために、本明細書で説明された実施形態の原理に従って、他のシステムおよびプロセスが導出されてもよい。ここに示され、また説明された実施形態および変形例は、例示の目的のみのためのものであることが理解されるべきである。実施形態の範囲から逸脱することなく、当業者によって現在の設計に対する変更が実装されてもよい。本明細書で説明されるように、種々のシステム、サブ・システム、エージェント、マネージャおよびプロセスは、ハードウェア・コンポーネント、ソフトウェア・コンポーネントもしくはこれらの組み合わせを使用して実装されてもよい。本願の如何なるクレーム要素も、要素が「~するための手段(means for)」という表現を使用して明示的に記載されていない限り、米国特許法第112条第6パラグラフの規定に基づいて解釈されるべきではない。
【0065】
本発明は例示の実施形態を参照して説明されたが、これに限定されるものではない。当業者であれば、本発明の好ましい実施形態に対して多数の変更および修正がなされてもよいことを理解し、また、当該変更および改変が、本発明の範囲から逸脱することなくなされ得ることを理解するであろう。したがって、添付の特許請求の範囲は、本発明の範囲内にある全ての等価な変形を包含するように解釈されることが意図される。