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

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

▶ ネイバー コーポレーションの特許一覧 ▶ LINE株式会社の特許一覧

<>
  • 特許-深層距離学習方法およびシステム 図1
  • 特許-深層距離学習方法およびシステム 図2
  • 特許-深層距離学習方法およびシステム 図3
  • 特許-深層距離学習方法およびシステム 図4
  • 特許-深層距離学習方法およびシステム 図5
  • 特許-深層距離学習方法およびシステム 図6
  • 特許-深層距離学習方法およびシステム 図7
  • 特許-深層距離学習方法およびシステム 図8
  • 特許-深層距離学習方法およびシステム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-14
(45)【発行日】2022-03-23
(54)【発明の名称】深層距離学習方法およびシステム
(51)【国際特許分類】
   G06N 3/08 20060101AFI20220315BHJP
【FI】
G06N3/08
【請求項の数】 20
(21)【出願番号】P 2020204341
(22)【出願日】2020-12-09
(65)【公開番号】P2021096848
(43)【公開日】2021-06-24
【審査請求日】2020-12-09
(31)【優先権主張番号】10-2019-0167101
(32)【優先日】2019-12-13
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(73)【特許権者】
【識別番号】321003371
【氏名又は名称】LINE株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】具 建謀
(72)【発明者】
【氏名】高 秉秀
【審査官】北川 純次
(56)【参考文献】
【文献】Zheng, W. et. al.,Hardness-Aware Deep Metric Learning,2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition,2019年06月,インターネット <URL:https://ieeexplore.ieee.org/document/8953245>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/08
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
コンピュータシステムが実行する深層距離学習方法であって、
前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
前記深層距離学習方法は、
前記少なくとも1つのプロセッサにより、埋め込み空間で与えられたオリジナルポイントを利用して合成ポイントを生成する段階であって、ペアを成すオリジナルポイントのうちの一方のオジリナルポイントを通る直線に対する、前記ペアを成すオリジナルポイントのうちの他方のオリジナルポイントの対称点を定めることによって、前記合成ポイントを生成する段階、および
前記少なくとも1つのプロセッサにより、前記オリジナルポイントと前記合成ポイントを利用して深層距離学習に使用するためのハードネガティブペアを定め、前記ハードネガティブペアに基づいて深層距離学習を行う段階 を含む、深層距離学習方法。
【請求項2】
前記合成ポイントを生成する段階は、
前記他方のオリジナルポイントの位置ベクトルの、前記直線に対する投影成分から、前記他方のオリジナルポイントの位置ベクトルを減算したベクトル差に基づいた値と、前記他方のオリジナルポイントの位置ベクトルとのベクトル和を計算することを含むこと
を特徴とする、請求項1に記載の深層距離学習方法。
【請求項3】
前記合成ポイントを生成する段階は、
前記オリジナルポイントの対称情報、または前記オリジナルポイントの組み合わせによる拡張情報を利用して前記合成ポイントを生成すること
を特徴とする、請求項1に記載の深層距離学習方法。
【請求項4】
前記深層距離学習を行う段階は、
同一クラスのオリジナルポイントを埋め込み空間に結合することにより生成された合成ポイント集合を用いて損失関数を最小化すること
を特徴とする、請求項1に記載の深層距離学習方法。
【請求項5】
前記合成ポイントを生成する段階は、
同一クラスの一対のオリジナルポイントが与えられると、オリジナルポイント間を線形補間によって分割し、分割地点に前記合成ポイントを生成することによって合成ポイント集合を生成すること
を特徴とする、請求項1に記載の深層距離学習方法。
【請求項6】
前記ハードネガティブペアを定める段階は、
前記オリジナルポイントと前記合成ポイントを利用して互いに異なる2つのクラス間の複数のネガティブペアを生成する段階、および
各ネガティブペアの類似性または距離に基づき、前記複数のネガティブペアのうちから最もハードなネガティブペアを選択して前記深層距離学習を行う段階
を含む、請求項1に記載の深層距離学習方法。
【請求項7】
前記複数のネガティブペアを生成する段階は、
ポジティブクラスの特徴点とネガティブクラスの特徴点を利用してポジティブポイントとネガティブポイント間の可能なネガティブペアを生成すること
を特徴とする、請求項6に記載の深層距離学習方法。
【請求項8】
前記ハードネガティブペアを定める段階は、
トリプレット損失またはリフテッド構造損失に対して最小プーリングを使用してハードネガティブペアを定める段階
を含む、請求項1に記載の深層距離学習方法。
【請求項9】
前記ハードネガティブペアを定める段階は、
Nペア損失または角度損失に対して最大プーリングを使用してハードネガティブペアを定める段階
を含む、請求項1に記載の深層距離学習方法。
【請求項10】
前記ハードネガティブペアを定める段階は、
前記オリジナルポイントと前記合成ポイントを利用してMS損失(multi-simiarity loss)に対してハードネガティブペアを定める段階
を含む、請求項1に記載の深層距離学習方法。
【請求項11】
請求項1~10のうちのいずれか一項に記載の深層距離学習方法を前記コンピュータシステムに実行させる、コンピュータプログラム。
【請求項12】
請求項1~10のうちのいずれか一項に記載の深層距離学習方法をコンピュータに実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体。
【請求項13】
コンピュータシステムであって、
メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサは、
埋め込み空間で与えられたオリジナルポイントを利用して合成ポイントを生成する過程であって、ペアを成すオリジナルポイントのうちの一方のオジリナルポイントを通る直線に対する、前記ペアを成すオリジナルポイントのうちの他方のオリジナルポイントの対称点を定めることによって、前記合成ポイントを生成する過程、および
前記オリジナルポイントと前記合成ポイントを利用して深層距離学習に使用するためのハードネガティブペアを定め、前記ハードネガティブペアに基づいて深層距離学習を行う過程
を処理する、コンピュータシステム。
【請求項14】
前記合成ポイントを生成する過程は、
前記他方のオリジナルポイントの位置ベクトルの、前記直線に対する投影成分から、前記他方のオリジナルポイントの位置ベクトルを減算したベクトル差に基づいた値と、前記他方のオリジナルポイントの位置ベクトルとのベクトル和を計算することを含むこと
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項15】
前記合成ポイントを生成する過程は、
前記オリジナルポイントの対称情報、または前記オリジナルポイントの組み合わせによる拡張情報を利用して前記合成ポイントを生成すること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項16】
前記合成ポイントを生成する過程は、
同一クラスの一対のオリジナルポイントが与えられると、オリジナルポイント間を線形補間によって分割し、分割地点に前記合成ポイントを生成することによって合成ポイント集合を生成すること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項17】
前記ハードネガティブペアを定める過程は、
前記オリジナルポイントと前記合成ポイントを利用して互いに異なる2つのクラス間の複数のネガティブペアを生成する過程、および
各ネガティブペアの類似性または距離に基づき、前記複数のネガティブペアのうちから最もハードなネガティブペアを選択して前記深層距離学習を行う過程
を含む、請求項13に記載のコンピュータシステム。
【請求項18】
前記ハードネガティブペアを定める過程は、
トリプレット損失またはリフテッド構造損失に対して最小プーリングを使用してハードネガティブペアを定めること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項19】
前記ハードネガティブペアを定める過程は、
Nペア損失または角度損失に対して最大プーリングを使用してハードネガティブペアを定めること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項20】
前記ハードネガティブペアを定める過程は、
前記オリジナルポイントと前記合成ポイントを利用してMS損失(multi-simiarity loss)に対してハードネガティブペアを定めること
を特徴とする、請求項13に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、深層距離学習(deep metric learning)技術に関する。
【背景技術】
【0002】
深層距離学習は、データポイント間の意味的類似性の情報を含む埋め込み(embedding)を目標にするものであって、例えば、意味的に類似する映像は互いに近くに挿入され、意味的に異なる映像は互いに遠くに挿入される埋め込み空間を学習するものである。
【0003】
このような深層距離学習の接近方式は、サンプルペア(sample pair)間の類似性または距離に基づいている。
【0004】
近年は、距離学習の性能を高めるために、ハードサンプル(hard sample)を生成してモデル学習に使用する方法が提案されている。
【0005】
例えば、特許文献1(公開日2019年9月23日)には,学習映像をサンプリングしてハードネガティブサンプルを抽出する技術が開示されている。
【0006】
従来は、敵対的生成ネットワーク(GAN:generative adversarial network)とオートエンコーダ(auto encoder)によってハードサンプルを生成していた。このような方法は、選択されなかった多数をハードサンプルとして合成し、拡張された情報によってモデルを訓練させる方式である。
【0007】
深層距離学習の性能向上にもかかわらず、距離学習モデルとともにハードサンプルを生成するためには、追加のサブネットワークが必要となる。これは、モデルの大きさ、ハイパーパラメータ(hyper parameter)、訓練時間、訓練難易度などを増加させるという問題を引き起こす。
【先行技術文献】
【特許文献】
【0008】
【文献】韓国公開特許第10-2019-0107984号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
生成ネットワーク(generative network)を使用せずにハードサンプルを生成して距離学習に使用することができる。
【0010】
対称的合成(symmetrical synthesis)によって対称の軸として互いに合成されたポイントをハードサンプルとして生成することができる。
【0011】
特徴点(feature points)の組み合わせによって拡張情報(augmented information)を含む合成ポイント(synthetic points)を生成することができる。
【0012】
距離学習損失を計算するために、オリジナルポイントと合成ポイント内でハードネガティブペアマイニング(hard negative pair mining)を実行することができる。
【課題を解決するための手段】
【0013】
コンピュータシステムが実行する深層距離学習方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記深層距離学習方法は、前記少なくとも1つのプロセッサにより、埋め込み空間で与えられたオリジナルポイント(original point)を利用して合成ポイント(synthetic point)を生成する段階、および前記少なくとも1つのプロセッサにより、前記オリジナルポイントと前記合成ポイントを利用して距離学習(metric learning)に使用するためのハードネガティブペア(hardnegative pair)をマイニングする段階を含む、ハードサンプル生成方法を提供する。
【0014】
一側面によると、前記合成ポイントを生成する段階は、1つのオリジナルポイントに他の1つのオリジナルポイントを投影したポイントを利用した代数計算(algebraic computation)によって前記合成ポイントを生成してよい。
【0015】
他の側面によると、前記合成ポイントを生成する段階は、前記オリジナルポイントの対称情報、または前記オリジナルポイントの組み合わせによる拡張情報を利用して前記合成ポイントを生成してよい。
【0016】
また他の側面によると、前記合成ポイントを生成する段階は、同一クラスのオリジナルポイントを埋め込み空間に結合して距離学習損失に関する情報を拡張させることによって合成ポイント集合を生成してよい。
【0017】
また他の側面によると、前記合成ポイントを生成する段階は、同一クラスの一対のオリジナルポイントが与えられると、2つのオリジナルポイント間を線形補間によって分割し、分割地点に前記合成ポイントを生成することによって合成ポイント集合を生成してよい。
【0018】
また他の側面によると、前記ハードネガティブペアをマイニングする段階は、前記オリジナルポイントと前記合成ポイントを利用して互いに異なる2つのクラス間の複数のネガティブペアを生成する段階、および各ネガティブペアの類似性または距離に基づき、前記複数のネガティブペアのうちから最もハードなネガティブペアを選択して距離学習損失に使用する段階を含んでよい。
【0019】
また他の側面によると、前記複数のネガティブペアを生成する段階は、ポジティブクラスの特徴点とネガティブクラスの特徴点を利用してポジティブポイントとネガティブポイント間の可能なネガティブペアを生成してよい。
【0020】
また他の側面によると、前記ハードネガティブペアをマイニングする段階は、トリプレット損失(triplet loss)またはリフテッド構造損失(lifted structure loss)に対し、最小プーリングを使用してハードネガティブペアマイニングを実行する段階を含んでよい。
【0021】
また他の側面によると、前記ハードネガティブペアをマイニングする段階は、Nペア損失(N-pair loss)または角度損失(angular loss)に対し、最大プーリングを使用してハードネガティブペアマイニングを実行する段階を含んでよい。
【0022】
さらに他の側面によると、前記ハードネガティブペアをマイニングする段階は、MS損失(multi-simiarity loss)に対し、前記オリジナルポイントと前記合成ポイントを使用してハードネガティブペアマイニングを実行する段階を含んでよい。
【0023】
前記深層距離学習方法を前記コンピュータシステムに実行させるために非一時的なコンピュータ読み取り可能な記録媒体に記録される、コンピュータプログラムを提供する。
【0024】
前記深層距離学習方法をコンピュータに実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体を提供する。
【0025】
コンピュータシステムであって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、埋め込み空間で与えられたオリジナルポイントを利用して合成ポイントを生成する過程、および前記オリジナルポイントと前記合成ポイントを利用して距離学習に使用するためのハードネガティブペアをマイニングする過程を処理する、コンピュータシステムを提供する。
【発明の効果】
【0026】
本発明の実施形態によると、追加の生成ネットワークを使用せずに埋め込み空間での幾何学計算(geometric computation)を利用してハードサンプルを生成することができるため、距離学習損失に対するハイパーパラメータがフリーとなり、訓練時間と訓練難易度の増加問題を解決することができる。
【0027】
本発明の実施形態によると、対称的合成によってハードサンプルを生成することにより、サンプルペア間の類似性または距離に基づいて計算されるすべての距離学習損失(triplet、N-pair、angular、lifted structure)にプラグアンドプレイ(plug&play)方式で使用することができるため、学習性能を向上させることができる。
【0028】
本発明の実施形態によると、特徴点の組み合わせによって拡張情報を含む合成ポイントを生成することにより、より簡単かつ柔軟な方法でモデルの大きさ、訓練速度、最適化難易度に影響を与えることなくペアベースの距離学習損失(pair-based metric learning loss)に結合することで、使用可能なモデルを構築することができる。
【図面の簡単な説明】
【0029】
図1】本発明の一実施形態における、コンピュータシステムの内部構成の一例を説明するためのブロック図である。
図2】本発明の一実施形態における、コンピュータシステムのプロセッサが含むことのできる構成要素の例を示した図である。
図3】本発明の一実施形態における、コンピュータシステムが実行することのできる深層距離学習方法の例を示したフローチャートである。
図4】本発明の一実施形態における、距離学習のための対称的な合成過程を説明するための例示図である。
図5】本発明の一実施形態における、対称ポイントを生成する過程を説明するための例示図である。
図6】本発明の一実施形態における、ハードネガティブペアマイニング過程を説明するための例示図である。
図7】本発明の一実施形態における、コンピュータシステムが実行することのできる深層距離学習方法の例を示したフローチャートである。
図8】本発明の一実施形態における、埋め込みポイント拡張過程を説明するための例示図である。
図9】本発明の一実施形態における、特徴点の組み合わせによって合成ポイントを生成する過程を説明するための例示図である。
【発明を実施するための形態】
【0030】
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。
【0031】
本発明の実施形態は、深層距離学習技術に関する。
【0032】
本明細書で具体的に開示される事項を含む実施形態は、生成ネットワークを使用する代わりに、埋め込みに簡単な代数計算(algebraic computation)で幾何学的接近としてハードサンプルを生成することができ、これにより、ハイパーパラメータのフリーと訓練速度の減少はもちろん、ネットワークを修正することなくプラグアンドプレイ方式として距離学習損失に容易に使用することができる。
【0033】
図1は、本発明の一実施形態における、コンピュータシステムの例を示したブロック図である。例えば、本発明の実施形態に係る深層距離学習システムは、図1に示したコンピュータシステム100によって実現されてよい。
【0034】
図1に示すように、コンピュータシステム100は、本発明の実施形態に係る深層距離学習方法を実行するための構成要素として、メモリ110、プロセッサ120、通信インタフェース130、および入力/出力インタフェース140を含んでよい。
【0035】
メモリ110は、コンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ110とは区分される別の永続的記録装置としてコンピュータシステム100に含まれてもよい。また、メモリ110には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ110とは別のコンピュータ読み取り可能な記録媒体からメモリ110にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース130を通じてメモリ110にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク160を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータシステム100のメモリ110にロードされてよい。
【0036】
プロセッサ120は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ110または通信インタフェース130によって、プロセッサ120に提供されてよい。例えば、プロセッサ120は、メモリ110のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0037】
通信インタフェース130は、ネットワーク160を介してコンピュータシステム100が他の装置と互いに通信するための機能を提供してよい。一例として、コンピュータシステム100のプロセッサ120がメモリ110のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース130の制御にしたがってネットワーク160を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データファイルなどが、ネットワーク160を経てコンピュータシステム100の通信インタフェース130を通じてコンピュータシステム100に受信されてよい。通信インタフェース130を通じて受信された信号や命令、データなどは、プロセッサ120やメモリ110に伝達されてよく、ファイルなどは、コンピュータシステム100がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0038】
通信方式が限定されることはなく、ネットワーク160が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク160は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク160は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0039】
入力/出力インタフェース140は、入力/出力装置150とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、カメラ、またはマウスなどの装置を、出力装置は、ディスプレイやスピーカのような装置を含んでよい。他の例として、入力/出力インタフェース140は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置150は、コンピュータシステム100と1つの装置で構成されてもよい。
【0040】
また、他の実施形態において、コンピュータシステム100は、図1の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータシステム100は、上述した入力/出力装置150のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。
【0041】
先ず、距離学習とハードネガティブペアマイニング、およびハードサンプル生成の技術について説明する。
【0042】
距離学習
特徴表現(feature representation)を利用した類似性および距離に基づいて距離学習損失が利用されている。最も簡単な損失の1つがトリプレット損失(triplet loss)であるが、これは、固定された相対的余裕をもつポジティブペアよりもネガティブペアをより多く分離するためにサンプルのトリプレットが必要となる。トリプレット損失を利用する場合、効率的な訓練のためのサンプリングを提供するためには多くのサンプリングコストが必要となる。このような問題を解決するために、互いに異なるクラスのN-1ネガティブサンプルを考慮したNペア損失(N-pair loss)を提案する。Nペア損失と同じように、すべてのネガティブサンプルを一括的に統合して埋め込み機能を訓練させるために、リフテッド構造損失(lifted structure loss)を提案する。角度損失(angular loss)は、距離測定計が尺度に敏感であると見なしてサンプル間の2次情報だけを考慮したものであり、三角形のネガティブポイントで角度を制限する。
【0043】
ハードネガティブペアマイニング
ハードネガティブペアマイニングは、深層距離学習を実行するのに必須となる役割を担う。ハードネガティブペアマイニング戦略の目的は、訓練過程でより多くの情報を提供するフォールスポジティブサンプル(false positive sample)を漸進的に選択することにある。例えば、オフラインハードネガティブペアマイニングは、以前に訓練されたモデルによって選択されたハードネガティブサンプルによってモデルを繰り返し微調整する方法である。オンラインハードネガティブペアマイニングは、トリプレット損失を計算するために一括的に最もハードなポジティブとネガティブを選択する方法である。セミハードネガティブペアマイニングは、最もハードなポジティブおよびネガティブのようにデータでノイズになり得る極めて紛らわしいサンプルを避けるための方法である。しかし、マイニング戦略は、選択された少数に焦点を合わせるが選択されなかった多数は見逃すものが殆どであるため、偏向的なモデルに繋がり得るという限界を抱えている。
【0044】
ハードサンプル生成
近年、多数の容易なネガティブ要素を利用して特別な意味情報をもつモデルを訓練させるために、合成ハードサンプルが利用されている。例えば、深層敵対距離学習(DAML)フレームワークは、敵対的方式によって容易なネガティブサンプルから合成ハードサンプルを生成する。同じように、ハードトリプレット生成のための敵対ニューラルネットワークは、合成ハードサンプルによってモデルを訓練する。硬度認識深層距離学習(HDML)フレームワークは、オートエンコーダアーキテクチャを利用して埋め込みでラベル記録合成物を生成して硬度レベルを操作する。上述したような方法は、追加の生成ネットワークを必要するものであるが、より大きなモデル、より遅い訓練速度、より多くのハイパーパラメータをもたらす。
【0045】
本実施形態では、生成ネットワークを使用する代わりに、埋め込みに簡単な代数計算によって幾何学的接近としてハードサンプルを生成し、これにより、ハイパーパラメータの追加や訓練速度の増加、さらにはネットワーク修正などの問題なく、従来の距離学習損失に容易に使用することができる。
【0046】
図2は、本発明の一実施形態における、コンピュータシステムのプロセッサが含むことのできる構成要素の例を示した図であり、図3は、本発明の一実施形態における、コンピュータシステムが実行することのできる深層距離学習方法の例を示したフローチャートである。
【0047】
図2に示すように、プロセッサ120は、生成部201およびマイニング部202を含んでよい。このようなプロセッサ120の構成要素は、少なくとも1つのプログラムコードによって提供される制御命令にしたがってプロセッサ120によって実行される、互いに異なる機能の表現であってよい。例えば、プロセッサ120がオリジナルポイントに対する対称的な合成ポイントを生成するようにコンピュータシステム100を制御するために動作する機能的表現として、生成部201が使用されてよい。
【0048】
プロセッサ120およびプロセッサ120の構成要素は、図3の深層距離学習方法が含む段階310~320を実行してよい。例えば、プロセッサ120およびプロセッサ120の構成要素は、メモリ110が含むオペレーティングシステムのコードと、上述した少なくとも1つのプログラムコードとによる命令を実行するように実現されてよい。ここで、少なくとも1つのプログラムコードは、深層距離学習方法を処理するために実現されたプログラムのコードに対応してよい。
【0049】
深層距離学習方法は、図に示された順に発生しないこともあり、段階のうちの一部が省略されるか追加の過程がさらに含まれることもある。
【0050】
プロセッサ120は、深層距離学習方法のためのプログラムファイルに記録されたプログラムコードをメモリ110にロードしてよい。例えば、深層距離学習方法のためのプログラムファイルは、メモリ110とは区分される永続的記録装置に記録されていてよく、プロセッサ120は、バスを介して永続的記録装置に記録されたプログラムファイルからプログラムコードがメモリ110にロードされるようにコンピュータシステム100を制御してよい。このとき、プロセッサ120およびプロセッサ120が含む生成部201およびマイニング部202それぞれは、メモリ110にロードされたプログラムコードのうちの対応する部分の命令を実行して以下の段階310~320を実行するためのプロセッサ120の互いに異なる機能的表現であってよい。段階310~320の実行のために、プロセッサ120およびプロセッサ120の構成要素は、制御命令による演算を直接処理するか、またはコンピュータシステム100を制御してよい。
【0051】
図3を参照すると、本発明に係る深層距離学習方法の一例は、次の2つの段階を含んでよい。
【0052】
段階310で、生成部201は、埋め込み空間で与えられたオリジナルポイントに対して対称的な合成ポイントを生成してよい。
【0053】
段階320で、マイニング部202は、オリジナルポイントと合成ポイントを利用して距離学習損失に対してハードネガティブペアマイニングを実行してよい。
【0054】
図4を参照すると、先ず、生成部201は、埋め込み空間にポジティブポイントx、xとネガティブポイントx、xが与えられると、ネガティブポイントの場合、各対称軸に対して合成ポイントx’、x’を生成する。
【0055】
次に、マイニング部202は、4つの特徴点、すなわち、2つのオリジナルポイントと2つの合成ポイント内から最もハードなネガティブポイントを選択してよい。図4は、合成ポイントのうちからx’がハードサンプルとして選択される過程を例示的に示している。図4において、四角形と円形は、埋め込み空間で互いに異なるクラスに属するポイントを示し、実線の四角形と実線の円形のポイントはオリジナルフィーチャに該当し、点線の四角形のポイントは合成フィーチャに該当する。
【0056】
深層距離学習方法を具体的に説明すれば、次のとおりとなる。
【0057】
段階310は、埋め込みで対称的な合成ポイントを生成する過程である。
【0058】
Iはデータ空間であり、χはd次元の埋め込み空間であるとする。
【数1】

