(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-09
(45)【発行日】2024-05-17
(54)【発明の名称】データセットのための機械学習モデルの好適性の決定
(51)【国際特許分類】
G06N 20/00 20190101AFI20240510BHJP
【FI】
G06N20/00
(21)【出願番号】P 2021505276
(86)(22)【出願日】2019-07-30
(86)【国際出願番号】 US2019044250
(87)【国際公開番号】W WO2020028440
(87)【国際公開日】2020-02-06
【審査請求日】2022-07-27
(32)【優先日】2018-07-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520479272
【氏名又は名称】データロボット, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ガンタ, シンドゥ
(72)【発明者】
【氏名】ロセリ, ドリュー
(72)【発明者】
【氏名】タラガラ, ニシャ
(72)【発明者】
【氏名】スリダー, ビナイ
(72)【発明者】
【氏名】スンダララマン, スワミナサン
(72)【発明者】
【氏名】アマール, リオル
(72)【発明者】
【氏名】カーモシュ, リオル
(72)【発明者】
【氏名】ラムスンダー, バラス
(72)【発明者】
【氏名】スブラマニアン, スリラム
【審査官】牛丸 太希
(56)【参考文献】
【文献】特開平05-081228(JP,A)
【文献】特開2017-228068(JP,A)
【文献】特表2017-520068(JP,A)
【文献】米国特許出願公開第2017/0300814(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
装置であって、
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成され
ている一次訓練モジュールと、
立証データセットを使用して、前記第1の機械学習モデルの正当性を立証するように構成され
ている一次立証モジュールであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを
生成することを含む、一次立証モジュールと、
第2の機械学習モデルを訓練
することにより、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように構成され
ている二次訓練モジュールであって、前記二次訓練モジュールは、第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して、前記第2の機械学習モデルを訓練するように構成され
ている、二次訓練モジュールと、
好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1
の機械学習モデルまたは
前記第2の機械学習モデル
に関連付けられ
ている是正アクションをトリガするように構成され
ているアクションモジュールと
を備える、装置。
【請求項2】
前記装置は、前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定するように構成され
ている二次立証モジュールをさらに備える、請求項1に記載の装置。
【請求項3】
前記二次立証モジュールは、混同行列および/または1つ以上の訓練統計を使用
することにより、前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定する、請求項2に記載の装置。
【請求項4】
前記二次訓練モジュールは
、複数の異なる第3の機械学習モデルを訓練
することにより、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように、かつ
、前記
複数の第3の機械学習モデルのうちの2つ以上のもののアンサンブルを
生成するように
さらに構成され
ており、前記第2の機械学習モデルは、アンサンブルモデルである、請求項1に記載の装置。
【請求項5】
前記第2の機械学習モデルは、リアルタイムで、前記第1の機械学習モデルが推論データセットに関する予測を
生成する正確度を示す1つ以上の健全性値を
生成することによって、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように構成され
ており、
前記アクションモジュールは、リアルタイムで、前記第2の機械学習モデルが前記1つ以上の健全性値を
生成することに基づいて、前記アクションをトリガするように構成され
ている
、請求項1に記載の装置。
【請求項6】
前記1つ以上の健全性値は、1つ以上の予測信頼値、データ偏差値、A/B試験値、および/または
、カナリア値を備える、請求項5に記載の装置。
【請求項7】
前記アクションは、前記第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、前記第1の機械学習モデルを再訓練することを含む、請求項1に記載の装置。
【請求項8】
前記アクションは、前記第1の機械学習モデルを、異なる訓練データを使用して訓練される異なる機械学習モデルと置換することを含む、請求項1に記載の装置。
【請求項9】
前記アクションは、前記推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨することを含む、請求項1に記載の装置。
【請求項10】
前記アクションは、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を決定すること
に関連付けられ
ている1つ以上の閾値を更新することを含む、請求項1に記載の装置。
【請求項11】
前記エラーデータセットは、
前記立証データセット上の前記第1の機械学習モデルの個別の予測が正確であるかどうかを示すエラー標識と、
前記立証データセットの1つ以上のサンプルの特徴、前記立証データセットの1つ以上のサンプルの統計的シグネチャスコア、前記立証データセットの1つ以上のサンプルに関して前記第1の機械学習モデルによって
生成される予測値、前記第1の機械学習モデルの予測値
に関連付けられ
ている信頼測定基準、および/または
、前記第1の機械学習モデルに特有の1つ以上のパラメータと
を備える、請求項1に記載の装置。
【請求項12】
前記訓練データセットは、連続標識を備え、前記第1の機械学習モデルの個別の予測が正確であるかどうかを示す前記エラー標識は、真の標識からの予測値の距離を決定する回帰アルゴリズムに基づいて決定される、請求項11に記載の装置。
【請求項13】
閾値距離は、前記第1の機械学習アルゴリズムを使用して、前記立証データセットに関する回帰エラー特性(「REC」)曲線を
生成することによって決定される、請求項12に記載の装置。
【請求項14】
プロセッサによって実行される方法であって、
前記プロセッサが、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練することと、
前記プロセッサが、立証データセットを使用して、前記第1の機械学習モデルの正当性を立証することであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを
生成することを含む、ことと、
前記プロセッサが、第2の機械学習モデルを訓練
することにより、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測することであって、前記第2の機械学習モデルは、第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して訓練される、ことと、
前記プロセッサが、好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1
の機械学習モデルまたは
前記第2の機械学習モデル
に関連付けられ
ている是正アクションをトリガすることと
を含む、方法。
【請求項15】
前記方法は、前記プロセッサが、混同行列および/または1つ以上の訓練統計を使用して、前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定することをさらに含む、請求項14に記載の方法。
【請求項16】
前記方法は、前記プロセッサが、複数の異なる第3の機械学習モデルを訓練
することにより、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測し、かつ
、前記
複数の第3の機械学習モデルのうちの2つ以上のもののアンサンブルを
生成することをさらに含み、前記第2の機械学習モデルは、アンサンブルモデルである、請求項14に記載の方法。
【請求項17】
前記プロセッサが、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測することは、
前記プロセッサが、リアルタイムで、前記第1の機械学習モデルが前記推論データセットに関する予測を
生成する正確度を示す1つ以上の健全性値を
生成することを含み、
前記アクションは、リアルタイムで、前記第2の機械学習
モデルが前記1つ以上の健全性値を
生成することに基づいて、トリガされる
、請求項14に記載の方法。
【請求項18】
前記アクションは、
前記プロセッサが、前記第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、前記第1の機械学習モデルを再訓練すること、
前記プロセッサが、前記第1の機械学習モデルを、前記第1の機械学習アルゴリズムを使用して異なる訓練データ上で訓練される異なる機械学習モデルと置換すること、
前記プロセッサが、前記推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨すること、および/または
、
前記プロセッサが、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を決定すること
に関連付けられ
ている1つ以上の閾値を更新すること
を含む、請求項14に記載の方法。
【請求項19】
前記エラーデータセットは、
前記立証データセット上の前記第1の機械学習モデルの個別の予測が正確であるかどうかを示すエラー標識と、
前記立証データセットの1つ以上のサンプルの特徴、前記立証データセットの1つ以上のサンプルの統計的シグネチャスコア、前記立証データセットの1つ以上のサンプルに関して前記第1の機械学習モデルによって
生成される予測値、前記第1の機械学習モデルの予測値
に関連付けられ
ている信頼測定基準、および/または
、前記第1の機械学習モデルに特有の1つ以上のパラメータと
を備える、請求項14に記載の方法。
【請求項20】
装置であって、
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成され
ている一次訓練モジュールと、
立証データセットを使用して、前記第1の機械学習モデルの正当性を立証するように構成され
ている一次立証モジュールであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを
生成することを含む、一次立証モジュールと、
第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して、第2の機械学習モデルを訓練
することにより、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するための手段と、
好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1
の機械学習モデルまたは
前記第2の機械学習モデル
に関連付けられ
ている是正アクションをトリガするように構成され
ているアクションモジュールと
を備える、装置。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本開示の主題は、適用法によって許容される最大限の程度において、参照することによって本明細書に組み込まれる、「Determining Validity of Machine Learning Algorithms for datasets」と題され、2018年7月30日に出願された、米国特許出願第16/049,647号に開示される主題に関連し得る。
【0002】
本開示は、概して、自動機械学習に関し、より具体的には、機械学習モデルを使用し、推論データセットを分析するための別の機械学習モデルの好適性を決定する(例えば、推論する)ステップに関する。
【背景技術】
【0003】
「機械学習」(「ML」)は、概して、具体的タスクを実施するためのコンピュータシステムによる、ある技法(例えば、パターン認識および/または統計的推論技法)の適用を指す。機械学習システムは、サンプルデータ(例えば、「訓練データ」)に基づいて、予測モデルを構築し得、立証データ(例えば、「試験データ」)を使用して、モデルを検証し得る。サンプルおよび立証データは、記録(例えば、「観察」)のセットとして編成され得、各記録は、フィールドのセットに関する値を示す。予測モデルは、他のデータフィールド(例えば、「独立変数」、「入力」、または「特徴」)の値に基づいて、規定データフィールド(例えば、「従属変数」、「出力」、または「標的」)の値を予測するように構成され得る。サンプルデータに類似または関連する他のデータ(例えば、「推論データ」)を提示されたとき、機械学習システムは、そのような予測モデルを使用し、推論データセットの標的の未知の値を正確に予測し得る。
【0004】
予測問題が識別された後、機械学習を使用し、予測問題を正確に解決する予測モデルを構築するプロセスは、概して、データ収集、データクリーニング、特徴工学、モデル発生、およびモデル展開のステップを含む。「自動機械学習」(「AutoML」)技法が、機械学習プロセスまたはその一部のステップを自動化するために使用されてもよい。
【0005】
機械学習は、広範囲のユースケースおよび業界に統合されている。多くの他のタイプのアプリケーションと異なり、機械学習アプリケーション(深層学習および先進分析論を伴う、MLアプリケーションを含む)は、概して、結束して動作し、正確で関連性がある結果を配信しなければならない、複数の独立起動コンポーネントを有する。さらに、入力データのわずかな変更が、結果に非線形変更を引き起こし得る。本複雑性は、機械学習システムの全ての相互依存側面を管理または監視することを困難にし得る。
【発明の概要】
【課題を解決するための手段】
【0006】
機械学習モデルを使用し、予測を行い、それらの予測に基づいてアクションを講じるシステムでは、予測が最終的に不正確であり得、したがって、それらの予測に基づいて講じられるアクションが残念なもの(例えば、有害、高価、非効率的等)となり得る危険性が存在する。多くのそのようなシステムでは、MLモデルの予測Pが利用可能であり、その予測に応答したアクションが講じられる時間T1と、予測Pの正確度が決定的に確認または拒否され得る時間T2との間に有意な遅延が存在する。したがって、MLモデルの予測が正確であるかどうかをより迅速に決定するための技法の必要性が存在する。
【0007】
本発明者らは、モデルの好適性が、本質的に2項質問である一方で、モデルML1によって発生される予測が、はるかに複雑であり得るため、機械学習モデルML1が推論データセットを分析するために好適であるかどうかを予測することの問題(例えば、ML1が推論データセットの特定のサンプルに関して正確な予測を生成するであろうかどうかを予測することの問題)が、多くの場合、推論データセットを分析することの問題よりも単純である(例えば、解決することがより容易である)ことを認識および理解している。したがって、多くの場合、モデルML1の正確度が決定的に確認または拒否されるよりはるか前に、モデルML1の好適性が推論され得るように、第2のモデルML2を訓練し、モデルML1が推論データセットを分析するために好適であるかどうか(例えば、モデルML1が推論データセットの特定のサンプルに関して正確な予測を生成する可能性が高いかどうか)を迅速かつ正確に推論することが可能である。
【0008】
一般に、本明細書に説明される主題の1つの革新的側面は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成される、一次訓練モジュールと、立証データセットを使用して、第1の機械学習モデルの正当性を立証するように構成される、一次立証モジュールであって、第1の機械学習モデルの正当性を立証するステップは、エラーデータセットを発生させるステップを含む、一次立証モジュールと、第2の機械学習モデルを訓練し、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように構成される、二次訓練モジュールであって、二次訓練モジュールは、第2の機械学習アルゴリズムおよびエラーデータセットを使用して、第2の機械学習モデルを訓練するように構成される、二次訓練モジュールと、好適性閾値を満たさない、推論データセットを分析するための第1の機械学習モデルの予測された好適性に応答して、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするように構成される、アクションモジュールとを含む、装置で具現化されることができる。
【0009】
本側面の他の実施形態は、それぞれ、装置のアクションを実施するように構成される、1つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、コンピュータ実装方法、およびコンピュータプログラムを含む。1つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせ(例えば、1つ以上の記憶デバイス内に記憶された命令)を有することにより、特定のアクションを実施するように構成されることができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【0010】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの1つ以上のものを含むことができる。いくつかの実施形態では、本装置はさらに、第1の機械学習モデルの好適性を予測するための第2の機械学習モデの好適性を決定するように構成される、二次立証モジュールを含む。いくつかの実施形態では、二次立証モジュールは、混同行列および/または1つ以上の訓練統計を使用し、第1の機械学習モデルの好適性を予測するための第2の機械学習モデルの好適性を決定する。いくつかの実施形態では、二次訓練モジュールはさらに、複数の異なる第3の機械学習モデルを訓練し、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように、かつ第3の機械学習モデルのうちの2つ以上のもののアンサンブルを発生させるように構成され、第2の機械学習モデルは、アンサンブルモデルである。
【0011】
いくつかの実施形態では、第2の機械学習モデルは、リアルタイムで、第1の機械学習モデルが推論データセットに関する予測を発生させる、正確度を示す、1つ以上の健全性値を発生させることによって、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように構成され、アクションモジュールは、リアルタイムで、第2の機械学習モデルが1つ以上の健全性値を発生させることに基づいて、アクションをトリガするように構成される。いくつかの実施形態では、1つ以上の健全性値は、1つ以上の予測信頼値、データ偏差値、A/B試験値、および/またはカナリア値を含む。
【0012】
いくつかの実施形態では、是正アクションは、第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、第1の機械学習モデルを再訓練するステップを含む。いくつかの実施形態では、是正アクションは、第1の機械学習モデルを、異なる訓練データを使用して訓練される異なる機械学習モデルと置換するステップを含む。いくつかの実施形態では、是正アクションは、推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨するステップを含む。いくつかの実施形態では、是正アクションは、推論データセットを分析するための第1の機械学習モデルの好適性を決定するステップと関連付けられる、1つ以上の閾値を更新するステップを含む。
【0013】
いくつかの実施形態では、エラーデータセットは、立証データセット上の第1の機械学習モデルの個別の予測が正確であるかどうかを示す、エラー標識と、立証データセットの1つ以上のサンプルの特徴、立証データセットの1つ以上のサンプルの統計的シグネチャスコア、立証データセットの1つ以上のサンプルに関して第1の機械学習モデルによって発生される予測値、第1の機械学習モデルの予測値と関連付けられる信頼測定基準、および/または第1の機械学習モデルに特有の1つ以上のパラメータとを含む。
【0014】
いくつかの実施形態では、訓練データセットは、連続標識を備え、第1の機械学習モデルの個別の予測が正確であるかどうかを示す、エラー標識は、真の標識からの予測値の距離を決定する、回帰アルゴリズムに基づいて決定される。いくつかの実施形態では、閾値距離は、第1の機械学習アルゴリズムを使用して、立証データセットに関する回帰エラー特性(「REC」)曲線を発生させることによって決定される。
【0015】
一般に、本明細書に説明される主題の別の革新的側面は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するステップと、立証データセットを使用して、第1の機械学習モデルの正当性を立証するステップであって、第1の機械学習モデルの正当性を立証するステップは、エラーデータセットを発生させるステップを含む、ステップと、第2の機械学習モデルを訓練し、推論データセットを分析するための第1の機械学習モデルの好適性を予測するステップであって、第2の機械学習モデルは、第2の機械学習アルゴリズムおよびエラーデータセットを使用して訓練される、ステップと、好適性閾値を満たさない、推論データセットを分析するための第1の機械学習モデルの予測された好適性に応答して、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするステップとを含む、方法で具現化されることができる。
【0016】
本側面の他の実施形態は、それぞれ、方法のアクションを実施するように構成される、1つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、装置、およびコンピュータプログラムを含む。1つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせ(例えば、1つ以上の記憶デバイス内に記憶された命令)を有することにより、特定のアクションを実施するように構成されることができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【0017】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの1つ以上のものを含むことができる。いくつかの実施形態では、アクションはさらに、混同行列および/または1つ以上の訓練統計を使用して、第1の機械学習モデルの好適性を予測するための第2の機械学習モデルの好適性を決定するステップを含む。いくつかの実施形態では、アクションはさらに、複数の異なる第3の機械学習モデルを訓練し、推論データセットを分析するための第1の機械学習モデルの好適性を予測し、かつ第3の機械学習モデルのうちの2つ以上のもののアンサンブルを発生させるステップを含み、第2の機械学習モデルは、アンサンブルモデルである。
【0018】
いくつかの実施形態では、推論データセットを分析するための第1の機械学習モデルの好適性を予測するステップは、リアルタイムで、第1の機械学習モデルが推論データセットに関する予測を発生させる、正確度を示す、1つ以上の健全性値を発生させるステップを含み、是正アクションは、リアルタイムで、第2の機械学習モジュールが1つ以上の健全性値を発生させることに基づいて、トリガされる。
【0019】
いくつかの実施形態では、是正アクションは、第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、第1の機械学習モデルを再訓練するステップ、第1の機械学習モデルを、第1の機械学習アルゴリズムを使用して異なる訓練データ上で訓練される、異なる機械学習モデルと置換するステップ、推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨するステップ、および/または推論データセットを分析するための第1の機械学習モデルの好適性を決定するステップと関連付けられる、1つ以上の閾値を更新するステップを含む。
【0020】
いくつかの実施形態では、エラーデータセットは、立証データセット上の第1の機械学習モデルの個別の予測が正確であるかどうかを示す、エラー標識と、立証データセットの1つ以上のサンプルの特徴、立証データセットの1つ以上のサンプルの統計的シグネチャスコア、立証データセットの1つ以上のサンプルに関して第1の機械学習モデルによって発生される予測値、第1の機械学習モデルの予測値と関連付けられる信頼測定基準、および/または第1の機械学習モデルに特有の1つ以上のパラメータとを含む。
【0021】
一般に、本明細書に説明される主題の別の革新的側面は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成される、一次訓練モジュールと、立証データセットを使用して、第1の機械学習モデルの正当性を立証するように構成される、一次立証モジュールであって、第1の機械学習モデルの正当性を立証するステップは、エラーデータセットを発生させるステップを含む、一次立証モジュールと、第2の機械学習アルゴリズムおよびエラーデータセットを使用して、第2の機械学習モデルを訓練し、推論データセットを分析するための第1の機械学習モデルの好適性を予測するための手段と、好適性閾値を満たさない、推論データセットを分析するための第1の機械学習モデルの予測された好適性に応答して、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするように構成される、アクションモジュールとを含む、装置で具現化されることができる。
【0022】
いくつかの実施形態、そのための動機、および/またはその利点の説明を含む、前述の概要は、読者が本開示を理解することを支援することを意図しており、いかようにも請求項のうちのいずれの範囲も限定しない。
本発明は、例えば、以下を提供する。
(項目1)
装置であって、
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成される一次訓練モジュールと、
立証データセットを使用して、前記第1の機械学習モデルの正当性を立証するように構成される一次立証モジュールであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを発生させることを含む、一次立証モジュールと、
第2の機械学習モデルを訓練し、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように構成される二次訓練モジュールであって、前記二次訓練モジュールは、第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して、前記第2の機械学習モデルを訓練するように構成される、二次訓練モジュールと、
好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするように構成される、アクションモジュールと
を備える、装置。
(項目2)
前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定するように構成される二次立証モジュールをさらに備える、項目1に記載の装置。
(項目3)
前記二次立証モジュールは、混同行列および/または1つ以上の訓練統計を使用し、前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定する、項目2に記載の装置。
(項目4)
前記二次訓練モジュールはさらに、複数の異なる第3の機械学習モデルを訓練し、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように、かつ前記第3の機械学習モデルのうちの2つ以上のもののアンサンブルを発生させるように構成され、前記第2の機械学習モデルは、アンサンブルモデルである、項目1に記載の装置。
(項目5)
前記第2の機械学習モデルは、リアルタイムで、前記第1の機械学習モデルが推論データセットに関する予測を発生させる正確度を示す1つ以上の健全性値を発生させることによって、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するように構成され、
前記アクションモジュールは、リアルタイムで、前記第2の機械学習モデルが前記1つ以上の健全性値を発生させることに基づいて、前記アクションをトリガするように構成される、
項目1に記載の装置。
(項目6)
前記1つ以上の健全性値は、1つ以上の予測信頼値、データ偏差値、A/B試験値、および/またはカナリア値を備える、項目5に記載の装置。
(項目7)
前記アクションは、前記第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、前記第1の機械学習モデルを再訓練することを含む、項目1に記載の装置。
(項目8)
前記アクションは、前記第1の機械学習モデルを、異なる訓練データを使用して訓練される異なる機械学習モデルと置換することを含む、項目1に記載の装置。
(項目9)
前記アクションは、前記推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨することを含む、項目1に記載の装置。
(項目10)
前記アクションは、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を決定することと関連付けられる1つ以上の閾値を更新することを含む、項目1に記載の装置。
(項目11)
前記エラーデータセットは、
前記立証データセット上の前記第1の機械学習モデルの個別の予測が正確であるかどうかを示すエラー標識と、
前記立証データセットの1つ以上のサンプルの特徴、前記立証データセットの1つ以上のサンプルの統計的シグネチャスコア、前記立証データセットの1つ以上のサンプルに関して前記第1の機械学習モデルによって発生される予測値、前記第1の機械学習モデルの予測値と関連付けられる信頼測定基準、および/または前記第1の機械学習モデルに特有の1つ以上のパラメータと
を備える、項目1に記載の装置。
(項目12)
前記訓練データセットは、連続標識を備え、前記第1の機械学習モデルの個別の予測が正確であるかどうかを示す前記エラー標識は、真の標識からの予測値の距離を決定する回帰アルゴリズムに基づいて決定される、項目11に記載の装置。
(項目13)
閾値距離は、前記第1の機械学習アルゴリズムを使用して、前記立証データセットに関する回帰エラー特性(「REC」)曲線を発生させることによって決定される、項目12に記載の装置。
(項目14)
方法であって、
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練することと、
立証データセットを使用して、前記第1の機械学習モデルの正当性を立証することであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを発生させることを含む、ことと、
第2の機械学習モデルを訓練し、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測することであって、前記第2の機械学習モデルは、第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して訓練される、ことと、
好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1または第2の機械学習モデルと関連付けられる是正アクションをトリガすることと
を含む、方法。
(項目15)
混同行列および/または1つ以上の訓練統計を使用して、前記第1の機械学習モデルの好適性を予測するための前記第2の機械学習モデルの好適性を決定することをさらに含む、項目14に記載の方法。
(項目16)
複数の異なる第3の機械学習モデルを訓練し、前記推論データセットを分析するための前記第1の機械学習モデルの好適性を予測し、かつ前記第3の機械学習モデルのうちの2つ以上のもののアンサンブルを発生させることをさらに含み、前記第2の機械学習モデルは、アンサンブルモデルである、項目14に記載の方法。
(項目17)
推論データセットを分析するための前記第1の機械学習モデルの好適性を予測することは、リアルタイムで、前記第1の機械学習モデルが前記推論データセットに関する予測を発生させる正確度を示す1つ以上の健全性値を発生させることを含み、
前記アクションは、リアルタイムで、前記第2の機械学習モジュールが前記1つ以上の健全性値を発生させることに基づいて、トリガされる、
項目14に記載の方法。
(項目18)
前記アクションは、
前記第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、前記第1の機械学習モデルを再訓練すること、
前記第1の機械学習モデルを、前記第1の機械学習アルゴリズムを使用して異なる訓練データ上で訓練される異なる機械学習モデルと置換すること、
前記推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨すること、および/または
前記推論データセットを分析するための前記第1の機械学習モデルの好適性を決定することと関連付けられる1つ以上の閾値を更新すること
を含む、項目14に記載の方法。
(項目19)
前記エラーデータセットは、
前記立証データセット上の前記第1の機械学習モデルの個別の予測が正確であるかどうかを示すエラー標識と、
前記立証データセットの1つ以上のサンプルの特徴、前記立証データセットの1つ以上のサンプルの統計的シグネチャスコア、前記立証データセットの1つ以上のサンプルに関して前記第1の機械学習モデルによって発生される予測値、前記第1の機械学習モデルの予測値と関連付けられる信頼測定基準、および/または前記第1の機械学習モデルに特有の1つ以上のパラメータと
を備える、項目14に記載の方法。
(項目20)
装置であって、
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成される一次訓練モジュールと、
立証データセットを使用して、前記第1の機械学習モデルの正当性を立証するように構成される一次立証モジュールであって、前記第1の機械学習モデルの正当性を立証することは、エラーデータセットを発生させることを含む、一次立証モジュールと、
第2の機械学習アルゴリズムおよび前記エラーデータセットを使用して、第2の機械学習モデルを訓練し、推論データセットを分析するための前記第1の機械学習モデルの好適性を予測するための手段と、
好適性閾値を満たさない前記推論データセットを分析するための前記第1の機械学習モデルの予測された好適性に応答して、前記第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするように構成される、アクションモジュールと
を備える、装置。
【図面の簡単な説明】
【0023】
本発明の利点が容易に理解されるであろうために、いくつかの実施形態のより具体的な説明が、添付図面に図示される具体的実施形態を参照することによって与えられるであろう。これらの図面が、いくつかの実施形態のみを描写し、したがって、その範囲の限定と見なされないことを理解した上で、いくつかの実施形態が、付随する図面の使用を通して、付加的特異性および詳細を伴って説明および解説されるであろう。
【0024】
【
図1】
図1は、いくつかの実施形態による、データセットのための機械学習モデルの好適性を検出するためのシステムを図示する、概略ブロック図である。
【0025】
【
図2A】
図2Aは、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための論理機械学習層を図示する、概略ブロック図である。
【0026】
【
図2B】
図2Bは、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための別の論理機械学習層を図示する、概略ブロック図である。
【0027】
【
図2C】
図2Cは、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための別の論理機械学習層を図示する、概略ブロック図である。
【0028】
【
図3】
図3は、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための装置を図示する、概略ブロック図である。
【0029】
【
図4】
図4は、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための方法を図示する、概略フローチャート図である。
【0030】
【
図5】
図5は、いくつかの実施形態による、データセットのための機械学習モデルの好適性を決定するための別の方法を図示する、概略フローチャート図である。
【発明を実施するための形態】
【0031】
本明細書で使用されるように、語句「機械学習モデル」は、具体的訓練データ上で機械学習アルゴリズムを訓練するプロセスによって発生される任意の好適なモデルアーチファクトを指し得る。当業者は、語句「機械学習モデルの好適性」が、モデルアーチファクトの好適性および/または推論データに予測を行うためにモデルアーチファクトによって使用されるアルゴリズムの好適性を指し得ることを理解するであろう。
【0032】
「一実施形態」、「ある実施形態」、「いくつかの実施形態」、または類似言語の本明細書の全体を通した言及は、実施形態に関連して説明される特定の特徴、構造、または特性が、少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書の全体を通した、語句「一実施形態では」、「ある実施形態では」、「いくつかの実施形態では」、および類似言語の表出は、全て同一の実施形態を指し得るが、必ずしもそうではなく、別様に明示的に規定されない限り、「1つ以上であるが、全てではない実施形態」を意味する。
【0033】
さらに、実施形態の説明される特徴、利点、および特性は、任意の好適な様式で組み合わせられてもよい。当業者は、実施形態が、特定の実施形態の具体的特徴または利点のうちの1つ以上のものを伴わずに、実践され得ることを認識するであろう。他の事例では、全ての実施形態に存在するわけではない場合がある、付加的特徴および利点が、ある実施形態で認識され得る。
【0034】
実施形態のこれらの特徴および利点は、以下の説明および添付される請求項から、より完全に明白となるであろう、または以降に記載されるような実施形態の実践によって習得され得る。当業者によって理解されるであろうように、本明細書に説明される主題の側面は、システム、方法、および/またはコンピュータプログラム製品として具現化され得る。故に、いくつかの実施形態の側面は、概して、本明細書では全て「回路」、「モジュール」、または「システム」と称され得る、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、またはソフトウェアおよびハードウェア側面を組み合わせる実施形態の形態をとり得る。さらに、いくつかの実施形態の側面は、その上に具現化されたプログラムコードを有する、1つ以上のコンピュータ可読媒体で具現化されるコンピュータプログラム製品の形態をとり得る。
【0035】
本明細書に説明される機能単位の多くは、それらの実装独立性をより具体的に強調するために、モジュールとして標識されている。例えば、モジュールは、カスタムVLSI回路またはゲートアレイ、論理チップ等の既製の半導体、トランジスタ、もしくは他の離散コンポーネントを備える、ハードウェア回路として実装されてもよい。モジュールはまた、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス、または同等物等のプログラマブルハードウェアデバイスで実装されてもよい。
【0036】
モジュールはまた、種々のタイプのプロセッサによる実行のためにソフトウェアで実装されてもよい。プログラムコードの識別されるモジュールは、例えば、オブジェクト、プロシージャ、または関数として編成され得る、例えば、コンピュータ命令の1つ以上の物理もしくは論理ブロックを備えてもよい。なお、識別されるモジュールの実行可能ファイルは、ともに物理的に位置する必要はないが、ともに論理的に継合されると、モジュールを構成し、モジュールのための記述される目的を達成する、異なる場所に記憶された異種命令を備えてもよい。
【0037】
実際、プログラムコードのモジュールは、単一の命令または多くの命令であってもよく、いくつかの異なるコードセグメントにわたって、異なるプログラムの間で、およびいくつかのメモリデバイスを横断して、分散さえされてもよい。同様に、動作データが、本明細書ではモジュール内で識別および図示されてもよく、任意の好適な形態で具現化され、任意の好適なタイプのデータ構造内に編成されてもよい。動作データは、単一のデータセットとして収集されてもよい、または異なる記憶デバイスにわたるものを含む、異なる場所にわたって分散されてもよく、少なくとも部分的に、システムまたはネットワーク上に単に電子信号として存在してもよい。モジュールまたはモジュールの一部が、ソフトウェアで実装される場合、プログラムコードは、1つ以上のコンピュータ可読媒体上に記憶および/または伝搬されてもよい。
【0038】
コンピュータプログラム製品は、プロセッサにいくつかの実施形態の側面を実行させるためのコンピュータ可読プログラム命令をその上に有する、コンピュータ可読記憶媒体(または複数の媒体)を含んでもよい。
【0039】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のために命令を留保および記憶し得る、有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、限定ではないが、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述の任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な実施例の非包括的リストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(「RAM」)、読取専用メモリ(「ROM」)、消去可能プログラマブル読取専用メモリ(「EPROM」またはフラッシュメモリ)、スタティックランダムアクセスメモリ(「SRAM」)、ポータブルコンパクトディスク読取専用メモリ(「CD-ROM」)、デジタル多用途ディスク(「DVD」)、メモリスティック、フロッピー(登録商標)ディスク、パンチカードまたはその上に記録された命令を有する溝内の隆起構造等の機械的にエンコードされたデバイス、および前述の任意の好適な組み合わせを含む。本明細書で使用されるような「非一過性の」コンピュータ可読記憶媒体は、それ自体が、電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体を通して伝搬する電磁波(例えば、光ファイバケーブルを通して通過する光パルス)、もしくはワイヤを通して伝送される電気信号等の一時的信号であるものとして解釈されるものではない。
【0040】
本明細書に説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から個別のコンピューティング/処理デバイスに、もしくはネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、および/または無線ネットワークを介して、外部コンピュータまたは外部記憶デバイスにダウンロードされることができる。ネットワークは、銅製伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを備えてもよい。各コンピューティング/処理デバイス内のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個別のコンピューティング/処理デバイス内のコンピュータ可読記憶媒体内に記憶するために、コンピュータ可読プログラム命令を転送する。
【0041】
いくつかの実施形態の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++、もしくは同等物等のオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくは類似プログラミング言語等の従来のプロシージャプログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードもしくはオブジェクトコードのいずれかであってもよい。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、独立型ソフトウェアパッケージとして、部分的にユーザのコンピュータ上および部分的に遠隔コンピュータ上で、または完全に遠隔コンピュータもしくはサーバ上で、実行されてもよい。後者のシナリオでは、遠隔コンピュータは、ローカルエリアネットワーク(LAN)もしくは広域ネットワーク(WAN)を含む、任意のタイプのネットワークを通して、ユーザのコンピュータに接続されてもよい、または接続は、(例えば、インターネットサービスプロバイダを使用してインターネットを通して)外部コンピュータに行われてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む、電子回路が、いくつかの実施形態の側面を実施するために、コンピュータ可読プログラム命令の状態情報を利用し、電子回路を個人化することによって、コンピュータ可読プログラム命令を実行してもよい。
【0042】
いくつかの実施形態の側面が、いくつかの実施形態による、方法、装置(システム)、およびコンピュータプログラム製品のフローチャート図および/またはブロック図を参照して、本明細書に説明される。フローチャート図および/またはブロック図の各ブロック、ならびにフローチャート図および/またはブロック図内のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装され得ることを理解されたい。
【0043】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為を実装するための手段を作成するように、機械を生成するために、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されてもよい。これらのコンピュータ可読プログラム命令はまた、その中に記憶された命令を有する、コンピュータ可読記憶媒体が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為の側面を実装する命令を含む、製造品を備えるように、特定の様式で機能するようにコンピュータ、プログラマブルデータ処理装置、ならびに/もしくは他のデバイスに指示し得る、コンピュータ可読記憶媒体内に記憶されてもよい。
【0044】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートおよび/またはブロック図の1つもしくは複数のブロックに規定される機能/行為を実装するように、一連の動作ステップを、コンピュータ、他のプログラマブル装置、または他のデバイス上で実施させ、コンピュータ実装プロセスを生成するために、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードされてもよい。
【0045】
図内の概略フローチャート図および/または概略ブロック図は、種々の実施形態による、装置、システム、方法、およびコンピュータプログラム製品の可能性として考えられる実装のアーキテクチャ、機能性、および動作を図示する。この点に関して、概略フローチャート図および/または概略ブロック図内の各ブロックは、規定論理関数を実装するためのプログラムコードの1つ以上の実行可能命令を備える、モジュール、セグメント、またはコードの一部を表し得る。
【0046】
また、いくつかの代替実装では、ブロックに記述される機能は、図に記述される順序外で起こり得ることも理解されたい。例えば、連続して示される2つのブロックは、実際には、実質的に並行して実行されてもよい、またはブロックは、時として、関与する機能性に応じて、逆の順序で実行されてもよい。図示される図の1つ以上のブロックもしくはその部分と機能、論理、または効果が同等である、他のステップおよび方法も、着想され得る。
【0047】
種々の矢印タイプおよび線タイプが、フローチャートおよび/またはブロック図で採用され得るが、それらは、対応する実施形態の範囲を限定しないと理解される。実際、いくつかの矢印または他のコネクタが、描写される実施形態の論理フローのみを示すために使用されてもよい。例えば、矢印は、描写される実施形態の列挙されるステップの合間の規定されていない持続時間の待機または監視周期を示し得る。いくつかの矢印または他のコネクタが、データのフローを示すために使用されてもよい。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図内のブロックの組み合わせは、規定機能または行為、もしくは専用ハードウェアおよびプログラムコードの組み合わせを実施する、専用ハードウェアベースのシステムによって実装され得ることにも留意されたい。
【0048】
図1は、データセットのための機械学習モデルの好適性を決定するためのシステム100の一実施形態を図示する、概略ブロック図である。一実施形態では、システム100は、1つ以上の情報ハンドリングデバイス102と、1つ以上のML管理装置104と、1つ以上のデータネットワーク106と、1つ以上のサーバ108とを含む。ある実施形態では、具体的な数の情報ハンドリングデバイス102、ML管理装置104、データネットワーク106、およびサーバ108が、
図1に描写されるが、当業者は、本開示を踏まえて、任意の数の情報ハンドリングデバイス102、ML管理装置104、データネットワーク106、およびサーバ108が、システム100に含まれ得ることを認識するであろう。
【0049】
一実施形態では、システム100は、1つ以上の情報ハンドリングデバイス102を含む。情報ハンドリングデバイス102は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン、スマートスピーカ(例えば、Amazon Echo(登録商標)、Google Home(登録商標)、Apple HomePod(登録商標))、セキュリティシステム、セットトップボックス、ゲーム機、スマートTV、スマートウォッチ、フィットネスバンドまたは他のウェアラブル活動追跡デバイス、光学頭部搭載型ディスプレイ(例えば、仮想現実ヘッドセット、スマートグラス、または同等物)、高解像度マルチメディアインターフェース(「HDMI(登録商標)」)または他の電子ディスプレイドングル、携帯情報端末、デジタルカメラ、ビデオカメラ、もしくはプロセッサ(例えば、中央処理ユニット(「CPU」)、プロセッサコア、フィールドプログラマブルゲートアレイ(「FPGA」)または他のプログラマブル論理、特定用途向け集積回路(「ASIC」)、コントローラ、マイクロコントローラ、および/または別の半導体集積回路デバイス)、揮発性メモリ、および/または不揮発性記憶媒体を備える、別のコンピューティングデバイスのうちの1つ以上のものを含んでもよい。
【0050】
ある実施形態では、情報ハンドリングデバイス102は、下記に説明されるデータネットワーク106を経由して、1つ以上の他の情報ハンドリングデバイス102に、および/または1つ以上のサーバ108に通信可能に結合される。情報ハンドリングデバイス102は、さらなる実施形態では、種々のプログラム、プログラムコード、アプリケーション、命令、機能、および/または同等物を実行するように構成される、プロセッサ、プロセッサコア、ならびに/もしくは同等物を含んでもよい。情報ハンドリングデバイス102は、下記により詳細に説明されるように、種々の機械学習動作を実施するための実行可能コード、機能、命令、オペレーティングシステム、および/または同等物を含んでもよい。
【0051】
一実施形態では、ML管理装置104は、機械学習システムの「健全性」の管理、監視、維持、および/または同等物を行うように構成される。本明細書で使用されるように、機械学習システムの「健全性」は、二次または補助機械学習モデルを使用する機械学習モデルの分析に基づいて、機械学習モデルを使用して処理される推論データセット(例えば、推論データセットに関して正確な予測を発生させる第1の機械学習モデルの能力)を分析するための訓練データセット上で訓練される機械学習モデルの好適性(例えば、妥当性、予測性能等)を指し得る。
【0052】
下記により詳細に解説されるように、機械学習システムは、訓練パイプライン、編成/管理パイプライン、推論パイプライン、および/または同等物等の種々のコンポーネント、パイプライン、データセット、ならびに/もしくは同等物を伴い得る。さらに、コンポーネントは、具体的目的、問題、および/または同等物に対処するように特別に設計もしくは構成されてもよい。いくつかの機械学習システムでは、ユーザは、特定の問題/目的を分析するために使用される機械学習コンポーネントを決定し、次いで、コンポーネント毎の入力/出力、各コンポーネントの限界、各コンポーネントによって発生されるイベント、および/または同等物を手動で決定し得る。さらに、いくつかの機械学習システムを用いると、システム内の多数のコンポーネントおよび相互作用に起因する、エラーが生じた場所、エラーを引き起こした内容、予測結果が有するべき正確度ほど正確ではなかった理由、機械学習モデルが特定の推論データセットのために好適であるかどうか、および/または同等物を追跡することが困難であり得る。
【0053】
一実施形態では、ML管理装置104は、第1の/一次機械学習アルゴリズムおよび訓練データセットを使用して、第1または一次機械学習モデルを訓練するステップ、立証データセットを使用して、第1の機械学習モデルの正当性を立証するステップであって、第1の機械学習モデルの正当性を立証するステップは、立証データセット上の第1の機械学習モデルの正確度を説明し得る、エラーデータセットを発生させるステップを含む、ステップ、および第2の機械学習モデルを訓練し、推論データセットを分析するための第1のMLモデルの好適性を予測するステップであって、第2のMLモデルは、エラーデータセットを使用して訓練される、ステップによって、機械学習システムのための改良を提供する。いくつかの実施形態では、第2のMLモデルは、第2の/補助機械学習アルゴリズムを使用して訓練される。第2の機械学習モデルは、次いで、推論データセットを分析するための第1または一次機械学習モデルの好適性(例えば、有効性、正確度、信頼性、および/または同等物)を決定する(例えば、予測する、検証する、正当性を立証する、チェックする、監視する、ならびに/もしくは同等物を行う)ために使用される。
【0054】
第2の機械学習モデルが、例えば、1つ以上の好適性スコア(もしくは「健全性スコア」)によって示されるように、第1の機械学習モデルが推論データセットのために不適切である(例えば、良好な適合ではない)ことを予測する場合には、ML管理装置104は、1つ以上のアクション(例えば、ステップ、機能、および/または同等物)を講じ、第1の機械学習モデルを補正または改良してもよい。例えば、好適性スコアが、非好適性閾値を満たし、第2のMLモデルが、第1の機械学習モデルが推論訓練データのために好適ではないことを予測することを示す場合、ML管理装置104は、第1の機械学習モデルを変更してもよい、第1の機械学習モデルを再訓練してもよい、第1の機械学習モデルよりも正確な機械学習モデルを発生させるための1つ以上の推奨を提供してもよい、第1の機械学習モデルの種々の閾値またはパラメータを調節もしくは更新してもよい、および/または同等物を行ってもよい。他方では、好適性スコアが、非好適性閾値を満たすが、ML管理装置が、続いて、第1のMLモデルが実際に推論訓練データのために好適であることを決定する場合、ML管理装置104は、第2の機械学習モデルを変更または再訓練してもよい、第2の機械学習モデルよりも正確な機械学習モデルを発生させるための1つ以上の推奨を提供してもよい、第2の機械学習モデルと関連付けられる種々の閾値またはパラメータ(例えば、非好適性閾値)を調節もしくは更新してもよい、および/または同等物を行ってもよい。
【0055】
さらに、ML管理装置104は、機械学習システム100内の任意の点における第2の機械学習モデルを使用して、推論データセットを分析するための第1の機械学習モデルの好適性を決定してもよい。例えば、機械学習システム100が、複数の推論層を含む深層学習システムである場合、ML管理装置104は、深層学習システムの任意の層(例えば、各層)における第2の機械学習モデルを使用して、第1の機械学習モデルの好適性を評価することによって、第1の機械学習モデルが推論データセットのために好適である程度を決定してもよい。
【0056】
機械学習モデルのライフサイクルでは、機械学習モデルを発生させるための訓練段階と、機械学習モデルを使用して推論データセットを分析するための推論段階とが存在する。推論段階からの出力は、推論データセットの1つ以上の特徴に基づいて(例えば、その関数として)決定される、1つ以上の予測値(例えば、「標識」)を含んでもよい。例えば、訓練データセットが、機械学習モデルを訓練するために使用される、特徴データの3つの列、すなわち、年齢、性別、および身長を備え、推論データが、推論パイプライン206からの出力である、特徴データの2つの列、すなわち、年齢および身長を備える場合、機械学習モデルを使用することは、所与の推論データに基づいて予測性別(男/女)を説明する「標識」であってもよい。
【0057】
訓練段階では、データセットに関してMLモデルによって発生される予測出力は、機械学習モデルの好適性、例えば、機械学習モデルの正確度または予測性能を決定するように、そのデータセットに関する参照値と比較されてもよい。このように、MLモデルの予測性能は、特徴情報および参照標的情報の両方がすでに利用可能である、訓練データセットまたは別個の立証もしくは試験セットのいずれかで評価されてもよい。しかしながら、予測モデル化問題の性質が、参照標的情報が先験的に利用可能ではないことを示唆するため、MLモデルの好適性を査定するための参照標的情報の使用は、概して、推論段階の間に、またはそれに先立って、リアルタイムで機械学習モデルの予測性能を決定または推定することを可能にしない。さらに、参照標識が発生されることを待機し、機械学習モデルの有効性を立証することは、モデルの有効性の分析を遅延させ得、機械学習モデルの予測性能が、その遅延周期の間に逸脱または低下するときに、事業損失または他の問題を引き起こし得る。
【0058】
対照的に、ML管理装置104のいくつかの実施形態は、第2の機械学習モデルを使用して、推論データセットに関する参照標識がない場合に、推論データセットのための第1の機械学習モデルおよび/または同等物の好適性(例えば、予測性能)を評価する。いくつかの実施形態では、第2のMLモデルは、第1のMLモデルによって対処される予測モデル化問題のタイプ、第1のMLモデルのタイプ、第1のMLモデルを発生させるために使用されるMLアルゴリズムのタイプ、第1のMLモデルを発生させるために使用される特定の言語もしくはフレームワーク、および/または同等物に依存しない。訓練データセットおよび推論データセット内の特徴から統計を抽出し、統計を使用して、訓練データセットが推論データセットに適用可能である可能性の高さを示す好適性スコアを発生させることによって、MLモデルの好適性を評価するための関連技法が、「Detecting Suitability of Machine Learning Models for Datasets」と題され、2019年6月6日に出願された、国際出願第PCT/US2019/035853号(整理番号DRB-101WO)(適用法によって許容される最大限の程度において、参照することによって本明細書に組み込まれる)に説明されている。
【0059】
依然として、
図1を参照すると、その種々のサブモジュールを含む、ML管理装置104は、システム100内の1つ以上の情報ハンドリングデバイス102、1つ以上のサーバ108、1つ以上のネットワークデバイス、および/または同等物の上に位置してもよい。ML管理装置104のいくつかの実施形態は、
図3を参照して下記により詳細に説明される。
【0060】
種々の実施形態では、ML管理装置104は、情報ハンドリングデバイス102上、サーバ108上、またはデータネットワーク106上の他の場所にインストールもしくは展開され得る、ハードウェアアプライアンスとして具現化されてもよい。ある実施形態では、ML管理装置104は、有線接続(例えば、ユニバーサルシリアルバス(「USB」)接続)または無線接続(例えば、Bluetooth(登録商標)、Wi-Fi、近距離通信(「NFC」)、もしくは同等物)のいずれかによって、ラップトップコンピュータ、サーバ108、タブレットコンピュータ、スマートフォン、セキュリティシステム、または同等物等のデバイスにアタッチする、電子ディスプレイデバイス(例えば、HDMI(登録商標)ポート、DisplayPortポート、Mini DisplayPortポート、VGAポート、DVIポート、または同等物を使用する、テレビもしくはモニタ)にアタッチする、および/または同等物である、セキュアハードウェアドングルまたは他のハードウェアアプライアンスデバイス(例えば、セットトップボックス、ネットワークアプライアンス、もしくは同等物)等のハードウェアデバイスを含んでもよい。ML管理装置104のハードウェアアプライアンスは、ML管理装置104に関して本明細書に説明される機能を実施するように構成される、下記に説明されるようなディスプレイ、および/または半導体集積回路デバイスにアタッチする、電力インターフェース、有線ならびに/もしくは無線ネットワークインターフェース、グラフィカルインターフェースを含んでもよい。
【0061】
ML管理装置104は、そのような実施形態では、マイクロコントローラ、特定用途向け集積回路(「ASIC」)、プロセッサ、プロセッサコア、または同等物上で実行するためのフィールドプログラマブルゲートアレイ(「FPGA」)または他のプログラマブル論理、FPGAまたは他のプログラマブル論理のためのファームウェア、マイクロコード等の半導体集積回路デバイス(例えば、1つ以上のチップ、ダイ、もしくは他の離散論理ハードウェア)、または同等物を含んでもよい。一実施形態では、ML管理装置104は、(例えば、揮発性メモリ、不揮発性記憶媒体、ネットワークインターフェース、周辺デバイス、グラフィカル/ディスプレイインターフェース、または同等物への)1つ以上の電線もしくは接続を伴うプリント回路基板上に搭載されてもよい。ハードウェアアプライアンスは、データを送信および受信するように構成される(例えば、プリント回路基板または同等物の1つ以上の電線と通信する)、1つ以上のピン、パッド、もしくは他の電気接続と、ML管理装置104の種々の機能を実施するように構成される、1つ以上のハードウェア回路および/または他の電気回路とを含んでもよい。
【0062】
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つ以上の不揮発性メモリ媒体を含む、および/またはそれに通信可能に結合される。
【0063】
データネットワーク106は、一実施形態では、デジタル通信を伝送する、デジタル通信ネットワークを含む。データネットワーク106は、無線セルラーネットワーク等の無線ネットワーク、Wi-Fiネットワーク等のローカル無線ネットワーク、Bluetooth(登録商標)ネットワーク、近距離通信(「NFC」)ネットワーク、アドホックネットワーク、および/または同等物を含んでもよい。データネットワーク106は、広域ネットワーク(「WAN」)、ストレージエリアネットワーク(「SAN」)、ローカルエリアネットワーク(LAN)、光ファイバネットワーク、インターネット、または他のデジタル通信ネットワークを含んでもよい。データネットワーク106は、2つ以上のネットワークを含んでもよい。データネットワーク106は、1つ以上のサーバ、ルータ、スイッチ、および/または他のネットワーキング機器を含んでもよい。データネットワーク106はまた、ハードディスクドライブ、光学ドライブ、不揮発性メモリ、RAM、または同等物等の1つ以上のコンピュータ可読記憶媒体を含んでもよい。
【0064】
無線接続は、携帯電話ネットワークであってもよい。無線接続はまた、Institute of Electrical and Electronics Engineers(「IEEE」)802.11規格のうちのいずれか1つに基づく、Wi-Fiネットワークを採用してもよい。代替として、無線接続は、Bluetooth(登録商標)接続であってもよい。加えて、無線接続は、International Organization for Standardization(「ISO」)、International Electrotechnical Commission(「IEC」)、American Society for Testing and Materials(登録商標)(ASTM(登録商標))、DASH7TM Alliance、およびEPCGlobalTMによって確立されたRFID規格を含む、無線周波数識別(「RFID」)通信を採用してもよい。
【0065】
代替として、無線接続は、IEEE 802規格に基づくZigBee(登録商標)接続を採用してもよい。一実施形態では、無線接続は、Sigma Designs(登録商標)によって設計されるようなZ-Wave(登録商標)接続を採用する。代替として、無線接続は、Dynastream(登録商標) Innovations Inc.(Cochrane, Canada)によって定義されるようなANT(登録商標)および/またはANT+(登録商標)接続を採用してもよい。
【0066】
無線接続は、Infrared Data Association(登録商標)(「IrDA」(登録商標))によって定義されるような赤外線物理層仕様(「IrPHY」)に少なくとも準拠する接続を含む、赤外線接続であってもよい。代替として、無線接続は、携帯電話ネットワーク通信であってもよい。各規格および/または接続タイプは、本開示の出願日時点の規格および/または接続タイプの最新バージョンならびに改正を含んでもよい。
【0067】
1つ以上のサーバ108は、一実施形態では、ブレードサーバ、メインフレームサーバ、タワーサーバ、ラックサーバ、および/または同等物として具現化されてもよい。1つ以上のサーバ108は、メールサーバ、ウェブサーバ、アプリケーションサーバ、FTPサーバ、メディアサーバ、データサーバ、ウェブサーバ、ファイルサーバ、仮想サーバ、および/または同等物として構成されてもよい。1つ以上のサーバ108は、データネットワーク106を経由して、1つ以上の情報ハンドリングデバイス102に通信可能に結合(例えば、ネットワーク化)されてもよい。1つ以上のサーバ108は、機械学習データ、アルゴリズム、訓練モデル、および/または同等物等の情報ハンドリングデバイス102と関連付けられるデータを記憶してもよい。
【0068】
図2Aは、データセットのための機械学習モデルの好適性を決定するための機械学習層200の一実施形態を図示する、概略ブロック図である。一実施形態では、論理機械学習層200は、1つ以上のポリシ/制御パイプライン202と、1つ以上の訓練パイプライン204と、1つ以上の推論パイプライン206a-cと、1つ以上のデータベース208と、入力データ210と、ML管理装置104とを含む。具体的な数の機械学習パイプライン202、204、206a-cが、
図2Aに描写されるが、当業者は、本開示を踏まえて、任意の数の機械学習パイプライン202、204、206a-cが、論理機械学習層200に存在し得ることを認識するであろう。さらに、
図2Aに描写されるように、種々のパイプライン202、204、206a-cは、上記に説明される情報ハンドリングデバイス102、仮想マシン、クラウドもしくは他の遠隔デバイス、および/または同等物等のデバイス203、205、207a-cとして具現化される、異なるノード上に位置してもよい。いくつかの実施形態では、機械学習層200は、インテリジェンスオーバーレイネットワーク(「ION」)としても公知である、論理機械学習層の実施形態である。
【0069】
本明細書で使用されるように、機械学習パイプライン202、204、206a-cは、モデル訓練/推論、特徴工学、立証、スコア化、および/または同等物等の種々の機械学習動作を実施するためにパイプラインが使用し得る、種々の機械学習特徴、コンポーネント、オブジェクト、モジュール、ならびに/もしくは同等物を備えてもよい。パイプライン202、204、206a-cは、バッチでデータ210を分析または処理する、例えば、ストリーミングを介して、静的ソースからの全てのデータを一度に処理する、例えば、ライブデータに増分的に作用する、または前述の組み合わせ、例えば、マイクロバッチであってもよい。
【0070】
ある実施形態では、各パイプライン202、204、206a-cが、デバイス203、205、207a-c、例えば、情報ハンドリングデバイス102、仮想マシン、および/または同等物上で実行される。いくつかの実施形態では、複数の異なるパイプライン202、204、206a-cが、同一のデバイス上で実行される。種々の実施形態では、各パイプライン202、204、206a-cは、明確に異なるまたは別個のデバイス上で実行される。デバイス203、205、207a-cは、全て単一の場所に位置してもよい、同一のネットワークに接続されてもよい、クラウドもしくは別の遠隔場所に位置してもよい、および/または前述のある組み合わせであってもよい。
【0071】
一実施形態では、各パイプライン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)を使用して、分析エンジン毎に開発されるカスタムプログラムもまた、含まれてもよい。さらに、各パイプラインが、種々の異なるプラットフォーム、ライブラリ、プログラミング言語、および/または同等物を使用して、実装されてもよい。例えば、推論パイプライン206aが、Pythonを使用して実装されてもよい一方で、異なる推論パイプライン206bが、Java(登録商標)を使用して実装される。
【0072】
一実施形態では、機械学習層200は、所望の目的、結果、問題、および/または同等物に基づく、機械学習パイプライン202、204、206a-cの物理および/または論理群を含む。例えば、ML管理装置104は、所望の目的のために構成される機械学習モデルを発生させるための訓練パイプライン204と、選択された推論パイプライン206a-cが構成される分析エンジン、および機械学習モデルを使用して、所望の目的と関連付けられる入力データ210を処理することによって、所望の目的を分析するように構成される、1つ以上の推論パイプライン206a-cとを選択してもよい。したがって、群は、複数の分析エンジンを備えてもよく、分析エンジンは、複数の群の一部であってもよい。群は、目的に関してデータを分析すること、他の群の動作を管理すること、他の群の結果/性能を監視すること、制御された環境内で異なる機械学習アルゴリズム/モデルを用いて実験すること、例えば、サンドボックス、および/または同等物等の異なるタスクを実施するように定義されることができる。
【0073】
例えば、機械学習パイプライン202、204、206a-cの論理群は、機械学習パイプライン202、204、206a-cの監視された論理群からのフィードバック、結果、メッセージ、および/または同等物を処理することによって、ならびに/もしくは機械学習パイプライン202、204、206a-cの監視された論理群の中に入力を提供し、異常、エラー、および/または同等物を検出することによって、機械学習パイプライン202、204、206a-cの異なる論理群の結果、性能、動作、健全性、ならびに/もしくは同等物を分析するように構築されてもよい。
【0074】
機械学習パイプライン202、204、206a-cが、異なるデバイス203、205、207a-c、同一のデバイス203、205、207a-c、および/または同等物の上に位置し得るため、ML管理装置104は、目的を分析するために最良に構成される機械学習パイプライン202、204、206a-cを論理的に群化する。下記により詳細に説明されるように、論理群は、機械学習パイプライン202、204、206a-cの論理群が、特に具体的目的のために構成され得るように、事前定義されてもよい。
【0075】
ある実施形態では、ML管理装置104は、目的が、機械学習パイプライン202、204、206a-cの特性、設定、および/または同等物に基づいて、決定される、受信される、ならびに/もしくは同等物が行われるときに、目的に関して機械学習パイプライン202、204、206a-cを動的に選択する。ある実施形態では、パイプライン202、204、206a-cの複数の異なる論理群は、同一の物理的インフラストラクチャ、プラットフォーム、デバイス、仮想マシン、および/または同等物を共有してもよい。さらに、パイプライン202、204、206a-cの異なる論理群は、分析されている目的に基づいて、マージされる、組み合わせられる、および/または同等物が行われてもよい。
【0076】
一実施形態では、ポリシパイプライン202は、論理機械学習層200内の動作を維持/管理するように構成される。ある実施形態では、例えば、ポリシパイプライン202は、訓練パイプライン204から機械学習モデルを受信し、目的に関して入力データ210を分析する際に使用するために、機械学習モデルを推論パイプライン206a-cにプッシュする。種々の実施形態では、ポリシパイプライン202は、論理機械学習層200と関連付けられるユーザ入力を受信する、他のパイプライン204、206a-cからイベントおよび/またはフィードバック情報を受信する、機械学習モデルの正当性を立証する、パイプライン202、204、206a-cの間のデータ伝送を促進する、および/または同等物を行う。
【0077】
一実施形態では、ポリシパイプライン202は、パイプライン204、206a-cが相互と相互作用する方法を定義する、1つ以上のポリシを備える。例えば、訓練パイプライン204は、訓練サイクルが完了した後に機械学習モデルを出力してもよい。いくつかの可能性として考えられるポリシは、機械学習モデルが取り扱われる方法を定義し得る。例えば、あるポリシは、機械学習モデルが推論パイプライン206a-cに自動的にプッシュされ得ることを規定し得る一方で、別のポリシは、ポリシパイプライン202が機械学習モデルを推論パイプライン206a-cにプッシュすることに先立って、ユーザ入力が機械学習モデルを承認するために要求されることを規定し得る。ポリシはさらに、機械学習モデルが更新される方法を定義し得る。
【0078】
例えば、あるポリシは、例えば、推論パイプライン206a-cから受信される機械学習結果に基づいて、機械学習モデルがフィードバックに基づいて自動的に更新されることを規定し得る、あるポリシは、機械学習モデルが推論パイプライン206a-cに伝搬される前に、ユーザがそれを精査する、検証する、および/または正当性を立証するように要求されるどうかを規定し得る、あるポリシは、機械学習モデルが更新される頻度(例えば、1日に1回、1時間に1回、連続的に、ならびに/もしくは同等物)等の論理機械学習層200内のスケジューリング情報を規定し得る、および/または同等物を行い得る。
【0079】
ポリシは、パイプライン202、204、206a-cの異なる論理群が相互作用または協働し、凝集データインテリジェンスワークフローを形成する方法を定義し得る。例えば、あるポリシは、1つの論理機械学習層200によって発生される結果が、異なる論理機械学習層200の中への入力として、例えば、機械学習モデルのための訓練データとして、推論パイプライン206a-cへの入力データ210として、および/または同等物として使用されることを規定し得る。ポリシは、機械学習モデルが更新される方法および時間、個々のパイプライン202、204、206a-cが通信ならびに相互作用する方法、および/または同等物を定義し得る。
【0080】
一実施形態では、ポリシパイプライン202は、パイプライン204、206a-cの論理群を備える、パイプライン204、206a-cのマッピングを維持する。ポリシパイプラインはさらに、ユーザ入力、フィードバック、もしくはパイプライン204、206a-cによって発生されるイベント、および/または同等物に応答して、パイプライン204、206a-cの種々の設定または特徴を調節してもよい。例えば、推論パイプライン206aが、不正確である機械学習を発生させる場合、ポリシパイプライン202は、結果が不正確であることを示すメッセージを推論パイプライン202から受信してもよく、推論パイプライン206aのための新しい機械学習モデルを発生させるように訓練パイプライン204に指示してもよい。
【0081】
訓練パイプライン204は、一実施形態では、目的と関連付けられる履歴または訓練データに基づいて分析されている目的のための機械学習モデルを発生させるように構成される。本明細書で使用されるように、機械学習モデルは、特定の目的と関連付けられる履歴または訓練データに訓練または学習アルゴリズムを実行することによって、発生される。機械学習モデルは、入力データを標的、例えば、所望の結果/予測にマップする、訓練データ内のパターンを捕捉する、訓練プロセスによって発生される、アーチファクトである。一実施形態では、訓練データは、静的データセット、オンラインソースからアクセス可能なデータ、ストリーミングデータセット、および/または同等物であってもよい。
【0082】
推論パイプライン206a-cは、一実施形態では、発生された機械学習モデルおよび対応する分析エンジンを使用し、目的と関連付けられる入力/推論データ210について機械学習結果/予測を発生させる。入力データは、分析されている目的と関連付けられるが、訓練データの一部ではなかったデータを備える場合があり、例えば、入力データのパターン/成果は、把握されていない。例えば、ユーザが、Eメールがスパムであるかどうかを把握することを所望する場合、訓練パイプライン204は、スパムであることが把握されるEメール、およびスパムではないことが把握されるEメールの両方を含む、訓練データセットを使用して、機械学習モデルを発生させてもよい。機械学習モデルが発生された後、ポリシパイプライン202は、機械学習モデルを推論パイプライン206a-cにプッシュし、そこで、例えば、入力/推論データ210として提供される、1つ以上のEメールが、スパムであるかどうかを予測するために使用される。
【0083】
したがって、
図2Aに描写されるように、ポリシパイプライン202、訓練パイプライン204、および推論パイプライン206a-cが、エッジ/中心グラフで描写される。描写される実施形態では、新しい機械学習モデルが、データセンタ内の大型クラスタ化分析エンジン上で実行され得る、バッチ訓練パイプライン204内で周期的に訓練される。訓練パイプライン204が、新しい機械学習モデルを発生させるにつれて、管理者が、通知されてもよい。管理者は、発生された機械学習モデルを精査してもよく、管理者が承認する場合、機械学習モデルが、それぞれ、エッジデバイスに由来するライブデータ、例えば、入力/推論データ210に実行され得る、目的のための論理パイプライン群を備える、推論パイプライン206a-cにプッシュされる。
【0084】
図2Bは、データセットのための機械学習モデルの好適性を決定するための論理機械学習層225の別の実施形態を図示する、概略ブロック図である。一実施形態では、
図2Bの論理機械学習層225は、
図2Aに描写される論理機械学習層200に実質的に類似する。
図2Aに描写される論理機械学習層200の要素に加えて、
図2Bの論理機械学習層225は、訓練デバイス205a-b上で実行される、複数の訓練パイプライン204a-bを含む。
【0085】
描写される実施形態では、訓練パイプライン204a-bは、目的のための訓練データに基づいて、目的のための機械学習モデルを発生させる。訓練データは、訓練パイプライン204a-b毎に異なり得る。例えば、第1の訓練パイプライン204aのための訓練データが、所定の時間周期にわたる履歴データを含んでもよい一方で、第2の訓練パイプライン204bのための訓練データは、異なる所定の時間周期にわたる履歴データを含んでもよい。訓練データの変動は、異なるタイプのデータ、異なる時間周期において収集されるデータ、異なる量のデータ、および/または同等物を含んでもよい。
【0086】
他の実施形態では、訓練パイプライン204a-bは、異なるまたは同一のセットの訓練データに異なる訓練または学習アルゴリズムを実行してもよい。例えば、第1の訓練パイプライン204aが、Pythonを使用して、訓練アルゴリズムTensorFlowを実装してもよい一方で、第2の訓練パイプライン204bは、Java(登録商標)および/または同等物を使用して、Sparkで異なる訓練アルゴリズムを実装する。
【0087】
一実施形態では、論理機械学習層225は、訓練パイプライン204a-bが発生させる機械学習モデルを受信し、分析されている目的のための最良適合である機械学習モデルのうちのいずれかを決定するように構成される、モデル選択モジュール212を含む。最良適合機械学習モデルは、訓練データに関する参照結果に最も類似する結果を生成した機械学習モデル(例えば、最も正確な機械学習モデル)、最速で実行される機械学習モデル、最少量の構成を要求する機械学習モデル、および/または同等物であってもよい。
【0088】
一実施形態では、モデル選択モジュール212は、ハイパーパラメータ検索を実施し、MLモデルを発生させ、所与の目的のための最良適合である、発生された機械学習モデルのうちのいずれかを決定する。本明細書で使用されるように、ハイパーパラメータ検索、最適化、または同調は、学習アルゴリズムのために最適なハイパーパラメータのセットを選定する問題である。ある実施形態では、同一種類の機械学習モデルが、異なるデータパターンを一般化するために、異なる制約、加重、または学習率を使用することができる。これらの測定値は、ハイパーパラメータと呼ばれ得、モデルが機械学習問題を最適に解決し得るように、同調され得る。ハイパーパラメータ最適化は、所与の独立データ上の所定の損失関数を最小限にする、最適な機械学習モデルを生じさせる、ハイパーパラメータのセットを見出す。ある実施形態では、モデル選択モジュール212は、異なる機械学習モデルの異なる特徴を組み合わせ、単一の複合モデルを発生させる。一実施形態では、モデル選択モジュール212は、推論パイプライン206a-cへの伝搬のために、選択された機械学習モデルをポリシパイプライン202にプッシュする。種々の実施形態では、モデル選択モジュール212は、ML管理装置104の一部である、それに通信可能に結合される、動作可能に結合される、および/または同等物である。
【0089】
図2Cは、データセットのための機械学習モデルの好適性を決定するための論理機械学習層250のある実施形態を図示する、概略ブロック図である。一実施形態では、
図2Cの論理機械学習層250は、それぞれ、
図2Aおよび2Bに描写される、論理機械学習層200、225に実質的に類似する。さらなる実施形態では、
図2Cは、論理機械学習層250の連合学習実施形態を図示する。
【0090】
連合機械学習層において、一実施形態では、訓練パイプライン204a-cは、対応する推論パイプライン206a-cと同一の物理または仮想デバイス上に位置する。そのような実施形態では、訓練パイプライン204a-cは、異なる機械学習モデルを発生させ、機械学習モデルをモデル選択モジュール212に送信し、これは、上記に説明されるように、論理機械学習層250のための最良適合である機械学習モデルを決定する、もしくは異なる機械学習モデルを組み合わせる/マージする、および/または同等物である。選択された機械学習モデルは、立証、検証、または同等物のためにポリシパイプライン202にプッシュされ、これは、次いで、推論パイプライン206a-cに戻るようにそれをプッシュする。
【0091】
図3は、データセットのための機械学習モデルの好適性を決定するための装置300の一実施形態を図示する、概略ブロック図である。一実施形態では、装置300は、ML管理装置104の実施形態を含む。ML管理装置104は、一実施形態では、下記により詳細に説明される、一次訓練モジュール302、一次立証モジュール304、二次訓練モジュール306、二次立証モジュール308、分析モジュール310、およびアクションモジュール312のうちの1つ以上のものを含む。
【0092】
一実施形態では、一次訓練モジュール302は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するように構成される。そのような実施形態では、第1の機械学習アルゴリズムは、線形回帰、ロジスティック回帰、線形判別分析(「LDA」)、分類および回帰ツリー、ナイーブベイズ、K-最近傍、学習ベクトル量子化、サポートベクトルマシン、バギングならびにランダムフォレスト、ブースティング、および/または同等物等のいくつかの利用可能な機械学習アルゴリズムのうちのいずれか1つであってもよい。第1の機械学習アルゴリズムは、例えば、訓練データセットが、連続標識または分類標識を備えるかどうかに基づいて、選択されてもよい。第1の機械学習アルゴリズムは、ある実施形態では、種々の機械学習アルゴリズムのアンサンブルまたは組み合わせを備えてもよい。
【0093】
一実施形態では、一次訓練モジュール302は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練する。例えば、一次訓練モジュール302は、訓練データセットを受信し、読み取り、それにアクセスし、および/または同等物を行い、訓練データセットを訓練パイプライン204に提供して、機械学習モデルを訓練してもよい。そのような実施形態では、訓練データセットは、第1の機械学習モデルがデータから「学習」し、参照標識を含まない推論データセットに予測を実施することを可能にする、参照標識を含む。例えば、訓練データセットは、体重、身長、性別、品種等のイヌに関する種々のデータ点を含んでもよい。一次訓練モジュール302は、予測されている特徴に関する標識を含まない、推論データセットを使用して、イヌの体重、性別、品種、および/または同等物等のイヌの種々の特性を予測するために使用され得るように、イヌ訓練データセットを使用して、機械学習モデルを訓練してもよい。
【0094】
一実施形態では、一次立証モジュール304は、立証データセットを使用して、第1の機械学習モデルの正当性を立証するように構成される。立証データセットは、一実施形態では、第1の機械学習モデルが立証データセットを分析するときに、第1の機械学習モデルが発生させる予測が、予測の正確度を決定するために立証データセット内の参照標識に対して比較され得るように、種々の特徴に関する参照標識を含む、データセットを備える。
【0095】
いくつかの実施形態では、二次訓練モジュール306は、第2の機械学習アルゴリズムおよびエラーデータセットを使用して、第2の機械学習モデルを訓練するように構成される。エラーデータセットは、第1の機械学習モデルの立証の出力、例えば、立証データセット内の観察のうちの1つ以上のもの(例えば、それぞれ)に関して第1のMLモデルによって発生される予測を含んでもよい。エラーデータセットは、ある実施形態では、立証データセット上の第1の機械学習モデルの予測エラーを示す値(例えば、第1の機械学習モデルが立証データセットに関する標識を正確に予測した頻度を示す、率、スコア、または他の値、立証データセット内の観察のうちの1つ以上のもの(例えば、それぞれ)に関する参照出力値、第1のMLモデルによって発生される予測が立証データセット内の観察のうちの1つ以上のもの(例えば、それぞれ)に関する参照出力値に合致するかどうかを示す標識等)を含む。
【0096】
一実施形態では、エラーデータセットは、立証データセットに関して第1の機械学習モデルによって発生される予測が第1の機械学習モデルのための合格/不合格基準を満たすかどうかを示す、標識(用語「合格」もしくは「不合格」、1もしくは0値、および/または所定の閾値と比較すると合格/不合格ステータスを示す実数等)を含む。いくつかの実施形態では、エラーデータセットは、立証データセットの特徴値、エラーデータセット内の1つ以上の(例えば、全ての)サンプルの統計的シグネチャスコア、第1の機械学習モデルによって発生される予測値、第1の機械学習モデルの予測と関連付けられる信頼測定基準、および/または第1の機械学習モデルに特有の1つ以上のパラメータを含む。
【0097】
例えば、カテゴリデータを含む立証データセットは、歩行、起立、睡眠等のヒトの活動に対応する、6つのクラスを有してもよい。本データセットに関する特徴は、フィットネストラッカ、スマートフォン、または同等物等のスマートデバイスから収集される値であってもよい。一次訓練モジュール302は、一実施形態では、訓練データセットを使用して、これらの特徴および標識上で第1の機械学習モデルを訓練する。一次立証モジュール304は、いくつかの実施形態では、同一の特徴を含むが、異なるデータを含む、立証データセットを使用し、第1の機械学習モデルを使用して標識を予測する。一次立証モジュール304は、第1のMLモデルによって行われる予測を試験データの参照(「真の」)標識と比較し、エラー率、好適性スコア、加重、または他の値を計算してもよい。
【0098】
ある実施形態では、連続データ値を取り扱うために好適な回帰または他の機械学習アルゴリズムを使用して分析され得る、連続標識(例えば、実数)を含む、データの場合、一次立証モジュール304は、第1の機械学習モデルのための合格/不合格基準を決定してもよい(第1の機械学習モデルの予測が立証データセットの参照標識に合致しないときに、「不合格」が決定され得るため、本タスクは、多くの場合、分類標識を含むデータに関して自明であることに留意されたい)。
【0099】
回帰モデルまたは同等物の予測性能は、参照標識からの予測値の距離に基づいて査定されてもよい。本距離/エラーが小さいほど、第1の機械学習モデルの予測性能が、より正確になり得る。閾値が、合格/不合格基準を決定するように、本エラー値上で、またはエラーの正規化された測定値、例えば、参照標識に対するエラー値の比(「エラー率」)上で設定されてもよい。エラー測定基準が本閾値よりも低いとき、例えば、標識は、合格であり、そうでなければ、不合格である。これらは、第2の機械学習アルゴリズムが訓練のために使用する、エラーデータセットに関する標識を形成してもよい。本閾値の値は、データセット依存性であり得る。さらに、閾値パラメータは、カスタマイズ可能であり得る、例えば、ユーザによって設定されてもよい。一実施形態では、一次立証モジュール304は、データセットに適合されるデフォルト閾値を計算する。
【0100】
例えば、一次立証モジュール304は、回帰エラー特性(「REC」)曲線上に第1のMLモデルの予測に関するエラー測定基準の値をプロットしてもよい。曲線の「湾曲部分」は、REC曲線の二重微分を使用して決定され得る、閾値として選定されてもよい。その近傍が両方とも(二重微分REC曲線内で)より大きい点が、選定されてもよく、その対応するx軸値は、合格/不合格基準に関するデフォルト閾値になってもよい。
【0101】
一実施形態では、二次訓練モジュール306は、本明細書に説明されるように、第1のMLモデルのための第2の機械学習アルゴリズムおよびエラーデータセットを使用して、第2の機械学習モデルを訓練するように構成される。第2の機械学習モデルは、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように構成されてもよい。本明細書で使用されるように、好適性は、第1の機械学習モデルが推論データセットに関して発生させる予測の有効性、正確度、有効度、または同等物を説明する、好適性スコア(または「健全性スコア」)等の値によって表され得る。
【0102】
一実施形態では、第2の機械学習アルゴリズムは、第1の機械学習アルゴリズムと異なる。例えば、第1の機械学習アルゴリズムが、線形回帰アルゴリズムである場合、第2の機械学習アルゴリズムは、ロジスティック回帰アルゴリズムを備えてもよい。ある実施形態では、第1および第2の機械学習アルゴリズムは、同一の機械学習アルゴリズムである。推論データセットで予測を行うための第1の機械学習モデルの好適性を査定するために好適である、任意の第2の機械学習アルゴリズムが、使用されてもよい。
【0103】
一実施形態では、二次訓練モジュール306は、付加的データを含み、予測エラーデータを補完することによって、エラーデータセットを向上させる。例えば、二次訓練モジュール306は、立証データセット自体の特徴等の付加的特徴に関するデータ(例えば、二次訓練モジュール306は、立証データセット自体の利用可能な特徴の全てまたはサブセットを選択してもよい)、立証データセット内の1つ以上の(例えば、全ての)サンプルに関する統計的シグネチャスコア(例えば、限定ではないが、国際出願第PCT/US2019/035853号に説明される技法を使用して計算される統計的スコアを含む、データセットを統計的に説明するための統計的アルゴリズムを使用して計算される、統計的スコア)、第1の機械学習モデルからの予測値(例えば、第1の機械学習モデルを使用して推論データセットを分析することから出力される予測値)、第1の機械学習モデルの予測と関連付けられる信頼測定基準、第1の機械学習モデルに特有であるパラメータ、および/または同等物を含んでもよい。
【0104】
一実施形態では、二次立証モジュール308は、第1の機械学習モデルの好適性を予測するための第2の機械学習モデルの好適性を決定するように構成される。例えば、二次立証モジュール308は、第2のMLモデルによって発生される、誤検出予測、未検出予測、正検出予測、および正未検出予測の数または率を示すことによって、第2のMLモデルの性能を要約し得る、混同行列を使用して、第2の機械学習モデルを分析してもよい。一般に、混同行列(エラー行列としても公知である)が、機械学習モデルの性能の可視化を可能にする、具体的テーブルレイアウトで表され得る。例えば、混同行列は、特定のデータセット上の機械学習モデルに関する誤検出(FP)、未検出(FN)、正検出(TP)、および正未検出(TN)の数または率を報告する、2行および2列を伴うテーブルで表され得る。
【0105】
さらなる実施形態では、二次立証モジュール308は、訓練統計等の他の統計を分析し、第1の機械学習モデルの好適性(例えば、有効度)を正確に査定することの第2の機械学習モデルの好適性を決定する。他の統計は、信頼測定基準、正確度測定基準、精度測定基準、および/または同等物を含んでもよい。これらの統計の値は、第2の機械学習モデルが好適または不適切であることを統計的測定基準が示すかどうかを決定するように、閾値(例えば、事前決定された閾値)と比較されてもよい。例えば、二次立証モジュール308は、混同行列内の誤検出、未検出、正検出、および/または正未検出値が個別の閾値(例えば、事前決定された閾値)を満たすことを検証してもよい。当業者は、本開示を踏まえて、第2の機械学習モデルの好適性を査定するために使用され得る、種々の統計的測定値を認識するであろう。
【0106】
ある実施形態では、二次立証モジュール308は、推論データセットに関する第1の機械学習モデルの予測の好適性(例えば、性能または正確度)を予測するための第2の機械学習モデルのアンサンブル(例えば、2つ以上の機械学習モデルの組み合わせ)の好適性を決定する。二次訓練モジュール306は、一実施形態では、機械学習モデルの異なる組み合わせを含むアンサンブルを発生させ、最良適合である、または第1の機械学習モデルの予測性能を分析するための好適性閾値を満たす、アンサンブルを決定してもよい。そのような実施形態では、二次訓練モジュール306は、異なる訓練データ上で複数の異なる第2の機械学習モデルを訓練し、第2の機械学習モデルの種々のアンサンブルを発生させるように構成されてもよい。
【0107】
一実施形態では、第2の機械学習アルゴリズム/モデルは、第1の機械学習モデルが発生させる予測が、エラーデータとともに、第2の機械学習モデルの訓練の中への入力として使用され得るように、第1の機械学習モデルが推論データセットを分析した後に、第1の機械学習モデルの予測性能を分析する。ある実施形態では、第2の機械学習モデルが、すでに訓練されている場合、第1および第2の機械学習モデルは、推論データセットに基づいて実質的に同時に起動し、リアルタイムで、または実質的にリアルタイムで、第1の機械学習モデルの予測性能を決定してもよい。ある実施形態では、第2の機械学習モデルは、第1の予測モデルが値Vを発生させることに先立って、および/または第1の予測モデルによって発生される値Vを参照することなく、推論データセットのサンプルSに関して第1の予測モデルによって発生される値Vが、正確または不正確であるかどうかを予測してもよい。
【0108】
分析モジュール310は、一実施形態では、第2の機械学習モデルが発生させる予測に基づいて、第1の機械学習モデルが推論データセットに関して予測を発生させるために好適であるかどうかを決定するように構成される。例えば、分析モジュール310は、本明細書に説明される分析測定基準(例えば、種々の健全性スコア、エラー率、混同行列値)および/または同等物を分析し、好適性値を発生させ、好適性値が所定の閾値を満たすかどうかを決定してもよい。例えば、分析モジュール310は、種々の測定基準がそれぞれ、閾値を満たすかどうか、測定基準の割合が閾値を満たすかどうか、または種々の測定基準(例えば、平均)の計算された組み合わせが閾値を満たすかどうかを決定してもよい。該当する場合には、分析モジュール310は、第1の機械学習モデルが推論データセットに関して正確な予測を生成していることを決定してもよい。
【0109】
いくつかの実施形態では、分析測定基準は、予測信頼値、データ偏差値、A/B試験値、カナリア値、および/または同等物を含んでもよい。これに関連して、「カナリア値」は、第1のMLモデルによって分析される同一の推論データセットを分析するために好適であることが既知である(または好適であると見なされる)、第3のMLモデルによって発生される予測であり得る。第1のMLモデルの予測性能が、推論データセット上のカナリアMLモデルの予測性能よりも不良(例えば、有意に不良)である場合、本偏差は、第1のMLモデルが推論データセットを分析するために不適切であることを示唆し得る。これに関連して、「A/B試験値」は、第1のMLモデルによって置換されるべき候補である、第3のMLモデルによって発生される予測であり得る。第1のMLモデルの予測性能が、推論データセット上のカナリアMLモデルの予測性能よりも良好(例えば、有意に良好)である場合、本偏差は、第1のMLモデルが推論データセットを分析するために好適であることを示唆し得る。
下記の表1は、第1の機械学習モデルが推論データセットのための良好な適合であるかどうかを決定するように分析モジュール310が分析し得る、例示的出力データセットを例証する。
【0110】
【0111】
表1の一次アルゴリズムエラー列は、一実施形態では、所与のデータセットに関する分類の一次タスクを実施する際の第1の機械学習モデルの予測エラーを示す。例えば、表1内のデータを発生させるために使用されるデータセットは、歩行、起立等のヒトの活動に対応する、6つのクラスを有する。本データセットに関する特徴は、携帯電話から収集される値を含んでもよい。第1の機械学習アルゴリズムは、訓練データセットを使用して、これらの特徴および標識上で訓練し、第1の機械学習モデルを発生させる。後に、第1の機械学習モデルは、立証データセット内の特徴を使用して、標識を予測するために使用される。一次立証モジュール304は、第1の機械学習モデルによって行われる予測を立証データの参照(「真の」)標識と比較し、一次モデルエラー値を計算する。
【0112】
表1の二次モデル予測正確度列は、第2のMLモデルによって予測されるような第1の機械学習モデルの正確度を示す。一実施形態では、本システムは、第2のMLモデルによって予測されるような推論データセットに関する第1のMLモデルの正確度が、「一次モデルエラー」列内の値に少なくとも等しい、または少なくとも実質的に等しい場合に、第1の機械学習モデルが推論データセットのために好適であることを決定してもよい。本明細書で解説されるように、第2の機械学習アルゴリズムは、入力としてエラーデータセットの特徴(推論データセットの特徴、エラーデータ、および/または他の特徴を含み得る)を受信し、第1の機械学習モデルが推論データセットで正確な予測を行うために好適であるかどうかを予測する。一実施形態では、第2の機械学習モデルは、第1の機械学習アルゴリズムが正しい予測を行うことに成功しないことが予測される、サンプルを識別する。列「二次モデル予測正確度」のサブ列「一次予測を伴う」は、第2のMLモデルが一次モデルによって予測される値を入力として使用するときに、第2の機械学習モデルによって予測されるような第1の機械学習モデルの正確度を示す、値を含む。
【0113】
表1のML二乗正確度列内の値は、一実施形態では、第1の機械学習モデルの予測性能に関して正確な予測を行うことの第2の機械学習モデルの好適性を説明する。一実施形態では、二次立証モジュール308は、第2のMLモデルの好適性を査定し、ML二乗正確度列内の値を発生させる。時として、列「一次モデルエラー」および「二次モデル予測正確度」内の総統計は、合致し得るが、個々のサンプル毎の予測は、不正確であり得る。例えば、いくつかの0が、1として予測される場合があり、いくつかの1が、0として予測される場合がある(0は、不合格であり、1は、合格である)。ML二乗正確度測定基準は、第1の(一次)MLモデルの実際の性能および第2の(二次)MLモデルによって予測されるような第1の(一次)MLモデルの性能のサンプル毎の比較に基づき得、したがって、第1の機械学習モデルの予測性能を評価するために有用であり得る。「ML二乗正確度」列のサブ列「一次予測を伴う」は、第2のMLモデルが一次モデルによって予測される値を入力として使用するときに、第1の機械学習モデルの予測性能に関して正確な予測を行うことの第2の機械学習モデルの好適性を説明する、値を含む。
【0114】
一実施形態では、表1の混同行列の列は、二次立証モジュール308が第2の機械学習モデルに関して発生させる、混同行列値を含む。一実施形態では、ML二乗正確度および他の予測性能測定基準は、混同行列内の値に基づいて計算されることができる。「混同行列」列のサブ列「一次予測を伴う」は、第2のMLモデルが一次モデルによって予測される値を発生される入力として使用するときに、第1のMLモデルの性能を予測するための第2の機械学習モデルの好適性を示す、値を含む。
【0115】
一実施形態では、分析モジュール310は、表1に示される測定基準のうちの1つ以上のものに基づいて、好適性スコアを計算してもよく、好適性スコアを閾値と比較し、(1)第2の機械学習モデルが第1の機械学習モデルの予測性能の正当性を立証するための良好な適合であるかどうか、該当する場合、(2)第1の機械学習モデルが(標識がない場合に)推論データセットに関して正確な予測を発生させるための良好な適合であるかどうかを決定してもよい。このように、ML管理装置104は、訓練されたモデルの予測性能を決定するために数分/数時間/数週間/数日等待機する代わりに、生成されている間に訓練されたモデルが推論データセットに関して予測を発生させる有効性をリアルタイムで予測することができ、訓練されたモデルが、正確な予測を発生させていないことが決定される場合、ML管理装置104は、アクションモジュール312を参照して、下記に説明されるように、それに応じて反応することができる。
【0116】
一実施形態では、分析モジュール310は、(例えば、表1内の測定基準に加えて)付加的データを使用し、第1の機械学習モデルが推論データのために好適であるかどうかを決定してもよい。例えば、分析モジュール310は、(例えば、米国特許出願第16/001,904号(参照することによってその全体として本明細書に組み込まれる)に説明されるように)データ偏差情報を受信し、またはそれにアクセスし、推論データが第1の機械学習モデルを訓練するために使用される訓練データと異なるかどうか、およびその量を決定してもよい。データ偏差スコアが、所定の閾値を超えて逸脱しない場合には、(例えば、訓練データセットおよび推論データセットが十分に類似する、または補完することを示す、データ偏差スコアに照らして)第1の機械学習モデルが推論データセットのために予備好適と見なされたため、第2の機械学習モデルが、推論データ上の第1の機械学習モデルの予測性能を決定するために使用されてもよい。そうでなければ、第1の機械学習モデルが、おそらく、推論データセットに関して正確な予測を発生させないであろうように、推論データセットが訓練データセットに十分に類似しないことをデータ偏差スコアが示す場合、分析モジュール310は、下記に説明されるアクションのうちの1つ以上のものをトリガしてもよい。
【0117】
一実施形態では、アクションモジュール312は、事前決定された好適性閾値を満たさない、推論データセットを分析するための第1の機械学習モデルの予測された好適性に応答して、リアルタイムで動的に、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするように構成される。一実施形態では、アクションは、第1の機械学習アルゴリズムおよび異なる訓練データセットを使用して、第1の機械学習モデルを再訓練するステップを含む。例えば、アクションモジュール312は、第1の機械学習モデルを再選択するための異なる訓練データセットを選択する、またはその選択をトリガしてもよい。
【0118】
いくつかの実施形態では、アクションは、第1の機械学習モデルを、第1の機械学習アルゴリズムを使用して異なる訓練データ上で訓練される、異なる機械学習モデルに切り替えるステップを含む。例えば、アクションモジュール312は、より好適である、または推論データセットに類似し得る、異なる訓練データ上で訓練された機械学習モデルを選択する、またはその選択をトリガしてもよい。
【0119】
一実施形態では、アクションは、推論データセットを分析するための1つ以上の異なる機械学習アルゴリズムを推奨するステップを含む。例えば、アクションモジュール312は、特性または推論データセットに基づいて推論データセットのためにより好適であり得る、異なる機械学習アルゴリズムのための推奨を含む、通知、メッセージ、または同等物を発生させてもよい。
【0120】
種々の実施形態では、アクションは、推論データセットを分析するための第1の機械学習モデルの好適性を決定するステップと関連付けられる、1つ以上の閾値を更新するステップを含む。例えば、アクションモジュール312は、より柔軟または厳密であるように、好適性閾値、例えば、第1の機械学習モデルが推論データセットのために好適または不適切であることを、第2のMLモデルによって発生される値が示すかどうかを決定するために使用される閾値を更新する、またはその更新をトリガしてもよい。例えば、種々の第1の機械学習モデルが発生されたが、第1の機械学習モデルのうちのいずれも、所定の閾値を満たす好適性スコアを有していない場合には、閾値は、過剰に高く設定され得、アクションモジュール312は、第1の機械学習モデルのうちの少なくとも1つが好適と見なされるまで閾値を調節してもよい。より一般的には、第1のMLモデルの性能が実際に好適であるときに、第1のMLモデルが推論データセットのために不適切であることを、好適性閾値が一貫して示す場合、アクションモジュール312は、好適性閾値を減少させ得る。同様に、第1のMLモデルの性能が実際に不適切であるときに、第1のMLモデルが推論データセットのために好適であることを、好適性閾値が一貫して示す場合、アクションモジュール312は、好適性閾値を増加させ得る。
【0121】
図4は、データセットのための機械学習モデルの好適性を決定するための方法400の一実施形態を図示する、概略フローチャート図である。一実施形態では、方法400が、開始し、一次訓練モジュール302が、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練する402。いくつかの実施形態では、一次立証モジュール304が、立証データセットを使用して、第1の機械学習モデルの正当性を立証する404。第1の機械学習モデルの立証の出力(例えば、第1のMLモデルの正当性を立証するプロセスの間に発生されるデータ)は、エラーデータセット内に記憶されてもよい。
【0122】
いくつかの実施形態では、二次訓練モジュール306は、第2の機械学習モデルおよびエラーデータセットを使用して、第2の機械学習モデルを訓練する406。第2の機械学習モデルは、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように構成されてもよい。種々の実施形態では、分析モジュール310は、第1の機械学習モデルの予測された好適性が事前決定された好適性閾値を満たすかどうかを決定する408。該当する場合、方法400は、終了する。そうでなければ、アクションモジュール312は、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガし410、方法400は、終了する。
【0123】
図5は、推論データセットのための機械学習モデルの好適性を決定するための方法500の別の実施形態を図示する、概略フローチャート図である。一実施形態では、方法500が、開始し、一次訓練モジュール302が、第1の機械学習アルゴリズムおよび訓練データセット503を使用して、第1の機械学習モデルを訓練する502。いくつかの実施形態では、一次立証モジュール304が、立証データセット505aを使用して、第1の機械学習モデルの正当性を立証する504。第1の機械学習モデルの立証の出力505bは、エラーデータセット内に記憶されてもよい。
【0124】
いくつかの実施形態では、一次立証モジュール304が、第1の機械学習モデルが有効モデルではないことを決定する506場合には、一次訓練モジュール302は、異なる訓練データセット503を使用して、機械学習モデルを訓練してもよい502。そうでなければ、第1の機械学習モデルが、推論データセット507aを分析し508、推論データセットに関して1つ以上の予測507bを発生させるために使用される。ある実施形態では、第1の機械学習モデルを訓練するために使用される訓練データセット503、立証データセット505a、エラーデータセット505b、推論データセット507a、発生された1つ以上の予測507b、および/または他の統計的データ509(例えば、信頼値、データ偏差値、AB試験値、カナリア値、他の健全性スコア、ならびに/もしくは同等物)は、第2の機械学習モデルを訓練するために使用される、向上されたエラーデータセット511を発生させるように組み合わせられてもよい。
【0125】
一実施形態では、二次訓練モジュール306は、第2の機械学習アルゴリズムおよび向上されたエラーデータセット511の少なくとも一部を使用して、第2の機械学習モデルを訓練する510。第2の機械学習モデルは、推論データセットを分析するための第1の機械学習モデルの好適性を予測するように構成されてもよい。一実施形態では、二次立証モジュール308は、第2の機械学習モデルが推論データセットに関して第1の機械学習モデルの予測性能を査定するために好適であるかどうかを決定する512。該当しない場合、方法500は、終了する。
【0126】
そうでなければ、分析モジュール310は、第1の機械学習モデルの予測された好適性が事前決定された好適性閾値を満たすかどうかを決定する514。該当する場合、方法500は、終了する。そうでなければ、アクションモジュール312は、第1または第2の機械学習モデルと関連付けられる1つ以上の是正アクションをトリガする。例えば、アクションモジュール312は、異なる訓練データを用いて第1の機械学習モデルを再訓練するステップ516をトリガしてもよく、第1の機械学習モデルを、異なる訓練データを使用して訓練される異なる機械学習モデルに切り替えるステップ518をトリガしてもよく、推論データセットを分析するための異なる機械学習アルゴリズムを推奨してもよく520、第2のMLモデルと関連付けられる好適性閾値を更新してもよく522、および/または同等物を行なってもよく、方法500は、終了する。
【0127】
第2の機械学習モデルを訓練し、推論データセットを分析するための第1のMLモデルの好適性を予測するために使用される、エラーデータセット(または向上されたエラーデータセット)のいくつかの実施形態が、説明された。いくつかの実施形態では、エラーデータセット(または向上されたエラーデータセット)は、第1のMLモデルの立証の間に発生される出力、第1のMLモデルが立証データセットに関して正確な予測を発生させる頻度を示す、率、スコア、または他の値、第1のMLモデルが立証データセット内の1つ以上の(例えば、全ての)サンプルに関して正確または不正確な予測を発生させたかどうかを示す標識、そのようなサンプルの1つ以上の(例えば、全ての)特徴値を含む、立証データセットのサンプル、立証データセットの1つ以上の(例えば、全ての)サンプルの統計的シグネチャ、立証データセットの1つ以上の(例えば、全ての)対応するサンプルに関して第1のMLモデルによって発生される予測値、第1のMLモデルによって発生される予測値と関連付けられる信頼測定基準、第1のMLモデルと関連付けられるパラメータ値、第1のMLモデルを訓練するために使用される訓練データセット、および/またはデータ偏差値、A/B試験値、カナリア値、他の健全性スコア等を含む。
【0128】
是正アクションのいくつかの実施例が、説明された。いくつかの実施形態では、好適な是正アクションは、第1のMLモデルから「既知の良好な」モデル(例えば、最後の既知の良好なモデル)に戻すステップ、第1のMLモデルから前のモデルに戻すステップ、第1のMLモデルを最近承認されたMLモデルと置換するステップ、および/または予測パイプラインを動作停止させるステップを含んでもよい。
【0129】
第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するための手段は、種々の実施形態では、ML管理装置104、一次訓練モジュール302、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含んでもよい。他の実施形態は、第1の機械学習アルゴリズムおよび訓練データセットを使用して、第1の機械学習モデルを訓練するための類似または同等手段を含んでもよい。
【0130】
立証データセットを使用して、第1の機械学習モデルの正当性を立証するための手段は、種々の実施形態では、ML管理装置104、一次立証モジュール304、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含んでもよい。他の実施形態は、立証データセットを使用して、第1の機械学習モデルの正当性を立証するための類似または同等手段を含んでもよい。
【0131】
第2の機械学習モデルおよびエラーデータセットを使用して、第2の機械学習モデルを訓練するための手段は、種々の実施形態では、ML管理装置104、二次訓練モジュール306、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含む。他の実施形態は、第2の機械学習モデルおよびエラーデータセットを使用して、第2の機械学習モデルを訓練するための類似または同等手段を含んでもよい。
【0132】
第2の機械学習モデルの正当性を立証するための手段は、種々の実施形態では、ML管理装置104、二次立証モジュール308、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含んでもよい。他の実施形態は、第2の機械学習モデルの正当性を立証するための類似または同等手段を含んでもよい。
【0133】
第2の機械学習モデルが発生させる予測に基づいて、第1の機械学習モデルが推論データセットに関して予測を発生させるために好適であるかどうかを決定するための手段は、種々の実施形態では、ML管理装置104、分析モジュール310、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含んでもよい。他の実施形態は、第1の機械学習モデルが推論データセットに関して予測を発生させるために好適であるかどうかを決定するための類似または同等手段を含んでもよい。
【0134】
第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするための手段は、種々の実施形態では、ML管理装置104、アクションモジュール312、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、FPGA、ASIC、他の論理ハードウェア、および/またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの1つ以上のものを含んでもよい。他の実施形態は、第1または第2の機械学習モデルと関連付けられる是正アクションをトリガするための類似または同等手段を含んでもよい。
【0135】
本発明は、その精神または本質的特性から逸脱することなく、他の具体的形態で具現化され得る。説明される実施形態は、あらゆる点に関して、制限的ではなく、例証的のみと見なされるものである。本発明の範囲は、したがって、前述の説明によるのではなく、添付される請求項によって示される。請求項の均等物の意味および範囲内で生じる全ての変更は、それらの範囲内に包含されるものである。
(用語)
【0136】
本明細書で使用される表現法および用語は、説明の目的のためであり、限定的と見なされるべきではない。
【0137】
本明細書および請求項で使用されるような用語「約」、語句「~にほぼ等しい」、および他の類似語句(例えば、「Xは、約Yの値を有する」または「Xは、Yにほぼ等しい」)は、1つの値(X)が別の値(Y)の事前決定された範囲内であることを意味すると理解されるべきである。事前決定された範囲は、別様に示されない限り、±20%、10%、5%、3%、1%、0.1%、もしくは0.1%未満であり得る。
【0138】
本明細書および請求項で使用されるような不定冠詞「a」および「an」は、明確に反対に示されない限り、「少なくとも1つ」を意味すると理解されるべきである。本明細書および請求項で使用されるような語句「および/または」は、そのように接続される要素、すなわち、ある場合には接続的に存在し、他の場合には離接的に存在する要素の「いずれか一方または両方」を意味すると理解されるべきである。「および/または」を用いて列挙される複数の要素は、同一の様式で、そのように接続される要素のうちの「1つ以上のもの」と解釈されるべきである。他の要素が、随意に、具体的に識別されるそれらの要素に関連するか、または関連しないかどうかにかかわらず、「および/または」の節によって具体的に識別される要素以外に存在し得る。したがって、非限定的実施例として、「Aおよび/またはB」の言及は、「~を備える」等の非制約的言語と併せて使用されるときに、一実施形態では、Aのみ(随意に、B以外の要素を含む)、別の実施形態では、Bのみ(随意に、A以外の要素を含む)、さらに別の実施形態では、AおよびBの両方(随意に、他の要素を含む)を指す等となり得る。
【0139】
本明細書および請求項で使用されるように、「または」は、上記に定義されるような「および/または」と同一の意味を有すると理解されるべきである。例えば、リスト内の項目を分離するとき、「または」もしくは「および/または」は、包括的、すなわち、少なくとも1つの包含であるが、いくつかの要素または要素のリストのうちの1つを上回るもの、随意に、付加的な列挙されていない項目も含むものとして解釈されるものとする。「~のうちの1つのみ」または「~のうちの正確に1つ」、もしくは請求項で使用されるときに「~から成る」等の明確に反対に示される用語のみが、いくつかの要素または要素のリストのうちの正確に1つの要素の包含を指すであろう。一般に、使用されるような用語「または」は、「~のいずれか」、「~のうちの1つ」、「~のうちの1つのみ」、または「~のうちの正確に1つ」等の排他性の用語が先行するときに、排他的代替物(すなわち、「一方または他方であるが両方ではない」)を示すものとしてのみ解釈されるものとする。「本質的に~から成る」は、請求項で使用されるときに、特許法の分野で使用されるようなその通常の意味を有するものとする。
【0140】
本明細書および請求項で使用されるように、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つを指す等となり得る。
【0141】
用語「~を含む」、「~を備える」、「~を有する」、「~を含有する」、「~を伴う」、およびそれらの変形例は、別様に明示的に規定されない限り、「限定ではないが、~を含む」を意味する。項目の列挙された一覧は、項目のうちのいずれかまたは全てが、別様に明示的に規定されない限り、相互排他的および/または相互包括的であることを含意しな い。
【0142】
請求項の要素を修飾するための請求項内の「第1の」、「第2の」、「第3の」等の序数用語の使用は、それ自体では、別の要素と比べた1つの請求項の要素のいずれの優先順位、優位性、または順序、もしくは方法の行為が実施される時間的順序も含意しない。序数用語は、ある名称を有する1つの請求項の要素を、(序数用語の使用のためであるが)同一の名称を有する別の要素と区別し、請求項の要素を区別するために、単に標識として使用される。