IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

<>
  • 特許-機械学習に基づくデータ・モニタリング 図1
  • 特許-機械学習に基づくデータ・モニタリング 図2A
  • 特許-機械学習に基づくデータ・モニタリング 図2B
  • 特許-機械学習に基づくデータ・モニタリング 図3A
  • 特許-機械学習に基づくデータ・モニタリング 図3B
  • 特許-機械学習に基づくデータ・モニタリング 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-30
(45)【発行日】2025-05-12
(54)【発明の名称】機械学習に基づくデータ・モニタリング
(51)【国際特許分類】
   G06F 16/21 20190101AFI20250501BHJP
【FI】
G06F16/21
【請求項の数】 12
(21)【出願番号】P 2022556221
(86)(22)【出願日】2021-02-24
(65)【公表番号】
(43)【公表日】2023-05-08
(86)【国際出願番号】 IB2021051533
(87)【国際公開番号】W WO2021191704
(87)【国際公開日】2021-09-30
【審査請求日】2023-07-21
(31)【優先権主張番号】16/832,215
(32)【優先日】2020-03-27
(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)【参考文献】
【文献】特開2015-011690(JP,A)
【文献】特開2017-122981(JP,A)
【文献】中国特許出願公開第107392319(CN,A)
【文献】米国特許出願公開第2019/0295003(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
(57)【特許請求の範囲】
【請求項1】
データ・トランザクションを実行し、機械学習(ML)モデルを使用して前記データ・トランザクションの特性を評価するように構成されているコンピュータ・システムに実装される方法であって、前記方法は、前記コンピュータ・システムによって、
前記データ・トランザクションのレコードの属性のうち、所定の属性に基づき、第1の分析ビンのセットを決定することであって、前記第1の分析ビンのセットは前記データ・トランザクションの前記レコードのうち前記所定の属性の値を有する前記レコードのセットであり、
前記第1の分析ビンのセットの分析ビンの各々について、前記分析ビンの各々に関連付けられた前記データ・トランザクションの前記レコードに基づき、前記コンピュータ・システムの全体的性能メトリックを計算することであって、前記全体的性能メトリックは、前記コンピュータ・システムによるトランザクション実行性能を示し、
前記第1の分析ビンのセットの前記分析ビンの1つまたは複数が少なくとも所定の最小数のレコードを有していないことに応答して、
前記第1の分析ビンのセットを再定義して第2の分析ビンのセットを決定することであって、前記少なくとも所定の最小数のレコードを有していない前記分析ビンを他の前記分析ビンと結合することを含む、前記第2の分析ビンのセットを決定することと、
前記第2の分析ビンのセットの分析ビンの各々について、当該分析ビンの各々に関連付けられた前記レコードに基づき、前記MLモデルの機械学習(ML)性能メトリックを計算することと、
前記第2の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを使用して、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを推定することと、
前記第1の分析ビンのセットの前記分析ビンの各々が少なくとも前記最小数のレコードを有していることに応答して、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを計算することと、
前記第1の分析ビンのセットにわたる、前記全体的性能メトリックと前記ML性能メトリックとの間の相関に基づいて、さらに実行されるデータ・トランザクションの前記全体的性能メトリックと前記ML性能メトリックとの間の正の相関を可能にするように、前記MLモデルを更新することと
を含む、方法。
【請求項2】
前記MLモデルを更新することは、前記第1の分析ビンのセットにわたる前記全体的性能メトリックと前記ML性能メトリックとの間の前記相関が負またはゼロの相関であることに応答して、前記特性の評価の組合せを可能にするための追加的なMLモデルを追加することを含む、請求項1に記載の方法。
【請求項3】
前記MLモデルを更新することは、前記第1の分析ビンのセットにわたる前記全体的性能メトリックと前記ML性能メトリックとの間の前記相関が正の相関であることに応答して、より大きな訓練データセットを使用して前記MLモデルを再訓練することによって前記MLモデルを改良することを含む、請求項1に記載の方法。
【請求項4】
前記属性は前記データ・トランザクションの発生時刻であり、
前記第1の分析ビンのセットの前記分析ビンの各々は時間間隔を表し、前記第2の分析ビンのセットの前記分析ビンは、前記第1の分析ビンのセットの時間的に連続する前記分析ビンのうちの2つ以上を結合することによって取得され、
前記推定することは、前記第2の分析ビンのセットの関数として前記ML性能メトリックの変動をモデリングすることによって実行され、
前記ML性能メトリックは、前記MLモデルを使用して計算される、請求項1ないし3のいずれかに記載の方法。
【請求項5】
前記モデリングすることは、前記第2の分析ビンのセットにわたって前記ML性能メトリックの分布を当てはめることを含む、請求項4に記載の方法。
【請求項6】
データ・トランザクションを実行し、機械学習(ML)モデルを使用して前記データ・トランザクションの特性を評価するように構成されているコンピュータ・システムに実装された方法であって、前記方法は、前記コンピュータ・システムによって、
前記データ・トランザクションのレコードの属性のうち、所定の複数の属性に基づき、第1の分析ビンのセットを決定することであって、前記第1の分析ビンのセットは、前記複数の属性にそれぞれ基づく複数のクラスタを含み、前記クラスタの各々は、前記データ・トランザクションの前記レコードのうち前記属性の値を有する前記レコードのセットを含む、前記第1の分析ビンのセットを決定することと、
前記第1の分析ビンのセットの分析ビンの各々について、前記分析ビンの各々に関連付けられた前記データ・トランザクションの前記レコードに基づき、前記コンピュータ・システムの全体的性能メトリックを計算することであって、前記全体的性能メトリックは、前記コンピュータ・システムによるトランザクション実行性能を示し、
前記第1の分析ビンのセットを再定義して第3の分析ビンのセットを決定することであって、関連する前記クラスタ間で互いに所定の距離を有する前記分析ビンの2つ以上を結合することを含む、前記第3の分析ビンのセットを決定することと、
前記第3の分析ビンのセットの分析ビンの各々について、当該分析ビンの各々に関連付けられた前記レコードに基づき、前記MLモデルの機械学習(ML)性能メトリックを計算することと、
前記第3の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを使用して、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを推定することと
前記第1の分析ビンのセットにわたる、前記全体的性能メトリックと前記ML性能メトリックとの間の相関に基づいて、さらに実行されるデータ・トランザクションの前記全体的性能メトリックと前記ML性能メトリックとの間の正の相関を可能にするように、前記MLモデルを更新することと
を含む、方法。
【請求項7】
前記方法は、前記更新された前記MLモデルを使用した前記コンピュータ・システムで実行された前記データ・トランザクションのレコードに基づくさらなる分析ビンのセットに対して反復される、請求項1ないし6のいずれかに記載の方法。
【請求項8】
異なる前記ML性能メトリックに対して前記方法を反復することをさらに含む、請求項1ないし7のいずれかに記載の方法。
【請求項9】
前記ML性能メトリックは、前記MLモデルの予測の正確度、および公平性スコアからなる群から選択される、請求項1ないし8のいずれかに記載の方法。
【請求項10】
コンピュータ・システムであって、前記コンピュータ・システムは、
メモリと、
プロセッサと
を備え、
データ・トランザクションを実行し、機械学習(ML)モデルを使用して前記データ・トランザクションの特性を評価するように構成されており、
前記プロセッサは前記メモリに通信可能に結合され、前記プロセッサは、
前記データ・トランザクションのレコードの属性のうち、所定の属性に基づき、第1の分析ビンのセットを決定することであって、前記第1の分析ビンのセットは前記データ・トランザクションのレコードの属性のうち前記所定の属性の値を有する前記レコードのセットであり、
前記第1の分析ビンのセットの分析ビンの各々について、前記分析ビンの各々に関連付けられた前記データ・トランザクションの前記レコードに基づき、前記コンピュータ・システムの全体的性能メトリックを計算することであって、前記全体的性能メトリックは、前記コンピュータ・システムによるトランザクション実行性能を示し、
前記第1の分析ビンのセットの前記分析ビンの1つまたは複数のビンが少なくとも所定の最小数のレコードを有していない場合に、
前記第1の分析ビンのセットを再定義して第2の分析ビンのセットを決定することであって、前記少なくとも所定の最小数のレコードを有していない前記分析ビンを他の前記分析ビンと結合することを含む、前記第2の分析ビンのセットを決定することと、
前記第2の分析ビンのセットの分析ビンの各々について、前記第2の分析ビンのセットの前記分析ビンの各々に関連付けられた前記データ・トランザクションの前記レコードに基づき、機械学習(ML)モデルのML性能メトリックを計算することと、
前記第2の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを使用して、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを推定することと、
前記第1の分析ビンのセットの前記分析ビンの各々が少なくとも前記最小数のレコードを有している場合に、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを計算することと、
前記第1の分析ビンのセットにわたる、前記全体的性能メトリックと前記ML性能メトリックとの間の相関に基づいて、さらに実行されるデータ・トランザクションの前記全体的性能メトリックと前記ML性能メトリックとの間の正の相関を可能にするように、前記MLモデルを更新することと
を実行する、システム。
【請求項11】
コンピュータ・システムであって、前記コンピュータ・システムは、
メモリと、
プロセッサと
を備え、
データ・トランザクションを実行し、機械学習(ML)モデルを使用して前記データ・トランザクションの特性を評価するように構成されており、
前記プロセッサは前記メモリに通信可能に結合され、前記プロセッサは、
前記データ・トランザクションのレコードの属性のうち、所定の複数の属性に基づき、第1の分析ビンのセットを決定することであって、前記第1の分析ビンのセットは、前記複数の属性にそれぞれ基づく複数のクラスタを含み、前記クラスタの各々は、前記データ・トランザクションの前記レコードのうち前記属性の値を有する前記レコードのセットを含む、前記第1の分析ビンのセットを決定することと、
前記第1の分析ビンのセットの分析ビンの各々について、前記分析ビンに関連付けられた前記データ・トランザクションの前記レコードに基づき、前記コンピュータ・システムの全体的性能メトリックを計算することであって、前記全体的性能メトリックは、前記コンピュータ・システムによるトランザクション実行性能を示し、
前記第1の分析ビンのセットを再定義して第3の分析ビンのセットを決定することであって、関連する前記クラスタ間で互いに所定の距離を有する前記分析ビンの2つ以上を結合することを含む、前記第3の分析ビンのセットを決定することと、
前記第3の分析ビンのセットの分析ビンの各々について、前記分析ビンに関連付けられた前記レコードに基づき、前記MLモデルの機械学習(ML)性能メトリックを計算することと、
前記第3の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを使用して、前記第1の分析ビンのセットの前記分析ビンの各々の前記ML性能メトリックを推定することと
前記第1の分析ビンのセットにわたる、前記全体的性能メトリックと前記ML性能メトリックとの間の相関に基づいて、さらに実行されるデータ・トランザクションの前記全体的性能メトリックと前記ML性能メトリックとの間の正の相関を可能にするように、前記MLモデルを更新することと
を実行する、システム。
【請求項12】
コンピュータ・プログラムであって、コンピュータに、請求項1ないし9のいずれかに記載の方法を実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、デジタル・コンピュータ・システムの分野に関し、より詳細には、コンピュータ・システムの動作を制御する方法に関する。
【背景技術】
【0002】
機械学習モデルがデータ・モニタリングにおいてますます使用されるようになっている。しかし、機械学習モデルは、例えば、ラベルにおける先入観、アンダー/オーバーサンプリングのうちの1つまたは複数による、訓練データにおけるバイアス、または望ましくないバイアスを持ったモデルの生成のようないくつかの理由のため不正確であり得る。機械学習のモニタリングは、これらのバイアスを常に特定するとは限らない。
【発明の概要】
【0003】
本開示によって記載されるように、さまざまな実施形態が、コンピュータ・システムの動作を制御するための、方法、システム、およびコンピュータ・プログラム製品を提供する。一態様では、本開示は、コンピュータ・システムの動作を制御することに関し、コンピュータ・システムは、データ・トランザクションを実行し、機械学習(ML)モデルを使用してデータ・トランザクションの特性を評価するように構成される。
【0004】
分析ビン(bin)のセットが決定される。分析ビンはデータ・トランザクションのレコードの属性の値のセットを表す。コンピュータ・システムの全体的性能メトリックが計算される。全体的性能メトリックは、分析ビンのセットの各分析ビンに対して、分析ビンによって表される属性値を有するトランザクションのレコードを使用して、コンピュータ・システムのトランザクション実行性能を示す。分析ビンのセットの1つまたは複数の分析ビンが少なくとも所定の最小数のレコードを有していない場合に、分析ビンのセットの分析ビンを結合することにより分析ビンの新しいセットを再定義する。分析ビンの再定義されたセットの各分析ビンに対して、各分析ビンによって表される属性値を有するレコードを使用してMLモデルの機械学習性能メトリックを計算する。再定義された分析ビンのセットのML性能メトリックを使用して、分析ビンのセットの各ビン内のML性能メトリックを推定する。分析ビンのセットの各分析ビンが少なくとも最小数のレコードを有している場合に、分析ビンのセットの各分析ビン内のML性能メトリックを計算する。コンピュータ・システムは、計算された全体的性能メトリックとML性能メトリックとの間の分析ビンのセットにわたる相関に基づいて、さらに実行されるデータ・トランザクションの全体的性能メトリックとML性能メトリックとの間の正の相関を可能にするように構成される。
【0005】
以下で、本開示の実施形態が、単なる例として、次の図面を参照して、より詳細に説明される。
【図面の簡単な説明】
【0006】
図1】本開示の一例によるコンピュータ・システムの動作を制御する方法のフローチャートである。
図2A】本開示の一例によるメトリックを計算するための分析ビンを定義する方法のフローチャートである。
図2B】本開示の一例による分析およびメトリック値を例示するダイヤグラムである。
図3A】本開示の一例によるメトリックを計算するための分析ビンを定義する方法のフローチャートである。
図3B】本開示の一例による分析ビンを例示するダイヤグラムである。
図4】本開示に関連する1つまたは複数の方法ステップを実装するのに適したコンピュータ化されたシステムを表す図である。
【発明を実施するための形態】
【0007】
本開示のさまざまな実施形態の説明は、例示の目的のために提示されるが、網羅的であることは意図されず、また、開示される実施形態に限定されない。多くの変更例および変形例が、記載される実施形態の範囲および思想から逸脱することなく、当業者には明らかであろう。本明細書で使用される用語は、実施形態の原理、実際的応用もしくは市場に見出される技術を超える技術的改良を最も良く説明するため、または他の当業者が本明細書に開示される実施形態を理解することを可能にするために、選択された。
【0008】
データの連続的増加により、データから洞察を抽出することを助けるための人工知能(AI)ソリューションにおける多大な投資が行われている。しかし、信頼できる正確なシステム構成を提供するために正しいAIサービスを選択することは困難である。
【0009】
本開示は、コンピュータ・システムが(例えば、より少ないメモリを使用し、より正確な結果を提供し、機械学習モデルのより少ない反復を使用して)より効率的に動作することができるように、機械学習システム(MLS:machine learning system)がAIソリューションを評価し、改良し、または更新することを可能にし得る。例えば、コンピュータ・システムは、MLSを活用して、適応されていないAIソリューションによって引き起こされる不要で余分な動作の処理を防ぐことができる。
【0010】
人工知能ソリューションを使用してデータ・トランザクションをモニタリングするとき、既存の機械学習モデルの改良のための投資から得ることができる技術的利益を特定することが重要となり得る。そのため、機械学習モデルのメトリック値と全体的指標値との間の相関を有利に使用して、意味ある推奨を提供することができる。特に、MLSのコンピュータ・システム構成は、特定のAIメトリックに依拠するだけでなく、全体的プロセスに与える影響にも依拠することがある。MLSは、(例えば、全体的指標値を使用して)全体的影響を測定するように構成され得る。さらに、本開示のMLSは、機械学習モデルのメトリック値が決定されない(AIメトリックの計算が大量のデータを必要とする)ような相対的に稀なデータ(例えば、入手可能なデータの欠如)の場合に有利であり得る。本開示のMLSは、不十分なデータの問題を解決するために、機械学習モデルのメトリック値の近似を提供し得る。
【0011】
いくつかの実施形態によれば、MLSは、相関が負またはゼロの相関である場合に、更新を実行することができ、更新を実行することは、MLモデルを再訓練すること、特性の複合的な評価を提供するための追加的なMLモデルを追加すること、またはMLモデルを別のMLモデルで置換することのうちのいずれか1つを含むことができ、コンピュータ・システムの構成は、さらなるトランザクションを評価するために、実行された更新を使用することを含む。
【0012】
例えば、追加的なMLモデルを追加した後、MLモデルのそれぞれに対してML性能メトリックが計算され、結果として得られる値を組み合わせることができる。組合せは、例えば、値の加重和または平均であり得る。加重和は、例えば、MLモデルに関連づけられた重みを使用し得る。重みは、例えば、ユーザ定義される。
【0013】
MLSのいくつかの実施形態によれば、分析ビンのセットにおける全体的性能メトリックとML性能メトリックとの間の相関がない場合に、MLモデルは別のMLモデルで置換され得る。
【0014】
MLSのいくつかの実施形態によれば、分析ビンのセットにおける全体的性能メトリックとML性能メトリックとの間の相関が正の相関である場合に、これはMLモデルの改良を示し、MLモデルを再訓練することを含み得る。
【0015】
MLモデルは、例えば、所与のタイプのデータ(例えば、所与の地域、セット、領域などのデータ)に合わせて訓練または適応されている場合がある。再訓練は、例えば、MLモデルを最初に訓練するために以前に使用された訓練セットのサイズを増大させることによって実行されることができ、再訓練は、増大したサイズの訓練セットを使用して実行される。別の例では、再訓練は、最新データを含む新しい訓練セットを使用して実行され得る。これは、データ・トランザクション処理の正確なモニタリングのために使用され得るようにMLモデルを更新することができる。
【0016】
一例では、コンピュータ・システムは、コンピュータ・システムにおけるデータ・トランザクションの所与のモニタリング・プロセスの一部として、ML性能メトリックの計算を実行するように構成され得る。例えば、コンピュータ・システムは、ML性能メトリックの値が不審な場合に警報を出すこと、または実行を停止することができる。この実行された更新により、コンピュータ・システムは、例えば、適応されていないMLモデルによってトリガされる誤警告アラームを防止することによって、さらなるデータ・トランザクションのモニタリングを改良することが可能となり得る。これは、不要な警告アラームによって消費されるコンピュータ・システムのリソースを節約することができる。
【0017】
いくつかの実施形態によれば、属性はデータ・トランザクションの発生時刻であり、分析ビンのセットの各ビンは時間間隔を表し、再定義されたビンのうちの1つの再定義されたビンは、分析ビンのセットの2つ以上の連続するビンを併合することによって取得され、推定は、再定義されたビンの関数としてML性能メトリックの変動をモデリングし、分析ビンのセットにおけるMLメトリックの値を決定するためにモデルを使用することによって実行される。これは、モニタリング・システムのほとんどが時間の関数としてデータのモニタリングを実行するため、既存のシステムとシームレスに統合され得る。これは、問題点を事前に特定し適時に反応するという利点をさらに有し得る。例えば、コンピュータ・システムはその継続時間の直後に構成されるであろうから、問題はせいぜい分析ビンのセットの継続時間だけ継続するであろう。
【0018】
いくつかの実施形態によれば、モデリングすることは、再定義されたビンにわたってML性能メトリックの分布を当てはめることを含む。当てはめは、特定の数学的基準に従ってデータ点に最もぴったり合う関係を推定するための線型回帰などの回帰分析を含む。これは、ML性能メトリックの値の系統的で正確な推定を可能にし得る。メトリック値の正確な推定は、コンピュータ・システムの確実な制御/動作を可能にし得る。これは、移動平均計算の場合と同様にして、より長い時間間隔をカバーする、より大きいサブセットでの機械学習モデルのメトリック値の計算を可能にし得る。そして、計算されたメトリックは、例えば3次スプライン近似を使用して、より粒度の高い結果を計算するために使用され得る。
【0019】
いくつかの実施形態によれば、分析ビンのセットの各分析ビンは、データ・トランザクションのレコードの異なる属性の値のセットを表すことができ、値のセットは、異なる属性を使用して形成されたレコードのクラスタの値であり、再定義されたビンのうちの1つの再定義されたビンは、関連づけられたクラスタが互いに所定の距離を有する分析ビンのセットの2つ以上のビンを併合することによって取得される。
【0020】
例えば、分析ビンのセットの各ビンB_iは、それぞれの属性Att_iに関連づけられ得る。所定の期間中にコンピュータ・システムによって実行されたデータ・トランザクション(例えば、前月のトランザクション)を記述するデータ・レコードは、属性Att_iの値に基づいて分割されることができ、分析ビンのセットの各ビンがレコードのそれぞれのクラスタに関連づけられるように、1つのクラスタが各別個の属性Att_iごとに作成され得る。それらのクラスタは、結合されたクラスタの結果として得られるセットが、それぞれの再定義されたビンに関連づけられるように結合されることができ、例えば、各再定義されたビンは、結合されたクラスタのそれぞれのセットに関連づけられることができる。結合されたクラスタの各セットは、それらに対する機械学習モデルのメトリック値の計算を可能にするほど十分なデータを有し得る。各セットの結合されたクラスタは、定義された距離よりも小さいクラスタの中心間距離を有し得る。各セットの結合されたクラスタは、クラスタの中心間の最小距離を有し得る。別の例では、結合されたクラスタのセットはユーザ定義され得る。これは、入力レコードの類似性に基づくデータ・スライシングへの緻密なアプローチを可能にし得る。これは、異なる属性を使用したトランザクションの柔軟なモニタリングを可能にし得る。
【0021】
いくつかの実施形態によれば、ML性能メトリックの推定は次のことを含み得る。分析ビンのセットの各ビンに対して、そのビンに関連づけられたクラスタjのML性能メトリックが次のように定義される:sum(wi*mi)/sum(wi)。ただし、miは結合されたクラスタのセットiのMLメトリックであり、wiは次のように計算される:meanDtoJ/maxD*nPinJ/nPinCls。ただし、meanDtoJは結合されたクラスタのセットiの中心とクラスタjの中心との間の平均距離であり、maxDは結合されたクラスタのセットiの中心間の最大距離であり、nPinJはクラスタj内のデータ点の数であり、nPinClsは結合されたクラスタのセットi内のデータ点の数である。これは正確な計算を可能にする。そして、計算されたメトリックは、加重算術平均を使用して、より粒度の高い結果を計算するために使用され得る。
【0022】
いくつかの実施形態によれば、本方法は、コンピュータ・システムの実行時に実行され得る。これは、データの実時間モニタリングのために有利である。本番環境における機械学習モデルのモニタリングは、実時間で実行される評価ペイロードのデータ分析に基づき、公平性スコア、正確度低下(ドリフト・メトリック)などのようなメトリックを計算することができる。機械学習モデルのメトリック値および全体的プロセスの指標値をまとめて、時間ベースのデータ分割、クラスタリング、または他のデータ・スライシング方法に基づく相関発見を可能にすることができる。
【0023】
いくつかの実施形態によれば、本方法は、制御されたコンピュータ・システムを使用した分析ビンのさらなるセットに対して反復され得る。例えば、分析ビンのセットは、現在の期間、例えば今週、をカバーする分析ビンの現在のセットであり得る。これは、現在の期間に後続する次の期間のトランザクション・データのさらなるモニタリングを可能にし得る。これは、データ・トランザクションの中断のないモニタリングを可能にし得る。
【0024】
いくつかの実施形態によれば、MLSは、異なるML性能メトリックに対するさらなる反復を含む。例えば、分析ビンのセットの決定および全体的性能メトリックの計算以外のいくつかのステップは、別のML性能メトリックに対して反復され得る。
【0025】
いくつかの実施形態によれば、分析ビンは等しいサイズのビンである。
【0026】
いくつかの実施形態によれば、全体的性能メトリックまたはML性能メトリックの計算は、計算されたメトリックを正規化することをさらに含む。
【0027】
これらの実施形態は、データの量およびビンの数とともにスケーラブルである分析を可能にし得る。
【0028】
いくつかの実施形態によれば、MLSは、収集されたレコードに対して計算を実行するために、分析ビンのセットの各分析ビンに関連づけられたデータ・トランザクションのレコードを収集することをさらに含む。
【0029】
いくつかの実施形態によれば、全体的性能メトリックは重要業績評価指標(KPI)である。重要業績評価指標は、コンピュータ・システムの性能に対するコンテクストを提供するための1つまたは複数のメトリックを含み得る。
【0030】
いくつかの実施形態によれば、ML性能メトリックは、MLモデルの予測の正確度、および公平性スコアのうちの1つである。
【0031】
図1は、本開示の一例によるコンピュータ・システムの動作を制御する方法のフローチャートである。コンピュータ・システムは、例えば、データ・トランザクションを実行または実施するように構成され得る。データ・トランザクションは、ともにタスクを実行する動作のセットであり得る。データ・トランザクションは、例えば、口座の借方もしくは貸方に記帳すること、または在庫リストを要求することなどのタスクを実行し得る。データ・トランザクションは、1つまたは複数のデータ・レコードによって記述され得る。データ・レコードは、データ・トランザクションなどを要求した特定のユーザの名前、誕生日、およびクラスなどの関連するデータ項目の集合体である。レコードは実体を表し、実体は、ユーザ、オブジェクト、トランザクション、またはコンセプトを参照し、それらに関する情報がレコードに記憶される。「データ・レコード」および「レコード」という用語は区別なく使用される。データ・レコードは、関係を有する実体としてグラフ・データベースに記憶されることができ、その場合に各レコードは、名前、誕生日などのような属性値であるプロパティを用いて、グラフのノードまたは頂点に割り当てられ得る。データ・レコードは、別の例では、リレーショナル・データベースのレコードであり得る。
【0032】
データ・トランザクションは、その特徴またはプロパティを決定するために評価され得る。評価は、例えば、データ・トランザクションが異常、セキュアでないトランザクション、などであるかどうかを示し得る。評価は、例えば、訓練されたMLモデルを使用して実行され得る。MLモデルは、例えばセンサ・データを含む過去の電気通信資産障害データで例えば訓練され、資産障害が機能停止を引き起こす前に資産障害を予測することができる。しかし、情報技術の運用は、MLモデルが正確に障害を予測していることを保証する必要があるが、データは非常に複雑である。別の例では、MLモデルは、過去の成功および不成功の予測オーバーライド・データで訓練され得る。訓練されたMLモデルは、需要プランナがその需要予測を調整する助けとなり得る。しかし、訓練されたMLモデルは、AI搭載アプリケーションが、知識労働者によって生産されるものと同程度に正確な結果を常に出していることをチェックすることができるように、例えば一定時間にわたるその正確度についてモニタリングされることが必要な場合がある。さらなる例では、MLモデルは、不審なパターンを特定するために過去のトランザクション・データで訓練され得る。訓練されたモデルは、銀行が絶えず変化する規制に追随することを助けるためにモニタリングされることが必要な場合があり、経済犯罪アナリストがそのモデルの警報分析の背景にある推論を理解することを可能にし、アナリストはどの警報を却下し、どの警報を拡大するかについて決定することができる。
【0033】
動作101で、分析ビンのセット(明確化の目的で「InitSet」と称する)が決定され得る。分析ビンは、データ・トランザクションのレコードの分析属性の値のセットを表す。分析ビンのセットは、等しい幅またはサイズであってもなくてもよい。分析属性は、例えば、データ・トランザクションの発生時刻であり得る。この場合、分析ビンのセットは、例えば、ある時間範囲、例えば1か月の時間範囲をカバーすることができ、分析ビンのそれぞれは、それぞれの時間範囲、例えば、その月の第1週の時間範囲をカバーすることができる。別の例では、分析属性は、データ・トランザクションを要求したユーザの年齢であり得る。この場合、分析ビンのセットは、例えば、18歳から100歳の間の年齢をカバーすることができ、分析ビンのそれぞれは、それぞれの時間範囲、例えば、80~100歳の時間範囲をカバーすることができる。説明の簡略化のために、分析ビンのセットInitSetは10個のビンB1~B10を含むと仮定する。
【0034】
コンピュータ・システムによって実行されるデータ・トランザクションは、分析ビンのセットのそれぞれの分析ビンに関連づけられ得る。上記の例を続けると、80歳と100歳の間の年齢を有するユーザによってトリガされたすべてのトランザクションが、分析ビン[80,100]に関連づけられ得る。これは、分析ビンのセットの各分析ビンXがデータ・レコードに関連づけられることができ、データ・レコードのうちの各データ・レコードは、分析ビンX内に入る分析属性の値を有することを意味する。
【0035】
一例では、分析ビンのセットはユーザ定義されることができ、例えば、動作101で、ユーザ入力が受信されることができ、ユーザ入力は分析ビンのセットを示す。別の例では、分析ビンの複数のセットが事前に定義される(例えば、事前に記憶される)ことができ、動作101の分析ビンのセットの決定は、分析ビンの所定の複数のセットのうちから分析ビンの1つのセットを(例えば、ランダムに)選択することを含み得る。一例では、分析ビンのセットは、分析ビンのセットの各分析ビンに関連づけられたトランザクションの数が、所定のトランザクション数閾値よりも大きくなるように決定され得る。このトランザクション数閾値は、例えば、全体的性能メトリックを評価するための全体的性能分析を実行するために十分であり得る。
【0036】
動作103で、コンピュータ・システムの全体的性能メトリックが、分析ビンのセットの各ビンに対して計算され得る。計算は、分析ビンによって表される属性値を有するトランザクションのレコードを使用して実行され得る。全体的性能メトリックは、例えば、平均トランザクション継続時間であり得る。その場合、分析ビンのセットの各分析ビンXに対して、トランザクション継続時間が、分析ビンXに関連づけられたトランザクションのうちの各トランザクションに対して決定され得る。そして、決定されたトランザクション継続時間の平均が計算され、分析ビンXに割り当てられ得る。別の例では、全体的性能メトリックは、失敗したトランザクションの数であり得る。その場合、分析ビンのセットの各分析ビンXに対して、そのビンXの失敗したトランザクションの数が決定され得る。
【0037】
トランザクションを記述するデータ・レコードは1つまたは複数のタイプであり得る。例えば、トランザクションは、トランザクションの全体的プロパティ/属性を記述する全体的レコードと、トランザクションに対してMLモデルを実行した結果を記述する別のMLレコードとに関連づけられ得る。全体的レコードは、全体的属性を含み得る。MLレコードは、ML属性を含み得る。MLレコードは、ペイロード・ロギング・テーブルのレコードであり得る。全体的レコードおよびMLレコードは、両方のレコードに属するトランザクションIDによって互いに連結され得る。別の例では、単一タイプのレコードを使用してトランザクションを記述することができ、例えば、単一タイプのレコードは、全体的レコードおよびMLレコードの両方の属性を含み得る。この単一のレコードは、MLモデルがその単一のレコードのトランザクションに対して実行されない場合、ML属性に対する空の値を含み得る。
【0038】
分析ビンのセットの1つまたは複数の分析ビンに対するレコード数が所定の最小レコード数よりも小さいかどうかが判定され得る(照会動作105)。最小レコード数を下回るレコード数は、動作103における全体的性能メトリックを計算するためには十分であり得るが、所与のビン内でML性能モニタリングを実行するためには十分でない可能性がある。2つの異なるタイプのレコードの場合、照会動作105がMLレコードに対して実行され得る。例えば、照会動作105で、分析ビンのセットの1つまたは複数の分析ビンに対するMLレコード数が所定の最小レコード数よりも小さいかどうかが判定され得る。単一タイプのレコードの場合、照会動作105で、空でないML属性値を有するレコード数が所定の最小レコード数よりも小さいかどうかが判定され得る。例えば、照会動作105は次のように実行され得る。分析ビンのセットInitSetの各分析ビンXは、分析属性値がビンX内に入るレコード数が所定の最小レコード数よりも小さいかどうかを判定するように処理され得る。
【0039】
分析ビンのセットInitSetの1つまたは複数の分析ビンに対するレコード数が所定の最小レコード数よりも小さいと判定された場合(照会動作105)、動作107~111が実行され、そうでない場合、動作113が実行される。例えば、ビンB2およびB5は、所定の最小レコード数よりも小さいレコード数を有すると判定された場合が想定される。
【0040】
動作107で、分析ビンの新しいまたは別のセット(明確化の目的で「NewSet」と称する)が決定または再定義され得る。InitSetの上記の例を続けると、ビンの再定義されたセットNewSetはn個のビンrB1~rBnを含むことができ、ただしn<10である。動作107は、例えば、分析ビンのセットInitSetの分析ビンを結合することによって実行され得る。上記の例を続けると、B2およびB5のみが所定の最小レコード数を下回るレコード数を有するので、InitSetのビンB2およびB3は新しいビンrB2を形成するように結合されることができ、InitSetのビンB4およびB5は新しいビンrB3を形成するように結合されることができる。この結果として、8個のビンrB1~rB8の再定義されたセットNewSetが得られる。ただし、rB1はB1であり、rB4はB6であり、rB5はB7であり、rB6はB8であり、rB7はB9であり、rB8はB10であり、すなわち、rB2およびrB3は再定義される。これは、ビンの新しいセットを定義するために、分析ビンの既存のセットInitSetを利用し得る。これは、変更されていないビンに対する蓄積されたレコードが再利用可能であるため、リソースを節約し得る。別の例では、ビンの新しいセットNewSetは、ビンの新しいセットの各ビン内のレコード数が所定の最小レコード数よりも大きくなるようにビンの新しいセットNewSetに対する新しい幅を決定することによって、動作101の分析ビンのセットInitSetとは独立に定義され得る。
【0041】
ビンの再定義されたセットNewSetの各ビンrBに対して、動作109で、MLモデルのML性能メトリックが、各ビンrBによって表される属性値を有するレコードを使用して計算され得る。ML性能メトリックは、例えば、MLモデルの予測の正確度であり得る。例えば、MLレコードのうちの各レコードは、レコードのデータ・トランザクションを評価するために使用されるML予測正確度を記述するML属性を含み得る。動作109で、再定義されたビンNewSetの各ビンに対して、ビンのML性能メトリックの値を提供するために、ビンのMLレコードの正確度が平均され得る。別の例では、ML性能メトリックは公平性スコアであり得る。
【0042】
上記の例を続けると、動作109の結果として、ML性能メトリックの8個の値を得ることができ、各値は、ビンの再定義されたセットNewSetのそれぞれのビンに関連づけられる。しかし、全体的性能メトリックは、InitSetの分析ビンに対して10回評価されている。これにより、2つのメトリック間の相関分析が最適ではなくなる可能性がある。それを解決するため、動作111で、再定義されたビンのセットNewSetのML性能メトリックを使用して、分析ビンのセットInitSetの各ビンにおいて、ML性能メトリックが推定され得る。例えば、NewSetのビン内のML性能メトリックの8個の値を知ると、ML性能メトリックの10個の値がInitSetのビンに対して導出され得る。上記の例を続けると、NewSetのビンrB1、rB4、rB5、rB6、rB7およびrB8に対するML性能メトリックは、それぞれ、ビンB1、B6、B7、B8、B9およびB10に対するものと同じであり得る。ML性能メトリックは、周辺のビン、例えば、B1、rB1、rB2およびB6のメトリック値を組み合わせることによって(または値を外挿することによって)InitSetのビンB2~B5に対して推定され得る。推定を実行する他の例が図2図3に示されている。
【0043】
分析ビンのセットInitSetの各ビンBが所定の最小レコード数よりも大きいレコード数を有する場合、動作113が次のように実行され得る。ビンのセットInitSetの各ビンBに対して、MLモデルのML性能メトリックが、動作113で、各ビンBによって表される属性値を有するレコードを使用して計算され得る。
【0044】
動作111または動作113を実行した後、ビンのセットInitSetの各ビンは、ML性能メトリックおよび全体的性能メトリックの値のペアを有する。これは、2つのメトリックの値をビンごとに比較することを可能にする。特に、ビンのセットInitSetにおけるML性能メトリックの変動の挙動が、ビンのセットInitSetにおける全体的性能メトリックの挙動と比較され得る。これは、2つのメトリックの正確な相関分析を可能にすることができ、したがって、相関が本方法によって確実に使用され得る。例えば、計算された全体的性能メトリックとML性能メトリックとの間の分析ビンのセットInitSetにわたる相関に基づいて、コンピュータ・システムは、動作115で、さらなるトランザクションが全体的性能メトリックとML性能メトリックとの間で正の相関を有することを可能にするように構成され得る。構成は、全体的性能メトリックとML性能メトリックとの間の相関に基づくことができる。例えば、相関が負の場合、これは訓練されたMLモデルが、使用されている使用例にとって適切でないことを示し得る。例えば、訓練されたMLモデルは、電気通信などの所与の領域からのデータでは良好に機能するだろう。しかし、他の領域に対しては、必要な正確度を出さないかもしれない。別の例では、動作111または動作113を実行した後全体的性能メトリックとML性能メトリックとの間の相関を示す情報が、例えばユーザに提供され得る。その情報は、例えば、コンピュータ・システムのモニタリング情報として、ユーザによって使用され得る。
【0045】
2つのメトリック間の相関は、次の特徴を有し得る。一例では、2つのメトリック間の相関は、強い正の相関であり得る。例えば、ML性能メトリックの低下は特定のKPIを低下させ、例えば、モデル公平性スコアの2%の低下は、クレジット額承認KPIを5%低下させる。これは、モデル品質の特定のエリアにおけるリソース投資が重要であり得ることを示す。それに応じて、システムは、MLモデルをさらに改良するように構成され、モデル公平性スコアの低下を回避することができる。
【0046】
一例では、特定のML性能メトリックが、KPIへの影響なしに向上している。これは、例えば、モデル正確度の5%の向上はクリック数に対して影響がないことを示す。このような洞察は、モデル正確度における投資には価値がない可能性があり、そのMLモデルの代わりに新しいMLモデルが使用され得ることを明確に示す。
【0047】
一例では、任意のML性能メトリックとKPIとの間に全く相関がない(または相関が非常に小さい)。そのことは、MLモデルに関する重大な問題を示す可能性があり、そのモデルの結果はプロセスにおいて完全に無視される。これは、意志決定プロセスおよびコンピュータ・システムの構成を再考するための警報を発生させ得る。
【0048】
したがって、ML性能メトリックと全体的性能メトリックとの間の相関に応じて、コンピュータ・システムはそれに従って構成され得る。構成は、実行される次のトランザクションに対して2つのメトリック間の正の相関を可能にするように実行され得る。例えば、将来のトランザクションに対して計算されるML性能メトリックは、全体的性能メトリックと整合する改善された値を有し得る。本開示は、複数のモニタリング・メトリックの組み合わされた効果を考慮し得る。
【0049】
例えば、動作115は、MLモデルの再訓練を自動的にトリガし得る。再訓練は、コンピュータ・システムの現在の使用例に対応する新しいデータを使用して実行され得る。別の例では、目標を満たし、新しいデータに適応するために、ペイロード分析からの特定の入力によって、訓練されたモデルの正確度を改良するために、以前に使用された訓練セットを増加させることによって再訓練が実行され得る。別の例では、MLモデルは、例えば、追加的な処理コストを負わずに現在訓練されているモデル上でより多くのデータを生成するための最小サンプルサイズおよび閾値を更新することによって、再訓練を行うことを必要とせずに適応され得る。これは、基礎となるデータが変化していないときに、集中的なCPU使用を回避し得る。
【0050】
図2Aは、本開示の一例によるメトリックを計算するための分析ビンを定義する方法のフローチャートである。
【0051】
動作201で、分析ビンB1~B10のセットが提供され得る。分析ビンのセットは、図2Bに示すように、時間範囲[tS,tE]=[0 10]をカバーし得る。分析ビンのセットは、図2Bに示すように、幅1の10個のビンB1~B10を含む。ビンB1~B10の各ビン内のデータは、ML性能メトリックを計算するために十分でない可能性がある。
【0052】
動作203で、10個のビンB1~B10のセットの2つの連続するビンを組み合わせることによって、ビンrB1~rB5の新しいセットが(再)定義される。これは、例えば、10個のビン内のデータはML性能メトリックを計算するために十分でない可能性があるため、実行され得る。この結果として、幅2の5個の新しいビンrB1~rB5を得る。例えば、新しいビンrB1はビンB1およびB2を結合することによって取得されることができ、新しいビンrB2はビンB3およびB4を結合することによって取得されることができ、新しいビンrB3はビンB5およびB6を結合することによって取得されることができ、新しいビンrB4はビンB7およびB8を結合することによって取得されることができ、新しいビンrB5はビンB9およびB10を結合することによって取得されることができる。
【0053】
図2Bは、分析ビンrB1~rB5の新しいセットの各ビンに対して、データ点220をさらに示しており、データ点220は、5個のビンrB1~rB5のそれぞれにおけるML性能メトリックの値を表す。10個のビンB1~B10の各ビン内のML性能メトリックの値を推定するため、ML性能メトリックの値の分布の当てはめ222(またはモデリング)が実行され得る。当てはめ222は、3次スプライン近似であり、10個のビンの各ビン内のML性能メトリックの値224を推定または近似するために使用され得る。
【0054】
図3Aは、本開示の一例によるメトリックを計算するための分析ビンを定義する方法のフローチャートである。
【0055】
動作301で、分析ビンのセットが提供され得る。分析ビンのセットは、図3Bに示すように、5個のクラスタをカバーし得る。分析ビンのセットは、それぞれのクラスタ320.1~5にそれぞれ関連づけられた5個のビンを含む。クラスタ320.1~5の各クラスタは、それぞれの属性の類似の値を有するレコードを含むことができ、例えば、クラスタ320.1は、20歳と40歳の間の年齢を有するユーザのレコードを含むことができ、クラスタ320.2は、所与の地域または国などのユーザのレコードを含むことができる。
【0056】
動作303で、5個のビンのセットのうちの2つ以上のビンを組み合わせることによって、ビンの新しいセットが定義される。これは、例えば、5個のビン内のデータはML性能メトリックを計算するために十分でない可能性があるため、実行され得る。この結果として、結合されたクラスタのそれぞれのセットにそれぞれ関連づけられた3個の新しいビン322.1~322.3を得る(例えば、結合されたクラスタのセットは結合クラスタと称し得る)。例えば、新しいビン322.1は、結合されたクラスタ320.1、320.2、および320.3のセットを表し、新しいビン322.2は、結合されたクラスタ320.4、320.2、および320.3のセットを表し、新しいビン322.3は、結合されたクラスタ320.5、320.4、および320.3のセットを表す。クラスタは、例えば、それらの間の距離に基づいて結合され得る。距離は、クラスタのレコードの1つまたは複数の属性を使用して計算され得る。ML性能メトリックは、3個のビン322.1~322.3に対して計算され得る。そして、各ビン320.1~320.5に対するML性能メトリックを取得するために、次の式を使用することができる。
【0057】
分析ビン320.1~320.5のセットの各ビンjに対して、ML性能メトリックは次のように推定され得る:sum(wi*mi)/sum(wi)。ただし、iは、結合されたクラスタのセットのインデックスであり、この例では1から3まで変化し、miは結合されたクラスタのセットiのML性能メトリックであり、wiは次のように計算される:meanDtoJ/maxD*nPinJ/nPinCls。ただし、meanDtoJは結合されたクラスタのセットiの中心とクラスタjの中心との間の平均距離であり、maxDは結合されたクラスタのセットiの中心間の最大距離であり、nPinJはクラスタj内のデータ点の数であり、nPinClsは結合されたクラスタのセットi内のデータ点の数である。いくつかの実施形態では、meanDtoJは、次のもの、すなわち、結合されたクラスタ内の元の中心とクラスタjの中心との間の平均距離、を表し得る。いくつかの実施形態では、maxDは、次のもの、すなわち、元の中心間の最大距離、を表し得る。いくつかの実施形態では、nPinJは、次のもの、すなわち、クラスタj内のデータ点の数、を表し得る。いくつかの実施形態では、nPinClsは、次のもの、すなわち、元の中心間の最大距離、を表し得る。
【0058】
図4は、本開示に関連する方法ステップの少なくとも一部を実装するのに適した一般的なコンピュータ化システム400を表す。理解されるように、本明細書に記載される方法は少なくとも部分的に非対話型であり、サーバまたは組込みシステムなどのコンピュータ化システムによって自動化される。しかし、いくつかの実施形態では、本明細書に記載される方法は(部分的)対話型システムで実装され得る。これらの方法は、ソフトウェア412、422(ファームウェア422を含む)、ハードウェア(プロセッサ)405、またはそれらの組合せでさらに実装され得る。いくつかの実施形態では、本明細書に記載される方法は、実行可能プログラムとしてソフトウェアで実装され、パーソナル・コンピュータ、ワークステーション、ミニコンピュータ、またはメインフレーム・コンピュータなどの専用または汎用デジタル・コンピュータによって実行される。したがって、最も一般的なシステム400は、汎用コンピュータ401を含む。
【0059】
いくつかの実施形態では、ハードウェア・アーキテクチャに関して、図4に示すように、コンピュータ401は、プロセッサ405、メモリ・コントローラ415に結合されたメモリ(メイン・メモリ)410、およびローカル入出力コントローラ435を介して通信可能に結合された1つまたは複数の入出力(I/O)装置(または周辺機器)10、445を含む。入出力コントローラ435は、当技術分野で既知のように、1つもしくは複数のバスまたは他の有線もしくは無線接続であり得るが、それらに限定されない。入出力コントローラ435は、通信を可能にするためのコントローラ、バッファ(キャッシュ)、ドライバ、リピータ、およびレシーバなどの追加的な要素を有し得るが、それらは簡単のために省略されている。さらに、ローカル・インタフェースは、前述の構成要素間の適切な通信を可能にするためのアドレス、制御、またはデータあるいはその組合せの接続を含み得る。本明細書に記載されるように、I/O装置10、445は、当技術分野で既知の任意の一般化された暗号カードまたはスマート・カードを一般的に含み得る。
【0060】
プロセッサ405は、ソフトウェア、特にメモリ410に記憶されたソフトウェアを実行するためのハードウェア装置である。プロセッサ405は、任意の特別仕様または商用のプロセッサ、中央処理装置(CPU)、コンピュータ401に関連づけられたいくつかのプロセッサ間の補助プロセッサ、(マイクロチップまたはチップ・セットの形態での)半導体ベースのマイクロプロセッサ、マクロプロセッサ、または一般にソフトウェア命令を実行するための任意の装置であり得る。
【0061】
メモリ410は、揮発性メモリ要素(例えば、ランダム・アクセス・メモリ(DRAM、SRAM、SDRAMなどのようなRAM))および不揮発性メモリ要素(例えば、ROM、消去可能プログラマブル読出し専用メモリ(EPROM)、電気的消去可能プログラマブル読出し専用メモリ(EEPROM)、プログラマブル読出し専用メモリ(PROM))のうちのいずれか1つまたは組合せを含み得る。なお、メモリ410は分散アーキテクチャを有することができ、その場合、さまざまな構成要素が互いにリモートに配置されるが、プロセッサ405によってアクセスされ得る。
【0062】
メモリ410内のソフトウェアは、1つまたは複数の別個のプログラムを含むことができ、そのそれぞれが、論理的機能、特に本開示の実施形態に含まれる機能を実装するための実行可能命令の順序リストを含む。図4の例では、メモリ410内のソフトウェアは、命令412、例えば、データベース管理システムなどのデータベースを管理するための命令を含む。
【0063】
メモリ410内のソフトウェアはまた、通常、適切なオペレーティング・システム(OS)411も含むものとする。OS411は、場合によっては、本明細書に記載される方法を実装するためのソフトウェア412などの他のコンピュータ・プログラムの実行を基本的に制御する。
【0064】
本明細書に記載される方法は、ソース・プログラム412、実行可能プログラム412(オブジェクト・コード)、スクリプト、または実行されるべき命令412のセットを含む任意の他の実体の形態であり得る。ソース・プログラムの場合、プログラムは、OS411と関連して正しく動作するように、コンパイラ、アセンブラ、インタプリタなどによって翻訳される必要があり、これらはメモリ410内に含まれても含まれなくてもよい。さらに、本方法は、データおよびメソッドのクラスを有するオブジェクト指向プログラミング言語、またはルーチン、サブルーチン、または関数あるいはその組合せを有する手続き型プログラミング言語として書かれ得る。
【0065】
いくつかの実施形態では、キーボード450およびマウス455が入出力コントローラ435に結合され得る。I/O装置445などの他の出力装置は、例えば、プリンタ、スキャナ、マイクロフォンなどの入力装置を含み得るが、それらに限定されない。最後に、I/O装置10、445は、例えば、ネットワーク・インタフェース・カード(NIC)または(他のファイル、装置、システム、もしくはネットワークにアクセスするための)変復調装置、無線周波数(RF)もしくは他のトランシーバ、電話インタフェース、ブリッジ、ルータなどの、入力および出力の両方を通信する装置をさらに含むことができるが、それらに限定されない。I/O装置10、445は、当技術分野で既知の任意の一般化された暗号カードまたはスマート・カードであり得る。システム400は、ディスプレイ430に結合されたディスプレイ・コントローラ425をさらに含み得る。いくつかの実施形態では、システム400は、ネットワーク465に結合するためのネットワーク・インタフェースをさらに含み得る。ネットワーク465は、ブロードバンド接続を介したコンピュータ401と任意の外部のサーバ、クライアントなどとの間の通信のためのIPベースのネットワークであり得る。ネットワーク465は、コンピュータ401と外部システム30との間でデータを送受信し、外部システム30は、本明細書で論じられる方法のステップの一部または全部を実行することに関与し得る。いくつかの実施形態では、ネットワーク465は、サービス・プロバイダによって管理されるマネージドIPネットワークであり得る。ネットワーク465は、例えば、WiFi、WiMaxなどのような無線プロトコルおよび技術を使用して無線方式で実装され得る。ネットワーク465はまた、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、メトロポリタン・エリア・ネットワーク、インターネット・ネットワーク、または他の類似のタイプのネットワーク環境などのパケット交換ネットワークであり得る。ネットワーク465は、固定無線ネットワーク、無線ローカル・エリア・ネットワーク(LAN)、無線ワイド・エリア・ネットワーク(WAN)、パーソナル・エリア・ネットワーク(PAN)、仮想プライベート・ネットワーク(VPN)、イントラネットまたは他の適切なネットワーク・システムであることができ、信号を受信および送信するための機器を含む。
【0066】
コンピュータ401がPC、ワークステーション、インテリジェント装置などである場合、メモリ410内のソフトウェアは、基本入出力システム(BIOS)422をさらに含み得る。BIOSは、スタートアップ時にハードウェアの初期化およびテストを行い、OS411を始動し、ハードウェア装置間のデータの転送をサポートする基本的なソフトウェア・ルーチンのセットである。BIOSは、コンピュータ401が起動されるときにBIOSが実行され得るようにROMに記憶される。
【0067】
コンピュータ401が動作しているとき、プロセッサ405は、メモリ410内に記憶されたソフトウェア412を実行し、メモリ410との間でデータを通信し、ソフトウェアに従ってコンピュータ401の動作を一般的に制御するように構成される。本明細書に記載される方法およびOS411は、全体的または部分的に、しかし通常は後者で、プロセッサ405によって読み出され、場合によってはプロセッサ405内にバッファリングされ、その後に実行される。
【0068】
本明細書に記載されるシステムおよび方法が図4に示すようにソフトウェア412で実装されるとき、本方法は、任意のコンピュータ関連のシステムまたは方法によっての、またはそれと関連しての使用のために、ストレージ420などの任意のコンピュータ可読媒体に記憶され得る。ストレージ420は、HDDストレージなどのディスク・ストレージを含み得る。
【0069】
本発明は、任意の可能な技術詳細統合レベルでのシステム、方法、またはコンピュータ・プログラム製品あるいはその組合せであり得る。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(複数可)を含み得る。
【0070】
コンピュータ可読記憶媒体は、命令実行装置による使用のための命令を保持および記憶し得る有体物装置であり得る。コンピュータ可読記憶媒体は、例えば、電子記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または上記の任意の適切な組合せであり得るが、それらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストは、次のもの、すなわち、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読出し専用メモリ(ROM)、消去可能プログラマブル読出し専用メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読出し専用メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピ・ディスク、パンチカードまたは命令が記録された溝内の隆起構造体などの機械的符号化装置、および上記の任意の適切な組合せを含む。本明細書で使用されるコンピュータ可読記憶媒体は、電波または他の自由伝搬電磁波、導波路もしくは他の伝送媒体を通って伝搬する電磁波(例えば、光ファイバケーブルを通る光パルス)、または導線を通って伝送される電気信号などの、一過性の信号自体であると解釈されてはならない。
【0071】
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理装置に、または、ネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークまたは無線ネットワークあるいはその組合せ、を介して外部コンピュータまたは外部記憶装置にダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ケーブル、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータまたはエッジ・サーバあるいはその組合せを含み得る。各コンピューティング/処理装置内のネットワーク・アダプタ・カードまたはネットワーク・インタフェースが、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理装置内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
【0072】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、または、Smalltalk(R)、C++などのようなオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含む、1つもしくは複数のプログラミング言語の任意の組合せで書かれたソース・コードもしくはオブジェクト・コードのいずれかであり得る。コンピュータ可読プログラム命令は、全体的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロン・ソフトウェア・パッケージとして、部分的にユーザのコンピュータ上および部分的にリモート・コンピュータ上で、または全体的にリモート・コンピュータもしくはサーバ上で実行され得る。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意の種類のネットワークを通じてユーザのコンピュータに接続されることができ、または、接続は外部コンピュータに対して(例えば、インターネット・サービス・プロバイダを使用してインターネットを通じて)なされ得る。いくつかの実施形態では、例えば、プログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む電子回路が、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個人用にカスタマイズすることにより、コンピュータ可読プログラム命令を実行し得る。
【0073】
本発明の態様が、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図示またはブロック図あるいはその両方を参照して本明細書に記載されている。理解されるように、フローチャート図示またはブロック図あるいはその両方の各ブロック、およびフローチャート図示またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装され得る。
【0074】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサによって実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作を実装するための手段を作成するようなマシンを生成するために、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサに提供され得る。これらのコンピュータ可読プログラム命令はまた、命令が記憶されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作の態様を実装する命令を含む製造物を含むように、コンピュータ、プログラマブル・データ処理装置、または他のデバイスあるいはその組合せに対して、特定の方式で機能するように指令することができるコンピュータ可読記憶媒体に記憶され得る。
【0075】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作を実装するように、一連の動作ステップをコンピュータ、他のプログラマブル装置または他のデバイス上で実行させることによりコンピュータ実装プロセスを生成するために、コンピュータ、プログラマブル・データ処理装置、または他のデバイスにロードされ得る。
【0076】
図中のフローチャートおよびブロック図は、本発明のさまざまな実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を例示する。この点で、フローチャートおよびブロック図内の各ブロックは、指定された論理機能を実装するための1つまたは複数の実行可能命令を含むモジュール、セグメント、または命令の部分を表し得る。いくつかの代替的な実装形態では、ブロック内に記された機能は、図中に記された順序以外で生起し得る。例えば、連続して示される2つのブロックは、実際には、1つのステップとして遂行され、同時並行して、実質的に同時並行して、部分的または全体的に時間的に重なり合う方式で、実行されることができ、またはブロックは、関与する機能に応じて時には逆順で実行されることができる。なお、ブロック図またはフローチャート図示あるいはその両方の各ブロック、およびブロック図またはフローチャート図示あるいはその両方におけるブロックの組合せが、指定された機能を実行し、または専用ハードウェアおよびコンピュータ命令の組合せを実施もしくは実行する専用ハードウェア・ベースのシステムによって実装され得ることも留意されよう。
【0077】
本主題は以下の条項を含み得る。
【0078】
1.コンピュータ・システムの動作を制御する方法であって、コンピュータ・システムは、データ・トランザクションを実行し、機械学習(ML)モデルを使用してデータ・トランザクションのプロパティを評価するように構成され、方法は、
分析ビンのセットを決定することであって、分析ビンはデータ・トランザクションのレコードの属性の値のセットを表す、決定することと、
コンピュータ・システムの全体的性能メトリックを計算することであって、全体的性能メトリックは、分析ビンのセットの各ビンに対して、ビンによって表される属性値を有するトランザクションのレコードを使用して、コンピュータ・システムによるトランザクション実行性能を示す、計算することと、
分析ビンのセットの1つまたは複数のビンが少なくとも所定の最小数のレコードを有していない場合に、
分析ビンのセットの分析ビンを結合することにより分析ビンの新しいセットを再定義することと、
ビンの再定義されたセットの各ビンに対して、各ビンによって表される属性値を有するレコードを使用してMLモデルの機械学習性能メトリックを計算することと、
再定義されたビンのセットのML性能メトリックを使用して、分析ビンのセットの各ビン内のML性能メトリックを推定することと、
分析ビンのセットの各ビンが少なくとも最小数のレコードを有している場合に、分析ビンのセットの各ビン内のML性能メトリックを計算することと、
計算された全体的性能メトリックとML性能メトリックとの間の分析ビンのセットにわたる相関に基づいて、さらに実行されるデータ・トランザクションの全体的性能メトリックとML性能メトリックとの間の正の相関を可能にするように、コンピュータ・システムを構成することと
を含む、方法。
【0079】
2.相関が負またはゼロの相関である場合に、MLモデルを再訓練すること、プロパティの評価の組合せを可能にするための追加的なMLモデルを追加すること、MLモデルを別のMLモデルで置換すること、のうちのいずれかを含む更新を実行することをさらに含み、コンピュータ・システムの構成は、さらなるトランザクションを評価するために実行された更新を使用することを含む、条項1に記載の方法。
【0080】
3.分析ビンのセットにおける全体的性能メトリックとML性能メトリックとの間の相関が正の相関である場合に、より大きな訓練データセットを使用してMLモデルを再訓練することによってMLモデルを改良する、条項1に記載の方法。
【0081】
4.属性はデータ・トランザクションの発生時刻であり、分析ビンのセットの各ビンは時間間隔を表し、再定義されたビンのうちの1つの再定義されたビンは、分析ビンのセットの時間的に連続するビンのうちの2つ以上を併合することによって取得され、推定することは、再定義されたビンの関数としてML性能メトリックの変動をモデリングすること、および分析ビンのセットにおけるML性能メトリックの値を決定するためにMLモデルを使用することによって実行される、条項1ないし3のいずれかに記載の方法。
【0082】
5.モデリングすることは、再定義されたビンにわたってML性能メトリックの分布を当てはめることを含む、条項4に記載の方法。
【0083】
6.分析ビンのセットの各分析ビンは、データ・トランザクションのレコードの異なる属性の値のセットを表し、値のセットは、異なる属性を使用して形成されたレコードのクラスタの値であり、再定義されたビンのうちの1つの再定義されたビンは、関連づけられたクラスタが互いに所定の距離を有する分析ビンのセットの2つ以上のビンを併合することによって取得される、条項1ないし3のいずれかに記載の方法。
【0084】
7.ML性能メトリックの推定は、分析ビンのセットの各ビンに対して、そのビンに関連づけられたクラスタjのML性能メトリックが次のように定義される:sum(wi*mi)/sum(wi)、ただし、miは結合されたクラスタのセットiのMLメトリックであり、wiは次のように計算される:meanDtoJ/maxD*nPinJ/nPinCls、ただし、meanDtoJは結合されたクラスタのセットiの中心とクラスタjの中心との間の平均距離であり、maxDは結合されたクラスタのセットiの中心間の最大距離であり、nPinJはクラスタj内のデータ点の数であり、nPinClsは結合されたクラスタのセットi内のデータ点の数である、とすることを含む、条項6に記載の方法。
【0085】
8.コンピュータ・システムの実行時に実行される、条項1ないし7のいずれかに記載の方法。
【0086】
9.方法は、制御されたコンピュータ・システムを使用した分析ビンのさらなるセットに対して反復される、条項1ないし8のいずれかに記載の方法。
【0087】
10.異なるML性能メトリックに対して方法を反復することをさらに含む、条項1ないし9のいずれかに記載の方法。
【0088】
11.分析ビンは等しいサイズのビンである、条項1ないし10のいずれかに記載の方法。
【0089】
12.全体的性能メトリックまたはML性能メトリックの計算は、計算されたメトリックを正規化することをさらに含む、条項1ないし11のいずれかに記載の方法。
【0090】
13.収集されたレコードに対して計算を実行するために、分析ビンのセットの各分析ビンに関連づけられたデータ・トランザクションのレコードを収集することをさらに含む、条項1ないし12のいずれかに記載の方法。
【0091】
14.全体的性能メトリックは重要業績評価指標KPIである、条項1ないし13のいずれかに記載の方法。
【0092】
15.ML性能メトリックは、MLモデルの予測の正確度、および公平性スコアのうちの1つである、条項1ないし14のいずれかに記載の方法。
【0093】
本開示のさまざまな実施形態の説明は、例示の目的のために提示されているが、網羅的であることは意図されず、また、開示される実施形態に限定されない。多くの変更例および変形例が、記載される実施形態の範囲および思想から逸脱することなく、当業者には明らかであろう。本明細書で使用される用語は、実施形態の原理、実際的応用もしくは市場に見出される技術を超える技術的改良を説明するため、または他の当業者が本明細書に開示される実施形態を理解することを可能にするために、選択された。
図1
図2A
図2B
図3A
図3B
図4