を、データ空間から深層ニューラルネットワークによってパラメータが指定された埋め込み空間へのマッピングであると定義する。各ポイントxがラベルl∈{1,...,C}を有するとき、特徴点集合X=[x,x,...,x]をサンプリングする。
【0059】
生成部201は、同一クラスの2つの特徴点x、xが与えられる場合に、それぞれを対称軸として合成ポイントx’、x’を生成してよい。図5を参照すると、合成ポイントx’を得るためにxにxを投影するr を、数式(1)のように定義する。
【数2】
【0060】
ここで、uxlはxの単位ベクトルであり、
【数3】

である。
【0061】
合成ポイントx’は、数式(2)のように代数的公式で簡単に表現できる。
【数4】
【0062】
ここで、αは、合成ポイントがオリジナルポイントからどのくらい遠く離れているかに関するものであり、βは、合成ポイントのノルム(norm)がどれほど大きいかに関するものである。対称的な合成ポイントはα=2.0、β=1.0であるときに得られ、αとBは説明と例示だけのためのものであってハイパーパラメータに該当しない。他の対称的な合成ポイントx’も、同じ方法で生成されてよい。
【0063】
言い換えれば、対称軸xを基準としてxと対称となるポイントx’を生成し、これと反対に、対称軸xを基準としてxと対称となるポイントx’を生成する。
【0064】
最終的に、2つのオリジナルポイントと2つの合成ポイント、すなわち4つの特徴点を得るようになる。
【0065】
合成ポイントが対称的な属性を含んで生成されなければならない2つの理由がある。
【0066】
1つ目の理由として、対称的な合成が、ペア間の同一のコサイン類似性とユークリッド(Euclidean)距離を提供するということにある(
【数5】

)。このようにすれば、選択したネガティブペアに含まれたポジティブポイントが同一の類似性と距離をもつようになるため、生成されたポイントが損失のポジティブペアに影響を及ぼさない。
【0067】
2つ目の理由として、生成された合成ポイントは、常にオリジナルポイントと同じノルム(Norm)をもつためである。すべての距離学習損失はノルムの影響を受ける。これを制御するために、トリプレット損失は、l2(エルツー)正規化を実行してハイパー球空間(hyper-sphere space)に特徴点を投影し、Nペアおよび角度損失は、空間でl2正規化をせずに正則化(regularization)する。
【0068】
したがって、l2正規化されたポイントによって生成された合成ポイントは、ハイパー球空間にあるはずであり、非(non)l2正規化されたポイントによって生成された合成ポイントは、ユークリッド空間のオリジナルポイントと同じ標準になるであろう。これは、訓練過程中に標準に対する統制の連続性を提供し、最適化を妨害しないようにする。
【0069】
段階320は、対称的な合成を利用するために、各距離学習損失に対してハードネガティブペアマイニングを実行する。図4に示すように、アンカーベースのネガティブペアを採択する代りに、ポジティブクラスのすべてのオリジナルポイントと合成ポイントを追加で使用することにより、図6に示すように、ネガティブペアの数を拡大してよい。マイニング部202は、ポジティブクラスの4つの特徴点x、x、x’、x’とネガティブクラスの4つの特徴点x、x、x’、x’を考慮しながら、先ずポジティブポイントとネガティブポイントとの間の16個の可能なネガティブペア類似性を計算した後、類似性に基づいて距離学習損失に対して最もハードなネガティブペアを選択する。
【0070】
言い換えれば、図6を参照すれば、クラスごとに合成ポイントを生成するようにすると、2つのクラスの間に16個のネガティブペア(点線矢印)が生成されるようになる。16個のネガティブペアの類似性とユークリッド距離を計算し、このうちの最もハードなネガティブペア(実線矢印)を距離学習損失に使用する。このような過程がハードネガティブペアマイニングに該当する。
【0071】
ハードネガティブペアマイニング過程は、現在存在する距離学習損失(triplet、N-pair、angular、lifted structure loss)への適用が可能である。
【0072】
ポイントペアのコサイン類似性とユークリッド距離は、対称属性(
【数6】

)によって同一するため、単純性のために、ポジティブペア(すなわち、
【数7】

)に対してオリジナルポジティブポイントを使用してよい。距離学習損失と対称的な合成の組み合わせの式を利用してもよい。
【0073】
Pをオリジナルポイントがあるポジティブペアの集合となるようにし、N li,lkはクラスlのポジティブポイント、対称合成を含んだクラスlのネガティブペアの集合となるようにする。
【0074】
トリプレット損失は、数式(3)のように定義されるサンプルの3ペアを考慮する。
【数8】
【0075】
ここで、mはマージンであり、
【数9】

