(57)【要約】【課題】畳み込みニューラルネットワークの構造の一部をより簡便に決定することができる決定方法等を提供する。【解決手段】畳み込みニューラルネットワークの構造を決定するための決定方法であって、学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する取得ステップ（Ｓ１０）と、Ｎ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで当該Ｎ個のフィルタをＮ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割ステップ（Ｓ２０）とを含む。【選択図】図８
2016146174.tif 000002
【特許請求の範囲】
【請求項１】
畳み込みニューラルネットワークの構造を決定するための決定方法であって、
学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する取得ステップと、
前記Ｎ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記Ｎ個のフィルタを前記Ｎ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割ステップとを含む、
決定方法。
【請求項２】
前記分割ステップでは、
前記学習用画像群を用いて、前記Ｍ個のフィルタに重みを学習させることにより、前記Ｍ個のフィルタの識別性能を評価する分割評価ステップを含み、
前記分割評価ステップにおいて評価された識別性能が、前記Ｎ個のフィルタの識別性能以下である場合には、前記分割ステップを再度行う、
請求項１に記載の決定方法。
【請求項３】
さらに、前記Ｍ個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記Ｍ個のフィルタを、前記Ｍ個より小さいＬ個（Ｌは１以上の自然数）のフィルタに統合する統合ステップを含む、
請求項１または２に記載の決定方法。
【請求項４】
前記統合ステップでは、
前記Ｍ個のフィルタをk-means法を用いて予め定められたＬ個のクラスタにクラスタリングする、
請求項３に記載の決定方法。
【請求項５】
前記統合ステップでは、
前記Ｍ個のフィルタをAffinity propagation法を用いてクラスタリングする、
請求項３に記載の決定方法。
【請求項６】
前記変換は、ランダムに決定される角度での回転変換を含み、
前記分割ステップでは、
前記Ｎ個のフィルタの少なくとも一に対して前記回転変換を施したフィルタを追加する、
請求項１〜５のいずれか１項に記載の決定方法。
【請求項７】
前記変換は、ランダムに決定される標準偏差のガウシアンノイズの付与を含み、
前記分割ステップでは、
前記Ｎ個のフィルタの少なくとも一に対して前記ガウシアンノイズの付与を施したフィルタを追加する、
請求項１〜６のいずれか１項に記載の決定方法。
【請求項８】
前記変換は、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含み、
前記分割ステップでは、
前記Ｎ個のフィルタの少なくとも一に対して前記コントラスト変換を施したフィルタを追加する、
請求項１〜７のいずれか１項に記載の決定方法。
【請求項９】
前記変換は、ランダムに決定されるスケールとなるように変換するスケール変換を含み、
前記分割ステップでは、
前記Ｎ個のフィルタの少なくとも一に対して前記スケール変換を施したフィルタを追加する、
請求項１〜８のいずれか１項に記載の決定方法。
【請求項１０】
畳み込みニューラルネットワークの構造を決定するための決定方法であって、
学習用画像群を用いて重みが学習されたＭ個（Ｍは２以上の自然数）のフィルタを初期値として取得する取得ステップと、
前記Ｍ個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記Ｍ個のフィルタを、前記Ｍ個より小さいＬ個（Ｌは１以上の自然数）のフィルタに統合する統合ステップを含む、
決定方法。
【請求項１１】
畳み込みニューラルネットワークの構造の決定をコンピュータに実行させるためのプログラムであって、
学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する取得ステップと、
前記Ｎ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記Ｎ個のフィルタを前記Ｎ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割ステップとを含む、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、決定方法およびプログラムに関し、特に畳み込みニューラルネットワークの構造を決定する決定方法およびそのプログラムに関する。
【背景技術】
【０００２】
近年、Deep Learningを使用することにより、画像認識の性能が劇的に向上している。Deep Learningは、多層のニューラルネットワークを使った機械学習の方法論として知られ、このような多層ニューラルネットワークには、例えば畳み込みニューラルネットワークが用いられる（例えば非特許文献１参照）。ここで、畳み込みニューラルネットワークは、局所領域の畳み込み(Convolution)とプーリング(Pooling)とを繰り返す多層のニューラルネットワークからなる。非特許文献１では、畳み込みニューラルネットワークの構造として、プーリング層の間に複数の畳み込み層を挟み込むことにより畳み込み層を多層化したニューラルネットワークの構造が提案されており、この構造により画像認識の性能を向上させることができることが開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Min Lin, Qiang Chen, Shuicheng Yan，”Network In Network”
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来技術において提案されている畳み込みニューラルネットワークの構造は、複雑であり、専門家しか設計できないという問題がある。つまり、専門家以外の者では、上記従来技術に提案されているような、画像認識に有効な畳み込みニューラルネットワークの構造をうまく設計できないという問題がある。
【０００５】
本発明は、上記課題を解決するためになされたもので、畳み込みニューラルネットワークの構造をより簡便に決定することができる決定方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一形態に係る決定方法は、畳み込みニューラルネットワークの構造を決定するための決定方法であって、学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する取得ステップと、前記Ｎ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記Ｎ個のフィルタを前記Ｎ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割ステップとを含む。
【０００７】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータで読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。 
【発明の効果】
【０００８】
本開示によれば、畳み込みニューラルネットワークの構造をより簡便に決定することができる決定方法等を実現できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態の決定装置の構成の一例を示すブロック図である。
【図２Ａ】図２Ａは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。
【図２Ｂ】図２Ｂは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。
【図３】図３は、図１に示す決定装置が行う分割処理の概要を説明するための図である。
【図４】図４は、図１に示す分割部が行う分割処理の一例を示す図である。
【図５】図５は、図１に示す決定装置が行う統合処理の概要を説明するための図である。
【図６】図６は、図１に示す統合部が行う統合処理の一例を示す図である。
【図７】図７は、実施の形態における決定処理の一例を示すフローチャートである。
【図８】図８は、図７に示すステップＳ２０の詳細処理の一例を示すフローチャートである。
【図９】図９は、図７に示すステップＳ３０の詳細処理の一例を示すフローチャートである。
【図１０】図１０は、実施例１における決定装置の決定処理のアルゴリズムの詳細の一例を示す図である。
【図１１】図１１は、実施例１における決定装置の決定処理の一例を示す図である。
【図１２Ａ】図１２Ａは、実施例１の統合処理の有効性について説明するための図である。
【図１２Ｂ】図１２Ｂは、実施例１の統合処理の有効性について説明するための図である。
【図１２Ｃ】図１２Ｃは、実施例１の統合処理の有効性について説明するための図である。
【図１２Ｄ】図１２Ｄは、実施例１の統合処理の有効性について説明するための図である。
【図１３】図１３は、実施例２における複数のデータセットそれぞれにおける識別性能の値を示す図である。
【図１４】図１４は、ＭＮＩＳＴデータセットを用いるモデル構造の一例を示す図である。
【図１５】図１５は、ＭＮＩＳＴモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。
【図１６】図１６は、ＧＴＳＲＢ１モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。
【図１７】図１７は、ＧＴＳＲＢ１モデル構造と、本開示の分割処理または統合処理したＧＴＳＲＢ１モデル構造とを最適化したときの誤差関数の出力値を示す図である。
【図１８】図１８は、ＧＴＳＲＢデータセットを用いるモデル構造の一例を示す図である。
【図１９】図１９は、ＧＴＳＲＢ―３ＤＮＮモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。
【図２０】図２０は、ＣＩＦＡＲ−１０モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。
【図２１】図２１は、本開示の統合処理を行った場合の識別計算時間の比較を示す図である。
【発明を実施するための形態】
【００１０】
（発明の基礎となった知見）
近年、ＤＮＮ（Deep Neural Network）などの多層のニューラルネットワークは、画像認識のみならず音声認識や機械翻訳などの機械学習に用いることで、それらの性能を著しく向上させている。ＤＮＮは、理論的に実証されたモデリングおよび汎化能力により、それらの性能を向上させる成果を得ている。当該成果は、実質的には、パラメータ検出を高速に行う訓練アルゴリズムを改善することに加え、増加し続けるデータセットを改善すること、および、新規のコンピュータプラットフォームを強化することにより得ることができる。
【００１１】
しかしながら、通常、多層のニューラルネットワークの構造がその分野の専門家により手動で決定された後に、パラメータ決定（いわゆる訓練）を開始する。そして、多層のニューラルネットワークの構造は上記の性能の向上においてかなりの部分を占めており、かなり経験を積んだ専門家による繰り返し実験に依存して決定される。
【００１２】
例えば、非特許文献１では、上述したように、プーリング層の間に複数の畳み込み層を挟み込むことにより畳み込み層を多層化したニューラルネットワークの構造が提案されている。しかしながら、当該構造は、複雑であり、専門家のみ決定（設計）することができる構造である。
【００１３】
つまり、専門家以外の者では、画像認識に有効な畳み込みニューラルネットワークの構造をうまく決定（設計）できないという問題がある。
【００１４】
そこで、発明者（ら）は、パラメータ決定を行いながら畳み込みニューラルネットワークの構造を簡便に（または自動的に）決定する決定方法およびそのプログラムを想到した。
【００１５】
すなわち、本開示の一形態に係る決定方法は、畳み込みニューラルネットワークの構造を決定するための決定方法であって、学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する取得ステップと、前記Ｎ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記Ｎ個のフィルタを前記Ｎ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割ステップとを含む。
【００１６】
これにより、畳み込みニューラルネットワークの構造をより簡便に決定することができるので、専門家以外の者でも、画像認識に有効な畳み込みニューラルネットワークの構造を利用することができる。
【００１７】
また、例えば、前記分割ステップでは、前記学習用画像群を用いて、前記Ｍ個のフィルタに重みを学習させることにより、前記Ｍ個のフィルタの識別性能を評価する分割評価ステップを含み、前記分割評価ステップにおいて評価された識別性能が、前記Ｎ個のフィルタの識別性能以下である場合には、前記分割ステップを再度行うとしてもよい。
【００１８】
また、例えば、さらに、前記Ｍ個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記Ｍ個のフィルタを、前記Ｍ個より小さいＬ個（Ｌは１以上の自然数）のフィルタに統合する統合ステップを含むとしてもよい。
【００１９】
また、例えば、前記統合ステップでは、前記Ｍ個のフィルタをk-means法を用いて予め定められたＬ個のクラスタにクラスタリングするとしてもよい。
【００２０】
また、例えば、前記統合ステップでは、前記Ｍ個のフィルタをAffinity propagation法を用いてクラスタリングするとしてもよい。
【００２１】
また、例えば、前記変換は、ランダムに決定される角度での回転変換を含み、前記分割ステップでは、前記Ｎ個のフィルタの少なくとも一に対して前記回転変換を施したフィルタを追加するとしてもよい。
【００２２】
また、例えば、前記変換は、ランダムに決定される標準偏差のガウシアンノイズの付与を含み、前記分割ステップでは、前記Ｎ個のフィルタの少なくとも一に対して前記ガウシアンノイズの付与を施したフィルタを追加するとしてもよい。
【００２３】
また、例えば、前記変換は、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含み、前記分割ステップでは、前記Ｎ個のフィルタの少なくとも一に対して前記コントラスト変換を施したフィルタを追加するとしてもよい。
【００２４】
また、例えば、前記変換は、ランダムに決定されるスケールとなるように変換するスケール変換を含み、前記分割ステップでは、前記Ｎ個のフィルタの少なくとも一に対して前記スケール変換を施したフィルタを追加するとしてもよい。
【００２５】
以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。
【００２６】
（実施の形態）
以下では、図面を参照しながら、実施の形態における決定装置１０の決定方法等の説明を行う。
【００２７】
［決定装置１０の構成］
図１は、本実施の形態の決定装置１０の構成の一例を示すブロック図である。図２Ａおよび図２Ｂは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。
【００２８】
図１に示す決定装置１０は、取得部１１と、分割部１２と、統合部１３と、出力部１５とを備え、畳み込みニューラルネットワークの構造を決定する。決定装置１０は、コンピュータ等で実現される。
【００２９】
ここで、畳み込みニューラルネットワーク（Convolutional Neural Network：CNN)の一般的な処理について以下説明する。
【００３０】
畳み込みニューラルネットワークは、画像認識分野でよく使われ、２次元画像に対してフィルタによる畳み込みを行うことで、画像から特徴量を抽出する。畳み込みニューラルネットワークは、上述したように、畳み込みとプーリングとを繰り返す多層ネットワークからなる。そして、畳み込みニューラルネットワークにおいて畳み込み層を構成する識別に有効なフィルタの係数を、大量の学習用画像（学習用画像群）などの大量のデータを用いて学習させる。当該係数は、大量のデータを用いて、フィルタによる畳み込みと、一定領域の反応をまとめるプーリングとを繰り返すことで多様な変形に対する不変性を獲得する学習を行うことにより得られる。なお、畳み込みニューラルネットワークの識別性能は、畳み込み層を構成するフィルタに依存することがわかっている。
【００３１】
図２Ａ及び図２Ｂに示す例では、大量のデータとして学習用画像群を用いて、画像識別に有効なフィルタの係数を学習された、２層のネットワークで構成される畳み込みニューラルネットワークが示されている。そして、このような畳み込みニューラルネットワークに、９を示す数字画像を識別させる処理が示されている。なお、図２Ａ及び図２Ｂでは、フィルタによる畳み込みの後、活性化関数としてランプ関数(ReLU)が用いられている。
【００３２】
本実施の形態の決定装置１０では、畳み込みニューラルネットワークの構造として、畳み込みニューラルネットワークの畳み込み層を構成するフィルタを決定する。なる、畳み込み層が複数ある場合には、少なくとも一の畳み込み層を構成するフィルタを決定する。もちろん、すべての畳み込み層を構成するフィルタを決定してもよい。これにより、決定装置１０は、決定したフィルタを有する畳み込み層で構成される畳み込みニューラルネットワークを決定することができる。
【００３３】
［取得部１１］
取得部１１は、初期値としての複数のフィルタを取得したり、学習用画像を取得したりする。
【００３４】
より具体的には、取得部１１は、学習用画像群を用いて重みが学習されたＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する。なお、取得部１１は、分割部１２で分割処理された複数のフィルタや統合部１３で統合処理された複数のフィルタを初期値として取得してもよい。
【００３５】
また、取得部１１は、学習用画像群を取得する。ここで、学習用画像群とは、例えばＭＮＩＳＴデータセットやＧＴＳＲＢデータセットなど、予め用意された複数の画像のデータセットである。
【００３６】
［分割部１２］
図３は、図１に示す決定装置１０が行う分割処理の概要を説明するための図である。図４は、図１に示す分割部１２が行う分割処理の一例を示す図である。なお、図３の（ａ）に示される複数のフィルタは、図２Ｂに示される２つの畳み込み層のうちの一方を構成する複数のフィルタに対応する。また、図４の（ａ）に示される分割前フィルタは、図３の（ａ）に示される複数のフィルタに対応する。
【００３７】
分割部１２は、取得部１１が取得したＮ個のフィルタなど、初期値として取得された複数のフィルタに対して分割処理を行う。例えば分割部１２は、図３の（ａ）に示されるような、複数のフィルタ（図では３２個）に対して分割処理を行い、図３の（ｂ）に示される数のフィルタ（図では９６個）に増加させる。
【００３８】
より具体的には、分割部１２は、初期値としてのＮ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで当該Ｎ個のフィルタをＮ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させる分割処理を行う。
【００３９】
ここで、分割部１２は、当該Ｍ個のフィルタの識別性能が、上記Ｎ個のフィルタの識別性能より上である場合に、さらに、当該Ｍ個のフィルタの少なくとも一に対して画像処理分野で用いられる変換を施したフィルタを追加することで当該Ｍ個のフィルタをＭ個より大きいＰ個（Ｐは３以上の自然数）のフィルタに増加させる分割処理を行うとしてもよい。また、このような分割処理を、決定装置１０を利用するユーザ等が予め定めた回数である規定回数まで繰り返すとしてもよい。また、増加後のフィルタの数は、決定装置１０を使用する使用者により決定されているとしてもよい。
【００４０】
また、分割部１２は、当該Ｍ個のフィルタの識別性能が、上記Ｎ個のフィルタの識別性能以下である場合には、上記のＮ個のフィルタに対する分割処理を再度行うとしてもよい。
【００４１】
なお、上記において、複数のフィルタの識別性能とは、当該複数のフィルタを有する畳み込みニューラルネットワークの識別性能を意味する。以下も同様である。
【００４２】
本実施の形態では、図１に示すように分割部１２は、ランダム変換部１２１と、フィルタ追加部１２２と、識別性能評価部１２３と、を備える。
【００４３】
ランダム変換部１２１は、初期値として取得部１１により取得された複数のフィルタのうちの少なくとも一に対して、画像処理分野で用いられる変換を施す。フィルタ追加部１２２は、初期値として取得部１１により取得され、不図示のメモリなどに保存された複数のフィルタに、ランダム変換部１２１で画像処理分野で用いられる変換を施されたフィルタを追加する。
【００４４】
ここで、ランダム変換部１２１が施す変換は、画像処理分野で既知の画像変換（変換セット）から選択したもので行えばよい。例えば、ランダム変換部１２１の施す変換が、ランダムに決定される角度での回転変換である場合、ランダム変換部１２１は、上記Ｎ個のフィルタの少なくとも一に対して当該回転変換を施せばよい。そして、フィルタ追加部１２２は、ランダム変換部１２１で当該回転変換を施されたフィルタを追加すればよい。
【００４５】
また、例えば、ランダム変換部１２１の施す変換が、ランダムに決定される標準偏差のガウシアンノイズの付与である場合、ランダム変換部１２１は、上記のＮ個のフィルタの少なくとも一に対して当該ガウシアンノイズの付与を施せばよい。そして、フィルタ追加部１２２は、ランダム変換部１２１で当該ガウシアンノイズの付与を施されたフィルタを追加すればよい。
【００４６】
また、例えば、ランダム変換部１２１の施す変換が、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含む場合、ランダム変換部１２１は、上記のＮ個のフィルタの少なくとも一に対して当該コントラスト変換を施せばよい。そして、フィルタ追加部１２２は、ランダム変換部１２１で当該コントラスト変換を施されたフィルタを追加すればよい。
【００４７】
また、例えば、ランダム変換部１２１の施す変換が、ランダムに決定されるスケールとなるように変換するスケール変換である場合、ランダム変換部１２１は、上記のＮ個のフィルタの少なくとも一に対して当該スケール変換を施せばよい。そして、フィルタ追加部１２２は、ランダム変換部１２１で当該スケール変換を施されたフィルタを追加すればよい。
【００４８】
なお、当該変換は、ランダムに決定される角度での回転変換、ランダムに決定される標準偏差のガウシアンノイズの付与、ランダムに決定されるコントラスト比となるように変換するコントラスト変換、または、ランダムに決定されるスケールとなるように変換するスケール変換を含む場合に限らない。例えば、コントラスト反転変換や等長変換などでもよく、これら（変換セット）のうちの２以上の組み合わせを含むとしてもよい。変換セットのうち、ランダムに決定される角度での回転変換（ランダム回転変換）と、ランダムに決定される標準偏差のガウシアンノイズの付与（ランダムガウシアンノイズ付与）とを選択した場合、畳み込みニューラルネットワークの識別性能に一貫した改善が期待できる。以下この場合の例について図４を用いて説明する。
【００４９】
図４の（ａ）に示される分割前フィルタは、取得部１１が取得した初期値である複数のフィルタであり、図４の（ｂ）に示されるフィルタは、分割前フィルタのうちの一のフィルタである。ランダム変換部１２１は、図４の（ｃ）に示されるように、図４の（ｂ）に示されるフィルタに対して、上記回転変換（図でランダム回転変換と記載）と、上記ガウシアンノイズの付与（ランダムガウシアンノイズ付与と記載）とを行い、回転フィルタとぼけたフィルタとを生成する。フィルタ追加部１２２は、図４の（ｄ）に示されるように、ランダム変換部１２１で生成された回転フィルタとぼけたフィルタとを初期値である複数のフィルタに一時的に追加する。後述する識別性能評価部１２３は、初期値である複数のフィルタに回転フィルタとぼけたフィルタとが追加されたフィルタの識別性能を評価する。そして、初期値である複数のフィルタの識別性能より上である場合に、図４の（ｅ）に示されるように、初期値である複数のフィルタに回転フィルタとぼけたフィルタとが追加されたフィルタを採用して分割後フィルタとし、分割部１２の分割処理を終了する。なお、図４の（ｅ）に示される分割後フィルタは、図３の（ｂ）に示されたフィルタに対応する。
【００５０】
識別性能評価部１２３は、学習用画像群を用いて、追加されたフィルタにより増加したフィルタに重みを学習させて、当該増加したフィルタの識別性能を評価する。より具体的には、識別性能評価部１２３は、学習用画像群を用いて、追加されたフィルタにより増加したフィルタを畳み込み層に有する畳み込みニューラルネットワークのフィルタに重みを学習させて、当該増加したフィルタの識別性能を評価する。
【００５１】
識別性能評価部１２３は、評価した当該増加したフィルタの識別性能が、初期値である取得部１１により取得された複数のフィルタの識別性能より上である場合に、当該増加したフィルタを分割後フィルタとして採用する。なお、識別性能評価部１２３は、評価した当該増加したフィルタの識別性能が、初期値である取得部１１により取得された複数のフィルタの識別性能以下である場合に、ランダム変換部１２１に、初期値の複数のフィルタに対して再度分割処理を行わせる。
【００５２】
より具体的には、識別性能評価部１２３は、学習用画像群を用いて、例えばＮ個からＭ個に増加したＭ個のフィルタに重みを学習させることにより、Ｍ個のフィルタの識別性能を評価する。識別性能評価部１２３は、評価した当該Ｍ個のフィルタの識別性能が、初期値であるＮ個のフィルタの識別性能より上である場合に、当該Ｍ個のフィルタを分割後フィルタとして採用する。一方、識別性能評価部１２３は、評価した当該Ｍ個のフィルタの識別性能が、初期値であるＮ個のフィルタの識別性能以下である場合、ランダム変換部１２１に、初期値であるＮ個のフィルタに対して再度分割処理を行わせる。
【００５３】
なお、本実施の形態では、分割部１２は、取得部１１により取得された複数のフィルタを初期値として分割処理を行うとして説明したが、これに限らない。分割処理された分割後フィルタを初期値として再度分割処理を行うとしてもよいし、統合部１３により出力された統合後のフィルタを初期値として分割処理を行うとしてもよい。
【００５４】
また、分割処理を複数回行わせる場合には、識別性能評価部１２３は、分割処理により増加したフィルタの識別性能と、初期値ではなく一つ前の分割処理により増加したフィルタの識別性能とを比較すればよい。
【００５５】
［統合部１３］
図５は、図１に示す決定装置１０が行う統合処理の概要を説明するための図である。図６は、図１に示す統合部１３が行う統合処理の一例を示す図である。なお、図６の（ａ）に示される複数のフィルタ（統合前フィルタ）は、図５の（ａ）に示される複数のフィルタに対応し、図６の（ｄ）に示される複数のフィルタ（統合後フィルタ）は、図５の（ｂ）に示される複数のフィルタに対応する。
【００５６】
統合部１３は、取得部１１が取得したＮ個のフィルタや分割処理された分割後のフィルタなど、初期値として取得された複数のフィルタに対して統合処理を行う。例えば統合部１３は、図５の（ａ）に示されるような、複数のフィルタ（図では１５６個）に対して統合処理を行い、図５の（ｂ）に示される数のフィルタ（図では３２個）に減少させる。
【００５７】
より具体的には、統合部１３は、分割部１２において分割処理された分割後フィルタをクラスタリングし、クラスタ中心のフィルタを選択することにより、当該複数のフィルタの数を減少させる統合処理を行う。これにより、過学習を防ぐことができ、識別時のエラー率を下げ画像認識をより高精度に行えるなど、識別性能を向上させることができるからである。なお、統合部１３が統合処理を行う複数のフィルタは、分割部１２において分割処理された分割後フィルタに限らず、初期値として取得部１１により取得された複数のフィルタであってもよい。
【００５８】
本実施の形態では、図１に示すように、統合部１３は、クラスタリング部１３１と、フィルタ選択部１３２とを備える。
【００５９】
クラスタリング部１３１は、分割部１２において分割処理された分割後フィルタであるＭ個のフィルタをクラスタリングする。クラスタリング部１３１は、結果として、Ｍ個のフィルタをＬ個のクラスタにクラスタリングする。
【００６０】
ここで、クラスタリング部１３１は、Ｍ個のフィルタをk-means法を用いて予め定められたＬ個のクラスタにクラスタリングするとしてもよいし、Ｍ個のフィルタをAffinity propagation法を用いてクラスタリングした結果、Ｌ個のクラスタにクラスタリングするとしてもよい。k-means法とは、データの分布としてクラスタの平均を用い、与えられたクラスタ数Ｋ個に分類する方法である。一方、Affinity propagation法は、Freyらによって近年提案されたクラスタリング手法であり、予めクラスタ数を決めておく必要がなくアルゴリズムが自動的にクラスタ数を決定する。また、Affinity propagation法は、responsibilityとavailabilityとを交互に更新していって収束させる手法であるため初期値依存性がなく、k-means法などに代表される既存のクラスタリング方法よりクラスタリング精度が良い。なお、k-means法またはAffinity propagation法を用いてクラスタリングする方法は、既存のクラスタリング方法であるのでここでの詳細な説明は省略する。
【００６１】
フィルタ選択部１３２は、クラスタリング部１３１によりＬ個のクラスタにクラスタリングされ、不図示のメモリなどに保存されたＭ個のフィルタのうち、クラスタ中心のフィルタを選択する。ここで、例えば、フィルタ選択部１３２は、Ｌ個のクラスタそれぞれに属する複数のフィルタのベクトル重心を算出し、ベクトル重心に最も近いフィルタを選択することで、Ｌ個のクラスタそれぞれのクラスタ中心となるフィルタを選択すればよい。このようにして、統合部１３は、分割部１２において分割処理された分割後フィルタであるＭ個のフィルタを、当該Ｍ個より小さいＬ個（Ｌは１以上の自然数）のフィルタに統合する。
【００６２】
以下、図６を用いて、クラスタリング部１３１がk-means法を用いてクラスタリングする場合の例について説明する。なお、図６の（ａ）に示される統合前フィルタは、図４の（ｅ）に示される分割フィルタであり、分割部１２において分割処理された分割後フィルタである。また、図６の（ｂ）には、k-means法を用いて所定のクラスタ数となるようにデータの分布から境界線を決定することによりクラスタリングを行った場合の例が示されている。
【００６３】
クラスタリング部１３１は、図６の（ｂ）に示されるように、図６の（ａ）に示される統合前フィルタに対して、k-means法を用いて、決定装置１０を使用する使用者などにより予め決定された所定のクラスタ数となるようにクラスタリングする。そして、フィルタ選択部１３２は、図６の（ｃ）に示されるように、所定の数のクラスタそれぞれのクラスタ中心に一番近いフィルタ（図でフィルタａと表記）を選択し、統合後フィルタとして採用する。
【００６４】
なお、クラスタリング部１３１は、初期値として取得部１１により取得されたＮ個のフィルタをクラスタリングするとしてもよい。この場合、フィルタ選択部１３２は、クラスタリング部１３１によりクラスタリングされ、不図示のメモリなどに保存されたＮ個のフィルタのうち、クラスタ毎にクラスタ中心のフィルタを選択する。このようにして、統合部１３は、初期値として取得部１１により取得されたＮ個のフィルタを、当該Ｎ個より小さい数のフィルタに統合することができる。
【００６５】
また、統合部１３は、さらに、学習用画像群を用いて、統合後フィルタに重みを学習させて、統合後フィルタの識別性能を評価する識別性能評価部を備えるとしてもよい。この場合、識別性能評価部により評価された識別性能が、統合前フィルタの識別性能以下である場合には、統合処理を再度行う。統合部１３は、k-means法を用いてクラスタリングしている場合には、所定のクラスタ数を変更して再度統合処理を行い、Affinity propagation法を用いてクラスタリングしている場合には、類似度行列の対角要素などアルゴリズム中のパラメータを変更して再度統合処理を行うとよい。
【００６６】
［出力部１５］
出力部１５は、分割部１２で分割処理されたフィルタまたは統合部１３で統合処理されたフィルタを、決定装置１０により決定された畳み込みニューラルネットワークを構成するフィルタとして出力する。なお、出力部１５は、必須の構成ではなく、メモリであってもよい。この場合、分割部１２で分割処理されたフィルタまたは統合部１３で統合処理されたフィルタを、決定装置１０により決定された畳み込みニューラルネットワークを構成するフィルタとして保存する。
【００６７】
［決定装置１０の決定処理］
次に、以上のように構成された決定装置１０の決定処理について、図を用いて説明する。
【００６８】
図７は、本実施の形態における決定処理の一例を示すフローチャートである。図８は、図７に示すステップＳ２０の詳細処理の一例を示すフローチャートである。図９は、図７に示すステップＳ３０の詳細処理の一例を示すフローチャートである。
【００６９】
まず、ステップＳ１０において、決定装置１０は、取得処理を行う。
【００７０】
より具体的には、ステップＳ１０の前に、学習用画像群を用いて、畳み込みニューラルネットワークを構成する１以上の畳み込み層を構成する複数のフィルタの重みが学習されている（Ｓ９）。決定装置１０は、学習用画像群を用いて重みが学習された複数のフィルタのうち、少なくとも一の畳みこみ層を構成するＮ個（Ｎは１以上の自然数）のフィルタを初期値として取得する（Ｓ１１）。
【００７１】
次に、ステップＳ２０において、決定装置１０は、分割処理を行う。
【００７２】
より具体的には、ステップＳ１１において取得した初期値のＮ個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施し（Ｓ２１）、画像処理分野で用いられる変換を施したフィルタを初期値のＮ個のフィルタに追加する（Ｓ２２）。これにより初期値のＮ個のフィルタを、Ｎ個より大きいＭ個（Ｍは２以上の自然数）のフィルタに増加させることができる。ここで、当該変換は上述した変換セットのうちから選択したものを行えばよいが、詳細は上述したのでここでの説明は省略する。次いで、決定装置１０は、学習用画像群を用いて、Ｍ個のフィルタに重みを学習させることにより、Ｍ個のフィルタの識別性能を評価し、初期値のＮ個のフィルタの識別性能より上かを判定する（Ｓ２３）。ステップＳ２３において、Ｍ個のフィルタの識別性能が、Ｎ個のフィルタの識別性能以下であり（Ｓ２３でＮｏ）、予め定めた回数（規定回数）以下である場合（Ｓ２４でＮｏ）には、ステップＳ２１に戻り、分割処理を再度行う。一方、Ｍ個のフィルタの識別性能が、Ｎ個のフィルタの識別性能より上である場合（Ｓ２４でＹｅｓ）には、分割処理を終了する。
【００７３】
なお、分割処理を予め定めた回数（規定回数）まで繰り返す場合には、ステップＳ１０において、初期値のフィルタとして、分割処理したＭ個フィルタである分割後フィルタを取得し、再度ステップＳ２０を行えばよい。
【００７４】
次に、ステップＳ３０において、決定装置１０は、統合処理を行う。
【００７５】
より具体的には、決定装置１０は、初期値のフィルタであるステップＳ２０で分割処理されたＭ個のフィルタをクラスタリングする（Ｓ３１）。ここで、決定装置１０は、ステップＳ２０で分割処理されたＭ個のフィルタを、結果としてＭ個より小さいＬ個（Ｌは１以上の自然数）のクラスタ数にクラスタリングする。次いで、決定装置１０は、Ｌ個のクラスタそれぞれのクラスタ中心のフィルタを選択する（Ｓ３２）。このようにして、決定装置１０は、Ｍ個のフィルタを、Ｍ個より小さいＬ個のフィルタに統合する。
【００７６】
なお、ステップＳ２０の分割処理とステップＳ３０の統合処理とは、それぞれ単独で行うとしてもよいし、ステップＳ３０の統合処理を先に行い、続いてステップＳ２０の分割処理を行うとしてもよい。また、上述したように、ステップＳ２０の分割処理を予め定めた回数（規定回数）まで繰り返した後に、ステップＳ３０の統合処理を行うとしてもよい。
【００７７】
［決定処理の有効性］
次に、実施例を挙げて、上述した決定装置１０の決定処理の有効性について説明する。
【００７８】
（実施例１）
図１０は、実施例１における決定装置１０の決定処理のアルゴリズムの詳細の一例を示す図である。
【００７９】
図１０において「//SPLIT」で記述されるアルゴリズムは、上述した分割処理のアルゴリズムの一例であり、「//SPLIT」で記述されるアルゴリズムは、上述した分割処理のアルゴリズムの一例である。また、「δ０、δ１、δ２」は、識別性能の評価値を示しており、「Kernel」は、畳み込みニューラルネットワークの少なくとも一の畳み込み層を構成するフィルタを示している。
【００８０】
図１１は、実施例１における決定装置１０の決定処理の一例を示す図である。すなわち、本実施例では、統合処理を先に行い、その後に分割処理を行った場合の例が示されている。
【００８１】
より具体的には、実施例１における決定装置１０は、初期値としての１５０個のフィルタに対して、統合処理を行い、３２個のフィルタに減らし、学習用画像群を用いて重みを学習させた上で３２個のフィルタの識別性能を評価する。なお、本実施例の統合処理では、図１０に示されるようにk-means法を用いてクラスタリングを行っている。
【００８２】
そして、実施例１における決定装置１０は、学習用画像群を用いて重みが学習させた３２個のフィルタに対して、分割処理を行い、９６個のフィルタに増やして、学習用画像群を用いて重みを学習させた上で３２個のフィルタの識別性能を評価する。なお、本実施例の分割処理では、図１０に示されるようにランダムに決定される角度での回転変換とランダムに決定される標準偏差のガウシアンノイズの付与とを行っている。
【００８３】
図１２Ａ〜図１２Ｄは、本実施例の統合処理の有効性について説明するための図である。
【００８４】
図１２Ａは、テスト用画像の一例を示しており、１２０が表示された標識が３０度程度傾いた画像が示されている。また、図１２Ａに示すテスト用画像は、学習用画像により重みが学習された、初期値としてのフィルタを有する畳み込みニューラルネットワークにより誤分類されたものである。
【００８５】
図１２Ｂは、図１２Ａに示すテスト用画像のソフトマックス確率を示す図である。図１２Ｂでは、初期値としてのフィルタを有する畳み込みニューラルネットワークの４３クラスの出力の反応値がソフトマックス確率で示されている。カテゴリ識別を行うニューラルネットでは、出力確率の最大値を認識結果として出力する。初期値としてのフィルタを有する畳み込みニューラルネットワークが図１２Ａに示すテスト用画像（正解ラベル＝７）を分類（識別）すると、カテゴリ１５に大きな反応値が出力され、誤分類しているのがわかる。
【００８６】
図１２Ｃは、図１１に示す分割処理後のフィルタを有する畳み込みニューラルネットワークにより分類された図１２Ａに示すテスト用画像のソフトマックス確率の一例を示す図である。これにより、分割処理後のフィルタを有する畳み込みニューラルネットワークが図１２Ａに示すテスト用画像を分類（識別）すると、正解ラベルに対する反応値が改善され、誤分類せず正確に分類しているのがわかる。
【００８７】
図１２Ｄは、図１１に示す統合処理後の３２個のフィルタを有する畳み込みニューラルネットワークにより分類された図１２Ａに示す画像のソフトマックス確率の一例を示す図である。統合処理後の３２個のフィルタを有する畳み込みニューラルネットワークが図１２Ａに示すテスト用画像を分類（識別）すると、図１２Ｃの反応値よりさらに改善され、誤分類せず正確に分類しているのがわかる。
【００８８】
（実施例２）
本開示の分割処理および統合処理の有効性について、学習用画像およびテスト用画像からなる複数のデータセットを用いて検証したので、その実験結果を実施例２として説明する。
【００８９】
図１３は、実施例２における複数のデータセットそれぞれを用いた場合の識別性能の値を示す図である。図１３には、ＭＮＩＳＴ（Mixed National Institute of Standards and Technology database）データセット、ＧＴＳＲＢ（German Traffic Sign Recognition Benchmark）およびＣＩＦＡＲ−１０（Canadian Institute for Advanced Research）データセットを用いた場合の識別性能の値（基準値）が示されている。
【００９０】
［ＭＮＩＳＴ］
図１４は、ＭＮＩＳＴデータセットを用いるモデル構造（ＭＮＩＳＴモデル構造）の一例を示す図である。ＭＮＩＳＴデータセットは、２８×２８サイズの手書き数字の６０，０００枚の学習用画像と１０，０００枚のテスト用画像とからなる。ＭＮＩＳＴモデル構造は、図１４に示すように、２層の結合層と２層の畳み込み層とからなる畳み込みニューラルネットワークで構成されており、ＲｅＬＵ活性化関数を使用した各畳み込み層の後にプーリング層を有する。図１３には、ＭＮＩＳＴデータセットの学習用画像で学習させたＭＮＩＳＴモデル構造に、ＭＮＩＳＴデータセットのテスト用画像を識別させたときの識別性能の値（基準値）としてのエラー率０．８２％が示されている。
【００９１】
図１５は、ＭＮＩＳＴモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。ここで、図１５のＳＰＬＩＴ［１］はＮｏ．１のフィルタ（ＯＲＩＧＩＮＡＬ）を分割したことを示し、ＭＥＲＧＥ［４］はＮｏ．４のフィルタＳＰＬＩＴ［１］を統合したことを示す。図１５では、ＭＮＩＳＴモデル構造の２層の畳み込み層のうち１層目の畳み込み層を構成する１００個のフィルタ（ＯＲＩＧＩＮＡＬ）を分割処理して２００個のフィルタに増やし、学習用画像で重みを再学習させた場合（ＳＰＬＩＴ［１］）のエラー率０．５８％が示されている。また、分割処理された２００個のフィルタ（ＳＰＬＩＴ［１］）をさらに統合処理して１００個のフィルタに減らし、学習用画像で重みを再学習させた場合（ＭＥＲＧＥ［４］）のエラー率０．５９％が示されている。
【００９２】
一方、比較例としてＭＮＩＳＴモデル構造の１層目の畳み込み層を構成する１００個のフィルタを分割処理せず、２００個または３００個のフィルタを初期状態から学習させた場合のエラー率０．７８％または０．７５％が示されている。
【００９３】
ＭＮＩＳＴモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率は、比較例やＭＮＩＳＴモデル構造のエラー率に対して、ほぼ３０％向上しているのがわかる。なお、分割処理後の統合処理により、エラー率は０．０１％だけ下がっているものの、識別性能はほぼ維持している。
【００９４】
［ＧＴＳＲＢ］
ＧＴＳＲＢデータセットは、ドイツの標準的な道路標識からなる、４３の様々なクラスの３９，２０９枚の学習用画像と１２，６３０枚のテスト用画像とからなる。なお、ＧＴＳＲＢデータセットに含まれる画像のサイズは１５×１５ピクセルから２５０×２５０ピクセルと不均一であり、このまま用いると、学習の際の１ブロック当たりに含まれる画素数が変動し、認識に影響する。そこで、本実施例では、ＧＴＳＲＢデータセットの全ての画像を４８×４８にサイズ変更し、ヒストグラム平滑化やコントラスト正規化などの前処理技術を適用したものを使用した。以下、前処理技術を適用したＧＴＳＲＢデータセットをＧＴＳＲＢデータセットと記載する。
【００９５】
ＧＴＳＲＢデータセットを用いるモデル構造（ＧＴＳＲＢ１モデル構造）は、３層の畳み込み層と２層の全結合層とからなる畳み込みニューラルネットワークである。図１３には、ＧＴＳＲＢデータセットの学習用画像で学習させたＧＴＳＲＢ１モデル構造に、ＧＴＳＲＢデータセットのテスト用画像を識別させたときの識別性能の値（基準値）としてエラー率２．４４％が示されている。
【００９６】
図１６は、ＧＴＳＲＢ１モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。ここで、図１６の４Ｎの「Ｎ」はガウシアンノイズによりフィルタを分割したことを示し、５Ｒの「Ｒ」は回転変換によりフィルタを分割したことを示す。ＭＥＲＧＥ［Ｎｏ．］、ＳＰＬＩＴ［Ｎｏ．］の表記方法は上述と同様である。ＧＴＳＲＢ１モデル構造に対して本開示の分割処理または統合処理を行った全ての実験において、かなり良い性能を達成したか、または、モデルサイズをかなり小さくしたのと同等の性能を達成したことが分かる。
【００９７】
図１７は、ＧＴＳＲＢ１モデル構造と、本開示の分割処理または統合処理したＧＴＳＲＢ１モデル構造とを最適化したときの誤差関数の出力値を示す図である。ここで、ＧＴＳＲＢ１_originalとＧＴＳＲＢ１_mergeは同一パラメータ数の場合を比較した。図１７に示すように、ＧＴＳＲＢ１モデル構造をＧＴＳＲＢデータセットの学習用画像で学習（最適化）させたときの誤差関数の出力値と比較すると、本開示の分割処理または統合処理したＧＴＳＲＢ１モデル構造をＧＴＳＲＢデータセットの学習用画像で学習させたときの誤差関数の出力値の方が低くなっているのがわかる。つまり、本開示の分割処理または統合処理することで、画像認識に有効な畳み込みニューラルネットワークの構造を簡便に決定することができるのがわかる。
【００９８】
図１８は、ＧＴＳＲＢデータセットを用いるモデル構造（ＧＴＳＲＢ―３ＤＮＮモデル構造）の一例を示す図である。
【００９９】
ＧＴＳＲＢ―３ＤＮＮモデル構造は、３層の畳み込み層と２層の全結合層とからなる畳み込みニューラルネットワークであり、４８×４８ピクセル、３８×４８ピクセルおよび２８ｘ４８ピクセルの異なる画像サイズを入力して使用する。そのため、ＧＴＳＲＢ―３ＤＮＮモデル構造は、単純なモデル構造であるＧＴＳＲＢ―３ＤＮＮモデル構造と比較して集合的なモデル構造となる。図１３には、ＧＴＳＲＢデータセットの学習用画像で学習させたＧＴＳＲＢ―３ＤＮＮモデル構造に、ＧＴＳＲＢデータセットのテスト用画像を識別させたときの識別性能の値（基準値）としてエラー率１．２４％が示されている。
【０１００】
図１９は、ＧＴＳＲＢ―３ＤＮＮモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。本開示の分割処理または統合処理を、ＧＴＳＲＢ―３ＤＮＮモデル構造に対して行った全ての実験において、かなり良い性能を達成したか、または、モデルサイズをかなり小さくしたのと同等の性能を達成したことが分かる。
【０１０１】
［ＣＩＦＡＲ−１０］
ＣＩＦＡＲ−１０データセットは、１０カテゴリの５０，０００枚の学習用画像と１０，０００枚のテスト用画像とからなる。
【０１０２】
ＣＩＦＡＲ−１０データセットを用いるモデル構造（ＣＩＦＡＲ−１０モデル構造）は、非特許文献１に開示される３層の畳み込み層からなる畳み込みニューラルネットワークを利用した。図１３には、ＣＩＦＡＲ−１０データセットの学習用画像で学習させたＣＩＦＡＲ−１０モデル構造に、ＣＩＦＡＲ−１０データセットのテスト用画像を識別させたときの識別性能の値（基準値）としてエラー率１０．４％が示されている。
【０１０３】
図２０は、ＣＩＦＡＲ−１０モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。
【０１０４】
図２０に示されるように、本開示の分割処理または統合処理を、ＣＩＦＡＲ−１０モデル構造の畳み込み層を構成するフィルタ（ＯＲＩＧＩＮＡＬ）に対して行った全ての実験において、性能を改善したか、または、同等の性能を達成したことがわかる。つまり、非特許文献１に開示されるような複雑、かつ高度に調整された畳み込みニューラルネットワークの構造に本開示の分割処理または統合処理を適用しても有効であることがわかる。
【０１０５】
（実施例３）
本開示の統合処理の有効性について、識別計算時間の観点からも検証したので、その実験結果を実施例３として説明する。
【０１０６】
図２１は、本開示の統合処理を行った場合の識別計算時間の比較を示す図である。
【０１０７】
図２１に示す１行目には、ＧＴＳＲＢデータセットの学習用画像で学習後のＧＴＳＲＢ１モデル構造（ＯＲＩＧＩＮＡＬ）を用いて、１０個の４８×４８ピクセルの画像を識別させたときの計算時間１４．８ＭＳが示されている。一方、図２１に示す２行目または３行目には、ＧＴＳＲＢ１モデル構造に対して１回または２回統合処理を行いＧＴＳＲＢデータセットの学習用画像で学習させたもの（ＭＥＲＧＥ［１］またはＭＥＲＧＥ［２］）を用いて、１０個の４８×４８ピクセルの画像を識別させたときの計算時間１４．１ＭＳまたは１２．６ＭＳが示されている。
【０１０８】
また、図２１に示す４行目には、ＧＴＳＲＢデータセットの学習用画像で学習後のＧＴＳＲＢ―３ＤＮＮモデル構造（ＯＲＩＧＩＮＡＬ）を用いて、１０個の４８×４８ピクセルの画像を識別させたときの計算時間２７．９ＭＳが示されている。一方、図２１に示す５行目には、本開示の統合処理を、ＧＴＳＲＢ―３ＤＮＮモデル構造に対して行い、ＧＴＳＲＢデータセットの学習用画像で学習させたもの（ＭＥＲＧＥ［４］）を用いて、１０個の４８×４８ピクセルの画像を識別させたときの速度１９．４ＭＳが示されている。
【０１０９】
これにより、本開示の統合処理を行った全ての実験において、識別計算時間を改善したことが分かる。
【０１１０】
［効果等］
以上のように、本実施の形態における決定装置１０およびその決定方法によれば、畳み込みニューラルネットワークの構造をより簡便（または自動的）に決定することができる。より具体的には、本実施の形態における決定装置１０およびその決定方法によれば、Deep Learningで学習した畳み込みニューラルネットワークの少なくとも一の畳み込み層を構成するフィルタを初期値として、分割処理と統合処理とを繰り返すことにより、画像認識に有効な畳み込みニューラルネットワークの構造を簡便にまたは自動で決定することができる。
【０１１１】
ここで、分割処理は、有効なフィルタを変換して、画像認識に有効そうなフィルタを増やす処理であり、統合処理は、冗長なフィルタをクラスタリングで統合して有効なフィルタのみ残す処理である。分割処理で利用する変換は、画像処理分野で既知の画像変換（変換セット）から選択すればよい。一貫した改善が期待できることから、ランダムに決定される角度での回転変換とランダムに決定される標準偏差のガウシアンノイズの付与とを選択して変換に利用してもよい。統合処理で利用するクラスタリング方法も、k-means法またはAffinity propagation法など、既知のクラスタリング方法を利用すればよい。
【０１１２】
それにより、専門家以外の者でも、本実施の形態における決定装置１０およびその決定方法を利用すれば、画像認識に有効な畳み込みニューラルネットワークの構造を得ることができそれを利用することができる。
【０１１３】
なお、本実施の形態における決定装置１０等は、分割処理と決定処理とを行うとして説明したが、少なくとも一方を行うとしてもよい。また、分割処理と決定処理とを行う順番や回数も、上述した例に限定されず、決定装置１０の使用者が自由に決めてもよい。
【０１１４】
また、本実施の形態における決定装置１０等は、初期値としての畳み込みニューラルネットワークを構成する畳み込み層が複数ある場合には、少なくとも一の畳み込み層を構成する複数のフィルタに対して、分割処理および決定処理の少なくも一方を行うとしてもよい。また、当該一の畳み込み層を構成する複数のフィルタに対して分割処理および決定処理の少なくとも一方を行った後に、当該一の畳み込み層と異なる畳み込み層を構成する複数のフィルタに対して、分割処理および決定処理の少なくも一方を行ってもよい。つまり、本実施の形態における決定装置１０等は、初期値としての畳み込みニューラルネットワークのフィルタの一部または全部に対して分割処理および決定処理の少なくも一方を行うとしてもよい。
【０１１５】
以上、実施の形態において本開示の決定方法について説明したが、各処理が実施される主体や装置に関しては特に限定しない。ローカルに配置された特定の装置内に組み込まれたプロセッサーなど（以下に説明）によって処理されてもよい。またローカルの装置と異なる場所に配置されているクラウドサーバなどによって処理されてもよい。
【０１１６】
なお、本開示は、さらに、以下のような場合も含まれる。
【０１１７】
（１）上記の装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記ＲＡＭまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【０１１８】
（２）上記の装置を構成する構成要素の一部または全部は、１個のシステムＬＳＩ（Large Scale Integration：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムＬＳＩは、その機能を達成する。
【０１１９】
（３）上記の装置を構成する構成要素の一部または全部は、各装置に脱着可能なＩＣカードまたは単体のモジュールから構成されているとしてもよい。前記ＩＣカードまたは前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。前記ＩＣカードまたは前記モジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ＩＣカードまたは前記モジュールは、その機能を達成する。このＩＣカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
【０１２０】
（４）本開示は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
【０１２１】
（５）また、本開示は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
【０１２２】
また、本開示は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【０１２３】
また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
【０１２４】
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【０１２５】
（６）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０１２６】
本発明は、認識に有効な畳み込みニューラルネットワークの構造を決定するための決定装置および決定方法に利用でき、特に、画像認識に有効でパソコンシステムよりも計算能力がない埋め込みシステムでも実行可能な畳み込みニューラルネットワークの構造を決定するための決定装置および決定方法に利用できる。
【符号の説明】
【０１２７】
１０  決定装置
１１  取得部
１２  分割部
１３  統合部
１５  出力部
１２１  ランダム変換部
１２２  フィルタ追加部
１２３  識別性能評価部
１３１  クラスタリング部
１３２  フィルタ選択部
【図１】
2016146174.tif 000003
【図２Ａ】
2016146174.tif 000004
【図７】
2016146174.tif 000005
【図８】
2016146174.tif 000006
【図９】
2016146174.tif 000007
【図１０】
2016146174.tif 000008
【図１２Ｂ】
2016146174.tif 000009
【図１２Ｃ】
2016146174.tif 000010
【図１２Ｄ】
2016146174.tif 000011
【図１３】
2016146174.tif 000012
【図１４】
2016146174.tif 000013
【図１５】
2016146174.tif 000014
【図１６】
2016146174.tif 000015
【図１７】
2016146174.tif 000016
【図１８】
2016146174.tif 000017
【図１９】
2016146174.tif 000018
【図２０】
2016146174.tif 000019
【図２１】
2016146174.tif 000020
【図２Ｂ】
2016146174.tif 000021
【図３】
2016146174.tif 000022
【図４】
2016146174.tif 000023
【図５】
2016146174.tif 000024
【図６】
2016146174.tif 000025
【図１１】
2016146174.tif 000026
【図１２Ａ】
2016146174.tif 000027