(57)【要約】      （修正有）【課題】開集合の認識の問題のためのニューラルネットワークを簡単且つ有効に構築する。【解決手段】ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定し、制御ユニットのパラメータに基づいて、探索空間中のアーキテクチャパラメータをサンプリングすることで、サブニューラルネットワークアーキテクチャを生成し、クラス間損失及び中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行い、分類精度及び特徴分布スコアに基づいて、各サブニューラルネットワークアーキテクチャの奨励スコアを計算し、奨励スコアを制御ユニットにフィードバックし、奨励スコアがより大きくなる方向に向けて制御ユニットのパラメータを調整し、制御ステップ、訓練ステップ、奨励スコア計算ステップ及び調整ステップの処理を、所定の反復終了条件を満たすまで実行する。【選択図】図５
2020042796.tif 000002
【特許請求の範囲】
【請求項１】
ニューラルネットワークアーキテクチャ探索装置であって、
ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するための探索空間限定ユニット；
制御ユニットであって、前記制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するための制御ユニット；
訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失、及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うための訓練ユニット；
検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度、及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、また、各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するための奨励スコア計算ユニット；及び
前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整するための調整ユニットを含み、
前記制御ユニット、前記訓練ユニット、前記奨励スコア計算ユニット及び前記調整ユニットにおける処理が、所定の反復終了条件を満たすまで反復して実行される、探索装置。
【請求項２】
請求項1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記探索空間限定ユニットは、開集合の認識について前記探索空間を限定する、探索装置。
【請求項３】
請求項2に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記探索空間限定ユニットは、前記ニューラルネットワークアーキテクチャが、直列アレンジされる所定数量の、サンプルの特徴の変換のためのブロックユニット及び前記所定数量の、サンプルの特徴の統合のための特徴統合層を含むように限定し、各ブロックユニットの後に１つの前記特徴統合層が設けられ、また、予め、前記所定数量の特徴統合層のうちの各特徴統合層の構造を限定するように構成され、
前記制御ユニットは、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、前記所定数量のブロックユニットのうちの各ブロックユニットを形成することで、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャを生成するように構成される、探索装置。
【請求項４】
請求項1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記特徴分布スコアは、同一クラスに属するサンプルの特徴間の集合度を表す中心損失に基づいて計算され、
前記分類精度は、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失に基づいて計算される、探索装置。
【請求項５】
請求項1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記アーキテクチャパラメータの集合は、3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、及び恒等残差ノー・スキップの任意の組み合わせを含む、探索装置。
【請求項６】
請求項1に記載のニューラルネットワークアーキテクチャ探索装置であって、
反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、開集合の認識に用いられる、探索装置。
【請求項７】
請求項1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記制御ユニットは、再帰型ニューラルネットワークを含む、探索装置。
【請求項８】
ニューラルネットワークアーキテクチャ探索方法であって、
ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定する探索空間限定ステップ；
制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成する制御ステップ；
訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失、及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行う訓練ステップ；
検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度、及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算する奨励スコア計算ステップ；及び
前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整する調整ステップを含み、
前記制御ステップ、前記訓練ステップ、前記奨励スコア計算ステップ及び前記調整ステップにおける処理を、所定の反復終了条件を満たすまで反復して実行する、探索方法。
【請求項９】
請求項8に記載のニューラルネットワークアーキテクチャ探索方法であって、
前記探索空間限定ステップでは、開集合の認識について前記探索空間を限定する、探索方法。
【請求項１０】
プログラムを記憶したコンピュータ可読記憶媒体であって、
前記プログラムは、コンピュータに、請求項8又は9に記載のニューラルネットワークアーキテクチャ探索方法を実行させるためのものである、記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理分野に関し、特に、ニューラルネットワークアーキテクチャ探索装置と方法及びコンピュータ可読記憶媒体に関する。
【背景技術】
【０００２】
今のところ、畳み込みニューラルネットワークが発達しているため、閉集合の認識の問題が既に解決されている。しかし、実際の応用シナリオでは、開集合の認識の問題が存在する。例えば、顔認識及びオブジェクト認識が典型的な開集合の認識の問題である。開集合の認識の問題には、複数の既知のクラスがあるが、多くの未知のクラスも存在する。開集合の認識は、正常な閉集合の認識タスクに用いるニューラルネットワークよりも汎用なニューラルネットワークを要する。よって、開集合の認識の問題のためのニューラルネットワークを簡単且つ有効に構築し得る方法が望ましい。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
上述の問題に鑑み、本開示の目的は、従来技術中の１つ又は複数の欠点を解決し得るニューラルネットワークアーキテクチャ探索装置と方法及び分類装置と方法を提供することにある。
【課題を解決するための手段】
【０００４】
本開示の一側面によれば、ニューラルネットワークアーキテクチャ探索装置が提供され、前記装置は、
ニューラルネットワークアーキテクチャの探索空間限定ユニットであって、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するためのもの；
制御ユニットであって、前記制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するためのもの；
訓練ユニットであって、訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うためのもの；
奨励スコア計算ユニットであって、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するもの；及び
調整ユニットであって、前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整するためのものを含み、
そのうち、前記制御ユニット、前記訓練ユニット、前記奨励スコア計算ユニット及び前記調整ユニット中の処理を、所定の反復終了条件を満たすまで反復（iteration）して行う。
【０００５】
本開示の他の側面によれば、ニューラルネットワークアーキテクチャ探索方法が提供され、前記方法は、
ニューラルネットワークアーキテクチャの探索空間限定ステップであって、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するもの；
制御ステップであって、制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するもの；
訓練ステップであって、訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うもの；
奨励スコア計算ステップであって、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するもの；及び
調整ステップであって、前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整するものを含み、
そのうち、前記制御ステップ、前記訓練ステップ、前記奨励スコア計算ステップ及び前記調整ステップ中の処理を、所定の反復終了条件を満たすまで反復して行う。
【０００６】
本開示の他の側面によれば、プログラムを記憶したコンピュータ可読記憶媒体が提供さされ、前記プログラムは、コンピュータに、前述のニューラルネットワークアーキテクチャ探索方法を実行させるためのものである。
【０００７】
本開示の他の側面によれば、さらに、前述のニューラルネットワークアーキテクチャ探索方法を実現するためのコンピュータプログラムコード及びコンピュータプログラムプロダクトが提供される。
【図面の簡単な説明】
【０００８】
【図１】本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置の一例の機能ブロック図である。
【図２】本開示の実施例におけるニューラルネットワークアーキテクチャの一例を示す図である。
【図３ａ】本開示の実施例において再帰型ニューラルネットワークRNNに基づく制御ユニットが探索空間中のアーキテクチャパラメータに対してサンプリングを行う一例を示す図である。
【図３ｂ】本開示の実施例において再帰型ニューラルネットワークRNNに基づく制御ユニットが探索空間中のアーキテクチャパラメータに対してサンプリングを行う一例を示す図である。
【図３ｃ】本開示の実施例において再帰型ニューラルネットワークRNNに基づく制御ユニットが探索空間中のアーキテクチャパラメータに対してサンプリングを行う一例を示す図である。
【図４】本開示の実施例におけるブロックユニットの構造の一例を示す図である。
【図５】本開示の実施例におけるニューラルネットワークアーキテクチャ探索方法の一例のフローチャートである。
【図６】本開示の実施例に採用され得る汎用コンピュータの構造の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、添付した図面を参照しながら、本開示を実施するための好適な形態を詳細に説明する。なお、このような実施形態は、例示に過ぎず、本開示を限定するものでない。
【００１０】
まず、図1を参照しながら、本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100の機能ブロック図について説明する。図1は、本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100の一例の機能ブロック図である。図1に示すように、本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100は、ニューラルネットワークアーキテクチャの探索空間限定ユニット102、制御ユニット104、訓練ユニット106、奨励スコア計算ユニット108、及び調整ユニット110を含む。
【００１１】
ニューラルネットワークアーキテクチャの探索空間限定ユニット102は、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するように構成される。
【００１２】
ニューラルネットワークアーキテクチャは、該ニューラルネットワークを記述するためのアーキテクチャパラメータにより表すことができる。畳み込み層のみを有する最も簡単な畳み込みニューラルネットワークを例とすれば、各畳み込み層のパラメータは、５つがあり、即ち、畳み込みカーネルの数、畳み込みカーネルの高さ、畳み込みカーネルの幅、畳み込みカーネルのストライド（stride）の高さ、及び畳み込みカーネルのstrideの幅である。この場合、各畳み込み層は、このようなクイントゥープル（Quintuple（５つの要素からなる組））により表すことができる。
【００１３】
本開示の実施例におけるニューラルネットワークアーキテクチャの探索空間限定ユニット102は、探索空間を限定するように構成され、即ち、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの全体集合を限定する。アーキテクチャパラメータの全体集合が確定されてから、全体集合のうちから最適なニューラルネットワークアーキテクチャを見つけることができる。一例として、経験に基づいてニューラルネットワークアーキテクチャのアーキテクチャパラメータの全体集合を限定することができる。また、リアルな顔認識データベース、オブジェクト認識データベースなどに基づいて、ニューラルネットワークアーキテクチャのアーキテクチャパラメータの全体集合を限定しても良い。
【００１４】
制御ユニット104は、制御ユニット104のパラメータに基づいて、探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するように構成されても良い。
【００１５】
例えば、θで制御ユニット104の現在のパラメータを表すとすれば、制御ユニット104は、パラメータθを以て探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成する。そのうち、サンプリングにより得られたサブネットワークアーキテクチャの数が、実際の状況に応じて予め設定されても良い。
【００１６】
訓練ユニット106は、訓練集合中の全てのサンプルを用いて、少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、クラス間損失及び中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うように構成されても良い。
【００１７】
一例として、サンプルの特徴は、サンプルの特徴ベクトルであっても良い。この分野で良く用いられる方法によりサンプルの特徴を取得しても良いが、ここでは、その詳しい説明を省略する。
【００１８】
一例として、訓練ユニット106では、訓練集合中の各サンプルの特徴に基づいて、softmax損失を、各サブニューラルネットワークアーキテクチャのクラス間損失Lsとして計算することができる。softmax損失以外に、当業者は、クラス間損失の他の計算方法を採用しても良いが、ここでは、その詳しい説明を省略する。異なるクラス間の差をできるだけ大きくするために、即ち、できるだけ異なるクラスの特徴を分けるために、サブニューラルネットワークアーキテクチャに対して訓練を行うときに、クラス間損失をできるだけ小さくする必要がある。
【００１９】
顔画像認識、オブジェクト認識などのような開集合の認識の問題において、本開示の実施例では、さらに、訓練集合中の全てのサンプルに対して、各サブニューラルネットワークアーキテクチャについて、同一クラスに属するサンプルの特徴間の集合度を表す中心損失Lcを計算する。一例として、中心損失は、各サンプルの特徴と、該サンプルの属するクラスの中心特徴との間の距離に基づいて計算することができる。同一クラスに属するサンプルの特徴の差を小さくするために、即ち、同一クラスからの特徴をさらに寄せ集めるために、サブニューラルネットワークアーキテクチャに対して訓練を行うときに、中心損失をできるだけ小さくする必要がある。
【００２０】
本開示の実施例における損失関数Lは、以下のように表することができる。
【００２１】
L=Ls+ηLc  （1）
式（1）では、ηは、ハイパーパラメータであり、それは、損失関数Lにおいてクラス間損失Ls及び中心損失Lcのうちのどれが主導するかを決定することができ、また、経験に基づいてηを確定することができる。
【００２２】
訓練ユニット106は、損失関数Lを最小化することを目標として、各サブニューラルネットワークアーキテクチャに対して訓練を行うことで、各子ニューラルネットワークのアーキテクチャパラメータの値を確定することができ、即ち、訓練後の各サブニューラルネットワークアーキテクチャを得ることができる。
【００２３】
訓練ユニット106は、クラス間損失及び中心損失の両方に基づいて、各サブニューラルネットワークアーキテクチャに対して訓練を行うため、異なるクラスに属するサンプルの特徴をさらに分離し得ると同時に、同一クラスに属するサンプルの特徴をさらに寄せ集めることができる。このように、開集合の認識の問題において、テスト待ち画像が既知のクラスに属するかそれとも未知のクラスに属するかをより容易に判断することができる。
【００２４】
奨励スコア計算ユニット108は、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの分類精度及び特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するように構成されても良い。
【００２５】
好ましくは、特徴分布スコアは、同一クラスに属するサンプルの特徴間の集合度を表す中心損失に基づいて計算され、分類精度は、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失に基づいて計算される。
【００２６】
例えば、ωで訓練後の１つのサブニューラルネットワークアーキテクチャのパラメータ（即ち、該１つのサブニューラルネットワークアーキテクチャのアーキテクチャパラメータの値）を表し、該１つのサブニューラルネットワークアーキテクチャの分類精度をAcc_s(ω)と表し、また、その特徴分布スコアをFd_c(ω)と表すとする。この場合、奨励スコア計算ユニット108は、検証集合中の全てのサンプルを用いて、該１つのサブニューラルネットワークアーキテクチャについて、クラス間損失Lsを計算し、そして、計算したクラス間損失Lsに基づいて分類精度Acc_s(ω)を計算する。よって、分類精度Acc_s(ω)は、異なるクラスに属するサンプルに対して行われる分類の分類精度を表すことができる。また、奨励スコア計算ユニット108は、検証集合中の全てのサンプルを用いて、該１つのサブニューラルネットワークアーキテクチャについて、中心損失Lcを計算し、そして、計算した中心損失Lcに基づいて、特徴分布スコアFd_c(ω)を計算する。よって、特徴分布スコアFd_c(ω)は、同一クラスに属するサンプルの特徴間のコンパクトさを表すことができる。
【００２７】
該１つのサブニューラルネットワークアーキテクチャの奨励スコアR(ω)は、以下のように定義することができる。
【００２８】
R(ω)=Acc_s(ω)+ρFd_c(ω)  （2）
式（2）では、ρは、ハイパーパラメータである。一例として、経験に基づいて、ρを、分類精度Acc_s(ω)及び特徴分布スコアFd_c(ω)が同程度の大きさになるように確定しても良く、また、ρは、奨励スコアR(ω)において分類精度Acc_s(ω)及び特徴分布スコアFd_c(ω)のうちのどれが主導するかを決定することができる。
【００２９】
奨励スコア計算ユニット108は、分類精度及び特徴分布スコアの両方に基づいて奨励スコアを計算するため、奨励スコアは、分類精度を表すことができるのみならず、同一クラスに属するサンプルの特徴間のコンパクトさを表すこともできる。
【００３０】
調整ユニット110は、奨励スコアを制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの奨励スコアがより大きくなる方向に向けて制御ユニットのパラメータを調整するように構成されても良い。
【００３１】
制御ユニット104のパラメータがθのときに、サンプリングにより得られた少なくとも１つのサブニューラルネットワークアーキテクチャについて、各サブニューラルネットワークアーキテクチャの奨励スコアに基づいて一組の奨励スコアを取得し、該一組の奨励スコアをR’(ω)と表す。また、EP（θ）[R’(ω)]でR’(ω)の期待値を表す。ここで、その目的は、ある最適方策P(θ)の下で、制御ユニット104のパラメータθを調整して、R’(ω)の期待値が最大になるようにさせることにある。一例として、サンプリングにより１つのみのサブネットワークアーキテクチャが得られている場合、その目的は、ある最適方策P(θ)の下で、制御ユニット104のパラメータθを調整して、前記１つのサブネットワークアーキテクチャの奨励スコアが最大になるようにさせることにある。
【００３２】
一例として、強化学習に良く用いられる最適方策を用いて最適化を行うことができる。例えば、近接方策最適化（Proximal  Policy  Optimization）又は勾配方策最適化を使用することができる。
【００３３】
一例として、前記少なくとも１つのサブニューラルネットワークアーキテクチャの一組の奨励スコアの期待値がより大きい方向に向けて制御ユニット104のパラメータθを調整する。一例として、前記一組の奨励スコア及び制御ユニット104の現在のパラメータθに基づいて、制御ユニット104の調整後のパラメータを生成することができる。
【００３４】
上述のように、奨励スコアは、分類精度を表すことができるだけでなく、同一クラスに属するサンプルの特徴間のコンパクトさを表すこともできる。本開示の実施例における調整ユニット110が、上述の奨励スコアに基づいて制御ユニットのパラメータを調整することで、制御ユニットは、その調整後のパラメータに基づいて、サンプリングにより、奨励スコアがより大きくなるサブニューラルネットワークアーキテクチャを取得することができるので、開集合の認識の問題において、該開集合にさらに適したニューラルネットワークアーキテクチャを探索することができる。
【００３５】
本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100では、制御ユニット104、訓練ユニット106、奨励スコア計算ユニット108、及び調整ユニット110中の処理を、所定の反復終了条件を満たすまで反復して行う。
【００３６】
一例として、後続の毎回の反復では、制御ユニット104は、その調整後のパラメータに基づいて、再び探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成する。訓練ユニット106は、再び生成された各サブニューラルネットワークアーキテクチャに対して訓練を行い、奨励スコア計算ユニット108は、その訓練後の各サブニューラルネットワークアーキテクチャの奨励スコアを計算し、そして、調整ユニット110は、さらに、奨励スコアを制御ユニット104にフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの一組の奨励スコアがより大きくなる方向に向けて再び制御ユニット104のパラメータを調整する。
【００３７】
一例として、反復終了条件は、前記少なくとも１つのサブニューラルネットワークアーキテクチャのパフォーマンスが十分に良く（例えば、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記一組奨励スコアが所定条件を満たすこと）又は最大反復回数に達することである。
【００３８】
以上のことから、本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100は、制御ユニット104、訓練ユニット106、奨励スコア計算ユニット108、及び調整ユニット110中の処理を反復して行うことで、ある実際の開集合の認識の問題において、既に存在している一部の教師データ（訓練集合中のサンプル及び検証集合のサンプル）を用いて、該開集合に適した１つのニューラルネットワークアーキテクチャを自動探索し、これにより、開集合の認識の問題のために、より強い汎用性を有するニューラルネットワークアーキテクチャを容易且つ有効に構築することができる。
【００３９】
好ましくは、開集合の認識の問題をより良く解決し、該開集合にさらに適した１つのニューラルネットワークアーキテクチャを自動探索し得るために、ニューラルネットワークアーキテクチャの探索空間限定ユニット102は、開集合の認識について探索空間を限定するように構成されても良い。
【００４０】
好ましくは、ニューラルネットワークアーキテクチャの探索空間限定ユニット102は、ニューラルネットワークアーキテクチャが、直列アレンジされる所定数量の、サンプルの特徴に対して変換を行うためのブロックユニット、及び前記所定数量の、サンプルの特徴に対して統合を行うための特徴統合層を含むように限定しても良く、そのうち、各ブロックユニットの後に１つの前記特徴統合層が設けられ、且つ、ニューラルネットワークアーキテクチャの探索空間限定ユニット102は、予め、前記所定数量の特徴統合層中の各特徴統合層の構造を限定しても良く、また、制御ユニット104は、探索空間中のアーキテクチャパラメータに対してサンプリングを行い、前記所定数量のブロックユニット中の各ブロックユニットを形成することで、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャを生成しても良い。
【００４１】
一例として、リアルな顔認識データベース、オブジェクト認識データベースなどに基づいて、ニューラルネットワークアーキテクチャを限定しても良い。
【００４２】
一例として、特徴統合層は、畳み込み層であっても良い。
【００４３】
図2は、本開示の実施例におけるニューラルネットワークアーキテクチャの一例を示す図である。ニューラルネットワークアーキテクチャの探索空間限定ユニット102は、予め、N個の特徴統合層のうちの各特徴統合層の構造を畳み込み層に限定する。図2に示すように、ニューラルネットワークアーキテクチャは、１つの特徴抽出層（即ち、畳み込み層Conv  0）を有し、該特徴抽出層は、入力される画像の特徴を抽出するために用いられる。また、ニューラルネットワークアーキテクチャは、直列アレンジされるN個のブロックユニット（ブロックユニット1、…、ブロックユニットN）及びN個の特徴統合層（即ち、畳み込み層Conv  1、…、Conv  N）を有し、そのうち、各ブロックユニットの後に１つの特徴統合層が設けられ、Nは、1以上の整数である。
【００４４】
各ブロックユニットは、若干個の操作の任意の組み合わせからなるM個の層を含んでも良く、各ブロックユニットは、それに含まれる操作により、画像の特徴に対して変換などの処理を行うために用いられる。そのうち、Mは、処理待ちタスクの複雑度に基づいて予め確定されても良く、Mは、1以上の整数である。本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置100が行う探索（具体的には、制御ユニット104がそのパラメータに基づいて探索空間中のアーキテクチャパラメータに対して行うサンプリング）により、N個のブロックユニットの具体的な構造を確定し、即ち、N個のブロックユニットが具体的にどのような操作を含むかを確定する。探索によりN個のブロックユニットの構造を確定した後に、１つの具体的なニューラルネットワークアーキテクチャ（より具体的には、サンプリングにより得られたサブニューラルネットワークアーキテクチャ）を得ることができる。
【００４５】
好ましくは、アーキテクチャパラメータの集合は、3x3畳み込みカーネル（3x3のKernel）、5x5畳み込みカーネル（5x5のKernel）、3x3深さ方向分離可能な畳み込み（3x3のDepthwise  Separable  Convolution）、5x5深さ方向分離可能な畳み込み（5x5のDepthwise  Separable  Convolution）、3x3最大プーリング（3x3のMax  Pooling）、3x3平均プーリング（3x3のAverage  Pooling）、恒等（Identity）残差（Residual）スキップ（Skip（Shortcut）  Connection）、恒等残差ノー・スキップ（No  Skip  Connection）の任意の組み合わせを含む。一例として、上述の3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、恒等残差ノー・スキップの任意の組み合わせは、全て、上述のN個のブロックユニット中の各層に含まれる操作とされても良い。上述のアーキテクチャパラメータの集合は、開集合の認識の問題の解決に、より一層適したものである。
【００４６】
アーキテクチャパラメータの集合は、上述の操作に限定されない。一例として、アーキテクチャパラメータの集合は、さらに、1x1畳み込みカーネル、7x7畳み込みカーネル、1x1深さ方向分離可能な畳み込み、7x7深さ方向分離可能な畳み込み、1x1最大プーリング、5x5最大プーリング、1x1平均プーリング、5x5平均プーリングなどの操作を含んでも良い。
【００４７】
好ましくは、制御ユニットは、再帰型ニューラルネットワークRNNを含んでも良い。奨励スコア及び、RNNを含む制御ユニットの現在のパラメータに基づいて、RNNを含む制御ユニットの調整後のパラメータを生成しても良い。
【００４８】
サンプリングにより得られたサブニューラルネットワークアーキテクチャの数は、該RNNの長さの入力の次元数に関連する。以下、明確にするために、RNNを含む制御ユニット104をRNNに基づく制御ユニット104と称する。
【００４９】
図3a〜3cは、本開示の実施例においてRNNに基づく制御ユニット104が探索空間中のアーキテクチャパラメータに対してサンプリングを行う一例を示す図である。
【００５０】
以下、説明の便宜のため、Sep  5x5で5x5深さ方向分離可能な畳み込みを表し、skipで恒等残差スキップを表し、Conv  1x1で1x1畳み込みカーネルを表し、Conv  5x5で5x5畳み込みカーネルを表し、No  skipで恒等残差ノー・スキップを表し、Max  poolで最大プーリングを表すとする。
【００５１】
図3aから分かるように、RNNに基づく制御ユニット104のパラメータに基づいて、第一ステップのRNNのサンプリングにより得られた操作は、sep  5x5であり、その基本的な構造は、図3bに示すようであり、図3aでは、それを“1”と記す。
【００５２】
図3aから分かるように、RNNの第一ステップのサンプリングにより得られた値及びRNNの第二ステップのサンプリングのパラメータに基づいて、第二ステップの操作がskipであると確定することができ、その基本的な構造は、図3cに示すようであり、図3aでは、それを“2”と記す。
【００５３】
続いて、図3aのRNNの第三ステップの操作がConv  5x5であると確定し、そのうち、Conv  5x5の入力は、図3a中の“1”及び“2”の結合である（図3aでは、小円（circle）の中の“1，2”で示される）。
【００５４】
図3aにおけるRNNのサンプリングの第四ステップの操作は、no  skipであり、操作が要らない。
【００５５】
図3aにおけるRNNのサンプリングの第五ステップの操作は、max  poolであり、図3a では、“4”と記すべきである（図3aでは、省略されている）。
【００５６】
図3aに示すようなRNNに基づく制御ユニット104が探索空間中のアーキテクチャパラメータに対して行うサンプリングにより、図4に示すようなブロックユニットの具体的な構造を得ることができる。図4は、本開示の実施例におけるブロックユニットの構造の一例を示す図である。図4に示すように、ブロックユニットには、操作Conv  1x1、Sep  5x5、Conv  5x5、及びMax  poolが含まれる。
【００５７】
得られたブロックユニットの具体的な構造を図2に示すニューラルネットワークアーキテクチャ中のブロックユニットに入れると、１つのサブニューラルネットワークアーキテクチャを生成することができ、即ち、本開示の実施例におけるニューラルネットワークアーキテクチャの１つの具体的な構造（より具体的には、サンプリングにより得られたサブニューラルネットワークアーキテクチャ）を取得することができる。各ブロックユニットの構造は、異なっても良い。一例として、N個のブロックユニットの構造が同じであるとすれば、図4に示すようなブロックユニットの具体的な構造を図2に示すニューラルネットワークアーキテクチャ中の各ブロックユニットに入れることで、１つのサブニューラルネットワークアーキテクチャを生成することができる。
【００５８】
好ましくは、反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、開集合の認識のために用いられる。一例として、反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、例えば、顔画像認識、オブジェクト認識などの開集合の認識に用いることができる。
【００５９】
また、上述のニューラルネットワークアーキテクチャ探索装置の実施例に対応して、本開示は、さらに、以下のようなニューラルネットワークアーキテクチャ探索方法の実施例を提供する。
【００６０】
図5は、本開示の実施例におけるニューラルネットワークアーキテクチャ探索方法500の一例のフローチャートである。
【００６１】
図5に示すように、本開示の実施例におけるニューラルネットワークアーキテクチャ探索方法500は、ニューラルネットワークアーキテクチャの探索空間限定ステップS502、制御ステップS504、訓練ステップS506、奨励スコア計算ステップS508、及び調整ステップS510を含む。
【００６２】
ニューラルネットワークアーキテクチャの探索空間限定ステップS502では、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定する。
【００６３】
ニューラルネットワークアーキテクチャは、該ニューラルネットワークを記述するためのアーキテクチャパラメータで表すことができる。一例として、経験に基づいてニューラルネットワークアーキテクチャのアーキテクチャパラメータの全体集合を限定することができる。また、リアルな顔認識データベース、オブジェクト認識データベースなどに基づいて、ニューラルネットワークアーキテクチャのアーキテクチャパラメータの全体集合を限定しても良い。
【００６４】
制御ステップS504では、制御ユニットのパラメータに基づいて、探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成する。そのうち、サンプリングにより得られたサブネットワークアーキテクチャの数が、実際の状況に応じて予め設定されても良い。
【００６５】
訓練ステップS506では、訓練集合中の全てのサンプルを用いて、少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、クラス間損失及び中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行う。
【００６６】
一例として、サンプルの特徴は、サンプルの特徴ベクトルであっても良い。
【００６７】
クラス間損失及び中心損失の計算に関する具体例に関しては、上述の装置の実施例中の対応する部分、例えば、訓練ユニット106についての説明を参照することができるため、ここでは、その詳しい説明を省略する。
【００６８】
訓練ステップS506では、クラス間損失及び中心損失の両方に基づいて、各サブニューラルネットワークアーキテクチャに対して訓練を行うため、異なるクラスに属するサンプルの特徴を更に分離すると同時に、同一クラスに属するサンプルの特徴を更に寄せ集めることができる。このように、開集合の認識の問題において、テスト待ち画像が既知のクラスに属するかそれとも未知のクラスに属するかをより容易に判断することができる。
【００６９】
奨励スコア計算ステップS508では、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度、及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの分類精度及び特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算する。
【００７０】
好ましくは、特徴分布スコアは、同一クラスに属するサンプルの特徴間の集合度を表す中心損失に基づいて計算されるものであり、また、分類精度は、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失に基づいて計算されるものである。
【００７１】
分類精度、特徴分布スコア、及び奨励スコアの計算の具体例に関しては、上述の装置の実施例中の対応する部分、例えば、奨励スコア計算ユニット108についての説明を参照することができるため、ここでは、その詳しい説明を省略する。
【００７２】
奨励スコア計算ステップS508では、分類精度及び特徴分布スコアの両方に基づいて奨励スコアを計算するため、奨励スコアは、分類精度を表すことができるだけでなく、同一クラスに属するサンプルの特徴間のコンパクトさを表すこともできる。
【００７３】
調整ステップS510では、奨励スコアを制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの奨励スコアがより大きくなる方向に向けて制御ユニットのパラメータを調整する。
【００７４】
前記少なくとも１つのサブニューラルネットワークアーキテクチャの奨励スコアがより大きくなる方向に向けて制御ユニットのパラメータを調整する具体例に関しては、上述の装置の実施例中の対応する部分、例えば、調整ユニット110についての説明を参照することができるから、ここでは、その説明を省略する。
【００７５】
上述のように、奨励スコアは、分類精度を表すことができるのみならず、同一クラスに属するサンプルの特徴間のコンパクトさを表すこともできる。調整ステップS510では、上述の奨励スコアに基づいて制御ユニットのパラメータを調整することで、制御ユニットは、その調整後のパラメータに基づいて、奨励スコアをより大きくし得るサブニューラルネットワークアーキテクチャをサンプリングにより得ることができるので、開集合の認識の問題において、該開集合に、より一層適したニューラルネットワークアーキテクチャを探索することができる。
【００７６】
本開示の実施例におけるニューラルネットワークアーキテクチャ探索方法500では、制御ステップS504、訓練ステップS506、奨励スコア計算ステップS508、及び調整ステップS510中の処理を、所定の反復終了条件を満たすまで反復して行う。
【００７７】
反復処理の具体例に関しては、上述の装置の実施例中の対応する部分の説明を参照することができるため、ここでは、その詳しい説明を省略する。
【００７８】
以上のことから、本開示の実施例におけるニューラルネットワークアーキテクチャ探索方法500では、制御ステップS504、訓練ステップS506、奨励スコア計算ステップS508、及び調整ステップS510の処理を反復して実行し、ある実際の開集合の認識の問題において、既に存在している一部の教師データ（訓練集合中のサンプル及び検証集合のサンプル）を用いて、該開集合に適した１つのニューラルネットワークアーキテクチャを自動探索することができ、これにより、開集合の認識の問題のために、より強い汎用性のニューラルネットワークアーキテクチャを容易且つ有効に構築することができる。
【００７９】
好ましくは、開集合の認識の問題をより良く解決し、該開集合にさらに適したニューラルネットワークアーキテクチャを自動探索し得るために、ニューラルネットワークアーキテクチャの探索空間限定ステップS502では、開集合の認識について探索空間を限定する。
【００８０】
好ましくは、ニューラルネットワークアーキテクチャの探索空間限定ステップS502では、ニューラルネットワークアーキテクチャが、直列アレンジされる所定数量の、サンプルの特徴の変換のためのブロックユニット及び前記所定数量の、サンプルの特徴の統合のための特徴統合層を含むように限定し、そのうち、各ブロックユニットの後に１つの前記特徴統合層が設けられ、且つニューラルネットワークアーキテクチャの探索空間限定ステップS502では、予め、前記所定数量の特徴統合層中の各特徴統合層の構造を限定し、また、制御ステップS504では、制御ユニットのパラメータに基づいて、探索空間中のアーキテクチャパラメータに対してサンプリングを行い、前記所定数量のブロックユニット中の各ブロックユニットを生成することで、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャを生成する。
【００８１】
一例として、リアルな顔認識データベース、オブジェクト認識データベースなどに基づいてニューラルネットワークアーキテクチャを限定しても良い。
【００８２】
ブロックユニット及びニューラルネットワークアーキテクチャの具体例に関しては、上述の装置の実施例中の対応する部分、例えば、図2及び図3a〜3cの説明を参照することができるため、ここでは、その詳しい説明を省略する。
【００８３】
好ましくは、アーキテクチャパラメータの集合は、3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、恒等残差ノー・スキップの任意の組み合わせを含んでも良い。一例として、上述の3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、恒等残差ノー・スキップの任意の組み合わせは、全て、ブロックユニット中の各層に含まれる操作とされても良い。
【００８４】
アーキテクチャパラメータの集合は、上述の操作に限定されない。一例として、アーキテクチャパラメータの集合は、さらに、1x1畳み込みカーネル、7x7畳み込みカーネル、1x1深さ方向分離可能な畳み込み、7x7深さ方向分離可能な畳み込み、1x1最大プーリング、5x5最大プーリング、1x1平均プーリング、5x5平均プーリングなどを含んでも良い。
【００８５】
好ましくは、反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、開集合の認識に用いられる。一例として、反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、例えば、顔画像認識、オブジェクト認識などの開集合の認識に用いることができる。
【００８６】
なお、以上、本開示の実施例におけるニューラルネットワークアーキテクチャ探索装置の機能配置について説明したが、これは、例示に過ぎず、当業者は、本開示の原理に基づいて上述の実施例に対して変更・変形を行っても良い。例えば、各実施例中の機能ブロックに対して追加、削除又は組み合わせを行っても良いが、これらは、全て、本開示の範囲に属する。
【００８７】
また、ここでの方法の実施例は、上述の装置の実施例に対応するため、方法の実施例で詳しく説明されない内容は、装置の実施例中の対応する部分の記載を参照することができ、ここでは、その詳しい記載を割愛する。
【００８８】
また、本開示は、さらに、記憶媒体及びプログラムプロダクトを提供する。本開示の実施例における記憶媒体及びプログラムプロダクト中のマシン実行可能な指令は、上述のニューラルネットワークアーキテクチャ探索方法を実行するように構成されても良い。よって、ここで詳細に説明されない内容は、上述の対応する部分の記載を参照することができ、ここでは、その重複記載を省略する。
【００８９】
さらに、本開示の目的は、次のような方式で実現されても良く、即ち、上述の実行可能なプログラムコードを含む記憶媒体を直接又は間接的にシステム又は機器に提供し、該システム又は機器中のコンピュータ又は中央処理ユニット（CPU）は、上述のプログラムコードを読み取って実行することである。このときに、該システム又は機器はプログラムを実行し得る機能を有すれば良い。なお、本開示の実施方式は、プログラムに限定されず、また、該プログラムは、任意の形式のものであっても良く、例えば、オブジェクトプログラム、インタプリタ実行のプログラム、又は、オペレーティングシステムに提供するスクリプトプログラムなどであっても良い。
【００９０】
これらのマシン可読記憶媒体は、各種の記憶デバイス、記憶ユニット、半導体記憶装置、ディスクユニット、例えば、光、磁気、及び光磁気ディスク、並びに、記憶情報を記憶し得る他の媒体などを含んでも良いが、これに限定されない。
【００９１】
また、コンピュータがインターネット上のウェブサイトにアクセスし、本開示によるコンピュータプログラムコードをダウンロードしてインストールし、その後、該プログラムを実行することにより、本開示による技術案を実現することもできる。
【００９２】
なお、上述の一連の処理は、ソフトウェア及び／又はファームウェアにより実現されても良い。ソフトウェア及び／又はファームウェアにより実現される場合、記憶媒体又はネットワークから、専用ハードウェアを有するコンピュータ、例えば、図6に示す汎用コンピュータ600に、該ソフトウェアを構成するプログラムをインストールし、該コンピュータは、各種のプログラムがインストールされているときに、各種の機能を実行することができる。
【００９３】
図6は、本開示の実施例における装置及び方法を実現し得る汎用コンピュータの構成図である。
【００９４】
図6では、中央処理装置（CPU）601は、ROM  602に記憶されているプログラム又は記憶部608からRAM  603にロードされているプログラムに基づいて各種の処理を行う。RAM  603では、さらに、CPU  601が各種の処理などを実行するときに必要なデータを記憶しても良い。CPU  601、ROM  602、及びRAM  603は、バス604により互いに接続される。入力／出力インターフェース605もバス604に接続される。
【００９５】
また、次のような部品は、入力／出力インターフェース605に接続され、即ち、入力部606（キーボード、マウスなどを含む）、出力部607（表示器、例えば、CRT、LCDなど、及びスピーカーなどを含む）、記憶部608（ハードディスクなどを含む）、及び通信部609（ネットワーク・インターフェース・カード、例えば、LANカード、モデムなどを含む）というような部品である。通信部609は、ネットワーク、例えば、インターネットを経由して通信処理を行う。なお、必要に応じて、ドライブ610を入力／出力インターフェース605に接続させても良い。取り外し可能な媒体611、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体記憶器などは、必要に応じて、ドライブ610にセットされ、その中から読み出されたコンピュータプログラムが必要に応じて記憶部608にインスタールされるようにさせることができる。
【００９６】
また、本開示は、さらに、マシン可読指令コードを含むプログラムプロダクトを提供する。このような指令コードは、マシンにより読み取られて実行されるときに、上述の本開示の実施形態における方法を実行することができる。それ相応に、このようなプログラムプロダクトをキャリー（carry）する、例えば、磁気ディスク（フロッピーディスク（登録商標）を含む）、光ディスク（CD-ROM及びDVDを含む）、光磁気ディスク（MD（登録商標）を含む）、及び半導体記憶器などの各種記憶媒体も、本開示に含まれる。
【００９７】
上述の記憶媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体記憶器などを含んでも良いが、これらに限定されない。
【００９８】
また、本開示の上述の方法における各操作（処理）は、各種のマシン可読記憶媒体に記憶されているコンピュータ実行可能なプログラムの方式で実現することもできる。
【００９９】
また、以上の実施例などに関し、さらに以下のように付記として開示する。
【０１００】
（付記1）
ニューラルネットワークアーキテクチャ探索装置であって、
ニューラルネットワークアーキテクチャの探索空間限定ユニットであって、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するためのもの；
制御ユニットであって、前記制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するためのもの；
訓練ユニットであって、訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うためのもの；
奨励スコア計算ユニットであって、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度、及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するためのもの；及び
調整ユニットであって、前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整するためのものを含み、
前記制御ユニット、前記訓練ユニット、前記奨励スコア計算ユニット及び前記調整ユニット中の処理を、所定の反復終了条件を満たすまで反復して行う、装置。
【０１０１】
（付記2）
付記1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記ニューラルネットワークアーキテクチャの探索空間限定ユニットは、開集合の認識について前記探索空間を限定する、装置。
【０１０２】
（付記3）
付記2に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記ニューラルネットワークアーキテクチャの探索空間限定ユニットは、前記ニューラルネットワークアーキテクチャが、直列アレンジされる所定数量の、サンプルの特徴の変換のためのブロックユニット及び前記所定数量の、サンプルの特徴の統合のための特徴統合層を含むように限定し、各ブロックユニットの後に１つの前記特徴統合層が設けられ、また、予め、前記所定数量の特徴統合層中の各特徴統合層の構造を限定するように構成され、
前記制御ユニットは、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、前記所定数量のブロックユニット中の各ブロックユニットを形成することで、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャを生成するように構成される、装置。
【０１０３】
（付記4）
付記1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記特徴分布スコアは、同一クラスに属するサンプルの特徴間の集合度を表す中心損失に基づいて計算され、
前記分類精度は、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失に基づいて計算される、装置。
【０１０４】
（付記5）
付記1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記アーキテクチャパラメータの集合は、3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、及び恒等残差ノー・スキップの任意の組み合わせを含む、装置。
【０１０５】
（付記6）
付記1に記載のニューラルネットワークアーキテクチャ探索装置であって、
反復終了時に得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、開集合の認識に用いられる、装置。
【０１０６】
（付記7）
付記1に記載のニューラルネットワークアーキテクチャ探索装置であって、
前記制御ユニットは、再帰型ニューラルネットワークを含む、装置。
【０１０７】
（付記8）
ニューラルネットワークアーキテクチャ探索方法であって、
ニューラルネットワークアーキテクチャの探索空間限定ステップであって、ニューラルネットワークアーキテクチャを記述するアーキテクチャパラメータの集合としての探索空間を限定するもの；
制御ステップであって、制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、少なくとも１つのサブニューラルネットワークアーキテクチャを生成するもの；
訓練ステップであって、訓練集合中の全てのサンプルを用いて、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャについて、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失及び同一クラスに属するサンプルの特徴間の集合度を表す中心損失を計算し、前記クラス間損失及び前記中心損失を含む損失関数を最小化することで、各サブニューラルネットワークアーキテクチャに対して訓練を行うもの；
奨励スコア計算ステップであって、検証集合中の全てのサンプルを用いて、訓練後の各サブニューラルネットワークアーキテクチャについて、分類精度、及び同一クラスに属するサンプルの特徴間のコンパクトさを表す特徴分布スコアをそれぞれ計算し、且つ各サブニューラルネットワークアーキテクチャの前記分類精度及び前記特徴分布スコアに基づいて、該サブニューラルネットワークアーキテクチャの奨励スコアを計算するもの；及び
調整ステップであって、前記奨励スコアを前記制御ユニットにフィードバックし、前記少なくとも１つのサブニューラルネットワークアーキテクチャの前記奨励スコアがより大きくなる方向に向けて前記制御ユニットの前記パラメータを調整するものを含み、
前記制御ステップ、前記訓練ステップ、前記奨励スコア計算ステップ及び前記調整ステップ中の処理を、所定の反復終了条件を満たすまで反復して行う、方法。
【０１０８】
（付記9）
付記8に記載のニューラルネットワークアーキテクチャ探索方法であって、
前記ニューラルネットワークアーキテクチャの探索空間限定ステップでは、開集合の認識について前記探索空間を限定する、方法。
【０１０９】
（付記10）
付記9に記載のニューラルネットワークアーキテクチャ探索方法であって、
前記ニューラルネットワークアーキテクチャの探索空間限定ステップでは、前記ニューラルネットワークアーキテクチャが、直列アレンジされる所定数量の、サンプルの特徴の変換のためのブロックユニット及び前記所定数量の、サンプルの特徴の統合のための特徴統合層を含むように限定し、各ブロックユニットの後に１つの前記特徴統合層が設けられ、また、前記ニューラルネットワークアーキテクチャの探索空間限定ステップでは、予め、前記所定数量の特徴統合層中の各特徴統合層の構造を限定し、
前記制御ステップでは、前記制御ユニットのパラメータに基づいて、前記探索空間中のアーキテクチャパラメータに対してサンプリングを行い、前記所定数量のブロックユニット中の各ブロックユニットを生成することで、前記少なくとも１つのサブニューラルネットワークアーキテクチャのうちの各サブニューラルネットワークアーキテクチャを生成する、方法。
【０１１０】
（付記11）
付記8に記載のニューラルネットワークアーキテクチャ探索方法であって、
前記特徴分布スコアは、同一クラスに属するサンプルの特徴間の集合度を表す中心損失而計算に基づいて計算され、
前記分類精度は、異なるクラスのサンプルの特徴間の分離度を表すクラス間損失に基づいて計算される、方法。
【０１１１】
（付記12）
付記8に記載のニューラルネットワークアーキテクチャ探索方法であって、
前記アーキテクチャパラメータの集合は、3x3畳み込みカーネル、5x5畳み込みカーネル、3x3深さ方向分離可能な畳み込み、5x5深さ方向分離可能な畳み込み、3x3最大プーリング、3x3平均プーリング、恒等残差スキップ、恒等残差ノー・スキップの任意の組み合わせを含む、方法。
【０１１２】
（付記13）
付記8に記載のニューラルネットワークアーキテクチャ探索方法であって、
反復終了時得られた前記少なくとも１つのサブニューラルネットワークアーキテクチャは、開集合の認識に用いられる、方法。
【０１１３】
（付記14）
プログラムを記憶したコンピュータ可読記憶媒体であって、
前記プログラムは、コンピュータに、付記8に記載の各ステップを実行させる、記憶媒体。
【０１１４】
以上、本開示の好ましい実施形態を説明したが、本開示はこの実施形態に限定されず、本開示の趣旨を離脱しない限り、本開示に対するあらゆる変更は、本開示の技術的範囲に属する。
【図１】
2020042796.tif 000003
【図２】
2020042796.tif 000004
【図３ａ】
2020042796.tif 000005
【図３ｂ】
2020042796.tif 000006
【図３ｃ】
2020042796.tif 000007
【図４】
2020042796.tif 000008
【図５】
2020042796.tif 000009
【図６】
2020042796.tif 000010