はユークリッド距離であり、[・]はヒンジ関数(hinge function)を示す。
【0076】
対称合成のために、N li,lkにおいて、ネガティブペアのユークリッド距離の間に、最小プーリングによってハードネガティブペアマイニングとトリプレット損失を結合する(数式(4))。
【数10】
【0077】
リフテッド構造損失は、各ポジティブペアに対してすべてのネガティブペアに対する距離を比較し、すべてのネガティブポイントをマージンよりも遠くに押し出す。より正確に説明すれば、数式(5)のように最小化を実行する。
【数11】
【0078】
トリプレット損失と同じように、数式(6)のように最小プーリング(min-pooling)を使用して対称合成およびリフテッド構造損失の組み合わせを公式化してよい。
【数12】
【0079】
Nペア損失の場合、追加のネガティブサンプルをトリプレットとして見なし、トリプレットはN-tupletに変換する。Nペア損失は、数式(7)のように定義される。
【数13】
【0080】
ここで、
【数14】

は、埋め込みxとxとの類似性である。
【0081】
コサイン類似性のために最大プーリング(max-pooling)を追加して対称合成によってNペア損失を公式化し、ミニバッチ(mini-batch)のすべてのネガティブクラスに対してハードネガティブペアマイニングを実行する(数式(8))。
【数15】
【0082】
3次関係をネガティブポイントでエンコードするために角度損失が提案される(数式(9))。
【数16】
【0083】
ここで、
【数17】

