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

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

▶ グーグル インコーポレイテッドの特許一覧

特表2022-549316強化学習ベースの局所解釈可能モデル
<>
  • 特表-強化学習ベースの局所解釈可能モデル 図1
  • 特表-強化学習ベースの局所解釈可能モデル 図2A
  • 特表-強化学習ベースの局所解釈可能モデル 図2B
  • 特表-強化学習ベースの局所解釈可能モデル 図2C
  • 特表-強化学習ベースの局所解釈可能モデル 図2D
  • 特表-強化学習ベースの局所解釈可能モデル 図2E
  • 特表-強化学習ベースの局所解釈可能モデル 図3
  • 特表-強化学習ベースの局所解釈可能モデル 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-11-24
(54)【発明の名称】強化学習ベースの局所解釈可能モデル
(51)【国際特許分類】
   G06N 20/00 20190101AFI20221116BHJP
【FI】
G06N20/00 130
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022518774
(86)(22)【出願日】2020-09-23
(85)【翻訳文提出日】2022-05-18
(86)【国際出願番号】 US2020052326
(87)【国際公開番号】W WO2021061861
(87)【国際公開日】2021-04-01
(31)【優先権主張番号】62/904,977
(32)【優先日】2019-09-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】アリク,セルジャン・オメール
(72)【発明者】
【氏名】ユン,ジンソン
(72)【発明者】
【氏名】フィスター,トマス・ジョン
(57)【要約】
局所解釈可能モデル(190)をトレーニングするための方法(300)は、トレーニングサンプル(130)のセットを取得するステップと、トレーニングサンプルのセットを用いてブラックボックスモデル(120)をトレーニングするステップとを含む。当該方法はまた、トレーニングされたブラックボックスモデルおよびトレーニングサンプルのセットを用いて、補助トレーニングサンプル(140)のセットを生成するステップと、補助トレーニングサンプルのセットを用いてベースライン解釈可能モデル(150)をトレーニングするステップとを含む。当該方法はまた、補助トレーニングサンプルのセットおよびベースライン解釈可能モデルを用いて、インスタンスごとの重み推定器モデル(160)をトレーニングするステップ含む。当該方法はまた、各補助トレーニングサンプルごとに、トレーニングされたインスタンスごとの重み推定器モデルを用いて、補助トレーニングサンプルについての選択確率(170)を決定するステップを含む。当該方法はまた、選択確率に基づいて、補助トレーニングサンプル(140S)のサブセットを選択するステップと、補助トレーニングサンプルのサブセットを用いて局所解釈可能モデルをトレーニングするステップとを含む。
【特許請求の範囲】
【請求項1】
局所解釈可能モデル(190)をトレーニングするための方法(300)であって、前記方法(300)は、
データ処理ハードウェア(12)において、トレーニングサンプル(130)のセットを取得するステップと、
前記データ処理ハードウェア(12)によって、前記トレーニングサンプル(130)のセットを用いて、ブラックボックスモデル(120)をトレーニングするステップと、
前記データ処理ハードウェア(12)によって、前記トレーニングされたブラックボックスモデル(120)および前記トレーニングサンプル(130)のセットを用いて、補助トレーニングサンプル(140)のセットを生成するステップと、
前記データ処理ハードウェア(12)によって、前記補助トレーニングサンプル(140)のセットを用いて、ベースライン解釈可能モデル(150)をトレーニングするステップと、
前記データ処理ハードウェア(12)によって、前記補助トレーニングサンプル(140)のセットおよび前記ベースライン解釈可能モデル(150)を用いて、インスタンスごとの重み推定器モデル(160)をトレーニングするステップと、
前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに、前記データ処理ハードウェア(12)によって、前記トレーニングされたインスタンスごとの重み推定器モデル(160)を用いて、前記補助トレーニングサンプル(140)についての選択確率(170)を決定するステップと、
前記データ処理ハードウェア(12)によって、前記選択確率(170)に基づいて、前記補助トレーニングサンプル(140)のセットから補助トレーニングサンプル(140S)のサブセットを選択するステップと、
前記データ処理ハードウェア(12)によって、前記補助トレーニングサンプル(140S)のサブセットを用いて、前記局所解釈可能モデル(190)をトレーニングするステップとを含む、方法(300)。
【請求項2】
前記インスタンスごとの重み推定器モデル(160)をトレーニングするステップは、
強化信号(226)を決定するステップと、
前記強化信号(226)に基づいて前記インスタンスごとの重み推定器モデル(160)を更新するステップとを含む、請求項1に記載の方法(300)。
【請求項3】
前記強化信号(226)を決定するステップは、
損失関数(206)に基づいて前記局所解釈可能モデル(190)についての第1の損失データ(228a)を決定するステップと、
前記損失関数(206)に基づいて前記ベースライン解釈可能モデル(150)についての第2の損失データ(228b)を決定するステップと、
前記局所解釈可能モデル(190)についての前記第1の損失データ(228a)および前記ベースライン解釈可能モデル(150)についての前記第2の損失データ(228b)に基づいて前記強化信号(226)を決定するステップとを含む、請求項1または2に記載の方法(300)。
【請求項4】
前記補助トレーニングサンプル(140)のセットから前記補助トレーニングサンプル(140S)のサブセットを選択するステップは、前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに、
前記選択確率(170)に基づいて、選択または選択なしを示す対応する選択値(244)を決定するステップと、
前記対応する選択値(244)が選択を示す場合、前記補助トレーニングサンプル(140)を前記補助トレーニングサンプル(140S)のサブセットに追加するステップとを含む、請求項1から3のいずれか1項に記載の方法(300)。
【請求項5】
各補助トレーニングサンプル(140)ごとに、前記補助トレーニングサンプル(140)についての前記選択確率(170)を決定するステップは、
前記インスタンスごとの重み推定器モデル(160)において、検証サンプル(242)を受取るステップと、
前記インスタンスごとの重み推定器モデル(160)によって、前記検証サンプル(242)に基づいて前記選択確率(170)を決定するステップとを含む、請求項4に記載の方法(300)。
【請求項6】
前記インスタンスごとの重み推定器モデル(160)をトレーニングした後、
前記インスタンスごとの重み推定器モデル(160)において、検証サンプル(242)を受取るステップと、
前記インスタンスごとの重み推定器モデル(160)によって、前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに前記選択確率(170)を生成するステップと、
前記検証サンプル(242)と、前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)の前記選択確率(170)とに基づいて、前記局所解釈可能モデル(190)をトレーニングするステップとをさらに含む、請求項1から5のいずれか1項に記載の方法(300)。
【請求項7】
前記ブラックボックスモデル(120)をトレーニングするステップは、平均二乗誤差損失関数(206)または交差エントロピー損失関数(206)を最小化するステップを含む、請求項1から6のいずれか1項に記載の方法(300)。
【請求項8】
前記トレーニングサンプル(130)のセット内の各トレーニングサンプル(130)は、トレーニングデータ(202)および所与のラベル(204)を含む、請求項1から7のいずれか1項に記載の方法(300)。
【請求項9】
前記補助トレーニングサンプル(140)のセットを生成するステップは、前記トレーニングサンプル(130)のセット内の各トレーニングサンプル(130)ごとに、
前記トレーニングサンプル(130)の前記トレーニングデータ(202)を用いて、前記トレーニングされたブラックボックスモデル(120)から、前記トレーニングデータ(202)についての予測ラベル(208)を取得するステップと、
前記トレーニングデータ(202)と前記予測ラベル(208)とを組合わせて補助トレーニングサンプル(140)にするステップと、
前記補助トレーニングサンプル(140)を前記補助トレーニングサンプル(140)のセットに追加するステップとを含む、請求項8に記載の方法(300)。
【請求項10】
前記インスタンスごとの重み推定器モデル(160)をトレーニングするステップは、
プローブトレーニングサンプル(222)のセットを取得するステップと、
前記プローブトレーニングサンプル(222)のセット内の各プローブトレーニングサンプル(222)ごとに、選択確率(170)を決定するステップと、
各プローブトレーニングサンプル(222)の前記選択確率(170)に基づいて、インスタンスごとの選択ベクトル(224)を決定するステップと、
前記インスタンスごとの選択ベクトル(224)に基づいて前記局所解釈可能モデル(190)を最適化するステップと、
前記最適化された局所解釈可能モデル(190)からの損失データ(228a)に基づいて、前記インスタンスごとの重み推定器モデル(160)を更新するステップとを含む、請求項1から9のいずれか1項に記載の方法(300)。
【請求項11】
システム(100)であって、
データ処理ハードウェア(12)と、
前記データ処理ハードウェア(12)と通信するメモリハードウェア(14)とを含み、前記メモリハードウェア(14)は、前記データ処理ハードウェア(12)上で実行されると、前記データ処理ハードウェア(12)に、以下の動作を実行させる命令を格納しており、前記以下の動作は、
トレーニングサンプル(130)のセットを取得する動作と、
前記トレーニングサンプル(130)のセットを用いて、ブラックボックスモデル(120)をトレーニングする動作と、
前記トレーニングされたブラックボックスモデル(120)および前記トレーニングサンプル(130)のセットを用いて、補助トレーニングサンプル(140)のセットを生成する動作と、
前記補助トレーニングサンプル(140)のセットを用いて、ベースライン解釈可能モデル(150)をトレーニングする動作と、
前記補助トレーニングサンプル(140)のセットおよび前記ベースライン解釈可能モデル(150)を用いて、インスタンスごとの重み推定器モデル(160)をトレーニングする動作と、
前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに、前記トレーニングされたインスタンスごとの重み推定器モデル(160)を用いて、前記補助トレーニングサンプル(140)についての選択確率(170)を決定する動作と、
前記選択確率(170)に基づいて、前記補助トレーニングサンプル(140)のセットから補助トレーニングサンプル(140S)のサブセットを選択する動作と、
前記補助トレーニングサンプル(140S)のサブセットを用いて、局所解釈可能モデル(190)をトレーニングする動作とを含む、システム(100)。
【請求項12】
前記インスタンスごとの重み推定器モデル(160)をトレーニングする動作は、
強化信号(226)を決定する動作と、
前記強化信号(226)に基づいて前記インスタンスごとの重み推定器モデル(160)を更新する動作とを含む、請求項11に記載のシステム(100)。
【請求項13】
前記強化信号(226)を決定する動作は、
損失関数(206)に基づいて前記局所解釈可能モデル(190)についての第1の損失データ(228a)を決定する動作と、
前記損失関数(206)に基づいて前記ベースライン解釈可能モデル(150)についての第2の損失データ(228b)を決定する動作と、
前記局所解釈可能モデル(190)についての前記第1の損失データ(228a)および前記ベースライン解釈可能モデル(150)についての前記第2の損失データ(228b)に基づいて前記強化信号(226)を決定する動作とを含む、請求項11または12に記載のシステム(100)。
【請求項14】
前記補助トレーニングサンプル(140)のセットから前記補助トレーニングサンプル(140S)のサブセットを選択する動作は、前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに、
前記選択確率(170)に基づいて、選択または選択なしを示す対応する選択値(244)を決定する動作と、
前記対応する選択値(244)が選択を示す場合、前記補助トレーニングサンプル(140)を前記補助トレーニングサンプル(146)のサブセットに追加する動作とを含む、請求項11から13のいずれか1項に記載のシステム(100)。
【請求項15】
各補助トレーニングサンプル(140)ごとに、前記補助トレーニングサンプル(140)についての前記選択確率(170)を決定する動作は、
前記インスタンスごとの重み推定器モデル(160)において、検証サンプル(242)を受取る動作と、
前記インスタンスごとの重み推定器モデル(160)によって、前記検証サンプル(242)に基づいて前記選択確率(170)を決定する動作とを含む、請求項14に記載のシステム(100)。
【請求項16】
前記以下の動作はさらに、前記インスタンスごとの重み推定器モデル(160)をトレーニングした後、
前記インスタンスごとの重み推定器モデル(160)において、検証サンプル(242)を受取る動作と、
前記インスタンスごとの重み推定器モデル(160)によって、前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)ごとに前記選択確率(170)を生成する動作と、
前記検証サンプル(242)と前記補助トレーニングサンプル(140)のセット内の各補助トレーニングサンプル(140)の前記選択確率(170)とに基づいて、前記局所解釈可能モデル(190)をトレーニングする動作とをさらに含む、請求項11から15のいずれか1項に記載のシステム(100)。
【請求項17】
前記ブラックボックスモデル(120)をトレーニングする動作は、平均二乗誤差損失関数(206)または交差エントロピー損失関数(206)を最小化する動作を含む、請求項11から16のいずれか1項に記載のシステム(100)。
【請求項18】
前記トレーニングサンプル(130)のセット内の各トレーニングサンプル(130)は、トレーニングデータ(202)および所与のラベル(204)を含む、請求項11から17のいずれか1項に記載のシステム(100)。
【請求項19】
前記補助トレーニングサンプル(140)のセットを生成する動作は、前記トレーニングサンプル(130)のセット内の各トレーニングサンプル(130)ごとに、
前記トレーニングサンプル(130)の前記トレーニングデータ(202)を用いて、前記トレーニングされたブラックボックスモデル(120)から、前記トレーニングデータ(202)についての予測ラベル(208)を取得する動作と、
前記トレーニングデータ(202)と前記予測ラベル(208)とを組合わせて補助トレーニングサンプル(140)にする動作と、
前記補助トレーニングサンプル(140)を前記補助トレーニングサンプル(140)のセットに追加する動作とを含む、請求項18に記載のシステム(100)。
【請求項20】
前記インスタンスごとの重み推定器モデル(160)をトレーニングする動作は、
プローブトレーニングサンプル(222)のセットを取得する動作と、
前記プローブトレーニングサンプル(222)のセット内の各プローブトレーニングサンプル(222)ごとに、選択確率(170)を決定する動作と、
各プローブトレーニングサンプル(222)の前記選択確率(170)に基づいて、インスタンスごとの選択ベクトル(224)を決定する動作と、
前記インスタンスごとの選択ベクトル(224)に基づいて前記局所解釈可能モデル(190)を最適化する動作と、
前記最適化された局所解釈可能モデル(190)からの損失データ(228a)に基づいて、前記インスタンスごとの重み推定器モデル(160)を更新する動作とを含む、請求項11から19のいずれか1項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、強化学習ベースの局所解釈可能モデルに関する。
【背景技術】
【0002】
背景
人工知能は急速なペースで進歩しており、特に、ディープニューラルネットワークおよびアンサンブル法が近年進歩している。この発展は、多くのパラメータ間の複雑で非線形の相互作用によって意思決定を制御している「ブラックボックス」機械学習モデルによって促進されてきた。この複雑な相互作用により、ユーザが理解および解釈するべき機械学習モデルの使用が困難になる。多くの現実世界で適用される場合、機械学習モデルは、十分に機能することが期待されているだけでなく、解釈可能であることも求められている。機械学習モデルの性能と解釈可能性とは両立し難しいことが多く、解釈可能性のレベルが高い機械学習モデルは性能の低下に見舞われている。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
本開示の一局面は、強化学習ベースの局所解釈可能モデルのための方法を提供する。当該方法は、データ処理ハードウェアにおいて、トレーニングサンプルのセットを取得するステップと、当該データ処理ハードウェアによって、当該トレーニングサンプルのセットを用いて、ブラックボックスモデルをトレーニングするステップとを含む。当該方法はまた、当該データ処理ハードウェアによって、当該トレーニングされたブラックボックスモデルおよび当該トレーニングサンプルのセットを用いて、補助トレーニングサンプルのセットを生成するステップを含む。当該方法はまた、当該データ処理ハードウェアによって、当該補助トレーニングサンプルのセットを用いて、ベースライン解釈可能モデルをトレーニングするステップと、当該データ処理ハードウェアによって、当該補助トレーニングサンプルのセットおよび当該ベースライン解釈可能モデルを用いて、インスタンスごとの重み推定器モデルをトレーニングするステップとを含む。当該方法はまた、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、当該データ処理ハードウェアによって、当該トレーニングされたインスタンスごとの重み推定器モデルを用いて、当該補助トレーニングサンプルについての選択確率を決定するステップを含む。当該方法はまた、当該データ処理ハードウェアによって、当該選択確率に基づいて、当該補助トレーニングサンプルのセットから補助トレーニングサンプルのサブセットを選択するステップと、当該データ処理ハードウェアによって、当該補助トレーニングサンプルのサブセットを用いて、当該局所解釈可能モデルをトレーニングするステップとを含む。
【0004】
本開示の実現例は、以下のオプションの特徴のうち1つ以上を含み得る。いくつかの実現例では、当該インスタンスごとの重み推定器モデルをトレーニングするステップは、強化信号を決定するステップと、当該強化信号に基づいて当該インスタンスごとの重み推定器モデルを更新するステップとを含む。当該強化信号を決定するステップは、損失関数に基づいて当該局所解釈可能モデルについての第1の損失データを決定するステップと、損失関数に基づいて当該局所解釈可能モデルについての第2の損失データを決定するステップと、当該局所解釈可能モデルについての当該第1の損失データおよび当該ベースライン解釈可能モデルについての当該第2の損失データに基づいて当該強化信号を決定するステップとを含む。
【0005】
当該補助トレーニングサンプルのセットから当該補助トレーニングサンプルのサブセットを選択するステップは、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、当該選択確率に基づいて、選択または選択なしを示す対応する選択値を決定するステップを含む。当該対応する選択値が選択を示す場合、当該補助トレーニングサンプルを当該補助トレーニングサンプルのサブセットに追加する。いくつかの例では、各補助トレーニングサンプルごとに、当該補助トレーニングサンプルについての当該選択確率を決定するステップは、当該インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取るステップと、当該インスタンスごとの重み推定器モデルによって、当該検証サンプルに基づいて当該選択確率を決定するステップとを含む。
【0006】
いくつかの実現例では、当該方法はさらに、当該インスタンスごとの重み推定器モデルをトレーニングした後、当該インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取るステップと、当該インスタンスごとの重み推定器モデルによって、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに当該選択確率を生成するステップとを含む。これらの実現例では、当該方法はまた、当該検証サンプルと、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルの当該選択確率とに基づいて、当該局所解釈可能モデルをトレーニングするステップを含む。任意には、当該ブラックボックスモデルをトレーニングするステップは、平均二乗誤差損失関数または交差エントロピー損失関数を最小化するステップを含み得る。
【0007】
当該トレーニングサンプルのセット内の各トレーニングサンプルは、トレーニングデータおよび所与のラベルを含み得る。いくつかの例では、当該補助トレーニングサンプルのセットを生成するステップは、当該トレーニングサンプルのセット内の各トレーニングサンプルごとに、当該トレーニングサンプルの当該トレーニングデータを用いて、当該トレーニングされたブラックボックスモデルから、当該トレーニングデータについての予測ラベルを取得するステップと、当該トレーニングデータと当該予測ラベルとを組合わせて補助トレーニングサンプルにするステップと、当該補助トレーニングサンプルを当該補助トレーニングサンプルのセットに追加するステップとを含む。
【0008】
いくつかの実現例では、当該インスタンスごとの重み推定器モデルをトレーニングするステップは、プローブトレーニングサンプルのセットを取得するステップと、当該プローブトレーニングサンプルのセット内の各プローブトレーニングサンプルごとに選択確率を決定するステップとを含む。これらの実現例では、各プローブトレーニングサンプルの当該選択確率に基づいて、インスタンスごとの選択ベクトルを決定するステップと、当該インスタンスごとの選択ベクトルに基づいて当該局所解釈可能モデルを最適化するステップと、当該最適化された局所解釈可能モデルからの損失データに基づいて、当該インスタンスごとの重み推定器モデルを更新するステップとを含む。
【0009】
本開示の別の局面は、強化学習ベースの局所解釈可能モデルのためのシステムを提供する。当該システムは、データ処理ハードウェアと、当該データ処理ハードウェアと通信するメモリハードウェアとをむ。当該メモリハードウェアは、当該データ処理ハードウェア上で実行されると、当該データ処理ハードウェアに以下の動作を実行させる命令を格納している。当該以下の動作は、トレーニングサンプルのセットを取得する動作と、当該トレーニングサンプルのセットを用いて、ブラックボックスモデルをトレーニングする動作とを含む。当該以下の動作はまた、当該トレーニングされたブラックボックスモデルおよび当該トレーニングサンプルのセットを用いて、補助トレーニングサンプルのセットを生成する動作を含む。当該以下の動作はまた、当該補助トレーニングサンプルのセットを用いて、ベースライン解釈可能モデルをトレーニングする動作と、当該補助トレーニングサンプルのセットおよび当該ベースライン解釈可能モデルを用いて、インスタンスごとの重み推定器モデルをトレーニングする動作とを含む。当該以下の動作は、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、当該トレーニングされたインスタンスごとの重み推定器モデルを用いて、当該補助トレーニングサンプルについての選択確率を決定する動作を含む。当該以下の動作はまた、当該選択確率に基づいて、当該補助トレーニングサンプルのセットから補助トレーニングサンプルのサブセットを選択する動作と、当該補助トレーニングサンプルのサブセットを用いて、局所解釈可能モデルをトレーニングする動作とを含む。
【0010】
この局面は、以下のオプションの特徴のうちの1つ以上を含み得る。いくつかの実現例では、当該インスタンスごとの重み推定器モデルをトレーニングする動作は、強化信号を決定する動作と、当該強化信号に基づいて当該インスタンスごとの重み推定器モデルを更新する動作とを含む。当該強化信号を決定する動作は、損失関数に基づいて当該局所解釈可能モデルについての第1の損失データを決定する動作と、当該損失関数に基づいて当該局所解釈可能モデルについての第2の損失データを決定する動作と、当該局所解釈可能モデルについての当該第1の損失データおよび当該ベースライン解釈可能モデルについての当該第2の損失データに基づいて当該強化信号を決定する動作とを含む。
【0011】
当該補助トレーニングサンプルのセットから当該補助トレーニングサンプルのサブセットを選択する動作は、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、当該選択確率に基づいて、選択または選択なしを示す対応する選択値を決定する動作を含む。当該対応する選択値が選択を示す場合、当該補助トレーニングサンプルを当該補助トレーニングサンプルのサブセットに追加する。いくつかの例では、各補助トレーニングサンプルごとに、当該補助トレーニングサンプルについての当該選択確率を決定する動作は、当該インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取る動作と、当該インスタンスごとの重み推定器モデルによって、当該検証サンプルに基づいて当該選択確率を決定する動作とを含む。
【0012】
いくつかの実現例では、当該以下の動作はさらに、当該インスタンスごとの重み推定器モデルをトレーニングした後、当該インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取る動作と、当該インスタンスごとの重み推定器モデルによって、当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに当該選択確率を生成する動作とを含む。これらの実現例では、当該以下の動作はまた、当該検証サンプルと当該補助トレーニングサンプルのセット内の各補助トレーニングサンプルの当該選択確率とに基づいて、当該局所解釈可能モデルをトレーニングする動作を含む。任意には、当該ブラックボックスモデルをトレーニングする動作は、平均二乗誤差損失関数または交差エントロピー損失関数を最小化する動作を含み得る。
【0013】
当該トレーニングサンプルのセット内の各トレーニングサンプルは、トレーニングデータおよび所与のラベルを含み得る。いくつかの例では、当該補助トレーニングサンプルのセットを生成する動作は、当該トレーニングサンプルのセット内の各トレーニングサンプルごとに、当該トレーニングサンプルの当該トレーニングデータを用いて、当該トレーニングされたブラックボックスモデルから、当該トレーニングデータについての予測ラベルを取得する動作と、当該トレーニングデータと当該予測ラベルとを組合わせて補助トレーニングサンプルにする動作と、当該補助トレーニングサンプルを当該補助トレーニングサンプルのセットに追加する動作とを含む。
【0014】
いくつかの実現例では、当該インスタンスごとの重み推定器モデルをトレーニングする動作は、プローブトレーニングサンプルのセットを取得する動作と、当該プローブトレーニングサンプルのセット内の各プローブトレーニングサンプルごとに、選択確率を決定する動作とを含む。これらの実現例では、各プローブトレーニングサンプルの当該選択確率に基づいて、インスタンスごとの選択ベクトルを決定する動作と、当該インスタンスごとの選択ベクトルに基づいて当該局所解釈可能モデルを最適化する動作と、当該最適化された局所解釈可能モデルからの損失データに基づいて、当該インスタンスごとの重み推定器モデルを更新する動作とを含む。
【0015】
本開示の1つ以上の実現例の詳細を添付の図面および以下の説明に記載する。他の局面、特徴、および利点は、以下の説明および添付の図面、ならびに添付の特許請求の範囲から明らかになるだろう。
【図面の簡単な説明】
【0016】
図1】局所解釈可能モデルをトレーニングするための例示的なシステムを示す概略図である。
図2A】局所解釈可能モデルをトレーニングするための図1のシステムの例示的な構成要素を示す概略図である。
図2B】局所解釈可能モデルをトレーニングするための図1のシステムの例示的な構成要素を示す概略図である。
図2C】局所解釈可能モデルをトレーニングするための図1のシステムの例示的な構成要素を示す概略図である。
図2D】局所解釈可能モデルをトレーニングするための図1のシステムの例示的な構成要素を示す概略図である。
図2E】局所解釈可能モデルをトレーニングするための図1のシステムの例示的な構成要素を示す概略図である。
図3】局所解釈可能モデルをトレーニングする方法についての動作の例示的な構成を示すフローチャートである。
図4】本明細書に記載のシステムおよび方法を実現するために用いられ得る例示的なコンピューティングデバイスを示す概略図である。
【発明を実施するための形態】
【0017】
さまざまな図面における同様の参照符号は同様の要素を示す。
詳細な説明
多くの現実世界で適用される場合、人工知能(artificial intelligence:AI)システムは、十分に機能するだけではなく解釈可能であることも期待されている。たとえば、医師らは特定の治療が推奨される理由を理解する必要があり、金融機関は融資が拒否された理由を理解する必要がある。多くの場合、AIシステムでは、システムの性能と解釈可能性とが両立し難しい。特に、全体解釈可能なモデルは、モデル挙動全体を説明しようと試みるものであるが、典型的には、性能がブラックボックスモデルよりも大幅に劣ったものとなる。しかしながら、全体解釈可能なモデルについての有利な代替案は局所解釈可能モデルを含み得る。
【0018】
局所解釈可能モデルはモデル内の1つの予測を説明するものである一方で、全体解釈可能なモデルはモデル全体を説明しようと試みるものである。全体解釈可能なモデルは、固有に解釈可能な1つのモデルをトレーニングセット全体にフィットさせる一方で、局所解釈可能モデルは、高性能なブラックボックスモデルから知識を抽出することによって、固有に解釈可能なモデルを局所的にフィットさせることを目的としている。局所解釈可能モデルは、簡潔で人が行なうような説明をユーザに提供するのに有用であり得る。性能を最適化するために、局所解釈可能モデルは、(i)全体的な予測性能および(ii)忠実度という2つの目的を最大化する必要がある。全体的な予測性能は、局所解釈可能モデルがグラウンドトゥルースラベルと比べてどれだけ十分に結果を予測するかを表わしている。忠実度は、局所解釈可能モデルがどれだけ十分にブラックボックスモデル予測に近似しているかを表わす。局所解釈可能モデルの1つの基本的な課題は抽出を適用している間の表現能力の差である。すなわち、ブラックボックス機械学習モデルは局所解釈可能モデルよりもはるかに高い表現能力を有する。局所解釈可能モデルの表現能力がより低い場合、結果として、従来の抽出技術ではアンダーフィットとなり、準最適な性能を招く可能性がある。
【0019】
本明細書の実現例は、局所解釈可能モデル(locally interpretable model:RL-LIM)をフィットさせるための強化学習ベースの方法を提供するモデルトレーナに向けられている。RL-LIMは、局所解釈可能モデルをフィットさせるのに貢献する最高値を提供する少数のサンプルでトレーニングすることによって、局所解釈可能モデルの低い表現能力を効率的に利用する。これらの最高値のサンプルまたはインスタンスを選択するために、モデルトレーナは、忠実度メトリックを定量化する強化信号を用いて、インスタンスごとの重み推定器をトレーニングする。高値のインスタンスを選択することにより、ブラックボックスモデル予測に厳密に類似した予測が報酬として得られる。高値のトレーニングインスタンスのみを選択することによって局所解釈可能モデルをトレーニングすることは、ブラックボックスモデルの性能にほぼ適合し、全体的な予測性能および忠実度メトリックの点では代替技術よりも大いに優れている。
【0020】
ここで図1を参照すると、いくつかの実現例では、例示的なシステム100は処理システム10を含む。処理システム10は、単一のコンピュータであってもよく、複数のコンピュータであってもよく、または、固定式もしくはスケーラブルな/融通性のあるコンピューティングリソース12(たとえば、データ処理ハードウェア)および/もしくはストレージリソース14(たとえば、メモリハードウェア)を有する分散システム(たとえば、クラウド環境)であってもよい。処理システム10は局所解釈可能モデルトレーナ110を実行する。モデルトレーナ110はブラックボックスモデル120および局所解釈可能モデル190をトレーニングする。ブラックボックスモデル120は、以下に説明される任意の機械学習モデルを含み得る。たとえば、ブラックボックスモデル120は、ディープニューラルネットワークまたは決定木ベースのアンサンブル法であってもよい。局所解釈可能モデル190はブラックボックスモデル120の1つの予測を説明する。特に、局所解釈可能モデル190は、高性能ブラックボックスモデル120から知識を抽出して、ブラックボックスモデル120からの1つ以上の予測をユーザに対して説明する。
【0021】
モデルトレーナ110は、トレーニングサンプル130、130a~130nのセットを取得し、当該セット内のトレーニングサンプル130のいくつかまたはすべてを用いてブラックボックスモデル120をトレーニングする。いくつかの例では、各トレーニングサンプル130は、トレーニングデータ202と、当該トレーニングデータ202についての所与のラベル204との両方を含む(図2A)。所与のラベル204は、ブラックボックスモデル120が関連するトレーニングデータ202を用いて予測の精度を判断するための注釈または他の指示を含む。すなわち、ブラックボックスモデル120は、トレーニングサンプル130のトレーニングデータ202を用いて予測を行ない、当該予測を関連する所与のラベル204と比較して、予測の精度を判断する。いくつかの実現例では、トレーニングサンプル130は、対応する所与のラベル204なしでトレーニングデータ202だけ(すなわち、ラベルなしトレーニングサンプル)を含む。
【0022】
モデルトレーナ110は、トレーニングされたブラックボックスモデル120とトレーニングサンプル130のセットとを用いて補助トレーニングサンプル140、140a~140nのセットを生成する。いくつかの例では、モデルトレーナは、補助トレーニングサンプル140を用いてブラックボックスモデル120の性能を評価して、メタ学習をガイドする。以下でより詳細に説明するように、補助トレーニングサンプル140は、ブラックボックスモデル120の予測に基づいた補助トレーニングデータおよび補助ラベルを含み得る。モデルトレーナ110は、補助トレーニングサンプル140のセットを用いて、ベースライン解釈可能モデル150をトレーニングする。ベースライン解釈可能モデル150は、ブラックボックスモデル120の予測を複製するように最適化された全体解釈可能なモデル(たとえば、線形モデルまたは浅い決定木)を含み得る。ベースライン解釈可能モデル150は、局所解釈可能モデル190をトレーニングする間ベンチマークとして機能し得る。
【0023】
モデルトレーナ110は、補助トレーニングサンプル140のセットとベースライン解釈可能モデル150とを用いて、インスタンスごとの重み推定器モデル160(本明細書では単にインスタンスごとの重み推定器とも称される)をトレーニングする。インスタンスごとの重み推定器モデル160は、各補助トレーニングサンプル140ごとの価値を示す重み(すなわち、選択確率170)を決定する。重みが大きければ大きいほど、局所解釈可能モデル190をトレーニングするためにそれぞれの補助トレーニングサンプル140が有する価値がより大きくなる。いくつかの実現例では、補助トレーニングサンプル140のセット内の各補助トレーニングサンプル140ごとに、トレーニングされたインスタンスごとの重み推定器モデル160は、各補助トレーニングサンプル140についての選択確率170を決定する。選択確率170は、補助トレーニングサンプル140が局所解釈可能モデル190にとって有益なトレーニングサンプルであるかまたは問題のあるトレーニングサンプルであるか(すなわち、サンプル140がトレーニングを改善させる可能性があるかまたはトレーニングを悪化させる可能性があるか)を示す重みに対応する。
【0024】
モデルトレーナ110はサンプラ180を含む。当該サンプラ180は、各補助トレーニングサンプル140の選択確率170を受取り、各補助トレーニングサンプル140に割当てられた選択確率170に基づいて補助トレーニングサンプル140S、140Sa~Snのセットのサブセットを選択する。補助トレーニングサンプル140Sのサブセットは、補助トレーニングサンプル140よりも少ない量のトレーニングサンプルを含み得る。いくつかの実現例では、サンプラ180は、各補助トレーニングサンプル140の選択確率170が閾値を満たすかどうかを判断する。選択確率170が閾値を満たす場合、サンプラ180は、対応する補助トレーニングサンプル140を補助トレーニングサンプル140Sのサブセットに追加し得る。他の実現例では、サンプラ180は、予め定められた数の補助トレーニングサンプル140を選択する(たとえば、選択確率170が最も高い予め定められた数の補助トレーニングサンプル140を選択する)。
【0025】
モデルトレーナ110は、補助トレーニングサンプル140Sのサブセットを用いて局所解釈可能モデル190をトレーニングする。局所解釈可能モデル190は、補助トレーニングサンプル140Sのサブセットに対するトレーニングの後、ブラックボックスモデル120の予測性能を厳密に複製する出力(すなわち、予測)を生成する。いくつかの例では、局所解釈可能モデル190は、トレーニングサンプル130のセットまたは補助トレーニングサンプル140のセット全体に関してトレーニングするのではなく、補助トレーニングサンプル140Sのサブセットのみに関してトレーニングする。すなわち、サンプラ180は、補助トレーニングサンプル140のセット全体から補助トレーニングサンプル140Sのサブセットを選択して、局所解釈可能モデル190をトレーニングする。補助トレーニングサンプル140Sのサブセットに関して局所解釈可能モデル190をトレーニングすることにより、局所解釈可能モデルは、補助トレーニングサンプル140のサブセットのみに関してトレーニングしている間、ブラックボックスモデル120の性能にほぼ適合する。
【0026】
ここで図2A図2Eを参照すると、いくつかの実現例では、トレーニングサンプル130のセット内の各トレーニングサンプル130はトレーニングデータ202および所与のラベル204を含む。概略図200a(図2A)に示されるように、ブラックボックスモデル120のトレーニングは、トレーニングデータ202および所与のラベル204を含み得る。モデルトレーナ110はブラックボックスモデル120にトレーニングデータ202を提供し、ブラックボックスモデル120は当該トレーニングデータ202に基づいて予測208(本明細書では予測ラベル208とも称される)を生成する。モデルトレーナ110は、予測208を所与のラベル204と比較して、予測208の精度を判断する。
【0027】
いくつかの例では、モデルトレーナ110は、損失関数206(たとえば、平均二乗誤差損失関数または交差エントロピー損失関数)を最小化することによってブラックボックスモデル120をトレーニングする。損失関数206は、トレーニングサンプル130からの所与のラベル204に対する、ブラックボックスモデル120によって決定された予測ラベル208の精度を示す。たとえば、損失関数206は平均絶対誤差の算出を含み、この場合、誤差が低いほど、最適な損失関数206を示す。損失関数206を最小化することによって、ブラックボックスモデル120は、所与のラベル204に厳密に適合するように予測ラベル208を正確に生成するためにトレーニングを受ける。いくつかの例では、ブラックボックスモデル120は、所与のラベル204なしでトレーニングを受ける(すなわち、教師なし学習)。ここで、ブラックボックスモデル120は、所与のラベル204と比較することなく予測ラベル208を生成する。損失関数206は予測ラベル208の忠実度を定量化する。損失関数206からの結果(すなわち、損失)は、ブラックボックスモデル120を最適化するためにブラックボックスモデル120に対するフィードバックとしての役割を果たす。
【0028】
ブラックボックスモデル120は任意のタイプの学習モデルを含み得る。いくつかの例では、ブラックボックスモデル120は、予めトレーニングされるとともにメモリハードウェア14に格納される。このシナリオでは、モデルトレーナ110は、ブラックボックスモデル120(図2A)のトレーニングを迂回し得るとともに、代わりに、トレーニングされたブラックボックスモデル120をメモリハードウェア14から取出し得る。
【0029】
図2Aを引続き参照すると、いくつかの実現例では、トレーニングデータ202および所与のラベル204は画像(たとえば、自転車などの物体の画像)を表わす。ブラックボックスモデル120は、トレーニングデータ202(たとえば、自転車の画像)を分析して予測ラベル208を生成する。モデルトレーナ110は、予測ラベル208を所与のラベル204と比較して損失関数206を算出する。いくつかの例では、ブラックボックスモデル120は予測ラベル208を正確に生成し(たとえば、所与のラベル204によって画像が自転車を含むことも示される場合に、ブラックボックスモデル120によって画像が自転車を含むと予測される)、損失関数206は低い平均絶対誤差を示す。いくつかの実現例では、ブラックボックスモデル120が予測ラベル208を不正確に生成する(たとえば、所与のラベル204によって入力画像が自転車を含んでいたことが示される場合に、予測ラベル208によって入力画像が車を含んでいたことが示される)場合、損失関数206は高い平均絶対誤差を示す。損失関数206からの結果(すなわち、算出された損失)は、ブラックボックスモデル120を最適化するように当該ブラックボックスモデル120にフィードバックされる。ブラックボックスモデル120のためのトレーニングデータ202に基づいて損失関数206を算出する反復プロセスは、損失が最適な閾値に達するまで繰返されてもよい。
【0030】
概略図200b(図2B)に示されるように、トレーニングされたブラックボックスモデル120は補助トレーニングサンプル140を作成する。いくつかの実現例では、モデルトレーナ110は、それぞれのトレーニングサンプル130のトレーニングデータ202を用いて、トレーニングされたブラックボックスモデル120からそれぞれのトレーニングサンプル130についての関連する予測ラベル208を取得することによって、補助トレーニングサンプル140のセットを生成する。モデルトレーナ110は、それぞれのトレーニングサンプル130のトレーニングデータ202を予測ラベル208と組合わせて補助トレーニングサンプル140を形成する。モデルトレーナ110は、補助トレーニングサンプル140を補助トレーニングサンプル140のセットに追加する。モデルトレーナ110は、補助トレーニングサンプル140のセットを用いて、インスタンスごとの重み推定モデル160をトレーニングし、および/または、局所解釈可能モデル190をトレーニングする。補助トレーニングサンプル140は補助トレーニングデータおよび補助ラベルを含み得る。いくつかの実現例では、補助トレーニングサンプル140はプローブトレーニングサンプル222、222a~222nを含む。プローブトレーニングサンプル222は、ブラックボックスモデル120をトレーニングするのに用いられないトレーニングサンプル130のサブセットであり得る。他の例では、プローブトレーニングサンプル222は、トレーニングサンプル130のセットから独立したトレーニングサンプルの第2のセットであってもよい。言い換えれば、プローブトレーニングサンプル222は、インスタンスごとの重み推定器モデルまたはベースライン解釈可能モデル150をトレーニングする際に利用されないトレーニングデータを含み得る。
【0031】
ここで図2Cを参照すると、概略図200cはベースライン解釈可能モデル150を含む。モデルトレーナ110は、補助トレーニングサンプル140のセット(すなわち、トレーニングデータ202および予測ラベル208)を用いてベースライン解釈可能モデル150をトレーニングする。ベースライン解釈可能モデル150は、インスタンスごとの重み推定器モデル160をトレーニングする際の安定性を改善させる。モデルトレーナ110は、ブラックボックスモデル120の予測を複製するためにベースライン解釈可能モデル150を最適化する。ベースライン解釈可能モデル150は局所解釈可能モデル190についての性能のベンチマークとしての役割を果たす。
【0032】
概略図200d(図2D)に示されるように、いくつかの実現例では、モデルトレーナ110は、インスタンスごとの重み推定器モデル160をトレーニングする際に、以下でより詳細に説明するように、強化信号226を決定し、当該強化信号226に基づいてインスタンスごとの重み推定器モデル160を更新する。インスタンスごとの重み推定器モデル160は、局所解釈可能モデル190をフィットさせるようにインスタンスごとの重み(すなわち、選択確率170)を出力する。いくつかの例では、インスタンスごとの重み推定器160は、複雑な機械学習モデル(たとえば、ディープニューラルネットワーク)を含む。インスタンスごとの重み推定器モデル160は、局所解釈可能モデル190をトレーニングするトレーニングインスタンスの選択確率170を推定する。
【0033】
いくつかの実現例では、インスタンスごとの重み推定器モデル160をトレーニングするために、モデルトレーナ110はプローブトレーニングサンプル222のセットを取得する。プローブトレーニングサンプル222のセット内の各プローブトレーニングサンプル222ごとに、インスタンスごとの重み推定器モデル160は、関連する選択確率170を推定する。すなわち、インスタンスごとの重み推定器は、各プローブトレーニングサンプル入力222に基づいて予測(すなわち、選択確率170)を決定する。各選択確率170は、局所解釈可能モデル190をトレーニングするためのプローブトレーニングサンプル222の値を示す。たとえば、局所解釈可能モデル190をトレーニングするのに有益であるプローブトレーニングサンプル222は高い選択確率170を有する。他の例では、局所解釈可能モデル190をトレーニングするには品質が低いかまたは問題があるトレーニングサンプル130は低い選択確率170を有する。
【0034】
いくつかの例では、モデルトレーナ110は、各プローブトレーニングサンプル222の選択確率170に基づいてインスタンスごとの選択ベクトル224を決定することによって、インスタンスごとの重み推定器モデル160をトレーニングする。特に、サンプラ180は、選択確率170から選択して選択ベクトル224を生成する。選択ベクトル224は、補助トレーニングサンプル140のセット内の各補助トレーニングサンプル140ごとの選択確率170を示す。いくつかの例では、サンプラ180は、選択ベクトル224内の選択された選択確率170に対応する補助トレーニングサンプル140を補助トレーニングサンプル140Sのサブセットに追加する。選択ベクトル224は、各対応する選択確率170ごとの選択値244を含み得る。モデルトレーナ110は、補助トレーニングサンプル140Sのサブセットを用いて局所解釈可能モデル190をトレーニングする。モデルトレーナ110は、インスタンスごとの選択ベクトル224に基づいて局所解釈可能モデル190を最適化し、最適化された局所解釈可能モデル190からの損失データ228に基づいてインスタンスごとの重み推定器モデル160を更新する。
【0035】
いくつかの例では、モデルトレーナ110は、損失関数206に基づいて局所解釈可能モデル190についての第1の損失データ228aを決定するとともに別の損失関数206に基づいてベースライン解釈可能モデル150についての第2の損失データ228bを決定することによって、強化信号226を決定する。モデルトレーナは、いくつかの実現例では、局所解釈可能モデル190についての第1の損失データ228aおよびベースライン解釈可能モデル150についての第2の損失データ228bに基づいて強化信号226を決定する。局所解釈可能モデル190およびベースライン解釈可能モデル150の両方が、1つ以上の損失関数206に基づいて損失228a、220bを算出する。いくつかの実現例では、モデルトレーナ110は、局所解釈可能モデル190の第1の損失228aをベースライン解釈可能モデル150の第2の損失228bと比較する。ベースライン解釈可能モデル150の出力はブラックボックスモデル120の出力を厳密に表わしているので、ローカル解釈可能モデル190の第1の損失228aをベースライン解釈可能モデル150の損失228bと比較することにより、ブラックボックスモデル120に対するローカル解釈可能モデル190の忠実度が確立される。強化信号226は、第1の損失データ228aおよび第2の損失データ228bに基づいて、局所解釈可能モデル190とベースライン解釈可能モデル150との間で同様の予測を与える。
【0036】
いくつかの例では、インスタンスごとの重み推定器モデル160をトレーニングするための選択確率170は式(1)によって決定される。
【0037】
【数1】
【0038】
式(1)において、
【0039】
【数2】
【0040】
は、hΦを前提として、
【0041】
【数3】
【0042】
についての確率質量関数を示す。ここで、hΦ(x,x,f(x))は、プローブデータxについての各トレーニングペア(x,f(x))についてのインスタンスごとの重みを表わす。バイナリベクトル
【0043】
【数4】
【0044】
は、
【0045】
【数5】
【0046】
についての局所解釈可能モデル190をトレーニングするために、
【0047】
【数6】
【0048】
が選択されるような選択動作を表わす。
いくつかの実現例では、サンプラ180は、微分不可能な目標をもたらし、従来の勾配降下ベースの最適化を用いてもインスタンスごとの重み推定器160をトレーニングすることができない。代わりに、モデルトレーナ110は強化アルゴリズムを利用することで、その影響の成果によってサンプラ180の選択が与えられるようにする。いくつかの例では、損失関数206は、最適化された局所解釈可能モデル190からの損失データに基づいて、インスタンスごとの重み推定器モデル160を更新する。インスタンスごとの重み推定器160についての損失関数は以下のように表わされ得る。
【0049】
【数7】
【0050】
強化アルゴリズムを適用するために、モデルトレーナ110は、インスタンスごとの重み推定器について損失関数の勾配を(たとえば、式(2)を用いて)計算する。損失関数の勾配を用いて、以下のステップは、インスタンスごとの重み推定器160のパラメータを更新するステップを反復的に採用する。ステップ1は、ミニバッチ内の各トレーニングおよびプローブインスタンスに関して、インスタンスごとの重み
【0051】
【数8】
【0052】
およびインスタンスごとの選択ベクトル224
【0053】
【数9】
【0054】
を推定するステップを含む。ステップ2は、各プローブインスタンス
【0055】
【数10】
【0056】
ごとに選択ベクトル224で局所解釈可能モデル190を最適化するステップを含む。ステップ3は、インスタンスごとの重み推定モデル160のパラメータΦを更新するステップを含む。
【0057】
【数11】
【0058】
式(4)において、αは学習率であり、
【0059】
【数12】
【0060】
は性能改善についてのベンチマークに対するベースライン損失である。上述のステップは損失228a、損失228bが収束するまで繰返される。
【0061】
インスタンスごとの重み推定器モデル160をトレーニングする場合、モデルトレーナ110は、強化信号226を決定し得るとともに、当該強化信号226に基づいてインスタンスごとの重み推定器モデル160を更新し得る。強化信号226は、局所解釈可能モデル190の予測がブラックボックスモデル120の予測にどれだけ正確に合致するかを表わす忠実度メトリックを定量化する。たとえば、第1の損失228aおよび第2の損失228bが類似している場合、強化信号226は、類似の結果を与えてインスタンスごとの重み推定器160を更新する。
【0062】
いくつかの実現例では、サンプラ180は、補助トレーニングサンプル140のセット内の各補助トレーニングサンプル140ごとに、選択確率170に基づいて、選択または選択なしのいずれかを示す対応する選択値244を決定することによって、補助トレーニングサンプル140のセットから補助トレーニングサンプル140Sのサブセットを選択する。対応する選択値244が選択を示す場合、サンプラ180は、補助トレーニングサンプル140を補助トレーニングサンプル140Sのサブセットに追加し得る。特に、サンプラ180は、選択確率170の閾値を満たす選択確率170を選択する。これら選択確率170は各々が補助トレーニングサンプル140に対応している。いくつかの実現例では、閾値を満たす選択確率170は選択を示す選択値244を受取り、サンプラ180は、選択された補助トレーニングサンプル140を補助トレーニングサンプル140Sのサブセットに追加する。対照的に、閾値を満たさない選択確率170は、選択なしを示す選択値244を受取り、サンプラ180は、補助トレーニングサンプル140Sのサブセット内に補助トレーニングサンプル140Sを含まない。
【0063】
概略図200(e)(図2E)に示されるように、いくつかの実現例では、インスタンスごとの重み推定器モデル160をトレーニングした後、インスタンスごとの重み推定器モデル160は検証サンプル242を受取る。検証サンプル242はトレーニングデータ202および所与のラベル204を含み得る。インスタンスごとの重み推定器モデル160は、補助トレーニングサンプル140のセット内の各補助トレーニングサンプル140ごとに選択確率170を生成する。モデルトレーナ110は、選択確率170の重み付けされた最適化を局所解釈可能モデル190に送信する。モデルトレーナ110は、検証サンプル242と補助トレーニングサンプル140Sのセット内の各補助トレーニングサンプル140Sの選択確率170とに基づいて、局所解釈可能モデル190をトレーニングする。トレーニングされた解釈可能モデル190の出力は、インスタンスごとの予測および対応する説明である。たとえば、対応する説明は、フィッティングされた線形モデルの係数によって与えられる、検証サンプル242におけるブラックボックスモデル予測の局所力学を含み得る。
【0064】
図3は、局所解釈可能モデルをトレーニングするための方法300についての動作の例示的な構成を示すフローチャートである。動作302において、方法300は、データ処理ハードウェア12においてトレーニングサンプル130のセットを取得するステップを含む。各トレーニングサンプル130はトレーニングデータ202および所与のラベル204を含み得る。動作304において、方法300は、データ処理ハードウェア12によって、トレーニングサンプル130のセットを用いてブラックボックスモデル120をトレーニングするステップを含む。方法300は、動作306において、データ処理ハードウェア12によって、トレーニングされたブラックボックスモデル120およびトレーニングサンプル130のセットを用いて、補助トレーニングサンプル140のセットを生成するステップを含む。
【0065】
方法300は、動作308において、データ処理ハードウェア12によって、補助トレーニングサンプル140のセットを用いて、ベースライン解釈可能モデル150をトレーニングするステップを含む。動作310において、方法300は、データ処理ハードウェア12によって、補助トレーニングサンプル140のセットおよびベースライン解釈可能モデル150を用いて、インスタンスごとの重み推定器モデル160をトレーニングするステップを含む。動作312において、方法300は、補助トレーニングサンプル140のセット内の各補助トレーニングサンプル140ごとに、データ処理ハードウェア12によって、トレーニングされたインスタンスごとの重み推定器モデル160を用いて、補助トレーニングサンプル140についての選択確率170を決定するステップを含む。動作314において、方法300は、データ処理ハードウェア12によって、選択確率170に基づいて、補助トレーニングサンプル140のセットから補助トレーニングサンプル140Sのサブセットを選択するステップを含む。動作316において、方法300は、補助トレーニングサンプル140Sのサブセットを用いて、局所解釈可能モデル190をトレーニングするステップを含む。
【0066】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)とは、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指し得る。いくつかの例では、ソフトウェアアプリケーションは「アプリケーション」、「アプリ」、または「プログラム」とも称され得る。例示的なアプリケーションは、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、文書処理アプリケーション、表計算アプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションを含むが、それらに限定されない。
【0067】
図4は、本明細書で説明するシステムおよび方法を実現するために使用され得る例示的なコンピューティングデバイス400の概略図である。コンピューティングデバイス400は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの、さまざまな形態のデジタルコンピュータを表わすよう意図されている。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は単なる例示を意図したものであって、この文書で説明および/または主張される本発明の実現例を限定するよう意図したものではない。
【0068】
コンピューティングデバイス400は、プロセッサ410と、メモリ420と、ストレージデバイス430と、メモリ420および高速拡張ポート450に接続している高速インターフェイス/コントローラ440と、低速バス470およびストレージデバイス430に接続している低速インターフェイス/コントローラ460とを含む。コンポーネント410、420、430、440、450、および460の各々は、さまざまなバスを使用して相互接続されており、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。プロセッサ410は、コンピューティングデバイス400内で実行される命令を処理可能であり、これらの命令は、グラフィカルユーザインターフェイス(graphical user interface:GUI)のためのグラフィック情報を、高速インターフェイス440に結合されたディスプレイ480などの外部入出力デバイス上に表示するために、メモリ420内またはストレージデバイス430に格納された命令を含む。他の実現例では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数のタイプのメモリとともに適宜使用されてもよい。また、複数のコンピューティングデバイス400が接続されてもよく、各デバイスは(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の部分を提供する。
【0069】
メモリ420は、情報をコンピューティングデバイス400内に非一時的に格納する。メモリ420は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ420は、プログラム(たとえば命令のシーケンス)またはデータ(たとえばプログラム状態情報)を、コンピューティングデバイス400による使用のために一時的または永続的に格納するために使用される物理デバイスであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読出専用メモリ(ROM)/プログラマブル読出専用メモリ(PROM)/消去可能プログラマブル読出専用メモリ(EPROM)/電子的消去可能プログラマブル読出専用メモリ(EEPROM)(たとえば、典型的にはブートプログラムなどのファームウェアのために使用される)を含むが、それらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープを含むが、それらに限定されない。
【0070】
ストレージデバイス430は、コンピューティングデバイス400のための大容量ストレージを備えることができる。いくつかの実現例では、ストレージデバイス430はコンピュータ可読媒体である。さまざまな異なる実現例では、ストレージデバイス430は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、または、ストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであってもよい。追加の実現例では、コンピュータプログラム製品が情報担体において有形に具現化され得る。コンピュータプログラム製品は、実行されると上述のような1つ以上の方法を実行する命令を含む。情報担体は、メモリ420、ストレージデバイス430、またはプロセッサ410上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0071】
高速コントローラ440はコンピューティングデバイス400のための帯域幅集中型の動作を管理し、一方、低速コントローラ460はより低帯域幅集中型の動作を管理する。このような役務機能の割当ては例示に過ぎない。いくつかの実現例では、高速コントローラ440は、メモリ420、ディスプレイ480に(たとえば、グラフィックスプロセッサまたはアクセラレータを介して)結合されるとともに、さまざまな拡張カード(図示せず)を受付け得る高速拡張ポート450に結合される。いくつかの実現例では、低速コントローラ460は、ストレージデバイス430および低速拡張ポート490に結合される。さまざまな通信ポート(たとえば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポート490は、キーボード、ポインティングデバイス、スキャナなどの1つ以上の入出力デバイスに、または、スイッチもしくはルータなどのネットワーキングデバイスに、たとえばネットワークアダプタを介して結合されてもよい。
【0072】
コンピューティングデバイス400は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、標準サーバ400aとして、またはそのようなサーバ400aのグループにおいて複数回実現されてもよく、ラップトップコンピュータ400bとして、またはラックサーバシステム400cの一部として実現されてもよい。
【0073】
ここに説明されるシステムおよび技術のさまざまな実現例は、デジタル電子および/または光学回路、集積回路、特別に設計された特定用途向け集積回路(application specific integrated circuit:ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せにおいて実現され得る。これらのさまざまな実現例は、データおよび命令をストレージシステムとの間で送受信するように結合された、専用または汎用であり得る少なくとも1つのプログラマブルプロセッサと、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを含むプログラマブルシステム上で実行可能および/または解釈可能である1つ以上のコンピュータプログラムにおける実現例を含み得る。
【0074】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても公知である)は、プログラマブルプロセッサのための機械命令を含むとともに、高レベルの手続き型および/またはオブジェクト指向型プログラミング言語で、および/またはアセンブリ/機械語で実現され得る。本明細書中で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、機器および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(Programmable Logic Device:PLD))を指し、機械命令を機械可読信号として受信する機械可読媒体を含む。「機械可読信号」という語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0075】
この明細書で説明されるプロセスおよび論理フローは、データ処理ハードウェアとも称される1つ以上のプログラマブルプロセッサが、入力データに基づいて動作することおよび出力を生成することによって機能を実行するために1つ以上のコンピュータプログラムを実行することによって実行可能である。プロセスおよび論理フローはまた、たとえばフィールドプログラマブルゲートアレイ(field programmable gate array:FPGA)またはASIC(特定用途向け集積回路)といった専用論理回路によっても実行可能である。コンピュータプログラムの実行に適したプロセッサは、一例として、汎用および専用のマイクロプロセッサと、任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサとを含む。一般に、プロセッサは、命令およびデータを、読出専用メモリまたはランダムアクセスメモリまたはそれら双方から受信するであろう。コンピュータの本質的要素は、命令を実行するためのプロセッサと、命令およびデータを格納するための1つ以上のメモリデバイスとである。一般に、コンピュータはまた、たとえば磁気ディスク、光磁気ディスクまたは光ディスクなどの、データを格納するための1つ以上の大容量ストレージデバイスを含むこととなるか、または、当該大容量ストレージデバイスからデータを受信するかまたは当該大容量ストレージデバイスにデータを転送するかまたはそれら双方を行なうように動作可能に結合されることとなるだろう。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ可読媒体は、あらゆる形態の不揮発性メモリ、媒体、およびメモリデバイスを含み、一例として、半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、たとえば内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびに、CD ROMおよびDVD-ROMディスクを含む。プロセッサおよびメモリは、専用論理回路によって補完されてもよく、または専用論理回路に組込まれてもよい。
【0076】
ユーザとの対話を提供するために、この開示の1つ以上の局面は、情報をユーザに表示するためのディスプレイデバイス、たとえば陰極線管(cathode ray tube:CRT)、液晶ディスプレイ(liquid crystal display:LCD)モニタ、またはタッチスクリーンと、任意には、ユーザによるコンピュータへの入力を可能にするキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実現され得る。他の種類のデバイスも同様に、ユーザとの対話を提供するために使用され得る。たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであり得る。また、ユーザからの入力は、音響入力、音声入力または触覚入力を含む任意の形態で受信され得る。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、当該デバイスから文書を受信することによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答してウェブページを当該ウェブブラウザに送信することによって、ユーザと対話することができる。
【0077】
いくつかの実現例を説明してきた。にもかかわらず、本開示の精神および範囲から逸脱することなく、さまざまな変更を行なわれ得ることが理解されるだろう。したがって、他の実現例は添付の特許請求の範囲内にある。
図1
図2A
図2B
図2C
図2D
図2E
図3
図4
【手続補正書】
【提出日】2022-06-20
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
局所解釈可能モデルをトレーニングするための方法であって、前記方法は
データ処理ハードウェアにおいて、トレーニングサンプルのセットを取得するステップと、
前記データ処理ハードウェアによって、前記トレーニングサンプルのセットを用いて、ブラックボックスモデルをトレーニングするステップと、
前記データ処理ハードウェアによって、前記トレーニングされたブラックボックスモデルおよび前記トレーニングサンプルのセットを用いて、補助トレーニングサンプルのセットを生成するステップと、
前記データ処理ハードウェアによって、前記補助トレーニングサンプルのセットを用いて、ベースライン解釈可能モデルをトレーニングするステップと、
前記データ処理ハードウェアによって、前記補助トレーニングサンプルのセットおよび前記ベースライン解釈可能モデルを用いて、インスタンスごとの重み推定器モデルをトレーニングするステップと、
前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、前記データ処理ハードウェアによって、前記トレーニングされたインスタンスごとの重み推定器モデルを用いて、前記補助トレーニングサンプルについての選択確率を決定するステップと、
前記データ処理ハードウェアによって、前記選択確率に基づいて、前記補助トレーニングサンプルのセットから補助トレーニングサンプルのサブセットを選択するステップと、
前記データ処理ハードウェアによって、前記補助トレーニングサンプルのサブセットを用いて、前記局所解釈可能モデルをトレーニングするステップとを含む、方法。
【請求項2】
前記インスタンスごとの重み推定器モデルをトレーニングするステップは、
強化信号を決定するステップと、
前記強化信号に基づいて前記インスタンスごとの重み推定器モデルを更新するステップとを含む、請求項1に記載の方法。
【請求項3】
前記強化信号を決定するステップは、
損失関数に基づいて前記局所解釈可能モデルについての第1の損失データを決定するステップと、
前記損失関数に基づいて前記ベースライン解釈可能モデルについての第2の損失データを決定するステップと、
前記局所解釈可能モデルについての前記第1の損失データおよび前記ベースライン解釈可能モデルについての前記第2の損失データに基づいて前記強化信号を決定するステップとを含む、請求項2に記載の方法。
【請求項4】
前記補助トレーニングサンプルのセットから前記補助トレーニングサンプルのサブセットを選択するステップは、前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、
前記選択確率に基づいて、選択または選択なしを示す対応する選択値を決定するステップと、
前記対応する選択値が選択を示す場合、前記補助トレーニングサンプルを前記補助トレーニングサンプルのサブセットに追加するステップとを含む、請求項1から3のいずれか1項に記載の方法。
【請求項5】
各補助トレーニングサンプルごとに、前記補助トレーニングサンプルについての前記選択確率を決定するステップは、
前記インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取るステップと、
前記インスタンスごとの重み推定器モデルによって、前記検証サンプルに基づいて前記選択確率を決定するステップとを含む、請求項4に記載の方法。
【請求項6】
前記インスタンスごとの重み推定器モデルをトレーニングした後、
前記インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取るステップと、
前記インスタンスごとの重み推定器モデルによって、前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに前記選択確率を生成するステップと、
前記検証サンプルと、前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルの前記選択確率とに基づいて、前記局所解釈可能モデルをトレーニングするステップとをさらに含む、請求項1から5のいずれか1項に記載の方法。
【請求項7】
前記ブラックボックスモデルをトレーニングするステップは、平均二乗誤差損失関数または交差エントロピー損失関数を最小化するステップを含む、請求項1から6のいずれか1項に記載の方法。
【請求項8】
前記トレーニングサンプルのセット内の各トレーニングサンプルは、トレーニングデータおよび所与のラベルを含む、請求項1から7のいずれか1項に記載の方法。
【請求項9】
前記補助トレーニングサンプルのセットを生成するステップは、前記トレーニングサンプルのセット内の各トレーニングサンプルごとに、
前記トレーニングサンプルの前記トレーニングデータを用いて、前記トレーニングされたブラックボックスモデルから、前記トレーニングデータについての予測ラベルを取得するステップと、
前記トレーニングデータと前記予測ラベルとを組合わせて補助トレーニングサンプルにするステップと、
前記補助トレーニングサンプルを前記補助トレーニングサンプルのセットに追加するステップとを含む、請求項8に記載の方法。
【請求項10】
前記インスタンスごとの重み推定器モデルをトレーニングするステップは、
プローブトレーニングサンプルのセットを取得するステップと、
前記プローブトレーニングサンプルのセット内の各プローブトレーニングサンプルごとに、選択確率を決定するステップと、
各プローブトレーニングサンプルの前記選択確率に基づいて、インスタンスごとの選択ベクトルを決定するステップと、
前記インスタンスごとの選択ベクトルに基づいて前記局所解釈可能モデルを最適化するステップと、
前記最適化された局所解釈可能モデルからの損失データに基づいて、前記インスタンスごとの重み推定器モデルを更新するステップとを含む、請求項1から9のいずれか1項に記載の方法。
【請求項11】
システムであって、
データ処理ハードウェアと
前記データ処理ハードウェアと通信するメモリハードウェアとを含み、前記メモリハードウェアは、前記データ処理ハードウェア上で実行されると、前記データ処理ハードウェアに、以下の動作を実行させる命令を格納しており、前記以下の動作は、
トレーニングサンプルのセットを取得する動作と、
前記トレーニングサンプルのセットを用いて、ブラックボックスモデルをトレーニングする動作と、
前記トレーニングされたブラックボックスモデルおよび前記トレーニングサンプルのセットを用いて、補助トレーニングサンプルのセットを生成する動作と、
前記補助トレーニングサンプルのセットを用いて、ベースライン解釈可能モデルをトレーニングする動作と、
前記補助トレーニングサンプルのセットおよび前記ベースライン解釈可能モデルを用いて、インスタンスごとの重み推定器モデルをトレーニングする動作と、
前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、前記トレーニングされたインスタンスごとの重み推定器モデルを用いて、前記補助トレーニングサンプルについての選択確率を決定する動作と、
前記選択確率に基づいて、前記補助トレーニングサンプルのセットから補助トレーニングサンプルのサブセットを選択する動作と、
前記補助トレーニングサンプルのサブセットを用いて、局所解釈可能モデルをトレーニングする動作とを含む、システム。
【請求項12】
前記インスタンスごとの重み推定器モデルをトレーニングする動作は、
強化信号を決定する動作と、
前記強化信号に基づいて前記インスタンスごとの重み推定器モデルを更新する動作とを含む、請求項11に記載のシステム。
【請求項13】
前記強化信号を決定する動作は、
損失関数に基づいて前記局所解釈可能モデルについての第1の損失データを決定する動作と、
前記損失関数に基づいて前記ベースライン解釈可能モデルについての第2の損失データを決定する動作と、
前記局所解釈可能モデルについての前記第1の損失データおよび前記ベースライン解釈可能モデルについての前記第2の損失データに基づいて前記強化信号を決定する動作とを含む、請求項12に記載のシステム。
【請求項14】
前記補助トレーニングサンプルのセットから前記補助トレーニングサンプルのサブセットを選択する動作は、前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに、
前記選択確率に基づいて、選択または選択なしを示す対応する選択値を決定する動作と、
前記対応する選択値が選択を示す場合、前記補助トレーニングサンプルを前記補助トレーニングサンプルのサブセットに追加する動作とを含む、請求項11から13のいずれか1項に記載のシステム。
【請求項15】
各補助トレーニングサンプルごとに、前記補助トレーニングサンプルについての前記選択確率を決定する動作は、
前記インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取る動作と、
前記インスタンスごとの重み推定器モデルによって、前記検証サンプルに基づいて前記選択確率を決定する動作とを含む、請求項14に記載のシステム。
【請求項16】
前記以下の動作はさらに、前記インスタンスごとの重み推定器モデルをトレーニングした後、
前記インスタンスごとの重み推定器モデルにおいて、検証サンプルを受取る動作と、
前記インスタンスごとの重み推定器モデルによって、前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルごとに前記選択確率を生成する動作と、
前記検証サンプルと前記補助トレーニングサンプルのセット内の各補助トレーニングサンプルの前記選択確率とに基づいて、前記局所解釈可能モデルをトレーニングする動作とをさらに含む、請求項11から15のいずれか1項に記載のシステム。
【請求項17】
前記ブラックボックスモデルをトレーニングする動作は、平均二乗誤差損失関数または交差エントロピー損失関数を最小化する動作を含む、請求項11から16のいずれか1項に記載のシステム。
【請求項18】
前記トレーニングサンプルのセット内の各トレーニングサンプルは、トレーニングデータおよび所与のラベルを含む、請求項11から17のいずれか1項に記載のシステム。
【請求項19】
前記補助トレーニングサンプルのセットを生成する動作は、前記トレーニングサンプルのセット内の各トレーニングサンプルごとに、
前記トレーニングサンプルの前記トレーニングデータを用いて、前記トレーニングされたブラックボックスモデルから、前記トレーニングデータについての予測ラベルを取得する動作と、
前記トレーニングデータと前記予測ラベルとを組合わせて補助トレーニングサンプルにする動作と、
前記補助トレーニングサンプルを前記補助トレーニングサンプルのセットに追加する動作とを含む、請求項18に記載のシステム。
【請求項20】
前記インスタンスごとの重み推定器モデルをトレーニングする動作は、
プローブトレーニングサンプルのセットを取得する動作と、
前記プローブトレーニングサンプルのセット内の各プローブトレーニングサンプルごとに、選択確率を決定する動作と、
各プローブトレーニングサンプルの前記選択確率に基づいて、インスタンスごとの選択ベクトルを決定する動作と、
前記インスタンスごとの選択ベクトルに基づいて前記局所解釈可能モデルを最適化する動作と、
前記最適化された局所解釈可能モデルからの損失データに基づいて、前記インスタンスごとの重み推定器モデルを更新する動作とを含む、請求項11から19のいずれか1項に記載のシステム。
【国際調査報告】