(57)【要約】  方法は、訓練事例のＮ個のペアと、そのためのクラスラベルとを受信することを含む。各ペアは、それぞれのアンカー事例と、ポジティブまたはネガティブ訓練事例となり得る、それぞれの非アンカー事例とを含む。該方法は、ＤＨ−ＣＮＮを適用することにより、該ペアの特徴を抽出することと、該特徴に基づき各ペアに関してアンカー事例と非アンカー事例との間の類似性尺度をそれぞれ算出することをさらに含む。加えて、該方法は、各ペアに関して、それぞれの類似性尺度に基づいて類似性スコアを算出することを含む。該スコアは、該ペアにおける全てのアンカー点とネガティブ訓練事例との間の類似性に対する、該ペアにおける全てのアンカー点とポジティブ訓練事例との間の類似性を表している。該方法は、同じクラスからの複数の訓練事例を共にプルし、異なるクラスからの複数の訓練事例を別々にプッシュするように、各ペアに関するアンカー事例の類似性スコアをそれぞれ最大化することをさらに含む。
2019509551.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサにより、訓練事例のＮ個のペアと複数のクラスに対応する前記訓練事例に関するクラスラベルとを受信することであって、前記Ｎ個の各ペアは、それぞれのアンカー事例を含み、ポジティブ訓練事例またはネガティブ訓練事例となり得る、それぞれの非アンカー事例をさらに含むことと、
前記プロセッサにより、前記Ｎ個のペア及び前記クラスラベルに深層畳み込みニューラルネットワークを適用することで前記Ｎ個のペアの特徴を抽出することと、
前記プロセッサにより、前記特徴に基づき前記Ｎ個の各ペアに関して、前記アンカー事例と前記非アンカー事例との間の類似性尺度をそれぞれ算出することと、
前記プロセッサにより、前記Ｎ個の各ペアに関して、それぞれの前記類似性尺度に基づいて類似性スコアを算出することであって、前記類似性スコアは、前記Ｎ個のペアにおける全ての前記アンカー点と全てのネガティブ訓練事例との間の１つまたは複数の類似性に対する、前記Ｎ個のペアにおける全ての前記アンカー点と全てのポジティブ訓練事例の間の１つまたは複数の類似性を表すことと、
前記プロセッサにより、分布空間における複数のクラスのうちの同じクラスからの複数の前記訓練事例を共にプルし、前記分布空間における複数のクラスのうちの異なるクラスからの複数の前記訓練事例を別々にプッシュするように、前記Ｎ個の各ペアに関する前記アンカー事例の前記類似性スコアをそれぞれ最大化することと、
を有する、コンピュータ実施方法。
【請求項２】
前記訓練事例のＮ個の各ペアは、前記複数のクラスのうちの異なるクラスに対応する、請求項１に記載のコンピュータ実施方法。
【請求項３】
前記複数のクラスは、クラスのセットからサブセットとしてランダムに選択され、前記クラスのセットは、前記複数のクラスと１つまたは複数の他のクラスとを含む、請求項２に記載のコンピュータ実施方法。
【請求項４】
前記最大化するステップは、前記分布空間において、前記訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルから離れるように同時にプッシュできる、請求項１に記載のコンピュータ実施方法。
【請求項５】
前記最大化するステップは、前記分布空間において、前記訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルの方に同時にプッシュできる、請求項１に記載のコンピュータ実施方法。
【請求項６】
前記深層畳み込みニューラルネットワークは、損失関数のセットにおける各損失関数に関する制約のセットを満たすために訓練される埋め込みベクトルを含むように構成され、前記深層畳み込みニューラルネットワークは、損失関数の前記セットを用いて訓練される、請求項１に記載のコンピュータ実施方法。
【請求項７】
前記最大化するステップは、前記類似性スコアの対数の勾配を計算することを有する、請求項１に記載のコンピュータ実施方法。
【請求項８】
前記最大化するステップは、深層計量学習のための目的関数を最大化する、請求項１に記載のコンピュータ実施方法。
【請求項９】
前記複数のクラスの総数は、（ｉ）経時的に変化する、（ｉｉ）しきい値量よりも多い、及び（ｉｉｉ）未知である、のうちの少なくとも１つである、請求項１に記載のコンピュータ実施方法。
【請求項１０】
前記深層畳み込みニューラルネットワークを用いて生成される予測に基づいてユーザを照合し、前記ユーザにエンティティへのアクセスを提供することをさらに有する、請求項１に記載のコンピュータ実施方法。
【請求項１１】
実行時に請求項１に記載のステップをコンピュータに実施させる、コンピュータで読み取り可能なプログラムを実体として包含する、非一時的製造品。
【請求項１２】
訓練事例のＮ個のペアと複数のクラスに対応する前記訓練事例に関するクラスラベルとを受信することであって、前記Ｎ個の各ペアは、それぞれのアンカー事例を含み、ポジティブ訓練事例またはネガティブ訓練事例となり得る、それぞれの非アンカー事例をさらに含むことと、
前記Ｎ個のペア及び前記クラスラベルに深層畳み込みニューラルネットワークを適用することで前記Ｎ個のペアの特徴を抽出することと、
前記特徴に基づき前記Ｎ個の各ペアに関して、前記アンカー事例と前記非アンカー事例との間の類似性尺度をそれぞれ算出することと、
前記Ｎ個の各ペアに関して、それぞれの前記類似性尺度に基づいて類似性スコアを算出することであって、前記類似性スコアは、前記Ｎ個のペアにおける全ての前記アンカー点と全てのネガティブ訓練事例との間の１つまたは複数の類似性に対する、前記Ｎ個のペアにおける全ての前記アンカー点と全てのポジティブ訓練事例の間の１つまたは複数の類似性を表すことと、
分布空間における複数のクラスのうちの同じクラスからの複数の前記訓練事例を共にプルし、前記分布空間における複数のクラスのうちの異なるクラスからの複数の前記訓練事例を別々にプッシュするように、前記Ｎ個の各ペアに関する前記アンカー事例の前記類似性スコアをそれぞれ最大化することと、
を実行するように構成されたプロセッサを有する、システム。
【請求項１３】
前記訓練事例のＮ個の各ペアは、前記複数のクラスのうちの異なるクラスに対応する、請求項１２に記載のシステム。
【請求項１４】
前記プロセッサは、前記複数のクラスをクラスのセットからサブセットとしてランダムに選択するように構成され、前記クラスのセットは、前記複数のクラスと１つまたは複数の他のクラスとを含む、請求項１３に記載のシステム。
【請求項１５】
前記プロセッサは、前記類似性スコアの最大化に応答して、前記分布空間において、前記訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルから離れるように同時にプッシュするように構成されている、請求項１２に記載のシステム。
【請求項１６】
前記プロセッサは、前記類似性スコアの最大化に応答して、前記分布空間において、前記訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルの方に同時にプッシュするように構成されている、請求項１２に記載のシステム。
【請求項１７】
前記深層畳み込みニューラルネットワークは、損失関数のセットにおける各損失関数に関する制約のセットを満たすために訓練される埋め込みベクトルを含むように構成され、前記深層畳み込みニューラルネットワークは、損失関数の前記セットを用いて訓練される、請求項１２に記載のシステム。
【請求項１８】
前記プロセッサは、前記類似性スコアの対数の勾配を計算することで、前記類似性スコアを最大化するように構成されている、請求項１２に記載のシステム。
【請求項１９】
前記複数のクラスの総数は、（ｉ）経時的に変化する、（ｉｉ）しきい値量よりも多い、及び（ｉｉｉ）未知である、のうちの少なくとも１つである、請求項１２に記載のコンピュータ実施方法。
【請求項２０】
前記プロセッサは、前記深層畳み込みニューラルネットワークを用いて生成される予測に基づいてユーザを照合し、前記ユーザにエンティティへのアクセスを提供するようにさらに構成されている、請求項１２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、２０１６年２月４日に出願された米国仮特許出願第６２／２９１０２５号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【０００２】
本発明は、コンピュータ学習に関し、特にＮペア損失による距離計量学習（distance metric learning）の改善に関する。
【背景技術】
【０００３】
深層計量学習は、多くの方法で取り組まれてきたが、中でもコントラスティブ損失（contrastive loss）及びトリプレット損失（triplet loss）が深層学習の訓練対象のために用いられてきた。過去のアプローチは、２つの異なるクラス間のペアワイズ関係を考慮したものであり、不十分な局所最小値への遅い収束に難点があった。そのため、計量学習の改善が求められている。
【発明の概要】
【０００４】
本発明の態様によれば、コンピュータ実施方法が提供される。本方法は、プロセッサにより、訓練事例のＮ個のペアと複数のクラスに対応する該訓練事例のクラスラベルとを受信することを含む。Ｎ個の各ペアはそれぞれのアンカー事例を含み、ポジティブ訓練事例またはネガティブ訓練事例となり得る、それぞれの非アンカー事例をさらに含む。本方法は、プロセッサにより、Ｎ個のペア及びクラスラベルに深層畳み込みニューラルネットワークを適用することで該Ｎ個のペアの特徴を抽出することをさらに含む。本方法は、さらにプロセッサにより、該特徴に基づきＮ個の各ペアに関して、それぞれのアンカー事例とそれぞれの非アンカー事例との間の類似性尺度（similarly measure）をそれぞれ算出することを含む。本方法は、加えてプロセッサにより、Ｎ個の各ペアに関して、それぞれの類似性尺度に基づいて類似性スコアを算出することを含む。類似性スコアは、Ｎ個のペアにおける全てのアンカー点と全てのネガティブ訓練事例との間の１つまたは複数の類似性に対する、該Ｎ個のペアにおける全てのアンカー点と全てのポジティブ訓練事例の間の１つまたは複数の類似性を表している。本方法は、プロセッサにより、分布空間における複数のクラスのうちの同じクラスからの複数の訓練事例を共にプルし（pull together）、該分布空間における複数のクラスのうちの異なるクラスからの複数の訓練事例を別々にプッシュ（push apart）するようにＮ個の各ペアに関するアンカー事例の類似性スコアをそれぞれ最大化することをさらに含む。
【０００５】
本発明の他の態様によれば、システムが提供される。本システムは、プロセッサを含む。プロセッサは、訓練事例のＮ個のペアと、複数のクラスに対応する訓練事例のクラスラベルとを受信するように構成されている。Ｎ個のペアの各々は、それぞれのアンカー事例を含み、ポジティブ訓練事例またはネガティブ訓練事例となり得る、それぞれの非アンカー事例をさらに含む。プロセッサは、さらにＮ個のペア及びクラスラベルに深層畳み込みニューラルネットワークを適用することで該Ｎ個のペアの特徴を抽出するように構成されている。プロセッサは、さらに該特徴に基づきＮ個のペアの各々に関して、それぞれのアンカー事例とそれぞれの非アンカー事例との間の、それぞれの類似性尺度を算出するように構成されている。加えて、プロセッサは、Ｎ個のペアの各々に関して、それぞれの類似性尺度に基づいて類似性スコアを算出するように構成されている。類似性スコアは、Ｎ個のペアにおける全てのアンカー点と全てのネガティブ訓練事例との間の１つまたは複数の類似性に対する、該Ｎ個のペアにおける全てのアンカー点と全てのポジティブ訓練事例との間の１つまたは複数の類似性を表している。プロセッサは、さらに分布空間における複数のクラスのうちの同じクラスからの複数の訓練事例を共にプルし、該分布空間における複数のクラスのうちの異なるクラスからの複数の訓練事例を別々にプッシュするようにＮ個の各ペアに関するアンカー事例の類似性スコアをそれぞれ最大化するように構成されている。
【０００６】
これら及び他の特徴並びに利点は、以下の典型的な実施形態の詳細な説明を添付の図面と併せて読むことで明らかになるであろう。
【図面の簡単な説明】
【０００７】
本開示では、後述するように、以下の図面を参照しながら好ましい実施形態について詳細に説明する。
【０００８】
【図１】図１は、本発明の一実施形態による、本発明を適用できる典型的な処理システム１００のブロック図を示している。
【０００９】
【図２】図２は、本発明の一実施形態による、本発明を適用できる典型的な環境２００を示している。
【００１０】
【図３】図３は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための典型的なシステム／方法３００の高レベルブロック／フロー図を示している。
【００１１】
【図４】図４は、本発明の一実施形態による、図３の方法３００のステップ３１０をさらに示している。特に、図４は、本発明の一実施形態による、Ｎペア損失４００による距離計量学習をさらに示している。
【００１２】
【図５】図５は、先行技術による従来のトリプレット損失５９９に対する、本発明の一実施形態による、図４のＮペア損失４００をグラフィカルに示した図である。
【００１３】
【図６】図６は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための方法６００のフロー図を示している。
【図７】図７は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための方法６００のフロー図を示している。
【図８】図８は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための方法６００のフロー図を示している。
【発明を実施するための形態】
【００１４】
本発明は、Ｎペア損失による距離計量学習の改善を対象とする。
【００１５】
本発明は、深層学習を用いた、出力クラスの数が極端に多い、出力クラスの総数が未知である、または出力クラスの分布が経時的に変動しやすいときの、距離計量学習の根本的な機械学習問題を解決する。
【００１６】
一実施形態において、従来技術手法とは対照的に、本発明はＮ個の異なるクラスからの事例のＮ個のペアを一度に（at once）考慮する。
【００１７】
一実施形態において、本発明は深層計量学習のための新しい目的関数を導入する。本目的関数によって、よりよい局所最適解（local optimum）に対するより速い収束が可能となる。
【００１８】
本発明は、深層計量学習のためのＮペア損失を提供する。本発明では、同じクラスからの複数の事例を共にプルし、異なるクラスからの複数のものを別々にプッシュするように、深層ニューラルネットワークを訓練させる。本発明は、各更新時における１つのネガティブ事例だけでなく、全ての異なるクラスからのＮ−１個のネガティブ事例を、参照事例との相対的な距離に基づいてプッシュする。
【００１９】
図１は、本発明の一実施形態による、本発明の原理を適用できる典型的な処理システム１００を示している。処理システム１００は、システムバス１０２を介して他の構成要素が動作可能に接続された、少なくとも１つのプロセッサ（ＣＰＵ）１０４を含む。システムバス１０２には、キャッシュ１０６、リードオンリメモリ（ＲＯＭ）１０８、ランダムアクセスメモリ（ＲＡＭ）１１０、入力／出力（Ｉ／Ｏ）アダプタ１２０、サウンドアダプタ１３０、ネットワークアダプタ１４０、ユーザインターフェースアダプタ１５０及びディスプレイアダプタ１６０が動作可能に接続されている。
【００２０】
第１の記憶デバイス１２２及び第２の記憶デバイス１２４は、Ｉ／Ｏアダプタ１２０によってシステムバス１０２に動作可能に接続されている。記憶デバイス１２２及び１２４は、ディスク記憶デバイス（例えば、磁気または光ディスク記憶デバイス）、固体磁気デバイス等のうちのいずれであってもよい。記憶デバイス１２２及び１２４は、同じタイプの記憶デバイスであってもよく、異なるタイプの記憶デバイスであってもよい。
【００２１】
スピーカ１３２は、サウンドアダプタ１３０によってシステムバス１０２に動作可能に接続されている。トランシーバ１４２は、ネットワークアダプタ１４０によってシステムバス１０２に動作可能に接続されている。ディスプレイデバイス１６２は、ディスプレイアダプタ１６０によってシステムバス１０２に動作可能に接続されている。
【００２２】
第１のユーザ入力デバイス１５２、第２のユーザ入力デバイス１５４及び第３のユーザ入力デバイス１５６は、ユーザインタフェースアダプタ１５０によってシステムバス１０２に動作可能に接続されている。ユーザ入力デバイス１５２、１５４及び１５６は、キーボード、マウス、キーパッド、イメージキャプチャデバイス、モーション感知デバイス、マイクロホン、あるいはこれらの装置のうちの少なくとも２つのデバイスの機能を組み込んだデバイス等のいずれであってもよい。もちろん、本発明の原理の趣旨を維持する限りにおいて、他のタイプの入力デバイスを使用することも可能である。ユーザ入力デバイス１５２、１５４及び１５６は、同じタイプのユーザ入力デバイスであってもよく、異なるタイプのユーザ入力デバイスであってもよい。ユーザ入力デバイス１５２、１５４及び１５６は、システム１００に情報を入力し、システム１００から情報を出力するために使用される。
【００２３】
もちろん、処理システム１００は、当業者であれば容易に思いつくような他の要素（不図示）を含んでいてもよく、特定の要素を除いてもよい。例えば、当業者であれば容易に理解できるが、処理システム１００には、その詳細な実装に応じて他の様々な入力デバイス及び／または出力デバイスを含むことができる。例えば、無線及び／または有線による種々の入力デバイス及び／または出力デバイスを使用できる。さらに、当業者であれば容易に理解できるが、様々な構成において追加のプロセッサ、コントローラ、メモリ等を用いることも可能である。処理システム１００の上記及び他の変形例は、本明細書で提供される本原理の教示によって当業者であれば容易に考えられるであろう。
【００２４】
加えて、図２に関連して後述する環境２００は、本発明のそれぞれの実施形態を実現するための環境であるということを理解されたい。処理システム１００の一部または全ては、環境２００の要素の１つまたは複数において実現されてもよい。
【００２５】
さらに、処理システム１００は、例えば、図３の方法３００の少なくとも一部、及び／または図４の方法４００の少なくとも一部、及び／または図６−８の方法６００の少なくとも一部を含む、本明細書で説明する方法の少なくとも一部を実施してもよいことを理解されたい。同様に、環境２００の一部または全ては、図３の方法３００の少なくとも一部、及び／または図４の方法４００の少なくとも一部、及び／または図６〜８の方法６００の少なくとも一部を実施するために使用されてもよい。
【００２６】
図２は、本発明の一実施形態による、本発明を適用できる典型的な環境２００を示している。該環境２００は、本発明を適用できるコンピュータネットワークの代表例である。図２に示されている要素は、説明のために記載されている。しかしながら、本発明は、本明細書で提供される、本発明の教示が与えられた当業者によって容易に理解できるが、本発明の趣旨を維持する限りにおいて、他のネットワーク構成が適用できることを理解されたい。
【００２７】
環境２００は、少なくともコンピュータ処理システム２１０のセットを含む。コンピュータ処理システム２１０は、サーバ、デスクトップ、ラップトップ、タブレット、スマートフォン、メディア再生デバイス等を含むが、それらに限定されるものではなく、任意のタイプのコンピュータ処理システムであってもよい。説明のために、コンピュータ処理システム２１０は、サーバ２１０Ａ、サーバ２１０Ｂ及びサーバ２１０Ｃを含む。
【００２８】
一実施形態において、本発明はＮペア損失により距離計量学習を改善する。本発明は、いずれかのコンピュータ処理システム２１０を用いて、本明細書で説明する深層学習による距離計量学習を実施できる。一実施形態において、コンピュータ処理システム２１０の１つは他のコンピュータ処理システムで受信した情報を分類してもよい。
【００２９】
図２に示されている実施形態において、その複数の要素はネットワーク２０１によって相互に接続されている。しかしながら、他の実施形態では、他のタイプのコネクションを用いることもできる。さらに、図２における１つまたは複数の要素は、限定されるものではないが、デジタル信号処理（ＤＳＰ）回路、プログラマブルプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複合プログラマブル論理デバイス（ＣＰＬＤ）等を含む、様々なデバイスに実装されてもよい。環境２００の要素のこれらの変形例及び他の変形例は、本発明の趣旨を維持する限りにおいて、本明細書において提供される本発明の教示が与えられた当業者によって容易に見出される。
【００３０】
図３は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための典型的なシステム／方法３００の高レベルブロック／フロー図を示している。
【００３１】
ステップ３１０において、深層学習による距離計量学習を実行する。
【００３２】
一実施形態において、ステップ３１０は、ステップ３１０Ａ、３１０Ｂ及び３１０Ｃを含む。
【００３３】
ステップ３１０Ａにおいて、深層畳み込みニューラルネットワーク３５０に画像を提供する。該画像には、Ｎ個の異なるクラスからのＮ個のペアの事例を一度に含む。
【００３４】
ステップ３１０Ｂにおいて、該画像から特徴を抽出する。
【００３５】
ステップ３１０Ｃにおいて、該特徴に基づきＮペア損失による距離計量学習を実施し、分類器３７０を形成する。
【００３６】
ステップ３２０において、該システムを画像検証に基づいてテストする。
【００３７】
一実施形態において、ステップ３２０は、ステップ３２０Ａ、３２０Ｂ、３２０Ｃ、３２０Ｄ、３２０Ｅ及び３２０Ｆを含む。
【００３８】
ステップ３２０Ａにおいて、第１の画像（画像１）を受信する。
【００３９】
ステップ３２０Ｂにおいて、第２の画像（画像２）を受信する。
【００４０】
ステップ３２０Ｃにおいて、訓練された深層畳み込みニューラルネットワーク３５０Ａを用いて特徴を抽出する。深層畳み込みニューラルネットワーク３５０は、訓練された深層畳み込みニューラルネットワーク３５０Ａとなるために訓練される。
【００４１】
ステップ３２０Ｄにおいて、第１の特徴（特徴１）を出力する。
【００４２】
ステップ３２０Ｅにおいて、第２の特徴（特徴２）を出力する。
【００４３】
ステップ３２０Ｆにおいて、該特徴（特徴１及び特徴２）を分類器３７０に入力する。
【００４４】
分類器３７０は、特定のアクションが行えることに基づき予測を生成するために用いることができる（例えば、図６を参照）。
【００４５】
ステップ３１０に関して、その処理は、少なくともＮ個の異なるクラスからの事例のＮ個のペアを一度に用いることにおいて、従来のアプローチとは異なることを理解されたい。
【００４６】
ステップ３２０に関して、Ｎペア損失は近傍成分分析（neighborhood component analysis）の形態とみなせることを理解されたい。
【００４７】
図４は、本発明の一実施形態による、図３の方法３００のステップ３１０をさらに示している。特に、図４は、本発明の一実施形態による、Ｎペア損失４００による距離計量学習をさらに示している。
【００４８】
深層畳み込みニューラルネットワーク３５０は、Ｎ個の異なるクラスからのＮ個のペアの画像４２１を一度に受信する。図４では、符号４０１がＮペア損失による訓練前の特徴を示し、符号４０２がＮペア損失による訓練後の特徴を示している。
【００４９】
図４において、以下の表記が適用される。
ｘ：入力画像、
ｆ：出力特徴、
ｆｉ：第ｉのペアからの事例、
ｆｉ＋：第ｉのペアからのポジティブ事例、
複数のｆｉは異なるクラスラベルを有する。
【００５０】
一実施形態において、Ｎペア損失は以下のように定義できる。
【００５１】
図５は、先行技術による従来のトリプレット損失５９９に対する、本発明の一実施形態による図４のＮペア損失４００をグラフィカルに示した図である。
【００５２】
従来のトリプレット損失５９９は、２ペア損失と等価である。
【００５３】
２ペア損失は、Ｎ＞２におけるＮペア損失の一般化である。
【００５４】
以下の式が適用される。
【００５５】
図６〜８は、本発明の一実施形態による、Ｎペア損失による深層計量学習のための方法６００のフロー図を示している。
【００５６】
ステップ６１０において、訓練事例のＮ個のペアと、複数のクラスに対応する該訓練事例のクラスラベルとを受信する。Ｎ個の各ペアは、それぞれのアンカー事例を含み、ポジティブ訓練事例またはネガティブ訓練事例となり得る、それぞれの非アンカー事例をさらに含む。一実施形態において、訓練事例のＮ個の各ペアは複数のクラスのうちの異なるクラスに対応できる。一実施形態において、複数のクラスは、複数のクラスと１つまたは複数の他のクラスとを含む、クラスのセットからサブセットとしてランダムに選択されてもよい。一実施形態において、複数のクラスの総数は、（ｉ）経時的に変化する、（ｉｉ）しきい値量よりも多い、及び（ｉｉｉ）未知である、のうちの少なくとも１つである。
【００５７】
ステップ６２０において、Ｎ個のペア及びクラスラベルに深層畳み込みニューラルネットワークを適用することで該Ｎ個のペアの特徴を抽出する。
【００５８】
ステップ６３０において、該特徴に基づきＮ個の各ペアにおける、それぞれのアンカー事例とそれぞれの非アンカー事例との間の類似性尺度をそれぞれ算出する。
【００５９】
ステップ６４０において、Ｎ個の各ペアに関して、それぞれの類似性尺度に基づいて類似性スコアを算出する。類似性スコアは、Ｎ個のペアにおける全てのアンカー点と全てのネガティブ訓練事例との間の１つまたは複数の類似性に対する、該Ｎ個のペアにおける全てのアンカー点と全てのポジティブ訓練事例との間の１つまたは複数の類似性を表している。
【００６０】
一実施形態において、ステップ６４０は、ステップ６４０Ａ、６４０Ｂ及び６４０Ｃのうちの１つまたは複数を含む。
【００６１】
ステップ６４０Ａにおいて、下限及び上限のうちの少なくとも１つにより、訓練事例のＮ個の各ペアの類似性スコアをそれぞれ算出するために用いる変数（ｐｉ）の境界を定める。該変数は、アンカー点とネガティブ訓練事例に対するアンカー点とポジティブ訓練事例との間の相対的な類似性を示している。
【００６２】
ステップ６４０Ｂにおいて、類似性スコアの対数の勾配を計算する。
【００６３】
ステップ６４０Ｃにおいて、深層計量学習のための目的関数を最大化する。
【００６４】
一実施形態において、ステップ６４０Ｃは、ステップ６４０Ｃ１を含む。
【００６５】
ステップ６４０Ｃ１において、アンカー点に関連するオブジェクション関数の一部を最大化する。目的関数には、アンカー点に関する一部と非アンカー点に関する少なくとも１つの他の部分とを含む。
【００６６】
ステップ６５０において、分布空間において、複数のクラスのうちの同じクラスからの複数の訓練事例を共にプルし、該分布空間における該複数のクラスのうちの異なるクラスからの複数の訓練事例を別々にプッシュするように、該Ｎ個の各ペアに関する各アンカー事例の類似性スコアを最大化する。一実施形態において、ステップ６５０では、分布空間において、訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルから離れるように同時にプッシュできる。一実施形態において、ステップ６５０では、分布空間において、訓練事例のＮ個のペアの中から、Ｎ−１個の事例を単一の参照サンプルの方に同時にプッシュできる。
【００６７】
ステップ６６０において、深層畳み込みニューラルネットワークを用いて予測を生成する。例えば、顔認識予測、音声認識予測、話者認識予測等を生成する。
【００６８】
ステップ６７０において、該予測に応じてアクションを実施する。当業者によって理解されるように、とり得るアクションは実施形態に応じたものである。例えば、デバイス、システムまたは設備を含む、それらに限定されるものではないが、エンティティへのアクセスを該予測に応じて付与できる。前述したアクションは単なる説明的なものであり、当業者によって容易に理解されるように、本発明の趣旨を維持する限りにおいて、他のアクションも実施できることを理解されたい。
【００６９】
一実施形態において、ステップ６７０はステップ６７０Ａを含む。
【００７０】
ステップ６７０Ａにおいて、ユーザを照合し、予測に基づいて該ユーザにエンティティへのアクセスを提供する。
【００７１】
次に本発明の実施形態による教師あり深層計量学習に関して説明する。
【００７２】
教師あり深層計量学習に関する説明は、コントラスティブ及びトリプレット損失に関する説明で始まる。
【００７３】
教師あり深層計量学習は、同じクラスからの複数事例間の距離を小さくし、異なるクラスからのものでは大きくすることを維持する、深層ニューラルネットワークを用いるデータの埋め込みベクトル表現を学習することを意図している。コントラスティブ損失及びトリプレット損失関数は、深層埋め込みネットワークを訓練するために用いられてきた。
【数１】
2019509551.tif 000003
ここで、
【数２】
2019509551.tif 000004
は、深層ニューラルネットワークで定義される埋め込みカーネルであり、ｙｉ∈｛１，…，Ｌ｝は、データｘｉ∈χのラベルである。本明細書では、ｘ＋及びｘ−を、ｘのポジティブ事例及びネガティブ事例を表すために用いる。すなわち、ｙ＋＝ｙ及びｙ−≠ｙである。［ｄ］＋＝ｍａｘ｛０；ｄ｝及びｍ＞０は、マージン用のチューニングパラメータである。簡略化のために、ｆ＝ｆ（ｘ）は、全ての上付き文字及び下付き文字がある場合は継承しながら、ｘの埋め込みベクトル表現を示すために使用される。２つの目的関数は、それらの両方が埋め込み空間に対するラベル空間における複数事例間の距離を維持するために埋め込みカーネルを最適化するという意味で似ているが、トリプレット損失は、ポジティブペアとネガティブペアとの間の距離の相対的なマージンにのみ関心があり、それらの距離の絶対値には関心がないため、トリプレット損失はコントラスティブ損失の緩和（relaxation）と考えることができる。損失関数はカーネルパラメータθに関して微分可能であるため、損失関数は深層ニューラルネットワークを訓練するための目的関数として用いることができる。
【００７４】
簡単そうに思われるが、上記損失関数のマージン制約は、訓練のわずかなエポック後の訓練ペアまたはトリプレットの大部分に関して容易に成立させることができるため、非常に特徴的な埋め込みベクトルをもたらす、深層ニューラルネットワークを訓練するためにコントラスティブ損失またはトリプレット損失関数を適用することは自明ではない。不適切な局所最小値を避けるために、数千の事例を含む各ミニバッチ（mini-batch）のうちの全てのポジティブ事例を除いた（セミ）ハードネガティブ事例を選択するオンライントリプレット選択アルゴリズム等の異なるデータ選択方法が研究されてきた。データ選択ステップは不可欠であるが、各データサンプルは距離を計算するために深層ニューラルネットワークのフォワードパスを経由するため、深層計量学習にとってより非効率となる。
【００７５】
次に本発明の実施形態による深層計量学習のためのＮペア損失に関して説明する。また、なぜＮペア損失が深層計量学習に関する他の既存の損失関数よりも優れているかに関する理論的洞察を、トリプレット損失及びソフトマックス損失等の損失関数との関係を示すことで提供する。
【００７６】
まずＮペア損失に関して説明する。訓練事例のＮ個のペア
【数３】
2019509551.tif 000005
及びラベル
【数４】
2019509551.tif 000006
を考える。定義によれば、
【数５】
2019509551.tif 000007
であり、事例のペアのどれも同じクラスからのものではない、すなわちｙｉ≠ｙｊ、∀ｉ≠ｊであると仮定する。アンカー点ｘｉとポジティブまたはネガティブ点
【数６】
2019509551.tif 000008
との間の類似性尺度は、以下のように定義され、
【数７】
2019509551.tif 000009
スコア
【数８】
2019509551.tif 000010
は、正規化された自己類似性である、すなわち、
【数９】
2019509551.tif 000011
である。
【００７７】
ｐｉは（０，１）によって境界が定められており、それはアンカー点とネガティブ点との類似性に対するアンカー点とポジティブ点との間の相対的な類似性を表していることに留意されたい。図４で説明したように、Ｎペア訓練サブセット内の全てのアンカー点のスコアを最大化することは、同じクラスからの複数の事例を共にプルし、同時にそれは異なるクラスからの複数の事例を、それらの事例の相対的な非類似性に基づいて離れるようにプッシュするものである。すなわち、アンカー点と近いネガティブ事例は、既に十分遠いものよりも離れるようにプッシュされることになる。結局、Ｎペア損失は以下のように定義される。
【数１０】
2019509551.tif 000012
【００７８】
ｆｉ、
【数１１】
2019509551.tif 000013
、ｆｊに関するｌｏｇｐｉの勾配は以下で導かれる。
【数１２】
2019509551.tif 000014
また、θに関する勾配は連鎖律（chain-rule）によって計算できる。
【００７９】
表１は、深層計量学習のための損失関数の比較表を示している。２ペア損失は、∈収束基準下におけるトリプレット損失と等価であり、その２ペア損失のスコア関数は、Ｎ＞２におけるＮペア損失のスコア関数に対する近似である。
【表１】
2019509551.tif 000015
【００８０】
次にトリプレット損失とＮペア損失の比較に関して説明する。
【００８１】
本発明を説明するために、トリプレット損失及びソフトマックス損失に対するＮペア損失について説明する。
【００８２】
トリプレット損失とＮペア損失の比較に関して、トリプレット損失及び２ペア損失を例にして説明する。
【００８３】
複数の損失関数の関係は、（２つの損失関数のための埋め込みカーネルの最適なセットは等価であるが）各損失関数に関する、最適な埋め込みカーネルの２つのセット間の等価性を示すことで明示できる。損失関数の最適性条件は以下のように定義される。
【数１３】
2019509551.tif 000016
ここで、
【数１４】
2019509551.tif 000017
であり、埋め込みカーネルｆは、２ペア損失及びトリプレット損失の両方に関して単位ｌ２ノルムを持つように制約される。以下では、
【数１５】
2019509551.tif 000018
のときに、
【数１６】
2019509551.tif 000019
及び
【数１７】
2019509551.tif 000020
が、等価であることが示されている。
【数１８】
2019509551.tif 000021
であるとし、任意の有効２ペアサンプル
【数１９】
2019509551.tif 000022
を考える。
【数２０】
2019509551.tif 000023
は有効トリプレットサンプルを形成するため、以下が得られる。
【数２１】
2019509551.tif 000024
これは、
【数２２】
2019509551.tif 000025
であることを示している。
【数２３】
2019509551.tif 000026
：同様に、
【数２４】
2019509551.tif 000027
であるとし、任意の有効トリプレットサンプル
【数２５】
2019509551.tif 000028
を考える。
【数２６】
2019509551.tif 000029
における任意のｘ２に関して、以下を満たす２ペアサンプル
【数２７】
2019509551.tif 000030
を形成できる。
【数２８】
2019509551.tif 000031
ここで、式（１５）の詳細は、式（１１）-（１４）を後方へ繰り返すために省略されている。これは、最終的に
【数２９】
2019509551.tif 000032
であることを示している。
【００８４】
次にソフトマックス損失からの洞察に関して説明する。
【００８５】
Ｌ個のクラスによるソフトマックス損失は、以下のように書き表される。
【数３０】
2019509551.tif 000033
ここで、
【数３１】
2019509551.tif 000034
は、クラスｌに関する重みベクトルまたはテンプレートである。Ｌが非常に大きい場合、訓練で厳密な分配関数
【数３２】
2019509551.tif 000035
を計算することは、しばしば非効率的または非実用的である。そのようなケースにおいて、厳密な分配関数は、以下のようにグラウンドトルーステンプレート（ground-truth template）を含むＮ個のテンプレートの小さいサブセットをランダムに選択することで近似できる。
【数３３】
2019509551.tif 000036
ここで、Ｓ⊂｛１，…，Ｌ｝、｜Ｓ｜＝Ｎであり、ｙｉ∈Ｓである。局所分配関数ＺＳ（ｘ）は、任意のＳに関してＺ（ｘ）よりも小さく、近似値はＮが大きくなると共により正確になる（重点サンプリング及びハッシング等の高度なサブセットサンプリング法を、小さいＮによる近似誤差を低減するために用いてもよいことに留意されたい）。２ペア損失の自己類似性スコアはＮペア損失の自己類似性スコアと近似とみなすことができるため、このことはＮペア損失を２ペア損失（またはＭ＜ＮにおけるＭペア損失）と比較したときに価値のある洞察をもたらす。すなわち、Ｎペア損失の任意の自己類似性スコアは２ペア損失の自己類似性スコアによって近似できるが、いずれも厳密ではない。
【数３４】
2019509551.tif 000037
∀ｊ∈｛１，…，Ｎ｝＼｛ｉ｝。このことは、２ペア損失で訓練されるとき、Ｎペア損失の実際のスコアはモデルの過大評価されたスコアの背後に隠される可能性があり、該モデルはおそらく準最適であることを示唆している。２ペア損失は、Ｎ＞２であるＮペア損失モデル、またはソフトマックス損失モデルと比べて訓練データに対して著しくアンダーフィットするという結論が出されている。
【００８６】
次に様々な関係に関する本発明の意義について説明する。
【００８７】
これらの関係の意義を下記に要約する。
１．２ペア損失及びトリプレット損失に関する埋め込みカーネルの最適なセットは等価であり、これらの損失関数で訓練される複数のモデルの性能は類似する。
２．Ｍペア損失は、Ｍ＜ＮにおけるＮペア損失の近似である。
【００８８】
次にＬ２ノルム正則化に関して説明する。
【００８９】
式（４）におけるスコア関数は、埋め込みベクトルのノルムに対して不変であるようには設計されていないことに留意されたい。すなわち、スコア関数は、埋め込みベクトルをリスケーリングすることで、１または０へ近くなるように任意に作ることができる。このことは、自己類似性スコア関数は、正しい方向を見出すよりも、むしろ埋め込みベクトルのノルムを増加させることで最大化することが可能であり、トリプレット損失を計算するために、そのような状況、例えば埋め込みベクトルのｌ２正規化を避けるために、該埋め込みベクトルのノルムを正則化することが重要であることを示唆している。しかしながら、自己類似性スコアは、
【数３５】
2019509551.tif 000038
によって上方境界が定められるため（例えば、上方境界は、Ｎ＝２のときは０．８８であるが、Ｎ＝６４のときは０．１０５に減少する）、Ｎペア損失に関して、ｌ２正規化を適用することで最適化することは非常に難しい。本願では、代わりに埋め込みベクトルのｌ２ノルムが小さくなることを促進させる以下のペナルティ項
【数３６】
2019509551.tif 000039
を目的関数に追加することで正則化する。
【００９０】
次に本発明によって達成される解決策の競争力の高い／商業的な価値に関して説明する。
【００９１】
本発明は、（１）ハードネガティブデータマイニングを除去すること、（２）計算的にかつパラメータの重いソフトマックス層を除去すること、（３）過去の深層計量学習アプローチよりも速く収束すること、によって効率的な訓練が可能となる。
【００９２】
本発明は、出力クラス（例えば、識別情報）の数が極端に大きい、顔認識等の技術に関して効果的である。
【００９３】
本発明は、出力クラスの数が未知である、または経時的に変化する、オンライン学習に関して効果的である。
【００９４】
事例の２つのペアをハードネガティブマイニングで用いるよりも、むしろ事例のＮ個のペアは、異なるクラスの事例を素早く別々にプッシュできるクラスのランダムサブセットから用いられる。
【００９５】
本明細書に記載した実施形態は、ハードウェアで実現してもよく、ソフトウェアで実現してもよく、ハードウェアとソフトウェアの両方の要素を含んでいてもよい。好ましい実施形態において、本発明は、ファームウェア、常駐ソフトウェア、マイクロコード等を含むが、これらに限定されないソフトウェアでも実現可能である。
【００９６】
実施形態には、コンピュータもしくは任意の命令実行システムによって使用される、または関連して使用されるプログラムコードを提供する、コンピュータで利用可能な、またはコンピュータで読み取り可能な媒体からアクセスできる、コンピュータプログラム製品を含んでもよい。コンピュータで利用可能な、またはコンピュータで読み取り可能な媒体には、命令実行システム、機器、もしくは装置によって使用される、または関連して使用されるプログラムを格納、伝達、伝搬または転送する任意の機器を含んでもよい。該媒体は、磁気媒体、光学媒体、電子媒体、電磁気媒体、赤外線媒体、または半導体システム（または機器もしくは装置）、あるいは伝搬媒体であってよい。該媒体には、半導体または固体メモリ、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、リジッド磁気ディスク及び光ディスク等のコンピュータで読み取り可能な媒体を含んでもよい。
【００９７】
各コンピュータプログラムは、汎用または特別な目的を持つプログラム可能なコンピュータで読み取ることができる、機械で読み取り可能なストレージメディアまたは装置（例えば、プログラムメモリまたは磁気ディスク）に格納される。該コンピュータプログラムは、ストレージメディアまたは装置から本明細書に記載された手順を実行するコンピュータで読み出される、該コンピュータの設定及び制御動作のためのものである。本発明のシステムには、本明細書に記載した機能を実行する、特定の及び事前に定義された方法でコンピュータに動作させるように構成されたコンピュータプログラムを含む、コンピュータで読み取り可能なストレージメディアも考慮される。
【００９８】
プログラムコードを記憶及び／または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接または間接的に接続された少なくとも１つのプロセッサを備えていてもよい。このメモリ要素には、処理の実行中にバルク記憶装置からコードが検索される回数を減らすために、プログラムコードの実際の実行中に用いられるローカルメモリ、バルク記憶装置及び少なくともいくつかのプログラムコードを一時的に記憶するキャッシュメモリを備えていてもよい。入出力またはＩ／Ｏ装置（限定されるものではないが、キーボード、ディスプレイ、ポインティング装置等を含む）は、直接またはＩ／Ｏコントローラを介してシステムに接続されてもよい。
【００９９】
ネットワークアダプタは、データ処理システムが、プライベートネットワークまたは公衆ネットワークを介して、他のデータ処理システムまたは遠隔プリンタもしくは記憶装置に接続されることを可能にするために、上記システムと接続されていてもよい。モデム、ケーブルモデム及びイーサネット（登録商標）カードは、現在利用可能なタイプのネットワークアダプタのほんの一握りのものである。
【０１００】
本明細書で、本発明の「１つの実施形態」または「実施形態」だけでなく、それらの他のバリエーションに言及することは、該実施形態と共に説明する、個別の特徴、構造、特性等々が、本発明の少なくとも１つの実施形態に含まれることを意味する。そのため、「１つの実施形態において」または「一実施形態において」という語句、任意の他のバリエーションの記載は、本明細書の全体を通して様々な場所で現れるが、それらは必ずしも全てが同じ実施形態に言及しているわけではない。
【０１０１】
例えば、「Ａ／Ｂ」、「Ａ及び／またはＢ」、並びに「Ａ及びＢのうちの少なくとも１つ」の場合における「／」、「及び／または」、並びに「うちの少なくとも１つ」のうちのいずれかの使用は、第１に挙げた選択肢（Ａ）のみの選択、第２に挙げた選択肢（Ｂ）のみの選択、または両方の選択肢（Ａ及びＢ）の選択を含むことを意図したものと理解すべきである。さらに例を挙げれば、「Ａ、Ｂ及び／またはＣ」、並びに「Ａ、Ｂ及びＣのうちの少なくとも１つ」の場合、このような表現法は、第１に挙げた選択肢（Ａ）のみの選択、第２に挙げた選択肢（Ｂ）のみの選択、第３に挙げた選択肢（Ｃ）のみの選択、第１及び第２に挙げた選択肢（Ａ及びＢ）のみの選択、第１及び第３に挙げた選択肢（Ａ及びＣ）のみの選択、第２及び第３に挙げた選択肢（Ｂ及びＣ）のみの選択、または３つの選択肢全て（Ａ及びＢ及びＣ）の選択を含むことを意図したものである。上述した例は、当業者に容易に明らかとなるように、列挙される多数の項目に応じて拡大適用される。
【０１０２】
上記は、あらゆる観点において説明的（illustrative）かつ典型的（exemplary）であって限定的でないものと理解されるべきであり、本明細書で開示する本発明の範囲は、詳細な説明から決定されるべきではなく、特許法で認められた最大限の広さに基づいて解釈される特許請求の範囲から決定されるべきである。本明細書中に図示及び記載されている実施形態は、本発明の原理を説明するものにすぎず、本発明の範囲及び主旨から逸脱することなく当業者は様々な変更を実施することができることを理解されたい。当業者は、本発明の範囲及び精神から逸脱することなく、様々な他の特徴の組み合わせを実施できる。以上、本発明の態様について、特許法で要求される細部及び詳細な事項と共に説明したが、特許証で保護されることを要求する特許請求の範囲は、添付の特許請求の範囲に示されている。
【図１】
2019509551.tif 000040
【図２】
2019509551.tif 000041
【図３】
2019509551.tif 000042
【図４】
2019509551.tif 000043
【図５】
2019509551.tif 000044
【図６】
2019509551.tif 000045
【図７】
2019509551.tif 000046
【図８】
2019509551.tif 000047
【国際調査報告】
2019509551.tif 000048
2019509551.tif 000049