である。
【0084】
Nペア損失と同じように、数式(10)のように、すべてのネガティブクラスにハードネガティブペアマイニングのための最大プーリングを追加することにより、対称合成と各損失合成を結合してよい。
【数18】
【0085】
ここで、N li,lkは、クラスlでポジティブポイント2つと、f i,j,kで使用するクラスlでネガティブポイント1つを有するトリプレットセットである。
【0086】
対称合成が距離学習に役立つ理由について、以下のように説明する。
【0087】
1つ目の理由として、サンプリング戦略を使用する損失では、意味のある少数のデータだけが損失に使用され、意味のない大多数のデータは無視されるが、このとき、合成特徴点を使用すれば、無視されるデータを利用して合成ポイントを生成することができ、これを利用して拡張された情報で学習することができるため、より一般化されたモデルを学習することができる。
【0088】
2つ目の理由として、対称的なポイントは主にクラスタの境界線に生成されるため、ハードネガティブとして利用されることができる。オリジナルポイントと合成ポイント内において、ハードネガティブペアマイニングは、距離学習損失がより大きい力によって他のクラスを押し出すようにするため、クラスタリングとイメージ検索性能の向上に役立つ。
【0089】
本発明の他の実施形態として、深層距離学習損失に対する埋め込みポイントを確張する方法(embedding point expansion:EE)を提案する。
【0090】
先ず、関連技術について以下のように説明する。
【0091】
クエリ拡張およびデータベース拡大
クエリのイメージ特徴を考慮してみるとき、クエリと一致するデータベースからイメージ特徴の順位リストを検索し、オリジナルクエリとともに高い順位を検索したイメージ特徴を結合する。この後、結合されたイメージ特徴を再びクエリしてマッチングイメージの拡張集合を検索し、必要によってはプロセスを繰り返す。クエリ拡張と同じように、データベース拡大(DBA)は、イメージ特徴の品質を改善するために、データベースのすべてのイメージ特徴を自身の隣の組み合わせと替える。本実施形態に係る埋め込みポイント拡張は、このような概念、すなわち、隣の特徴を活用することにより、イメージ表現を拡張させるためのイメージ特徴の組み合わせを利用してよい。本実施形態に係る埋め込みポイント拡張は、後処理ではなく訓練段階で使用される。より具体的に説明すると、本実施形態は、距離学習損失に対するセマンティック情報を拡張させるために同一クラスで多数の組み合わせを生成する。
【0092】
MS(multi-simiarity)損失
上述した距離学習損失(triplet、N-pair、angular、lifted structure loss)の他にも、新しい距離学習損失としてMS損失を利用してよい。
【0093】
MS損失は、距離学習損失に関する最近の研究の1つであって、モデルが情報ペアを収集して加重することを可能にする自己類似性と相対的類似性を共同で測定するものである。
【0094】
以下、数式において、ラベルy[i]∈{1,...,C}は、数式におけるラベルl∈{1,...,C}と同じであり、
【数19】

