(57)【要約】  機械学習モデル（３００）を使用して偏りのあるデータを拒否するための方法（５００）は、偏りのない既知のデータ母集団を含むクラスタ訓練データセット（１３０）を受信するステップと、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタ（２１２）に分割するように、クラスタ化モデル（２１１）を訓練するステップとを含む。クラスタ訓練データセットの各クラスタはクラスタ重み（２１４）を含む。方法はまた、機械学習モデルのための訓練データセット（３０２）を受信するステップと、クラスタ化モデルに基づいて、機械学習モデルのための訓練データセットに対応する訓練データセット重み（２１８）を生成するステップとを含む。方法はまた、訓練データセット重みの各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップと、調節された訓練データセットを、偏りのない訓練データセット（２０６）として、機械学習モデルに提供するステップとを含む。
2021536067.tif 000002
【特許請求の範囲】
【請求項１】
方法（５００）であって、
データ処理ハードウェア（１１２）で、クラスタ訓練データセット（１３０）を受信するステップを含み、前記クラスタ訓練データセット（１３０）は偏りのない既知のデータ母集団を含み、前記方法はさらに、
前記データ処理ハードウェア（１１２）が、前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割するように、クラスタ化モデル（２１１）を訓練するステップを含み、前記クラスタ訓練データセット（１３０）の各クラスタ（２１２）はクラスタ重み（２１４）を含み、前記方法はさらに、
前記データ処理ハードウェア（１１２）で、機械学習モデル（３００）のための訓練データセット（３０２）を受信するステップと、
前記データ処理ハードウェア（１１２）が、前記クラスタ化モデル（２１１）に基づいて、前記機械学習モデル（３００）のための前記訓練データセット（３０２）に対応する訓練データセット重み（２１８）を生成するステップと、
前記データ処理ハードウェア（１１２）が、前記訓練データセット重み（２１８）の各訓練データセット重み（２１８）を、それぞれのクラスタ重み（２１４）と整合するように、および、調節された訓練データセット（２０８）を形成するように調節するステップと、
前記データ処理ハードウェア（１１２）が、前記調節された訓練データセット（２０８）を、偏りのない訓練データセット（２０６）として、前記機械学習モデル（３００）に提供するステップとを含む、方法。
【請求項２】
前記調節された訓練データセット（２０８）を前記偏りのない訓練データセット（２０６）として前記機械学習モデル（３００）に提供するステップは、前記偏りのない訓練データセット（２０６）を用いて前記機械学習モデル（３００）を訓練するステップを含む、請求項１に記載の方法（５００）。
【請求項３】
前記データ処理ハードウェア（１１２）が、前記偏りのない訓練データセット（２０６）を用いて前記機械学習モデル（３００）を訓練するステップと、
前記データ処理ハードウェア（１１２）で、少なくとも１つのそれぞれのデータ特性を含むサンプルデータセットを受信するステップと、
前記データ処理ハードウェア（１１２）が、訓練された前記機械学習モデル（３００）を使用して、受信された前記サンプルデータセットに基づいた、偏りのない予測値（３１０）を生成するステップとをさらに含む、請求項１または２に記載の方法（５００）。
【請求項４】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節するステップは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記それぞれのクラスタ重み（２１４）と整合させるステップと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）と整合するまで、前記訓練データセットからデータを除去するステップとを含む、請求項１〜３のいずれか１項に記載の方法（５００）。
【請求項５】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節するステップは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記それぞれのクラスタ重み（２１４）と整合させるステップと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）と整合するまで、前記訓練データセットからデータを複製するステップとを含む、請求項１〜４のいずれか１項に記載の方法（５００）。
【請求項６】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節するステップは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記クラスタ重み（２１４）と整合させるステップと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）よりも小さい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を増加させることを示す重要性重み（２２８）を関連付けるステップとを含む、請求項１〜５のいずれか１項に記載の方法（５００）。
【請求項７】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節するステップは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記クラスタ重み（２１４）と整合させるステップと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）よりも大きい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を減少させることを示す重要性重み（２２８）を関連付けるステップとを含む、請求項１〜６のいずれか１項に記載の方法（５００）。
【請求項８】
前記訓練データセット重み（２１８）の各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節するステップはさらに、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記対応するクラスタ重み（２１４）と整合させるステップと、
前記訓練データセット重み（２１８）が前記対応するクラスタ重み（２１４）よりも小さい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を増加させることを示す重要性重み（２２８）を関連付けるステップと、
前記訓練データセット重み（２１８）が前記対応するクラスタ重み（２１４）よりも大きい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を減少させることを示す重要性重み（２２８）を関連付けるステップとを含む、請求項１〜７のいずれか１項に記載の方法（５００）。
【請求項９】
前記クラスタ化モデル（２１１）を訓練するステップはさらに、
前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割するステップと、
前記偏りのない既知のデータ母集団の前記データ特性に基づいた前記クラスタ（２１２）の各クラスタ（２１２）について、前記偏りのない既知のデータ母集団のサイズに対するそれぞれのクラスタ（２１２）のサイズの比に基づいて、前記クラスタ化モデル（２１１）の各クラスタ（２１２）についての前記クラスタ重み（２１４）を判定するステップとを含む、請求項１〜８のいずれか１項に記載の方法（５００）。
【請求項１０】
教師なし機械学習アルゴリズムが、前記偏りのない既知のデータ母集団の前記データ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割する、請求項１〜９のいずれか１項に記載の方法（５００）。
【請求項１１】
システム（１００）であって、
データ処理ハードウェア（１１２）と、
前記データ処理ハードウェア（１１２）と通信しているメモリハードウェア（１１４）とを含み、前記メモリハードウェア（１１４）は、前記データ処理ハードウェア（１１２）上で実行されると前記データ処理ハードウェア（１１２）に動作を行なわせる命令を格納しており、前記動作は、
クラスタ訓練データセット（１３０）を受信することを含み、前記クラスタ訓練データセット（１３０）は偏りのない既知のデータ母集団を含み、前記動作はさらに、
前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割するように、クラスタ化モデル（２１１）を訓練することを含み、前記クラスタ訓練データセット（１３０）の各クラスタ（２１２）はクラスタ重み（２１４）を含み、前記動作はさらに、
機械学習モデル（３００）のための訓練データセット（３０２）を受信することと、
前記クラスタ化モデル（２１１）に基づいて、前記機械学習モデル（３００）のための前記訓練データセット（３０２）に対応する訓練データセット重み（２１８）を生成することと、
前記訓練データセット重み（２１８）の各訓練データセット重み（２１８）を、それぞれのクラスタ重み（２１４）と整合するように、および、調節された訓練データセット（２０８）を形成するように調節することと、
前記調節された訓練データセット（２０８）を、偏りのない訓練データセット（２０６）として、前記機械学習モデル（３００）に提供することとを含む、システム。
【請求項１２】
前記調節された訓練データセット（２０８）を前記偏りのない訓練データセット（２０６）として前記機械学習モデル（３００）に提供することは、前記偏りのない訓練データセット（２０６）を用いて前記機械学習モデル（３００）を訓練することを含む、請求項１１に記載のシステム（１００）。
【請求項１３】
前記動作はさらに、
前記偏りのない訓練データセット（２０６）を用いて前記機械学習モデル（３００）を訓練することと、
少なくとも１つのそれぞれのデータ特性を含むサンプルデータセットを受信することと、
訓練された前記機械学習モデル（３００）を使用して、受信された前記サンプルデータセットに基づいた、偏りのない予測値（３１０）を生成することとを含む、請求項１１または１２に記載のシステム（１００）。
【請求項１４】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節することは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記それぞれのクラスタ重み（２１４）と整合させることと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）と整合するまで、前記訓練データセットからデータを除去することとを含む、請求項１１〜１３のいずれか１項に記載のシステム（１００）。
【請求項１５】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節することは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記それぞれのクラスタ重み（２１４）と整合させることと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）と整合するまで、前記訓練データセットからデータを複製することとを含む、請求項１１〜１４のいずれか１項に記載のシステム（１００）。
【請求項１６】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節することは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記クラスタ重み（２１４）と整合させることと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）よりも小さい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を増加させることを示す重要性重み（２２８）を関連付けることとを含む、請求項１１〜１５のいずれか１項に記載のシステム（１００）。
【請求項１７】
各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節することは、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記クラスタ重み（２１４）と整合させることと、
前記訓練データセット重み（２１８）が前記それぞれのクラスタ重み（２１４）よりも大きい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を減少させることを示す重要性重み（２２８）を関連付けることとを含む、請求項１１〜１６のいずれか１項に記載のシステム（１００）。
【請求項１８】
前記訓練データセット重み（２１８）の各訓練データセット重み（２１８）を、前記それぞれのクラスタ重み（２１４）と整合するように調節することはさらに、各訓練データセット重み（２１８）について、
共通のデータ特性に基づいて、前記訓練データセット重み（２１８）を前記対応するクラスタ重み（２１４）と整合させることと、
前記訓練データセット重み（２１８）が前記対応するクラスタ重み（２１４）よりも小さい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を増加させることを示す重要性重み（２２８）を関連付けることと、
前記訓練データセット重み（２１８）が前記対応するクラスタ重み（２１４）よりも大きい場合、前記訓練データセット重み（２１８）に対応する訓練データに対する前記機械学習モデル（３００）の訓練を減少させることを示す重要性重み（２２８）を関連付けることとを含む、請求項１１〜１７のいずれか１項に記載のシステム（１００）。
【請求項１９】
前記クラスタ化モデル（２１１）を訓練する動作はさらに、
前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割することと、
前記偏りのない既知のデータ母集団の前記データ特性に基づいた前記クラスタ（２１２）の各クラスタ（２１２）について、前記偏りのない既知のデータ母集団のサイズに対するそれぞれのクラスタ（２１２）のサイズの比に基づいて、前記クラスタ化モデル（２１１）の各クラスタ（２１２）についての前記クラスタ重み（２１４）を判定することとを含む、請求項１１〜１８のいずれか１項に記載のシステム（１００）。
【請求項２０】
教師なし機械学習アルゴリズムが、前記偏りのない既知のデータ母集団の前記データ特性に基づいて、受信された前記クラスタ訓練データセット（１３０）をクラスタ（２１２）に分割する、請求項１１〜１９のいずれか１項に記載のシステム（１００）。
【発明の詳細な説明】
【技術分野】
【０００１】
技術分野
この開示は、機械学習モデルを使用して偏りのあるデータを拒否することに関する。
【背景技術】
【０００２】
背景
一般的に言えば、偏りとは、パラメータを過大評価または過小評価する統計値の傾向である。この点で、データの収集およびデータの分析は典型的には、何らかの固有の偏りを含む。これらの偏りは、収集および分析の方法、または、当該収集および分析を行なうエンティティ（主体）に起因する場合がある。たとえば、人間によって設計され行なわれたデータ研究が、特定の仮説、人間の設計制約（たとえば人間の能力）、サンプリング制約などを提供する場合がある。これらの要素を提供することにより、当該研究のデータ結果は、さまざまなサンプリング誤差、測定誤差、または、当該研究のための目標母集団を表わしていないサンプルにより広範に基づいた誤差を含む可能性がある。コンピュータ処理は、技術が人間の活動とは比べものにならない速度でデータを収集および分析することを可能にするため、データ処理手法は、偏りの問題を同等に克服しなければならない。さもなければ、特にバルクデータのためのデータ処理は、偏りの問題を増幅して、人間の活動によって生じる偏りとは同様に比べものにならない結果を生み出すおそれがある。
【発明の概要】
【課題を解決するための手段】
【０００３】
概要
この開示の１つの局面は、機械学習モデルを使用して偏りのあるデータを拒否するための方法を提供する。方法は、データ処理ハードウェアで、クラスタ訓練データセットを受信するステップを含み、クラスタ訓練データセットは偏りのない既知のデータ母集団（known unbiased population of data）を含む。方法はまた、データ処理ハードウェアが、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割するように、クラスタ化モデルを訓練するステップを含む。クラスタ訓練データセットの各クラスタはクラスタ重みを含む。方法はさらに、データ処理ハードウェアで、機械学習モデルのための訓練データセットを受信するステップと、データ処理ハードウェアが、クラスタ化モデルに基づいて、機械学習モデルのための訓練データセットに対応する訓練データセット重みを生成するステップとを含む。方法はまた、データ処理ハードウェアが、訓練データセット重みの各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップと、データ処理ハードウェアが、調節された訓練データセットを、偏りのない訓練データセットとして、機械学習モデルに提供するステップとを含む。
【０００４】
この開示の実現化例は、以下のオプションの機能のうちの１つ以上を含んでいてもよい。いくつかの実現化例では、調節された訓練データセットを偏りのない訓練データセットとして機械学習モデルに提供するステップは、偏りのない訓練データセットを用いて機械学習モデルを訓練するステップを含む。方法は、データ処理ハードウェアが、偏りのない訓練データセットを用いて機械学習モデルを訓練するステップを含んでいてもよく、または、データ処理ハードウェアで、少なくとも１つのそれぞれのデータ特性を含むサンプルデータセットを受信するステップを含んでいてもよい。ここで、方法はまた、データ処理ハードウェアが、訓練された機械学習モデルを使用して、受信されたサンプルデータセットに基づいた、偏りのない予測値を生成するステップを含んでいてもよい。
【０００５】
いくつかの例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させるステップと、訓練データセット重みがそれぞれのクラスタ重みと整合するまで、訓練データセットからデータを除去するステップとを含む。他の例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させるステップと、各訓練データセット重みがそれぞれのクラスタ重みと整合するまで、訓練データセットからデータを複製するステップとを含む。
【０００６】
いくつかの構成では、各訓練データセット重みについて、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップは、共通のデータ特性に基づいて、訓練データセット重みをクラスタ重みと整合させるステップを含む。訓練データセット重みがそれぞれのクラスタ重みよりも小さい場合、方法は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を増加させることを示す重要性重みを関連付けるステップを含んでいてもよい。それに加えて、またはそれに代えて、各訓練データセット重みについて、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップは、共通のデータ特性に基づいて、訓練データセット重みをクラスタ重みと整合させるステップを含んでいてもよい。ここで、訓練データセット重みがそれぞれのクラスタ重みよりも大きい場合、方法は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を減少させることを示す重要性重みを関連付けるステップを含んでいてもよい。
【０００７】
いくつかの実現化例では、訓練データセット重みの各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させるステップを含む。訓練データセット重みがそれぞれのクラスタ重みよりも小さい場合、方法は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を増加させることを示す重要性重みを関連付けるステップを含み、訓練データセット重みがそれぞれのクラスタ重みよりも大きい場合、方法は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を減少させることを示す重要性重みを関連付けるステップを含む。
【０００８】
いくつかの例では、クラスタ化モデルを訓練する場合、方法は、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割するステップを含む。この例では、偏りのない既知のデータ母集団のデータ特性に基づいたクラスタの各クラスタについて、方法は、偏りのない既知のデータ母集団のサイズに対するそれぞれのクラスタのサイズの比に基づいて、クラスタ化モデルの各クラスタについてのクラスタ重みを判定するステップを含む。いくつかの実現化例では、教師なし機械学習アルゴリズムが、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割する。
【０００９】
この開示の別の局面は、機械学習モデルを使用して偏りのあるデータを拒否するためのシステムを提供する。システムは、データ処理ハードウェアと、データ処理ハードウェアと通信しているメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を行なわせる命令を格納している。動作は、クラスタ訓練データセットを受信することを含み、クラスタ訓練データセットは偏りのない既知のデータ母集団を含む。動作はまた、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割するように、クラスタ化モデルを訓練することを含み、クラスタ訓練データセットの各クラスタはクラスタ重みを含む。動作はさらに、機械学習モデルのための訓練データセットを受信することと、クラスタ化モデルに基づいて、機械学習モデルのための訓練データセットに対応する訓練データセット重みを生成することとを含む。動作はまた、訓練データセット重みの各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節することと、調節された訓練データセットを、偏りのない訓練データセットとして、機械学習モデルに提供することとを含む。
【００１０】
この局面は、以下のオプションの機能のうちの１つ以上を含んでいてもよい。いくつかの構成では、調節された訓練データセットを偏りのない訓練データセットとして機械学習モデルに提供する動作は、偏りのない訓練データセットを用いて機械学習モデルを訓練することを含む。動作はまた、偏りのない訓練データセットを用いて機械学習モデルを訓練することと、少なくとも１つのそれぞれのデータ特性を含むサンプルデータセットを受信することと、機械学習モデルを使用して、受信されたサンプルデータセットに基づいた、偏りのない予測値を生成することとを含んでいてもよい。
【００１１】
いくつかの実現化例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節する動作はさらに、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させることと、訓練データセット重みがそれぞれのクラスタ重みと整合するまで、訓練データセットからデータを除去することとを含む。他の例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節する動作は、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させることと、各訓練データセット重みがそれぞれのクラスタ重みと整合するまで、訓練データセットからデータを複製することとを含む。
【００１２】
いくつかの例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節する動作は、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをクラスタ重みと整合させることを含む。この例では、それぞれの訓練データセット重みがそれぞれのクラスタ重みよりも小さい場合、動作は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を増加させることを示す重要性重みを関連付けることを含む。他の例では、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節する動作は、共通のデータ特性に基づいて、訓練データセット重みをクラスタ重みと整合させることを含んでいてもよい。この例では、それぞれの訓練データセット重みが対応するクラスタ重みよりも大きい場合、動作は、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を減少させることを示す重要性重みを関連付けることを含む。
【００１３】
それに加えて、またはそれに代えて、各訓練データセット重みを、それぞれのクラスタ重みと整合するように調節する動作は、各訓練データセット重みについて、共通のデータ特性に基づいて、訓練データセット重みをそれぞれのクラスタ重みと整合させることを含んでいてもよい。ここで、それぞれの訓練データセット重みがそれぞれのクラスタ重みよりも小さい場合、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を増加させることを示す重要性重みを関連付け、訓練データセット重みがそれぞれのクラスタ重みよりも大きい場合、訓練データセット重みに対応する訓練データに対する機械学習モデルの訓練を減少させることを示す重要性重みを関連付ける。
【００１４】
いくつかの構成では、クラスタ化モデルを訓練する動作は、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割することと、偏りのない既知のデータ母集団のデータ特性に基づいたクラスタの各クラスタについて、偏りのない既知のデータ母集団のサイズに対するそれぞれのクラスタのサイズの比に基づいて、クラスタ化モデルの各クラスタについてのクラスタ重みを判定することとを含んでいてもよい。いくつかの例では、教師なし機械学習アルゴリズムが、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセットをクラスタに分割する。
【００１５】
この開示の１つ以上の実現化例の詳細が、添付図面および以下の説明において述べられる。他の局面、特徴、および利点は、説明および図面から、および請求項から明らかになるであろう。
【００１６】
図面の説明
【図面の簡単な説明】
【００１７】
【図１】例示的な機械学習環境の概略図である。
【図２Ａ】偏り拒否モデルのための例示的な処理段階の概略図である。
【図２Ｂ】図２Ａの訓練段階中の例示的な偏り拒否モデルの概略図である。
【図２Ｃ】図２Ａの偏り防止（unbiasing）段階中の例示的な偏り拒否モデルの概略図である。
【図２Ｄ】図２Ａの偏り防止段階中に偏り拒否モデルによって行なわれる例示的な調節の概略図である。
【図２Ｅ】図２Ａの偏り防止段階中に偏り拒否モデルによって行なわれる例示的な調節の概略図である。
【図３】機械学習モデルが偏り拒否モデルから偏りのない訓練データを取り入れるための例示的な処理段階の概略図である。
【図４】データセットについての偏りスコアを生成するための例示的な偏り採点モデルの概略図である。
【図５】機械学習環境内の機械学習モデルの偏りを防止するための例示的な方法のフロー図である。
【図６】ここに説明されるシステムおよび方法を実現するために使用され得る例示的なコンピューティングデバイスの概略図である。
【００１８】
さまざまな図面における同じ参照符号は、同じ要素を示す。
【発明を実施するための形態】
【００１９】
詳細な説明
図１は、機械学習環境１０の一例である。機械学習環境１０は一般に、ネットワーク１２０を介してアクセス可能なリソース１１０を有する分散型システム１００（たとえば、クラウド環境などのリモートシステム）と、偏り拒否モデル２００と、機械学習モデル３００とを含む。リソース１１０は、偏り拒否モデル２００および／または機械学習モデル３００を訓練する際に使用するために、ならびに、ここに開示される機械学習機能を行なうために、偏り拒否モデル２００および／または機械学習モデル３００にアクセス可能である。分散型システム１００は、偏り拒否モデル２００および／または機械学習モデル３００を動作させることができるコンピューティングリソース（たとえばリソース１１０）を有する任意のコンピュータ処理システムであってもよい。いくつかの例では、偏り拒否モデル２００および／または機械学習モデル３００は、ネットワーク１２０を介して分散型システム１００にアクセス可能である、または他の態様で分散型システム１００と通信しているデバイス上で動作する。たとえば、デバイスは、分散型システム１００に関連付けられたウェブベースのアプリケーションを実行してもよい。
【００２０】
一般に、分散型システム１００のリソース１１０は、ハードウェアリソース１１０ｈ、１１０ｈ１−ｉと、ソフトウェアリソース１１０ｓ、１１０ｓ１−ｉとを含んでいてもよい。ハードウェアリソース１１０ｈは、データ処理ハードウェア１１２と、メモリハードウェア１１４とを含む。ソフトウェアリソース１１０ｓは、ソフトウェアアプリケーション、ソフトウェアサービス、アプリケーションプログラミングインターフェイス（application programming interface：ＡＰＩ）などを含んでいてもよい。ソフトウェアリソース１１０ｓは、ハードウェアリソース１１０ｈ上に存在して（たとえば、メモリハードウェア１１４に格納されて）いてもよく、または、データ処理ハードウェア１１２上で実行される命令を含んでいてもよい。
【００２１】
ソフトウェアアプリケーション（すなわち、ソフトウェアリソース１１０ｓ）とは、コンピューティングデバイスにタスクを行なわせるコンピュータソフトウェアを指していてもよい。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれてもよい。例示的なアプリケーションは、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、文書処理アプリケーション、表計算アプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションを含むものの、それらに限定されない。
【００２２】
メモリハードウェア１１４は、プログラム（たとえば命令のシーケンス）またはデータ（たとえばプログラム状態情報）を、データ処理ハードウェア１１２による使用のために一時的または永続的に格納するために使用される物理デバイスであり得る非一時的メモリである。メモリハードウェア１１４は、揮発性および／または不揮発性アドレス可能半導体メモリであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読出専用メモリ（read-only memory：ＲＯＭ）／プログラマブル読出専用メモリ（programmable read-only memory：ＰＲＯＭ）／消去可能プログラマブル読出専用メモリ（erasable programmable read-only memory：ＥＰＲＯＭ）／電子的消去可能プログラマブル読出専用メモリ（electronically erasable programmable read-only memory：ＥＥＰＲＯＭ）（たとえば、典型的にはブートプログラムなどのファームウェアのために使用される）、およびディスクまたはテープを含むものの、それらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ（random access memory：ＲＡＭ）、ダイナミックランダムアクセスメモリ（dynamic random access memory：ＤＲＡＭ）、スタティックランダムアクセスメモリ（static random access memory：ＳＲＡＭ）、および相変化メモリ（phase change memory：ＰＣＭ）を含むものの、それらに限定されない。
【００２３】
図示された例では、偏り拒否モデル２００は、機械学習モデル３００に悪影響を及ぼさないように偏りの問題に対処するために、リソース１１０とともに動作する。言い換えれば、偏り拒否モデル２００は、偏りのあるデータを含む機械学習（machine learning：ＭＬ）訓練データセット３０２に基づいて機械学習モデル３００を訓練するのを防止するように構成される。これは、ＭＬ訓練データセット３０２に関連付けられているものの、当該偏りのあるデータが除去された、偏りのない訓練データセット２０６を、ＭＬモデル３００を訓練する際に使用するために生成／出力することによる。ＭＬ訓練データセット３０２内の偏りのあるデータに基づいて機械学習モデル３００を訓練するのを防止することによって、機械学習モデル３００は、当該偏りのあるデータによって影響されず、したがって、推論中に偏りのない予測値３１０（図３）を生成することができる。このため、偏り拒否モデル２００は、ＭＬモデル３００を訓練する際に使用するための偏りのない訓練データセット２０６を出力／生成することによって、ＭＬモデル３００を訓練する前にＭＬ訓練データセット３０２内の偏りのあるデータを除去／調節するフィルタに対応する。
【００２４】
図２Ａは、１番目の訓練段階２０２と、１番目の訓練段階２０２に続く２番目の偏り防止段階２０４との実行中の偏り拒否モデル２００を示す。訓練段階２０２中、偏り拒否モデル２００は、クラスタ訓練データセット１３０を受信し、クラスタ重み２１４を出力する。偏り防止段階２０４中、偏り拒否モデル２００は、ＭＬ訓練データセット３０２を受信し、訓練段階２０２から出力されたクラスタ重み２１４を使用して、ＭＬ訓練データセット３０２から偏りのあるデータが除去された、偏りのない訓練データセット２０６を出力する。
【００２５】
ここで、「重み」（たとえば、偏りクラスタ重み２１４、２１４ａ〜ｎ、および訓練データセット重み２１８、２１８ａ〜ｎ）という用語は、クラスタ化のプロセスから形成された独自のクラスタにマッピングする、比などの値を指す。母集団については、各クラスタは、母集団の一部に関していてもよく、このため、その一部の値は、クラスタ（たとえば、母集団のサブセット）に関連付けられた重みであってもよい。言い換えれば、母集団をサブセットにクラスタ化することによって、各サブセットは、母集団に対する特性（たとえば重み）を本質的に有する。より一般的には、偏りクラスタ２１２または訓練クラスタ２１６などのクラスタとは、人々に関する訓練データをグループ化するために使用され得る、当該人々のグループ化を指す。人々のグループ化は、自分の訓練データにおける連続的な範囲の変数値を共有する人々を含んでいてもよい（たとえば、２５〜２７才のアジア系女性についてのクラスタは、１人の２５才のアジア系女性での１つの訓練例と、１人の２６才のアジア系女性での別の訓練例と、この一組の値を共有する他の訓練例とを含み得る）。
【００２６】
他の実現化例では、クラスタは、自分の訓練データがクラスタ化アルゴリズム（たとえばクラスタ化モデル）によってクラスタ化される人々を含む。クラスタ化アルゴリズムは、人々（または人々の特性）の間の距離がより短いことに基づいて類似しているとアルゴリズムが考えるグループに、人々を入れる。より短い距離によってグループ化することは、多くの変数値がそれぞれの母集団において増加するにつれてクラスタの数が指数関数的に増加することを回避し得る。クラスタ化は、訓練データ（たとえば人々）間の距離を判定するために、重要な変数（たとえば偏り変数）および／または他の変数にしたがって行なわれてもよい。たとえば、クラスタ化は他の変数に基づいて行なわれるが、データをクラスタ化するための最終判定は、重要な変数（たとえば偏り変数）に基づいている。一例として、クラスタ化プロセスは、１８才および１９才の男性のオーストリア人およびドイツ人をともに単一のクラスタにグループ化する。なぜなら、それは、規定された測定基準（たとえば、使用言語、関連する関心事、ソーシャルネットワークでつながるかまたは同じ組織のメンバーである頻度）に基づいて、類似性（たとえば、互いの間のより短い距離）を認識するためである。広範囲の潜在的なクラスタ化アプローチを示す別の例として、クラスタ化プロセスは、（１）１８才のオーストリア人、（２）１８才のドイツ人、（３）１９才のオーストリア人、および（４）１９才のドイツ人というカテゴリーをカバーする４つの別個のグループを有し得る。
【００２７】
図２Ａをさらに参照して、訓練段階２０２中、偏り拒否モデル２００は、偏りのない既知のデータ母集団に対応するクラスタ訓練データセット１３０を受信する。偏りのない既知のデータ母集団は、偏りに敏感な変数（bias sensitive variable）の正確な確率分布を有する目標母集団であってもよい。偏りのない既知のデータ母集団を用いて、偏り拒否モデル２００は、偏りに敏感な変数に関連する不釣り合いなデータ量を有するデータを用いた訓練を回避する。偏りに敏感な変数とは、目標母集団のデータサンプルにおいて過大表現または過小表現されると、目標母集団のサンプリングからの偏りのある予測の可能性の増加をもたらす変数を指す。言い換えれば、偏りに敏感な変数の正確な表現からの若干のずれが、歪んだ予測分析をもたらす可能性がある。したがって、機械学習モデル３００などの機械学習モデルが、偏りに敏感な変数の正確な訓練データセットなしで構成される（すなわち訓練される）場合、機械学習モデルは、偏りのある予測、および偏りのあるコンピューティング分析論を本質的に生成するかもしれない。偏りに敏感な変数のいくつかの例は、人種、ジェンダー、性別、年齢、国籍、信仰している宗教、所属する政党、豊かさなどを含む。
【００２８】
いくつかの例では、目標母集団は、所与の変数または一組の変数についてのデータセット全体である。ここで、偏り拒否モデル２００および／または機械学習モデル３００は、目標母集団（たとえば、クラスタ訓練データセット１３０に対応する母集団）に対応して訓練されても、および／または予測を行なってもよい。基本的な一例として、機械学習モデル３００は、カリフォルニアの人口である目標母集団についての値を予測するように構成されてもよい。カリフォルニアの人口に関する予測を正確に行なうために、各モデル２００、３００は、カリフォルニアの人口に関連付けられたデータに基づいて訓練する。
【００２９】
受信されたクラスタ訓練データセット１３０に基づいて偏り拒否モデル２００を訓練した後で、偏り拒否モデル２００は、偏り防止段階２０４中に、ＭＬモデル３００を訓練する際に使用するために意図されたＭＬ訓練データセット３０２を調節するように構成される。ＭＬモデル３００を訓練する前にＭＬ訓練データセット３０２を調節することによって、偏り拒否モデル２００は、偏りのない訓練データセット２０６を生成し、偏りのない訓練データセット２０６をＭＬモデル３００に提供する。言い換えれば、偏り防止段階２０４中、偏り拒否モデル２００は、訓練段階２０２中のクラスタ訓練データセット１３０に基づく偏り拒否モデル２００の訓練に基づいて、（たとえば偏りのあるデータを潜在的に含み得る）ＭＬ訓練データセット３０２を、偏りのない訓練データセット２０６に変換する。いくつかの例では、偏り拒否モデル２００は、２つ以上のクラスタ訓練データセット１３０を用いて訓練する。たとえば、偏り拒否モデル２００は、新しいまたは更新されたクラスタ訓練データセット１３０への経時変化を連続的に勘案するように、当該クラスタ訓練データセット１３０に基づいて動的に訓練する。訓練段階２０２および偏り防止段階２０４は、連続的にまたは同時に実行されてもよく、またはそれら双方の何らかの組合せであってもよい。
【００３０】
図２Ｂは、訓練段階２０２中の偏り拒否モデル２００の一例を示す。ここで、偏り拒否モデル２００は、偏りのない既知のデータ母集団を含むクラスタ訓練データセット１３０を受信する。しかしながら、いくつかの実現化例では、偏り拒否モデル２００のアドミニストレータ、または偏り拒否モデル２００へのアクセスを有するユーザ（たとえば、特定の一組の偏り特徴を懸念するユーザ）などのエンティティが、偏りに敏感な変数に対応する偏り特徴を規定してもよい。ここで、偏り拒否モデル２００のエンティティまたは設計者は、偏り特徴および／または偏りに敏感な変数を偏り拒否モデル２００に供給しない。むしろ、偏り拒否モデル２００は、偏りのあるデータ、または偏りのないデータを認識するために、分割器２１０を介してクラスタモデル２１１を使用してクラスタ訓練データセット１３０をモデル化する。いくつかの構成では、クラスタ訓練データセット１３０は、目標母集団データセット全体を含む。たとえば、偏り拒否モデル２００は、米国についての人口統計データの完全なデータセットを、クラスタ訓練データセット１３０として受信してもよい。
【００３１】
偏り拒否モデル２００は、分割器２１０と、調節器２２０とを含む。分割器２１０は、クラスタモデル２１１（「クラスタ化モデル２１１」とも呼ばれる）を使用してデータセットをクラスタ２１２、２１２ａ〜ｎに分割するように構成される。訓練段階２０２中、分割器２１０は、偏りのない既知のデータ母集団のデータ特性（図２Ｂに「ＤＣａ〜ｎ」として示す）に基づいて、受信されたクラスタ訓練データセット１３０をクラスタ２１２、２１２ａ〜ｎに分割するように、クラスタ化モデル２１１を訓練する。簡潔にするために、これらのデータ特性は、クラスタ訓練データセット１３０に関連する目標母集団の少なくとも１つのそれぞれの偏りに敏感な変数を含む。言い換えれば、いくつかのクラスタ２１２は、データ特性としての少なくとも１つのそれぞれの偏りに敏感な変数に関連付けられた偏りクラスタであるかもしれず、一方、他のクラスタ２１２は、偏りに敏感な変数に関連していないデータ特性を識別する。いくつかの実現化例では、クラスタモデル２１１は、クラスタモデル２１１が訓練段階２０２中に受信されたクラスタ訓練データセット１３０に基づいて教師なし学習を行なうように、クラスタ化アルゴリズムを含む。教師なし学習とは、データに関連付けられたラベル（たとえば、予めラベル付けされた偏りに敏感な変数）をまったく含まないデータを使用して、学習が生じるプロセスを指す。受信されたクラスタ訓練データセット１３０に基づいて教師なし学習を行なうことによって、クラスタモデル２１１は、データ特性の点で（偏りのない既知のデータ母集団によって）偏りのないデータセットについての確率分布を識別するように訓練されるようになる。たとえば、クラスタモデル２１１は、偏りに敏感な変数および／または偏りに敏感な変数の組合せを表わすデータ特性を用いて、少なくとも１つのクラスタ２１２を生成するように訓練される。
【００３２】
一例として、クラスタモデル２１１は、人種、ジェンダー、および年齢という偏りに敏感な変数の各々を、偏りのない既知の母集団のデータ特性としてクラスタ化する。ここで、各クラスタ２１２はしたがって、対応する偏りに敏感な変数の組合せに対応していてもよい。一例として、人種、ジェンダー、および年齢というデータ特性を用いて、少なくとも１つのクラスタ２１２は、１つのタイプの人種（たとえば黒人、白人、ヒスパニック系など）、１つのタイプのジェンダー（たとえば男性、女性、トランスジェンダー）、および１つのタイプの年齢層（たとえば１９〜３０才、３１〜４４才、４５〜５９才、６０才以上など）に対応する。分割器２１０がクラスタモデル２１１を使用してクラスタ訓練データセット１３０をクラスタ２１２に分割する場合、分割器２１０はまた、クラスタ２１２、２１２ａ〜ｎが、関連付けられたクラスタ重み２１４、２１４ａ〜ｎを有するように、各クラスタ２１２について対応するクラスタ重み２１４を判定するように構成される。いくつかの例では、クラスタ重み２１４は、目標母集団（たとえば、クラスタ訓練データセット１３０の母集団）に対する、クラスタ２１２についての母集団比率（population fraction）を表わす。たとえば、クラスタ重み２１４は、クラスタ訓練データセット１３０の目標母集団のサイズに対するそれぞれのクラスタ２１２のサイズの比を表わしていてもよい。いくつかの例では、各クラスタ重み２１４を判定するために、分割器２１０は、各クラスタ２１２の母集団比率を判定し、各母集団比率を全クラスタ２１２の最大母集団比率で除算する（たとえば、各クラスタ重み２１４は１よりも小さい）。他の例では、各クラスタ重み２１４を判定するために、分割器２１０は、各クラスタ２１２の母集団比率を判定し、各母集団比率を全クラスタ２１２の最小母集団比率で除算する（たとえば、各クラスタ重み２１４は１よりも大きい）。
【００３３】
いくつかの構成では、分割器２１０は、訓練段階２０２中、クラスタ２１２についてのクラスタ重み２１４を調節器２２０に通信する。たとえば、調節器２２０は、クラスタ重み２１４のデータストア２２２を含む。他の例では、分割器２１０は、偏り防止段階２０４中に調節器２２０がアクセスするために、クラスタ重み２１４を（たとえば分割器２１０のデータストアに）格納する。
【００３４】
図２Ｃは、偏り防止段階２０４中の偏り拒否モデル２００の一例を示す。偏り防止段階２０４中、偏り拒否モデル２００は、ＭＬモデル３００を訓練する際に使用するために意図されたＭＬ訓練データセット３０２を受信する。たとえば、訓練データセット３０２は、潜在的に偏りがあるかもしれない（たとえば、偏りのあるデータを含むかもしれない）未処理の訓練データセットを含むかもしれない。いくつかの実現化例では、訓練データセット３０２は、目標母集団のサンプルであり、そのため、目標母集団の偏りに敏感な変数１３２を不正確に反映するかもしれない。たとえば、目標母集団は、白人が２５％という人種構成を有するかもしれず、一方、訓練データセット３０２は、白人が４５％というサンプリング人種構成を示すかもしれない。このため、目標母集団の偏りに敏感な変数を不正確に反映するＭＬ訓練データ３０２に基づいてＭＬモデル３００を訓練するのを防止するために、偏り拒否モデル２００は、偏り防止段階２０４中に分割器２１０および調節器２２０を用いてこの偏り（たとえば２０％の差）を調節しようと努める。
【００３５】
分割器２１０が図２Ｂの訓練段階２０２中に偏り訓練データセット１３０を偏りクラスタ２１２に分割する方法と同様に、分割器２１０は、偏り防止段階２０４中に、受信されたＭＬ訓練データセット３０２を訓練クラスタ２１６に分割するように構成される。分割器２１０は、訓練データセット３０２を訓練されたクラスタモデル２１１に提供することによって、訓練データセット３０２を分割する。訓練段階２０２からの訓練に基づいて、クラスタモデル２１１は、訓練データセット３０２などのデータセットをクラスタ（たとえば、クラスタ２１２ａ〜ｎ、または訓練クラスタ２１６ａ〜ｎ）に分割する方法を学習済みである。偏り防止段階２０４中、クラスタモデル２１１は、機械学習モデル３００のために意図された、受信された訓練データセット３０２に基づいて、訓練クラスタ２１６、２１６ａ〜ｎを生成する。ここで、少なくとも１つの訓練クラスタ２１６は、目標母集団の少なくとも１つの対応する偏りに敏感な変数に関連付けられる。分割器２１０はさらに、分割された訓練クラスタ２１６が、関連付けられた訓練データセット重み２１８を含むように、分割された各訓練クラスタ２１６について、対応する訓練データセット重み２１８、２１８ａ〜ｎを生成するように構成される。いくつかの例では、それぞれの訓練データセット重み２１８は、訓練データセット３０２に関連付けられたサンプル母集団に対する、訓練クラスタ２１６についての母集団比率を表わす。たとえば、訓練データセット重み２１８は、訓練データセット３０２のサンプル母集団のサイズに対するそれぞれの訓練クラスタ２１６のサイズの比を表わしていてもよい。いくつかの例では、各訓練データセット重み２１８を判定するために、分割器２１０は、各訓練クラスタ２１６の母集団比率を判定し、各母集団比率を訓練クラスタ２１６の最大母集団比率で除算する（たとえば、各訓練データセット重み２１８は１よりも小さい）。他の例では、各訓練データセット重み２１８を判定するために、分割器２１０は、各訓練クラスタ２１６の母集団比率を判定し、各母集団比率を訓練クラスタ２１６ａ〜ｎの最小母集団比率で除算する（たとえば、各訓練データセット重み２１８は１よりも大きい）。
【００３６】
調節器２２０は、目標母集団のデータ特性（すなわち、偏りに敏感な変数）の確率分布と整合するために、訓練データセット重み２１８を調節するように構成される。いくつかの実現化例では、調節器２２０は、訓練データセット重み２１８をクラスタ重み２１４と比較することによって訓練データセット重み２１８を調節するプロセス２２６を実行する。たとえば、図２Ｃ〜２Ｅは、調節器２２０が、クラスタ重みデータストア２２２からのクラスタ重み２１８と、訓練重みデータストア２２４からの訓練データセット重み２１８とを検索して比較し、比較に基づいて訓練データセット重み２１８を調節するために、プロセス２２６を実行することを示す。たとえば、それぞれの訓練データセット重み２１８とクラスタ重み２１４との相対的な差に基づいて、調節器２２０は、それぞれの訓練データセット重み２１８を、対応するクラスタ重み２１４と整合するように調節してもよい。したがって、訓練データセット重み２１８を調節するために調節器２２０によって実行されるプロセス２２６は、調節された訓練データセット重みを生成／出力し、または、より一般的には、ＭＬモデル３００を訓練するための偏りのない訓練データセット２０６を形成する調節された訓練データセット２０８を生成／出力する。
【００３７】
いくつかの実現化例では、調節器２２０は、まず、偏りに敏感な変数などの整合するデータ特性に基づいて、１つ以上の訓練データセット重み２１８ａ〜ｎを１つ以上のクラスタ重み２１４ａ〜ｎと整合させることによって、プロセス２２６を実行する。たとえば、訓練データセット重み２１８とクラスタ重み２１４とが各々、共通のデータ特性（たとえば、偏りに敏感な変数）またはデータ特性の組合せを共有する場合、調節器２２０は、訓練データセット重み２１８を、整合する（すなわち、対応する）クラスタ重み２１４を用いて調節し、対応する調節された訓練データセット重みおよび／または調節された訓練データセット２０８を出力してもよい。
【００３８】
図２Ｄを参照して、調節器２２０は、共通のデータ特性（たとえば、偏りに敏感な変数）またはデータ特性の組合せを共有する訓練データセット重み２１８と偏りクラスタ重み２１４とを比較する。ＭＬ訓練データセット３０２が偏りに敏感な変数を過大表現する場合、訓練データセット重み２１８は、偏りに敏感な変数に対応するデータ特性について、クラスタ重み２１４を上回る（たとえば、クラスタ重み２１４よりも大きい）（たとえば、訓練データセット３０２は、白人が２０％多い人種構成を示す）。この過大表現に応答して、調節器２２０によって実行されるプロセス２２６は、訓練データセット重み２１８がクラスタ重み２１４と整合するまで訓練データセット３０２からデータを除去することによって訓練データセット重み２１８を調節するデータ除去調節プロセスに対応してもよい。一方、訓練データセット３０２が偏りに敏感な変数を過小表現する場合、訓練データセット重み２１８は、偏りに敏感な変数に対応するデータ特性について、クラスタ重み２１４よりも小さい（たとえば、訓練データセット３０２は、黒人が２０％少ない人種構成を示す）。この過小表現に応答して、調節器２２０上で実行されるプロセス２２６は、訓練データセット重み２１８がクラスタ重み２１４と整合するまで訓練データセット３０２からデータを複製することによって訓練データセット重み２１８を調節するデータ複製プロセスに対応してもよい。いくつかの実現化例では、調節器２２０は、訓練データセット３０２の完全性を維持するために、訓練データセット３０２からデータをランダムに複製または除去する。これは、ランダムではない選択的な複製または除去に関連付けられたさらなる偏りを回避し得る。
【００３９】
訓練データセット重み２１８が偏りクラスタ重み２１４と整合するまで訓練データセット３０２からデータを除去するかまたは訓練データセット３０２にデータを追加する図２Ｃのプロセス２２６とは対照的に、図２Ｅは、各訓練データセット重み２１８に関連付けられた重要性重み２２８を調節する調節器２２０上で実行されるプロセス２２６を示す。具体的には、プロセスは、重要性重み２２８を、関連付けられた訓練データセット重み２１８に対応する訓練データセット３０２のデータに関連付ける。重要性重み２２８は、機械学習モデル３００を訓練しながら、訓練データセット重み２１８に対応する基礎的データを提供するための重みがどれぐらいかを理解するために、機械学習モデル３００の訓練段階３０４（図３）への表示を提供する。いくつかの例では、訓練データセット重み２１８がクラスタ重み２１４よりも大きい場合、調節器２２０は、それぞれの訓練データセット重み２１８に対応する訓練データに対する機械学習モデル３００の訓練を減少させることを示す重要性重み２２８を関連付ける。他の例では、訓練データセット重み２１８がクラスタ重み２１４よりも小さい場合、調節器２２０は、それぞれの訓練データセット重み２１８に対応する訓練データに対する機械学習モデル３００の訓練を増加させることを示す重要性重み２２８を関連付ける。
【００４０】
図２Ａ〜２Ｅによって示すように、偏り拒否モデル２００は、機械学習モデル３００を訓練するための偏りのない訓練データセット２０６を生成する。図３は、機械学習モデル３００が偏りのない訓練データセット２０６に基づいて訓練する一例である。機械学習モデル３００などの機械学習モデルは一般に、データセットおよび結果セットに基づいて教えられ（または訓練され）、当該データセットに類似した入力データに基づいてそれ自体の出力を予測する。いくつかの実現化例では、偏り拒否モデル２００と同様に、機械学習モデル３００はまず、訓練段階３０４中に訓練を受け、次に、サンプルデータセット３０８を入力として受信し、偏りのない予測値３１０を出力する予測段階（たとえば推論）３０６を経る。予測段階３０６中、機械学習モデル３００は、少なくとも１つの偏りに敏感な変数を含むサンプルデータセットなどのサンプルデータセット３０８を受信し、偏りのない訓練データセット２０６に基づいて訓練された関連付けられた機械学習機能性を利用して、受信されたサンプルデータセット３０８に基づいた、偏りのない予測値３１０を生成する。
【００４１】
いくつかの例では、機械学習モデル３００は、偏りのない２つ以上の訓練データセット２０６を用いて訓練する。たとえば、機械学習モデル３００は、動作中、動的に変化するデータセットを連続的に勘案するように動的に訓練する。言い換えれば、訓練段階３０４および予測段階３０６は、連続的にまたは同時に実行されてもよく、またはそれら双方の何らかの組合せであってもよい。
【００４２】
図４は、偏り採点モデル４００の一例である。偏り採点モデル４００は、偏り拒否モデル２００とともに、または偏り拒否モデル２００とは別々に使用されてもよい。たとえば、偏り採点モデル４００は、機械学習モデル３００を訓練するよう意図された訓練データセット３０２を、当該訓練データセット３０２を偏り拒否モデル２００に提供する前に評価してもよい（すなわち、これらのモデル２００、３００は、偏り採点モデル４００に相談する）。これらの例では、偏り採点モデル４００が、訓練データセット３０２は偏りがあり過ぎて機械学習モデル３００の訓練を始められないことを示して、訓練データセット３０２を拒否した場合、偏り採点モデル４００は、２Ａ〜２Ｅを参照して上述されたように、拒否された訓練データセット４２６の偏りを防止し、偏りのない訓練データセット２０６を形成するために、拒否された訓練データセット３０２を偏り拒否モデル２００に通信してもよい。
【００４３】
偏り拒否モデル２００、クラスタモデル２１１、および／または機械学習モデル３００と同様に、偏り採点モデル４００は、データセットを採点するように偏り採点モデル４００を訓練するための訓練段階４０２を経る。そして、いったん訓練されると、採点段階４０４中に、訓練段階４０２からの訓練に基づいてデータセットを採点する。訓練段階４０２中、偏り採点モデル４００は、１つ以上の偏り採点訓練データセット４１０を受信する。各偏り採点訓練データセット４１０は、偏りのあるデータ４１２および／または偏りのないデータ４１４などのデータと、偏りスコア４１６とを含む。たとえば、偏りスコア４１６は、データセット内の偏りの数値表現である。いくつかの例では、偏りスコア４１６および／または偏り採点訓練データセット４１０は、採点者１４０から生じる。採点者１４０は、機械学習環境１０内のアドミニストレータ（たとえば、モデル２００、２１１、３００のアドミニストレータ）、または、機械学習モデル３００での偏りを懸念するユーザであってもよい。いくつかの例では、採点者１４０は、２つ以上のエンティティ／ソース（すなわちコミッティ）、あるいは、データセットをコンパイルおよび／または採点するように訓練された別の機械学習モデルである。訓練段階４０２中、偏り採点モデル４００は、１つ以上の偏り採点訓練データセット４１０を受信し、データセットについての偏りスコア４１６を生成することを学習する。
【００４４】
いったん訓練されると、または、偏り採点モデル４００が採点段階４０４と並行して絶えず訓練する場合、偏り採点モデル４００は、機械学習モデル３００のために意図された訓練データセット３０２を受信する（たとえば傍受する）。その訓練に基づいて、偏り採点モデル４００は、偏り採点モデル４００が訓練データセット３０２についての偏りスコア４１６を生成する採点プロセス４２０を行なう。採点プロセス４２０の一環として、偏り採点モデル４００は、訓練データセット３０２についての偏りスコア４１６がスコアしきい値４２２を満たすかどうかを判定する。ここで、スコアしきい値４２２は、機械学習モデル３００での予測のために、データセットには偏りがないかまたは無視できるほど小さいという信頼度を示す。たとえば、スコアしきい値４２２は、受け入れ可能な偏りスコア値である。
【００４５】
訓練データセット３０２の偏りスコア４１６がスコアしきい値４２２を満たす（たとえば、受け入れ可能な偏りスコア値を上回る）場合、偏り採点モデル４００は、訓練データセット３０２を、承認された訓練データセット４２４として承認する。いくつかの例では、承認された訓練データセット４２４は、機械学習モデルが（たとえば図３に示す）偏りのない予測値３１０を生成し始めるように、機械学習モデル３００によって認識可能な承認指標を含む。訓練データセット３０２の偏りスコア４１６がスコアしきい値４２２を満たさない（たとえば、受け入れ可能な偏りスコア値よりも小さい）場合、偏り採点モデル４００は、訓練データセット３０２を拒否する。拒否された訓練データセット４２６は、拒否された訓練データセット３０２を用いて訓練しないように機械学習モデル３００に通知するための拒否指標を含んでいてもよい。図４に点線のボックスおよび矢印によって示すように、偏り採点モデル４００は、２Ａ〜２Ｅを参照して上述されたように、偏り拒否モデル２００が拒否された訓練データセット３０２を偏りのない訓練データセット２０６に変換するように、拒否された訓練データセット３０２を偏り拒否モデル２００に通信（すなわち提供）してもよい。
【００４６】
偏り拒否モデル２００、機械学習モデル３００、および／または偏り採点モデル４００は、ここに説明される任意のモデル２００、３００、４００の機能性を実行するために少なくとも１つの機械学習アルゴリズムを採用する任意のタイプの機械学習モデル（たとえば、教師あり、教師なし、強化、アンサンブル／決定木、ディープラーニング、ニューラルネットワーク、再帰的、線形など）であってもよい。おおまかに言えば、機械学習アルゴリズムは、教師あり学習、教師なし学習、アクティブラーニング、または、これらのタイプの学習アルゴリズムのいくつかのハイブリッドの組合せに関連していてもよい。これらの広範なアルゴリズムのいくつかの具体例は、線形回帰アルゴリズム、ロジスティック回帰アルゴリズム、決定木ベースのアルゴリズム、サポートベクトルマシンアルゴリズム、単純ベイズ分類器、ｋ最近傍アルゴリズム、次元縮小アルゴリズム、勾配ブースティングアルゴリズムなどといった機械学習アルゴリズムを含む。
【００４７】
図５は、機械学習環境１０内の機械学習モデル３００の偏りを防止するための動作を有する例示的な方法５００である。動作５０２で、方法５００は、クラスタ訓練データセット１３０を受信する。クラスタ訓練データセット１３０は、偏りのない既知のデータ母集団を含む。動作５０４で、方法５００は、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセット１３０セットをクラスタ２１２に分割するように、クラスタ化モデル２１１を訓練する。クラスタ２１２ａ〜ｎの各クラスタ２１２は、クラスタ重み２１４を含む。動作５０６で、方法５００は、機械学習モデル３００のための訓練データセット３０２を受信する。動作５０８で、方法５００は、クラスタ化モデル２１１に基づいて、機械学習モデル３００のための訓練データセット３０２に対応する訓練データセット重み２１８ａ〜ｎを生成する。動作５１０で、方法５００は、訓練データセット重み２１８ａ〜ｎの各訓練データセット重み２１８を、それぞれのクラスタ重み２１４と整合するように調節する。動作５１２で、方法５００は、調節された訓練データセット２０８を、偏りのない訓練データセット２０６として、機械学習モデル３００に提供する。
【００４８】
図６は、この文書で説明されるシステムおよび方法（たとえば、偏り拒否モデル２００および／または機械学習モデル３００）を実現するために使用され得る例示的なコンピューティングデバイス６００の概略図である。コンピューティングデバイス６００は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータといった、さまざまな形態のデジタルコンピュータを表わすよう意図されている。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は単なる例示であることが意図されており、この文書で説明される、および／または請求項に記載のこの発明の実現化例を限定するよう意図されてはいない。
【００４９】
コンピューティングデバイス６００は、プロセッサ６１０と、メモリ６２０と、記憶装置６３０と、メモリ６２０および高速拡張ポート６５０に接続している高速インターフェイス／コントローラ６４０と、低速バス６７０および記憶装置６３０に接続している低速インターフェイス／コントローラ６６０とを含む。コンポーネント６１０、６２０、６３０、６４０、６５０、および６６０の各々は、さまざまなバスを使用して相互接続されており、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。プロセッサ６１０は、コンピューティングデバイス６００内で実行される命令を処理可能であり、これらの命令は、グラフィカルユーザインターフェイス（graphical user interface：ＧＵＩ）のためのグラフィック情報を、高速インターフェイス６４０に結合されたディスプレイ６８０などの外部入出力デバイス上に表示するために、メモリ６２０内または記憶装置６３０上に格納された命令を含む。他の実現化例では、複数のプロセッサおよび／または複数のバスが、複数のメモリおよび複数のタイプのメモリとともに適宜使用されてもよい。また、複数のコンピューティングデバイス６００が接続されてもよく、各デバイスは（たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして）必要な動作の部分を提供する。
【００５０】
メモリ６２０は、情報をコンピューティングデバイス６００内に非一時的に格納する。メモリ６２０は、コンピュータ読取可能媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ６２０は、プログラム（たとえば命令のシーケンス）またはデータ（たとえばプログラム状態情報）を、コンピューティングデバイス６００による使用のために一時的または永続的に格納するために使用される物理デバイスであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読出専用メモリ（ＲＯＭ）／プログラマブル読出専用メモリ（ＰＲＯＭ）／消去可能プログラマブル読出専用メモリ（ＥＰＲＯＭ）／電子的消去可能プログラマブル読出専用メモリ（ＥＥＰＲＯＭ）（たとえば、典型的にはブートプログラムなどのファームウェアのために使用される）を含むものの、それらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、相変化メモリ（ＰＣＭ）、およびディスクまたはテープを含むものの、それらに限定されない。
【００５１】
記憶装置６３０は、コンピューティングデバイス６００のための大容量記憶を提供可能である。いくつかの実現化例では、記憶装置６３０は、コンピュータ読取可能媒体である。さまざまな異なる実現化例では、記憶装置６３０は、フロッピー（登録商標）ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、もしくは、ストレージエリアネットワークまたは他の構成におけるデバイスを含むデバイスのアレイであってもよい。追加の実現化例では、コンピュータプログラム製品が情報担体において有形に具現化され得る。コンピュータプログラム製品は、実行されると上述のような１つ以上の方法を行なう命令を含む。情報担体は、メモリ６２０、記憶装置６３０、またはプロセッサ６１０上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体である。
【００５２】
高速コントローラ６４０はコンピューティングデバイス６００のための帯域幅集約的な動作を管理し、一方、低速コントローラ６６０はより低い帯域幅集約的な動作を管理する。役目のそのような割当ては例示に過ぎない。いくつかの実現化例では、高速コントローラ６４０は、メモリ６２０、ディスプレイ６８０に（たとえば、グラフィックスプロセッサまたはアクセラレータを介して）結合されるとともに、さまざまな拡張カード（図示せず）を受け付け得る高速拡張ポート６５０に結合される。いくつかの実現化例では、低速コントローラ６６０は、記憶装置６３０および低速拡張ポート６９０に結合される。さまざまな通信ポート（たとえば、ＵＳＢ、ブルートゥース（登録商標）、イーサネット（登録商標）、無線イーサネット）を含み得る低速拡張ポート６９０は、キーボード、ポインティングデバイス、スキャナなどの１つ以上の入出力デバイスに、もしくは、スイッチまたはルータなどのネットワーキングデバイスに、たとえばネットワークアダプタを介して結合されてもよい。
【００５３】
コンピューティングデバイス６００は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、標準サーバ６００ａとして、またはそのようなサーバ６００ａのグループで複数回実現されてもよく、ラップトップコンピュータ６００ｂとして、またはラックサーバシステム６００ｃの一部として実現されてもよい。
【００５４】
ここに説明されるシステムおよび手法のさまざまな実現化例は、デジタル電子および／または光学回路、集積回路、特別に設計されたＡＳＩＣ（application specific integrated circuit：特定用途向け集積回路）、コンピュータハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組合せにおいて実現され得る。これらのさまざまな実現化例は、データおよび命令を記憶システムとの間で送受信するように結合された、専用または汎用であり得る少なくとも１つのプログラマブルプロセッサと、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスとを含むプログラマブルシステム上で実行可能および／または解釈可能である１つ以上のコンピュータプログラムにおける実現を含み得る。
【００５５】
これらのコンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られている）は、プログラマブルプロセッサのための機械命令を含み、高レベルの手続き型および／またはオブジェクト指向プログラミング言語で、および／またはアセンブリ／機械語で実現され得る。ここに使用されるように、「機械読取可能媒体」および「コンピュータ読取可能媒体」という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、非一時的コンピュータ読取可能媒体、機器および／またはデバイス（たとえば磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス（Programmable Logic Device：ＰＬＤ））を指し、機械命令を機械読取可能信号として受信する機械読取可能媒体を含む。「機械読取可能信号」という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【００５６】
この明細書で説明されるプロセスおよび論理フローは、１つ以上のプログラマブルプロセッサが、入力データに基づいて動作することおよび出力を生成することによって機能を行なうために１つ以上のコンピュータプログラムを実行することによって行なわれ得る。プロセスおよび論理フローはまた、たとえばＦＰＧＡ（field programmable gate array：フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）といった専用論理回路によって行なわれ得る。コンピュータプログラムの実行にとって好適であるプロセッサは、一例として、汎用および専用マイクロプロセッサと、任意の種類のデジタルコンピュータの任意の１つ以上のプロセッサとを含む。一般に、プロセッサは、命令およびデータを、読出専用メモリまたはランダムアクセスメモリまたはそれら双方から受信するであろう。コンピュータの本質的要素は、命令を行なうためのプロセッサと、命令およびデータを格納するための１つ以上のメモリデバイスとである。一般に、コンピュータはまた、たとえば磁気ディスク、光磁気ディスク、または光ディスクといった、データを格納するための１つ以上の大容量記憶装置を含むであろう。もしくは、当該大容量記憶装置からデータを受信し、または当該大容量記憶装置にデータを転送し、またはそれら双方を行なうように動作可能に結合されるであろう。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを格納するのに好適であるコンピュータ読取可能媒体は、あらゆる形態の不揮発性メモリ、媒体、およびメモリデバイスを含み、一例として、半導体メモリ装置、たとえばＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイス；磁気ディスク、たとえば内部ハードディスクまたはリムーバブルディスク；光磁気ディスク；ならびに、ＣＤ  ＲＯＭおよびＤＶＤ−ＲＯＭディスクを含む。プロセッサおよびメモリは、専用論理回路によって補足され、または専用論理回路に組込まれ得る。
【００５７】
ユーザとの対話を提供するために、この開示の１つ以上の局面は、情報をユーザに表示するためのディスプレイデバイス、たとえばＣＲＴ（cathode ray tube：陰極線管）、ＬＣＤ（liquid crystal display：液晶ディスプレイ）モニター、またはタッチスクリーンと、オプションで、ユーザがコンピュータへの入力を提供できるようにするキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実現され得る。他の種類のデバイスも同様に、ユーザとの対話を提供するために使用され得る。たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであり得る。また、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受信され得る。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、当該デバイスから文書を受信することによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答してウェブページを当該ウェブブラウザに送信することによって、ユーザと対話することができる。
【００５８】
多くの実現化例が説明されてきた。にもかかわらず、この開示の精神および範囲から逸脱することなく、さまざまな変更を行なってもよいということが理解されるであろう。したがって、他の実現化例は、請求の範囲内にある。
【図１】
2021536067.tif 000003
【図２Ａ】
2021536067.tif 000004
【図２Ｂ】
2021536067.tif 000005
【図２Ｃ】
2021536067.tif 000006
【図２Ｄ】
2021536067.tif 000007
【図２Ｅ】
2021536067.tif 000008
【図３】
2021536067.tif 000009
【図４】
2021536067.tif 000010
【図５】
2021536067.tif 000011
【図６】
2021536067.tif 000012
【手続補正書】
【提出日】令和3年5月31日(2021.5.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
方法であって、
データ処理ハードウェアで、クラスタ訓練データセットを受信するステップを含み、前記クラスタ訓練データセットは偏りのない既知のデータ母集団を含み、前記方法はさらに、
前記データ処理ハードウェアが、前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセットをクラスタに分割するように、クラスタ化モデルを訓練するステップを含み、前記クラスタ訓練データセットの各クラスタはクラスタ重みを含み、前記方法はさらに、
前記データ処理ハードウェアで、機械学習モデルのための訓練データセットを受信するステップと、
前記データ処理ハードウェアが、前記クラスタ化モデルに基づいて、前記機械学習モデルのための前記訓練データセットに対応する訓練データセット重みを生成するステップと、
前記データ処理ハードウェアが、前記訓練データセット重みの各訓練データセット重みを、それぞれのクラスタ重みと整合するように、および、調節された訓練データセットを形成するように調節するステップと、
前記データ処理ハードウェアが、前記調節された訓練データセットを、偏りのない訓練データセットとして、前記機械学習モデルに提供するステップとを含む、方法。
【請求項２】
前記調節された訓練データセットを前記偏りのない訓練データセットとして前記機械学習モデルに提供するステップは、前記偏りのない訓練データセットを用いて前記機械学習モデルを訓練するステップを含む、請求項１に記載の方法。
【請求項３】
前記データ処理ハードウェアが、前記偏りのない訓練データセットを用いて前記機械学習モデルを訓練するステップと、
前記データ処理ハードウェアで、少なくとも１つのそれぞれのデータ特性を含むサンプルデータセットを受信するステップと、
前記データ処理ハードウェアが、訓練された前記機械学習モデルを使用して、受信された前記サンプルデータセットに基づいた、偏りのない予測値を生成するステップとをさらに含む、請求項１または２に記載の方法。
【請求項４】
各訓練データセット重みを、前記それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、
共通のデータ特性に基づいて、前記訓練データセット重みを前記それぞれのクラスタ重みと整合させるステップと、
前記訓練データセット重みが前記それぞれのクラスタ重みと整合するまで、前記訓練データセットからデータを除去するステップとを含む、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
各訓練データセット重みを、前記それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、
共通のデータ特性に基づいて、前記訓練データセット重みを前記それぞれのクラスタ重みと整合させるステップと、
前記訓練データセット重みが前記それぞれのクラスタ重みと整合するまで、前記訓練データセットからデータを複製するステップとを含む、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
各訓練データセット重みを、前記それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、
共通のデータ特性に基づいて、前記訓練データセット重みを前記クラスタ重みと整合させるステップと、
前記訓練データセット重みが前記それぞれのクラスタ重みよりも小さい場合、前記訓練データセット重みに対応する訓練データに対する前記機械学習モデルの訓練を増加させることを示す重要性重みを関連付けるステップとを含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
各訓練データセット重みを、前記それぞれのクラスタ重みと整合するように調節するステップは、各訓練データセット重みについて、
共通のデータ特性に基づいて、前記訓練データセット重みを前記クラスタ重みと整合させるステップと、
前記訓練データセット重みが前記それぞれのクラスタ重みよりも大きい場合、前記訓練データセット重みに対応する訓練データに対する前記機械学習モデルの訓練を減少させることを示す重要性重みを関連付けるステップとを含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記訓練データセット重みの各訓練データセット重みを、前記それぞれのクラスタ重みと整合するように調節するステップはさらに、各訓練データセット重みについて、
共通のデータ特性に基づいて、前記訓練データセット重みを対応するクラスタ重みと整合させるステップと、
前記訓練データセット重みが前記対応するクラスタ重みよりも小さい場合、前記訓練データセット重みに対応する訓練データに対する前記機械学習モデルの訓練を増加させることを示す重要性重みを関連付けるステップと、
前記訓練データセット重みが前記対応するクラスタ重みよりも大きい場合、前記訓練データセット重みに対応する訓練データに対する前記機械学習モデルの訓練を減少させることを示す重要性重みを関連付けるステップとを含む、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記クラスタ化モデルを訓練するステップはさらに、
前記偏りのない既知のデータ母集団のデータ特性に基づいて、受信された前記クラスタ訓練データセットをクラスタに分割するステップと、
前記偏りのない既知のデータ母集団の前記データ特性に基づいた前記クラスタの各クラスタについて、前記偏りのない既知のデータ母集団のサイズに対するそれぞれのクラスタのサイズの比に基づいて、前記クラスタ化モデルの各クラスタについての前記クラスタ重みを判定するステップとを含む、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
教師なし機械学習アルゴリズムが、前記偏りのない既知のデータ母集団の前記データ特性に基づいて、受信された前記クラスタ訓練データセットをクラスタに分割する、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
システムであって、
データ処理ハードウェアと、
前記データ処理ハードウェアと通信しているメモリハードウェアとを含み、前記メモリハードウェアは、前記データ処理ハードウェア上で実行されると前記データ処理ハードウェアに請求項１〜１０のいずれか１項に記載された方法を実行させる命令を格納している、システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３６
【補正方法】変更
【補正の内容】
【００３６】
調節器２２０は、目標母集団のデータ特性（すなわち、偏りに敏感な変数）の確率分布と整合するために、訓練データセット重み２１８を調節するように構成される。いくつかの実現化例では、調節器２２０は、訓練データセット重み２１８をクラスタ重み２１４と比較することによって訓練データセット重み２１８を調節するプロセス２２６を実行する。たとえば、図２Ｃ〜２Ｅは、調節器２２０が、クラスタ重みデータストア２２２からのクラスタ重み２１４と、訓練重みデータストア２２４からの訓練データセット重み２１８とを検索して比較し、比較に基づいて訓練データセット重み２１８を調節するために、プロセス２２６を実行することを示す。たとえば、それぞれの訓練データセット重み２１８とクラスタ重み２１４との相対的な差に基づいて、調節器２２０は、それぞれの訓練データセット重み２１８を、対応するクラスタ重み２１４と整合するように調節してもよい。したがって、訓練データセット重み２１８を調節するために調節器２２０によって実行されるプロセス２２６は、調節された訓練データセット重みを生成／出力し、または、より一般的には、ＭＬモデル３００を訓練するための偏りのない訓練データセット２０６を形成する調節された訓練データセット２０８を生成／出力する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
訓練データセット重み２１８が偏りクラスタ重み２１４と整合するまで訓練データセット３０２からデータを除去するかまたは訓練データセット３０２にデータを追加する図２Ｄのプロセス２２６とは対照的に、図２Ｅは、各訓練データセット重み２１８に関連付けられた重要性重み２２８を調節する調節器２２０上で実行されるプロセス２２６を示す。具体的には、プロセスは、重要性重み２２８を、関連付けられた訓練データセット重み２１８に対応する訓練データセット３０２のデータに関連付ける。重要性重み２２８は、機械学習モデル３００を訓練しながら、訓練データセット重み２１８に対応する基礎的データを提供するための重みがどれぐらいかを理解するために、機械学習モデル３００の訓練段階３０４（図３）への表示を提供する。いくつかの例では、訓練データセット重み２１８がクラスタ重み２１４よりも大きい場合、調節器２２０は、それぞれの訓練データセット重み２１８に対応する訓練データに対する機械学習モデル３００の訓練を減少させることを示す重要性重み２２８を関連付ける。他の例では、訓練データセット重み２１８がクラスタ重み２１４よりも小さい場合、調節器２２０は、それぞれの訓練データセット重み２１８に対応する訓練データに対する機械学習モデル３００の訓練を増加させることを示す重要性重み２２８を関連付ける。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
図４は、偏り採点モデル４００の一例である。偏り採点モデル４００は、偏り拒否モデル２００とともに、または偏り拒否モデル２００とは別々に使用されてもよい。たとえば、偏り採点モデル４００は、機械学習モデル３００を訓練するよう意図された訓練データセット３０２を、当該訓練データセット３０２を偏り拒否モデル２００に提供する前に評価してもよい（すなわち、これらのモデル２００、３００は、偏り採点モデル４００に相談する）。これらの例では、偏り採点モデル４００が、訓練データセット３０２は偏りがあり過ぎて機械学習モデル３００の訓練を始められないことを示して、訓練データセット３０２を拒否した場合、偏り採点モデル４００は、図２Ａ〜２Ｅを参照して上述されたように、拒否された訓練データセット４２６の偏りを防止し、偏りのない訓練データセット２０６を形成するために、拒否された訓練データセット３０２を偏り拒否モデル２００に通信してもよい。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
訓練データセット３０２の偏りスコア４１６がスコアしきい値４２２を満たす（たとえば、受け入れ可能な偏りスコア値を上回る）場合、偏り採点モデル４００は、訓練データセット３０２を、承認された訓練データセット４２４として承認する。いくつかの例では、承認された訓練データセット４２４は、機械学習モデルが（たとえば図３に示す）偏りのない予測値３１０を生成し始めるように、機械学習モデル３００によって認識可能な承認指標を含む。訓練データセット３０２の偏りスコア４１６がスコアしきい値４２２を満たさない（たとえば、受け入れ可能な偏りスコア値よりも小さい）場合、偏り採点モデル４００は、訓練データセット３０２を拒否する。拒否された訓練データセット４２６は、拒否された訓練データセット３０２を用いて訓練しないように機械学習モデル３００に通知するための拒否指標を含んでいてもよい。図４に点線のボックスおよび矢印によって示すように、偏り採点モデル４００は、図２Ａ〜２Ｅを参照して上述されたように、偏り拒否モデル２００が拒否された訓練データセット３０２を偏りのない訓練データセット２０６に変換するように、拒否された訓練データセット３０２を偏り拒否モデル２００に通信（すなわち提供）してもよい。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
図５は、機械学習環境１０内の機械学習モデル３００の偏りを防止するための動作を有する例示的な方法５００である。動作５０２で、方法５００は、クラスタ訓練データセット１３０を受信する。クラスタ訓練データセット１３０は、偏りのない既知のデータ母集団を含む。動作５０４で、方法５００は、偏りのない既知のデータ母集団のデータ特性に基づいて、受信されたクラスタ訓練データセット１３０をクラスタ２１２に分割するように、クラスタ化モデル２１１を訓練する。クラスタ２１２ａ〜ｎの各クラスタ２１２は、クラスタ重み２１４を含む。動作５０６で、方法５００は、機械学習モデル３００のための訓練データセット３０２を受信する。動作５０８で、方法５００は、クラスタ化モデル２１１に基づいて、機械学習モデル３００のための訓練データセット３０２に対応する訓練データセット重み２１８ａ〜ｎを生成する。動作５１０で、方法５００は、訓練データセット重み２１８ａ〜ｎの各訓練データセット重み２１８を、それぞれのクラスタ重み２１４と整合するように調節する。動作５１２で、方法５００は、調節された訓練データセット２０８を、偏りのない訓練データセット２０６として、機械学習モデル３００に提供する。
【国際調査報告】
2021536067.tif 000013
2021536067.tif 000014
2021536067.tif 000015