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

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

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

<>
  • 特許-距離に基づく学習信頼度モデル 図1
  • 特許-距離に基づく学習信頼度モデル 図2
  • 特許-距離に基づく学習信頼度モデル 図3A
  • 特許-距離に基づく学習信頼度モデル 図3B
  • 特許-距離に基づく学習信頼度モデル 図4
  • 特許-距離に基づく学習信頼度モデル 図5
  • 特許-距離に基づく学習信頼度モデル 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-06-04
(45)【発行日】2025-06-12
(54)【発明の名称】距離に基づく学習信頼度モデル
(51)【国際特許分類】
   G06N 20/00 20190101AFI20250605BHJP
【FI】
G06N20/00 130
【請求項の数】 10
【外国語出願】
(21)【出願番号】P 2023093008
(22)【出願日】2023-06-06
(62)【分割の表示】P 2022518767の分割
【原出願日】2020-09-24
(65)【公開番号】P2023116599
(43)【公開日】2023-08-22
【審査請求日】2023-06-15
(31)【優先権主張番号】62/904,978
(32)【優先日】2019-09-24
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】アリク,セルジャン・オメール
(72)【発明者】
【氏名】シン,チェン
(72)【発明者】
【氏名】ヂャン,ズーヂャオ
(72)【発明者】
【氏名】フィスター,トマス・ジョン
【審査官】宮司 卓佳
(56)【参考文献】
【文献】特開平09-091430(JP,A)
【文献】特表2018-529159(JP,A)
【文献】特開2019-125340(JP,A)
【文献】国際公開第2019/146422(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
データ処理ハードウェアによって実行され、前記データ処理ハードウェアに動作を実行させる、コンピュータにより実行される方法であって、前記動作は、
トレーニングサンプルのセットを取得することを含み、前記トレーニングサンプルのセットの各トレーニングサンプルは、正解ラベルを含み、前記方法はさらに、
前記トレーニングサンプルのセットを用いて分類モデルをトレーニングすることと、
前記分類モデルをトレーニングする間において、
前記分類モデルが前記トレーニングサンプルのセットのそれぞれのトレーニングサンプルを誤分類したことを、前記それぞれのトレーニングサンプルの正解ラベルに基づいて判断することと、
前記分類モデルが前記それぞれのトレーニングサンプルを誤分類したと判断することに応答して、前記それぞれのトレーニングサンプルを用いて信頼度モデルをトレーニングすることとを含み、
前記トレーニングサンプルのセットは複数のトレーニングデータサブセットを含み、各トレーニングデータサブセットは、異なるそれぞれのクラスに関連付けられ、前記それぞれのクラスに属する複数の対応するトレーニング例を有し、
前記信頼度モデルは、前記分類モデルの各予測についての信頼度スコアとして、各トレーニングサンプルから当該トレーニングサンプルの正解クラス中心までの距離を予測する、コンピュータにより実行される方法。
【請求項2】
前記分類モデルをトレーニングすることは、
前記トレーニングサンプルのセットから、トレーニングサンプルの第1サブセットを選択することと、
前記トレーニングサンプルのセットから、トレーニングサンプルの第2サブセットを選択することとを含み、前記トレーニングサンプルの第2サブセットは、前記トレーニングサンプルの第1サブセットに含まれないトレーニングサンプルを含み、前記分類モデルをトレーニングすることはさらに、
前記トレーニングサンプルの第1サブセットと前記トレーニングサンプルの第2サブセットとを用いて、前記分類モデルをトレーニングすることを含む、請求項1に記載の方法。
【請求項3】
前記分類モデルが前記それぞれのトレーニングサンプルを誤分類したと判断することは、前記分類モデルの予測と前記正解ラベルとの間の正解距離が閾値距離を満たさないと判断することを含む、請求項1または2に記載の方法。
【請求項4】
前記正解ラベルは、距離に基づく表現空間内に正解重心値を含む、請求項1~3のいずれか1項に記載の方法。
【請求項5】
データ処理ハードウェアによって実行され、前記データ処理ハードウェアに動作を実行させる、コンピュータにより実行される方法であって、前記動作は、
トレーニングサンプルのセットを取得することを含み、前記トレーニングサンプルのセットの各トレーニングサンプルは、正解ラベルを含み、前記方法はさらに、
前記トレーニングサンプルのセットを用いて分類モデルをトレーニングすることと、
前記分類モデルをトレーニングする間において、
前記分類モデルが前記トレーニングサンプルのセットのそれぞれのトレーニングサンプルを誤分類したことを、前記それぞれのトレーニングサンプルの正解ラベルに基づいて判断することと、
前記分類モデルが前記それぞれのトレーニングサンプルを誤分類したと判断することに応答して、前記それぞれのトレーニングサンプルを用いて信頼度モデルをトレーニングすることとを含み、
前記トレーニングサンプルのセットは複数のトレーニングデータサブセットを含み、各トレーニングデータサブセットは、異なるそれぞれのクラスに関連付けられ、前記それぞれのクラスに属する複数の対応するトレーニング例を有し、
前記信頼度モデルは、前記分類モデルがトレーニングされる間に前記分類モデルによって誤分類されたトレーニングサンプルにおいてのみトレーニングされる、コンピュータにより実行される方法。
【請求項6】
データ処理ハードウェアによって実行され、前記データ処理ハードウェアに動作を実行させる、コンピュータにより実行される方法であって、前記動作は、
トレーニングサンプルのセットを取得することを含み、前記トレーニングサンプルのセットの各トレーニングサンプルは、正解ラベルを含み、前記方法はさらに、
前記トレーニングサンプルのセットを用いて分類モデルをトレーニングすることと、
前記分類モデルをトレーニングする間において、
前記分類モデルが前記トレーニングサンプルのセットのそれぞれのトレーニングサンプルを誤分類したことを、前記それぞれのトレーニングサンプルの正解ラベルに基づいて判断することと、
前記分類モデルが前記それぞれのトレーニングサンプルを誤分類したと判断することに応答して、前記それぞれのトレーニングサンプルを用いて信頼度モデルをトレーニングすることとを含み、
前記トレーニングサンプルのセットは複数のトレーニングデータサブセットを含み、各トレーニングデータサブセットは、異なるそれぞれのクラスに関連付けられ、前記それぞれのクラスに属する複数の対応するトレーニング例を有し、
前記信頼度モデルは、前記分類モデルの各予測について信頼度スコアを予測する、コンピュータにより実行される方法。
【請求項7】
前記トレーニングサンプルのセットは画像データを含む、請求項1~のいずれか1項に記載の方法。
【請求項8】
前記分類モデルは、ディープニューラルネットワーク(DNN)を含む、請求項1~のいずれか1項に記載の方法。
【請求項9】
前記信頼度モデルは、ディープニューラルネットワーク(DNN)を含む、請求項1~のいずれか1項に記載の方法。
【請求項10】
データ処理ハードウェアと、
前記データ処理ハードウェアと通信するメモリハードウェアとを備え、前記メモリハードウェアは、前記データ処理ハードウェア上で実行されると前記データ処理ハードウェアに請求項1~のいずれか1項に記載の方法を実行させる命令を記憶する、システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、距離に基づく学習信頼度モデルに関する。
【背景技術】
【0002】
背景
機械学習モデルは、入力を受信し、受信された入力に基づいて、出力、たとえば、予測された出力を生成する。機械学習モデルは、データ上でトレーニングされる。しかしながら、予測のためにトレーニングされたモデルの信頼を定量化すること(信頼度較正としても知られる)は、課題である。「よく較正された」モデルの場合、より高い信頼度を有する予測は、正確である可能性がより高いはずである。しかしながら、モデル信頼度として誤って解釈される、パイプラインの終わりに得られる予測確率(softmax出力)は、モデ
ルの判定品質の較正が不十分であり、信頼度値は、分類が不正確であるときでさえ大きい傾向がある。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
本開示の一態様は、分類モデルおよび信頼度モデルを合わせてトレーニングするための方法を提供する。本方法は、データ処理ハードウェアにおいて、複数のトレーニングデータサブセットを含むトレーニングデータセットを受信することを含む。各トレーニングデータサブセットは、異なるそれぞれのクラスに関連付けられ、それぞれのクラスに属する複数の対応するトレーニング例を有する。トレーニングデータセット内の2つ以上のトレーニングデータサブセットから、本方法は、データ処理ハードウェアが、トレーニング例のサポートセットおよびトレーニング例のクエリセットを選択することも含む。トレーニング例のサポートセットは、2つ以上のトレーニングデータサブセットの各々からサンプリングされたK個のトレーニング例を含み、トレーニング例のクエリセットは、トレーニング例のサポートセットに含まれない、2つ以上のトレーニングデータサブセットの各々からサンプリングされたトレーニング例を含む。2つ以上のトレーニングデータサブセットに関連付けられるそれぞれのクラスごとに、本方法は、さらに、データ処理ハードウェアが、分類モデルを用いて、それぞれのクラスに属する、トレーニング例のサポートセット内のK個のトレーニング例に関連付けられるK個のサポート符号化を平均することによって、重心値を求めることを含む。トレーニング例のクエリセットにおける各トレーニング例について、本方法は、データ処理ハードウェアが、分類モデルを用いて、クエリ符号化を生成することと、データ処理ハードウェアが、クエリ符号化とそれぞれのクラスごとに求められた重心値との間のそれぞれの距離を表すクラス距離尺度を求めることと、データ処理ハードウェアが、クエリ符号化と、トレーニング例のクエリセット内の対応するトレーニング例に関連付けられる正解ラベルとの間の正解距離を求めることと、データ処理ハードウェアが、クラス距離尺度および正解距離に基づいて分類モデルのパラメータを更新することも含む。誤分類されたと識別された、トレーニング例のクエリセットにおける各トレーニング例について、本方法はさらに、データ処理ハードウェアが、信頼度モデルを用いて、対応する誤分類されたトレーニング例について分類モデルによって生成されたクエリ符号化の標準偏差値を生成することと、データ処理ハードウェアが、標準偏差値およびクエリ符号化を用いて、対応する誤分類されたトレーニング例について新たなクエリ符号化をサンプリングすることと、データ処理ハードウェアが、新たなクエリ符号化に基づいて信頼度モデルのパラメータを更新することとを含む。
【0004】
本開示の実現例は、以下の任意選択の特徴のうちの1つまたは複数を含んでもよい。い
くつかの実現例では、正解ラベルは、距離に基づく表現空間内に正解重心値を含む。いくつかの例では、クラス距離尺度および正解距離に基づいて分類モデルのパラメータを更新することは、クラス内距離を最小化し、クラス間距離を最大化するように、分類モデルをトレーニングする。
【0005】
いくつかの実現例では、信頼度モデルは、より大きい正解距離について標準偏差値を最大化し、それぞれの正解重心値に近い新たなクエリ符号化をサンプリングするようにトレーニングされる。いくつかの例では、誤分類されたと識別された、トレーニング例のクエリセット内の任意のトレーニング例は、距離閾値を満たさない正解距離を含む、トレーニング例のクエリセット内の任意のトレーニング例を含む。いくつかの実現例では、信頼度モデルは、距離閾値を満たす正解距離を含む、トレーニング例のクエリセットにおけるトレーニング例では、トレーニングされない。いくつかの例では、信頼度モデルのパラメータを更新することは、より大きなクラス距離尺度に関連付けられるクエリ符号化について、より大きな標準偏差値を出力するように信頼度モデルを促すように、信頼度モデルのパラメータを更新することを含む。いくつかの実現例では、トレーニング例は画像データを含む。分類モデルは、ディープニューラルネットワーク(DNN)を含んでもよい。いくつかの例では、信頼度モデルはディープニューラルネットワーク(DNN)を含む。
【0006】
本開示の別の態様は、分類モデルおよび信頼度モデルを合わせてトレーニングするためのシステムを提供する。本システムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェアによって実行されるとデータ処理ハードウェアに複数のトレーニングデータサブセットを含むトレーニングデータセットを受信することを含む動作を実行させる命令を記憶する。上記動作は、トレーニングデータセット内の2つ以上のトレーニングデータサブセットから、トレーニング例のサポートセットおよびトレーニング例のクエリセットを選択することも含む。トレーニング例のサポートセットは、2つ以上のトレーニングデータサブセットの各々からサンプリングされたK個のトレーニング例を含み、トレーニング例のクエリセットは、トレーニング例のサポートセットに含まれない、2つ以上のトレーニングデータサブセットの各々からサンプリングされたトレーニング例を含む。上記動作は、さらに、2つ以上のトレーニングデータサブセットに関連付けられるそれぞれのクラスごとに、データ処理ハードウェアが、分類モデルを用いて、それぞれのクラスに属する、トレーニング例のサポートセット内のK個のトレーニング例に関連付けられるK個のサポート符号化を平均することによって、重心値を求めることを含む。トレーニング例のクエリセットにおける各トレーニング例について、上記動作は、分類モデルを用いてクエリ符号化を生成することと、クエリ符号化とそれぞれのクラスごとに求められた重心値との間のそれぞれの距離を表すクラス距離尺度を求めることと、クエリ符号化と、トレーニング例のクエリセット内の対応するトレーニング例に関連付けられる正解ラベルとの間の正解距離を求めることと、クラス距離尺度および正解距離に基づいて分類モデルのパラメータを更新することも含む。上記動作はさらに、誤分類されたと識別された、トレーニング例のクエリセット内の各トレーニング例について、信頼度モデルを用いて、対応する誤分類されたトレーニング例について分類モデルによって生成されたクエリ符号化の標準偏差値を生成することと、標準偏差値およびクエリ符号化を用いて、対応する誤分類されたトレーニング例について新たなクエリ符号化をサンプリングすることと、新たなクエリ符号化に基づいて信頼度モデルのパラメータを更新することとを含む。
【0007】
本開示の実現例は、以下の任意選択の特徴のうちの1つまたは複数を含んでもよい。いくつかの実現例では、正解ラベルは、距離に基づく表現空間内に正解重心値を含む。いくつかの例では、クラス距離尺度および正解距離に基づいて分類モデルのパラメータを更新することは、クラス内距離を最小化し、クラス間距離を最大化するように、分類モデルをトレーニングする。
【0008】
いくつかの実現例では、信頼度モデルは、より大きい正解距離について標準偏差値を最大化し、正解重心値にできるだけ近い新たなクエリ符号化をサンプリングするようにトレーニングされる。いくつかの例では、誤分類されたと識別された、トレーニング例のクエリセット内の任意のトレーニング例は、距離閾値を満たさない正解距離を含む、トレーニング例のクエリセット内の任意のトレーニング例を含む。いくつかの実現例では、信頼度モデルは、距離閾値を満たす正解距離を含む、トレーニング例のクエリセットにおけるトレーニング例では、トレーニングされない。いくつかの例では、信頼度モデルのパラメータを更新することは、より大きなクラス距離尺度に関連付けられるクエリ符号化について、より大きな標準偏差値を出力するように信頼度モデルを促すように、信頼度モデルのパラメータを更新することを含む。いくつかの実現例では、トレーニング例は画像データを含む。分類モデルは、ディープニューラルネットワーク(DNN)を含んでもよい。いくつかの例では、信頼度モデルはディープニューラルネットワーク(DNN)を含む。
【0009】
本開示の1つ以上の実現例の詳細は、添付の図面および以下の説明に記載されている。他の態様、特徴、および利点は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0010】
図1】分類モデルおよび較正モデルをトレーニングするために距離に基づくエラーからの学習(DBLE)を実現するトレーニングフレームワークを提供する例示的なシステムである。
図2図1の分類モデルおよび較正モデルをトレーニングするためのDBLEアーキテクチャの例である。
図3A】トレーニング例の距離に基づく表現空間のプロットを示す。
図3B】トレーニング例の距離に基づく表現空間のプロットを示す。
図4】分類モデルおよび較正モデルをトレーニングするためにDBLEを用いるための例示的なアルゴリズムである。
図5】信頼度モデルと並行して分類モデルをトレーニングする方法のための動作の例示的な構成のフローチャートである。
図6】本明細書で説明されるシステムおよび方法を実現するために用いられ得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0011】
様々な図面における同様の参照符号は、同様の要素を示す。
詳細な説明
ディープニューラルネットワーク(DNN)をトレーニングするための従来の技法は、典型的には、較正不良のDNNをもたらす。DNNは、多くの重要な意思決定場面において展開されるので、較正不良は、費用が非常にかかり得る誤った判断をもたらし得る。DNNによって行われた誤った判断に基づいて動作すること防止するために、DNNが、DNNによって出力される判断上で信頼度推定を出力することは、望ましい。この目的のために、あるシステムは、低い信頼度でDNNによって出力された決定に基づいて動作するのを控えることができ、そのような決定に基づくことを回避でき、および/または人間の専門家に相談することができ、その結果、これらの低信頼度の決定が信頼され、それらに基づいて動作する場合に、有害な結果を避けることができる。残念ながら、正確な信頼度推定は、DNNにとって、特に較正不良のDNNにとっては、困難である。
【0012】
本明細書における実現例は、良好に較正されたニューラルネットワークをもたらすために距離に基づくエラーからの学習(DBLE)を実現するトレーニングフレームワークを対象とする。DBLEにおいて、あるシステムは、分類モデル(「予測モデル」とも呼ば
れる)と信頼度モデルとを並行してトレーニングする。DBLEを用いた分類モデルのトレーニングは、距離に基づく表現空間を学習し、それによって、距離に基づく表現空間は、所与のテストサンプルに対する分類モデルの性能を較正するために、テストサンプルの、当該テストサンプルの正解クラス中心までのL2距離を定義する。したがって、バニラトレーニング(最尤を最適化するための従来のトレーニング)とは異なり、DBLEで分類モデルをトレーニングすることは、その決定品質を較正する最高の信頼度測定として用いるための特徴を有する。しかしながら、テストサンプルについてこの距離を計算するには、正解クラス中心についてのラベルが必要であるため、それは、推論で直接取得することはできない。したがって、DBLEによる信頼度モデルのトレーニングは、この距離を推論中の信頼度スコアとして推定するように構成される。信頼度モデルをトレーニングするために、DBLEは、分類モデルのトレーニング中に、誤分類されたトレーニングサンプルを利用する(トレーニングエラーからの学習)。
【0013】
図1を参照すると、いくつかの実現例では、システム100は、リソース102を含むコンピューティング環境130を含み、リソース102は、データ処理ハードウェア104(例えば、サーバもしくはCPU)および/または命令を記憶する遠隔メモリハードウェア106を含み、命令は、データ処理ハードウェア104上で実行されるとデータ処理ハードウェア104に動作を実行させる。分類モデル210および信頼度モデル220を並行してトレーニングする、距離に基づくエラーからの学習(DBLE)アーキテクチャ200は、リソース102上に存在してもよい。図示の例では、DBLEアーキテクチャ200は、異なるそれぞれのクラスに関連付けられる複数のトレーニング例114を各々が含む複数のトレーニングデータサブセット112、112a~nを含むトレーニングデータセット110上で分類モデル210をトレーニングする。各トレーニング例114は、トレーニング例114が属するそれぞれのクラスを示す対応する正解ラベルを含む。ここで、正解ラベルは、距離に基づく表現空間において正解重心値212Gを含んでもよい。いくつかの例では、トレーニング例は画像または画像データに対応する。
【0014】
明らかとなるように、DBLEアーキテクチャ200は、分類モデル210を通して距離に基づく表現空間を学習し、この空間内の距離を利用して、充分に較正された分類をもたらすように、構成される。DBLEアーキテクチャ200は、表現空間におけるテストサンプルの位置と、同じクラスにおけるトレーニングサンプルに対するテストサンプルの距離との相関関係が、信頼度推定を誘導するための有用な情報を含むことに依拠する。すなわち、DBLEアーキテクチャは、テストサンプルの、正解クラス中心までの距離が、分類モデル210の性能を較正することができるように、トレーニングおよび推論のためのプロトタイプ学習を適応させて、分類を通して距離に基づく表現空間を学習するように構成される。本明細書で用いられる場合、プロトタイプ学習とは、表現空間における、サンプルの、それらの対応するクラス中心(「プロトタイプ」とも呼ばれる)までの距離にのみ依存する、トレーニングおよび予測の両方を指し、それによって、関連するサンプルが表現空間において一緒にクラスタリングされるように、クラス内距離を最小化し、クラス間距離を最大化するように、分類モデル210のトレーニングを最適化する。推論中、正解クラス中心の正解ラベルは未知であるので、DBLEアーキテクチャ200は、別個の信頼度モデル220を分類モデル210と合わせてトレーニングし、それによって、テストサンプルの、その正解クラス中心までの距離の推定を可能にする。具体的には、実現例は、トレーニング中に分類モデル210によって誤分類されたトレーニングサンプルのみで信頼度モデルをトレーニングすることを対象とする。モデル210、220は、各々、ディープニューラルネットワーク(DNN)を含んでもよい。
【0015】
図2は、分類モデル210および信頼度モデル220を並行して合わせてトレーニングするための例示的なDBLEアーキテクチャ200を提供し、分類モデル210によって誤分類されたと識別されたトレーニング例114を用いて信頼度モデル220をトレーニ
ングして、信頼度モデル220が、距離に基づく表現空間内における、テストサンプルの、その正解中心までの距離を、推論中において、その正解中心が分からない場合に、推定できるようにする。最小バッチ勾配降下の変形に基づく分類のためのバニラトレーニング技術とは対照的に、DBLEアーキテクチャは、分類モデル210をトレーニングするためにエピソードトレーニングを用い、DBLEは、トレーニングデータセット110からトレーニング例114をランダムにサンプリングしてトレーニング例の2つのセット、つまり、(1)トレーニング例のサポートセット114S、および(2)トレーニング例のクエリセット114Qを選択することによって、エピソードを作成する。より具体的には、DBLEは、最初に、複数のデータサブセット112からN個のトレーニングデータサブセット112をランダムにサンプリング/選択することによって、各エピソードを作成する。その後、DBLEは、N個のトレーニングデータサブセット112の各々からK個のトレーニング例114Sa~kをサンプリングすることによってトレーニングサンプルのサポートセット114Sを選択し、N個のトレーニングデータサブセット112の各々からトレーニングサンプルのサポートセット114Sに含まれないトレーニング例114をサンプリングすることによってトレーニング例のクエリセット114Qを選択する。いくつかの例では、N個のトレーニングデータサブセットは、トレーニングデータセット110内の2つ以上のトレーニングデータサブセット112を含む。N個のトレーニングデータサブセットは、複数のトレーニングデータサブセット全体を含むことができるが、DBLEは、トレーニングデータサブセット全体を用いることを必要とせず、なぜならば、異なるクラスの数が非常に大きい場合、トレーニング例のサポートセットからトレーニング例をバッチでプロセッサメモリに適合させることは、困難であり得るからである。
【0016】
N個のトレーニングデータサブセット112に関連付けられるそれぞれのクラスごとに、DBLEは、分類モデル210を用いて、それぞれのクラスに属する、トレーニング例のサポートセット114S内のK個のトレーニング例114Sa~kに関連付けられるK個のサポート符号化212S、212Sa~kを平均することによって、重心値214を求める。すなわち、所与のクラスについて、分類モデル210は、入力として、トレーニング例のサポートセット114S中のK個のトレーニング例114の各々を受け取り、出力として、サポートセット中の各トレーニング例について対応するサポート符号化212Sを生成する。その所与のクラスについて、DBLEは、K個のサポート符号化212Sを平均して、それぞれの所与のクラスについてそれぞれの重心値214を計算/求める。したがって、DBLEは、残りのN個のトレーニングサブセット212について繰り返され、各重心値214がN個のクラスのそれぞれのクラスを表すように、N個の重心値214が計算される。
【0017】
分類モデル210はさらに、トレーニング例のクエリセット114Qの各トレーニング例についてそれぞれのクエリ符号化212Q、hを生成し、DBLEは、クエリ符号化212Qとそれぞれのクラスごとに求められた重心値214との間のそれぞれの距離を表すクラス距離尺度を求める。DBLEはまた、クエリ符号化22Qと、トレーニング例のクエリセット114Q内の対応するトレーニング例に関連付けられる正解重心値212Gとの間の正解距離を求め、クラス距離尺度および正解距離に基づいて分類モデル210のパラメータを更新する。具体的には、DBLEは、クエリ符号化212Qと、N個のそれぞれのクラスの各々について求められた重心値214、214a~nとを受け取る、分類のプロト損失215を用いて、それぞれのクラス距離尺度を求め/計算し、正解重心値212Gを受け取って、クエリ符号化212Qと正解重心値212Gとの間の正解距離も求める/計算する。したがって、分類モデル210は、トレーニング可能なパラメータQによってパラメータ化される関数であり、以下の式によって表される、トレーニング例のサポートセット114Sを前提とする、トレーニング例のクエリセット114Qにおける各トレーニング例の正解重心値212Gの負の対数尤度に関連付けられる損失を用いる。
【0018】
【数1】
【0019】
式中、Seはトレーニング例のサポートセット114Sであり、Qeはトレーニング例のクエリセット114Qであり、yは正解重心値212Gであり、xは分類モデルに入力されるクエリセットトレーニング例114Qであり、θは分類モデル210のトレーニング可能なパラメータを表す。分類のプロトタイプの損失215は、以下の式を用いて、N個のクラスのそれぞれのクラスごとのそれぞれのクラス距離尺度に基づいて、トレーニング例のクエリセット114Q内の各トレーニング例xの予測ラベル分布を計算するように構成される。
【0020】
【数2】
【0021】
ここで、hは、距離に基づく表現空間において対応するトレーニング例xを表す対応するクエリ符号化214Qである。したがって、DBLEは、等式2を用いてトレーニング例のクエリセット114Q内の各トレーニング例xについて計算される予測ラベル分布
【0022】
【数3】
【0023】
を用いて式1によって計算される損失
【0024】
【数4】
【0025】
を最小化することによって、分類モデル210のトレーニング可能パラメータQを更新する。したがって、クエリ符号化212QおよびN個のクラスについて求められた重心値214の表現空間において、分類モデル210のトレーニングは、クラス間距離を最大化し、クラス内距離を最小化する。その結果、同じクラスに属するトレーニング例は一緒にクラスタリングされ、異なるクラスを表すクラスタは表現空間内で押し離される。
【0026】
分類モデル210を用いてトレーニング例のクエリセット114Q内の各トレーニング例を分類する一方で、DBLE200は、分類モデル210によって誤分類された任意のトレーニング例を識別する。DBLE200は、分類モデル210によって予測された分類がトレーニング例の対応する正解ラベル212Gと一致しない場合に、そのトレーニング例を誤認識として識別してもよい。いくつかの例では、DBLE200は、クエリ符号化212Qとトレーニング例のクエリセット114Q内の対応するトレーニング例に関連付けられる正解重心値212Gとの間のそれぞれの正解距離が表現空間内で距離閾値を満たさない場合、トレーニング例を誤認識として識別する。そうでない場合、DBLE200は、クエリ符号化212Qと、距離閾値を満たす(たとえば距離閾値以下)、トレーニング例のクエリセット114Q内の対応するトレーニング例に関連付けられる正解重心値
212Gとの間に、それぞれの正解距離を有する、トレーニング例のクエリセット114Q内の、任意のトレーニング例を、分類モデル210によって正しく分類されるとして識別してもよい。
【0027】
いくつかの実現例では、信頼度モデル220は、分類モデル210によって誤分類されたと識別された、トレーニング例のクエリセット114Q内のトレーニング例で、トレーニングする。一般に、正しく分類されたトレーニング例は、分類モデルのトレーニング中に遭遇するトレーニング例の大部分を構成する。この概念に基づくと、トレーニング例114Qのすべてを用いることは、信頼度モデル220のトレーニングを支配するトレーニング例のクエリセット114Qにおける正しく分類されたトレーニング例に関連付けられる小さい/短いクラス距離尺度をもたらし、それによって、信頼度モデル220が、すべてのトレーニング例114Qの少数を構成する誤分類されたトレーニング例に関連付けられる、より大きいクラス距離尺度を捕捉することを、より困難にするであろう。
【0028】
図2の例示的なDBLEアーキテクチャ200では、信頼度モデル220の周りの破線ボックス、ならびに信頼度モデル220に関連付けられるサンプリング動作225および較正のプロト損失250は、誤分類されたと識別されたトレーニング例のクエリセット114Q中の各トレーニング例のみを用いて、分類モデル210と並行して信頼度モデル220をトレーニングすることを示す。したがって、誤分類されたと識別された、トレーニング例のクエリセット114Q内の各トレーニング例について、データ処理ハードウェア104上で実行されるDBLEは、信頼度モデル220を用いて、対応する誤分類されたトレーニング例について分類モデル210によって生成されたクエリ符号化212Qについて標準偏差値222、σを生成し、標準偏差値222およびクエリ符号化212Qを用いて、対応する誤分類されたトレーニング例について新たなクエリ符号化224をサンプリングし、新たなクエリ符号化224に基づいて信頼度モデル220のパラメータφを更新する。
【0029】
信頼度モデル220は、より大きなクラス距離尺度に関連付けられるクエリ符号化212Qについて、より大きな標準偏差値222、σを出力するようにトレーニングされる。新たなクエリ符号化224、zをサンプリングするために、信頼度モデル220は、対応するクエリ符号化212Q、h、および対応する標準偏差値222、σによってパラメータ化された等方性ガウス分布からサンプリングするサンプリング動作225を用いる。較正のプロト損失250は、以下の式を用いて、誤分類されたトレーニング例xごとにサンプリングされた新たなクエリ符号化224zの予測されたラベル分布を用いてプロトタイプの損失を計算するように構成される。
【0030】
【数5】
【0031】
従って、DBLEは、より大きなクラス距離尺度に関連付けられるクエリ符号化212Qについて、より大きな標準偏差値222、σを出力するように信頼度モデル220を促すように、信頼度モデル220のトレーニング可能なパラメータφを更新する。特に、表現空間内において誤分類された各トレーニング例についてクエリ符号化212Qを固定することにより、式3を最大化すると、新たなクエリ符号化224は、それぞれの正解重心値212Gにできるだけ近くなる。誤分類されたトレーニング例は、正解重心値212Gからより離れたクエリ符号化212Qを含むので、より大きい対応する標準偏差値222を出力するように信頼度モデル220を促すことは、新たなクエリ符号化224に、正解重心値212Gに近くなるよう強いる。図4は、図2で説明したDBLE200を用いた
分類モデルおよび較正モデル210、220のトレーニングを表す例示的なアルゴリズム400を提供する。
【0032】
図3Aおよび図3Bは、表現空間におけるトレーニング例のクエリセット114Qからのトレーニング例を表すドットの例示的なプロット300a、300bを示す。プロット300a、300bの各々における点線の垂直線は、左右のトレーニング例が異なるそれぞれのクラスに属する決定境界を示す。さらに、点線の円は、対応するクエリ符号化212Q、h-hについての標準偏差値222、σを表し、h、hは、誤分類されたトレーニング例114Qに対応する誤分類されたクエリ符号化222Qに関連付けられ、hは、正しく分類されたトレーニング例114Qに対応する正しく分類されたクエリ符号化222Qに関連付けられる。図3Aのプロット300aは、信頼モデル220のトレーニング可能なパラメータφを更新する前の、誤分類されたクエリ符号化h、hおよび正しく分類されたクエリ符号化hの両方についての短い標準偏差値222を示している。図3Bのプロット300bは、信頼性モデル220のトレーニング可能なパラメータφを更新した後、較正のプロト損失が、誤分類されたトレーニング例からサンプリングされた新たなクエリ符号化z、zを、正しいクラスに関連付けられる正解重心値212Gに可能な限り近く移動させる結果、誤分類されたクエリ符号化h、hに対して、より大きな標準偏差値222を示す。
【0033】
再び図2を参照すると、推論中に、データ処理ハードウェア104上で実行されるDBLE200は、以下の式を用いて、すべての対応するトレーニング例の表現212Sを平均することによって、トレーニングセット内のすべてのクラスcについてクラス中心214を計算する。
【0034】
【数6】
【0035】
式中、
【0036】
【数7】
【0037】
はクラスkに属する全てのトレーニング例のセットである。次いで、テストサンプルxが与えられると、各クラス中心214に対する対応するクエリ符号化212Qのそれぞれのクラス距離尺度が求められる。xのラベルの予測は、表現空間において最も近い中心を有するクラスにxが割り当てられるように、クラス距離尺度に基づく。このように、クエリ符号化がそれの正解中心214Gから離れすぎている場合、それは誤分類される可能性がある。正解重心値212Gは、推論においてテストサンプルxについて未知であり、すなわち、ラベルは利用可能ではないため、DBLEは、トレーニングされた信頼度モデル220を用いてそれぞれのクラス距離尺度を推定して、ラベルの予測の際に分類モデル210を支援する。すなわち、分類モデル210は、対応するクエリ符号化h212Qを用いて、すべてのテストサンプルxのラベルを予測する。次いで、信頼度モデル220は、クエリ符号化hの標準偏差値σ222を出力し、サンプリング動作225は、新たなクエリ符号化224をサンプリングする。次いで、DBLEは、以下の式を用いて、予測ラベル分布を信頼度推定として平均する。
【0038】
【数8】
【0039】
ここで、Uは、新たなクエリ符号化z224の総数であり、
【0040】
【数9】
【0041】
は、分類モデル210の予測
【0042】
【数10】
【0043】
を較正するための信頼度スコアとして用いられる。したがって、信頼度モデルからのより大きな推定変動のため、DBLEは、正解クラス中心からより離れた(誤分類される可能性が高い)テスト例に対する表現サンプリングに対して、より多くの無作為性を加える。
【0044】
図5は、信頼度モデル220と並行して分類モデル210をトレーニングする方法500のための動作の例示的な構成のフローチャートである。方法500は、図1のメモリハードウェア106に記憶される命令に基づいて、図1のデータ処理ハードウェア104上で実行することができる。動作502において、方法500は、データ処理ハードウェア104において、複数のトレーニングデータサブセット112を含むトレーニングデータセット110を受け取ることを含む。各トレーニングデータサブセット112は、異なるそれぞれのクラスに関連付けられ、それぞれのクラスに属する複数の対応するトレーニング例114を有する。
【0045】
動作504において、トレーニングデータセット110内の2つ以上のトレーニングデータサブセット112について、方法500は、データ処理ハードウェア104によって、トレーニング例のサポートセット114Sおよびトレーニング例のクエリセット114Qを選択することを含む。トレーニング例のサポートセット114Sは、2つ以上のトレーニングデータサブセット112の各々からサンプリングされたK個のトレーニング例114を含む。トレーニング例のクエリセット114Qは、トレーニング例のサポートセット114Sに含まれない、2つ以上のトレーニングデータサブセット112の各々からサンプリングされたトレーニング例114を含む。
【0046】
方法500は、動作506において、データ処理ハードウェア104によって、分類モデル210を用いて、それぞれのクラスに属するトレーニング例のサポートセット114S内のK個のトレーニング例114に関連付けられるK個のサポート符号化215を平均することによって重心値214を求めることを含む。動作508において、トレーニング例のクエリセット114Q内の各トレーニング例について、方法500は、データ処理ハードウェア104が、分類モデル210を用いて、クエリ符号化212Qを生成することと、データ処理ハードウェア104が、クエリ符号化212Qとそれぞれのクラスごとに求められた重心値214との間のそれぞれの距離を表すクラス距離尺度を求めることと、データ処理ハードウェア104が、クエリ符号化212Qと、トレーニング例のクエリセット114Q内の対応するトレーニング例114に関連付けられる正解ラベル214Gとの間の正解距離を求めることと、データ処理ハードウェア104が、クラス距離尺度およ
び正解距離に基づいて分類モデル210のパラメータを更新することとを含む。
【0047】
動作510において、誤分類されたと識別されたトレーニング例のクエリセット114Q内の各トレーニング例114について、方法500は、データ処理ハードウェア104が、信頼度モデル220を用いて、対応する誤分類されたトレーニング例について分類モデル210によって生成されたクエリ符号化212Qの標準偏差値222を生成することと、データ処理ハードウェア104が、標準偏差値222およびクエリ符号化212Qを用いて、対応する誤分類されたトレーニング例について新たなクエリ符号化224をサンプリングすることと、データ処理ハードウェア104が、新たなクエリ符号化224に基づいて信頼度モデル220のパラメータを更新することとを含む。
【0048】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指してもよい。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることがある。アプリケーションの例には、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、ワード処理アプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲームアプリケーションが含まれるが、これらに限定はされない。
【0049】
非一時的メモリは、コンピューティングデバイスによる使用のためにプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を一時的または永続的に記憶するために用いられる物理デバイスであってもよい。非一時的メモリは、揮発性および/または不揮発性のアドレス指定可能な半導体メモリであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能プログラマブル読み出し専用メモリ(EPROM)/電子的消去可能プログラマブル読み出し専用メモリ(EEPROM)(たとえば、ブートプログラムなどのファームウェアに典型的に用いられる)を含むが、これらに限定されない。揮発性メモリの例には、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープが含まれるが、これらに限定されない。
【0050】
図6は、本文書で説明されるシステムおよび方法を実現するために用いられ得る例示的なコンピューティングデバイス600の概略図である。コンピューティングデバイス600は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、様々な形態のデジタルコンピュータを表すことが意図されている。本明細書に示された構成要素、それらの接続および関係、ならびにそれらの機能は、例示的なものにすぎず、本文書に記載および/または特許請求される本発明の実現例を限定するものではない。
【0051】
コンピューティングデバイス600は、プロセッサ610と、メモリ620と、ストレージデバイス630と、メモリ620および高速拡張ポート650に接続する高速インターフェイス/コントローラ640と、低速バス670およびストレージデバイス630に接続する低速インターフェイス/コントローラ660とを含む。コンポーネント610,620,630,640,650,および660の各々は、様々なバスを用いて相互接続され、共通のマザーボード上に、または必要に応じて他の方法で実現され得る。プロセッサ610は、高速インターフェイス640に結合されたディスプレイ680などの外部入力/出力装置上にグラフィカルユーザインターフェイス(GUI)のためのグラフィカル情報を表示するために、メモリ620またはストレージデバイス630に記憶された命令
を含む、コンピューティングデバイス600内で実行するための命令を処理することができる。他の実現例では、複数のプロセッサおよび/または複数のバスが、必要に応じて、複数のメモリおよび複数のタイプのメモリとともに用いられ得る。また、複数のコンピューティングデバイス600が接続されてもよく、各デバイスは、(たとえば、サーババンクとして、ブレードサーバのグループとして、またはマルチプロセッサシステムとして)必要な動作の部分を提供する。
【0052】
メモリ620は、コンピューティングデバイス600内で情報を非一時的に記憶する。メモリ620は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ620は、コンピューティングデバイス600による使用のためにプログラム(たとえば、命令のシーケンス)またはデータ(たとえば、プログラム状態情報)を一時的または永続的に記憶するために用いられる物理デバイスであり得る。不揮発性メモリの例は、フラッシュメモリおよび読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能プログラマブル読み出し専用メモリ(EPROM)/電子的消去可能プログラマブル読み出し専用メモリ(EEPROM)(たとえば、ブートプログラムなどのファームウェアに典型的に用いられる)を含むが、これらに限定されない。揮発性メモリの例には、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープが含まれるが、これらに限定されない。
【0053】
ストレージデバイス630は、コンピューティングデバイス600のために大容量ストレージを提供することができる。いくつかの実現例では、ストレージデバイス630はコンピュータ可読媒体である。様々な異なる実現例では、ストレージデバイス630は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであり得る。さらなる実現例では、コンピュータプログラム製品は、情報担体において有形に具現化される。コンピュータプログラム製品は、実行されると上述の方法などの1つ以上の方法を実行する命令を含む。情報担体は、メモリ620、ストレージデバイス630、もしくはプロセッサ610上のメモリなどの、コンピュータ可読媒体または機械可読媒体である。
【0054】
高速コントローラ640は、コンピューティングデバイス600のための帯域幅集約型動作を管理し、低速コントローラ660は、低帯域幅集約型動作を管理する。そのような役割の割り当ては、例示的なものにすぎない。いくつかの実現例では、高速コントローラ640は、メモリ620、ディスプレイ680(たとえば、グラフィックスプロセッサまたはアクセラレータを通して)、および様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート650に結合される。いくつかの実現例では、低速コントローラ660は、ストレージデバイス630および低速拡張ポート690に結合される。様々な通信ポート(たとえば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサ
ネット(登録商標))を含み得る低速拡張ポート690は、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータなどのネットワーキングデバイスなどの1つ以上の入力/出力装置に、たとえばネットワークアダプタを介して結合され得る。
【0055】
コンピューティングデバイス600は、図に示されるように、いくつかの異なる形態で実現され得る。たとえば、それは、標準的なサーバ600aとして、もしくはそのようなサーバ600aのグループにおいて複数回、ラップトップコンピュータ600bとして、またはラックサーバシステム600cの一部として実現され得る。
【0056】
本明細書に記載のシステムおよび技術のさまざまな実現例は、デジタル電子および/もしくは光学回路系、集積回路系、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはそれらの組合せで実現され得る。これらのさまざまな実現例は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つ以上のコンピュータプログラムにおける実現例を含んでいてもよく、当該プロセッサは専用であっても汎用であってもよく、ストレージシステム、少なくとも1つの入力装置、および少なくとも1つの出力装置からデータおよび命令を受信するように、かつこれらにデータおよび命令を送信するように結合されている。
【0057】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラム可能なプロセッサのための機械命令を含み、高水準手続き型および/もしくはオブジェクト指向型プログラミング言語で、ならびに/またはアセンブリ/機械言語で実装することができる。本明細書で使用されるとき、用語「機械可読媒体」および「コンピュータ可読媒体」は、機械命令を機械可読信号として受信する機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに提供するよう使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0058】
本明細書に記載されるプロセスおよび論理フローは、入力データを操作し出力を生成することにより機能を実行するよう、データ処理ハードウェアとも呼ばれる1つ以上のプログラマブルプロセッサが1つ以上のコンピュータプログラムを実行することによって実行され得る。本プロセスおよび論理フローは、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても実行され得る。コンピュータプログラムの実行に好適であるプロセッサは、例として、汎用マイクロプロセッサおよび特殊目的マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含んでもよい。一般に、プロセッサは、リードオンリメモリもしくはランダムアクセスメモリまたはその両方から命令およびデータを受取ることになる。コンピュータの必須要素は、命令を実行するためのプロセッサ、ならびに命令およびデータを記憶するための1つ以上のメモリデバイスである。一般に、コンピュータはさらに、たとえば磁気ディスク、光磁気ディスクまたは光ディスクといった、データを格納するための1つ以上の大容量記憶装置を含むか、当該1つ以上の大容量記憶装置からデータを受取るかもしくは当該1つ以上の大容量記憶装置にデータを転送するよう作動的に結合されるか、またはその両方を行う。しかしながら、コンピュータはそのような装置を有する必要はない。コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体は、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、たとえば内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;およびCD ROMおよびDVD-ROMディスクを含む、あらゆる形態の不揮発性メモリ、媒体、ならびにメモリデバイスを含む。プロセッサおよびメモリは、特殊目的論理回路によって補足され得るか、または特殊目的論理回路に組み込まれ得る。
【0059】
ユーザとの対話を提供するために、本開示の1つ以上の局面は、たとえばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタまたはタッチスクリーンといったユーザに対して情報を表示するための表示装置と、選択肢的にキーボードおよびたとえばマウス、トラックボールといったユーザがコンピュータに入力を提供可能であるポインティングデバ
イスとを有するコンピュータ上で実現され得る。他の種類のデバイスを用いて、ユーザとの対話を提供することもでき、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであり得、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む、任意の形態で受信することができる。加えて、コンピュータは、ユーザが使用するデバイスにドキュメントを送信し、ユーザが使用するデバイスからドキュメントを受信することによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答してそのウェブブラウザにウェブページを送信することによって、ユーザと対話し得る。
【0060】
いくつかの実現例について説明した。それにもかかわらず、本開示の精神および範囲から逸脱することなく、様々な修正がなされ得ることが理解されるであろう。したがって、他の実現例は特許請求の範囲内にある。
図1
図2
図3A
図3B
図4
図5
図6