は、ユークリッド距離であって、数式における
【数20】

と同じである。
【0095】
MS損失は、ポジティブペアとネガティブペアの両方のためのペアマイニングを実行する。{x,x}のネガティブペアは数式(11)の条件によって選択され、{x,x}のポジティブペアは数式(12)の条件によって選択される。
【数21】
【0096】
ここで、εは、与えられたマージンである。アンカーxの場合、ポジティブペアとネガティブペアのインデックス集合をそれぞれP とN で示す。この後、MS損失を数式(13)のように公式化してよい。
【数22】
【0097】
ここで、α、β、λはハイパーパラメータであり、Nは訓練サンプルの数を示す。MS損失も同じように、埋め込み特徴でl2正規化を使用する。
【0098】
図7を参照すると、本発明に係る深層距離学習方法の他の例は、以下の2つの段階を含んでよい。
【0099】
段階710で、生成部201は、埋め込み空間でオリジナルポイントを結合して拡張されたイメージ表現をもつ合成ポイントを生成してよい。
【0100】
段階720で、マイニング部202は、オリジナルポイントと合成ポイントを利用して距離学習損失に対してハードネガティブペアマイニングを実行してよい。
【0101】
図8を参照すると、段階710では、同一クラスの一対の埋め込みポイントが与えられると、埋め込みポイントライン間で線形補間を実行してn+1個の部分に等分し、等分による内部分割合成ポイントをn個生成する。nは合成ポイントの数であり、図8ではn=2である。段階720では、オリジナルポイントと合成ポイントのネガティブペア内から可能な限り最もハードなネガティブペアを選択する。図8において、四角形と円形は互いに異なる2つのクラスを示し、実線の四角形と実線の円形はオリジナルポイントを、点線の四角形と点線の円形は合成ポイントを示す。
【0102】
言い換えれば、生成部201は、2つの点の間をn+1個に均等に分けた地点に合成ポイントを生成することによってn個の合成ポイントを生成し、マイニング部202は、オリジナルポイントと合成ポイントとの間でハードネガティブペアマイニングを実行することができる。
【0103】
本実施形態は、拡張された情報を含む合成ポイントを活用することにより、より一般化されたモデルによって性能を向上させることができ、ペアベースの距離学習損失に結合することができる程に簡単かつ柔軟である。
【0104】
深層距離学習方法について、以下のように具体的に説明する。
【0105】
段階710は、埋め込みポイント拡張(EE)のために、同一クラスの特徴点を埋め込み空間に結合して距離学習損失に関する情報を拡張させることによって複数の合成ポイントを生成する過程である。
【0106】
より具体的な説明のために図9を参照すると、埋め込みポイント拡張(EE)は、2つの特徴点{x,x}間を線形補間することにより、特徴点の間をn+1個の均等な区間に内分する合成ポイントを生成する。
【0107】
埋め込み空間において同一クラスの2つの特徴点{x,x}が与えられる場合に、2つの特徴点{x,x}間をn+1個に均等に分割して内部的に分割ポイントij を分割区間に生成することにより、合成ポイントij の集合を得ることができる。
【数23】
【0108】
ここで、nは、生成されるポイントの数である。トリプレット損失、リフテッド構造損失、MS損失のようにl2正規化を使用する距離学習損失に対しては、次のようにl2正規化を合成ポイントに適用しなければならない。
【数24】
【0109】
ここで、ij はl2正規化された合成ポイントであり、ij をはl2正規化された合成ポイントの集合である。l2正規化された合成ポイントは、同じ標準とともにハイパー球空間に配置されるであろう。
【0110】
埋め込み空間で内部的にn+1の同等な区間に分割ポイントを生成する3つの利点がある。1つ目の利点として、クラスタされた埋め込み空間で各クラスの特徴ポイントペアを考慮するとき、最もハードなネガティブペアの類似性は、各クラスから各ペアのラインセグメント(line segment)間の最短距離(すなわち、図8に示されるような
【数25】

)になるであろう。しかし、高次元空間で有限長さのセグメント間の最短距離を計算するには計算的に多くのコストがかかる。この代りに、各クラスの内部分割ポイント間の距離を計算することにより、より少ない計算で問題を近似させることができる。2つ目の利点として、合成ポイントのラベルはクラスクラスタ内に含まれるため、高い確実性をもつ。従来のサンプル生成方法は、全結合層(fully connected layer)とソフトマックス(softmax)損失を利用して合成ポイントのラベルを制御していた反面、本発明に係るサンプル生成方法は、幾何学的関係(geometrical relation)を考慮して合成ポイントラベルの確実性を保障する。3つ目の利点として、本発明の合成ポイント生成方法は、埋め込み空間で簡単な線形補間法を実行するため、処理速度とメモリに影響を及ぼさない。
【0111】
段階720では、埋め込みポイント拡張(EE)によって生成された合成ポイントを利用して各距離学習損失に対してハードネガティブペアマイニングを実行し、合成ポイントとオリジナルポイントとの間でハードネガティブペアマイニングを実行してよい。段階720は、上述した段階320のハードペアマイニング過程と等しい。
【0112】
ハードペアマイニングはネガティブペアに対して行われ、オリジナルポイントはポジティブペアに使用される。その理由は、合成ポイントが内部的に2つのポイントを分けているため、オリジナルポイントと合成ポイントとの間のハードポジティブペアマイニングが常にオリジナルポイントのペアになるためである。
【0113】
上述した埋め込みポイント拡張(EE)とともに、代表的な距離学習損失の組み合わせを公式化すれば、次のとおりとなる。
【0114】
埋め込みポイント拡張(EE)が結合されたトリプレット損失は、トリプレット損失に対する最もハードなペアが最も小さなユークリッド距離をもつペアであるため、ネガティブペアに最小プーリングを追加することにより、数式(18)のように公式化されてよい。
【数26】
【0115】
ここで、N y[i],y[k]は、クラスy[i]でのポジティブポイント、合成ポイントを含んだクラスy[k]でのネガティブポイントを利用したネガティブペアの集合である。
【0116】
埋め込みポイント拡張(EE)が結合されたリフテッド構造損失も、埋め込みポイント拡張を追加するためにネガティブペアのユークリッド距離の最小プーリングを使用しなければならない。埋め込みポイント拡張(EE)が結合されたリフテッド構造損失は、数式(19)のように、ヒンジ損失を最小化するように構成される。
【数27】
【0117】
埋め込みポイント拡張(EE)が結合されたNペア損失は、ネガティブペアに最大プーリングを使用することで、数式(20)のように公式化されてよい。Nペア損失に対する最もハードなペアが、トリプレット損失およびリフテッド構造損失とは異なり、最大の類似性をもつペアであるためである。
【数28】
【0118】
埋め込みポイント拡張(EE)が結合されたMS損失には、2つのハードネガティブペアマイニングが含まれる。1つは埋め込みポイント拡張(EE)であり、もう1つはMS損失である。数式(11)の条件を修正してハードネガティブペアマイニングをすべて統合する。{x,x}のネガティブペアは、数式(21)の条件とともに選択される。
【数29】
【0119】
また、アンカーxの選択されたネガティブペアのインデックス集合を と定義する。この後、埋め込みポイント拡張(EE)およびMS損失の組み合わせを、数式(22)のように公式化してよい。
【数30】
【0120】
実施形態では、オリジナルポイントと合成ポイントを利用してハードネガティブペアマイニングを実行するにあたり、上述した距離学習損失の他にも、すべてのペアベースの距離学習損失を適用することができる。
【0121】
このように、本発明の実施形態によると、追加の生成ネットワークを使用せずに埋め込み空間での幾何学計算を利用してハードサンプルを生成することができるため、距離学習損失に対するハイパーパラメータがフリーとなり、訓練時間と訓練難易度の増加問題を解決することができる。また、本発明の実施形態によると、対称的合成によってハードサンプルを生成することにより、サンプルペア間の類似性または距離基準に計算されるすべての距離学習損失にプラグアンドプレイ方式で使用することができるため、学習性能を向上させることができる。さらに、本発明の実施形態によると、特徴点の組み合わせによって拡張情報を含む合成ポイントを生成することにより、より簡単かつ柔軟な方法でモデルの大きさ、訓練速度、最適化難易度に影響を与えることなくペアベースの距離学習損失に結合することで、使用可能なモデルを構築することができる。
【0122】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0123】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、所望の動作をするように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、仮想装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0124】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【0125】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0126】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0127】
120:プロセッサ
201:生成部
202:マイニング部
図1
図2
図3
図4
図5
図6
図7
図8
図9