(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-02-14
(54)【発明の名称】機械学習モデルの解説可能性ベースの調節
(51)【国際特許分類】
G06N 20/20 20190101AFI20220204BHJP
【FI】
G06N20/20
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021533629
(86)(22)【出願日】2019-12-13
(85)【翻訳文提出日】2021-07-28
(86)【国際出願番号】 US2019066296
(87)【国際公開番号】W WO2020123985
(87)【国際公開日】2020-06-18
(32)【優先日】2018-12-14
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】520479272
【氏名又は名称】データロボット, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ガンタ, シンドゥ
(72)【発明者】
【氏名】ロセリ, ドリュー
(72)【発明者】
【氏名】タラガラ, ニシャ
(72)【発明者】
【氏名】スリダー, ビナイ
(72)【発明者】
【氏名】スンダララマン, スワミナサン
(72)【発明者】
【氏名】アマール, リオル
(72)【発明者】
【氏名】カーモシュ, リオル
(72)【発明者】
【氏名】ラムスンダー, バラス
(72)【発明者】
【氏名】スブラマニアン, スリラム
(57)【要約】
機械学習モデルの解説可能性ベースの調節のための装置は、データセットに基づいて、一次機械学習モデルから予測の第1のセットを受信するように構成される、第1の予測モジュールと、データセットに基づいて、二次機械学習モデルから予測の第2のセットを受信するように構成される、第2の予測モジュールと、1つ以上の解説可能性基準を満たさない予測の第1および第2のセットの比較に応答して、一次機械学習モデルに関連する1つ以上のアクションをトリガするように構成される、アクションモジュールとを含む。
【特許請求の範囲】
【請求項1】
装置であって、
第1の予測モジュールであって、前記第1の予測モジュールは、推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得するように構成される、第1の予測モジュールと、
第2の予測モジュールであって、前記第2の予測モジュールは、前記推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得するように構成され、前記二次機械学習モデルは、前記一次機械学習モデルと異なり、前記一次機械学習モデルの予測を模倣するように構成される、第2の予測モジュールと、
アクションモジュールであって、前記アクションモジュールは、前記一次および二次機械学習モデルが前記一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、前記一次機械学習モデルに関連する1つ以上のアクションをトリガするように構成され、前記決定は、前記予測の第1および第2のセットの比較に基づく、アクションモジュールと
を備える、装置。
【請求項2】
比較モジュールをさらに備え、前記比較モジュールは、
前記予測の第1のセットの中の予測と前記予測の第2のセットの中の予測との間の差異に基づいて、前記予測の第1および第2のセットに関する相違メトリックの1つ以上の値を決定することと、
前記予測の第1および第2のセットに関する前記相違メトリックの1つ以上の値のうちの少なくとも1つが相違閾値を上回ることを決定することと、
前記予測の第1および第2のセットに関する前記相違メトリックの少なくとも1つの値が前記相違閾値を上回るという決定に基づいて、前記一次および二次機械学習モデルが前記一次機械学習モデルに関する前記1つ以上の解説可能性基準を満たさないことを決定することと
によって、前記一次および二次機械学習モデルが前記一次機械学習モデルに関する前記1つ以上の解説可能性基準を満たさないことを決定するように構成される、請求項1に記載の装置。
【請求項3】
相違メトリックの1つ以上の値を決定することは、予測毎の基準で、前記予測の第1および第2のセットのうちの予測毎に前記相違メトリックの個別の値を決定することを含む、請求項2に記載の装置。
【請求項4】
相違メトリックの1つ以上の値を決定することは、前記予測の第1および第2のセットのうちの1つ以上のサブセットに関して前記相違メトリックの個別の値を決定することを含む、請求項2に記載の装置。
【請求項5】
前記相違メトリックの1つ以上の値は、前記相違メトリックの1つ以上の展開値であり、
前記比較モジュールはさらに、(i)前記一次機械学習モデルの開発の間に訓練データセットに基づいて前記一次機械学習モデルによって発生される予測の第3のセットと、(ii)前記二次機械学習モデルの開発の間に前記訓練データセットに基づいて前記一次機械学習モデルによって発生される予測の第4のセットとの間の差異を示す前記相違メトリックの1つ以上の開発値を取得するように構成され、
前記比較モジュールはさらに、前記相違メトリックの1つ以上の展開値を前記相違メトリックの1つ以上の開発値と比較し、前記推論データセットと前記訓練データセットとの間の偏差を検出するように構成される、
請求項2に記載の装置。
【請求項6】
前記1つ以上のアクションは、前記一次機械学習モデルに関する前記1つ以上の解説可能性基準の違反に関するアラートを送信することを含み、前記アラートはさらに、前記違反に応答するための1つ以上の推奨を備える、請求項1に記載の装置。
【請求項7】
前記1つ以上のアクションは、前記一次機械学習モデルを異なる機械学習モデルと交換することを含む、請求項1に記載の装置。
【請求項8】
前記1つ以上のアクションは、前記一次機械学習モデルを再訓練することを含む、請求項1に記載の装置。
【請求項9】
前記1つ以上のアクションは、前記一次機械学習モデルを前記二次機械学習モデルに切り替えることを含む、請求項1に記載の装置。
【請求項10】
前記1つ以上のアクションは、訓練データセットに基づいて開発の間に前記一次および二次機械学習モデルによって発生される予測の第3および第4のセットに関する前記相違メトリックの値を、前記推論データセットに基づいて展開の間に前記一次および二次機械学習モデルによって発生される前記予測の第1および第2のセットに関する前記相違メトリックの値と比較することによって、前記訓練データセットと前記推論データセットとの間の偏差を識別することを含む、請求項1に記載の装置。
【請求項11】
前記1つ以上のアクションは、前記1つ以上のアクションを実施するためにユーザから確認を受信することなくトリガされる、請求項1に記載の装置。
【請求項12】
方法であって、
推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得することと、
前記推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得することであって、前記二次機械学習モデルは、前記一次機械学習モデルと異なり、前記一次機械学習モデルの予測を模倣するように構成される、ことと、
前記一次および二次機械学習モデルが前記一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、前記一次機械学習モデルに関連する1つ以上のアクションをトリガすることであって、前記決定は、前記予測の第1および第2のセットの比較に基づく、ことと
を含む、方法。
【請求項13】
前記一次および二次機械学習モデルが前記一次機械学習モデルに関する前記1つ以上の解説可能性基準を満たさないことを決定することは、
前記予測の第1のセットの中の予測と前記予測の第2のセットの中の予測との間の差異に基づいて、前記予測の第1および第2のセットに関する相違メトリックの1つ以上の値を決定することと、
前記予測の第1および第2のセットに関する前記相違メトリックの1つ以上の値のうちの少なくとも1つが相違閾値を上回ることを決定することと、
前記予測の第1および第2のセットに関する前記相違メトリックの少なくとも1つの値が前記相違閾値を上回るという決定に基づいて、前記一次および二次機械学習モデルが前記一次機械学習モデルに関する前記1つ以上の解説可能性基準を満たさないことを決定することと
を含む、請求項12に記載の方法。
【請求項14】
前記相違メトリックの1つ以上の値は、前記相違メトリックの1つ以上の展開値であり、
前記方法はさらに、(i)前記一次機械学習モデルの開発の間に訓練データセットに基づいて前記一次機械学習モデルによって発生される予測の第3のセットと、(ii)前記二次機械学習モデルの開発の間に前記訓練データセットに基づいて前記一次機械学習モデルによって発生される予測の第4のセットとの間の差異を示す前記相違メトリックの1つ以上の開発値を取得することを含み、
前記方法はさらに、前記相違メトリックの1つ以上の展開値を前記相違メトリックの1つ以上の開発値と比較し、前記推論データセットと前記訓練データセットとの間の偏差を検出することを含む、
請求項13に記載の方法。
【請求項15】
前記1つ以上のアクションは、前記一次機械学習モデルを異なる機械学習モデルと交換することを含む、請求項12に記載の方法。
【請求項16】
前記1つ以上のアクションは、前記一次機械学習モデルを前記二次機械学習モデルに切り替えることを含む、請求項12に記載の方法。
【請求項17】
前記1つ以上のアクションは、訓練データセットに基づいて開発の間に前記一次および二次機械学習モデルによって発生される予測の第3および第4のセットに関する前記相違メトリックの値を、前記推論データセットに基づいて展開の間に前記一次および二次機械学習モデルによって発生される前記予測の第1および第2のセットに関する前記相違メトリックの値と比較することによって、前記訓練データセットと前記推論データセットとの間の偏差を識別することを含む、請求項12に記載の方法。
【請求項18】
装置であって、
推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得するための手段と、
前記推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得するための手段であって、前記二次機械学習モデルは、前記一次機械学習モデルと異なり、前記一次機械学習モデルの予測を模倣するように構成される、手段と、
前記一次および二次機械学習モデルが前記一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、前記一次機械学習モデルに関連する1つ以上のアクションをトリガするための手段であって、前記決定は、前記予測の第1および第2のセットの比較に基づく、手段と
を備える、装置。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、その内容が、適用法によって許容される最大限の程度において、参照することによって本明細書に組み込まれる、「Interpretability-Based Machine Learning Adjustment During Production」と題され、2018年12月14日に出願された、米国特許出願第16/221,039号(代理人整理番号DRB-103)の利益および優先権を主張する。さらに、本開示の主題は、それぞれの内容が、適用法によって許容される最大限の程度において、参照することによって本明細書に組み込まれる、「Systems for Second-Order Predictive Analytics, and Related Methods and Apparatus」と題され、2017年10月23日に出願された、米国特許出願第15/790,756号(代理人整理番号DRB-002BCP)、「Determining Validity of Machine Learning Algorithms for Datasets」と題され、2018年7月30日に出願された、米国特許出願第16/049,647号(代理人整理番号DRB-102)、および/または「Determining Suitability of Machine Learning Models for Datasets」と題され、2019年7月30日に出願された、国際特許出願第PCT/US2019/044250号(代理人整理番号DRB-102WO)に開示される主題に関連し得る。
【0002】
本開示は、機械学習に関し、より具体的には、機械学習モデルを調節し、解説可能性基準を満たすことに関する。
【背景技術】
【0003】
「機械学習」は、概して、具体的タスクを実施するためのコンピュータシステムによる、ある技法(例えば、パターン認識および/または統計的推論技法)の適用を指す。機械学習システムは、サンプルデータ(例えば、「訓練データ」)に基づいて、予測モデルを構築し得、立証データ(例えば、「試験データ」)を使用して、モデルの正当性を立証し得る。サンプルおよび立証データは、記録(例えば、「観察」)のセットとして編成され得、各記録は、他のデータフィールド(例えば、「独立変数」、「入力」、または「特徴」)の値に基づいて、規定データフィールド(例えば、「従属変数」、「出力」、または「標的」)の値を示す。サンプルデータに類似または関連する他のデータ(例えば、「推論データ」)を提示されたとき、機械学習システムは、そのような予測モデルを使用し、推論データセットの標的の未知の値を正確に予測し得る。
【0004】
予測問題が識別された後、機械学習を使用し、予測問題を正確に解決する予測モデルを構築するプロセスは、概して、データ収集、データクリーニング、特徴工学、モデル発生、およびモデル展開のステップを含む。「自動機械学習」技法が、機械学習プロセスまたはその一部のステップを自動化するために使用されてもよい。
【0005】
機械学習は、広範囲のユースケースおよび業界に統合されている。多くの他のタイプのアプリケーションと異なり、機械学習アプリケーション(深層学習および先進分析論を伴う、機械学習アプリケーションを含む)は、概して、結束して動作し、正確で関連性がある結果を配信しなければならない、複数の独立起動コンポーネントを有する。さらに、入力データのわずかな変更が、結果に非線形変更を引き起こし得る。本複雑性は、機械学習システムの全ての相互依存側面を管理または監視することを困難にし得る。
【発明の概要】
【課題を解決するための手段】
【0006】
機械学習モデルが、極めて重要な決定を行うための予測を発生させるために使用されてもよい。しかしながら、機械学習モデルおよび機械学習モデルによって発生される予測は、予測に基づいて行われる決定の影響を直接受ける人物に悪影響を及ぼし得る、種々のバイアスを含み得る。したがって、業界および政府は、予測が、決定を行うために使用される機械学習モデルによって行われた場合、解説され得ることを要求する、規制を制定することができる。より一般的には、多くの場合、機械学習モデルが、特定の予測が行われた方法を解説することが可能であることが重要である。
【0007】
単純な機械学習モデルに関して、機械学習モデルによって行われる予測に寄与する因子を識別することは、簡単であり得る。しかしながら、機械学習モデルが、より複雑になるにつれて、これらの寄与する因子の簡潔な識別は、特に、モデルが展開された場合、ますます困難になり得る。専用モデル構築技法の開示を妨げることは、モデルを理解可能にするという課題をさらに悪化させ得る。
【0008】
いくつかの実施形態では、二次機械学習モデルが、一次機械学習モデルを近似するため、かつ一次機械学習モデルまたはその予測を解説するために使用されることができる。具体的には、二次機械学習モデルは、一次機械学習モデルによって行われる予測に寄与する1つ以上の因子、および/または1つ以上の因子が予測に影響を及ぼした様式の人間が理解可能な説明を提供することができる。換言すると、二次機械学習モデルは、一次機械学習モデルのための「解説可能性」を提供することができる。
【0009】
しかしながら、実践では、一次機械学習モデルおよび二次機械学習モデルからの予測は、経時的に相違し得、そのような相違が生じるとき、二次モデルは、一次モデルの予測の正確な解説を提供する可能性が低い。したがって、機械学習システムが、一次および二次機械学習モデルを監視し、特定の二次モデルが特定の一次モデルの予測の正確な解説を提供することが可能であるかどうかを決定し得る場合、役立つであろう。
【0010】
本開示の側面によると、「解説可能性基準」は、二次機械学習モデルが一次機械学習モデルの十分な近似であるかどうか、したがって、二次機械学習モデルが一次機械学習モデルおよび/またはその予測を十分に解説し得るかどうかを決定するために、使用されてもよい。例えば、1つの解説可能性基準は、一次機械学習モデルと二次機械学習モデルとの間の予測の相違が閾値相違未満であることであり得る。解説可能性基準の違反は、二次機械学習モデルが一次機械学習モデルの十分な近似ではないこと、したがって、二次機械学習モデルが一次機械学習モデルおよび/またはその予測を十分に解説しないことを示し得る。解説可能性基準の違反を回避する、またはそれに応答するために、一次機械学習モデルが、開発および/または展開において調節されてもよい。
【0011】
一般に、本明細書に説明される主題の1つの革新的側面は、第1の予測モジュールと、第2の予測モジュールと、アクションモジュールとを備える、装置で具現化されることができる。第1の予測モジュールは、推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得するように構成される。第2の予測モジュールは、推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得するように構成される。二次機械学習モデルは、一次機械学習モデルと異なり、一次機械学習モデルの予測を模倣するように構成される。アクションモジュールは、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、一次機械学習モデルに関連する1つ以上のアクションをトリガするように構成される。本決定は、予測の第1および第2のセットの比較に基づく。
【0012】
本側面の他の実施形態は、それぞれ、装置のアクションを実施するように構成される、1つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、コンピュータ実装方法、およびコンピュータプログラムを含む。1つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせ(例えば、1つ以上の記憶デバイス内に記憶された命令)を有することにより、特定のアクションを実施するように構成されることができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【0013】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの1つ以上のものを含むことができる。いくつかの実施形態では、本装置はさらに、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するように構成される、比較モジュールを備えることができる。一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するために、比較モジュールは、予測の第1のセットの中の予測と予測の第2のセットの中の予測との間の差異に基づいて、予測の第1および第2のセットに関する相違メトリックの1つ以上の値を決定することができる。次いで、比較モジュールは、予測の第1および第2のセットに関する相違メトリックの1つ以上の値のうちの少なくとも1つが相違閾値を上回ることを決定することができる。最後に、比較モジュールは、予測の第1および第2のセットに関する相違メトリックの少なくとも1つの値が相違閾値を上回るという決定に基づいて、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定することができる。
【0014】
ある実施形態では、相違メトリックの1つ以上の値を決定するために、比較モジュールは、予測毎の基準で、予測の第1および第2のセットのうちの予測毎に相違メトリックの個別の値を決定する。代替実施形態では、相違メトリックの1つ以上の値を決定するために、比較モジュールは、予測の第1および第2のセットのうちの1つ以上のサブセットに関して相違メトリックの個別の値を決定する。
【0015】
いくつかの実施形態では、相違メトリックの1つ以上の値は、相違メトリックの1つ以上の展開値である。そのような実施形態では、比較モジュールは、(i)一次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第3のセットと、(ii)二次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第4のセットとの間の差異を示す、相違メトリックの1つ以上の開発値を取得することができる。次いで、比較モジュールは、相違メトリックの1つ以上の展開値を相違メトリックの1つ以上の開発値と比較し、推論データセットと訓練データセットとの間の偏差を検出することができる。
【0016】
ある実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルに関する1つ以上の解説可能性基準の違反に関するアラートを送信するステップを含み、アラートはさらに、違反に応答するための1つ以上の推奨を備える。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを異なる機械学習モデルと交換するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを再訓練するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを二次機械学習モデルに切り替えるステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、訓練データセットに基づいて開発の間に一次および二次機械学習モデルによって発生される、予測の第3および第4のセットに関する相違メトリックの値を、推論データセットに基づいて展開の間に一次および二次機械学習モデルによって発生される、予測の第1および第2のセットに関する相違メトリックの値と比較することによって、訓練データセットと推論データセットとの間の偏差を識別するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、1つ以上のアクションを実施するためにユーザから確認を受信することなくトリガされる。
【0017】
一般に、本明細書に説明される主題の別の革新的側面は、推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得するステップと、推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得するステップと、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、一次機械学習モデルに関連する1つ以上のアクションをトリガするステップとを含む、方法で具現化されることができる。二次機械学習モデルは、一次機械学習モデルと異なり、一次機械学習モデルの予測を模倣するように構成される。一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定は、予測の第1および第2のセットの比較に基づく。
【0018】
本側面の他の実施形態は、それぞれ、方法のアクションを実施するように構成される、1つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、装置、およびコンピュータプログラムを含む。1つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせ(例えば、1つ以上の記憶デバイス内に記憶された命令)を有することにより、特定のアクションを実施するように構成されることができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【0019】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの1つ以上のものを含むことができる。いくつかの実施形態では、方法のアクションはさらに、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するステップを含むことができる。一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するために、方法のアクションは、予測の第1のセットの中の予測と予測の第2のセットの中の予測との間の差異に基づいて、予測の第1および第2のセットに関する相違メトリックの1つ以上の値を決定するステップを含むことができる。次いで、方法のアクションは、予測の第1および第2のセットに関する相違メトリックの1つ以上の値のうちの少なくとも1つが相違閾値を上回ることを決定するステップを含むことができる。最後に、方法のアクションは、予測の第1および第2のセットに関する相違メトリックの少なくとも1つの値が相違閾値を上回るという決定に基づいて、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するステップを含むことができる。
【0020】
ある実施形態では、相違メトリックの1つ以上の値を決定するために、方法のアクションは、予測毎の基準で、予測の第1および第2のセットのうちの予測毎に相違メトリックの個別の値を決定するステップを含むことができる。代替実施形態では、相違メトリックの1つ以上の値を決定するために、方法のアクションは、予測の第1および第2のセットのうちの1つ以上のサブセットに関して相違メトリックの個別の値を決定するステップを含むことができる。
【0021】
いくつかの実施形態では、相違メトリックの1つ以上の値は、相違メトリックの1つ以上の展開値である。そのような実施形態では、方法のアクションは、(i)一次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第3のセットと、(ii)二次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第4のセットとの間の差異を示す、相違メトリックの1つ以上の開発値を取得するステップを含むことができる。次いで、方法のアクションは、相違メトリックの1つ以上の展開値を相違メトリックの1つ以上の開発値と比較し、推論データセットと訓練データセットとの間の偏差を検出するステップを含むことができる。
【0022】
ある実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルに関する1つ以上の解説可能性基準の違反に関するアラートを送信するステップを含み、アラートはさらに、違反に応答するための1つ以上の推奨を備える。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを異なる機械学習モデルと交換するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを再訓練するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを二次機械学習モデルに切り替えるステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、訓練データセットに基づいて開発の間に一次および二次機械学習モデルによって発生される、予測の第3および第4のセットに関する相違メトリックの値を、推論データセットに基づいて展開の間に一次および二次機械学習モデルによって発生される、予測の第1および第2のセットに関する相違メトリックの値と比較することによって、訓練データセットと推論データセットとの間の偏差を識別するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、1つ以上のアクションを実施するためにユーザから確認を受信することなくトリガされる。
【0023】
一般に、本明細書に説明される主題の別の革新的側面は、推論データセットに基づいて、展開された一次機械学習モデルから予測の第1のセットを取得するための手段と、推論データセットに基づいて、展開された二次機械学習モデルから予測の第2のセットを取得するための手段と、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定に応答して、一次機械学習モデルに関連する1つ以上のアクションをトリガするための手段とを備える、装置で具現化されることができる。二次機械学習モデルは、一次機械学習モデルと異なり、一次機械学習モデルの予測を模倣するように構成される。一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないという決定は、予測の第1および第2のセットの比較に基づく。
【0024】
本側面の他の実施形態は、それぞれ、装置のアクションを実施するように構成される、1つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、コンピュータ実装方法、およびコンピュータプログラムを含む。1つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせ(例えば、1つ以上の記憶デバイス内に記憶された命令)を有することにより、特定のアクションを実施するように構成されることができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【0025】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの1つ以上のものを含むことができる。いくつかの実施形態では、本装置はさらに、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するための手段を備えることができる。一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するために、本装置は、予測の第1のセットの中の予測と予測の第2のセットの中の予測との間の差異に基づいて、予測の第1および第2のセットに関する相違メトリックの1つ以上の値を決定するための手段を含むことができる。次いで、本装置は、予測の第1および第2のセットに関する相違メトリックの1つ以上の値のうちの少なくとも1つが相違閾値を上回ることを決定するための手段を含むことができる。最後に、本装置は、予測の第1および第2のセットに関する相違メトリックの少なくとも1つの値が相違閾値を上回るという決定に基づいて、一次および二次機械学習モデルが一次機械学習モデルに関する1つ以上の解説可能性基準を満たさないことを決定するための手段を含むことができる。
【0026】
ある実施形態では、相違メトリックの1つ以上の値を決定するために、本装置は、予測毎の基準で、予測の第1および第2のセットのうちの予測毎に相違メトリックの個別の値を決定するための手段を含むことができる。代替実施形態では、相違メトリックの1つ以上の値を決定するために、本装置は、予測の第1および第2のセットのうちの1つ以上のサブセットに関して相違メトリックの個別の値を決定するための手段を含むことができる。
【0027】
いくつかの実施形態では、相違メトリックの1つ以上の値は、相違メトリックの1つ以上の展開値である。そのような実施形態では、本装置は、(i)一次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第3のセットと、(ii)二次機械学習モデルの開発の間に訓練データセットに基づいて一次機械学習モデルによって発生される、予測の第4のセットとの間の差異を示す、相違メトリックの1つ以上の開発値を取得するための手段を含むことができる。次いで、本装置は、相違メトリックの1つ以上の展開値を相違メトリックの1つ以上の開発値と比較し、推論データセットと訓練データセットとの間の偏差を検出するための手段を含むことができる。
【0028】
ある実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルに関する1つ以上の解説可能性基準の違反に関するアラートを送信するステップを含み、アラートはさらに、違反に応答するための1つ以上の推奨を備える。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを異なる機械学習モデルと交換するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを再訓練するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、一次機械学習モデルを二次機械学習モデルに切り替えるステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、訓練データセットに基づいて開発の間に一次および二次機械学習モデルによって発生される、予測の第3および第4のセットに関する相違メトリックの値を、推論データセットに基づいて展開の間に一次および二次機械学習モデルによって発生される、予測の第1および第2のセットに関する相違メトリックの値と比較することによって、訓練データセットと推論データセットとの間の偏差を識別するステップを含む。付加的実施形態では、アクションモジュールによってトリガされる1つ以上のアクションは、1つ以上のアクションを実施するためにユーザから確認を受信することなくトリガされる。
【0029】
本明細書に説明される主題の特定の実施形態は、以下の利点のうちの1つ以上のものを実現するように実装されることができる。機械学習モデルによって行われる予測のための解説は、これらの予測に基づいて行われる極めて重要な決定を正当化および支持するために使用されることができる。さらに、機械学習モデルが解説可能性基準を満たさないという決定に応答して、アクションをトリガすることによって、予測解説の正確度は、予測のための正確な解説が一貫して持続されるように、リアルタイムで監視および改良されることができる。また、一次および二次機械学習モデルによって発生される予測に関する相違メトリックの値の変化を検出することによって、データドリフトが、検出され得、適切なアクションが、そのようなデータドリフトに関して考慮され得る。
【0030】
いくつかの実施形態、そのための動機、および/またはその利点の説明を含む、前述の概要は、読者が本開示を理解することを支援することを意図しており、いかようにも請求項のうちのいずれの範囲も限定しない。
【図面の簡単な説明】
【0031】
本発明の利点が容易に理解されるであろうために、いくつかの実施形態のより具体的な説明が、添付図面に図示される具体的実施形態を参照することによって与えられるであろう。これらの図面が、いくつかの実施形態のみを描写し、したがって、その範囲の限定と見なされないことを理解した上で、いくつかの実施形態が、付随する図面の使用を通して、付加的特異性および詳細を伴って説明および解説されるであろう。
【0032】
【
図1】
図1は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のためのシステムを図示する、概略ブロック図である。
【
図2A】
図2Aは、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システムを図示する、概略ブロック図である。
【
図2B】
図2Bは、別の実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システムを図示する、概略ブロック図である。
【
図2C】
図2Cは、さらに別の実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システムを図示する、概略ブロック図である。
【
図3】
図3は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための装置を図示する、概略ブロック図である。
【
図4】
図4は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための方法を図示する、概略フローチャート図である。
【
図5】
図5は、別の実施形態による、機械学習モデルの解説可能性ベースの調節のための方法を図示する、概略フローチャート図である。
【
図6】
図6Aは、ある実施形態による、二次機械学習モデルを発生させるための方法を図示する、概略フローチャート図である。
図6Bは、ある実施形態による、第2次モデル化プロシージャを実施するための方法を図示する、概略フローチャート図である。
【発明を実施するための形態】
【0033】
「一実施形態」、「ある実施形態」、「いくつかの実施形態」、または類似言語の本明細書の全体を通した言及は、実施形態に関連して説明される特定の特徴、構造、または特性が、少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書の全体を通した、語句「一実施形態では」、「ある実施形態では」、「いくつかの実施形態では」、および類似言語の表出は、全て同一の実施形態を指し得るが、必ずしもそうではなく、別様に明示的に規定されない限り、「1つ以上のが、全てではない実施形態」を意味する。
【0034】
さらに、実施形態の説明される特徴、利点、および特性は、任意の好適な様式で組み合わせられることができる。当業者は、実施形態が、特定の実施形態の具体的特徴または利点のうちの1つ以上のものを伴わずに、実践され得ることを認識するであろう。他の事例では、全ての実施形態に存在するわけではない場合がある、付加的特徴および利点が、ある実施形態で認識されることができる。
【0035】
実施形態のこれらの特徴および利点は、以下の説明ならびに添付される請求項から、より完全に明白となるであろう、または以降に記載されるような実施形態の実践によって習得されることができる。当業者によって理解されるであろうように、本明細書に説明される主題の側面は、システム、方法、および/またはコンピュータプログラム製品として具現化されることができる。故に、いくつかの実施形態の側面は、概して、本明細書では全て「回路」、「モジュール」、または「システム」と称され得る、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、またはソフトウェアおよびハードウェア側面を組み合わせる実施形態の形態をとることができる。さらに、いくつかの実施形態の側面は、その上に具現化されたプログラムコードを有する、1つ以上のコンピュータ可読媒体で具現化されるコンピュータプログラム製品の形態をとることができる。
【0036】
本明細書に説明される機能単位の多くは、それらの実装独立性をより具体的に強調するために、モジュールとして標識されている。例えば、モジュールは、カスタムVLSI回路またはゲートアレイ、論理チップ等の既製の半導体、トランジスタ、もしくは他の離散コンポーネントを備える、ハードウェア回路として実装されることができる。モジュールはまた、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス、または同等物等のプログラマブルハードウェアデバイスで実装されることができる。
【0037】
モジュールはまた、種々のタイプのプロセッサによる実行のためにソフトウェアで実装されることができる。プログラムコードの識別されるモジュールは、例えば、オブジェクト、プロシージャ、または関数として編成され得る、例えば、コンピュータ命令の1つ以上の物理もしくは論理ブロックを備えてもよい。なお、識別されるモジュールの実行可能ファイルは、ともに物理的に位置する必要はないが、ともに論理的に継合されると、モジュールを構成し、モジュールのための記述される目的を達成する、異なる場所に記憶された異種命令を備えることができる。
【0038】
実際、プログラムコードのモジュールは、単一の命令または多くの命令であり得、いくつかの異なるコードセグメントにわたって、異なるプログラムの間で、およびいくつかのメモリデバイスを横断して、分散されることさえできる。同様に、動作データが、本明細書ではモジュール内で識別および図示されることができ、任意の好適な形態で具現化され、任意の好適なタイプのデータ構造内に編成されることができる。動作データは、単一のデータセットとして収集されることができる、または異なる記憶デバイスにわたるものを含む、異なる場所にわたって分散されることができ、少なくとも部分的に、システムまたはネットワーク上に単に電子信号として存在することができる。モジュールまたはモジュールの一部が、ソフトウェアで実装される場合、プログラムコードは、1つ以上のコンピュータ可読媒体上に記憶および/または伝搬されることができる。
【0039】
コンピュータプログラム製品は、プロセッサにいくつかの実施形態の側面を実行させるためのコンピュータ可読プログラム命令をその上に有する、コンピュータ可読記憶媒体(または複数の媒体)を含むことができる。
【0040】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のために命令を留保および記憶し得る、有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、限定ではないが、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述の任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な実施例の非包括的リストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(「RAM」)、読取専用メモリ(「ROM」)、消去可能プログラマブル読取専用メモリ(「EPROM」またはフラッシュメモリ)、スタティックランダムアクセスメモリ(「SRAM」)、ポータブルコンパクトディスク読取専用メモリ(「CD-ROM」)、デジタル多用途ディスク(「DVD」)、メモリスティック、フロッピー(登録商標)ディスク、パンチカードまたはその上に記録された命令を有する溝内の隆起構造等の機械的にエンコードされたデバイス、および前述の任意の好適な組み合わせを含む。本明細書で使用されるような「非一過性の」コンピュータ可読記憶媒体は、それ自体が、電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体を通して伝搬する電磁波(例えば、光ファイバケーブルを通して通過する光パルス)、もしくはワイヤを通して伝送される電気信号等の一時的信号であるものとして解釈されるものではない。
【0041】
本明細書に説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から個別のコンピューティング/処理デバイスに、もしくはネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、および/または無線ネットワークを介して、外部コンピュータまたは外部記憶デバイスにダウンロードされることができる。ネットワークは、銅製伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを備えることができる。各コンピューティング/処理デバイス内のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個別のコンピューティング/処理デバイス内のコンピュータ可読記憶媒体内に記憶するために、コンピュータ可読プログラム命令を転送する。
【0042】
いくつかの実施形態の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++、もしくは同等物等のオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくは類似プログラミング言語等の従来のプロシージャプログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードもしくはオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、独立型ソフトウェアパッケージとして、部分的にユーザのコンピュータ上および部分的に遠隔コンピュータ上で、または完全に遠隔コンピュータもしくはサーバ上で、実行されることができる。後者のシナリオでは、遠隔コンピュータは、ローカルエリアネットワーク(LAN)もしくは広域ネットワーク(WAN)を含む、任意のタイプのネットワークを通して、ユーザのコンピュータに接続されることができる、または接続は、(例えば、インターネットサービスプロバイダを使用してインターネットを通して)外部コンピュータに行われることができる。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む、電子回路が、いくつかの実施形態の側面を実施するために、コンピュータ可読プログラム命令の状態情報を利用し、電子回路を個人化することによって、コンピュータ可読プログラム命令を実行することができる。
【0043】
いくつかの実施形態の側面が、いくつかの実施形態による、方法、装置(システム)、およびコンピュータプログラム製品のフローチャート図および/またはブロック図を参照して、本明細書に説明される。フローチャート図および/またはブロック図の各ブロック、ならびにフローチャート図および/またはブロック図内のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装され得ることを理解されたい。
【0044】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為を実装するための手段を作成するように、機械を生成するために、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されることができる。これらのコンピュータ可読プログラム命令はまた、その中に記憶された命令を有する、コンピュータ可読記憶媒体が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為の側面を実装する命令を含む、製造品を備えるように、特定の様式で機能するようにコンピュータ、プログラマブルデータ処理装置、ならびに/もしくは他のデバイスに指示し得る、コンピュータ可読記憶媒体内に記憶されることができる。
【0045】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為を実装するように、一連の動作ステップを、コンピュータ、他のプログラマブル装置、または他のデバイス上で実施させ、コンピュータ実装プロセスを生成するために、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードされることができる。
【0046】
図内の概略フローチャート図および/または概略ブロック図は、種々の実施形態による、装置、システム、方法、およびコンピュータプログラム製品の可能性として考えられる実装のアーキテクチャ、機能性、および動作を図示する。この点に関して、概略フローチャート図および/または概略ブロック図内の各ブロックは、規定論理関数を実装するためのプログラムコードの1つ以上の実行可能命令を備える、モジュール、セグメント、またはコードの一部を表すことができる。
【0047】
また、いくつかの代替実装では、ブロックに記述される機能は、図に記述される順序外で起こり得ることも理解されたい。例えば、連続して示される2つのブロックは、実際には、実質的に並行して実行されてもよい、またはブロックは、時として、関与する機能性に応じて、逆の順序で実行されることができる。図示される図の1つ以上のブロックもしくはその部分と機能、論理、または効果が同等である、他のステップおよび方法も、着想されることができる。
【0048】
種々の矢印タイプおよび線タイプが、フローチャートおよび/またはブロック図で採用されることができるが、それらは、対応する実施形態の範囲を限定しないと理解される。実際、いくつかの矢印または他のコネクタが、描写される実施形態の論理フローのみを示すために使用されてもよい。例えば、矢印は、描写される実施形態の列挙されるステップの合間の規定されていない持続時間の待機または監視周期を示し得る。いくつかの矢印または他のコネクタが、データのフローを示すために使用されてもよい。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図内のブロックの組み合わせは、規定機能または行為、もしくは専用ハードウェアおよびプログラムコードの組み合わせを実施する、専用ハードウェアベースのシステムによって実装され得ることにも留意されたい。
【0049】
装置、システム、プログラム製品、および方法が、開発および/または展開の間の機械学習モデルの解説可能性ベースの調節に関して開示される。
【0050】
本明細書で使用されるように、用語「機械学習モデル」は、具体的訓練データセット上で機械学習アルゴリズムを訓練するプロセスによって発生される任意の好適なモデルアーチファクトを指し得る。機械学習モデルは、予測を発生させるために使用されることができる。当業者は、語句「機械学習モデルの好適性」が、モデルアーチファクトの好適性および/または推論データに基づいて予測を行うためにモデルアーチファクトによって使用されるアルゴリズムの好適性を指し得ることを理解するであろう。
【0051】
本明細書で参照されるように、用語「機械学習システム」は、機械学習モデルが動作する、任意の環境を指し得る。下記に詳細に議論されるように、機械学習システムは、種々のコンポーネント、パイプライン、データセット、他のインフラストラクチャ等を含んでもよい。
【0052】
本明細書で参照されるように、機械学習モデルに関する用語「開発」は、機械学習モデルの構築を指し得る。機械学習モデルは、訓練データセットを使用して、コンピュータによって構築される。したがって、機械学習モデルの開発は、訓練データセットを使用する、機械学習モデルの訓練を指し得る。いくつかの実施形態では、機械学習モデルを訓練するために使用される訓練データセットは、既知の成果(例えば、標識)を含むことができる。代替実施形態では、訓練データセットは、既知の成果を含まない。
【0053】
機械学習モデルの開発と対照的に、本明細書で参照されるように、機械学習モデルに関する用語「展開」は、実世界予測を発生させるための開発された機械学習モデルの使用を指し得る。展開された機械学習モデルは、開発(例えば、訓練)を完了している場合がある。モデルは、それが開発されたシステムおよび/または第三者システムを含む、任意のシステムで展開されることができる。展開された機械学習モデルは、推論データセットに基づいて、実世界予測を行うことができる。訓練データセットのある実施形態と異なり、推論データセットは、概して、既知の成果を含まない。むしろ、展開された機械学習モデルは、推論データセットに基づいて、成果の予測を発生させるために使用される。
【0054】
機械学習モデルは、例えば、ある人物が将来の犯罪を犯すであろう可能性、貸付承認のための信頼性、および医療診断等の極めて重要な決定を行うための予測を発生させるために使用されてもよい。機械学習モデルおよび機械学習モデルによって発生される予測は、予測に基づいて行われる決定の影響を直接受ける人物に悪影響を及ぼし得る、例えば、性別、地理的場所、人種、および同等物に基づく、種々のバイアスを含み得る。したがって、業界および政府は、予測が、決定を行うために使用される機械学習モデルによって行われた場合、解説され得ることを要求する、規制を制定することができる。
【0055】
したがって、本明細書で使用されるように、機械学習モデルまたはモデルによって行われる予測に関する用語「解説可能性」は、(i)機械学習モデルによる予測の発生に寄与した1つ以上の因子が正確に識別され得る、および/または(ii)識別された因子が予測に影響を及ぼした様式が正確に明確に述べられ得る、程度を指す。単純な機械学習モデルに関して、機械学習モデルによって行われる予測に寄与する因子を識別することは、簡単であり得る。しかしながら、機械学習モデルが、より複雑になるにつれて、これらの寄与する因子の簡潔な識別は、特に、モデルが展開された場合、ますます困難になり得る。専用モデル構築技法の開示を妨げることは、モデルを理解可能にするという課題をさらに悪化させ得る。
【0056】
いくつかの実施形態では、二次機械学習モデルが、一次機械学習モデルを近似するため、かつ一次機械学習モデルまたはその予測を解説するために使用されることができる。二次機械学習モデルは、一次機械学習モデルよりも比較的に単純であり得るが、一次機械学習モデルによって行われる予測を模倣するように構成されることができる。二次機械学習モデルの実施形態が、
図6A-Bに関して下記に詳細に議論される。
【0057】
二次機械学習モデルの相対的単純性、ならびに一次機械学習モデルのその近似に起因して、二次機械学習モデルは、一次機械学習モデルによって行われる予測に寄与する1つ以上の因子、および/または識別された因子が予測に影響を及ぼした様式の人間が理解可能な説明を提供し得る。換言すると、二次機械学習モデルは、一次機械学習モデルのための「解説可能性」を提供し得る。ある場合には、そのような二次機械学習モデルは、本明細書では「カナリア」モデルと称され得る。
【0058】
しかしながら、実践では、展開の間に一次機械学習モデルによって処理される推論データは、多くの場合、開発の間に一次機械学習モデルによって処理される訓練データから逸脱し、これは、一次機械学習モデルおよび二次機械学習モデルからの予測を相違させ得る。加えて、同様に、一次機械学習モデルおよび二次機械学習モデルからの予測を相違させる、異常が、一次機械学習モデルに存在し得る。予測における本相違は、一次機械学習モデルを二次機械学習モデルによって解説不可能にし、それによって、一次機械学習モデルに関する解説可能性基準に違反し得る。
【0059】
本明細書で参照されるように、用語「解説可能性基準」は、二次機械学習モデルが一次機械学習モデルの予測を解説することが可能であるかどうかを示す、基準を指し得る。例えば、1つの解説可能性基準は、一次機械学習モデルと二次機械学習モデルとの間の予測の相違が閾値相違未満であることであり得る。解説可能性基準は、二次機械学習モデルが一次機械学習モデルの十分な近似であるかどうか、したがって、二次機械学習モデルが一次機械学習モデルおよび/またはその予測を十分に解説し得るかどうかを決定するために、使用されることができる。
【0060】
さらに、本明細書で参照されるように、用語「解説可能性基準の違反」は、解説可能性基準を遂行する(例えば、満たす)ことができないことを指し得る。より具体的には、解説可能性基準の違反は、一次および二次機械学習モデルからの予測に関して決定される相違メトリックが閾値相違を下回ることができないことを指し得る。解説可能性基準の違反は、二次機械学習モデルが一次機械学習モデルの十分な近似ではないこと、したがって、二次機械学習モデルが一次機械学習モデルおよび/またはその予測を十分に解説しないことを示し得る。
【0061】
解説可能性基準の違反を回避するために、一次機械学習モデルは、一次機械学習モデルに関連する1つ以上のアクションを実施することによって、開発および/または展開において調節されてもよい。したがって、本明細書で参照されるように、機械学習モデルの「解説可能性ベースの調節」は、解説可能性基準を満たすための一次機械学習モデルの調節(例えば、解説可能性基準を満たす目的のための調節および/または解説可能性基準を満たす効果を有する調節)を指す。機械学習モデルの解説可能性ベースの調節は、本開示の残りの全体を通して詳細に議論される。
【0062】
図1は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のためのシステム100を図示する、概略ブロック図である。一実施形態では、システム100は、1つ以上の情報ハンドリングデバイス102と、1つ以上の機械学習(ML)管理装置104と、1つ以上のデータネットワーク106と、1つ以上のサーバ108とを含む。ある実施形態では、具体的な数の情報ハンドリングデバイス102、ML管理装置104、データネットワーク106、およびサーバ108が、
図1に描写されるが、当業者は、本開示を踏まえて、任意の数の情報ハンドリングデバイス102、ML管理装置104、データネットワーク106、およびサーバ108が、システム100に含まれ得ることを認識するであろう。
【0063】
一実施形態では、システム100は、1つ以上の情報ハンドリングデバイス102を含む。情報ハンドリングデバイス102は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン、スマートスピーカ(例えば、Amazon Echo(R)、Google Home(R)、Apple HomePod(R))、セキュリティシステム、セットトップボックス、ゲーム機、スマートTV、スマートウォッチ、フィットネスバンドまたは他のウェアラブル活動追跡デバイス、光学頭部搭載型ディスプレイ(例えば、仮想現実ヘッドセット、スマートグラス、または同等物)、高解像度マルチメディアインターフェース(「HDMI(登録商標)」)または他の電子ディスプレイドングル、携帯情報端末、デジタルカメラ、ビデオカメラ、もしくはプロセッサ(例えば、中央処理ユニット(「CPU」)、プロセッサコア、フィールドプログラマブルゲートアレイ(「FPGA」)または他のプログラマブル論理、特定用途向け集積回路(「ASIC」)、コントローラ、マイクロコントローラ、および/または別の半導体集積回路デバイス)、揮発性メモリ、ならびに/もしくは不揮発性記憶媒体を備える、別のコンピューティングデバイスのうちの1つ以上のものを含んでもよい。
【0064】
ある実施形態では、情報ハンドリングデバイス102は、下記に説明されるデータネットワーク106を経由して、1つ以上の他の情報ハンドリングデバイス102に、および/または1つ以上のサーバ108に通信可能に結合される。情報ハンドリングデバイス102は、さらなる実施形態では、種々のプログラム、プログラムコード、アプリケーション、命令、機能、および/または同等物を実行するように構成される、プロセッサ、プロセッサコア、ならびに/もしくは同等物を含んでもよい。情報ハンドリングデバイス102は、下記により詳細に説明されるように、種々の機械学習動作を実施するための実行可能コード、機能、命令、オペレーティングシステム、および/または同等物を含んでもよい。
【0065】
いくつかの実施形態では、ML管理装置104は、二次機械学習モデルが一次機械学習を十分に解説することができるかどうかを決定するように構成される。換言すると、ML管理装置104は、二次機械学習モデルが一次機械学習モデルによる予測の識別に寄与した1つ以上の因子を正確に識別することができるかどうかを決定するように構成されてもよい。
【0066】
二次機械学習モデルが一次機械学習モデルを十分に解説することができるかどうかを決定するために、ML管理装置104は、開発および/または展開の間に一次機械学習モデルならびに二次機械学習モデルを監視してもよい(例えば、持続的または増分的に監視する)。具体的には、ML管理装置104は、データセット(例えば、開発の間の訓練データセットまたは展開の間の推論データセット)に基づいて一次機械学習モデルによって行われる予測のセット、および同一のデータセットに基づいて二次機械学習モデルによって行われる予測のセットを受信し、例えば、二乗平均平方根誤差(「RMSE」)分析、他の統計分析、および/または任意の他の好適な技法を使用して、予測の異なるセットを比較することができる。予測の一次および二次セットの本比較に基づいて、ML管理装置104は、予測のセットの間の相違の程度を示す、相違メトリックの値を決定してもよい。次いで、決定された相違メトリックは、解説可能性基準が違反されたかどうかを決定するように、一次機械学習モデルに関する解説可能性基準に従って査定されることができる。例えば、決定された相違メトリックは、一次機械学習モデルに関する解説可能性基準が違反されたかどうかを決定するように、閾値相違と比較されることができる。
【0067】
解説可能性基準の非違反は、二次機械学習モデルが一次機械学習モデルの良好な近似であること、さらに、二次機械学習モデルが一次機械学習モデルを十分に解説することが可能であることを示すことができる。他方では、解説可能性基準の違反は、二次機械学習モデルが一次機械学習モデルの良好な近似ではないこと、さらに、二次機械学習モデルが一次機械学習モデルを十分に解説することが可能ではないことを示すことができる。いくつかの実施形態では、一次機械学習モデルの開発の間に行われる決定(例えば、二次機械学習モデルが一次機械学習モデルの良好な近似であるという決定)は、一次機械学習モデルの展開に続いて、もはや当てはまらない場合がある。これは、一次および二次機械学習モデルの開発の間に使用される訓練データセットと、展開の間に使用される推論データセットとの間の偏差の結果であり得る。
【0068】
一次機械学習モデルに関する解説可能性基準が違反される事例において、ML管理装置104は、一次機械学習モデルに関連するアクションを講じてもよい。例えば、ML管理装置104は、2つのモデルからの予測が解説可能性基準を満たさない理由を調査し、2つのモデルに関する予測が解説可能性基準を満たさないことを示すアラートを発生させ、および/または一次機械学習モデルを調節して解説可能性基準を満たしてもよい。このように、一次機械学習モデルは、開発および/または展開の間に、監視され、必要である場合、(例えば、継続的または増分的に)補正されることができる。
【0069】
任意のサブモジュールを含む、ML管理装置104は、情報ハンドリングデバイス102のうちの1つ以上のもの、サーバ108のうちの1つ以上のもの、1つ以上のネットワークデバイス、および/またはシステム100の他のコンポーネントの上に位置することができる。種々の実施形態では、ML管理装置104は(またはその任意のモジュール)は、情報ハンドリングデバイス102のうちの1つ以上のものの上、サーバ108のうちの1つ以上のものの上、もしくはデータネットワーク106上の他の場所にインストールまたは展開され得る、ハードウェアアプライアンスとして具現化されてもよい。ML管理装置104のハードウェアアプライアンスは、ML管理装置104に関して本明細書に説明される機能を実施するように構成され得る、電力インターフェース、有線および/または無線ネットワークインターフェース、ディスプレイにアタッチするグラフィカルインターフェース、ならびに/もしくは半導体集積回路デバイスを含むことができる。ある実施形態では、ML管理装置104は、セキュアハードウェアドングル、セットトップボックス、ネットワークアプライアンス、または別のハードウェアデバイス等のハードウェアデバイスを含むことができる。いくつかの事例では、ハードウェアデバイスは、有線接続(例えば、ユニバーサルシリアルバス(「USB」)接続)または無線接続(例えば、Bluetooth(登録商標)、Wi-Fi、および/または近距離通信(「NFC」))のいずれかによって、ラップトップコンピュータ、サーバ108のうちの1つ以上のもの、タブレットコンピュータ、スマートフォン、セキュリティシステム、もしくは同等物等のデバイスにアタッチすることができる。代替実施形態では、ハードウェアデバイスは、電子ディスプレイデバイス(例えば、HDMI(登録商標)ポート、DisplayPortポート、MiniDisplayPortポート、VGAポート、および/またはDVIポートを使用する、テレビもしくはモニタ)にアタッチすることができる。
【0070】
上記に述べられるように、いくつかの実施形態では、ML管理装置104は、マイクロコントローラ、特定用途向け集積回路(「ASIC」)、プロセッサ、プロセッサコア、または同等物上で実行するためのフィールドプログラマブルゲートアレイ(「FPGA」)または他のプログラマブル論理、FPGAまたは他のプログラマブル論理のためのファームウェア、マイクロコード等の半導体集積回路デバイス(例えば、1つ以上のチップ、ダイ、もしくは他の離散論理ハードウェア)を含むことができる。一実施形態では、ML管理装置104は、(例えば、揮発性メモリ、不揮発性記憶媒体、ネットワークインターフェース、周辺デバイス、および/またはグラフィカル/ディスプレイインターフェースへの)1つ以上の電線もしくは接続を伴うプリント回路基板上に搭載されることができる。ML管理装置104は、データを送信および受信するように構成される(例えば、プリント回路基板の1つ以上の電線と通信する)、1つ以上のピン、パッド、もしくは他の電気接続、1つ以上のハードウェア回路、および/またはML管理装置104の種々の機能を実施するように構成される他の電気回路を含んでもよい。
【0071】
ML管理装置104の半導体集積回路デバイスまたは他のハードウェアアプライアンスは、限定ではないが、ランダムアクセスメモリ(「RAM」)、ダイナミックRAM(「DRAM」)、またはキャッシュを含み得る、1つ以上の揮発性メモリ媒体を含む、および/またはそれに通信可能に結合されてもよい。一実施形態では、ML管理装置104の半導体集積回路デバイスまたは他のハードウェアアプライアンスは、限定ではないが、NANDフラッシュメモリ、NORフラッシュメモリ、ナノランダムアクセスメモリ(ナノRAMまたはNRAM)、ナノ結晶ワイヤベースのメモリ、酸化ケイ素ベースの10ナノメートル未満のプロセスメモリ、グラフェンメモリ、酸化ケイ素・窒化酸化物シリコン(「SONOS」)、抵抗RAM(「RRAM(登録商標)」)、プログラマブル金属化セル(「PMC」)、伝導性架橋RAM(「CBRAM」)、磁気抵抗RAM(「MRAM」)、ダイナミックRAM(「DRAM」)、相変化RAM(「PRAM」または「PCM」)、磁気記憶媒体(例えば、ハードディスク、テープ)、および/または光学記憶媒体を含み得る、1つ以上の不揮発性メモリ媒体を含む、ならびに/もしくはそれに通信可能に結合されることができる。
【0072】
本システムのデータネットワーク106は、デジタル通信を伝送する、デジタル通信ネットワークであってもよい。データネットワーク106は、無線セルラーネットワーク等の無線ネットワーク、Wi-Fiネットワーク等のローカル無線ネットワーク、Bluetooth(登録商標)ネットワーク、近距離通信(「NFC」)ネットワーク、および/またはアドホックネットワークを含んでもよい。データネットワーク106は、広域ネットワーク(「WAN」)、ストレージエリアネットワーク(「SAN」)、ローカルエリアネットワーク(LAN)、光ファイバネットワーク、インターネット、および/または別のデジタル通信ネットワークを含んでもよい。データネットワーク106は、2つ以上のネットワークを含んでもよい。データネットワーク106は、1つ以上のサーバ、ルータ、スイッチ、および/または他のネットワーキング機器を含んでもよい。データネットワーク106はまた、ハードディスクドライブ、光学ドライブ、不揮発性メモリ、および/またはRAM等の1つ以上のコンピュータ可読記憶媒体を含んでもよい。
【0073】
無線接続は、携帯電話ネットワークであってもよい。無線接続はまた、Institute of Electrical and Electronics Engineers(「IEEE」)802.6規格のうちのいずれか1つに基づく、Wi-Fiネットワークを採用してもよい。代替として、無線接続は、Bluetooth(登録商標)接続であってもよい。加えて、無線接続は、International Organization for Standardization(「ISO」)、International Electrotechnical Commission(「IEC」)、American Society for Testing and Materials(R)(ASTM(R))、DASH7TM Alliance、およびEPCGlobalTMによって確立されたRFID規格を含む、無線周波数識別(「RFID」)通信を採用してもよい。代替として、無線接続は、IEEE 802規格に基づくZigBee(R)接続を採用してもよい。一実施形態では、無線接続は、Sigma Designs(R)によって設計されるようなZ-Wave(R)接続を採用する。代替として、無線接続は、Dynastream(R) Innovations Inc.(Cochrane, Canada)によって定義されるようなANT(R)および/またはANT+(R)接続を採用してもよい。
【0074】
無線接続は、Infrared Data Association(R)(「IrDA」(R))によって定義されるような赤外線物理層仕様(「IrPHY」)に少なくとも準拠する接続を含む、赤外線接続であってもよい。代替として、無線接続は、携帯電話ネットワーク通信であってもよい。各規格および/または接続タイプは、本開示の出願日時点の規格ならびに/もしくは接続タイプの最新バージョンおよび改正を含んでもよい。
【0075】
1つ以上のサーバ108は、ブレードサーバ、メインフレームサーバ、タワーサーバ、ラックサーバ、および/または同等物として具現化されてもよい。1つ以上のサーバ108は、メールサーバ、ウェブサーバ、アプリケーションサーバ、FTPサーバ、メディアサーバ、データサーバ、ウェブサーバ、ファイルサーバ、仮想サーバ、および/または同等物として構成されてもよい。1つ以上のサーバ108は、データネットワーク106を経由して、情報ハンドリングデバイス102のうちの1つ以上のものに通信可能に結合(例えば、ネットワーク化)されてもよい。1つ以上のサーバ108は、機械学習データ、モデル、訓練モデル、および/または同等物等の情報ハンドリングデバイス102のうちの1つ以上のものと関連付けられるデータを記憶してもよい。
【0076】
図2Aは、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システム200を図示する、概略ブロック図である。
図2Aに示される実施形態では、機械学習システム200は、例えば、論理機械学習層を含むことができる。いくつかの実施形態では、論理機械学習層は、インテリジェンスオーバーレイネットワーク(「ION」)であり得る。機械学習システムは、種々のコンポーネント、パイプライン、データセット、およびインフラストラクチャを含むことができる。機械学習システム200は、1つ以上のポリシパイプライン202、1つ以上の開発パイプライン204、1つ以上の展開パイプライン206a-c、1つ以上の随意のデータベース208、データセット210、および/または上記に議論されるML管理装置104のうちの1つ以上のものを含んでもよい。
【0077】
本明細書で使用されるように、パイプライン202、204、206a-cは、パイプラインが、モデル開発、モデル展開、特徴工学、立証、スコア化、および/または同等物等の種々の機械学習動作を実施するために使用し得る、種々の機械学習特徴、エンジン、モデル、コンポーネント、オブジェクト、ならびに/もしくはモジュールを備えてもよい。例えば、パイプライン202、204、206a-cは、データセット210からのデータを分析または処理してもよい。本データ処理は、データがリアルタイムで処理されるライブで、データが静的ソースからのセットにおいて処理されるバッチ処理で、データが時間のインクリメントにおいて処理されるストリーミングを介して、またはデータがバッチ処理およびストリーミングの組み合わせに従って処理されるマイクロバッチ処理を介して、実施されてもよい。
【0078】
具体的な数のパイプライン202、204、206a-cが、
図2Aに描写されるが、任意の好適な数のパイプライン202、204、206a-cが、機械学習システム200に存在し得る。さらに、
図2Aに描写されるように、種々のパイプライン202、204、206a-cは、上記に説明される情報ハンドリングデバイス102、仮想マシン、および/またはクラウドもしくは他の遠隔デバイス等のデバイス203、205、207a-cとして具現化される、異なるノード上に位置することができる。
【0079】
一実施形態では、各パイプライン202、204、206a-cは、パイプライン202、204、206a-cが構成される、具体的タイプの分析エンジン上で実行される。本明細書で使用されるように、分析エンジンは、機械学習数値算出および分析を実施するための命令、コード、関数、および/またはライブラリを備える。分析エンジンのいくつかの非限定的実施例は、Spark、Flink、TensorFlow、Caffe、Theano、およびPyTorchを含む。これらのエンジンのために開発されるパイプライン202、204、206a-cは、特定の分析エンジンのためのライブラリ(例えば、Spark用のSpark-ML/MLlibおよびFlink用のFlink-ML)内に提供されるコンポーネントを含有してもよい。分析エンジンのためのアプリケーションプログラミングインターフェース(例えば、Flink用のDataSet/DataStream)を使用して、分析エンジン毎に開発されるカスタムプログラムもまた、含まれることができる。さらに、各パイプライン202、204、206a-cが、種々の異なるプラットフォーム、ライブラリ、および/またはプログラミング言語を使用して、実装されてもよい。例えば、1つの展開パイプライン206aが、Pythonを使用して実装されてもよい一方、異なる展開パイプライン206bが、Java(登録商標)を使用して実装されてもよい。
【0080】
一実施形態では、機械学習システム200は、実施されるべきアクションに基づく、パイプライン202、204、206a-cの物理および/または論理群を含む。例えば、ML管理装置104は、訓練データセットに基づいて特定の予測を行うための機械学習モデルを開発するための開発パイプライン204、ならびに推論データセットに基づいて予測を行うように構成される1つ以上の展開パイプライン206a-cを選択してもよい。展開パイプライン206a-cは、選択された展開パイプライン206a-cが構成される、分析エンジンを使用して、推論データセットを処理してもよい。したがって、パイプライン群は、複数の分析エンジンを備えてもよい。加えて、分析エンジンは、複数のパイプライン群の一部であってもよい。
【0081】
群は、データセット210からのデータを処理すること、他の群の動作を管理すること、他の群の予測を監視すること、制御された環境内で異なる機械学習モデルを用いて実験すること(例えば、サンドボックス)、および/または任意の他のアクション等の異なるアクションを実施するように定義され得る。例えば、パイプライン202、204、206a-cの論理群は、パイプライン202、204、206a-cの監視された論理群からのフィードバック、予測、メッセージ、および/または他のインジケータを処理することによって、ならびに/もしくはパイプライン202、204、206a-cの監視された論理群に入力を提供し、異常、エラー、および/または他の情報を検出することによって、パイプライン202、204、206a-cの異なる論理群の予測、性能、動作、健全性、ならびに/もしくは他の特徴を分析するように構築されてもよい。
【0082】
いくつかの実施形態では、複数の異なるパイプライン202、204、206a-cが、同一のデバイス上で実行される。代替実施形態では、各パイプライン202、204、206a-cは、明確に異なるデバイス上で実行される。デバイス203、205、207a-cは、単一の場所に位置することができる、同一のネットワークに接続されることができる、クラウドもしくは別の遠隔場所に位置することができる、および/または前述のある組み合わせである。
【0083】
パイプライン202、204、206a-cが、異なるデバイス203、205、207a-c上、または同一のデバイス203、205、207a-c上に位置することができるため、ML管理装置104は、所与のアクションを実施するために最良に構成されるパイプライン202、204、206a-cを論理的に群化してもよい。下記により詳細に説明されるように、パイプライン202、204、206a-cの論理群は、パイプライン202、204、206a-cの論理群が、実施されるべき具体的アクションのために特に構成されるように、事前定義されてもよい。
【0084】
ある実施形態では、ML管理装置104は、アクションの要求が、パイプライン202、204、206a-cの特性および/または設定に基づいて、決定もしくは受信されるときに、アクションに関してパイプライン202、204、206a-cを動的に選択する。ある実施形態では、パイプライン202、204、206a-cの複数の異なる論理群は、同一の物理的インフラストラクチャ、プラットフォーム、デバイス、および/または仮想マシンを共有することができる。さらに、パイプライン202、204、206a-cの異なる論理群が、実施されるべき所与のアクションに基づいてマージされてもよい。
【0085】
ポリシパイプライン202は、機械学習システム200の動作を管理するように構成されてもよい。ある実施形態では、ポリシパイプライン202は、開発パイプライン204から訓練された機械学習モデルを受信し、訓練された機械学習モデルを展開パイプライン206a-cにプッシュし、推論データセットに基づいて予測を行う。付加的実施形態では、ポリシパイプライン202は、ユーザ入力を受信する、他のパイプライン204、206a-cからフィードバック情報を受信する、機械学習モデルの正当性を立証する、パイプライン202、204、206a-cの間のデータ伝送を促進する、および/または付加的アクションを実施してもよい。
【0086】
一実施形態では、ポリシパイプライン202は、パイプライン204、206a-cが相互と相互作用する方法を定義する、1つ以上のポリシを備える。例えば、開発パイプライン204は、訓練サイクルが完了した後に機械学習モデルを出力してもよい。いくつかの可能性として考えられるポリシは、機械学習モデルが取り扱われる方法を定義することができる。例えば、あるポリシは、機械学習モデルが展開パイプライン206a-cに自動的にプッシュされることを規定し得る一方、別のポリシは、ポリシパイプライン202が機械学習モデルを展開パイプライン206a-cにプッシュすることに先立って、ユーザ入力が機械学習モデルを承認するために要求されることを規定し得る。
【0087】
ポリシはさらに、機械学習モデルが更新される方法を定義し得る。例えば、あるポリシは、機械学習モデルがフィードバックに基づいて(例えば、開発パイプライン204および/または展開パイプライン206a-cから受信される機械学習予測に基づいて)自動的に更新されることを規定し得る。別の実施例として、あるポリシは、機械学習モデルが更新される頻度(例えば、断続的に、または持続的に)等の機械学習システム200内のスケジューリング情報を規定し得る。
【0088】
ポリシは、パイプライン202、204、206a-cの異なる論理群が相互作用する方法を定義し得る。例えば、あるポリシは、パイプライン202、204、206a-cの1つの群によって発生される予測が、パイプライン202、204、206a-cの異なる群への入力データとして使用されることを規定し得る。例えば、パイプライン202、204、206a-cの1つの群が、訓練データセットを受信し、機械学習モデルを訓練してもよい一方、パイプライン202、204、206a-cの別の群は、展開された機械学習モデルの中に入力するべき推論データセットを受信してもよい。
【0089】
一実施形態では、ポリシパイプライン202は、パイプライン204、206a-cのマッピングを維持し、マッピングは、パイプライン204、206a-cの論理群を備える。ポリシパイプライン202はさらに、ユーザ入力、フィードバック、および/またはイベントに応答して、パイプライン204、206a-cの種々の設定を調節してもよい。例えば、展開パイプライン206aが、不正確である機械学習予測を発生させる場合、ポリシパイプライン202は、予測が不正確であることを示すメッセージを展開パイプライン202から受信してもよく、展開パイプライン206aのための新しい機械学習モデルを開発するように開発パイプライン204に指示してもよい。
【0090】
開発パイプライン204は、予測と関連付けられる訓練データに基づいて、特定の予測を行うための機械学習モデルを開発するように構成されてもよい。より具体的には、開発パイプライン204は、予測と関連付けられる訓練データに訓練モデルを実行することによって、特定の予測を行うための機械学習モデルを開発するように構成されてもよい。機械学習モデルは、訓練データセットを所望の予測にマップする、訓練データセット内のパターンを捕捉する、訓練プロセスによって発生される、アーチファクトであってもよい。訓練データセットは、静的データセット、オンラインソースからアクセス可能なデータ、ストリーミングデータセット、および/または任意の他のタイプのデータセットであってもよい。
【0091】
いくつかの実施形態では、新しい機械学習モデルが、データセンタ内の大型クラスタ化分析エンジン上で実行され得る、開発パイプライン204内のバッチ処理を介して、周期的に開発される。開発パイプライン204が、新しい機械学習モデルを発生させるにつれて、ある実施形態では、管理者が、ポリシパイプライン202を介して通知されることができる。管理者は、発生された機械学習モデルを精査することができ、管理者が承認する場合、機械学習モデルは、展開パイプライン206a-cにプッシュされることができる。
【0092】
展開パイプライン206a-cは、開発された機械学習モデルおよび対応する分析エンジンを使用し、推論データセットに基づいて機械学習予測を発生させてもよい。推論データセットは、行われることになるが、機械学習モデルを訓練するために使用される訓練データセットの一部ではなかった、予測と関連付けられるデータを備えてもよい。さらに、訓練データセットと異なり、推論データセットは、通常、既知の成果を含まない。例えば、ユーザが、Eメールがスパムであるかどうかを把握することを所望する場合、開発パイプライン204は、スパムであることが把握されるEメール、およびスパムではないことが把握されるEメールの両方を含む、訓練データセットを使用して、機械学習モデルを開発してもよい。機械学習モデルが開発された後、ポリシパイプライン202は、機械学習モデルを展開パイプライン206a-cにプッシュしてもよく、そこで、機械学習モデルは、推論データとして提供される1つ以上のEメールが、スパムであるかどうかを予測するために使用されることができる。
【0093】
図2Bは、別の実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システム225を図示する、概略ブロック図である。
図2Bに示される実施形態では、機械学習システム225は、例えば、論理機械学習層を含むことができる。一実施形態では、
図2Bの機械学習システム225は、
図2Aに描写される機械学習システム200に実質的に類似する。
図2Aに描写される機械学習システム200の要素に加えて、
図2Bの機械学習システム225は、開発デバイス205a-b上で実行される、複数の開発パイプライン204a-bを含む。
【0094】
描写される実施形態では、開発パイプライン204a-bは、予測のための1つ以上の訓練データセットに基づいて、予測を行うための機械学習モデルを開発する。訓練データセットは、開発パイプライン204a-b毎に異なり得る。例えば、第1の開発パイプライン204aのための訓練データセットが、第1の所定の時間周期にわたる履歴データを含むことができる一方、第2の開発パイプライン204bのための訓練データセットは、異なる第2の所定の時間周期にわたる履歴データを含むことができる。訓練データセットの変動は、異なるタイプのデータ、異なる時間周期において収集されるデータ、異なる量のデータ、および/またはデータの他のタイプの変動を含んでもよい。
【0095】
さらなる実施形態では、開発パイプライン204a-bは、異なる訓練データセットに、または同一の訓練データセットに、異なる機械学習モデルを実行してもよい。例えば、第1の開発パイプライン204aが、Pythonを使用して、機械学習モデルTensorFlowを実装することができる一方、第2の開発パイプライン204bは、Java(登録商標)を使用して、Sparkで異なる機械学習モデルを実装することができる。
【0096】
一実施形態では、機械学習システム225は、開発パイプライン204a-bが開発する機械学習モデルを受信するように、かつ特定の予測を行うための最良適合である機械学習モデルのうちのいずれかを決定するように構成される、モデル選択モジュール212を含む。最良適合機械学習モデルは、訓練データに関する参照予測(例えば、「標識」または「標的」)に最も類似する予測を生成した機械学習モデル(例えば、最も正確な機械学習モデル)、最速で実行される機械学習モデル、最少量の構成を要求する機械学習モデル、および/または任意の他の好適なメトリックに従って優れた性能を実証する機械学習モデルであってもよい。
【0097】
一実施形態では、モデル選択モジュール212は、ハイパーパラメータ検索を実施し、機械学習モデルを開発し、かつ所与の予測問題のための最良適合である、開発された機械学習モデルのうちのいずれかを決定する。本明細書で使用されるように、ハイパーパラメータ検索(またはハイパーパラメータ「最適化」もしくは「同調」)は、機械学習アルゴリズムのためのハイパーパラメータのセット(例えば、最適なハイパーパラメータのセット)を選定する問題である。ある実施形態では、同一種類の機械学習モデルが、異なるデータパターンを一般化するために、異なる制約、加重、または学習率を使用することができる。これらの測定値は、ハイパーパラメータと呼ばれ得、モデルが機械学習問題を解決(例えば、最適に解決)し得るように、同調され得る。ハイパーパラメータ最適化の目標は、規定メトリックによって測定されるような規定レベルの性能を達成する(例えば、所与の独立データ上の所定の損失関数を最小限にする)、機械学習モデル(例えば、最適な機械学習モデル)を生じさせる、ハイパーパラメータのセットを見出すことであり得る。ある実施形態では、モデル選択モジュール212は、異なる機械学習モデルの異なる特徴を組み合わせ、単一の複合モデルを発生させる。一実施形態では、モデル選択モジュール212は、展開パイプライン206a-cへの伝搬のために、選択された機械学習モデルをポリシパイプライン202にプッシュする。種々の実施形態では、モデル選択モジュール212は、ML管理装置104の一部である、それに通信可能に結合される、および/または動作可能に結合される。
【0098】
図2Cは、さらに別の実施形態による、機械学習モデルの解説可能性ベースの調節のための機械学習システム250を図示する、概略ブロック図である。
図2Cに示される実施形態では、機械学習システム250は、例えば、論理機械学習層を含むことができる。
図2Cの機械学習システム250は、それぞれ、
図2Aおよび2Bに描写される、機械学習システム200および225に実質的に類似し得る。しかしながら、
図2Cはさらに、機械学習システム250の連合学習実施形態を図示する。
【0099】
連合機械学習システムでは、開発パイプライン204a-cは、対応する展開パイプライン206a-cと同一のデバイス上に位置してもよい。そのような実施形態では、開発パイプライン204a-cは、異なる機械学習モデルを開発し、機械学習モデルをモデル選択モジュール212に送信してもよく、これは、上記に説明されるように、機械学習システム250のための最良適合である機械学習モデルを決定する、または異なる機械学習モデルを組み合わせてもよい。選択された機械学習モデルは、立証のためにポリシパイプライン202にプッシュされてもよい。次いで、ポリシパイプライン202は、展開パイプライン206a-cに戻るようにモデルをプッシュしてもよい。
【0100】
図3は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための装置300を図示する、概略ブロック図である。
図3に描写される実施形態では、装置300は、ML管理装置104の実施形態を含む。ML管理装置104は、それぞれ、下記に詳細に説明される、第1の予測モジュール302と、第2の予測モジュール304と、比較モジュール306と、アクションモジュール308とを含む。
【0101】
第1の予測モジュール302は、一次機械学習モデルによって行われる予測の第1のセットを取得する(例えば、受信する)ように構成されてもよい。一次機械学習モデルは、第1次の機械学習モデル等の複雑な機械学習モデルであってもよい。例えば、一次機械モデルは、ノードまたはパイプラインの複数の異なる層を含む、多層パーセプトロン(「MLP」)等の人工ニューラルネットワークを含んでもよい。複雑な機械学習モデルの他の非限定的実施例は、深層学習モデル、アンサンブル(または「混成」)モデル(例えば、複数の異なる機械学習モデルの組み合わせを含むモデル)、ブースティングモデル、バギングモデル、および/またはサポートベクトルマシンを含むことができる。一次機械学習モデルは、そのモデルが展開の間に処理するであろう推論データセットに類似する、訓練データセットを使用して、訓練されることができる。
【0102】
いくつかの実施形態では、第1の予測モジュール302によって受信される予測の第1のセットは、推論データセットに基づいて、展開の間に一次機械学習モデルによって行われる。いくつかのさらなる実施形態では、予測の第1のセットは、推論データセットに基づいて、ライブ展開で(例えば、リアルタイムで)一次機械学習モデルによって行われる。実施例として、一次機械学習モデルは、Eメールメッセージをリアルタイムで(例えば、それらが受信されるにつれて)分析し、スパムまたはジャンクメールであるEメールメッセージにフラグを付けるために展開される、MLPモデルであり得る。代替実施形態では、第1の予測モデル302によって受信される予測の第1のセットは、訓練データセットに基づいて、開発の間に一次機械学習モデルによって行われる。
【0103】
一次機械学習モデルによって行われる予測の第1のセットは、リスト、テーブル、データベース、および/または一次機械学習モデルが発生させる予測を記憶する任意の他のデータ構造を含んでもよい。第1の予測モジュール302は、ローカルで、または遠隔デバイス(例えば、クラウドデバイス)上に予測の第1のセットを記憶してもよい。第1の予測モジュール302は、予測の第1のセットにクエリを行う、予測の第1のセットに関してポーリングする、および/またはそれにプッシュされる予測の第1のセットを受信してもよい。第1の予測モジュール302は、ライブで(例えば、予測が発生されるにつれて)、バッチで(例えば、100回の予測毎に)、ストリーミングを介して増分的に(例えば、30秒毎に、1分毎に、もしくは同等物)、または任意の他の好適なスケジュールに従って、予測の第1のセットを受信してもよい。
【0104】
第2の予測モジュール304は、二次機械学習モデルによって行われる予測の第2のセットを取得する(例えば、受信する)ように構成されてもよい。一次機械学習モデルと対照的に、二次機械学習モデルは、比較的に単純な機械学習モデルであってもよい。二次機械学習モデルのいくつかの非限定的実施例は、決定木モデル、ロジスティック回帰モデル、線形モデル、RuleFitモデル、ナイーブベイズモデル、k-最近傍モデル、および/または同等物を含んでもよい。二次機械学習モデルのいくつかの実施形態が、
図6A-Bを参照して下記に詳細に議論される。それらの相対的単純性に起因して、二次機械学習モデルは、解説可能である傾向があり得る。換言すると、上記に説明されるように、ある予測を行う二次機械学習モデルに寄与する因子は、決定可能であり得る。
【0105】
一次機械学習モデルと二次機械学習モデルとの間のこれらの差異にもかかわらず、二次機械学習モデルは、一次機械学習モデルに近似し、したがって、一次機械学習モデルによって行われる予測を模倣するように構成されてもよい。具体的には、二次機械学習モデルは、一次機械学習モデルと同一である、または実質的に類似する訓練データを使用して、訓練されてもよい。さらに、第1および二次機械学習モデルが、同一の訓練データセットを使用して訓練されるため、二次機械学習モデルは、一次機械学習モデルと同一の推論データセットを処理するために使用されてもよい。結果として、二次機械学習モデルは、一次機械学習モデルの予測を模倣してもよく、2つのモデルの間の予測のいずれの変動も、訓練または推論データセットの差異に起因しない。したがって、二次機械学習モデルが、解説可能な機械学習モデルであるとともに、一次機械学習モデルの予測を模倣するように構成されることの両方であるため、二次機械学習モデルは、比較的により複雑な一次機械学習モデルによって行われる予測を解説するために使用されることができる。さらに、いくつかの実施形態では、開発の間および展開の間に一次および二次機械学習モデルによって行われる予測は、展開の間に処理されるデータセットの特性が、開発の間に処理されるデータセットの特性と有意に異なるかどうかを決定するように、比較されてもよい。
【0106】
ある実施形態では、第2の予測モジュール304は、解説可能である複数の利用可能な機械学習モデルからの一次機械学習モデルに近似するために使用される、二次機械学習モデルを選択する。第2の予測モジュール304は、例えば、複数の利用可能な機械学習モデルのそれぞれを訓練し、一次機械学習モデルが同一の訓練データセットに基づいて発生させる予測に最も近い、またはそれへの類似性の閾値測定値以内である、予測を発生させるモデルのうちのいずれかを決定することができる。いくつかの実施形態では、一次機械学習モデルに近似するように選択される二次機械学習モデルは、訓練データセットの中の標識が、一次機械学習モデルが訓練データに関して発生させる予測によって置換されるという修正を伴って、一次機械学習モデルと同一の訓練データセット上で訓練されることができる。
【0107】
いくつかの実施形態では、比較モジュール306は、一次機械学習モデルおよび二次機械学習モデルが発生させる予測(例えば、第1および第2の予測モジュールによって取得される予測の第1ならびに第2のセット、またはその一部)を比較するように、かつ予測の間の任意の差異の程度を示す相違メトリックの値を決定するように構成される。具体的には、比較モジュール306は、一次および二次機械学習モデルによって行われる予測の間の差異を計算し、一次および二次機械学習モデルに関する相違メトリックの値を決定してもよい。比較モジュール306は、予測を比較するための任意の統計的方法を利用し、相違メトリックの値を計算してもよい。例えば、比較モジュール306は、予測に関して二乗平均平方根誤差(「RMSE」)または平均絶対誤差(「MAE」)を計算し、相違メトリックの値を決定してもよい。
【0108】
いくつかの実施形態では、比較モジュール306は、予測あたりの基準(例えば、予測毎の基準)で一次および二次機械学習モデルに関する相違メトリックの値を計算することができる。例えば、比較モジュール306は、予測が発生されるにつれて、一次および二次機械学習モデルによって行われる予測毎に相違メトリックの値を計算してもよい。代替実施形態では、比較モジュール306は、予測のセットに関して、バッチで一次および二次機械学習モデルに関する相違メトリックの値を計算してもよい。例えば、比較モジュール306は、Nが任意の好適な整数(例えば、100)である、一次および二次機械学習モデルによって行われる直近のN回の予測のセットに関する相違メトリックの値を計算してもよい。
【0109】
上記に議論されるように、相違メトリックの値は、解説可能性基準に違反し得る。例えば、解説可能性基準は、一次機械学習モデルおよび二次機械学習モデルの予測の閾値相違を含んでもよい。解説可能性基準の違反は、相違メトリックの決定された値が閾値相違値を下回ることができないことを指し得る。例えば、相違メトリックの決定された値が、事前決定された相違閾値(例えば、0.5、1、5、または同等物)を上回る場合、解説可能性基準は、違反され得る。
【0110】
比較モジュール306が予測あたりの基準で1つ以上の相違メトリックの値を計算する、実施形態では、予測あたりの相違メトリックの値が、事前決定された相違閾値を上回る場合、比較モジュール306は、対応する解説可能性基準が違反されることを決定してもよい。同様に、比較モジュールが、予測のセットに関して、バッチで1つ以上の相違メトリックの値を計算する、実施形態では、予測のセットに関する相違メトリックの値が、事前決定された相違閾値を上回る場合、比較モジュール306は、対応する解説可能性基準が違反されることを決定してもよい。1つ以上の解説可能性基準の違反は、二次機械学習モデルがもはや一次機械学習モデルの十分な近似ではないこと、したがって、二次機械学習モデルが一次機械学習モデルの十分な解説可能性を提供しないことを示し得る。
【0111】
いくつかの実施形態では、1つ以上の解説可能性基準の違反が、二次機械学習モデルがもはや一次機械学習モデルの十分な近似ではないことを示すかどうかを決定するために、比較モジュール306は、一次および二次機械学習モデルに関する相違メトリック値の事前決定された数量または割合が解説可能性基準に違反するかどうかを決定する。例えば、一次および二次機械学習モデルに関する500個の相違メトリック値のセット内の1つだけの相違メトリック値が、1つ以上の解説可能性基準に違反する場合、比較モジュール306は、1つ以上の解説可能性基準の違反における1つの相違メトリック値が異常値であり、二次機械学習モデルが一次機械学習モデルの不正確な近似であることを示さないことを決定してもよい。他方で、一次および二次機械学習モデルに関する500個の相違メトリック値のセット内の450個の相違メトリック値が、1つ以上の解説可能性基準に違反する場合、比較モジュール306は、解説可能性基準のこれらの違反が、二次機械学習モデルが一次機械学習モデルの不正確な近似であることを示すことを決定してもよい。いくつかの実施形態では、1つ以上の解説可能性基準の違反が、二次機械学習モデルが一次機械学習モデルの正確な近似ではないことを示すことが、決定された後、是正アクションが、一次機械学習モデルを調節し、1つ以上の解説可能性基準を満たすように講じられることができる。
【0112】
いくつかの実施形態では、解説可能性違反のセットの意味の前述の査定は、事前決定された時間周期内に取得される予測のセットに関して実施されてもよい。いくつかの実施形態では、解説可能性違反のセットの意味の前述の査定は、Nが任意の好適な整数である、N個の直近に取得された予測のセットに関して実施されてもよい。
【0113】
アクションモジュール308は、一次および二次機械学習モデルが解説可能性基準に違反するという比較モジュール306による決定に応答して、一次機械学習モデルに関連する1つ以上のアクションをトリガするように構成されてもよい。例えば、アクションモジュール308は、1つ以上の解説可能性基準が違反されたことを示す、アラートを送信してもよい。アラートはさらに、解説可能性基準違反に応答するための1つ以上の推奨を含むことができる。これらの推奨は、異なる訓練データセットを伴う一次機械学習モデルを再訓練する推奨、異なる一次機械学習モデルを選択する推奨、一次機械学習の代わりに二次機械学習モデルを展開する推奨、および/または任意の他の好適な推奨を含むことができる。
【0114】
一実施形態では、アクションモジュール308は、一次および二次機械学習モデルが解説可能性基準に違反するという比較モジュール306による決定に応答して、アクションを自動的に実施する。例えば、アクションモジュール308は、開発中の一次機械学習モデルを、解説可能性基準を満たし得る、異なる一次機械学習モデルと自動的に交換することができる。別の実施例として、アクションモジュール308は、解説可能性基準が満たされるまで、異なる訓練データセットを用いて、(例えば、現在の一次機械学習モデルを訓練するために使用された同一の機械学習アルゴリズムを使用して、または異なる機械学習アルゴリズムを使用して)一次機械学習モデルを自動的に訓練し始めることができる。より具体的には、アクションモジュール308は、解説可能性基準が満たされるまで、異なる訓練データセットにわたって反復し、一次機械学習モデルを再訓練することができる。いくつかの実施形態では、訓練データセットは、一次機械学習モデルによって最近処理された推論データに類似する訓練データを含んでもよい。さらに別の実施例として、アクションモジュール308は、展開された一次機械学習モデルを二次機械学習モデルと自動的に交換することができる。そのような実施形態では、二次機械学習モデルは、一次機械学習モデルが解説可能性基準を満たすように修正を受けている間に、一次機械学習モデルに恒久的または一時的に取って代わることができる。
【0115】
代替実施形態では、アクションモジュール308は、アクションを自動的に実施するのではなく、一次および二次機械学習モデルが解説可能性基準に違反するという比較モジュール306による決定に応答してアクションを実施するように、確認のためにユーザをプロンプトすることができる。例えば、アクションモジュール308は、開発中の一次機械学習モデルを異なる一次機械学習モデルと交換するように、展開された一次機械学習モデルを二次機械学習モデルと交換するように、異なる訓練データセットを用いて一次機械学習モデルを訓練するように、および/または任意の他の是正アクションを実施するように、確認のためにユーザをプロンプトすることができる。ある実施形態では、アクションモジュール308からのプロンプトに応答して、ユーザは、単純な「はい/いいえ」応答を提供することができる。代替実施形態では、アクションモジュール308からのプロンプトに応答して、ユーザは、異なる一次機械学習モデルまたは異なる訓練データセットを選択すること等のより詳細な応答を提供することができる。
【0116】
いくつかのさらなる実施形態では、アクションモジュール308はさらに、(例えば、訓練データセットに基づいて)開発の間に一次および二次機械学習モデルによって発生される、予測に関する相違メトリックの値を、(例えば、推論データセットに基づいて)展開の間に一次および二次機械学習モデルによって発生される、予測に関する相違メトリックの値と比較し、展開で見られる推論データセットの特性が開発の間に見られる訓練データセットの特性から逸脱するかどうかを決定することができる。上記に議論されるように、訓練データセットと推論データセットとの間の本偏差(時として「データドリフト」または「ドリフト」と称されることもある)は、一次および二次機械学習モデルによって行われる予測の相違に寄与し得る。したがって、いくつかの実施形態では、アクションモジュール308は、上記に説明される種々のアクションを講じ、任意の決定された偏差を補正することができる。例えば、アクションモジュール308は、展開の間に発生される予測に関する相違メトリックの値と開発の間に発生される予測との間の差異が閾値差異を超える場合、上記に説明されるアクションのうちの1つ以上のものを実施してもよい。本文脈では、相違メトリックの値の間の「差異」は、絶対差、割合差、または任意の他の好適なタイプの差異であってもよい。
【0117】
図4は、ある実施形態による、機械学習モデルの解説可能性ベースの調節のための方法400を図示する、概略フローチャート図である。一実施形態では、方法400が、開始し、第1の予測モジュール302が、訓練データセットに基づいて開発の間に、または推論データセットに基づいて展開の間に、一次機械学習モデルから予測の第1のセットを受信する402。予測の第1のセットが、推論データセットに基づいて展開の間に一次機械学習モデルから受信される、実施形態では、予測の第1のセットは、推論データセットのライブ(例えば、リアルタイム)処理に基づいて、一次機械学習モデルによって行われることができる。
【0118】
一実施形態では、第2の予測モジュール304は、一次機械学習モデルによって使用されたデータセット(例えば、訓練データセットまたは推論データセット)に基づいて、二次機械学習モデルから予測の第2のセットを受信する404。二次機械学習モデルは、一次機械学習モデルと異なり得、一次機械学習モデルの予測を模倣するように構成されることができる。
【0119】
比較モジュール306は、第1および第2の予測を比較し406、一次および二次機械学習モデルによって発生される予測に関する相違メトリックの値を計算し、相違メトリックが1つ以上の解説可能性基準に違反するかどうかを決定してもよい。決定された相違メトリックが、解説可能性基準に違反しない場合、方法400は、終了してもよい。決定された相違メトリックが、解説可能性基準に違反する場合、アクションモジュール308は、一次機械学習モデルに関連する1つ以上のアクションをトリガしてもよく408、次いで、方法400は、終了してもよい。
【0120】
図5は、別の実施形態による、機械学習モデルの解説可能性ベースの調節のための方法500を図示する、概略フローチャート図である。一実施形態では、方法500が、開始し、第1の予測モジュール302が、訓練データセットに基づいて開発の間に、または推論データセットに基づいて展開の間に、一次機械学習モデルから予測の第1のセットを受信する502。予測の第1のセットが、推論データセットに基づいて展開の間に一次機械学習モデルから受信される、実施形態では、予測の第1のセットは、推論データセットのライブ(例えば、リアルタイム)処理に基づいて、一次機械学習モデルによって行われることができる。一次機械学習モデルからの予測の第1のセットは、ML管理装置104、第1の予測モジュール302、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものから受信されてもよい。
【0121】
一実施形態では、第2の予測モジュール304は、一次機械学習モデルによって使用されたデータセット(例えば、訓練データセットまたは推論データセット)に基づいて、訓練の間に二次機械学習モデルから予測の第2のセットを受信する504。二次機械学習モデルは、一次機械学習モデルと異なり得、一次機械学習モデルの予測を模倣するように構成されることができる。二次機械学習モデルからの予測の第2のセットは、ML管理装置104、第2の予測モジュール304、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものから受信されることができる。
【0122】
いくつかの実施形態では、比較モジュール306は、予測の第1および第2のセットを比較し506、一次および二次機械学習モデルに関する相違メトリックの値を計算し、相違メトリックの値が1つ以上の解説可能性基準に違反するかどうかを決定する。相違メトリックの決定された値が、解説可能性基準に違反しない場合、方法500は、終了してもよい。相違メトリックの決定された値が、1つ以上の解説可能性基準に違反する場合、アクションモジュール308は、一次機械学習モデルに関連する1つ以上のアクションをトリガする。
【0123】
例えば、アクションモジュール308は、開発中である一次機械学習モデルを交換することができる508、開発中である一次機械学習モデルを再訓練することができる510、展開中である一次機械学習モデルを二次機械学習モデルに切り替えることができる512、および/または訓練データセットに基づいて一次および二次機械学習モデルによって発生される予測に関する相違メトリックの値を、推論データセットに基づいて一次および二次機械学習モデルによって発生される予測に関する相違メトリックの値と比較することによって、訓練データセットと推論データセットとの間の偏差を検出することができる514。一次機械学習モデルが交換508または再訓練される510事例において、二次機械学習モデルもまた、交換または再訓練されてもよい。一次および二次機械学習モデルの相違メトリックの値が解説可能性基準を満たさないことに応答して講じられる、一次機械学習モデルに関連する1つ以上のアクションは、ML管理装置104、アクションモジュール308、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものによって実施もしくは制御されることができる。次いで、方法500は、終了する。
【0124】
図6Aおよび6Bは、いくつかの実施形態による、二次機械学習モデルを発生させるための方法600および620を図示する、概略フローチャート図である。一般に、本開示の全体を通して議論されるように、比較的に単純な二次機械学習モデルを作成し、比較的に複雑な一次機械学習モデルの解説可能性を提供することが望ましくあり得る。このように、二次機械学習モデルは、そうでなければ「ブラックボックス」の一次機械学習モデルへの洞察を提供することができる。
【0125】
モデルの正確度を有意に減少させることなく、一次機械学習モデルの予測を模倣する、比較的に単純な二次機械学習モデルを発生させるために、二次機械学習モデルは、一次(「第1次」)機械学習モデルの第2次機械学習モデルであってもよい。第2次、すなわち、二次機械学習モデルは、同一の入力(もしくはそのサブセット)および/または一次機械学習モデルによって使用されない1つ以上の入力に基づいて、一次機械学習モデルの予測を模倣してもよい。
【0126】
いくつかの実施形態では、第2次、すなわち、二次機械学習モデルは、解釈することが比較的に容易であり、予測コードが比較的に容易に発生され得る、モデルを概して生成する、1つ以上のモデル化技法(例えば、RuleFit、一般化加法モデル等)を使用して構築される。そのような技法は、本明細書では「第2次モデル化技法」と称される。一次機械学習モデルが発生された後、一次機械学習モデルの第2次、すなわち、二次機械学習モデルが、第2次モデル化技法を使用して作成されることができる。
【0127】
一次機械学習モデルへの入力毎に、オリジナル訓練データセットからの、またはオリジナル訓練データセットから導出される、入力値の対応するセットが存在する。第2次モデル化技法は、一次機械学習モデルと同一の入力を使用することができ、したがって、第2次モデル化技法の訓練および立証データセットのために、そのような入力またはそのサブセットのオリジナル値を使用することができる。いくつかの実施形態では、オリジナル訓練データセットからの出力の実際の値を使用する代わりに、第2次モデル化技法は、一次機械学習モデルからの出力の予測値を使用する。
【0128】
ある場合には、第2次モデル化技法は、代替もしくは補足訓練および/または立証データを使用することができる。そのような代替物は、同一または異なるデータソースのいずれかからの他の実世界データ、(例えば、実世界サンプルに存在するよりも広範囲の可能性を網羅する目的のために)(例えば、内挿および/または外挿を介して)機械発生データと組み合わせられる実世界データ、もしくは機械ベースの確率モデルによって完全に発生されるデータを含むことができる。
【0129】
多くの場合に、第2次、すなわち、二次機械学習モデルは、対応する一次機械学習モデルと同程度に正確であり、またはそれよりもさらに正確であり、第2次、すなわち、二次機械学習モデルを実装するソフトウェアは、対応する一次機械学習モデルを実装するソフトウェアよりも実質的に効率的である(例えば、より少ない算出リソースを使用する)。本開示の全体を通して議論されるように、第2次、すなわち、二次機械学習モデルは、一次機械学習モデルを理解するために有益であり得る、および/または正確な機械学習モデルを実装するソフトウェアを発生させるタスクを単純化することができる。
【0130】
しかしながら、第2次、すなわち、二次機械学習モデルのこれらの利益にもかかわらず、第2次、すなわち、二次機械学習モデルが、第2次、すなわち、二次機械学習モデルが導出される一次機械学習モデルよりも予測に関して系統的に正確度が低くあり得るという懸念が残っている。一次機械学習モデルを第2次、すなわち、二次機械学習モデルに移行させることと関連付けられる、正確度の任意の損失を低減させるため(ある場合には、それらの対応する一次モデルを上回る正確度を伴う、第2次、すなわち、二次機械学習モデルを発生させるため)の技法のいくつかの実施形態が、ここで説明される。
【0131】
1つの懸念は、一次機械学習モデルの任意のエラーが、第2次、すなわち、二次機械学習モデルを構築するときに悪化または拡大され、それによって、第2次、すなわち、二次機械学習モデルの正確度を系統的に低減させ得ることである。下記に説明されるように、経験的結果は、第2次、すなわち、二次機械学習モデルの正確度についての懸念が、大部分は見当違いであることを示す。これらの懸念が合理的である場合でさえも、より正確な一次機械学習モデルを使用することは、第2次、すなわち、二次モデルにおける正確度の損失を低減させる可能性が高い。例えば、混成モデルが、時として、任意の単一のモデルよりも正確であるため、第2次、すなわち、二次機械学習モデルを一次機械学習モデルの混成物に適合させることは、第2次モデル化と関連付けられる正確度の任意の損失を低減させ得る。
【0132】
695個の分類および1,849個の回帰一次機械学習モデルをもたらす、381個のデータセット上の試験が、実施された。試験された分類モデルに関して、第2次、すなわち、二次機械学習モデルの43%が、正確度の対数損失測定値によると、対応する一次機械学習モデルほど正確ではなかったが、10%以下が不良であった。第2次、すなわち、二次機械学習モデルの30パーセントが、実際に一次機械学習モデルよりも正確であった。27%の場合のみで、10%を上回る第2次、すなわち、二次機械学習モデルが、一次機械学習モデルほど正確ではなかった。これらの場合の約3分の1(全集団のおよそ9%)は、データセットが非常に小さいときに生じた。これらの場合のさらに3分の1(再度、全集団のおよそ9%)は、一次機械学習モデルが0.1対数損失未満において非常に正確であり、第2次モデルもまた、依然として、0.1対数損失未満において非常に正確であるときに生じた。したがって、十分に大きいデータセットを伴う場合の90%超では、第2次、すなわち、二次機械学習モデルは、一次機械学習モデルの10%以内であったか、または第2次、すなわち、二次機械学習モデルは、絶対標準によって非常に正確であったかのいずれかである。41%の場合では、最良の第2次、すなわち、二次機械学習モデルが、一次機械学習モデルの混成物から導出された。
【0133】
試験された回帰モデルに関して、第2次、すなわち、二次機械学習モデルの39%が、正確度の残差平均二乗誤差によると、対応する一次機械学習モデルほど正確ではなかったが、10%以下が不良であった。第2次、すなわち、二次機械学習モデルの47%が、実際に一次機械学習モデルよりも正確であった。14%の場合のみで、10%を上回る第2次、すなわち、二次機械学習モデルが、一次機械学習モデルほど正確ではなかった。これらの場合の約10%(全集団のおよそ1.5%)は、データセットが非常に小さいときに生じた。全ての場合の35%では、最良の第2次、すなわち、二次機械学習モデルが、一次機械学習モデルの混成物から導出された。
【0134】
本経験的データに基づいて、本発明者らは、オリジナルデータセットが十分に大きい場合、第2次モデルが、概して、比較的に正確または絶対的に正確のいずれかであることを認識および理解した。多くの場合に、第2次、すなわち、二次機械学習モデルは、実際に一次機械学習モデルよりも正確である。最後に、試験された全ての分類および回帰問題の3分の1を上回るものでは、最も正確な第2次、すなわち、二次機械学習モデルが、一次機械学習モデルの混成物から導出された。
【0135】
第2次、すなわち、二次機械学習モデルは、(a)複雑な一次機械学習モデルを理解および/または解説するため、(b)機械学習モデルのための予測コードを発生させるタスクを単純化するため、ならびに(c)専用モデル構築技法を保護するために有益であり得る。一次機械学習モデルの混成物は、多くの場合に、これらの利益を改良する。混成モデルは、大抵の時間に最良の予測結果を生成するが、それらはまた、混成物に含まれる全てのモデルの全てのコンポーネントの複雑性を組み合わせるため、概して、より複雑である。さらに、混成モデルのための予測コードを発生させることは、概して、混成物に含まれる全てのコンポーネントモデルのために予測コードを発生させる課題も組み合わせる。これらのコンポーネント課題に加えて、混成モデルの全てが、概して、各予測を発生させるように算出されるため、混成モデルは、概して、予測を生成することがより遅い(および/または予測を生成するためにより多くの算出リソースを要求する)。第2次、すなわち、二次機械学習モデルは、概して、本時間(および/または算出リソースの使用)を単一のモデルを算出するものに削減する。また、混成モデルは、各コンポーネントモデルの専用入力を含有する。したがって、第2次、すなわち、二次機械学習モデルおよび混成機械学習モデルは、極めて補完的な様式で動作する。さらに、データセットが、訓練、立証、およびホールドアウトパーティションに容易に分離されることができるため、任意の特定の第2次、すなわち、二次機械学習モデルが、一次機械学習モデルと比較して、十分に機能するかどうかが、容易に決定されることができる。
【0136】
図6Aは、ある実施形態による、第2次、すなわち、二次機械学習モデルを発生させるための方法600を図示する、概略フローチャート図である。
図6Aに描写される実施形態では、方法600は、ステップ610および620を含む。ステップ610では、一次機械学習モデルが、取得される。一次機械学習モデルは、1つ以上の第1の入力変数の値に基づいて、予測問題の1つ以上の出力変数の値を予測するように構成される。一次機械学習モデルは、任意の好適な技法(例えば、機械学習モデル化プロシージャを実装する機械実行可能モジュールを実行すること、機械学習モデル化方法の実施形態を実施すること、2つ以上の機械学習モデルを混成させること等)を使用して、取得されることができ、任意の好適なタイプの機械学習モデル(例えば、時系列モデル等)であり得る。ステップ620では、第2次モデル化プロシージャが、一次機械学習モデルに実施される。あるタイプの機械学習モデル(例えば、RuleFitモデル、一般化加法モデル、条件付きルールのセットとして編成される任意のモデル、前述のタイプのモデルのうちの2つ以上のものの混成物等)が、第2次、すなわち、二次モデルとして使用するために特に非常に適し得る。
【0137】
図6Bは、ある実施形態による、第2次モデル化プロシージャを実施するための方法620を図示する、概略フローチャート図である。
図6Bに描写される実施形態では、方法620は、ステップ622、624、626、および628を含む。ステップ622では、第2次入力データが、発生される。第2次入力データは、複数の第2次観察を含む。各第2次観察は、1つ以上の第2の入力変数の観察された値と、第2の入力変数の値に対応する第1の入力変数の値に基づいて、一次機械学習モデルによって予測される出力変数の値とを含む。第2次入力データを発生させるステップは、第2次観察毎に、第2の入力変数の観察された値および第1の入力変数の対応する観察された値を取得するステップと、一次機械学習モデルを第1の入力変数の対応する観察された値に適用し、出力変数の予測値を発生させるステップとを含むことができる。
【0138】
一次機械学習モデルおよび第2次、すなわち、二次機械学習モデルは、入力変数の同一のセットを使用することができる。代替として、第2次、すなわち、二次機械学習モデルは、一次機械学習モデルの入力変数のうちの1つ以上のもの(例えば、全て)を使用することができ、また、1つ以上の他の入力変数を使用することもできる。代替として、第2次、すなわち、二次機械学習モデルは、一次機械学習モデルの入力変数のうちのいずれも使用することができず、1つ以上の他の入力変数を使用することができる。
【0139】
ステップ624では、第2次訓練データおよび第2次立証データが、(例えば、第2次入力データを分割することによって)第2次入力データから発生される。
【0140】
ステップ626では、一次機械学習モデルの第2次、すなわち、二次機械学習モデルが、第2次、すなわち、二次機械学習モデルを第2次訓練データに適合させることによって発生される。
【0141】
ステップ628では、一次機械学習モデルの第2次、すなわち、二次機械学習モデルが、第2次立証データ上で正当性を立証される。相互立証(限定ではないが、ネスト化相互立証を含む)およびホールドアウト技法が、第2次、すなわち、二次モデルを適合させる、および/またはその正当性を立証するために使用されることができる。
【0142】
いくつかの実施形態では、第1次および第2次機械学習モデルが、比較されることができる。例えば、モデル毎の正確度スコアが、決定されることができる。各モデルの正確度スコアは、モデルが1つ以上の予測問題の成果を予測する、正確度を表すことができる。(いくつかの実施形態では、第2次、すなわち、二次機械学習モデルの正確度スコアは、モデルが一次機械学習モデルによって予測される出力変数値を予測する正確度ではなく、モデルが出力変数の観察を予測する正確度を表す。他の実施形態では、第2次、すなわち、二次機械学習モデルの正確度スコアは、モデルが一次機械学習モデルによって予測される出力変数値を予測する正確度を表す。)ある場合には、第2次、すなわち、二次機械学習モデルの正確度スコアは、一次機械学習モデルの正確度スコアを超える。別の実施例として、1つ以上の予測問題の成果を予測するために機械学習モデルのそれぞれによって使用される、算出リソースの量が、比較されることができる。ある場合には、第2次、すなわち、二次機械学習モデルによって使用される算出リソースの量は、一次機械学習モデルによって使用される算出リソースの量未満である。
【0143】
いくつかの実施形態では、複数の第2次モデル化プロシージャが、実施され、一次機械学習モデルの複数の第2次、すなわち、二次機械学習モデルが、発生される。いくつかの実施形態では、第2次、すなわち、二次機械学習モデルの正確度スコアおよび/または算出リソース使用が、決定ならびに比較される。第2次、すなわち、二次機械学習モデルのうちの1つ以上のものが、モデルの正確度スコアおよび/または算出リソース使用に少なくとも部分的に基づいて、展開のために選択されることができる。
【0144】
機械学習モデルを調節し、解説可能性基準を満たすための技法のいくつかの実施形態が、説明された。当業者は、「解説可能性」および「解釈可能性」が、人工知能および機械学習の分野内で密接に関連する専門用語であることを理解するであろう。「解釈可能性」の範囲が、本明細書で使用されるような「解説可能性」の範囲から逸脱すると理解される限りにおいて、本明細書に説明される技法のいくつかの実施形態はまた、機械学習モデルを調節し、解釈可能性基準を満たすためにも好適である。
【0145】
本発明は、その精神または本質的特性から逸脱することなく、他の具体的形態で具現化され得る。説明される実施形態は、あらゆる点に関して、制限的ではなく、例証的のみと見なされるものである。本発明の範囲は、したがって、前述の説明によるのではなく、添付される請求項によって示される。請求項の均等物の意味および範囲内で生じる全ての変更は、それらの範囲内に包含されるものである。
【0146】
用語
本明細書で使用される表現法および用語は、説明の目的のためであり、限定的と見なされるべきではない。
【0147】
本明細書および請求項で使用されるような用語「約」、語句「~にほぼ等しい」、ならびに他の類似語句(例えば、「Xは、約Yの値を有する」または「Xは、Yにほぼ等しい」)は、1つの値(X)が別の値(Y)の事前決定された範囲内であることを意味すると理解されるべきである。事前決定された範囲は、別様に示されない限り、±20%、10%、5%、3%、1%、0.1%、または0.1%未満であり得る。
【0148】
本明細書および請求項で使用されるような不定冠詞「a」および「an」は、明確に反対に示されない限り、「少なくとも1つ」を意味すると理解されるべきである。本明細書および請求項で使用されるような語句「および/または」は、そのように接続される要素、すなわち、ある場合には接続的に存在し、他の場合には離接的に存在する要素の「いずれか一方または両方」を意味すると理解されるべきである。「および/または」を用いて列挙される複数の要素は、同一の様式で、すなわち、そのように接続される要素のうちの「1つ以上のもの」と解釈されるべきである。他の要素が、随意に、具体的に識別されるそれらの要素に関連するか、または関連しないかどうかにかかわらず、「および/または」の節によって具体的に識別される要素以外に存在し得る。したがって、非限定的実施例として、「Aおよび/またはB」の言及は、「~を備える」等の非制約的言語と併せて使用されるときに、一実施形態では、Aのみ(随意に、B以外の要素を含む)、別の実施形態では、Bのみ(随意に、A以外の要素を含む)、さらに別の実施形態では、AおよびBの両方(随意に、他の要素を含む)等を指すことができる。
【0149】
本明細書および請求項で使用されるように、「または」は、上記に定義されるような「および/または」と同一の意味を有すると理解されるべきである。例えば、リスト内の項目を分離するとき、「または」もしくは「および/または」は、包括的、すなわち、少なくとも1つの包含であるが、いくつかの要素または要素のリストのうちの1つを上回るもの、随意に、付加的な列挙されていない項目も含むものとして解釈されるものとする。「~のうちの1つのみ」または「~のうちの正確に1つ」、もしくは請求項で使用されるときに「~から成る」等の明確に反対に示される用語のみが、いくつかの要素または要素のリストのうちの正確に1つの要素の包含を指すであろう。一般に、使用されるような用語「または」は、「いずれか一方」、「~のうちの1つ」、「~のうちの1つのみ」、または「~のうちの正確に1つ」等の排他性の用語が先行するときに、排他的代替物(すなわち、「一方または他方であるが両方ではない」)を示すものとしてのみ解釈されるものとする。「本質的に~から成る」は、請求項で使用されるときに、特許法の分野で使用されるようなその通常の意味を有するものとする。
【0150】
本明細書および請求項で使用されるように、1つ以上の要素のリストを参照した語句「少なくとも1つ」は、要素のリスト内の要素のうちのいずれか1つ以上のものから選択されるが、要素のリスト内に具体的に列挙される、ありとあらゆる要素のうちの少なくとも1つを必ずしも含まず、要素のリスト内の要素のいずれの組み合わせも除外しない、少なくとも1つの要素を意味すると理解されるべきである。本定義はまた、要素が、随意に、具体的に識別されるそれらの要素に関連するか、または関連しないかどうかにかかわらず、語句「少なくとも1つ」が指す要素のリスト内で具体的に識別される要素以外に存在し得ることも可能にする。したがって、非限定的実施例として、「AおよびBのうちの少なくとも1つ」(または同等に「AまたはBのうちの少なくとも1つ」、もしくは同等に「Aおよび/またはBのうちの少なくとも1つ」)は、一実施形態では、随意に、Bが存在しない、1つを上回るAを含む(随意に、B以外の要素を含む)、少なくとも1つ、別の実施形態では、随意に、Aが存在しない、1つを上回るBを含む(随意に、A以外の要素を含む)、少なくとも1つ、さらに別の実施形態では、随意に、1つを上回るAを含む、少なくとも1つ、および随意に、1つを上回るBを含む(随意に、他の要素を含む)、少なくとも1つ等を指すことができる。
【0151】
用語「~を含む」、「~を備える」、「~を有する」、「~を含有する」、「~を伴う」、およびそれらの変形例は、別様に明示的に規定されない限り、「限定ではないが、~を含む」を意味する。項目の列挙された一覧は、項目のうちのいずれかまたは全てが、別様に明示的に規定されない限り、相互排他的および/または相互包括的であることを含意しない。
【0152】
請求項の要素を修飾するための請求項内の「第1の」、「第2の」、「第3の」等の序数用語の使用は、それ自体では、別の要素と比べた1つの請求項の要素のいずれの優先順位、優位性、または順序、もしくは方法の行為が実施される時間的順序も含意しない。序数用語は、ある名称を有する1つの請求項の要素を、(序数用語の使用のためであるが)同一の名称を有する別の要素と区別し、請求項の要素を区別するために、単に標識として使用される。
【国際調査報告】