(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-02
(45)【発行日】2023-02-10
(54)【発明の名称】ディープQ‐ネットワークを利用してディープラーニング基盤のディテクションネットワークに対する自己教師あり学習を遂行する方法及びこれを利用した学習装置{METHODS FOR PERFORMING SELF‐SUPERVISED LEARNING OF DEEP‐LEARNING BASED DETECTION NETWORK BY USING DEEP Q‐NETWORK AND DEVICES USING THE SAME}
(51)【国際特許分類】
G06T 7/00 20170101AFI20230203BHJP
G06N 20/00 20190101ALI20230203BHJP
【FI】
G06T7/00 350C
G06N20/00 130
(21)【出願番号】P 2022007514
(22)【出願日】2022-01-21
【審査請求日】2022-01-21
(32)【優先日】2021-03-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】517038176
【氏名又は名称】株式会社ストラドビジョン
【氏名又は名称原語表記】STRADVISION,INC.
【住所又は居所原語表記】Suite 304-308,5th Venture-dong,394,Jigok-ro,Nam-gu,Pohang-si,Gyeongsangbuk-do 37668 Republic of Korea
(74)【代理人】
【識別番号】100120628
【氏名又は名称】岩田 慎一
(72)【発明者】
【氏名】柳 宇宙
(72)【発明者】
【氏名】康 鳳男
(72)【発明者】
【氏名】諸 泓模
【審査官】片岡 利延
(56)【参考文献】
【文献】中国特許出願公開第111476302(CN,A)
【文献】特開2019-67405(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する方法において、
(a)客体探知のためのディテクションネットワークが学習データベースに格納された学習データを利用して学習された状態で、ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、学習装置が、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k
1の客体に第1_k
1のバウンディングボックス(前記k
1は1以上の整数である)に対応される第1_k
1のクラシフィケーションコンフィデンス、第1_k
1のリグレッションアンサーティンティ及び第1_k
1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワーク(deep Q‐network)をもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援する段階;
(b)前記学習装置が、(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度(accuracy)を参照してリワードを生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度(accuracy)を参照して前記リワードを生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k
2客体に対する第2_k
2のバウンディングボックス(前記k
2は1以上の整数である)に対応される第2_k
2のクラシフィケーションコンフィデンス、第2_k
2のリグレッションアンサーティンティ及び第2_k
2のプールドフィーチャーマップを含む第2のステートセット(state set)を生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクター(transition vector)としてメモリに格納したり格納するように支援する段階;及び
(c)前記学習装置が、前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援する段階;
を含む方法。
【請求項2】
前記(a)段階において、
前記学習装置は、前記ディープQ‐ネットワークをもって、(i)前記第1_1のバウンディングボックスに対応される前記第1_1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティ、前記第1_1のプールドフィーチャーマップないし前記第1_k
1のバウンディングボックスに対応される前記第1_k
1のクラシフィケーションコンフィデンス、前記第1_k
1のリグレッションアンサーティンティ及び前記第1_k
1のプールドフィーチャーマップのそれぞれに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1_1のバウンディングボックスに対応される第1のインターミディエートアクセプタンススコア(intermediate acceptance score)及び第1のインターミディエートリジェクションスコア(intermediate rejection score)ないし前記第1_k
1のバウンディングボックスに対応される第k
1のインターミディエートアクセプタンススコア及び第k
1のインターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1のインターミディエートアクセプタンススコアないし前記第k
1のインターミディエートアクセプタンススコアを平均演算して前記アクセプタンススコアを生成するようにし、前記第1のインターミディエートリジェクションスコアないし前記第k
1のインターミディエートリジェクションスコアを平均演算して前記リジェクションスコアを生成させることで前記アクセプタンススコアと前記リジェクションスコアとを含む前記Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする請求項1に記載の方法。
【請求項3】
前記学習装置は、前記ディープQ‐ネットワークをもって、前記第1_1のプールドフィーチャーマップないし前記第1_k
1のプールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1のフィーチャー値(feature value)ないし第k
1のフィーチャー値を生成し、前記第1_1のクラシフィケーションコンフィデンスないし前記第1_k
1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティないし前記第1_k
1のリグレッションアンサーティンティ及び前記第1のフィーチャー値ないし前記第k
1のフィーチャー値に少なくとも一つの前記FC演算を適用して前記第1のインターミディエートアクセプタンススコアないし前記第k
1のインターミディエートアクセプタンススコア及び前記第1のインターミディエートリジェクションスコアないし前記第k
1のインターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする請求項2に記載の方法。
【請求項4】
前記(a)段階、前記(b)段階及び前記(c)段階は反復的に遂行されて複数の前記トランジションベクターを生成し、
毎イテレーションの前記(c)段階において、
前記学習装置は、前記メモリの前記トランジションベクターの蓄積量に比例して前記学習用トランジションベクターとして使われるa×n個や2
n個(ここで、aとnは1以上の整数であり、nは既設定されたイテレーション数ごとに1ずつ増加する)の前記特定トランジションベクターをランダムに選択して少なくとも一つの前記ミニバッチを生成して、前記各ミニバッチを利用して前記ディープQ‐ネットワークを学習させたり学習させるように支援することを特徴とする請求項1に記載の方法。
【請求項5】
前記(a)段階、前記(b)段階及び前記(c)段階は反復的に遂行されて複数の前記トランジションベクターを生成し、
前記メモリはリプレイメモリ(replay memory)を含み、
毎イテレーションの前記(c)段階において、
前記学習装置は、(i)前記トランジションベクターを前記リプレイメモリに伝送して前記リプレイメモリをもってサイクリックバッファ(cyclic buffer)の既設定された容量によって前記トランジションベクターを最も古い以前のトランジションベクターにオーバライト(overwrite)して格納させたり格納するように支援し、(ii)前記リプレイメモリから前記学習用トランジションベクターとして使われる前記特定トランジションベクターをランダムにサンプリングして前記ミニバッチを生成したり生成するように支援することを特徴とする請求項1に記載の方法。
【請求項6】
前記(a)段階において、
前記学習装置は、前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記第1のラベルなしのイメージを少なくとも一回コンボリューション演算して前記第1のラベルなしのイメージに対応される第1のフィーチャーマップ(feature map)を生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記第1のフィーチャーマップを参照して前記第1のラベルなしのイメージ上で前記第1の客体ないし前記第k
1の客体があると予測される候補領域に対するROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記第1のフィーチャーマップ上で前記ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記ROIのそれぞれに対応されるプールドフィーチャーマップをそれぞれ生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記プールドフィーチャーマップをFC演算して前記ROIのそれぞれに対応するリグレッション情報(regression information)とクラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記ROIのそれぞれに対応する前記リグレッション情報と前記クラシフィケーション情報とを参照して前記第1のラベルなしのイメージ上に位置する前記第1の客体ないし前記第k
1の客体のそれぞれに対応する前記第1_1のバウンディングボックスないし前記第1_k
1のバウンディングボックスと、前記第1_1のクラシフィケーション情報ないし前記第1_k
1のクラシフィケーション情報とを生成させたり生成するように支援することを特徴とする請求項1に記載の方法。
【請求項7】
ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する方法において、
(a)客体探知のためのディテクションネットワークが学習データベースに格納された学習データで学習された状態で、学習装置によって、(I)ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k
1の客体に対する第1_k
1のバウンディングボックス(前記k
1は1以上の整数である)に対応される第1_k
1のクラシフィケーションコンフィデンス、第1_k
1のリグレッションアンサーティンティ及び第1_k
1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援し、(II)(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度をリワード(reward)として生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度を前記リワードとして生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k
2の客体に対する第2_k
2のバウンディングボックス(前記k
2は1以上の整数である)に対応される第2_k
2のクラシフィケーションコンフィデンス、第2_k
2のリグレッションアンサーティンティ及び第2_k
2のプールドフィーチャーマップを含む第2のステートセットを生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクターとしてメモリに格納したり格納するように支援し、(III)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援した状態で、自己学習装置が、新規ラベルなしのデータベースから選択された少なくとも一つの新規ラベルなしのイメージが獲得されると、(i)前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記新規ラベルなしのイメージに対するオブジェクトディテクションを遂行して新規オブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記新規オブジェクトディテクション情報を参照して前記新規ラベルなしのイメージ上に含まれた第1の客体に対する第1の新規バウンディングボックスに対応される第1の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし前記新規ラベルなしのイメージ上に含まれた第k
3の客体に対する第k
3の新規バウンディングボックス(前記k
3は1以上の整数である)に対応される第k
3の新規クラシフィケーションコンフィデンス、第k
3の新規リグレッションアンサーティンティ及び第k
3の新規プールドフィーチャーマップを含む新規ステートセットを生成したり生成するように支援し、(iii)前記新規ステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記新規ステートセットをラーニング演算して前記新規ラベルなしのイメージに対応される新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成させたり生成するように支援し、(iv)前記新規Q値(Q‐Value)にargMax関数を適用して新規アクションを生成したり生成するように支援する段階;及び
(b)前記自己学習装置が、前記新規アクションを参照して(i)前記新規アクションが前記新規ラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記新規オブジェクトディテクション情報を前記新規ラベルなしのイメージにラベルとして追加した新規ラベル付きのイメージを前記学習データとして前記学習データベースに追加させ、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させたり再学習させるように支援し、(ii)前記新規アクションが前記新規ラベルなしのイメージのリジェクション(rejection)に対応される場合、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除する段階;
を含む方法。
【請求項8】
前記(a)段階において、
前記自己学習装置は、前記ディープQ‐ネットワークをもって、(i)前記第1の新規バウンディングボックスに対応される前記第1の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティ及び前記第1の新規プールドフィーチャーマップないし前記第1の新規バウンディングボックスに対応される前記第k
3の新規クラシフィケーションコンフィデンス、前記第k
3の新規リグレッションアンサーティンティ及び前記第k
3の新規プールドフィーチャーマップに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1の新規バウンディングボックスに対応される第1の新規インターミディエートアクセプタンススコア(intermediate acceptance score)及び第1の新規インターミディエートリジェクションスコア(intermediate rejection score)ないし前記第k
3の新規バウンディングボックスに対応される第k
3の新規インターミディエートアクセプタンススコア及び第k
3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1の新規インターミディエートアクセプタンススコアないし前記第k
3の新規インターミディエートアクセプタンススコアを平均演算して前記新規アクセプタンススコアを生成するようにし、前記第1の新規インターミディエートリジェクションスコアないし前記第k
3の新規インターミディエートリジェクションスコアを平均演算して前記新規リジェクションスコアを生成させることで前記新規アクセプタンススコアと前記新規リジェクションスコアとを含む前記新規Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする請求項7に記載の方法。
【請求項9】
前記自己学習装置は、前記ディープQ‐ネットワークをもって、前記第1の新規プールドフィーチャーマップないし前記第k
3の新規プールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1の新規フィーチャー値(feature value)ないし第k
3の新規フィーチャー値を生成し、前記第1の新規クラシフィケーションコンフィデンスないし前記第k
3の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティないし前記第k
3の新規リグレッションアンサーティンティ及び前記第1の新規フィーチャー値ないし前記第k
3の新規フィーチャー値に少なくとも一つの前記FC演算を適用して前記第1の新規インターミディエートアクセプタンススコアないし前記第k
3の新規インターミディエートアクセプタンススコア及び前記第1の新規インターミディエートリジェクションスコアないし前記第k
3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする請求項8に記載の方法。
【請求項10】
前記(a)段階において、
前記自己学習装置は、前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記新規ラベルなしのイメージを少なくとも一回コンボリューション演算して前記新規ラベルなしのイメージに対応される新規フィーチャーマップを生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記新規フィーチャーマップを参照して前記新規ラベルなしのイメージ上で前記第1の客体ないし前記第k
3の客体があると予測される候補領域に対する新規ROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記新規フィーチャーマップ上で前記新規ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記新規ROIのそれぞれに対応される新規プールドフィーチャーマップを生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記新規プールドフィーチャーマップをFC演算して前記新規ROIのそれぞれに対応する新規リグレッション情報(regression information)と新規クラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記新規ROIのそれぞれに対応する前記新規リグレッション情報と前記新規クラシフィケーション情報とを参照して前記新規ラベルなしのイメージ上に位置する前記第1の客体ないし前記第k
3の客体のそれぞれに対応する前記第1の新規バウンディングボックスないし前記第k
3の新規バウンディングボックスと、第1の新規クラシフィケーション情報ないし第k
3の新規クラシフィケーション情報とを生成させたり生成するように支援することを特徴とする請求項7に記載の方法。
【請求項11】
ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する学習装置であって、
インストラクションを格納する少なくとも一つのメモリ;及び
前記インストラクションを実行するために構成された少なくとも一つのプロセッサ;を含み、
前記プロセッサが、(I)客体探知のためのディテクションネットワークが学習データベースに格納された学習データを利用して学習された状態で、ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k
1の客体に第1_k
1のバウンディングボックス(前記k
1は1以上の整数である)に対応される第1_k
1のクラシフィケーションコンフィデンス、第1_k
1のリグレッションアンサーティンティ及び第1_k
1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援するプロセス、(II)(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度(accuracy)を参照してリワードを生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度(accuracy)を参照して前記リワードを生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k
2の客体に対する第2_k
2のバウンディングボックス(前記k
2は1以上の整数である)に対応される第2_k
2のクラシフィケーションコンフィデンス、第2_k
2のリグレッションアンサーティンティ及び第2_k
2のプールドフィーチャーマップを含む第2のステートセット(state set)を生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクター(transition vector)としてメモリに格納したり格納するように支援するプロセス、及び(III)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援するプロセスを遂行する学習装置。
【請求項12】
前記(I)プロセスにおいて、
前記プロセッサは、前記ディープQ‐ネットワークをもって、(i)前記第1_1のバウンディングボックスに対応される前記第1_1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティ、前記第1_1のプールドフィーチャーマップないし前記第1_k
1のバウンディングボックスに対応される前記第1_k
1のクラシフィケーションコンフィデンス、前記第1_k
1のリグレッションアンサーティンティ及び前記第1_k
1のプールドフィーチャーマップのそれぞれに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1_1のバウンディングボックスに対応される第1のインターミディエートアクセプタンススコア(intermediate acceptance score)及び第1のインターミディエートリジェクションスコア(intermediate rejection score)ないし前記第1_k
1のバウンディングボックスに対応される第k
1のインターミディエートアクセプタンススコア及び第k
1のインターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1のインターミディエートアクセプタンススコアないし前記第k
1のインターミディエートアクセプタンススコアを平均演算して前記アクセプタンススコアを生成するようにし、前記第1のインターミディエートリジェクションスコアないし前記第k
1のインターミディエートリジェクションスコアを平均演算して前記リジェクションスコアを生成させることで前記アクセプタンススコアと前記リジェクションスコアとを含む前記Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする請求項11に記載の学習装置。
【請求項13】
前記プロセッサは、前記ディープQ‐ネットワークをもって、前記第1_1のプールドフィーチャーマップないし前記第1_k
1のプールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1のフィーチャー値(feature value)ないし第k
1のフィーチャー値を生成し、前記第1_1のクラシフィケーションコンフィデンスないし前記第1_k
1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティないし前記第1_k
1のリグレッションアンサーティンティ及び前記第1のフィーチャー値ないし前記第k
1のフィーチャー値に少なくとも一つの前記FC演算を適用して前記第1のインターミディエートアクセプタンススコアないし前記第k
1のインターミディエートアクセプタンススコア及び前記第1のインターミディエートリジェクションスコアないし前記第k
1のインターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする請求項12に記載の学習装置。
【請求項14】
前記(I)プロセス、前記(II)プロセス及び前記(III)プロセスは反復的に遂行されて複数の前記トランジションベクターを生成し、
毎イテレーションの前記(III)プロセスにおいて、
前記プロセッサは、前記メモリの前記トランジションベクターの蓄積量に比例して前記学習用トランジションベクターとして使われるa×n個や2
n個(ここで、aとnは1以上の整数であり、nは既設定されたイテレーション数ごとに1ずつ増加する)の前記特定トランジションベクターをランダムに選択して少なくとも一つの前記ミニバッチを生成して、前記各ミニバッチを利用して前記ディープQ‐ネットワークを学習させたり学習させるように支援することを特徴とする請求項11に記載の学習装置。
【請求項15】
前記(I)プロセス、前記(II)プロセス及び前記(III)プロセスは反復的に遂行されて複数の前記トランジションベクターを生成し、
前記メモリはリプレイメモリ(replay memory)を含み、
毎イテレーションの前記(III)プロセスにおいて、
前記プロセッサは、(i)前記トランジションベクターを前記リプレイメモリに伝送して前記リプレイメモリをもってサイクリックバッファ(cyclic buffer)の既設定された容量によって前記トランジションベクターを最も古い以前のトランジションベクターにオーバライト(overwrite)して格納させたり格納するように支援し、(ii)前記リプレイメモリから前記学習用トランジションベクターとして使われる前記特定トランジションベクターをランダムにサンプリングして前記ミニバッチを生成したり生成するように支援することを特徴とする請求項11に記載の学習装置。
【請求項16】
前記(I)プロセスにおいて、
前記プロセッサは、前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記第1のラベルなしのイメージを少なくとも一回コンボリューション演算して前記第1のラベルなしのイメージに対応される第1のフィーチャーマップ(feature map)を生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記第1のフィーチャーマップを参照して前記第1のラベルなしのイメージ上で前記第1の客体ないし前記第k
1の客体があると予測される候補領域に対するROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記第1のフィーチャーマップ上で前記ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記ROIのそれぞれに対応されるプールドフィーチャーマップをそれぞれ生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記プールドフィーチャーマップをFC演算して前記ROIのそれぞれに対応するリグレッション情報(regression information)とクラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記ROIのそれぞれに対応する前記リグレッション情報と前記クラシフィケーション情報とを参照して前記第1のラベルなしのイメージ上に位置する前記第1の客体ないし前記第k
1の客体のそれぞれに対応する前記第1_1のバウンディングボックスないし前記第1_k
1のバウンディングボックスと、前記第1_1のクラシフィケーション情報ないし前記第1_k
1のクラシフィケーション情報とを生成させたり生成するように支援することを特徴とする請求項11に記載の学習装置。
【請求項17】
ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する自己学習装置であって、
インストラクションを格納する少なくとも一つのメモリ;及び
前記インストラクションを実行するために構成された少なくとも一つのプロセッサ;を含み、
前記プロセッサが、学習装置によって、(I)客体探知のためのディテクションネットワークが学習データベースに格納された学習データで学習された状態で、(i)ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i‐1)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(i‐2)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k
1の客体に対する第1_k
1のバウンディングボックス(前記k
1は1以上の整数である)に対応される第1_k
1のクラシフィケーションコンフィデンス、第1_k
1のリグレッションアンサーティンティ及び第1_k
1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(i‐3)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(i‐4)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援し、(ii)(ii‐1)前記アクションを参照して(1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度をリワード(reward)として生成したり生成するように支援し、(2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度を前記リワードとして生成したり生成するように支援し、(ii‐2)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k
2の客体に対する第2_k
2のバウンディングボックス(前記k
2は1以上の整数である)に対応される第2_k
2のクラシフィケーションコンフィデンス、第2_k
2のリグレッションアンサーティンティ及び第2_k
2のプールドフィーチャーマップを含む第2のステートセットを生成したり生成するように支援し、(3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクターとしてメモリに格納したり格納するように支援し、(iii)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援した状態で、新規ラベルなしのデータベースから選択された少なくとも一つの新規ラベルなしのイメージが獲得されると、(i)前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記新規ラベルなしのイメージに対するオブジェクトディテクションを遂行して新規オブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記新規オブジェクトディテクション情報を参照して前記新規ラベルなしのイメージ上に含まれた第1の客体に対する第1の新規バウンディングボックスに対応される第1の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし前記新規ラベルなしのイメージ上に含まれた第k
3の客体に対する第k
3の新規バウンディングボックス(前記k
3は1以上の整数である)に対応される第k
3の新規クラシフィケーションコンフィデンス、第k
3の新規リグレッションアンサーティンティ及び第k
3の新規プールドフィーチャーマップを含む新規ステートセットを生成したり生成するように支援し、(iii)前記新規ステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記新規ステートセットをラーニング演算して前記新規ラベルなしのイメージに対応される新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成させたり生成するように支援し、(iv)前記新規Q値(Q‐Value)にargMax関数を適用して新規アクションを生成したり生成するように支援するプロセス、及び(II)前記新規アクションを参照して(i)前記新規アクションが前記新規ラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記新規オブジェクトディテクション情報を前記新規ラベルなしのイメージにラベルとして追加した新規ラベル付きのイメージを前記学習データとして前記学習データベースに追加させ、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させたり再学習させるように支援し、(ii)前記新規アクションが前記新規ラベルなしのイメージのリジェクション(rejection)に対応される場合、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除するプロセスを遂行する自己学習装置。
【請求項18】
前記(I)プロセスにおいて、
前記プロセッサは、前記ディープQ‐ネットワークをもって、(i)前記第1の新規バウンディングボックスに対応される前記第1の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティ及び前記第1の新規プールドフィーチャーマップないし前記第1の新規バウンディングボックスに対応される前記第k
3の新規クラシフィケーションコンフィデンス、前記第k
3の新規リグレッションアンサーティンティ及び前記第k
3の新規プールドフィーチャーマップに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1の新規バウンディングボックスに対応される第1の新規インターミディエートアクセプタンススコア(intermediate acceptance score)及び第1の新規インターミディエートリジェクションスコア(intermediate rejection score)ないし前記第k
3の新規バウンディングボックスに対応される第k
3の新規インターミディエートアクセプタンススコア及び第k
3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1の新規インターミディエートアクセプタンススコアないし前記第k
3の新規インターミディエートアクセプタンススコアを平均演算して前記新規アクセプタンススコアを生成するようにし、前記第1の新規インターミディエートリジェクションスコアないし前記第k
3の新規インターミディエートリジェクションスコアを平均演算して前記新規リジェクションスコアを生成させることで前記新規アクセプタンススコアと前記新規リジェクションスコアとを含む前記新規Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする請求項17に記載の自己学習装置。
【請求項19】
前記プロセッサは、前記ディープQ‐ネットワークをもって、前記第1の新規プールドフィーチャーマップないし前記第k
3の新規プールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1の新規フィーチャー値(feature value)ないし第k
3の新規フィーチャー値を生成し、前記第1の新規クラシフィケーションコンフィデンスないし前記第k
3の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティないし前記第k
3の新規リグレッションアンサーティンティ及び前記第1の新規フィーチャー値ないし前記第k
3の新規フィーチャー値に少なくとも一つの前記FC演算を適用して前記第1の新規インターミディエートアクセプタンススコアないし前記第k
3の新規インターミディエートアクセプタンススコア及び前記第1の新規インターミディエートリジェクションスコアないし前記第k
3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする請求項18に記載の自己学習装置。
【請求項20】
前記(I)プロセスにおいて、
前記プロセッサは、前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記新規ラベルなしのイメージを少なくとも一回コンボリューション演算して前記新規ラベルなしのイメージに対応される新規フィーチャーマップを生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記新規フィーチャーマップを参照して前記新規ラベルなしのイメージ上で前記第1の客体ないし前記第k
3の客体があると予測される候補領域に対する新規ROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記新規フィーチャーマップ上で前記新規ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記新規ROIのそれぞれに対応される新規プールドフィーチャーマップを生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記新規プールドフィーチャーマップをFC演算して前記新規ROIのそれぞれに対応する新規リグレッション情報(regression information)と新規クラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記新規ROIのそれぞれに対応する前記新規リグレッション情報と前記新規クラシフィケーション情報とを参照して前記新規ラベルなしのイメージ上に位置する前記第1の客体ないし前記第k
3の客体のそれぞれに対応する前記第1の新規バウンディングボックスないし前記第k
3の新規バウンディングボックスと、第1の新規クラシフィケーション情報ないし第k
3の新規クラシフィケーション情報とを生成させたり生成するように支援することを特徴とする請求項17に記載の自己学習装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は2021年3月26日付にて出願された米国特許出願第17/213,853号に対して優先権を主張し、これは本願に参照として組み込まれる。
【0002】
本発明はディープQ‐ネットワークを利用してディープラーニング基盤のディテクションネットワーク(detection network)に対する自己教師あり学習(self‐supervised learning)を遂行する方法及びこれを利用した学習装置に係り、より詳細には、ディテクションネットワークにおけるオブジェクトディテクション結果を利用してディープQ‐ネットワークが学習に有用なものとして選択した学習データを利用してディテクションネットワークを自己教師あり学習させる方法及びこれを利用した学習装置に関する。
【背景技術】
【0003】
イメージ上の客体に対する位置とクラスを認識するためのオブジェクトディテクションを遂行するディテクションネットワークを効果的に学習させるためには多くの学習データが要求される。
【0004】
従来には、イメージ上の客体に対する正解データである原本正解(ground truth)をラベリングした学習データを利用した学習を通じてディテクションネットワークのイメージ分析に対する正確度を高める教師あり学習(supervised learning)技法がよく使用された。しかし、教師あり学習(supervised learning)では高い性能を達成するためには膨大な量の学習データが要求され、ラベリングされた学習データが必要であるため、人間が直接ラベリング作業を遂行しなければならないので、与えられたタスクが複雑であるほどラベリング作業に時間と費用が多く所要されるので、これを克服できる学習技法が開発されている成り行きである。
【0005】
その例として、教師なし学習(unsupervised learning)の場合、ラベリングされた学習データを使用する代わり、群集化(clustering)や密度推定(density estimation)などの方法を利用してデータをグルーピングしたりデータの間のパターンを把握する方法でディテクションネットワークを学習させる。しかし、ラベリングされたデータが提供されないため群集化に対する結果を評価しがたく、群集化やパターンを定義して実際データに適用するには限界があるという問題点がある。
【0006】
また、他の代案として半教師あり学習(semi‐supervised learning)や自己教師あり学習(self‐supervised learning)のような方法も研究される。半教師あり学習や自己教師あり学習の場合、最小限のラベリングされた学習データと多くの量のラベリングされていない学習データとを利用してディテクションネットワークに対する学習を進行させる。
【0007】
具体的に、半教師あり学習や自己教師あり学習は、ラベリングされた学習データを利用してディテクションネットワークに対する初期学習を進めた後、さらに獲得した学習データを利用してディテクションネットワークをもって与えられたタスク(task)を遂行してラベリングデータを生成させ、このように自ら生成したラベリングデータを持つ追加学習データと初期学習の際に与えられたラベリングされた学習データとを利用してディテクションネットワークに対する学習を引き続き進める。
【0008】
ただし、半教師あり学習や自己教師あり学習を遂行するにあたり、ディテクションネットワークの学習に使われる自己生成データの選択は主にモデルコンフィデンス(model confidence)などを利用したヒューリスティクス(heuristic)な接近を利用して選択するが、このようなモデルコンフィデンスなどの選択基準の正確度を判断しにくいだけでなく、このような選択基準を持続的に調整するには多くの時間と費用が要される。
【0009】
したがって、前記問題点を解決するための改善方案が要求される実情である。
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明は上述した問題点を全て解決することをその目的とする。
【0011】
また、本発明はディープQ‐ネットワーク(deep Q‐network)が生成したQ値(Q‐value)を利用してディテクションネットワーク(detection network)の正確度を増加させることができる最適の学習データを効果的に選択することを目的とする。
【0012】
また、本発明はディテクションネットワークにつながったディープQ‐ネットワークに対してディテクションネットワークの正確度をリワード(reward)として利用した強化学習(reinforcement learning)を遂行してディープQ‐ネットワークがディテクションネットワークの正確度を増加させることができる最適の学習データを選択するQ値(Q‐value)を生成させることをまた他の目的とする。
【0013】
また、本発明はディープQ‐ネットワークが生成するQ値(Q‐value)に基づいて選択された学習データを利用してディテクションネットワークに対する自己教師あり学習(self‐supervised learning)を可能にすることをまた他の目的とする。
【課題を解決するための手段】
【0014】
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための本発明の特徴的な構成は下記のとおりである。
【0015】
本発明の一態様によると、ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する方法において、(a)客体探知のためのディテクションネットワークが学習データベースに格納された学習データを利用して学習された状態で、ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、学習装置が、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k1の客体に第1_k1のバウンディングボックス(前記k1は1以上の整数である)に対応される第1_k1のクラシフィケーションコンフィデンス、第1_k1のリグレッションアンサーティンティ及び第1_k1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワーク(deep Q‐network)をもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援する段階;(b)前記学習装置が、(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度(accuracy)を参照してリワードを生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度(accuracy)を参照して前記リワードを生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k2の客体に対する第2_k2のバウンディングボックス(前記k2は1以上の整数である)に対応される第2_k2のクラシフィケーションコンフィデンス、第2_k2のリグレッションアンサーティンティ及び第2_k2のプールドフィーチャーマップを含む第2のステートセット(state set)を生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクター(transition vector)としてメモリに格納したり格納するように支援する段階;及び(c)前記学習装置が、前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援する段階;を含む方法が開示される。
【0016】
一例として、前記(a)段階において、前記学習装置は、前記ディープQ‐ネットワークをもって、(i)前記第1_1のバウンディングボックスに対応される前記第1_1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティ、前記第1_1のプールドフィーチャーマップないし前記第1_k1のバウンディングボックスに対応される前記第1_k1のクラシフィケーションコンフィデンス、前記第1_k1のリグレッションアンサーティンティ及び前記第1_k1のプールドフィーチャーマップのそれぞれに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1_1のバウンディングボックスに対応される第1のインターミディエートアクセプタンススコア(intermediate acceptance score)及び第1のインターミディエートリジェクションスコア(intermediate rejection score)ないし前記第1_k1のバウンディングボックスに対応される第k1のインターミディエートアクセプタンススコア及び第k1のインターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1のインターミディエートアクセプタンススコアないし前記第k1のインターミディエートアクセプタンススコアを平均演算して前記アクセプタンススコアを生成するようにし、前記第1のインターミディエートリジェクションスコアないし前記第k1のインターミディエートリジェクションスコアを平均演算して前記リジェクションスコアを生成させることで前記アクセプタンススコアと前記リジェクションスコアとを含む前記Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする方法が開示される。
【0017】
一例として、前記学習装置は、前記ディープQ‐ネットワークをもって、前記第1_1のプールドフィーチャーマップないし前記第1_k1のプールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1のフィーチャー値(feature value)ないし第k1のフィーチャー値を生成し、前記第1_1のクラシフィケーションコンフィデンスないし前記第1_k1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティないし前記第1_k1のリグレッションアンサーティンティ及び前記第1のフィーチャー値ないし前記第k1のフィーチャー値に少なくとも一つの前記FC演算を適用して前記第1のインターミディエートアクセプタンススコアないし前記第k1のインターミディエートアクセプタンススコア及び前記第1のインターミディエートリジェクションスコアないし前記第k1のインターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする方法が開示される。
【0018】
一例として、前記(a)段階、前記(b)段階及び前記(c)段階は反復的に遂行されて複数の前記トランジションベクターを生成し、毎イテレーションの前記(c)段階において、前記学習装置は、前記メモリの前記トランジションベクターの蓄積量に比例して前記学習用トランジションベクターとして使われるa×n個や2n個(ここで、aとnは1以上の整数であり、nは既設定されたイテレーション数ごとに1ずつ増加する)の前記特定トランジションベクターをランダムに選択して少なくとも一つの前記ミニバッチを生成して、前記各ミニバッチを利用して前記ディープQ‐ネットワークを学習させたり学習させるように支援することを特徴とする方法が開示される。
【0019】
一例として、前記(a)段階、前記(b)段階及び前記(c)段階は反復的に遂行されて複数の前記トランジションベクターを生成し、前記メモリはリプレイメモリ(replay memory)を含み、毎イテレーションの前記(c)段階において、前記学習装置は、(i)前記トランジションベクターを前記リプレイメモリに伝送して前記リプレイメモリをもってサイクリックバッファ(cyclic buffer)の既設定された容量によって前記トランジションベクターを最も古い以前のトランジションベクターにオーバライト(overwrite)して格納させたり格納するように支援し、(ii)前記リプレイメモリから前記学習用トランジションベクターとして使われる前記特定トランジションベクターをランダムにサンプリングして前記ミニバッチを生成したり生成するように支援することを特徴とする方法が開示される。
【0020】
一例として、前記(a)段階において、前記学習装置は、前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記第1のラベルなしのイメージを少なくとも一回コンボリューション演算して前記第1のラベルなしのイメージに対応される第1のフィーチャーマップ(feature map)を生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記第1のフィーチャーマップを参照して前記第1のラベルなしのイメージ上で前記第1の客体ないし前記第k1の客体があると予測される候補領域に対するROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記第1のフィーチャーマップ上で前記ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記ROIのそれぞれに対応されるプールドフィーチャーマップをそれぞれ生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記プールドフィーチャーマップをFC演算して前記ROIのそれぞれに対応するリグレッション情報(regression information)とクラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記ROIのそれぞれに対応する前記リグレッション情報と前記クラシフィケーション情報とを参照して前記第1のラベルなしのイメージ上に位置する前記第1の客体ないし前記第k1の客体のそれぞれに対応する前記第1_1のバウンディングボックスないし前記第1_k1のバウンディングボックスと、前記第1_1のクラシフィケーション情報ないし前記第1_k1のクラシフィケーション情報とを生成させたり生成するように支援することを特徴とする方法が開示される。
【0021】
本発明の他の態様によると、ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する方法において、(a)客体探知のためのディテクションネットワークが学習データベースに格納された学習データで学習された状態で、学習装置によって、(I)ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k1の客体に対する第1_k1のバウンディングボックス(前記k1は1以上の整数である)に対応される第1_k1のクラシフィケーションコンフィデンス、第1_k1のリグレッションアンサーティンティ及び第1_k1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援し、(II)(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度をリワード(reward)として生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度を前記リワードとして生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k2の客体に対する第2_k2のバウンディングボックス(前記k2は1以上の整数である)に対応される第2_k2のクラシフィケーションコンフィデンス、第2_k2のリグレッションアンサーティンティ及び第2_k2のプールドフィーチャーマップを含む第2のステートセットを生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクターとしてメモリに格納したり格納するように支援し、(III)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援した状態で、自己学習装置が、新規ラベルなしのデータベースから選択された少なくとも一つの新規ラベルなしのイメージが獲得されると、(i)前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記新規ラベルなしのイメージに対するオブジェクトディテクションを遂行して新規オブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記新規オブジェクトディテクション情報を参照して前記新規ラベルなしのイメージ上に含まれた第1の客体に対する第1の新規バウンディングボックスに対応される第1の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし前記新規ラベルなしのイメージ上に含まれた第k3の客体に対する第k3の新規バウンディングボックス(前記k3は1以上の整数である)に対応される第k3の新規クラシフィケーションコンフィデンス、第k3の新規リグレッションアンサーティンティ及び第k3の新規プールドフィーチャーマップを含む新規ステートセットを生成したり生成するように支援し、(iii)前記新規ステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記新規ステートセットをラーニング演算して前記新規ラベルなしのイメージに対応される新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成させたり生成するように支援し、(iv)前記新規Q値(Q‐Value)にargMax関数を適用して新規アクションを生成したり生成するように支援する段階;及び
(b)前記自己学習装置が、前記新規アクションを参照して(i)前記新規アクションが前記新規ラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記新規オブジェクトディテクション情報を前記新規ラベルなしのイメージにラベルとして追加した新規ラベル付きのイメージを前記学習データとして前記学習データベースに追加させ、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させたり再学習させるように支援し、(ii)前記新規アクションが前記新規ラベルなしのイメージのリジェクション(rejection)に対応される場合、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除する段階;を含む方法が開示される。
【0022】
一例として、前記(a)段階において、前記自己学習装置は、前記ディープQ‐ネットワークをもって、(i)前記第1の新規バウンディングボックスに対応される前記第1の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティ及び前記第1の新規プールドフィーチャーマップないし前記第1の新規バウンディングボックスに対応される前記第k3の新規クラシフィケーションコンフィデンス、前記第k3の新規リグレッションアンサーティンティ及び前記第k3の新規プールドフィーチャーマップに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1の新規バウンディングボックスに対応される第1の新規インターミディエートアクセプタンススコア(intermediate acceptance score)及び第1の新規インターミディエートリジェクションスコア(intermediate rejection score)ないし前記第k3の新規バウンディングボックスに対応される第k3の新規インターミディエートアクセプタンススコア及び第k3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1の新規インターミディエートアクセプタンススコアないし前記第k3の新規インターミディエートアクセプタンススコアを平均演算して前記新規アクセプタンススコアを生成するようにし、前記第1の新規インターミディエートリジェクションスコアないし前記第k3の新規インターミディエートリジェクションスコアを平均演算して前記新規リジェクションスコアを生成させることで前記新規アクセプタンススコアと前記新規リジェクションスコアとを含む前記新規Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする方法が開示される。
【0023】
一例として、前記自己学習装置は、前記ディープQ‐ネットワークをもって、前記第1の新規プールドフィーチャーマップないし前記第k3の新規プールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1の新規フィーチャー値(feature value)ないし第k3の新規フィーチャー値を生成し、前記第1の新規クラシフィケーションコンフィデンスないし前記第k3の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティないし前記第k3の新規リグレッションアンサーティンティ及び前記第1の新規フィーチャー値ないし前記第k3の新規フィーチャー値に少なくとも一つの前記FC演算を適用して前記第1の新規インターミディエートアクセプタンススコアないし前記第k3の新規インターミディエートアクセプタンススコア及び前記第1の新規インターミディエートリジェクションスコアないし前記第k3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする方法が開示される。
【0024】
一例として、前記(a)段階において、前記自己学習装置は、前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記新規ラベルなしのイメージを少なくとも一回コンボリューション演算して前記新規ラベルなしのイメージに対応される新規フィーチャーマップを生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記新規フィーチャーマップを参照して前記新規ラベルなしのイメージ上で前記第1の客体ないし前記第k3の客体があると予測される候補領域に対する新規ROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記新規フィーチャーマップ上で前記新規ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記新規ROIのそれぞれに対応される新規プールドフィーチャーマップを生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記新規プールドフィーチャーマップをFC演算して前記新規ROIのそれぞれに対応する新規リグレッション情報(regression information)と新規クラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記新規ROIのそれぞれに対応する前記新規リグレッション情報と前記新規クラシフィケーション情報とを参照して前記新規ラベルなしのイメージ上に位置する前記第1の客体ないし前記第k3の客体のそれぞれに対応する前記第1の新規バウンディングボックスないし前記第k3の新規バウンディングボックスと、第1の新規クラシフィケーション情報ないし第k3の新規クラシフィケーション情報とを生成させたり生成するように支援することを特徴とする方法が開示される。
【0025】
本発明のまた他の態様によると、ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する学習装置であって、インストラクションを格納する少なくとも一つのメモリ;及び前記インストラクションを実行するために構成された少なくとも一つのプロセッサ;を含み、前記プロセッサが、(I)客体探知のためのディテクションネットワークが学習データベースに格納された学習データを利用して学習された状態で、ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k1の客体に第1_k1のバウンディングボックス(前記k1は1以上の整数である)に対応される第1_k1のクラシフィケーションコンフィデンス、第1_k1のリグレッションアンサーティンティ及び第1_k1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(iii)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(iv)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援するプロセス、(II)(i)前記アクションを参照して(i‐1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度(accuracy)を参照してリワードを生成したり生成するように支援し、(i‐2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度(accuracy)を参照して前記リワードを生成したり生成するように支援し、(ii)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(ii‐1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(ii‐2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k2の客体に対する第2_k2のバウンディングボックス(前記k2は1以上の整数である)に対応される第2_k2のクラシフィケーションコンフィデンス、第2_k2のリグレッションアンサーティンティ及び第2_k2のプールドフィーチャーマップを含む第2のステートセット(state set)を生成したり生成するように支援し、(ii‐3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクター(transition vector)としてメモリに格納したり格納するように支援するプロセス、及び(III)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援するプロセスを遂行する学習装置が開示される。
【0026】
一例として、前記(I)プロセスにおいて、前記プロセッサは、前記ディープQ‐ネットワークをもって、(i)前記第1_1のバウンディングボックスに対応される前記第1_1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティ、前記第1_1のプールドフィーチャーマップないし前記第1_k1のバウンディングボックスに対応される前記第1_k1のクラシフィケーションコンフィデンス、前記第1_k1のリグレッションアンサーティンティ及び前記第1_k1のプールドフィーチャーマップのそれぞれに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1_1のバウンディングボックスに対応される第1のインターミディエートアクセプタンススコア(intermediate acceptance score)及び第1のインターミディエートリジェクションスコア(intermediate rejection score)ないし前記第1_k1のバウンディングボックスに対応される第k1のインターミディエートアクセプタンススコア及び第k1のインターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1のインターミディエートアクセプタンススコアないし前記第k1のインターミディエートアクセプタンススコアを平均演算して前記アクセプタンススコアを生成するようにし、前記第1のインターミディエートリジェクションスコアないし前記第k1のインターミディエートリジェクションスコアを平均演算して前記リジェクションスコアを生成させることで前記アクセプタンススコアと前記リジェクションスコアとを含む前記Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする学習装置が開示される。
【0027】
一例として、前記プロセッサは、前記ディープQ‐ネットワークをもって、前記第1_1のプールドフィーチャーマップないし前記第1_k1のプールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1のフィーチャー値(feature value)ないし第k1のフィーチャー値を生成し、前記第1_1のクラシフィケーションコンフィデンスないし前記第1_k1のクラシフィケーションコンフィデンス、前記第1_1のリグレッションアンサーティンティないし前記第1_k1のリグレッションアンサーティンティ及び前記第1のフィーチャー値ないし前記第k1のフィーチャー値に少なくとも一つの前記FC演算を適用して前記第1のインターミディエートアクセプタンススコアないし前記第k1のインターミディエートアクセプタンススコア及び前記第1のインターミディエートリジェクションスコアないし前記第k1のインターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする学習装置が開示される。
【0028】
一例として、前記(I)プロセス、前記(II)プロセス及び前記(III)プロセスは反復的に遂行されて複数の前記トランジションベクターを生成し、毎イテレーションの前記(III)プロセスにおいて、前記プロセッサは、前記メモリの前記トランジションベクターの蓄積量に比例して前記学習用トランジションベクターとして使われるa×n個や2n個(ここで、aとnは1以上の整数であり、nは既設定されたイテレーション数ごとに1ずつ増加する)の前記特定トランジションベクターをランダムに選択して少なくとも一つの前記ミニバッチを生成して、前記各ミニバッチを利用して前記ディープQ‐ネットワークを学習させたり学習させるように支援することを特徴とする学習装置が開示される。
【0029】
一例として、前記(I)プロセス、前記(II)プロセス及び前記(III)プロセスは反復的に遂行されて複数の前記トランジションベクターを生成し、前記メモリはリプレイメモリ(replay memory)を含み、毎イテレーションの前記(III)プロセスにおいて、前記プロセッサは、(i)前記トランジションベクターを前記リプレイメモリに伝送して前記リプレイメモリをもってサイクリックバッファ(cyclic buffer)の既設定された容量によって前記トランジションベクターを最も古い以前のトランジションベクターにオーバライト(overwrite)して格納させたり格納するように支援し、(ii)前記リプレイメモリから前記学習用トランジションベクターとして使われる前記特定トランジションベクターをランダムにサンプリングして前記ミニバッチを生成したり生成するように支援することを特徴とする学習装置が開示される。
【0030】
一例として、前記(I)プロセスにおいて、前記プロセッサは、前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記第1のラベルなしのイメージを少なくとも一回コンボリューション演算して前記第1のラベルなしのイメージに対応される第1のフィーチャーマップ(feature map)を生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記第1のフィーチャーマップを参照して前記第1のラベルなしのイメージ上で前記第1の客体ないし前記第k1の客体があると予測される候補領域に対するROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記第1のフィーチャーマップ上で前記ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記ROIのそれぞれに対応されるプールドフィーチャーマップをそれぞれ生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記プールドフィーチャーマップをFC演算して前記ROIのそれぞれに対応するリグレッション情報(regression information)とクラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記ROIのそれぞれに対応する前記リグレッション情報と前記クラシフィケーション情報とを参照して前記第1のラベルなしのイメージ上に位置する前記第1の客体ないし前記第k1の客体のそれぞれに対応する前記第1_1のバウンディングボックスないし前記第1_k1のバウンディングボックスと、前記第1_1のクラシフィケーション情報ないし前記第1_k1のクラシフィケーション情報とを生成させたり生成するように支援することを特徴とする学習装置が開示される。
【0031】
本発明のまた他の態様によると、ディープQ‐ネットワーク(deep Q‐network)を利用してディープラーニング基盤のディテクションネットワーク(detection network)を自己教師あり学習(self‐supervised learning)する自己学習装置であって、インストラクションを格納する少なくとも一つのメモリ;及び前記インストラクションを実行するために構成された少なくとも一つのプロセッサ;を含み、前記プロセッサが、学習装置によって、(I)客体探知のためのディテクションネットワークが学習データベースに格納された学習データで学習された状態で、(i)ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、(i‐1)前記第1のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させたり生成するように支援し、(i‐2)前記第1のオブジェクトディテクション情報を参照して前記第1のラベルなしのイメージ上に含まれた第1の客体に対する第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス(classification confidence)、第1_1のリグレッションアンサーティンティ(regression uncertainty)、第1_1のプールドフィーチャーマップ(pooled feature map)ないし前記第1のラベルなしのイメージ上に含まれた第k1の客体に対する第1_k1のバウンディングボックス(前記k1は1以上の整数である)に対応される第1_k1のクラシフィケーションコンフィデンス、第1_k1のリグレッションアンサーティンティ及び第1_k1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成したり生成するように支援し、(i‐3)前記第1のステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記第1のステートセットをラーニング演算して前記第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成させたり生成するように支援し、(i‐4)前記Q値(Q‐Value)にargMax関数を適用してアクション(action)を生成したり生成するように支援し、(ii)(ii‐1)前記アクションを参照して(1)前記アクションが前記第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記第1のオブジェクトディテクション情報を前記第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージ(labeled image)を学習データとして前記学習データベースに追加させ、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させ、再学習された前記ディテクションネットワークを検証データベースを利用してテストして獲得した再学習された前記ディテクションネットワークの第1正確度をリワード(reward)として生成したり生成するように支援し、(2)前記アクションが前記第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、前記第1のラベルなしのイメージを前記ラベルなしのデータベースから削除し、前記ディテクションネットワークを前記検証データベースを利用してテストして獲得した前記ディテクションネットワークの第2正確度を前記リワードとして生成したり生成するように支援し、(ii‐2)前記ラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージが獲得されると、(1)前記第2のラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させたり生成するように支援し、(2)前記第2のオブジェクトディテクション情報を参照して前記第2のラベルなしのイメージ上に含まれた第1の客体に対する第2_1のバウンディングボックスに対応される第2_1のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティ及び第2_1のプールドフィーチャーマップないし前記第2のラベルなしのイメージ上に含まれた第k2の客体に対する第2_k2のバウンディングボックス(前記k2は1以上の整数である)に対応される第2_k2のクラシフィケーションコンフィデンス、第2_k2のリグレッションアンサーティンティ及び第2_k2のプールドフィーチャーマップを含む第2のステートセットを生成したり生成するように支援し、(3)前記第1のステートセット、前記アクション、前記リワード及び前記第2のステートセットをトランジションベクターとしてメモリに格納したり格納するように支援し、(iii)前記メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、前記ミニバッチを利用して前記ディープQ‐ネットワークが前記第1のステートセット及び前記第2のステートセットによって前記リワードを増加させるためのアクションを出力するように前記ディープQ‐ネットワークを学習させたり学習させるように支援した状態で、新規ラベルなしのデータベースから選択された少なくとも一つの新規ラベルなしのイメージが獲得されると、(i)前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって、前記新規ラベルなしのイメージに対するオブジェクトディテクションを遂行して新規オブジェクトディテクション情報を生成させたり生成するように支援し、(ii)前記新規オブジェクトディテクション情報を参照して前記新規ラベルなしのイメージ上に含まれた第1の客体に対する第1の新規バウンディングボックスに対応される第1の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし前記新規ラベルなしのイメージ上に含まれた第k3の客体に対する第k3の新規バウンディングボックス(前記k3は1以上の整数である)に対応される第k3の新規クラシフィケーションコンフィデンス、第k3の新規リグレッションアンサーティンティ及び第k3の新規プールドフィーチャーマップを含む新規ステートセットを生成したり生成するように支援し、(iii)前記新規ステートセットをディープQ‐ネットワークに入力して、前記ディープQ‐ネットワークをもって、前記新規ステートセットをラーニング演算して前記新規ラベルなしのイメージに対応される新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成させたり生成するように支援し、(iv)前記新規Q値(Q‐Value)にargMax関数を適用して新規アクションを生成したり生成するように支援するプロセス、及び(II)前記新規アクションを参照して(i)前記新規アクションが前記新規ラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、前記新規オブジェクトディテクション情報を前記新規ラベルなしのイメージにラベルとして追加した新規ラベル付きのイメージを前記学習データとして前記学習データベースに追加させ、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除し、前記学習データベースに含まれた少なくとも一つの前記学習データを利用して前記ディテクションネットワークを再学習させたり再学習させるように支援し、(ii)前記新規アクションが前記新規ラベルなしのイメージのリジェクション(rejection)に対応される場合、前記新規ラベルなしのイメージを前記新規ラベルなしのデータベースから削除するプロセスを遂行する自己学習装置が開示される。
【0032】
一例として、前記(I)プロセスにおいて、前記プロセッサは、前記ディープQ‐ネットワークをもって、(i)前記第1の新規バウンディングボックスに対応される前記第1の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティ及び前記第1の新規プールドフィーチャーマップないし前記第1の新規バウンディングボックスに対応される前記第k3の新規クラシフィケーションコンフィデンス、前記第k3の新規リグレッションアンサーティンティ及び前記第k3の新規プールドフィーチャーマップに少なくとも一つのFC(Fully‐Connected)演算を適用して前記第1の新規バウンディングボックスに対応される第1の新規インターミディエートアクセプタンススコア(intermediate acceptance score)及び第1の新規インターミディエートリジェクションスコア(intermediate rejection score)ないし前記第k3の新規バウンディングボックスに対応される第k3の新規インターミディエートアクセプタンススコア及び第k3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援し、(ii)前記第1の新規インターミディエートアクセプタンススコアないし前記第k3の新規インターミディエートアクセプタンススコアを平均演算して前記新規アクセプタンススコアを生成するようにし、前記第1の新規インターミディエートリジェクションスコアないし前記第k3の新規インターミディエートリジェクションスコアを平均演算して前記新規リジェクションスコアを生成させることで前記新規アクセプタンススコアと前記新規リジェクションスコアとを含む前記新規Q値(Q‐Value)を生成させたり生成するように支援することを特徴とする自己学習装置が開示される。
【0033】
一例として、前記プロセッサは、前記ディープQ‐ネットワークをもって、前記第1の新規プールドフィーチャーマップないし前記第k3の新規プールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1の新規フィーチャー値(feature value)ないし第k3の新規フィーチャー値を生成し、前記第1の新規クラシフィケーションコンフィデンスないし前記第k3の新規クラシフィケーションコンフィデンス、前記第1の新規リグレッションアンサーティンティないし前記第k3の新規リグレッションアンサーティンティ及び前記第1の新規フィーチャー値ないし前記第k3の新規フィーチャー値に少なくとも一つの前記FC演算を適用して前記第1の新規インターミディエートアクセプタンススコアないし前記第k3の新規インターミディエートアクセプタンススコア及び前記第1の新規インターミディエートリジェクションスコアないし前記第k3の新規インターミディエートリジェクションスコアを生成させたり生成するように支援することを特徴とする自己学習装置が開示される。
【0034】
一例として、前記(I)プロセスにおいて、前記プロセッサは、前記新規ラベルなしのイメージを前記ディテクションネットワークに入力して、前記ディテクションネットワークをもって(i)少なくとも一つのコンボリューションレイヤーを通じて前記新規ラベルなしのイメージを少なくとも一回コンボリューション演算して前記新規ラベルなしのイメージに対応される新規フィーチャーマップを生成させたり生成するように支援し、(ii)RPN(Region Proposal Network)を通じて前記新規フィーチャーマップを参照して前記新規ラベルなしのイメージ上で前記第1の客体ないし前記第k3の客体があると予測される候補領域に対する新規ROI(region of interest)を生成させたり生成するように支援し、(iii)プーリングレイヤーを通じて前記新規フィーチャーマップ上で前記新規ROIに対応されるそれぞれの前記候補領域をROIプーリングして前記新規ROIのそれぞれに対応される新規プールドフィーチャーマップを生成させたり生成するように支援し、(iv)少なくとも一つのFC(Fully‐Connected)レイヤーを通じて前記新規プールドフィーチャーマップをFC演算して前記新規ROIのそれぞれに対応する新規リグレッション情報(regression information)と新規クラシフィケーション情報(classification information)とを生成させたり生成するように支援し、(v)前記新規ROIのそれぞれに対応する前記新規リグレッション情報と前記新規クラシフィケーション情報とを参照して前記新規ラベルなしのイメージ上に位置する前記第1の客体ないし前記第k3の客体のそれぞれに対応する前記第1の新規バウンディングボックスないし前記第k3の新規バウンディングボックスと、第1の新規クラシフィケーション情報ないし第k3の新規クラシフィケーション情報とを生成させたり生成するように支援することを特徴とする自己学習装置が開示される。
【0035】
この他にも、本発明の方法を実行するためのコンピュータープログラムを記録するためのコンピューターの読み取り可能な記録媒体がさらに提供される。
【発明の効果】
【0036】
本発明はディープQ‐ネットワーク(deep Q‐network)が生成したQ値(Q‐value)を利用してディテクションネットワーク(detection network)の正確度を増加させることができる最適の学習データを効果的に選択する効果がある。
【0037】
また、本発明はディテクションネットワークにつながったディープQ‐ネットワークに対してディテクションネットワークの正確度をリワード(reward)として利用した強化学習(reinforcement learning)を遂行してディープQ‐ネットワークがディテクションネットワークの正確度を増加させることができる最適の学習データを選択するQ値(Q‐value)を生成させる効果がある。
【0038】
また、本発明はディープQ‐ネットワークが生成するQ値(Q‐value)に基づいて選択された学習データを利用してディテクションネットワークに対する自己教師あり学習(self‐supervised learning)を可能にする効果がある。
【図面の簡単な説明】
【0039】
本発明の実施例の説明に利用されるために添付された以下の図面は、本発明の実施例のうち単に一部であるに過ぎず、本発明の属する技術分野における通常の知識を有する者(以下「通常の技術者」)にとっては、発明的作業が行われずにこれらの図面に基づいて他の各図面が得られる。
【0040】
【
図1】
図1は、本発明の一実施例によってディープラーニング基盤のディテクションネットワーク(detection network)におけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワーク(deep Q‐network)を強化学習(reinforcement learning)させるための学習装置を簡略に示したものである。
【
図2】
図2は、本発明の一実施例によってディープラーニング基盤のディテクションネットワークにおけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワークを強化学習させる過程を簡略に示したものである。
【
図3】
図3は、本発明の一実施例によるディープQ‐ネットワークの構造を簡略に示したものである。
【
図4】
図4は、本発明の一実施例によってディープQ‐ネットワークを利用してディープラーニング基盤のディテクションネットワークに対する自己教師あり学習(self‐supervised learning)を遂行する自己学習装置(self‐learning device)を簡略に示したものである。
【
図5】
図5は、本発明の一実施例によってディープQ‐ネットワークを利用してディープラーニング基盤のディテクションネットワークに対する自己教師あり学習(self‐supervised learning)を遂行する過程を簡略に示したものである。
【発明を実施するための形態】
【0041】
後述する本発明に関する詳細な説明は、本発明の各目的、各技術的解法、及び各長所を明らかにするために本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は、通常の技術者が本発明を実施することができるように十分詳細に説明される。さらに、本発明は、本明細書に示された実施例のすべての可能な組合せを網羅する。本発明の多様な実施例は互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施例に関連して本発明の精神及び範囲を逸脱せず、かつ他の実施例で具現され得る。また、それぞれの開示された実施例内の個別の構成要素の位置又は配置は、本発明の精神及び範囲を逸脱せず、かつ変更され得ることが理解されるべきである。したがって、後述の詳細な説明は、限定的な意味として受け取ろうとするものではなく、本発明の範囲は適切に説明されるのであれば、その請求項が主張することと均等な全ての範囲とともに添付された請求項によってのみ限定される。図面において類似の参照符号は、様々な側面にわたって同一であるか、又は類似の機能を指す。
【0042】
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除くことを意図したものではない。通常の技術者にとって本発明の他の目的、長所及び特性が、一部は本説明書から、また一部は本発明の実施から明らかになる。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
【0043】
本発明で言及する各種イメージは、舗装または非舗装道路関連のイメージを含むことができるし、この場合、道路環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他障害物)を想定することができるが、必ずしもこれに限定されるものではなく、本発明で言及する各種イメージは、道路とは関係のないイメージ(例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、天、屋内に関連するイメージ)であってもよく、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、天、屋内環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンなどの飛行体、その他障害物)を想定することができるが、必ずしもこれに限定されるものではない。ここで提供される本開示のタイトル及び要約は単に便宜のためのものであり、実施例の範囲または意味を制限したり解釈するものではない。
【0044】
以下、本発明の属する技術分野において通常の知識を有する者が本発明を容易に実施できるようにするために、本発明の好ましい実施例について添付された図面を参照して詳しく説明する。
【0045】
図1は、本発明の一実施例によってディープラーニング基盤のディテクションネットワーク(detection network)におけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習(self‐supervised learning)に有用な学習データを選択できるようにディープQ‐ネットワーク(deep Q‐network)を強化学習(reinforcement learning)させるための学習装置1000を簡略に示したものである。
【0046】
図1を参照すれば、学習装置1000はディープラーニング基盤のディテクションネットワークにおけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワークを強化学習させるためのインストラクションを格納するメモリ1001と、メモリ1001に格納されたインストラクションに対応してディープラーニング基盤のディテクションネットワークにおけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワークを強化学習させるための動作を遂行するプロセッサ1002を含むことができる。
【0047】
具体的に、学習装置1000は典型的にコンピューティング装置(例えば、コンピュータープロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他既存のコンピューティング装置の構成要素を含むことができる装置;ルーター、スイッチなどのような電子通信装置;ネットワーク付きストレージ(NAS)及びストレージ領域ネットワーク(SAN)のような電子情報ストレージシステム)とコンピューターソフトウェア(すなわち、コンピューティング装置をもって特定方式で機能させるインストラクション)の組み合わせを利用して所望のシステム性能を達成するものである。
【0048】
また、コンピューティング装置のプロセッサは、MPU(Micro Processing Unit)またはCPU(Central Processing Unit)、キャッシュメモリ(Cache Memory)、データバス(Data Bus)などのハードウェア構成を含むことができる。また、コンピューティング装置は、運営体制、特定目的を遂行するアプリケーションのソフトウェア構成をさらに含むこともできる。
【0049】
しかし、コンピューティング装置が本発明を実施するためのミディアム、プロセッサ及びメモリが統合された形態であるインテグレイティド(integrated)プロセッサを含む場合を排除することではない。
【0050】
このように構成された学習装置1000を利用して本発明の一実施例によってディープラーニング基盤のディテクションネットワークにおけるオブジェクトディテクション結果に基づいてディテクションネットワークの自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワークを強化学習させるための方法を
図2と
図3を参照して説明すれば次のとおりである。
【0051】
先ず、
図2は本発明の一実施例によってディープラーニング基盤のディテクションネットワーク100におけるオブジェクトディテクション結果に基づいてディテクションネットワーク100の自己教師あり学習に有用な学習データを選択できるようにディープQ‐ネットワーク200に対して強化学習させる過程を簡略に示したものである。
【0052】
図2を参照すれば、学習装置1000は、客体探知のためのディテクションネットワーク100が学習データベースに格納された学習データを利用して学習された状態で、ラベルなしのデータベース(unlabeled database)から少なくとも一つの第1のラベルなしのイメージ(unlabeled image)が獲得されると、第1のラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって、第1のラベルなしのイメージに対するオブジェクトディテクションを遂行して第1のオブジェクトディテクション情報を生成させることができる。ここで、第1のラベルなしのイメージはラベルなしのデータベースからランダムに選択されることができる。また、ディテクションネットワーク100の初期学習に利用された学習データベースが含んだ学習データは、各学習データに対応される原本正解を利用して全てアノテーション(annotation)された状態である。そして、ラベルなしのデータベースは原本正解がアノテーションされていないラベルなしのイメージ(unlabeled image)が格納されている。
【0053】
具体的に、学習装置1000は第1のラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって少なくとも一つのコンボリューションレイヤーを通じて第1のラベルなしのイメージを少なくとも一回コンボリューション演算して第1のラベルなしのイメージに対応される第1のフィーチャーマップ(feature map)を生成するようにし、RPN(Region Proposal Network)を通じて第1のフィーチャーマップを参照して第1のラベルなしのイメージ上で第1の客体ないし第k1の客体があると予測される候補領域に対する第1のROI(region of interest)を生成するようにし、プーリングレイヤーを通じて第1のフィーチャーマップ上で第1のROIに対応されるそれぞれの候補領域をROIプーリングして第1のROIのそれぞれに対応される第1のプールドフィーチャーマップ(pooled feature map)を生成するようにし、少なくとも一つのFCレイヤー(Fully‐Connected Layer)を通じて第1のプールドフィーチャーマップを第1のFC演算して第1のROIのそれぞれに対する第1のリグレッション情報(regression information)と第1のクラシフィケーション情報(classification information)とを生成するようにし、第1のROIのそれぞれに対する第1のリグレッション情報と第1のクラシフィケーション情報とから第1のラベルなしのイメージ上に位置する第1の客体ないし第k1の客体のそれぞれに対する第1_1のバウンディングボックスないし第1_k1のバウンディングボックスと、第1_1のクラシフィケーション情報ないし第1_k1のクルレピシケイション情報とを生成させることができる。この時、第1_1のクラシフィケーション情報ないし第1_k1のクラシフィケーション情報それぞれは第1_1のクラシフィケーションコンフィデンス(classification confidence)ないし第1_k1のクラシフィケーションコンフィデンスを含むことができるし、第1_1のバウンディングボックスないし第1_k1のバウンディングボックスのそれぞれは第1_1のリグレッションアンサーティンティ(regression uncertainty)ないし第1_k1のリグレッションアンサーティンティを含むことができる。ここで、k1は1以上の整数であり、第1のラベルなしのイメージ上に存在する客体数によってその値が変わることができる。
【0054】
次いで、学習装置1000は、第1のオブジェクトディテクション情報を参照して第1のラベルなしのイメージ上に含まれた第1の客体ないし第k1の客体に対する第1_1のバウンディングボックスないし第1_k1のバウンディングボックスそれぞれに対応される第1_1のクラシフィケーションコンフィデンスないし第1_k1のクラシフィケーションコンフィデンス、第1_1のリグレッションアンサーティンティないし第1_k1のリグレッションアンサーティンティ、及び第1_1のプールドフィーチャーマップないし第1_k1のプールドフィーチャーマップを含む第1のステートセット(state set)を生成することができる。
【0055】
そして、学習装置1000は、第1のステートセットをディープQ‐ネットワーク200に入力して、ディープQ‐ネットワーク200をもって、第1のステートセットをラーニング演算して第1のラベルなしのイメージに対応されるアクセプタンススコア(acceptance score)とリジェクションスコア(rejection score)とを含むQ値(Q‐Value)を生成するようにし、Q値(Q‐Value)にargMax関数を適用してアクションを生成することができる。
【0056】
具体的に、
図3を参照すれば、学習装置1000は、ディープQ‐ネットワーク200をもって、第1_1のバウンディングボックスに対応される第1_1のクラシフィケーションコンフィデンス、第1_1のリグレッションアンサーティンティ、第1_1のプールドフィーチャーマップないし第1_k
1のバウンディングボックスに対応される第1_k
1のクラシフィケーションコンフィデンス、第1_k
1のリグレッションアンサーティンティ及び第1_k
1のプールドフィーチャーマップのそれぞれに少なくとも一つの第2のFC(Fully Connected)演算を適用して第1_1のバウンディングボックスに対応される第1のインターミディエートアクセプタンススコア(intermediate acceptance score)及び第1のインターミディエートリジェクションスコア(intermediate rejection score)ないし第1_k
1のバウンディングボックスに対応される第k
1のインターミディエートアクセプタンススコア及び第k
1のインターミディエートリジェクションスコアを生成させることができる。
【0057】
ここで、学習装置1000は、ディープQ‐ネットワーク200をもって、第1_1のプールドフィーチャーマップないし第1_k1のプールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1のフィーチャー値(feature value)ないし第k1のフィーチャー値を生成した後、第1_1のクラシフィケーションコンフィデンスないし第1_k1のクラシフィケーションコンフィデンス、第1_1のリグレッションアンサーティンティないし第1_k1のリグレッションアンサーティンティ及び第1のフィーチャー値ないし第k1のフィーチャー値に少なくとも一つの第2のFC演算を適用させることができる。これを通じて、第1のステートセットにおける各要素、すなわち、第1_1のクラシフィケーションコンフィデンスないし第1_k1のクラシフィケーションコンフィデンス、第1_1のリグレッションアンサーティンティないし第1_k1のリグレッションアンサーティンティ及び第1_1のプールドフィーチャーマップないし第1_k1のプールドフィーチャーマップのデータフォーマットを同一または類似にした後、第2のFC演算を遂行させることができる。ここで、m×mは第1_1のプールドフィーチャーマップないし第1_k1のプールドフィーチャーマップのサイズに対応されることができる。
【0058】
一例として、
図3で例示として示したように、ディテクションネットワーク100から生成された第1_1のプールドフィーチャーマップないし第1_k
1のプールドフィーチャーマップがそれぞれ5×5のサイズを持つ場合、少なくとも一つの1×1コンボリューション演算と一つの5×5コンボリューション演算とを適用して第1のフィーチャー値ないし第k
1のフィーチャー値を生成した後、第1_1のクラシフィケーションコンフィデンスないし第1_k
1のクラシフィケーションコンフィデンス、第1_1のリグレッションアンサーティンティないし第1_k
1のリグレッションアンサーティンティ及び第1のフィーチャー値ないし第k
1のフィーチャー値のそれぞれに少なくとも一つの第2のFC演算を適用して第1のインターミディエートアクセプタンススコアないし第k
1のインターミディエートアクセプタンススコア及び第1のインターミディエートリジェクションスコアないし第k
1のインターミディエートリジェクションスコアを生成することができる。
【0059】
以後、学習装置100は、ディープQ‐ネットワーク200をもって、第1のインターミディエートアクセプタンススコアないし第k1のインターミディエートアクセプタンススコアを平均演算してアクセプタンススコアを生成するようにし、第1のインターミディエートリジェクションスコアないし第k1のインターミディエートリジェクションスコアを平均演算してリジェクションスコアを生成させることでアクセプタンススコアとリジェクションスコアとを含むQ値(Q‐Value)を生成させることができる。
【0060】
また、
図2を参照すれば、学習装置1000はディープQ‐ネットワーク200のQ値(Q‐value)にargMax関数を適用して生成したアクションを参照してアクションが第1のラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、第1のオブジェクトディテクション情報を第1のラベルなしのイメージにラベルとして追加したラベル付きのイメージを学習データとして学習データベースに追加させ、第1のラベルなしのイメージをラベルなしのデータベースから削除し、学習データベースに含まれた少なくとも一つの学習データを利用してディテクションネットワーク100を再学習させ、再学習されたディテクションネットワーク100を検証データベース(validation database)を利用し、テストして獲得した再学習されたディテクションネットワーク100の第1正確度を参照してリワード(reward)を生成することができる。ここで、第1正確度は検証データベースを利用してディテクションネットワーク100をテストした結果から獲得することができる。例えば、第1正確度は検証データベースに含まれたテストデータに対してディテクションネットワーク100が生成したテストオブジェクトディテクション情報をテストデータの原本正解と比べて生成したmAP(mean Average Precision)として設定することができる。
【0061】
一方、学習装置1000はQ値(Q‐Value)にargMax関数を適用して生成したアクションを参照してアクションが第1のラベルなしのイメージのリジェクション(rejection)に対応される場合、第1のラベルなしのイメージをラベルなしのデータベースから削除し、検証データベースを利用してディテクションネットワーク100をテストして獲得したディテクションネットワーク100の第2正確度、すなわち、再学習が行われていない現状のディテクションネットワーク100の第2正確度を参照してリワードを生成することができる。ここで、第2正確度はディテクションネットワーク100に対する再学習が行われていない状態で測定されたものであるため、第2正確度の測定以前に測定された正確度で変化のない状態である。
【0062】
次に、学習装置1000はラベルなしのデータベースから少なくとも一つの第2のラベルなしのイメージ(unlabeled image)が獲得されると、第2のラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって、第2のラベルなしのイメージに対するオブジェクトディテクションを遂行して第2のオブジェクトディテクション情報を生成させることができる。ここで、第2のラベルなしのイメージはラベルなしのデータベースからランダムに選択されることができる。
【0063】
具体的に、学習装置1000は第2のラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって少なくとも一つのコンボリューションレイヤーを通じて第2のラベルなしのイメージを少なくとも一回コンボリューション演算して第2のラベルなしのイメージに対応される第2のフィーチャーマップ(feature map)を生成するようにし、RPN(Region Proposal Network)を通じて第2のフィーチャーマップを参照して第2のラベルなしのイメージ(unlabeled image)上で第1の客体ないし第k2の客体があると予測される候補領域に対する第2のROI(region of interest)を生成するようにし、プーリングレイヤーを通じて第2のフィーチャーマップ上で第2のROIに対応されるそれぞれの候補領域をROIプーリングして第2のROIのそれぞれに対応される第2のプールドフィーチャーマップを生成するようにし、少なくとも一つのFCレイヤーを通じて第2のプールドフィーチャーマップを第1のFC演算して第2のROIのそれぞれに対する第2のリグレッション情報(regression information)と第2のクラシフィケーション情報(classification information)とを生成するようにし、第2のROIのそれぞれに対する第2のリグレッション情報と第2のクラシフィケーション情報とから第2のラベルなしのイメージ上に位置する第1の客体ないし第k2の客体のそれぞれに対する第2_1のバウンディングボックスないし第2_k2のバウンディングボックスと、第2_1のクラシフィケーション情報ないし第2_k2のクラシフィケーション情報とを生成させることができる。この時、第2_1のクラシフィケーション情報ないし第2_k2のクラシフィケーション情報のそれぞれは第2_1のクラシフィケーションコンフィデンス(classificiation confidence)ないし第2_k2のクラシフィケーションコンフィデンスを含むことができるし、第2_1のバウンディングボックスないし第2_k2のバウンディングボックスのそれぞれは第2_1のリグレッションアンサーティンティ(regression uncertainty)ないし第2_k2のリグレッションアンサーティンティを含むことができる。ここで、k2は1以上の整数であり、第2のラベルなしのイメージ上に含まれた客体数によってその値が変わることができる。
【0064】
次いで、学習装置1000は、第2のオブジェクトディテクション情報を参照して第2のラベルなしのイメージ上に含まれた第1の客体ないし第k2の客体に対する第2_1のバウンディングボックスないし第2_k2のバウンディングボックスのそれぞれに対応される第2_1のクラシフィケーションコンフィデンスないし第2_k2のクラシフィケーションコンフィデンス、第2_1のリグレッションアンサーティンティないし第2_k2のリグレッションアンサーティンティ、及び第2_1のプールドフィーチャーマップないし第2_k2のプールドフィーチャーマップを含む第2のステートセット(state set)を生成することができる。
【0065】
次に、学習装置1000は第1のステートセット、アクション、リワード及び第2のステートセットをトランジションベクター(transition vector)としてメモリに格納することができる。ここで、学習装置1000は第1のラベルなしのイメージに対応される第1のステートセット、アクション、リワードをメモリに格納した状態で、第2のステートセットが生成されると第2のステートセットをさらにメモリに格納することができる。また、トランジションベクターの各要素はトランジションの各コンポーネントと言えるし、トランジションベクターはメモリにタプル(tuple)の形態で格納されることができる。
【0066】
そして、学習装置1000は、メモリから少なくとも一つの学習用トランジションベクターとして使われる少なくとも一つの特定トランジションベクターをサンプリングしてミニバッチ(minibatch)を生成し、ミニバッチを利用してディープQ‐ネットワーク200が第1のステートセット及び第2のステートセットによってリワードを増加させるためのアクションを出力するようにディープQ‐ネットワーク200を学習させることができる。ここで、ディープQ‐ネットワーク200の学習はミニバッチに含まれた学習用トランジションベクターを参照してベルマン方程式(Bellman’s equation)を利用したロス関数(loss function)を生成した後、ロスを最小化する方法で遂行することができる。
【0067】
一方、第1のステートセット、アクション、リワード及び第2のステートセットを生成する段階は反復的に遂行されて複数のトランジションベクターを生成することができるし、トランジションベクターが格納されたメモリはリプレイメモリ(replay memory)を含むことができる。したがって、毎イテレーション(iteration)ごとに、学習装置1000はトランジションベクターをリプレイメモリに伝送してリプレイメモリをもってサイクリックバッファ(cyclic buffer)の既設定された容量によってトランジションベクターを最も古い以前のトランジションベクターにオーバライト(overwrite)して格納させることができる。これを通じて、学習装置1000はリプレイメモリから少なくとも一つの学習用トランジションベクターとして使用される特定トランジションベクターをランダムにサンプリングしてミニバッチを生成することができる。
【0068】
また、毎イテレーションごとにミニバッチをサンプリングしてディープQ‐ネットワーク200を学習させる一例として、学習装置1000は、トランジションベクターの蓄積量に比例して学習用トランジションベクターとして使われるa×n個や2n個の特定トランジションベクターをランダムに選択して少なくとも一つのミニバッチを生成し、各ミニバッチを利用してディープQ‐ネットワーク200を学習させることができる。ここで、aとnは1以上の整数であり、nは既設定されたイテレーション数ごとに1ずつ増加する。
【0069】
前記のようなディープQ‐ネットワーク200に対する強化学習は、以下のような擬似コード(pseudocode)を利用して遂行されることができる。以下の擬似コードにおいて、ディープQ‐ネットワーク200はQ‐Netで、ディテクションネットワーク100はDetection‐Netで表される。以下の擬似コードによると、学習装置1000はトランジションベクターが生成される毎イテレーションごとにミニバッチを生成してディープQ‐ネットワーク200を学習させる過程を繰り返すことができる。
【0070】
【0071】
一方、前記のような方法を使用してディープQ‐ネットワーク200の強化学習を進めると同時に、ディテクションネットワーク100に対する自己教師あり学習も同時に進めることができるが、本発明がこれに限定されるものではなく、前記のように学習されたディープQ‐ネットワークを利用してディテクションネットワーク100に対する自己教師あり学習を遂行する方法は以下のとおりである。
【0072】
ディープQ‐ネットワーク200が前記のように学習された状態で、自己学習装置(self‐learning device)がディープQ‐ネットワーク200を利用してディープラーニング基盤のディテクションネットワーク100を自己教師あり学習(self‐supervised learning)する方法を
図4と
図5を参照して説明すれば次のとおりである。
【0073】
図4は、本発明の一実施例によってディープQ‐ネットワーク200を利用してディープラーニング基盤のディテクションネットワークに対する自己教師あり学習(self‐supervised learning)を遂行する自己学習装置2000を簡略に示したものである。
【0074】
図4を参照すれば、自己学習装置2000はディープQ‐ネットワーク200を利用してディテクションネットワーク100に対する自己教師あり学習(self‐supervised learning)を遂行するためのインストラクションを格納するメモリ2001とメモリ2001に格納されたインストラクションに対応してディープQ‐ネットワーク200を利用してディテクションネットワーク100に対する自己教師あり学習(self‐supervised learning)を遂行するプロセッサ2002を含むことができる。
【0075】
具体的に、自己学習装置2000は典型的にコンピューティング装置(例えば、コンピュータープロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他既存のコンピューティング装置の構成要素を含むことができる装置;ルーター、スイッチなどのような電子通信装置;ネットワーク付きストレージ(NAS)及びストレージ領域ネットワーク(SAN)のような電子情報ストレージシステム)とコンピューターソフトウェア(すなわち、コンピューティング装置をもって特定方式で機能させるインストラクション)の組み合わせを利用して所望のシステム性能を達成するものである。
【0076】
また、コンピューティング装置のプロセッサは、MPU(Micro Processing Unit)またはCPU(Central Processing Unit)、キャッシュメモリ(Cache Memory)、データバス(Data Bus)などのハードウェア構成を含むことができる。また、コンピューティング装置は、運営体制、特定目的を遂行するアプリケーションのソフトウェア構成をさらに含むこともできる。
【0077】
しかし、コンピューティング装置が本発明を実施するためのミディアム、プロセッサ及びメモリが統合された形態であるインテグレイティド(integrated)プロセッサを含む場合を排除することではない。
【0078】
一方、前記のような自己学習装置2000はラベリングされていない学習データが持続的に提供されるクラウド、IoT機器、映像装置、自律走行自動車、ロボットなどに搭載されることができるし、必要に応じて一定期間ごとにディテクションネットワーク100とディープQ‐ネットワーク200とのパラメーターを学習装置1000に伝送してアップデートされたディープQ‐ネットワーク200のパラメーターを学習装置1000から伝送してもらうことができる。このように学習装置1000と自己学習装置2000とは物理的に分離されて互いにデータを取り交わすことができるが、本発明がこれに限定されるものではなく、容量や物理的な制限がない場合や必要に応じては学習装置1000と自己学習装置2000とが同一機器として動作することができる。
【0079】
このように構成された本発明の一実施例による自己学習装置2000を利用してディープQ‐ネットワーク200を利用してディープラーニング基盤のディテクションネットワーク100に対する自己教師あり学習(self‐supervised learning)を遂行する過程を
図5を参照して説明すれば次のとおりである。以下では、
図2と
図3を参照した説明から容易に理解できる部分に対しては詳細な説明を省略する。
【0080】
図5を参照すれば、前記のようにディープQ‐ネットワーク200が学習された状態で、自己学習装置2000は新規ラベルなしのデータベース(unlabeled database)から選択された少なくとも一つの新規ラベルなしのイメージ(unlabeled image)が獲得されると、新規ラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって、新規ラベルなしのイメージに対するオブジェクトディテクションを遂行して新規オブジェクトディテクション情報を生成させることができる。ここで、新規ラベルなしのイメージは新規ラベルなしのデータベースからランダムに選択されることができる。そして、新規ラベルなしのデータベースは原本正解がアノテーション(annotation)されていない新規ラベルなしのイメージが格納されている。
【0081】
すなわち、自己学習装置2000は新規ラベルなしのイメージをディテクションネットワーク100に入力して、ディテクションネットワーク100をもって少なくとも一つのコンボリューションレイヤーを通じて新規ラベルなしのイメージを少なくとも一回コンボリューション演算して新規ラベルなしのイメージに対応される新規フィーチャーマップを生成するようにし、RPN(Region Proposal Network)を通じて新規フィーチャーマップを参照して新規ラベルなしのイメージ上で第1の客体ないし第k3の客体があると予測される候補領域に対する新規ROIを生成するようにし、プーリングレイヤーを通じて新規フィーチャーマップ上で新規ROIのそれぞれに対応されるそれぞれの候補領域をROIプーリングして新規ROIに対応される新規プールドフィーチャーマップを生成するようにし、少なくとも一つのFCレイヤーを通じて新規プールドフィーチャーマップを第1のFC演算して新規ROIのそれぞれに対する新規リグレッション情報と新規クラシフィケーション情報とを生成するようにし、新規ROIのそれぞれに対する新規リグレッション情報と新規クラシフィケーション情報とから新規ラベルなしのイメージ上に位置する第1の客体ないし第k3の客体に対する第1の新規バウンディングボックスないし第k3の新規バウンディングボックスと、第1の新規クラシフィケーション情報ないし第k3の新規クラシフィケーション情報とを生成させることができる。この時、第1の新規クラシフィケーション情報ないし第k3の新規クラシフィケーション情報それぞれは第1の新規クラシフィケーションコンフィデンスないし第k3のクラシフィケーションコンフィデンスを含むことができるし、第1の新規バウンディングボックスないし第k3のバウンディングボックスのそれぞれは第1の新規リグレッションアンサーティンティないし第k3の新規リグレッションアンサーティンティを含むことができる。ここで、k3は1以上の整数であり、新規ラベルなしのイメージ上に含まれた客体数によってその値が変わることができる。
【0082】
次いで、自己学習装置2000は新規オブジェクトディテクション情報を参照して新規ラベルなしのイメージ上に含まれた少なくとも一つの客体に対する第1の新規バウンディングボックスないし第k3の新規バウンディングボックスのそれぞれに対応される第1の新規クラシフィケーションコンフィデンスないし第k3の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティないし第k3の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし第1の新規プールドフィーチャーマップを含む新規ステートセットを生成することができる。
【0083】
これによって、自己学習装置2000は新規ステートセットをディープQ‐ネットワーク200に入力して、ディープQ‐ネットワーク200をもって、新規ステートセットをラーニング演算して新規ラベルなしのイメージに対応される新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成するようにし、新規Q値(Q‐Value)にargMax関数を適用して新規アクションを生成することができる。
【0084】
具体的に、自己学習装置2000は、ディープQ‐ネットワーク200をもって、新規ラベルなしのイメージ上に含まれた第1の客体ないし第k3の客体に対する第1の新規バウンディングボックスに対応される第1の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし第1の新規バウンディングボックスに対応される第k3の新規クラシフィケーションコンフィデンス、第k3の新規リグレッションアンサーティンティ及び第k3の新規プールドフィーチャーマップのそれぞれに少なくとも一つの第2のFC演算を適用して第1の新規バウンディングボックスに対応される第1の新規インターミディエートアクセプタンススコア(intermediate acceptance score)及び第1の新規インターミディエートリジェクションスコア(intermediate rejection score)ないし第k3の新規バウンディングボックスに対応される第k3の新規インターミディエートアクセプタンススコア及び第k3の新規インターミディエートリジェクションスコアを生成させることができる。
【0085】
ここで、自己学習装置2000は、ディープQ‐ネットワーク200に、第1の新規プールドフィーチャーマップないし第k3の新規プールドフィーチャーマップに少なくとも一つの1×1コンボリューション演算と一つのm×mコンボリューション演算とを適用して第1の新規フィーチャー値ないし第k3の新規フィーチャー値を生成した後、第1の新規クラシフィケーションコンフィデンスないし第k3の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティないし第k3の新規リグレッションアンサーティンティ及び第1の新規フィーチャー値ないし第k3の新規フィーチャー値に少なくとも一つのFC演算を適用するようにして第1の新規インターミディエートアクセプタンススコアないし第k3の新規インターミディエートアクセプタンススコアと第1の新規インターミディエートリジェクションスコアないし第k3の新規インターミディエートリジェクションスコアとを生成させることができる。これを通じて、新規ステートセットにおける各要素、すなわち、第1の新規クラシフィケーションコンフィデンスないし第k3の新規クラシフィケーションコンフィデンス、第1の新規リグレッションアンサーティンティないし第k3の新規リグレッションアンサーティンティ及び第1の新規プールドフィーチャーマップないし第k3の新規プールドフィーチャーマップのデータフォーマットを同一または類似にした後、第2のFC演算を遂行させることができる。
【0086】
次に、自己学習装置2000は、第1の新規インターミディエートアクセプタンススコアないし第k3の新規インターミディエートアクセプタンススコアを平均演算して新規アクセプタンススコアを生成するようにし、第1の新規インターミディエートリジェクションスコアないし第k3の新規インターミディエートリジェクションスコアを平均演算して新規リジェクションスコアを生成させることで新規アクセプタンススコアと新規リジェクションスコアとを含む新規Q値(Q‐Value)を生成させることができる。
【0087】
次いで、自己学習装置2000はディープQ‐ネットワーク200の新規Q値(Q‐value)にargmax関数を適用して生成した新規アクションを参照して新規アクションが新規ラベルなしのイメージのアクセプタンス(acceptance)に対応される場合、新規オブジェクトディテクション情報を新規ラベルなしのイメージにラベルとして追加した新規ラベル付きのイメージを学習データとして学習データベースに追加させ、新規ラベルなしのイメージを新規ラベルなしのデータベースから削除し、学習データベースに含まれた少なくとも一つの学習データを利用してディテクションネットワークを再学習させることができる。
【0088】
一方、自己学習装置2000は新規Q値(Q‐Value)にargMax関数を適用して生成したアクションを参照して新規アクションが新規ラベルなしのイメージのリジェクション(rejection)に対応される場合、新規ラベルなしのイメージを新規ラベルなしのデータベースから削除することができる。
【0089】
前記のようなディテクションネットワーク100に対する自己教師あり(self‐supervised)学習は以下のような擬似コード(pseudocode)を利用して遂行されることができる。以下の擬似コード(pseudocode)において、ディープQ‐ネットワーク200はQ‐Netで、ディテクションネットワーク100はDetection‐Netで表されている。以下の擬似コード(pseudocode)によると、自己学習装置2000は新規ラベルなしのデータベースから新規ラベルなしのイメージが獲得される度に新規ステートセット、新規Q値(Q‐value)及び新規アクションを生成してディテクションネットワーク100に対する学習を進めることができる。
【0090】
【0091】
一方、前記ディテクションネットワーク100の自己教師あり学習に利用された学習データベースは、ディープQ‐ネットワークの強化学習の時にディテクションネットワーク100の学習データとして使われたデータを含むことができるが、これに限定されるものではなく、ディープQ‐ネットワークの強化学習の時にディテクションネットワーク100の学習データとして使われたデータの代わりに新規学習データを含む学習データベースである。
【0092】
また、自己学習装置2000は前記ディテクションネットワーク100や前記ディテクションネットワーク100とは異なるディテクションネットワークを使用して新規ラベルなしのデータベースから選択された新規ラベルなしのイメージに対する新規オブジェクトディテクション情報を生成させることができる。すなわち、ディープQ‐ネットワーク200の強化学習に利用されたディテクションネットワーク100ではない他のディテクションネットワークの自己教師あり学習に強化学習を通じて学習されたディープQ‐ネットワーク200が使われることができる。
【0093】
以上で説明された本発明による実施例は多様なコンピューター構成要素を通じて遂行できるプログラム命令語の形態で具現され、コンピューターの読み取り可能な記録媒体に記録されることができる。前記コンピューターの読み取り可能な記録媒体は、プログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記コンピューターの読み取り可能な記録媒体に記録されるプログラム命令語は、本発明のために特別設計されて構成されたものであるか、またはコンピューターソフトウェア分野の当業者に公知されて使用可能なものであってもよい。コンピューターの読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、CD‐ROM、DVDのような光記録媒体、フロプティカルディスク(floptical disk)のような磁気‐光媒体(magneto‐optical media)、及びROM、RAM、フラッシュメモリなどのようなプログラム命令語を格納して遂行するように特別構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作われるもののような機械語コードのみならず、インタプリタなどを使用してコンピューターによって実行されることができる高級言語コードも含まれる。前記ハードウェア装置は、本発明による処理を行うために一つ以上のソフトウェアモジュールとして作動するように構成されることができるし、その逆も同様である。
【0094】
以上、本発明が具体的な構成要素などのような特定事項と、限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明が前記実施例に限定されるものではなく、本発明が属する技術分野における通常の知識を有する者であれば、このような記載から多様な修正及び変形を図ることができる。
【0095】
したがって、本発明の思想は前記説明された実施例に限って決まってはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等に、または等価的に変形された全てのものなどは本発明の思想の範疇に属するものとする。