(57)【要約】装置、システム、プログラム製品、および方法が、データセット２０８、２１０のための機械学習モデルの好適性を検出するために開示される。装置は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセット２１０のための第１の統計データシグネチャを計算するように構成される、訓練評価モジュール３０２を含む。装置は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセット２０８のための第２の統計データシグネチャを計算するように構成される、推論評価モジュール３０４を含む。
2021527288.tif 000002
【特許請求の範囲】
【請求項１】
装置であって、
訓練評価モジュールであって、前記訓練評価モジュールは、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するように構成され、前記訓練データセットは、機械学習モデルを発生させるために使用される、訓練評価モジュールと、
推論評価モジュールであって、前記推論評価モジュールは、前記１つ以上の所定の統計アルゴリズムを使用して、前記機械学習システムの推論データセットのための第２の統計データシグネチャを計算するように構成され、前記推論データセットは、前記機械学習モデルを使用して分析される、推論評価モジュールと、
スコアモジュールであって、前記スコアモジュールは、前記第１および第２の統計データシグネチャの関数として、前記推論データセットへの前記訓練データセットの好適性を説明する好適性スコアを計算するように構成される、スコアモジュールと、
アクションモジュールであって、前記アクションモジュールは、不適切性閾値を満たす前記好適性スコアに応答して、前記機械学習システムに関連するアクションを実施するように構成される、アクションモジュールと
を備える、装置。
【請求項２】
前記訓練データセットおよび前記推論データセットのうちの１つ以上のものは、標識を含まない特徴データセットを備える、請求項１に記載の装置。
【請求項３】
前記スコアモジュールは、前記訓練データセットおよび前記推論データセットに基づいて、特徴あたりの基準で前記好適性スコアを計算する、請求項１に記載の装置。
【請求項４】
前記訓練評価モジュールはさらに、
前記訓練データセットの特徴に関する値を異なる群に割り当てることによって、前記訓練データセットの確率分布を決定することと、
前記訓練データセットの群毎の確率を決定することであって、前記確率は、前記訓練データセット内にある値の尤度を示す、ことと、
前記群に関する前記確率の関数として、前記訓練データセットに関する平均訓練確率スコアを計算することと
を行うように構成され、
前記推論評価モジュールはさらに、
前記訓練データセットの特徴に関する値を、前記訓練データセットの群に対応する異なる群に割り当てることによって、前記推論データセットの確率分布を決定することと、
前記推論データセットの群毎の確率を決定することであって、前記確率は、前記訓練データセット内にある前記推論データセットの値の尤度を示す、ことと、
前記推論データセットの確率分布に基づいて、平均推論確率スコアを計算することと
を行うように構成され、
前記スコアモジュールはさらに、前記平均訓練確率スコアの関数として、前記平均推論確率スコアを正規化することによって、前記好適性スコアを計算するように構成される、請求項３に記載の装置。
【請求項５】
前記スコアモジュールは、前記訓練データセットおよび前記推論データセットの複数の特徴を横断して前記好適性スコアを計算する、請求項１に記載の装置。
【請求項６】
前記訓練および推論データセットは、連続特徴データを備え、
前記訓練評価モジュールはさらに、
前記訓練データセットの関数として、ガウス混合モデルを発生させることと、
前記発生されたガウス混合モデルに基づいて、前記訓練データセットの尤度分布を決定することと、
前記訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算することと
を行うように構成され、
前記推論評価モジュールはさらに、
前記発生されたガウス混合モデルに基づいて、前記推論データセットの尤度分布を決定することと、
前記推論データセットの尤度分布に基づいて、平均推論確率スコアを計算することと
を行うように構成され、
前記スコアモジュールはさらに、前記平均訓練尤度スコアの関数として、前記平均推論尤度スコアを正規化することによって、前記好適性スコアを計算するように構成される、請求項５に記載の装置。
【請求項７】
前記訓練および推論データセットは、カテゴリおよびバイナリ特徴データのうちの１つ以上のものを備え、
前記訓練評価モジュールはさらに、
前記訓練データセットの関数として、ツリーの非ランダムフォレストを発生させることと、
前記発生されたツリーの非ランダムフォレストに基づいて、前記訓練データセットの確率分布を決定することと、
前記訓練データセットの確率分布に基づいて、平均訓練確率スコアを計算することと
を行うように構成され、
前記推論評価モジュールはさらに、
前記訓練データに基づいて発生される前記ツリーの非ランダムフォレストの関数として、前記推論データセットの確率分布を決定することと、
前記推論データセットの確率分布に基づいて、平均推論確率スコアを計算することと
を行うように構成され、
前記スコアモジュールはさらに、前記平均訓練確率スコアの関数として、前記平均推論確率スコアを正規化することによって、前記好適性スコアを計算するように構成される、請求項５に記載の装置。
【請求項８】
前記推論データセットは、複数の学習層を備える深層学習機械学習パイプラインを使用して分析され、前記推論データセットは、最終学習層の前に生じる前記複数の学習層のうちの学習層から選択される、請求項１に記載の装置。
【請求項９】
前記推論データセットは、前記複数の学習層のうちの最後から２番目の学習層から選択される、請求項８に記載の装置。
【請求項１０】
前記アクションモジュールが実施する前記アクションは、前記好適性スコアに基づいて、前記機械学習モデルを、前記推論データセットのためにより好適である異なる機械学習モデルに変更することを含む、請求項１に記載の装置。
【請求項１１】
前記アクションモジュールが実施する前記アクションは、前記好適性スコアが好適性閾値を満たすまで、異なる訓練データセットに前記機械学習モデルを再訓練することを含む、請求項１に記載の装置。
【請求項１２】
前記アクションモジュールが実施する前記アクションは、前記訓練データセットが前記推論データセットのために不適切であることを示すアラート、メッセージ、および通知のうちの１つ以上のものを送信することを含む、請求項１に記載の装置。
【請求項１３】
前記アクションモジュールが実施する前記アクションは、前記推論データセットの特徴に関する１つ以上の標識を発生させることを含む、請求項１に記載の装置。
【請求項１４】
前記機械学習システムは、複数の相互接続された訓練および推論パイプラインを備え、前記好適性スコアは、特定のパイプラインにおける前記推論データセットへの前記訓練セットデータの好適性を決定するように、機械学習処理の間にリアルタイムで継続的に計算される、請求項１に記載の装置。
【請求項１５】
方法であって、
１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算することであって、前記訓練データセットは、機械学習モデルを発生させるために使用される、ことと、
前記１つ以上の所定の統計アルゴリズムを使用して、前記機械学習システムの推論データセットのための第２の統計データシグネチャを計算することであって、前記推論データセットは、前記機械学習モデルを使用して分析される、ことと、
前記第１および第２の統計データシグネチャの関数として、前記推論データセットへの前記訓練データセットの好適性を説明する好適性スコアを計算することと、
不適切性閾値を満たす前記好適性スコアに応答して、前記機械学習システムに関連するアクションを実施することと
を含む、方法。
【請求項１６】
前記訓練データセットおよび前記推論データセットのうちの１つ以上のものは、標識を含まない特徴データセットを備える、請求項１５に記載の方法。
【請求項１７】
前記訓練データセットの特徴に関する値を異なる群に割り当てることによって、前記訓練データセットの確率分布を決定することと、
前記訓練データセットの群毎の確率を決定することであって、前記確率は、前記訓練データセット内にある値の尤度を示す、ことと、
前記群に関する前記確率の関数として、前記訓練データセットに関する平均訓練確率スコアを計算することと、
前記訓練データセットの特徴に関する値を、前記訓練データセットの群に対応する異なる群に割り当てることによって、前記推論データセットの確率分布を決定することと、
前記推論データセットの群毎の確率を決定することであって、前記確率は、前記訓練データセット内にある前記推論データセットの値の尤度を示す、ことと、
前記推論データセットの確率分布に基づいて、平均推論確率スコアを計算することと、
前記平均訓練確率スコアの関数として、前記平均推論確率スコアを正規化することによって、前記好適性スコアを計算することと
によって、特徴あたりの基準で前記好適性スコアを計算することをさらに含む、請求項１５に記載の方法。
【請求項１８】
前記訓練データセットの関数として、ガウス混合モデルを発生させることと、
前記発生されたガウス混合モデルに基づいて、前記訓練データセットの尤度分布を決定することと、
前記訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算することと、
前記発生されたガウス混合モデルに基づいて、前記推論データセットの尤度分布を決定することと、
前記推論データセットの尤度分布に基づいて、平均推論尤度スコアを計算することと、
前記平均訓練尤度スコアの関数として、前記平均推論尤度スコアを正規化することによって、前記好適性スコアを計算することと
によって、前記訓練データセットおよび前記推論データセットの連続特徴データの複数の特徴を横断して、前記好適性スコアを計算することをさらに含む、請求項１５に記載の方法。
【請求項１９】
前記訓練データセットの関数として、ツリーの非ランダムフォレストを発生させることと、
前記発生されたツリーの非ランダムフォレストに基づいて、前記訓練データセットの確率分布を決定することと、
前記訓練データセットの確率分布に基づいて、平均訓練確率スコアを計算することと、
前記訓練データセットに基づいて発生される前記ツリーの非ランダムフォレストの関数として、前記推論データセットの確率分布を決定することと、
前記推論データセットの確率分布に基づいて、平均推論確率スコアを計算することと、
前記平均訓練確率スコアの関数として、前記平均推論確率スコアを正規化することによって、前記好適性スコアを計算することと
によって、前記訓練データセットおよび前記推論データセットのカテゴリおよびバイナリ特徴データのうちの１つ以上のものの複数の特徴を横断して、前記好適性スコアを計算することをさらに含む、請求項１５に記載の方法。
【請求項２０】
装置であって、
１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するための手段であって、前記訓練データセットは、機械学習モデルを発生させるために使用される、手段と、
前記１つ以上の所定の統計アルゴリズムを使用して、前記機械学習システムの推論データセットのための第２の統計データシグネチャを計算するための手段であって、前記推論データセットは、前記機械学習モデルを使用して分析される、手段と、
前記第１および第２の統計データシグネチャの関数として、前記推論データセットへの前記訓練データセットの好適性を説明する好適性スコアを計算するための手段と、
不適切性閾値を満たす前記好適性スコアに応答して、前記機械学習システムに関連するアクションを実施するための手段と
を備える、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、参照することによってその全体として本明細書に組み込まれる、２０１８年６月６日に出願され、「Ｄｅｔｅｃｔｉｎｇ  ｓｕｉｔａｂｉｌｉｔｙ  ｏｆ  ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ  ｍｏｄｅｌ  ｆｏｒ  ｄａｔａｓｅｔｓ」と題された、米国特許出願第１６／００１，９０４号（代理人整理番号ＤＲＢ−０１１）の優先権および利益を主張する。
【０００２】
本開示は、概して、機械学習に関し、より具体的には、推論データセットに関して、訓練データセットを使用するために訓練される、機械学習モデルの好適性を監視することに関する。
【背景技術】
【０００３】
機械学習は、広範囲のユースケースおよび業界に統合されている。いくつかの他のタイプの用途と異なり、機械学習用途（深層学習および先進分析論を含む）は、団結して動作し、正確で関連性がある結果を配信する、複数の独立起動コンポーネントを有することができる。本複雑性は、機械学習システムの全ての相互依存側面を管理または監視することを困難にし得る。
【発明の概要】
【課題を解決するための手段】
【０００４】
装置、システム、プログラム製品、および方法が、データセットのための機械学習モデルの好適性を検出するために開示される。
【０００５】
本開示のある側面によると、装置は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するように構成される、訓練評価モジュールを含んでもよい。訓練データセットは、機械学習モデルを発生させるために使用されてもよい。装置は、ある実施形態では、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算するように構成される、推論評価モジュールを含む。推論データセットは、機械学習モデルを使用して分析されてもよい。装置は、いくつかの実施形態では、第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算するように構成される、スコアモジュールを含む。一実施形態では、装置は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施するように構成される、アクションモジュールを含む。
【０００６】
本側面の他の実施形態は、それぞれ、装置のアクションを実施するように構成される、１つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、方法、およびコンピュータプログラムを含む。１つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせを有することにより、特定のアクションを実施するように構成されることができる。１つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【０００７】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの１つ以上のものを含むことができる。いくつかの実施形態では、訓練データセットおよび推論データセットのうちの１つ以上のものは、標識を含まない特徴データセットを含む。いくつかの実施形態では、スコアモジュールは、訓練データセットおよび推論データセットに基づいて、特徴あたりの基準で好適性スコアを計算する。
【０００８】
いくつかの実施形態では、訓練評価モジュールはさらに、訓練データセットの特徴に関する値を異なる群に割り当てることによって、訓練データセットの確率分布を決定し、訓練データセットの群毎の確率であって、訓練データセット内にある値の尤度を示す、確率を決定し、群に関する確率の関数として、訓練データセットに関する平均訓練確率スコアを計算するように構成される。いくつかの実施形態では、推論評価モジュールはさらに、訓練データセットの特徴に関する値を、訓練データセットの群に対応する異なる群に割り当てることによって、推論データセットの確率分布を決定し、推論データセットの群毎の確率であって、訓練データセット内にある推論データセットの値の尤度を示す、確率を決定し、推論データセットの確率分布に基づいて、平均推論確率スコアを計算するように構成される。いくつかの実施形態では、スコアモジュールはさらに、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算するように構成される。
【０００９】
いくつかの実施形態では、スコアモジュールは、訓練データセットおよび推論データセットの複数の特徴を横断して好適性スコアを計算する。いくつかの実施形態では、訓練および推論データセットは、連続特徴データを含み、訓練評価モジュールはさらに、訓練データセットの関数として、ガウス混合モデルを発生させ、発生されたガウス混合モデルに基づいて、訓練データセットの尤度分布を決定し、訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算するように構成される。いくつかの実施形態では、推論評価モジュールはさらに、発生されたガウス混合モデルに基づいて、推論データセットの尤度分布を決定し、推論データセットの尤度分布に基づいて、平均推論確率スコアを計算するように構成される。いくつかの実施形態では、スコアモジュールはさらに、平均訓練尤度スコアの関数として、平均推論尤度スコアを正規化することによって、好適性スコアを計算するように構成される。
【００１０】
いくつかの実施形態では、訓練および推論データセットは、カテゴリおよびバイナリ特徴データのうちの１つ以上のものを含み、訓練評価モジュールはさらに、訓練データセットの関数として、ツリーの非ランダムフォレストを発生させ、発生されたツリーの非ランダムフォレストに基づいて、訓練データセットの確率分布を決定し、訓練データセットの確率分布に基づいて、平均訓練確率スコアを計算するように構成される。いくつかの実施形態では、推論評価モジュールはさらに、訓練データに基づいて発生されるツリーの非ランダムフォレストの関数として、推論データセットの確率分布を決定し、推論データセットの確率分布に基づいて、平均推論確率スコアを計算するように構成される。いくつかの実施形態では、スコアモジュールはさらに、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算するように構成される。
【００１１】
いくつかの実施形態では、推論データセットは、複数の学習層を含む、深層学習機械学習パイプラインを使用して分析され、推論データセットは、最終学習層の前に生じる複数の学習層のうちの学習層から選択される。いくつかの実施形態では、推論データセットは、複数の学習層のうちの最後から２番目の学習層から選択される。いくつかの実施形態では、アクションモジュールが実施するアクションは、好適性スコアに基づいて、機械学習モデルを、推論データセットのためにより好適である、異なる機械学習モデルに変更するステップを含む。いくつかの実施形態では、アクションモジュールが実施するアクションは、好適性スコアが好適性閾値を満たすまで、異なる訓練データセットに機械学習モデルを再訓練するステップを含む。いくつかの実施形態では、アクションモジュールが実施するアクションは、訓練データセットが推論データセットのために不適切であることを示すアラート、メッセージ、および通知のうちの１つ以上のものを送信するステップを含む。いくつかの実施形態では、アクションモジュールが実施するアクションは、推論データセットの特徴に関する１つ以上の標識を発生させるステップを含む。いくつかの実施形態では、機械学習システムは、複数の相互接続された訓練および推論パイプラインを含み、好適性スコアは、特定のパイプラインにおける推論データセットへの訓練セットデータの好適性を決定するように、機械学習処理の間にリアルタイムで継続的に計算される。
【００１２】
本開示のある側面によると、データセットのための機械学習モデルの好適性を検出するための方法は、一実施形態では、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するステップを含む。訓練データセットは、機械学習モデルを発生させるために使用されてもよい。方法は、ある実施形態では、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算するステップを含む。推論データセットは、機械学習モデルを使用して分析されてもよい。方法は、いくつかの実施形態では、第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算するステップを含む。一実施形態では、方法は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施するステップを含む。
【００１３】
本側面の他の実施形態は、それぞれ、方法のアクションを実施するように構成される、１つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、装置、およびコンピュータプログラムを含む。１つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせを有することにより、特定のアクションを実施するように構成されることができる。１つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【００１４】
前述および他の実施形態はそれぞれ、随意に、単独で、または組み合わせて、以下の特徴のうちの１つ以上のものを含むことができる。いくつかの実施形態では、訓練データセットおよび推論データセットのうちの１つ以上のものは、標識を含まない特徴データセットを含む。いくつかの実施形態では、方法のアクションはさらに、訓練データセットの特徴に関する値を異なる群に割り当てることによって、訓練データセットの確率分布を決定するステップと、訓練データセットの群毎の確率であって、訓練データセット内にある値の尤度を示す、確率を決定するステップと、群に関する確率の関数として、訓練データセットに関する平均訓練確率スコアを計算するステップと、訓練データセットの特徴に関する値を、訓練データセットの群に対応する異なる群に割り当てることによって、推論データセットの確率分布を決定するステップと、推論データセットの群毎の確率であって、訓練データセット内にある推論データセットの値の尤度を示す、確率を決定するステップと、推論データセットの確率分布に基づいて、平均推論確率スコアを計算するステップと、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算するステップとによって、特徴あたりの基準で好適性スコアを計算するステップを含む。
【００１５】
いくつかの実施形態では、方法のアクションはさらに、訓練データセットの関数として、ガウス混合モデルを発生させるステップと、発生されたガウス混合モデルに基づいて、訓練データセットの尤度分布を決定するステップと、訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算するステップと、発生されたガウス混合モデルに基づいて、推論データセットの尤度分布を決定するステップと、推論データセットの尤度分布に基づいて、平均推論尤度スコアを計算するステップと、平均訓練尤度スコアの関数として、平均推論尤度スコアを正規化することによって、好適性スコアを計算するステップとによって、訓練データセットおよび推論データセットの連続特徴データの複数の特徴を横断して、好適性スコアを計算するステップを含む。
【００１６】
いくつかの実施形態では、方法のアクションはさらに、訓練データセットの関数として、ツリーの非ランダムフォレストを発生させるステップと、発生されたツリーの非ランダムフォレストに基づいて、訓練データセットの確率分布を決定するステップと、訓練データセットの確率分布に基づいて、平均訓練確率スコアを計算するステップと、訓練データセットに基づいて発生されるツリーの非ランダムフォレストの関数として、推論データセットの確率分布を決定するステップと、推論データセットの確率分布に基づいて、平均推論確率スコアを計算するステップと、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算するステップとによって、訓練データセットおよび推論データセットのカテゴリおよびバイナリ特徴データのうちの１つ以上のものの複数の特徴を横断して、好適性スコアを計算するステップを含む。
【００１７】
本開示の別の側面によると、データセットのための機械学習モデルの好適性を検出するための装置は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するための手段を含んでもよい。訓練データセットは、機械学習モデルを発生させるために使用されてもよい。装置は、ある実施形態では、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算するための手段を含む。推論データセットは、機械学習モデルを使用して分析されてもよい。装置は、いくつかの実施形態では、第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算するための手段を含む。一実施形態では、装置は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施するための手段を含む。
【００１８】
本側面の他の実施形態は、それぞれ、装置のアクションを実施するように構成される、１つ以上のコンピュータ記憶デバイス上に記録される、対応するコンピュータシステム、方法、およびコンピュータプログラムを含む。１つ以上のコンピュータのシステムは、動作時に、システムにアクションを実施させる、システム上にインストールされるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせを有することにより、特定のアクションを実施するように構成されることができる。１つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実施させる命令を含むことにより、特定のアクションを実施するように構成されることができる。
【００１９】
前述の概要は、読者が本開示を理解することを支援することを意図しており、いかようにも請求項のうちのいずれの範囲も限定しない。
【図面の簡単な説明】
【００２０】
本発明の利点が容易に理解されるであろうために、いくつかの実施形態のより具体的な説明が、添付図面に図示される具体的実施形態を参照することによって与えられるであろう。これらの図面が、本発明のいくつかの実施形態のみを描写し、したがって、その範囲の限定と見なされないことを理解した上で、いくつかの実施形態が、付随する図面の使用を通して、付加的特異性および詳細を伴って説明および解説されるであろう。
【００２１】
【図１】図１は、データセットのための機械学習モデルの好適性を検出するためのシステムの一実施形態を図示する、概略ブロック図である。
【図２Ａ】図２Ａは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層の一実施形態を図示する、概略ブロック図である。
【図２Ｂ】図２Ｂは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層の別の実施形態を図示する、概略ブロック図である。
【図２Ｃ】図２Ｃは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層のある実施形態を図示する、概略ブロック図である。
【図３Ａ】図３Ａは、データセットのための機械学習モデルの好適性を検出するための装置の一実施形態を図示する、概略ブロック図である。
【図３Ｂ】図３Ｂは、ツリーのフォレストの実施例である。
【図４】図４は、データセットのための機械学習モデルの好適性を検出するための方法の一実施形態を図示する、概略フローチャート図である。
【図５】図５は、データセットのための機械学習モデルの好適性を検出するための方法の別の実施形態を図示する、概略フローチャート図である。
【図６】図６は、データセットのための機械学習モデルの好適性を検出するための方法の別の実施形態を図示する、概略フローチャート図である。
【図７】図７は、データセットのための機械学習モデルの好適性を検出するための方法の別の実施形態を図示する、概略フローチャート図である。
【発明を実施するための形態】
【００２２】
「一実施形態」、「ある実施形態」、または類似言語の本明細書の全体を通した言及は、実施形態に関連して説明される特定の特徴、構造、または特性が、少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書の全体を通した、語句「一実施形態では」、「ある実施形態では」、および類似言語の表出は、全て同一の実施形態を指し得るが、必ずしもそうではなく、別様に明示的に規定されない限り、「１つ以上のが全てではない実施形態」を意味する。用語「〜を含む」、「〜を備える」、「〜を有する」、およびそれらの変形例は、別様に明示的に規定されない限り、「限定ではないが、〜を含む」を意味する。項目の列挙された一覧は、項目のうちのいずれかまたは全てが、別様に明示的に規定されない限り、相互排他的および／または相互包括的であることを含意しない。用語「ａ」、「ａｎ」、および「ｔｈｅ」はまた、別様に明示的に規定されない限り、「１つ以上の」を指す。
【００２３】
本明細書および請求項で使用されるような語句「および／または」は、そのように接続される要素、すなわち、ある場合には接続的に存在し、他の場合には離接的に存在する要素の「いずれか一方または両方」を意味すると理解されるべきである。「および／または」を用いて列挙される複数の要素は、同一の様式で、そのように接続される要素のうちの「１つ以上のもの」と解釈されるべきである。他の要素が、随意に、具体的に識別されるそれらの要素に関連するか、または関連しないかどうかにかかわらず、「および／または」の節によって具体的に識別される要素以外に存在し得る。したがって、非限定的実施例として、「Ａおよび／またはＢ」の言及は、「〜を備える」等の非制約的言語と併せて使用されるときに、一実施形態では、Ａのみ（随意に、Ｂ以外の要素を含む）、別の実施形態では、Ｂのみ（随意に、Ａ以外の要素を含む）、さらに別の実施形態では、ＡおよびＢの両方（随意に、他の要素を含む）を指す等となり得る。
【００２４】
本明細書および請求項で使用されるように、「または」は、上記に定義されるような「および／または」と同一の意味を有すると理解されるべきである。例えば、リスト内の項目を分離するとき、「または」または「および／または」は、包括的、すなわち、少なくとも１つの包含であるが、いくつかの要素または要素のリストのうちの１つを上回るもの、随意に、付加的な列挙されていない項目も含むものとして解釈されるものとする。対照的に、「〜のうちの１つのみ」または「〜のうちの正確に１つ」、または請求項で使用されるときに「〜から成る」等の明確に示される用語のみが、いくつかの要素または要素のリストのうちの正確に１つの要素の包含を指すであろう。一般に、使用されるような用語「または」は、「〜のいずれか」、「〜のうちの１つ」、「〜のうちの１つのみ」、または「〜のうちの正確に１つ」等の排他性の用語が先行するときに、排他的代替物（すなわち、「一方または他方であるが両方ではない」）を示すものとしてのみ解釈されるものとする。「本質的に〜から成る」は、請求項で使用されるときに、特許法の分野で使用されるようなその通常の意味を有するものとする。
【００２５】
本明細書および請求項で使用されるように、１つ以上の要素のリストを参照した語句「少なくとも１つ」は、要素のリスト内の要素のうちのいずれか１つ以上のものから選択されるが、要素のリスト内に具体的に列挙される、ありとあらゆる要素のうちの少なくとも１つを必ずしも含まず、要素のリスト内の要素のいずれの組み合わせも除外しない、少なくとも１つの要素を意味すると理解されるべきである。本定義はまた、要素が、随意に、具体的に識別されるそれらの要素に関連するか、または関連しないかどうかにかかわらず、語句「少なくとも１つ」が指す要素のリスト内で具体的に識別される要素以外に存在し得ることも可能にする。したがって、非限定的実施例として、「ＡおよびＢのうちの少なくとも１つ」（または同等に「ＡまたはＢのうちの少なくとも１つ」、または同等に「Ａおよび／またはＢのうちの少なくとも１つ」）は、一実施形態では、随意に、Ｂが存在しない、１つを上回るＡを含む（随意に、Ｂ以外の要素を含む）、少なくとも１つ、別の実施形態では、随意に、Ａが存在しない、１つを上回るＢを含む（随意に、Ａ以外の要素を含む）、少なくとも１つ、さらに別の実施形態では、随意に、１つを上回るＡを含む、少なくとも１つ、および随意に、１つを上回るＢを含む（随意に、他の要素を含む）、少なくとも１つを指す等となり得る。
【００２６】
請求項の要素を修飾するための請求項内の「第１の」、「第２の」、「第３の」等の序数用語の使用は、それ自体では、別の要素と比べた１つの請求項の要素のいずれの優先順位、優位性、または順序、または方法の行為が実施される時間的順序も含意しない。序数用語は、ある名称を有する１つの請求項の要素を、（序数用語の使用のためであるが）同一の名称を有する別の要素と区別し、請求項の要素を区別するために、単に標識として使用される。
【００２７】
さらに、実施形態の説明される特徴、利点、および特性は、任意の好適な様式で組み合わせられてもよい。当業者は、実施形態が、特定の実施形態の具体的特徴または利点のうちの１つ以上のものを伴わずに、実践され得ることを認識するであろう。他の事例では、全ての実施形態に存在するわけではない場合がある、付加的特徴および利点が、ある実施形態で認識され得る。
【００２８】
実施形態のこれらの特徴および利点は、以下の説明および添付される請求項から、より完全に明白となるであろう、または以降に記載されるような実施形態の実践によって習得され得る。当業者によって理解されるであろうように、本発明の側面は、システム、方法、および／またはコンピュータプログラム製品として具現化され得る。故に、本発明の側面は、概して、本明細書では全て「回路」、「モジュール」、または「システム」と称され得る、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）、またはソフトウェアおよびハードウェア側面を組み合わせる実施形態の形態をとり得る。さらに、本発明の側面は、その上に具現化されたプログラムコードを有する、１つ以上のコンピュータ可読媒体で具現化されるコンピュータプログラム製品の形態をとり得る。
【００２９】
本明細書に説明される機能単位の多くは、それらの実装独立性をより具体的に強調するために、モジュールとして標識されている。例えば、モジュールは、カスタムＶＬＳＩ回路またはゲートアレイ、論理チップ等の既製の半導体、トランジスタ、または他の離散コンポーネントを備える、ハードウェア回路として実装されてもよい。モジュールはまた、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス、または同等物等のプログラマブルハードウェアデバイスで実装されてもよい。
【００３０】
モジュールはまた、種々のタイプのプロセッサによる実行のためにソフトウェアで実装されてもよい。プログラムコードの識別されるモジュールは、例えば、オブジェクト、プロシージャ、または関数として編成され得る、例えば、コンピュータ命令の１つ以上の物理または論理ブロックを備えてもよい。それにもかかわらず、識別されるモジュールの実行可能ファイルは、ともに物理的に位置する必要はないが、ともに論理的に継合されると、モジュールを備え、モジュールのための記述される目的を達成する、異なる場所に記憶された異種命令を備えてもよい。
【００３１】
実際、プログラムコードのモジュールは、単一の命令または多くの命令であってもよく、いくつかの異なるコードセグメントにわたって、異なるプログラムの間で、およびいくつかのメモリデバイスを横断して、分散さえされてもよい。同様に、動作データが、本明細書ではモジュール内で識別および図示されてもよく、任意の好適な形態で具現化され、任意の好適なタイプのデータ構造内に編成されてもよい。動作データは、単一のデータセットとして収集されてもよい、または異なる記憶デバイスにわたるものを含む、異なる場所にわたって分散されてもよく、少なくとも部分的に、システムまたはネットワーク上に単に電子信号として存在してもよい。モジュールまたはモジュールの部分が、ソフトウェアで実装される場合、プログラムコードが、１つ以上のコンピュータ可読媒体上に記憶および／または伝搬されてもよい。
【００３２】
コンピュータプログラム製品は、プロセッサに本発明の側面を実行させるためのコンピュータ可読プログラム命令をその上に有する、コンピュータ可読記憶媒体（または複数の媒体）を含んでもよい。
【００３３】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のために命令を留保および記憶し得る、有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、限定ではないが、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述の任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な実施例の非包括的リストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（「ＲＡＭ」）、読取専用メモリ（「ＲＯＭ」）、消去可能プログラマブル読取専用メモリ（「ＥＰＲＯＭ」またはフラッシュメモリ）、スタティックランダムアクセスメモリ（「ＳＲＡＭ」）、ポータブルコンパクトディスク読取専用メモリ（「ＣＤ−ＲＯＭ」）、デジタル多用途ディスク（「ＤＶＤ」）、メモリスティック、フロッピー（登録商標）ディスク、パンチカードまたはその上に記録された命令を有する溝内の隆起構造等の機械的にエンコードされたデバイス、および前述の任意の好適な組み合わせを含む。本明細書で使用されるようなコンピュータ可読記憶媒体は、それ自体が、電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体を通して伝搬する電磁波（例えば、光ファイバケーブルを通して通過する光パルス）、またはワイヤを通して伝送される電気信号等の一過性の信号であるものとして解釈されるものではない。
【００３４】
本明細書に説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から個別のコンピューティング／処理デバイスに、またはネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、および／または無線ネットワークを介して、外部コンピュータまたは外部記憶デバイスにダウンロードされることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および／またはエッジサーバを備えてもよい。各コンピューティング／処理デバイス内のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個別のコンピューティング／処理デバイス内のコンピュータ可読記憶媒体内に記憶するために、コンピュータ可読プログラム命令を転送する。
【００３５】
いくつかの実施形態の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、Ｃ＋＋、または同等物等のオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または類似プログラミング言語等の従来のプロシージャプログラミング言語を含む、１つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードのいずれかであってもよい。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、独立型ソフトウェアパッケージとして、部分的にユーザのコンピュータ上および部分的に遠隔コンピュータ上で、または完全に遠隔コンピュータまたはサーバ上で、実行されてもよい。後者のシナリオでは、遠隔コンピュータは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む、任意のタイプのネットワークを通して、ユーザのコンピュータに接続されてもよい、または接続は、（例えば、インターネットサービスプロバイダを使用してインターネットを通して）外部コンピュータに行われてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはプログラマブル論理アレイ（ＰＬＡ）を含む、電子回路が、本発明の側面を実施するために、コンピュータ可読プログラム命令の状態情報を利用し、電子回路を個人化することによって、コンピュータ可読プログラム命令を実行してもよい。
【００３６】
本発明の側面が、本発明のいくつかの実施形態による、方法、装置（システム）、およびコンピュータプログラム製品のフローチャート図および／またはブロック図を参照して、本明細書に説明される。フローチャート図および／またはブロック図の各ブロック、およびフローチャート図および／またはブロック図内のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装され得ることを理解されたい。
【００３７】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートおよび／またはブロック図の１つまたは複数のブロックに規定される機能／行為を実装するための手段を作成するように、機械を生成するために、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されてもよい。これらのコンピュータ可読プログラム命令はまた、その中に記憶された命令を有する、コンピュータ可読記憶媒体が、フローチャートおよび／またはブロック図の１つまたは複数のブロックに規定される機能／行為の側面を実装する命令を含む、製造品を備えるように、特定の様式で機能するようにコンピュータ、プログラマブルデータ処理装置、および／または他のデバイスに指示し得る、コンピュータ可読記憶媒体内に記憶されてもよい。
【００３８】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートおよび／またはブロック図の１つまたは複数のブロックに規定される機能／行為を実装するように、一連の動作ステップを、コンピュータ、他のプログラマブル装置、または他のデバイス上で実施させ、コンピュータ実装プロセスを生成するために、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードされてもよい。
【００３９】
本明細書に説明される機能単位の多くは、それらの実装独立性をより具体的に強調するために、モジュールとして標識されている。例えば、モジュールは、カスタムＶＬＳＩ回路またはゲートアレイ、論理チップ等の既製の半導体、トランジスタ、または他の離散コンポーネントを備える、ハードウェア回路として実装されてもよい。モジュールはまた、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス、または同等物等のプログラマブルハードウェアデバイスで実装されてもよい。
【００４０】
モジュールはまた、種々のタイプのプロセッサによる実行のためにソフトウェアで実装されてもよい。プログラム命令の識別されるモジュールは、例えば、オブジェクト、プロシージャ、または関数として編成され得る、例えば、コンピュータ命令の１つ以上の物理または論理ブロックを備えてもよい。それにもかかわらず、識別されるモジュールの実行可能ファイルは、ともに物理的に位置する必要はないが、ともに論理的に継合されると、モジュールを備え、モジュールのための記述される目的を達成する、異なる場所に記憶された異種命令を備えてもよい。
【００４１】
図内の概略フローチャート図および／または概略ブロック図は、本発明の種々の実施形態による、装置、システム、方法、およびコンピュータプログラム製品の可能性として考えられる実装のアーキテクチャ、機能性、および動作を図示する。この点に関して、概略フローチャート図および／または概略ブロック図内の各ブロックは、規定論理関数を実装するためのプログラムコードの１つ以上の実行可能命令を備える、モジュール、セグメント、またはコードの一部を表し得る。
【００４２】
また、いくつかの代替実装では、ブロックに記述される機能は、図に記述される順序外で起こり得ることも理解されたい。例えば、連続して示される２つのブロックは、実際には、実質的に並行して実行されてもよい、またはブロックは、時として、関与する機能性に応じて、逆の順序で実行されてもよい。図示される図の１つ以上のブロックまたはその部分と機能、論理、または効果が同等である、他のステップおよび方法も、着想され得る。
【００４３】
種々の矢印タイプおよび線タイプが、フローチャートおよび／またはブロック図で採用され得るが、それらは、対応する実施形態の範囲を限定しないと理解される。実際、いくつかの矢印または他のコネクタが、描写される実施形態の論理フローのみを示すために使用されてもよい。例えば、矢印は、描写される実施形態の列挙されるステップの間の規定されていない持続時間の待機または監視周期を示し得る。また、ブロック図および／またはフローチャート図の各ブロック、およびブロック図および／またはフローチャート図内のブロックの組み合わせは、規定機能または行為、または専用ハードウェアおよびプログラムコードの組み合わせを実施する、専用ハードウェアベースのシステムによって実装され得ることにも留意されたい。
【００４４】
図１は、データセットのための機械学習モデルの好適性を検出するためのシステム１００の一実施形態を図示する、概略ブロック図である。一実施形態では、システム１００は、１つ以上の情報ハンドリングデバイス１０２と、１つ以上のＭＬ管理装置１０４と、１つ以上のデータネットワーク１０６と、１つ以上のサーバ１０８とを含む。ある実施形態では、具体的な数の情報ハンドリングデバイス１０２、ＭＬ管理装置１０４、データネットワーク１０６、およびサーバ１０８が、図１に描写されるが、当業者は、本開示を踏まえて、任意の数の情報ハンドリングデバイス１０２、ＭＬ管理装置１０４、データネットワーク１０６、およびサーバ１０８が、システム１００に含まれ得ることを認識するであろう。
【００４５】
一実施形態では、システム１００は、１つ以上の情報ハンドリングデバイス１０２を含む。情報ハンドリングデバイス１０２は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン、スマートスピーカ（例えば、Ａｍａｚｏｎ  Ｅｃｈｏ（Ｒ）、Ｇｏｏｇｌｅ  Ｈｏｍｅ（Ｒ）、Ａｐｐｌｅ  Ｈｏｍｅ  Ｐｏｄ（Ｒ））、セキュリティシステム、セットトップボックス、ゲーム機、スマートＴＶ、スマートウォッチ、フィットネスバンドまたは他のウェアラブル活動追跡デバイス、光学頭部搭載型ディスプレイ（例えば、仮想現実ヘッドセット、スマートグラス、または同等物）、高解像度マルチメディアインターフェース（「ＨＤＭＩ（登録商標）」）または他の電子ディスプレイドングル、携帯情報端末、デジタルカメラ、ビデオカメラ、またはプロセッサ（例えば、中央処理ユニット（「ＣＰＵ」）、プロセッサコア、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）または他のプログラマブル論理、特定用途向け集積回路（「ＡＳＩＣ」）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、揮発性メモリ、および／または不揮発性記憶媒体を備える、別のコンピューティングデバイスのうちの１つ以上のものを含んでもよい。
【００４６】
ある実施形態では、情報ハンドリングデバイス１０２は、下記に説明されるデータネットワーク１０６を経由して、１つ以上の他の情報ハンドリングデバイス１０２に、および／または１つ以上のサーバ１０８に通信可能に結合される。情報ハンドリングデバイス１０２は、さらなる実施形態では、種々のプログラム、プログラムコード、アプリケーション、命令、機能、および／または同等物を実行するように構成される、プロセッサ、プロセッサコア、および／または同等物を含んでもよい。情報ハンドリングデバイス１０２は、下記により詳細に説明されるように、種々の機械学習動作を実施するための実行可能コード、機能、命令、オペレーティングシステム、および／または同等物を含んでもよい。
【００４７】
一実施形態では、ＭＬ管理装置１０４は、機械学習システムの「健全性」の管理、監視、維持、および／または同等物を行うように構成される。本明細書で使用されるように、機械学習システムの「健全性」は、機械学習モデルを使用して処理される推論データセットのための訓練データセット上で訓練される、機械学習モデルの好適性を指し得、システムの「健全性」は、例えば、訓練データセットおよび推論データセットの統計分析に基づいて決定されてもよい。下記により詳細に解説されるように、機械学習システムは、訓練パイプライン、編成／管理パイプライン、推論パイプライン、および／または同等物等の種々のコンポーネント、パイプライン、データセット、および／または同等物を伴い得る。さらに、コンポーネントは、具体的目的、問題、および／または同等物に対処するように特別に設計または構成されてもよい。従来の機械学習システムでは、ユーザは、特定の問題／目的を分析するために必要である機械学習コンポーネントを決定し、次いで、コンポーネント毎の入力／出力、各コンポーネントの限界、各コンポーネントによって発生されるイベント、および／または同等物を手動で決定するように要求され得る。さらに、従来の機械学習システムを用いると、システム内の多数のコンポーネントおよび相互作用に起因する、エラーが生じた場所、エラーを引き起こした内容、予測結果が有するべき正確度ほど正確ではなかった理由、機械学習モデルが特定の推論データセットのために好適であるかどうか、および／または同等物を追跡することが困難であり得る。
【００４８】
一実施形態では、ＭＬ管理装置１０４は、機械学習システムの訓練データセットおよび推論データセット毎に統計データシグネチャを計算し、統計データシグネチャの関数として健全性／好適性スコアを計算し、健全性／好適性スコアが好適性閾値を満たさない、または不適切性閾値を満たす場合に、機械学習システムに関連するアクションを実施することによって、従来の機械学習システムを改良する。例えば、健全性／好適性スコアが不適切性閾値を満たし、訓練データセット、および推論データセットを分析するために使用される機械学習モデルが、推論訓練データのために好適ではないことを示す場合、ＭＬ管理装置１０４は、機械学習モデルを変更してもよい、機械学習モデルを留保してもよい、より正確な機械学習モデルを発生させるための推奨を提供してもよい、および／または同等物を行う。
【００４９】
さらに、ＭＬ管理装置１０４は、機械学習システム内の１つ以上の異なる点（例えば、任意の点）における推論データセットへの訓練データセットを使用して訓練される機械学習モデルの好適性を決定してもよい。例えば、機械学習システムが、複数の推論層を含む深層学習システムである場合、ＭＬ管理装置１０４は、訓練データセットおよび／または機械学習モデルが深層学習システムの各層において処理される推論データセットに好適である程度を決定してもよい。
【００５０】
機械学習システムのある実施形態では、機械学習モデルを発生させるための訓練段階と、機械学習モデルを使用して推論データセットを分析するための推論段階とが存在する。推論段階からの出力は、推論データセットの１つ以上の特徴の関数として決定される、１つ以上の予測「標識」であってもよい。例えば、訓練データセットが、機械学習モデルを訓練するために使用される、特徴データの３つのカラム、すなわち、年齢、性別、および身長を備え、推論データが、推論パイプライン２０６からの出力である、特徴データの２つのカラム、すなわち、年齢および身長を備える場合、機械学習モデルを使用することは、所与の推論データに基づいて予測性別（男／女）を説明する「標識」であってもよい。
【００５１】
そのような実施形態では、標識が、推論段階の間の推論データセットへの機械学習モデルの好適性、例えば、機械学習モデルの正確度または予測性能を決定するために、要求され得る。予測性能は、通常、訓練データセット、または推論段階の間に、またはそれに先立って、リアルタイムで機械学習モデルの予測性能を決定または推定することを可能にしない、特徴および標識情報の両方が利用可能である別個の立証または試験セットのいずれかで、評価される。さらに、標識が発生されることを待機することは、分析を遅延させ得、機械学習モデルの予測性能が逸脱または低下するときに、事業損失または他の問題を引き起こし得る。
【００５２】
しかしながら、ＭＬ管理装置１０４は、一実施形態では、標識がない場合に、機械学習モデル、機械学習アルゴリズム、および／または同等物の好適性（予測性能）を評価し、訓練データセットおよび推論データセット内の特徴から統計を抽出し、統計を使用して、下記により詳細に解説されるように、好適性スコアを発生させることによって、訓練データセットが推論データセットに適用可能である可能性の程度を評価することによって、問題および使用されるアルゴリズムのタイプ、使用される特定の言語またはフレームワーク、および／または同等物に依存しない。
【００５３】
その種々のサブモジュールを含む、ＭＬ管理装置１０４は、システム１００内の１つ以上の情報ハンドリングデバイス１０２、１つ以上のサーバ１０８、１つ以上のネットワークデバイス、および／または同等物の上に位置してもよい。ＭＬ管理装置１０４は、図３Ａを参照して下記により詳細に説明される。
【００５４】
種々の実施形態では、ＭＬ管理装置１０４は、情報ハンドリングデバイス１０２上、サーバ１０８上、またはデータネットワーク１０６上の他の場所にインストールまたは展開され得る、ハードウェアアプライアンスとして具現化されてもよい。ある実施形態では、ＭＬ管理装置１０４は、有線接続（例えば、ユニバーサルシリアルバス（「ＵＳＢ」）接続）または無線接続（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ、近距離通信（「ＮＦＣ」）、または同等物）のいずれかによって、ラップトップコンピュータ、サーバ１０８、タブレットコンピュータ、スマートフォン、セキュリティシステム、または同等物等のデバイスにアタッチする、電子ディスプレイデバイス（例えば、ＨＤＭＩ（登録商標）ポート、ＤｉｓｐｌａｙＰｏｒｔポート、Ｍｉｎｉ  ＤｉｓｐｌａｙＰｏｒｔポート、ＶＧＡポート、ＤＶＩポート、または同等物を使用する、テレビまたはモニタ）にアタッチする、および／または同等物である、セキュアハードウェアドングルまたは他のハードウェアアプライアンスデバイス（例えば、セットトップボックス、ネットワークアプライアンス、または同等物）等のハードウェアデバイスを含んでもよい。ＭＬ管理装置１０４のハードウェアアプライアンスは、ＭＬ管理装置１０４に関して本明細書に説明される機能を実施するように構成される、下記に説明されるようなディスプレイ、および／または半導体集積回路デバイスにアタッチする、電力インターフェース、有線および／または無線ネットワークインターフェース、グラフィカルインターフェースを含んでもよい。
【００５５】
ＭＬ管理装置１０４は、そのような実施形態では、マイクロコントローラ、特定用途向け集積回路（「ＡＳＩＣ」）、プロセッサ、プロセッサコア、または同等物上で実行するためのフィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）または他のプログラマブル論理、ＦＰＧＡまたは他のプログラマブル論理のためのファームウェア、マイクロコード等の半導体集積回路デバイス（例えば、１つ以上のチップ、ダイ、または他の離散論理ハードウェア）、または同等物を含んでもよい。一実施形態では、ＭＬ管理装置１０４は、（例えば、揮発性メモリ、不揮発性記憶媒体、ネットワークインターフェース、周辺デバイス、グラフィカル／ディスプレイインターフェース、または同等物への）１つ以上の電線または接続を伴うプリント回路基板上に搭載されてもよい。ハードウェアアプライアンスは、データを送信および受信するように構成される（例えば、プリント回路基板または同等物の１つ以上の電線と通信する）、１つ以上のピン、パッド、または他の電気接続と、ＭＬ管理装置１０４の種々の機能を実施するように構成される、１つ以上のハードウェア回路および／または他の電気回路とを含んでもよい。
【００５６】
ＭＬ管理装置１０４の半導体集積回路デバイスまたは他のハードウェアアプライアンスは、ある実施形態では、限定ではないが、ランダムアクセスメモリ（「ＲＡＭ」）、ダイナミックＲＡＭ（「ＤＲＡＭ」）、キャッシュ、または同等物を含み得る、１つ以上の揮発性メモリ媒体を含む、および／またはそれに通信可能に結合される。一実施形態では、ＭＬ管理装置１０４の半導体集積回路デバイスまたは他のハードウェアアプライアンスは、限定ではないが、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、ナノランダムアクセスメモリ（ナノＲＡＭまたはＮＲＡＭ）、ナノ結晶ワイヤベースのメモリ、酸化ケイ素ベースの１０ナノメートル未満のプロセスメモリ、グラフェンメモリ、酸化ケイ素・窒化酸化物シリコン（「ＳＯＮＯＳ」）、抵抗ＲＡＭ（「ＲＲＡＭ（登録商標）」）、プログラマブル金属化セル（「ＰＭＣ」）、伝導性架橋ＲＡＭ（「ＣＢＲＡＭ」）、磁気抵抗ＲＡＭ（「ＭＲＡＭ」）、ダイナミックＲＡＭ（「ＤＲＡＭ」）、相変化ＲＡＭ（「ＰＲＡＭ」または「ＰＣＭ」）、磁気記憶媒体（例えば、ハードディスク、テープ）、光学記憶媒体、または同等物を含み得る、１つ以上の不揮発性メモリ媒体を含む、および／またはそれに通信可能に結合される。
【００５７】
データネットワーク１０６は、一実施形態では、デジタル通信を伝送する、デジタル通信ネットワークを含む。データネットワーク１０６は、無線セルラーネットワーク等の無線ネットワーク、Ｗｉ−Ｆｉネットワーク等のローカル無線ネットワーク、Ｂｌｕｅｔｏｏｔｈ（登録商標）ネットワーク、近距離通信（「ＮＦＣ」）ネットワーク、アドホックネットワーク、および／または同等物を含んでもよい。データネットワーク１０６は、広域ネットワーク（「ＷＡＮ」）、ストレージエリアネットワーク（「ＳＡＮ」）、ローカルエリアネットワーク（ＬＡＮ）、光ファイバネットワーク、インターネット、または他のデジタル通信ネットワークを含んでもよい。データネットワーク１０６は、２つ以上のネットワークを含んでもよい。データネットワーク１０６は、１つ以上のサーバ、ルータ、スイッチ、および／または他のネットワーキング機器を含んでもよい。データネットワーク１０６はまた、ハードディスクドライブ、光学ドライブ、不揮発性メモリ、ＲＡＭ、または同等物等の１つ以上のコンピュータ可読記憶媒体を含んでもよい。
【００５８】
無線接続は、携帯電話ネットワークであってもよい。無線接続は、Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ（「ＩＥＥＥ」）８０２．１１規格のうちのいずれか１つに基づく、Ｗｉ−Ｆｉネットワークを採用してもよい。代替として、無線接続は、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続であってもよい。加えて、無線接続は、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ（「ＩＳＯ」）、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｓｉｏｎ（「ＩＥＣ」）、Ａｍｅｒｉｃａｎ  Ｓｏｃｉｅｔｙ  ｆｏｒ  Ｔｅｓｔｉｎｇ  ａｎｄ  Ｍａｔｅｒｉａｌｓ（Ｒ）（ＡＳＴＭ（Ｒ））、ＤＡＳＨ７（ＴＭ）  Ａｌｌｉａｎｃｅ、およびＥＰＣＧｌｏｂａｌ（ＴＭ）によって確立されたＲＦＩＤ規格を含む、無線周波数識別（「ＲＦＩＤ」）通信を採用してもよい。
【００５９】
代替として、無線接続は、ＩＥＥＥ  ８０２規格に基づくＺｉｇＢｅｅ（Ｒ）接続を採用してもよい。一実施形態では、無線接続は、Ｓｉｇｍａ  Ｄｅｓｉｇｎｓ（Ｒ）によって設計されるようなＺ−Ｗａｖｅ（Ｒ）接続を採用する。代替として、無線接続は、Ｄｙｎａｓｔｒｅａｍ（Ｒ）  Ｉｎｎｏｖａｔｉｏｎｓ  Ｉｎｃ．（Ｃｏｃｈｒａｎｅ，  Ｃａｎａｄａ）によって定義されるようなＡＮＴ（Ｒ）および／またはＡＮＴ＋（Ｒ）接続を採用してもよい。
【００６０】
無線接続は、Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ（Ｒ）（「ＩｒＤＡ」（Ｒ））によって定義されるような赤外線物理層仕様（「ＩｒＰＨＹ」）に少なくとも準拠する接続を含む、赤外線接続であってもよい。代替として、無線接続は、携帯電話ネットワーク通信であってもよい。全ての規格および／または接続タイプは、本願の出願日時点の規格および／または接続タイプの最新バージョンおよび改正を含む。
【００６１】
１つ以上のサーバ１０８は、一実施形態では、ブレードサーバ、メインフレームサーバ、タワーサーバ、ラックサーバ、および／または同等物として具現化されてもよい。１つ以上のサーバ１０８は、メールサーバ、ウェブサーバ、アプリケーションサーバ、ＦＴＰサーバ、メディアサーバ、データサーバ、ウェブサーバ、ファイルサーバ、仮想サーバ、および／または同等物として構成されてもよい。１つ以上のサーバ１０８は、データネットワーク１０６を経由して、１つ以上の情報ハンドリングデバイス１０２に通信可能に結合（例えば、ネットワーク化）されてもよい。１つ以上のサーバ１０８は、機械学習データ、アルゴリズム、訓練モデル、および／または同等物等の情報ハンドリングデバイス１０２と関連付けられるデータを記憶してもよい。
【００６２】
図２Ａは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層２００の一実施形態を図示する、概略ブロック図である。一実施形態では、論理機械学習層２００は、１つ以上のポリシ／制御パイプライン２０２と、１つ以上の訓練パイプライン２０４と、１つ以上の推論パイプライン２０６ａ−ｃと、１つ以上のデータベース２０８と、入力データ２１０と、ＭＬ管理装置１０４とを含む。具体的な数の機械学習パイプライン２０２、２０４、２０６ａ−ｃが、図２Ａに描写されるが、当業者は、本開示を踏まえて、任意の数の機械学習パイプライン２０２、２０４、２０６ａ−ｃが、論理機械学習層２００に存在し得ることを認識するであろう。さらに、図２Ａに描写されるように、種々のパイプライン２０２、２０４、２０６ａ−ｃは、上記に説明される情報ハンドリングデバイス１０２、仮想マシン、クラウドまたは他の遠隔デバイス、および／または同等物等のデバイス２０３、２０５、２０７ａ−ｃとして具現化される、異なるノード上に位置してもよい。いくつかの実施形態では、論理機械学習層２００は、１つ以上の論理機械学習層を含み得る、機械学習システムの一部である。論理機械学習層は、時として、インテリジェンスオーバーレイネットワーク（「ＩＯＮ」）と称される。
【００６３】
本明細書で使用されるように、機械学習パイプライン２０２、２０４、２０６ａ−ｃは、アルゴリズム訓練／推論、特徴工学、立証、スコア化、および／または同等物等の種々の機械学習動作を実施するための種々の機械学習特徴、コンポーネント、オブジェクト、モジュール、および／または同等物を備える。パイプライン２０２、２０４、２０６ａ−ｃは、バッチでデータ２１０を分析または処理する、例えば、静的ソースからの全てのデータを一度に処理する、ストリーミングする、例えば、ライブデータに増分的に作用する、または前述の組み合わせ、例えば、マイクロバッチであってもよい。
【００６４】
ある実施形態では、各パイプライン２０２、２０４、２０６ａ−ｃが、デバイス２０３、２０５、２０７ａ−ｃ、例えば、情報ハンドリングデバイス１０２、仮想マシン、および／または同等物上で実行される。いくつかの実施形態では、複数の異なるパイプライン２０２、２０４、２０６ａ−ｃが、同一のデバイス上で実行される。種々の実施形態では、各パイプライン２０２、２０４、２０６ａ−ｃは、明確に異なるまたは別個のデバイス上で実行される。デバイス２０３、２０５、２０７ａ−ｃは、全て単一の場所に位置してもよい、同一のネットワークに接続されてもよい、クラウドまたは別の遠隔場所に位置してもよい、および／または前述のある組み合わせであってもよい。
【００６５】
一実施形態では、各パイプライン２０２、２０４、２０６ａ−ｃは、分析エンジンと関連付けられ、パイプライン２０２、２０４、２０６ａ−ｃが構成される具体的分析エンジンタイプ上で実行される。本明細書で使用されるように、分析エンジンは、機械学習数値計算および分析を実施するための命令、コード、関数、ライブラリ、および／または同等物を備える。分析エンジンの実施例は、Ｓｐａｒｋ、Ｆｌｉｎｋ、ＴｅｎｓｏｒＦｌｏｗ、Ｃａｆｆｅ、Ｔｈｅａｎｏ、およびＰｙＴｏｒｃｈを含んでもよい。これらのエンジンのために開発されるパイプライン２０２、２０４、２０６ａ−ｃは、特定の分析エンジンのためのモジュール／ライブラリ（例えば、Ｓｐａｒｋ用のＳｐａｒｋ−ＭＬ／ＭＬｌｉｂ、Ｆｌｉｎｋ用のＦｌｉｎｋ−ＭＬ、および／または同等物）内に提供されるコンポーネントを含有してもよい。分析エンジンのためのアプリケーションプログラミングインターフェース（例えば、Ｆｌｉｎｋ用のＤａｔａＳｅｔ／ＤａｔａＳｔｒｅａｍ）を使用して、分析エンジン毎に開発されるカスタムプログラムもまた、含まれてもよい。さらに、各パイプラインが、種々の異なるプラットフォーム、ライブラリ、プログラミング言語、および／または同等物を使用して、実装されてもよい。例えば、推論パイプライン２０６ａが、Ｐｙｔｈｏｎを使用して実装されてもよい一方で、異なる推論パイプライン２０６ｂが、Ｊａｖａ（登録商標）を使用して実装される。
【００６６】
一実施形態では、論理機械学習層２００または機械学習システムは、所望の目的、結果、問題、および／または同等物に基づく、機械学習パイプライン２０２、２０４、２０６ａ−ｃの物理および／または論理群を含む。例えば、ＭＬ管理装置１０４は、所望の目的のために構成される機械学習モデルを発生させるための訓練パイプライン２０４と、選択された推論パイプライン２０６ａ−ｃが構成される分析エンジン、および機械学習モデルを使用して、所望の目的と関連付けられる入力データ２１０を処理することによって、所望の目的を分析するように構成される、１つ以上の推論パイプライン２０６ａ−ｃとを選択してもよい。したがって、群は、複数の分析エンジンを備えてもよく、分析エンジンは、複数の群の一部であってもよい。群は、目的に関してデータを分析すること、他の群の動作を管理すること、他の群の結果／性能を監視すること、制御された環境内で異なる機械学習アルゴリズム／モデルを用いて実験すること、例えば、サンドボックス、および／または同等物等の異なるタスクを実施するように定義されることができる。
【００６７】
例えば、機械学習パイプライン２０２、２０４、２０６ａ−ｃの論理群は、機械学習パイプライン２０２、２０４、２０６ａ−ｃの監視された論理群からのフィードバック、結果、メッセージ、および／または同等物を処理することによって、および／または機械学習パイプライン２０２、２０４、２０６ａ−ｃの監視された論理群の中に入力を提供し、異常、エラー、および／または同等物を検出することによって、機械学習パイプライン２０２、２０４、２０６ａ−ｃの異なる論理群の結果、性能、動作、健全性、および／または同等物を分析するように構築されてもよい。
【００６８】
機械学習パイプライン２０２、２０４、２０６ａ−ｃが、異なるデバイス２０３、２０５、２０７ａ−ｃ、同一のデバイス２０３、２０５、２０７ａ−ｃ、および／または同等物の上に位置し得るため、ＭＬ管理装置１０４は、目的を分析するために最良に構成される機械学習パイプライン２０２、２０４、２０６ａ−ｃを論理的に群化する。下記により詳細に説明されるように、論理群は、機械学習パイプライン２０２、２０４、２０６ａ−ｃの論理群が、特に具体的目的のために構成され得るように、事前定義されてもよい。
【００６９】
ある実施形態では、ＭＬ管理装置１０４は、目的が、機械学習パイプライン２０２、２０４、２０６ａ−ｃの特性、設定、および／または同等物に基づいて、決定される、受信される、および／または同等物であるときに、目的に関して機械学習パイプライン２０２、２０４、２０６ａ−ｃを動的に選択する。ある実施形態では、パイプライン２０２、２０４、２０６ａ−ｃの複数の異なる論理群は、同一の物理的インフラストラクチャ、プラットフォーム、デバイス、仮想マシン、および／または同等物を共有してもよい。さらに、パイプライン２０２、２０４、２０６ａ−ｃの異なる論理群は、分析されている目的に基づいて、マージされる、組み合わせられる、および／または同等物であってもよい。
【００７０】
一実施形態では、ポリシパイプライン２０２は、論理機械学習層２００内の動作を維持／管理するように構成される。ある実施形態では、例えば、ポリシパイプライン２０２は、訓練パイプライン２０４から機械学習モデルを受信し、目的に関して入力データ２１０を分析する際に使用するために、機械学習モデルを推論パイプライン２０６ａ−ｃにプッシュする。種々の実施形態では、ポリシパイプライン２０２は、論理機械学習層２００と関連付けられるユーザ入力を受信する、他のパイプライン２０４、２０６ａ−ｃからイベントおよび／またはフィードバック情報を受信する、機械学習モデルの正当性を立証する、パイプライン２０２、２０４、２０６ａ−ｃの間のデータ伝送を促進する、および／または同等物を行う。
【００７１】
一実施形態では、ポリシパイプライン２０２は、パイプライン２０４、２０６ａ−ｃが相互と相互作用する方法を定義する、１つ以上のポリシを備える。例えば、訓練パイプライン２０４は、訓練サイクルが完了した後に機械学習モデルを出力してもよい。いくつかの可能性として考えられるポリシは、機械学習モデルが取り扱われる方法を定義し得る。例えば、あるポリシは、機械学習モデルが推論パイプライン２０６ａ−ｃに自動的にプッシュされ得ることを規定し得る一方で、別のポリシは、ポリシパイプライン２０２が機械学習モデルを推論パイプライン２０６ａ−ｃにプッシュすることに先立って、ユーザ入力が機械学習モデルを承認するために要求されることを規定し得る。ポリシはさらに、機械学習モデルが更新される方法を定義し得る。
【００７２】
例えば、あるポリシは、例えば、推論パイプライン２０６ａ−ｃから受信される機械学習結果に基づいて、機械学習モデルがフィードバックに基づいて自動的に更新されることを規定し得る、あるポリシは、機械学習モデルが推論パイプライン２０６ａ−ｃに伝搬される前に、ユーザがそれを精査する、検証する、および／または正当性を立証するように要求されるどうかを規定し得る、あるポリシは、機械学習モデルが更新される頻度（例えば、１日に１回、１時間に１回、連続的に、および／または同等物）等の論理機械学習層２００内のスケジューリング情報を規定し得る、および／または同等物である。
【００７３】
ポリシは、パイプライン２０２、２０４、２０６ａ−ｃの異なる論理群が相互作用または協働し、凝集データインテリジェンスワークフローを形成する方法を定義し得る。例えば、あるポリシは、１つの論理機械学習層２００によって発生される結果が、異なる論理機械学習層２００の中への入力として、例えば、機械学習モデルのための訓練データとして、推論パイプライン２０６ａ−ｃへの入力データ２１０として、および／または同等物として使用されることを規定し得る。ポリシは、機械学習モデルが更新される方法および時間、個々のパイプライン２０２、２０４、２０６ａ−ｃが通信および相互作用する方法、および／または同等物を定義し得る。
【００７４】
一実施形態では、ポリシパイプライン２０２は、パイプライン２０４、２０６ａ−ｃの論理群を備える、パイプライン２０４、２０６ａ−ｃのマッピングを維持する。ポリシパイプラインはさらに、ユーザ入力、フィードバック、またはパイプライン２０４、２０６ａ−ｃによって発生されるイベント、および／または同等物に応答して、パイプライン２０４、２０６ａ−ｃの種々の設定または特徴を調節してもよい。例えば、推論パイプライン２０６ａが、不正確である機械学習を発生させる場合、ポリシパイプライン２０２は、結果が不正確であることを示すメッセージを推論パイプライン２０２から受信してもよく、推論パイプライン２０６ａのための新しい機械学習モデルを発生させるように訓練パイプライン２０４に指示してもよい。
【００７５】
訓練パイプライン２０４は、一実施形態では、目的と関連付けられる履歴または訓練データに基づいて分析されている目的のための機械学習モデルを発生させるように構成される。本明細書で使用されるように、機械学習モデルは、特定の目的と関連付けられる履歴または訓練データに訓練または学習アルゴリズムを実行することによって、発生される。機械学習モデルは、入力データを標的、例えば、所望の結果／予測にマップする、訓練データ内のパターンを捕捉する、訓練プロセスによって発生される、アーチファクトである。一実施形態では、訓練データは、静的データセット、オンラインソースからアクセス可能なデータ、ストリーミングデータセット、および／または同等物であってもよい。
【００７６】
推論パイプライン２０６ａ−ｃは、一実施形態では、発生された機械学習モデルおよび対応する分析エンジンを使用し、目的と関連付けられる入力／推論データ２１０について機械学習結果／予測を発生させる。入力データは、分析されている目的と関連付けられるが、訓練データの一部ではなかったデータを備えてもよく、例えば、入力データのパターン／成果は、把握されていない。例えば、ユーザが、Ｅメールがスパムであるかどうかを把握することを所望する場合、訓練パイプライン２０４は、スパムである、およびスパムではないことが把握されるＥメールを含む、訓練データセットを使用して、機械学習モデルを発生させてもよい。機械学習モデルが発生された後、ポリシパイプライン２０２は、機械学習モデルを推論パイプライン２０６ａ−ｃにプッシュし、そこで、例えば、入力／推論データ２１０として提供される、１つ以上のＥメールが、スパムであるかどうかを予測するために使用される。
【００７７】
したがって、図２Ａに描写されるように、ポリシパイプライン２０２、訓練パイプライン２０４、および推論パイプライン２０６ａ−ｃが、エッジ／中心グラフで描写される。描写される実施形態では、新しい機械学習モデルが、データセンタ内の大型クラスタ化分析エンジン上で実行され得る、バッチ訓練パイプライン２０４内で訓練される（例えば、周期的に訓練される）。訓練パイプライン２０４が、新しい機械学習モデルを発生させるにつれて、管理者が、通知されてもよい。管理者は、発生された機械学習モデルを精査してもよく、管理者が承認する場合、機械学習モデルが、それぞれ、エッジデバイスに由来するライブデータ、例えば、入力／推論データ２１０に実行されている、目的のための論理パイプライン群を備える、推論パイプライン２０６ａ−ｃにプッシュされる。
【００７８】
図２Ｂは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層２２５の別の実施形態を図示する、概略ブロック図である。一実施形態では、図２Ｂの論理機械学習層２２５は、図２Ａに描写される論理機械学習層２００に実質的に類似する。図２Ａに描写される論理機械学習層２００の要素に加えて、図２Ｂの論理機械学習層２２５は、訓練デバイス２０５ａ−ｂ上で実行される、複数の訓練パイプライン２０４ａ−ｂを含む。
【００７９】
描写される実施形態では、訓練パイプライン２０４ａ−ｂは、目的のための訓練データに基づいて、目的のための機械学習モデルを発生させる。訓練データは、訓練パイプライン２０４ａ−ｂ毎に異なり得る。例えば、第１の訓練パイプライン２０４ａのための訓練データが、所定の時間周期にわたる履歴データを含んでもよい一方で、第２の訓練パイプライン２０４ｂのための訓練データは、異なる所定の時間周期にわたる履歴データを含んでもよい。訓練データの変動は、異なるタイプのデータ、異なる時間周期において収集されるデータ、異なる量のデータ、および／または同等物を含んでもよい。
【００８０】
他の実施形態では、訓練パイプライン２０４ａ−ｂは、異なるまたは同一のセットの訓練データに異なる訓練または学習アルゴリズムを実行してもよい。例えば、第１の訓練パイプライン２０４ａが、Ｐｙｔｈｏｎを使用して、訓練アルゴリズムＴｅｎｓｏｒＦｌｏｗを実装してもよい一方で、第２の訓練パイプライン２０４ｂは、Ｊａｖａ（登録商標）および／または同等物を使用して、Ｓｐａｒｋで異なる訓練アルゴリズムを実装する。
【００８１】
一実施形態では、論理機械学習層２２５は、訓練パイプライン２０４ａ−ｂが発生させる機械学習モデルを受信し、分析されている目的のための最良適合または好適な適合である機械学習モデルのうちのいずれかを決定するように構成される、モデル選択モジュール２１２を含む。最良適合機械学習モデルは、訓練データに関する実際の結果に最も類似する結果を生成した機械学習モデル（例えば、最も正確な機械学習モデル）、最速で実行される機械学習モデル、最少量の構成を要求する機械学習モデル、および／または同等物であってもよい。
【００８２】
一実施形態では、モデル選択モジュール２１２は、ハイパーパラメータ検索を実施し、所与の目的のための最良適合である、発生された機械学習モデルのうちのいずれかを決定する。本明細書で使用されるように、ハイパーパラメータ検索、最適化、または同調は、学習アルゴリズムのために最適なハイパーパラメータのセットを選定する問題である。ある実施形態では、同一種類の機械学習モデルが、異なるデータパターンを一般化するために、異なる制約、加重、または学習率を要求し得る。これらの測定値は、ハイパーパラメータと呼ばれ得、モデルが機械学習問題を最適に解決し得るように、同調され得る。ハイパーパラメータ最適化は、所与の独立データ上の所定の損失関数を最小限にする、最適な機械学習モデルを生じさせる、ハイパーパラメータのセットを見出す。ある実施形態では、モデル選択モジュール２１２は、異なる機械学習モデルの異なる特徴を組み合わせ、単一の複合モデルを発生させる。一実施形態では、モデル選択モジュール２１２は、推論パイプライン２０６ａ−ｃへの伝搬のために、選択された機械学習モデルをポリシパイプライン２０２にプッシュする。種々の実施形態では、モデル選択モジュール２１２は、ＭＬ管理装置１０４の一部である、それに通信可能に結合される、動作可能に結合される、および／または同等物である。
【００８３】
図２Ｃは、データセットのための機械学習モデルの好適性を検出するための論理機械学習層２５０のある実施形態を図示する、概略ブロック図である。一実施形態では、図２Ｃの論理機械学習層２５０は、それぞれ、図２Ａおよび２Ｂに描写される、論理機械学習層２００、２２５に実質的に類似する。さらなる実施形態では、図２Ｃは、論理機械学習層２５０の連合学習実施形態を図示する。
【００８４】
連合機械学習システムにおいて、一実施形態では、訓練パイプライン２０４ａ−ｃは、対応する推論パイプライン２０６ａ−ｃと同一の物理または仮想デバイス上に位置する。そのような実施形態では、訓練パイプライン２０４ａ−ｃは、異なる機械学習モデルを発生させ、機械学習モデルをモデル選択モジュール２１２に送信し、これは、上記に説明されるように、論理機械学習層２５０のための最良適合である機械学習モデルを決定する、または異なる機械学習モデルを組み合わせる／マージする、および／または同等物である。選択された機械学習モデルは、立証、検証、または同等物のためにポリシパイプライン２０２にプッシュされ、これは、次いで、推論パイプライン２０６ａ−ｃに戻るようにそれをプッシュする。
【００８５】
図３Ａは、データセットのための機械学習モデルの好適性を検出するための装置３００の一実施形態を図示する、概略ブロック図である。一実施形態では、装置３００は、ＭＬ管理装置１０４の実施形態を含む。ＭＬ管理装置１０４は、一実施形態では、下記により詳細に説明される、訓練評価モジュール３０２、推論評価モジュール３０４、スコアモジュール３０６、およびアクションモジュール３０８のうちの１つ以上のものを含む。
【００８６】
一実施形態では、訓練評価モジュール３０２は、１つ以上の所定の統計アルゴリズムを使用して、論理機械学習層２００または機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するように構成される。上記に解説されるように、訓練データセットは、推論パイプライン２０６において推論データセットを分析する際に使用するための機械学習モデルを訓練するために使用される、データセットを備えてもよい。ある実施形態では、訓練データセットは、１つ以上の特徴に関するデータを備える。本明細書で使用されるように、機械学習における特徴は、観察されている現象の個々の測定可能な性質または特性を備え、数値、文字列、グラフ、および／または同等物であってもよい。例えば、データセット内の特徴は、年齢、性別、場所、収入、または同等物を含んでもよい。訓練データセットは、１つの特徴に関する、または複数の特徴に関するデータを含んでもよい。
【００８７】
一実施形態では、本明細書で使用されるように、訓練データセットのための統計データシグネチャは、異なるデータセット、例えば、推論データセットに対する訓練データセットを説明する、値、スコア、推定値、ランク、または同等物を備えてもよい。訓練評価モジュール３０２は、種々の統計アルゴリズムを使用し、訓練データセットのための統計データシグネチャを発生させてもよい。例えば、下記により詳細に解説されるように、訓練評価モジュール３０２は、種々の統計アルゴリズムを使用し、多項分布アルゴリズム、ガウス混合モデルアルゴリズム、ツリーの非ランダムフォレストアルゴリズム、および／または同等物等の訓練データセット、訓練データセットの特徴に関するデータ、および／または同等物の密度／確率分布を決定してもよい。
【００８８】
一実施形態では、推論評価モジュール３０４は、１つ以上の所定の統計アルゴリズムを使用して、論理機械学習層２００または機械学習システムの推論データセットのための第２の統計データシグネチャを計算するように構成される。ある実施形態では、推論評価モジュール３０４が第２の統計データシグネチャを発生させるために使用する、１つ以上の所定の統計アルゴリズムは、第１および第２のデータシグネチャが、同一の基準で相互に対して比較されることを可能にする、訓練データセットのための第１の統計データシグネチャを発生させるために使用される、同一のアルゴリズムである。
【００８９】
例えば、訓練評価モジュール３０２が、ガウス混合モデルアルゴリズムを使用し、訓練データセットのための第１の統計データシグネチャを発生させる場合、推論評価モジュール３０４は、訓練データを使用して発生されるガウス混合モデルを使用し、推論データセットのための第２の統計データシグネチャを発生させてもよい。このように、第１および第２の統計データシグネチャは、同一の統計アルゴリズムに基づいて発生されるため、相互に対応する。
【００９０】
一実施形態では、スコアモジュール３０６は、第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算する、決定する、または同等物を行うように構成される。例えば、好適性スコアは、訓練データセットを使用して訓練される機械学習モデルが推論データセットにとって好適である、例えば、適用可能または正確である程度、推論データセットが訓練データセットから逸脱する程度、および／または同等物を示す、数、値、ランク、閾値、単位、確率、推定値、および／または同等物を備えてもよい。
【００９１】
一実施形態では、スコアモジュール３０６は、第１および第２の統計データシグネチャの関数として、好適性スコアを決定してもよい。例えば、スコアモジュール３０６は、第１および第２の統計データシグネチャが、共通スケールに正規化されるように、第１の統計データシグネチャの関数として、第２の統計データシグネチャを正規化してもよい。スコアモジュール３０６は、第１および第２の統計データシグネチャに種々の数学的計算を実施し、スコアを平均する、スコアを加算／乗算／減算／除算する、および／または２つ以上の値の組み合せから単一の値を導出する他の数学関数等、好適性スコアを決定してもよい。
【００９２】
一実施形態では、スコアモジュール３０６は、機械学習処理の間にリアルタイムで継続的に好適性スコアを計算し、特定のパイプライン２０２−２０６における推論データセットへの訓練セットデータの好適性を決定する。例えば、スコアモジュール３０６は、推論パイプライン２０６において推論データセットを分析することに先立って、推論パイプライン２０６における推論データセット処理の間に、推論データセットが推論パイプライン２０６において処理された後に、１つの推論パイプライン２０６からの出力が後続の推論パイプライン２０６の中に入力されることに先立って、および／または同等物で、推論データセットのための好適性スコアを計算してもよい。
【００９３】
ある実施形態では、訓練データセットは、連続またはカテゴリ特徴データを備える。本明細書で使用されるような連続特徴データは、無数の値、例えば、実数を有し得る、データである。本明細書で使用されるようなカテゴリ特徴データは、離散値を有し得るデータ、例えば、ある数の値のみであり得るデータである。異なるアプローチが、下記に解説されるように、データが連続またはカテゴリ特徴データを備えるかどうかに基づいて、訓練データセットおよび推論データセットのための機械学習モデルの好適性を評価するために使用されてもよい。
【００９４】
単変量データ偏差
一実施形態では、スコアモジュール３０６は、訓練データセットおよび推論データセットの対応する特徴を使用して、特徴あたりの基準で好適性スコアを決定する。訓練データセットが、連続および／またはカテゴリ特徴値を備え、好適性スコアが、特徴あたりの基準で決定される、実施形態では、訓練評価モジュール３０２は、訓練データセットの各特徴に関する値を異なるビン／群に割り当てることによって、訓練データセットの各特徴にわたって多項確率分布を決定する。訓練評価モジュール３０２は、次いで、訓練データセット内にある値の尤度を示す、訓練データセットのビン／群毎の確率を決定する。連続特徴データに関して、確率は、訓練データセット内のサンプルの総数に対する各ビン／群に属するサンプルの数の比に等しく、カテゴリ特徴データに関して、確率は、訓練データ内のサンプルの総数に対する各カテゴリが表出する回数の比に等しい。訓練評価モジュール３０２は、いくつかの実施形態では、次いで、訓練データセットのためのデータシグネチャを備え得る、特徴に関する群毎の確率の関数として、訓練データセットに関する平均訓練確率スコアを計算する。
【００９５】
推論データセットが、連続および／またはカテゴリ特徴値を備える、さらなる実施形態では、推論評価モジュール３０４は、推論データセットの各特徴に関する値を、訓練データセットのビン／群に対応する異なるビン／群に割り当てることによって、推論データセットの各特徴にわたって多項確率分布を決定する。推論評価モジュール３０２は、次いで、訓練データセット内にある推論データセット内にある値の尤度を示す、推論データセットのビン／群毎の確率を決定する。連続特徴データに関して、確率は、推論データセット内のサンプルの総数に対する各ビン／群に属するサンプルの数の比に等しく、カテゴリ特徴データに関して、確率は、推論データ内のサンプルの総数に対する各カテゴリが表出する回数の比に等しい。推論評価モジュール３０２は、いくつかの実施形態では、次いで、推論データセットのためのデータシグネチャを備え得る、特徴に関する群毎の確率の関数として、推論データセットに関する平均推論確率スコアを計算する。
【００９６】
スコアモジュール３０６は、次いで、確率スコアが共通スケール上で比較可能であるように、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算してもよい。好適性閾値を満たす（例えば、それに等しいまたは上回る）好適性スコアは、訓練データセットおよび訓練データセットを用いて訓練される機械学習モデルが、推論データセットのために好適である、正確である、または同等物であることを示す。別様に、訓練データセットは、推論データセットのために不適切であり得、アクションモジュール３０８は、下記に説明されるアクションのうちの１つ以上のものを実施し、論理機械学習層２００または機械学習システムの健全性または正確度を改良し得る。
【００９７】
したがって、推論パイプライン２０６が推論データセットを分析する前でさえも、推論データセットを使用して発生されるいずれの標識も使用することなく、ＭＬ管理装置１０４は、訓練データセットおよび／または推論データセットのための機械学習モデルの好適性を決定することができる。
【００９８】
多変量データ偏差−連続特徴データ
一実施形態では、スコアモジュール３０６は、訓練データセットおよび推論データセットの複数の特徴を横断して好適性スコアを計算する。訓練データセットが、連続特徴データを備える、実施形態では、訓練評価モジュール３０２は、訓練データセットの関数として、ガウス混合モデルを発生させてもよい。本明細書で使用されるように、混合モデルは、観察されたデータセットが、個々の観察が属する部分集団を識別するべきであることを要求することなく、全体的集団内の部分集団の存在を表すための確率モデルを備える。ガウス混合モデル（また、多変量ガウス混合モデル、カテゴリ混合モデル、または同等物）は、全てのデータ点が、未知のパラメータを伴う有限数のガウス分布の混合物から発生されることを仮定し、種々のタイプの密度分布をモデル化するための柔軟性を有する、混合モデルの一実施例である。
【００９９】
一実施形態では、訓練評価モジュール３０２は、ガウス混合モデルとして、訓練データの尤度分布（例えば、確率密度関数）を決定する。ガウス混合モデルは、種々の実施形態では、各成分がガウス分布を有する、成分から成る。訓練評価モジュール３０２は、ある実施形態では、ベイズ情報量基準（「ＢＩＣ」）を使用して、尤度分布をモデル化するための最適な数の成分を決定する。
【０１００】
ガウス混合モデルのための尤度方程式が、以下の方程式によって与えられる。
【化１】
2021527288.tif 000003
式中、θ＝［ｗ，μ，Σ］は、ガウス混合モデルのパラメータである。モデル内の成分の数をＫにすると、ｗ＝［ｗ１，ｗ２，…，ｗＫ］、μ＝［μ１，μ２，…，μｋ］、およびΣ＝［Σ１，Σ２，...ΣＫ］は、それぞれ、各成分に対応する、加重、平均、および共分散値を表す。下付き文字は、これらの値が属する成分を表す。
【０１０１】
一実施形態では、訓練評価モデル３０２は、訓練データセットまたは訓練データセットのサブセットに基づいて、ガウス混合モデルのパラメータを決定する。さらなる実施形態では、訓練評価モジュール３０２は、発生されたガウス混合モデルに基づいて、訓練データセットの尤度分布を決定し、訓練データセットのためのデータシグネチャを備え得る、訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算する。ある実施形態では、ガウス混合モデルを用いて計算される尤度は、固定範囲を有しておらず（例えば、尤度値は、０〜１の値に限定されない正の値を備える）、したがって、平均尤度は、訓練の間に計算されることができる。
【０１０２】
一実施形態では、推論データセットはまた、連続特徴データも備え、推論評価モジュール３０４は、訓練評価モジュール３０２が訓練データセットの連続特徴データを使用して発生させるガウス混合モデルに基づいて、推論データセットの尤度分布を決定する。いくつかの実施形態では、推論評価モジュール３０４は、（例えば、バッチモードで）サンプルのバッチにわたって、および／または（例えば、データストリーミングモードで）サンプルの窓にわたって尤度を計算する。尤度は、推論データセットの性質および次元性に応じて、広範囲にわたって変動し得る。したがって、ある実施形態では、推論評価モジュール３０４は、推論データセットのためのデータシグネチャを備え得る、推論データセットの尤度分布に基づいて、平均推論尤度スコアを計算する。
【０１０３】
スコアモジュール３０６は、次いで、尤度スコアが、０〜１、０〜１００、または同等物のスケール等の共通スケール上で比較可能であるように、平均訓練尤度スコアの関数として平均推論尤度スコアを正規化することによって、好適性スコアを計算してもよい。一実施形態では、範囲が、０〜１に設定される場合、１の上限は、訓練の間に見られる平均尤度に対応し得る。下限が、０に近い値に設定される場合、これは、訓練の間に見られる平均値に対する尤度の低下が許容可能であることを示し得る。
【０１０４】
好適性閾値を満たす（例えば、それに等しいまたは上回る）好適性スコアは、訓練データセットおよび訓練データセットを用いて訓練される機械学習モデルが、推論データセットのために好適である、正確である、または同等物であることを示す。別様に、訓練データセットは、推論データセットのために不適切であり得、アクションモジュール３０８は、下記に説明されるアクションのうちの１つ以上のものを実施し、論理機械学習層２００または機械学習システムの健全性または正確度を改良し得る。
【０１０５】
多変量データ偏差−カテゴリ／バイナリ特徴データ
一実施形態では、スコアモジュール３０６は、訓練データセットおよび推論データセットの複数の特徴を横断して、好適性スコアを計算する。訓練データセットが、カテゴリ／バイナリ特徴データを備える、実施形態では、訓練評価モジュール３０２は、同時分布をモデル化する多項分布を決定してもよい。例えば、以下の分布は、３つのバイナリ特徴を含有する、データセットを表す。
（０，０，０）→０．３
（０，０，１）→０．０５
（０，１，０）→０．０５
（０，１，１）→０．２
（１，０，０）→０．１
（１，０，１）→０．１
（１，１，０）→０．１
（１，１，１）→０．１
【０１０６】
上記のデータセットは、一実施形態では、確率値がデータセット内の各可能性として考えられる組み合わせに割り当てられる、多項分布の実施例である。ある実施形態では、確率値は、各組み合わせがデータセットに存在する比として計算される。しかしながら、Ｎ個の特徴および各特徴内のｋ個のカテゴリが存在するとき、組み合わせの数は、Ｎｋである。訓練データセット自体が、＜Ｎｋであり得るため、可能性として考えられる組み合わせがそれぞれ、訓練データセットに存在しない場合があることに留意されたい。一実施形態では、ゼロ確率は、ゼロ確率が訓練データセットのサブセットではない任意の新しいサンプルに割り当てられることを含意し得るため、ゼロ確率は、訓練データセットに存在しない組み合わせに割り当てられない。本問題を防止するために、訓練評価モジュール３０２は、以下として、カテゴリ特徴の同時分布を概算する。
ｐ（Ｘ１，Ｘ２，．．，ＸＮ）＝ｐ（Ｘ１，Ｘ２）ｐ（Ｘ３，Ｘ４，Ｘ５）…ｐ（ＸＮ−１，ＸＮ）
＝ｐ（Ｘ１）ｐ（Ｘ２｜Ｘ１）ｐ（Ｘ３）ｐ（Ｘ４｜Ｘ３）ｐ（Ｘ５｜Ｘ３，Ｘ４）…ｐ（ＸＮ−１）ｐ（ＸＮ−１｜ＸＮ）
【０１０７】
特徴のあるサブセットの間の関係がドロップされることに留意されたい。上記の例示的訓練データセットに関して、結果は、以下であろう。
ｐ（１，２，３）＝ｐ（１，２）ｐ（３）
ｐ（１，２）→（０，０），（０，１），（１，０），（１，１）
ｐ（３）→（０），（１）
式中、ｐ（１，２）は、ｐ（１，２）＝ｐ（１）＊ｐ（２｜１）としてモデル化される
【０１０８】
一実施形態では、これは、ツリーのフォレストとしてモデル化される。本明細書で使用されるように、各ツリーは、各ノードにおける子の数が所与の特徴内のカテゴリの数に等しい、特殊なデータ構造である。特徴セットの互いに素のサブセットを含有する、いくつかのそのようなツリーが存在する。これらのツリーの集合は、本明細書ではフォレストと称される。ツリーの数は、各成分が１つ以上の特徴から成る、独立成分の数に等しくあり得る。各ツリー内のレベルの数は、それが解説する特徴の数に等しくあり得る。訓練評価モジュール３０２は、一実施形態では、ツリーが有するであろうレベルの数、またはそれが有するであろうツリーの合計の数を事前に把握しない。訓練評価モジュール３０２は、ツリーを成長させ、訓練評価モジュール３０２がゼロ確率を伴うノードに遭遇する度に、それを成長させることを停止してもよい。ノードが、ゼロ確率を有する場合、訓練評価モジュール３０２は、前のレベルにおいてツリー全体を切断する（本ノードは、いずれの兄弟も有しないであろう）。これは、特徴Ｎがツリーの一部である、またはその一部ではないことのいずれかを意味する。あるレベルにおける全ての兄弟／従兄弟ノードは、全て正確に同数の子を有してもよい。
【０１０９】
例えば、以下、すなわち、
ｐ（Ｘ３，Ｘ４，Ｘ５）＝ｐ（Ｘ３）ｐ（Ｘ４｜Ｘ３）ｐ（Ｘ５｜Ｘ３，Ｘ４）
を前提とすると、対応するツリーのフォレストが、図３Ｂに示されるように表出し得る。
【０１１０】
ツリーを成長および終了させるときを決定するために、例えば、Ｋ個の特徴を存在させる。訓練評価モジュール３０２は、任意の恣意的特徴、例えば、「５」から開始する。「５」に、その内側でＣ個のカテゴリ、すなわち、［１，２，．．，Ｚ］を持たせる。訓練評価モジュール３０２は、Ｚ個の子ノードを伴うツリーを構築することによって開始し、確率値を子ノードのそれぞれに割り当ててもよい。各ノードに割り当てられる確率値は、他の特徴を無視しながら本特徴のみに注目して、カテゴリが訓練データセット内に表出する回数の割合に等しくあり得る。訓練モジュール３０２は、別の特徴、例えば、「１０」を選んでもよく、「１０」内のカテゴリの総数（例えば、Ｙ）を検出する。訓練モジュール３０２は、各子ノードを訪問し、特徴「５」に関して、それぞれ、カテゴリ［１，２，．．，Ｚ］に属するサンプルのサブセットに注目し、特徴「５」が、それぞれ、カテゴリ「１」、「２」、…「Ｚ」を有することを前提として、「１０」内の全てのカテゴリ（Ｙ）の確率分布をモデル化する。これは、本レベルにおけるノード毎にＹ個の子ノードをもたらす。
【０１１１】
訓練評価モジュール３０２が子ノードにおいて全ての可能性として考えられるカテゴリを見出すことができない場合において、これは、訓練評価モジュール３０２が訓練データセット内でそのような組み合わせに遭遇せず、したがって、前のレベルにおいてツリーを終了させることを含意し得る。上記の例示的例証では、Ｘ５が４つのカテゴリ（Ｆ，Ｇ，Ｈ，Ｉ）を有する場合、およびＰ（Ｘ５＝Ｇ｜Ｘ３＝Ｂ，Ｘ４＝Ｅ）＝０である場合、これは、訓練評価モジュール３０２が、特徴（３，４，５）に関する組み合わせ（Ｂ，Ｅ，Ｇ）に遭遇しなかったことを示し得る。したがって、訓練評価モジュール３０２は、前のレベルを終了させ、グラフは、最終的に上記の図示されるツリーのように見える。訓練評価モジュール３０２は、次いで、新しいツリーおよび新しい特徴、可能性として、特徴Ｘ５から開始してもよい。
【０１１２】
したがって、訓練評価モジュール３０２は、訓練データセットの関数として、ツリーの非ランダムフォレストを発生させ、発生されたツリーの非ランダムフォレストに基づいて、訓練データセットの確率分布を決定し、訓練データセットの確率分布に基づいて、平均訓練確率スコア（例えば、訓練データセットのための統計データシグネチャ）を計算するように構成されてもよい。
【０１１３】
さらなる実施形態では、推論モジュール３０４は、訓練データセットを使用して発生されるツリーの非ランダムフォレストに基づいて、推論データセットの確率分布を決定するように構成される。例えば、推論モジュール３０４は、推論データセット内の特徴毎にツリーの非ランダムフォレストをトラバースし、訓練データセットの確率分布に基づいて、推論データセット内の特徴の確率分布を決定してもよい。推論モジュール３０４は、次いで、推論データセットの確率分布に基づいて、平均推論確率スコア（例えば、推論データセットのための統計データシグネチャ）を計算してもよい。
【０１１４】
ある実施形態では、スコアモジュール３０６は、確率スコアが共通スケール上で比較可能であるように、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算する。好適性閾値を満たす（例えば、それに等しいまたは上回る）好適性スコアは、訓練データセットおよび訓練データセットを用いて訓練される機械学習モデルが、推論データセットのために好適である、正確である、または同等物であることを示す。別様に、訓練データセットは、推論データセットのために不適切であり得、アクションモジュール３０８は、下記に説明されるアクションのうちの１つ以上のものを実施し、論理機械学習層２００または機械学習システムの健全性または正確度を改良し得る。
【０１１５】
（深層学習機械学習システム）
一実施形態では、論理機械学習層２００または機械学習システムは、深層学習機械学習システムを備える。本明細書で使用されるように、深層学習システムは、各連続層が入力として前の層からの出力を使用する、特徴抽出および変換のための非線形処理単位の複数の層のカスケードを使用し、教師あり（例えば、分類）および／または教師なし（例えば、パターン分析）様式で学習し、レベルが概念の階層を形成する、異なるレベルの抽象化に対応する複数のレベルの表現を学習する、機械学習アルゴリズムの部類であり得る。深層学習システムの実施例は、人工ニューラルネットワーク、深層ニューラルネットワーク、および／または同等物を含み得る。
【０１１６】
ある実施形態では、深層学習機械学習システムは、典型的には、より多数のモデルパラメータが存在し、特徴上の変換が相互の上でカスケードになり、複雑な非線形変換を生成するという点で、他の機械学習システムと異なる。加えて、深層学習は、多数のパラメータを伴うモデルを依然としてもたらす、ネットワーク内の異なる層の間に疎接続を作成することによって、画像および時系列データ、例えば、テキスト等の高次元入力を扱う。画像等の高次元データを扱い、正確な予測性能を発生させることができることは、深層学習の利点である。しかしながら、そのような場合における特徴空間自体からの統計シグネチャの抽出は、無意味であり得る。これらの問題を回避するための１つの方法は、訓練および推論の間に内部特徴アクティブ化を比較することである。
【０１１７】
したがって、一実施形態では、推論データセットは、深層学習システムの学習層からの出力である、データセットを備える。一実施形態では、推論データセットは、最終学習層に先立って生じる深層学習システムの層から出力される、データセットを備える。例えば、推論データセットは、深層学習システムの第１の学習層から、１つ以上の中間学習層から、最後から２番目の学習層から、および／または同等物からの出力データセットを備えてもよい。上記に説明される種々の統計アルゴリズムを使用して、ＭＬ管理装置１０４は、訓練データセットおよび推論データセットの統計データシグネチャに基づいて、標識を使用することなく、深層学習システム内で使用されている機械学習モデルが深層学習システムによって発生される種々の出力のために好適であるかどうかを決定することができる。
【０１１８】
一実施形態では、アクションモジュール３０８は、不適切性閾値を満たす（例えば、それに等しいまたはそれ未満である）好適性スコアに応答して、または不適切性閾値と同一の値であり得る、好適性閾値を満たさない（例えば、それ未満である）好適性スコアに応答して、論理機械学習層２００または機械学習システムに関連するアクションを実施するように構成される。例えば、スコアモジュール３０６は、０〜１のスケールで０．７５の好適性スコア（または０．２５の不適切性スコア）を計算してもよく、不適切性閾値が、０．３である場合、または好適性閾値が、０．７である場合には、アクションモジュール３０８は、訓練データセット、さらに言うと、機械学習モデルが、特定の推論データセットのために好適であることを決定してもよい。
【０１１９】
他方では、好適性スコアが、０．６（または０．４の不適切性スコア）である場合、および不適切性閾値が、０．３である場合、または好適性閾値が、０．７である場合には、アクションモジュール３０８は、訓練データセット、さらに言うと、機械学習モデルが、特定の推論データセットのために好適ではないことを決定してもよい。そのような実施形態では、アクションモジュール３０８は、論理機械学習層２００または機械学習システムに関連するアクションを実施する、その実施をトリガする、推奨する、または同等物を行う。
【０１２０】
例えば、アクションモジュール３０８は、推論データセットを分析するために推論パイプライン２０６によって現在使用されている機械学習モデルを、機械学習モデルを訓練するために使用されるオリジナル訓練データセットよりも推論データセットのために好適であり得る訓練データセットを使用して訓練された、異なる機械学習モデルに変更する、変更をトリガする、または変更を推奨してもよい。
【０１２１】
さらなる実施形態では、アクションモジュール３０８は、好適性閾値を満たさない好適性スコアに応答して、現在の機械学習モデルを訓練するために使用される訓練データセットよりも推論データセットのために好適であり得る、異なる訓練データセットを使用して、機械学習モデルを再訓練する、再訓練をトリガする、または再訓練を推奨してもよい。種々の実施形態では、アクションモジュール３０８は、機械学習モデルの正確度を確認するために訓練データセットに対してチェックされ得る、推論パイプライン２０６の出力の一部として、下記に説明される１つ以上の標識を発生させる。
【０１２２】
いくつかの実施形態では、アクションモジュール３０８は、好適性閾値を満たさない好適性スコアに応答して、訓練データセットおよび／または訓練データセットを使用して訓練された機械学習モデルが推論データセットのために不適切であることを示す、アラート、メッセージ、通知、または同等物を（例えば、管理者または他のユーザに）送信する。そのような実施形態では、アクションモジュール３０８は、好適性スコア、訓練データセット識別子、推論データセット識別子、推論パイプライン２０６識別子、機械学習モデル識別子、好適性スコアを増加させるための１つ以上の推奨（例えば、異なる訓練データを用いて機械学習モデルを再訓練する、現在の機械学習モデルを異なる機械学習モデルと交換する、または同等物）等の付加的情報を通知に含んでもよい。
【０１２３】
一実施形態では、アクションモジュール３０８は、訓練および推論データセットに関する好適性閾値を満たす好適性スコアに応答して、推論データセットの特徴のための１つ以上の標識を発生させる、発生をトリガする、および／または発生を推奨する。上記に説明されるように、標識は、論理機械学習層２００または機械学習システムが出力する、予測、推奨、予想、推定、および／または同等物を備えてもよい。
【０１２４】
図４は、データセットのための機械学習モデルの好適性を検出するための方法４００の一実施形態を図示する、概略フローチャート図である。一実施形態では、方法４００が、開始し、訓練評価モジュール３０２は、１つ以上の所定の統計アルゴリズムを使用して、論理機械学習層２００または機械学習システムの訓練データセットのための第１の統計データシグネチャを計算する４０２。いくつかの実施形態では、訓練データセットは、推論データセットを分析するための機械学習モデルを発生させるために使用される。
【０１２５】
さらなる実施形態では、推論評価モジュール３０４は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算する４０４。種々の実施形態では、スコアモジュール３０６は、第１および第２の統計データシグネチャに基づいて（例えば、その関数として）、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算する４０６。ある実施形態では、アクションモジュール３０８は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施し４０８、方法４００は、終了する。
【０１２６】
図５は、データセットのための機械学習モデルの好適性を検出するための方法５００の別の実施形態を図示する、概略フローチャート図である。一実施形態では、方法５００が、開始し、訓練評価モジュール３０２は、訓練データセットの特徴に関する値を異なる群に割り当てることによって、訓練データセットの確率分布を決定し５０２、確率が訓練データセット内にある値の尤度を示す、訓練データセットの群毎の確率を決定し５０４、群に関する確率の関数として、訓練データセットに関する平均訓練確率スコアを計算する５０６。
【０１２７】
ある実施形態では、推論評価モジュール３０４は、訓練データセットの特徴に関する値を、訓練データセットの群に対応する異なる群に割り当てることによって、推論データセットの確率分布を決定し５０８、確率が訓練データセット内にある推論データセットの値の尤度を示す、推論データセットの群毎の確率を決定し５１０、推論データセットの確率分布に基づいて、平均推論確率スコアを計算する５１２。
【０１２８】
一実施形態では、スコアモジュール３０６は、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算する５１４。種々の実施形態では、アクションモジュール３０８は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施し５１６、方法５００は、終了する。
【０１２９】
図６は、データセットのための機械学習モデルの好適性を検出するための方法６００の別の実施形態を図示する、概略フローチャート図である。一実施形態では、方法６００が、開始し、訓練評価モジュール３０２は、訓練データセットの関数として、ガウス混合モデルを発生させ６０２、発生されたガウス混合モデルに基づいて、訓練データセットの尤度分布を決定し６０４、訓練データセットの尤度分布に基づいて、平均訓練尤度スコアを計算する６０６。
【０１３０】
さらなる実施形態では、推論評価モジュール３０４は、発生されたガウス混合モデルに基づいて、推論データセットの尤度分布を決定し６０８、推論データセットの尤度分布に基づいて、平均推論尤度スコアを計算する６１０。ある実施形態では、スコアモジュール３０６は、平均訓練尤度スコアの関数として、平均推論尤度スコアを正規化することによって、好適性スコアを計算し６１２、アクションモジュール３０８は、不適切性閾値を満たす好適性スコアに応答して、機械学習アクションを実施し６１４、方法６００は、終了する。
【０１３１】
図７は、データセットのための機械学習モデルの好適性を検出するための方法７００の別の実施形態を図示する、概略フローチャート図である。一実施形態では、方法７００が、開始し、訓練評価モジュール３０２は、訓練データセットの関数として、ツリーの非ランダムフォレストを発生させ７０２、発生されたツリーの非ランダムフォレストに基づいて、訓練データセットの確率分布を決定し７０４、訓練データセットの確率分布に基づいて、平均訓練確率スコアを計算する７０６。
【０１３２】
さらなる実施形態では、推論評価モジュール３０４は、（例えば、ツリーの非ランダムフォレストをトラバースし、推論データセット内の所与の特徴と関連付けられる確率を決定することによって）訓練データに基づいて発生されるツリーの非ランダムフォレストの関数として、推論データセットの確率分布を決定し７０８、推論データセットの確率分布に基づいて、平均推論確率スコアを計算する７１０。スコアモジュール３０６は、ある実施形態では、平均訓練確率スコアの関数として、平均推論確率スコアを正規化することによって、好適性スコアを計算し７１２、アクションモジュール３０８は、不適切性閾値を満たす好適性スコアに応答して、機械学習アクションを実施し７１４、方法７００は、終了する。
【０１３３】
１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するための手段は、種々の実施形態では、ＭＬ管理装置１０４、訓練評価モジュール３０２、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、ＦＰＧＡ、ＡＳＩＣ、他の論理ハードウェア、および／またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの１つ以上のものを含む。他の実施形態は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの訓練データセットのための第１の統計データシグネチャを計算するための類似または同等手段を含んでもよい。
【０１３４】
１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算するための手段は、種々の実施形態では、ＭＬ管理装置１０４、推論評価モジュール３０４、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、ＦＰＧＡ、ＡＳＩＣ、他の論理ハードウェア、および／またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの１つ以上のものを含む。他の実施形態は、１つ以上の所定の統計アルゴリズムを使用して、機械学習システムの推論データセットのための第２の統計データシグネチャを計算するための類似または同等手段を含んでもよい。
【０１３５】
第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算するための手段は、種々の実施形態では、ＭＬ管理装置１０４、スコアモジュール３０６、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、ＦＰＧＡ、ＡＳＩＣ、他の論理ハードウェア、および／またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの１つ以上のものを含む。他の実施形態は、第１および第２の統計データシグネチャの関数として、推論データセットへの訓練データセットの好適性を説明する好適性スコアを計算するための類似または同等手段を含んでもよい。
【０１３６】
不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施するための手段は、種々の実施形態では、ＭＬ管理装置１０４、アクションモジュール３０８、デバイスドライバ、ホストコンピューティングデバイス上で実行されるコントローラ、プロセッサ、ＦＰＧＡ、ＡＳＩＣ、他の論理ハードウェア、および／またはコンピュータ可読記憶媒体上に記憶された他の実行可能コードのうちの１つ以上のものを含む。他の実施形態は、不適切性閾値を満たす好適性スコアに応答して、機械学習システムに関連するアクションを実施するための類似または同等手段を含んでもよい。
【０１３７】
本発明は、その精神または本質的特性から逸脱することなく、他の具体的形態で具現化され得る。説明される実施形態は、あらゆる点に関して、制限的ではなくて例証的のみと見なされるものである。本発明の範囲は、したがって、前述の説明によるのではなく、添付される請求項によって示される。請求項の均等物の意味および範囲内で生じる全ての変更は、それらの範囲内に包含されるものである。
【図１】
2021527288.tif 000004
【図２Ａ】
2021527288.tif 000005
【図２Ｂ】
2021527288.tif 000006
【図２Ｃ】
2021527288.tif 000007
【図３Ａ】
2021527288.tif 000008
【図３Ｂ】
2021527288.tif 000009
【図４】
2021527288.tif 000010
【図５】
2021527288.tif 000011
【図６】
2021527288.tif 000012
【図７】
2021527288.tif 000013
【国際調査報告】
2021527288.tif 000014
2021527288.tif 000015