(57)【要約】  ニューラルネットワーク学習装置２０は、複数の階層を含むニューラルネットワーク２１が学習対象とする、学習情報２００における局所領域の大きさを、ニューラルネットワーク２１の構造に基づいて、個々の階層に対して決定する決定モジュール２２と、決定モジュール２２により決定された局所領域の大きさに基づいて、局所領域を学習情報２００から抽出するとともに、抽出した局所領域が表す学習情報をニューラルネットワーク２１が学習することを、学習情報２００から抽出する局所領域の大きさを変えながら繰り返し行うように制御する制御モジュール２５と、を備えることによって、学習データが少ない場合であっても、ニューラルネットワークの汎化性能が低下することを回避する。
2018135516.tif 000002
【特許請求の範囲】
【請求項１】
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定手段と、
前記決定手段により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御手段と、
を備えるニューラルネットワーク学習装置。
【請求項２】
前記決定手段は、第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項１に記載のニューラルネットワーク学習装置。
【請求項３】
前記決定手段は、フィルタによる畳み込み演算を行う前記階層に関する前記フィルタの大きさに基づいて、前記局所領域の大きさを決定する、
請求項１または２に記載のニューラルネットワーク学習装置。
【請求項４】
パターン認識処理を行う前記ニューラルネットワークをさらに備える、
請求項１乃至３のいずれか一項に記載のニューラルネットワーク学習装置。
【請求項５】
前記ニューラルネットワークは、前記パターン認識処理として、顔認識処理、あるいは物体認識処理、あるいは音声認識処理を行う、
請求項４に記載のニューラルネットワーク学習装置。
【請求項６】
情報処理装置によって、
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定し、
決定した前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する、
ニューラルネットワーク学習方法。
【請求項７】
第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項６に記載のニューラルネットワーク学習方法。
【請求項８】
フィルタによる畳み込み演算を行う前記階層に関する前記フィルタの大きさに基づいて、前記局所領域の大きさを決定する、
請求項６または７に記載のニューラルネットワーク学習方法。
【請求項９】
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定処理と、
前記決定処理により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御処理と、
をコンピュータに実行させるためのニューラルネットワーク学習プログラムが格納された記録媒体。
【請求項１０】
前記決定処理は、第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項９に記載のニューラルネットワーク学習プログラムが格納された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、ニューラルネットワークによる学習を制御する技術に関する。
【背景技術】
【０００２】
近年、人工知能（ＡＩ：Artificial Intelligence）に関する技術が急速に発達してきていることにより、ＡＩを構成するニューラルネットワークが、様々な技術分野において注目されている。このような技術分野の一つとして、パターン認識技術がある。パターン認識技術とは、入力されたパターンが、どのクラス（カテゴリ）に属するパターンであるのかを推定する技術である。このようなパターン認識に関する具体例としては、例えば、入力された画像に写っている物体が何であるのかを推定する物体認識、あるいは、入力された音声から発話内容を推定する音声認識などが挙げられる。【０００３】
パターン認識技術においては、統計的機械学習が広く利用されている。そして、近年、深層学習（ディープラーニング）と呼ばれる学習技術が急速に発達したことによって、ニューラルネットワークは、多種多様に変動する入力パターンに対して、その変動に影響されることなく、正確な認識を行なうことができるようになってきている。このような背景から、ニューラルネットワークによる学習を効率的に行うとともに、ニューラルネットワークがより正確に判断できるようにするための技術に対する期待が高まってきている。【０００４】
このような技術に関連する技術として、特許文献１には、登録されているカテゴリが更新されたときに、多層ニューラルネットワークの学習時間を短縮するようにした画像処理装置が開示されている。この多層ニューラルネットワークは、入力画像に対してそれぞれ異なる空間フィルタを作用させた結果に基づいて、次段の層の処理ユニットに対して出力値を出力する処理を行なう。この多層ニューラルネットワークは、前層及び後層を含む。前層は、最終的に複数の特徴量のそれぞれを生成する。後層は、当該複数の特徴量に対してそれぞれ異なる重み係数を作用させた結果に基づいて、次段の層の処理ユニットに対して出力値を出力する処理を行なうことによって、最終的に入力画像を複数のカテゴリのいずれかに分類する。当該画像処理装置は、カテゴリが更新された場合に、前層におけるフィルタの値を修正せずに、後層における重み係数の値を修正する。【０００５】
また、特許文献２には、教師あり学習によって、順伝搬型の多層ニューラルネットワークによる学習を行う学習装置が開示されている。この学習装置は、隠れ層に、出力層に順伝搬しないプロービングニューロンを有する多層ニューラルネットワークについて、訓練データセットを用いたコスト計算による学習を行う。そしてこの学習装置は、当該プロービングニューロンのコストに基づいて、当該多層ニューラルネットワークの上層を除去したのち、残った最上層のプロービングニューロンを出力層とする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開2016-139176号公報
【特許文献２】特開2015-095215号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ニューラルネットワークが行なう深層学習では、学習すべきパラメータが非常に多いことから、一般的に大量の学習データが必要となる。そして、学習データが少量である場合、過学習（Overfitting）によって、汎化性能が大きく低下することが知られている。過学習とは、ニューラルネットワークが、入力された学習データには適合できているが、未知のデータには適合できていない（即ち汎化できていない）状態のことである。【０００８】
深層学習では、一般的に、誤差逆伝播法に基づいて学習が行なわれる。誤差逆伝播法では、多層ニューラルネットワークにおける出力層から入力層に向かって誤差を逆伝播することによって、出力層における誤差が小さくなるように学習する。学習データが少量である場合、ニューラルネットワークは、出力層に近い上位層のみにおいて学習することによって、誤差を十分小さくすることができる。この場合、上位層における学習が進み、入力層に近い下位層における学習が進まなくなるという現象が発生する。これにより、ニューラルネットワークは過学習の状態となるので、その汎化性能が低下するという問題がある。特許文献１及び２は、この問題について言及していない。本願発明の主たる目的は、このような問題を解決するニューラルネットワーク学習装置等を提供することである。
【課題を解決するための手段】
【０００９】
本願発明の一態様に係るニューラルネットワーク学習装置は、複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定手段と、前記決定手段により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、繰り返し抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御手段と、を備える。【００１０】
上記目的を達成する他の見地において、本願発明の一態様に係るニューラルネットワーク学習方法は、情報処理装置によって、複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定し、決定した前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する。【００１１】
また、上記目的を達成する更なる見地において、本願発明の一態様に係るニューラルネットワーク学習プログラムは、複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定処理と、前記決定処理により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御処理と、をコンピュータに実行させるためのプログラムである。【００１２】
更に、本願発明は、係るニューラルネットワーク学習プログラム（コンピュータプログラム）が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
【発明の効果】
【００１３】
本願発明は、学習データが少ない場合であっても、ニューラルネットワークの汎化性能が低下することを回避できる。
【図面の簡単な説明】
【００１４】
【図１】本願発明の第１の実施形態に係るニューラルネットワーク学習装置１０の構成を示すブロック図である。
【図２】本願発明の第１の実施形態に係るニューラルネットワーク１１の階層構造を例示する図である。
【図３】本願発明の第１の実施形態に係るニューラルネットワーク１１に含まれる中間層が行なう畳み込み演算と、学習対象とする局所領域の大きさとの関係を例示する図である。
【図４】本願発明の第１の実施形態に係る決定モジュール１２が１回目の学習処理における学習対象として決定する局所領域の大きさと、各層において学習効果が期待される局所領域の大きさの最小値との関係を例示する図である。
【図５】本願発明の第１の実施形態に係る決定モジュール１２が２回目の学習処理における学習対象として決定する局所領域の大きさと、各層において学習効果が期待される局所領域の大きさの最小値との関係を例示する図である。
【図６】本願発明の第１の実施形態に係るニューラルネットワーク学習装置１０の動作を示すフローチャートである。
【図７】本願発明の第２の実施形態に係るニューラルネットワーク学習装置２０の構成を示すブロック図である。
【図８】本願発明の各実施形態に係るニューラルネットワーク学習装置を実行可能な情報処理装置９００の構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
【００１６】
＜第１の実施形態＞
図１は、本願発明の第１の実施の形態に係るニューラルネットワーク学習装置１０の構成を概念的に示すブロック図である。ニューラルネットワーク学習装置１０は、入力された学習データ１００（学習情報）によって深層学習を行い、その学習結果に基づいて、パターン認識等の処理を行う装置である。学習データ１００は、例えば、パターン認識が行なわれる対象を表すデータ（問題）と、期待される認識結果（答え）との組み合わせを含む教師データである。
【００１７】
ニューラルネットワーク学習装置１０は、ニューラルネットワーク１１、決定モジュール１２、及び、制御モジュール１５を備えている。
【００１８】
ニューラルネットワーク１１は、複数の階層（層）を含む多層ニューラルネットワークであり、入力された学習データ１００を使用して深層学習を行なう。ニューラルネットワーク１１は、パターン認識が行なわれるべき対象を表す入力データ（パターン認識入力データ１０１）が入力された場合、学習結果に基づいてパターン認識処理を行い、その結果をパターン認識結果１０２として出力する。ニューラルネットワーク１１は、このパターン認識処理として、例えば、顔認識処理、あるいは物体認識処理、あるいは音声認識処理等を行う。
【００１９】
図２は、本実施形態に係るニューラルネットワーク１１の階層構造を概念的に例示する図である。ニューラルネットワーク１１は、入力層１１０、Ｌ１層１１１、Ｌ２層１１２、Ｌ３層１１３、及び、出力層１１４を含んでいる。Ｌ１層１１１、Ｌ２層１１２、及び、Ｌ３層１１３は中間層（隠れ層）である。本実施形態にかかる中間層は３層構成であるが、中間層は３層構成に限定されない。
【００２０】
入力層１１０、Ｌ１層１１１、Ｌ２層１１２、Ｌ３層１１３、及び、出力層１１４は、例えば、生物の神経回路を模したニューロン素子（図示せず）を有するユニットである。本実施形態では、出力層１１４側を上位側（次段側、後段側）と定義し、入力層１１０側を下位側（前段側）と定義する。
【００２１】
ニューラルネットワーク１１がパターン認識を行なう場合、認識対象を表すデータ（画像データあるいは音声データ等）が入力層１１０に入力されたのち、中間層（即ち、Ｌ１層１１１、Ｌ２層１１２、及び、Ｌ３層１１３）が、認識対象を表すデータに対する認識処理を行い、出力層がその認識結果を出力する。
【００２２】
本実施形態に係るニューラルネットワーク１１は、例えば、深層学習等の技術分野においてはよく知られている、畳み込みニューラルネットワークＣＮＮ（Convolutional Neural Network）として構成されている。ＣＮＮにおいて行われる「畳み込み」演算では、例えば認識対象を表す画像データを行列として表した場合（行列の各要素は、それぞれ１つのピクセルに相当）、スライド窓関数（フィルタ）と当該行列とを要素ごとに乗算する。この「畳み込み」演算では、次に、要素ごとの乗算値を合計する演算を、行列全体をカバーするようにフィルタ（カーネル）をスライドさせながら各要素に対して行うことによって、全体の畳み込みを行なう。本実施形態に係るＬ１層１１１、Ｌ２層１１２、及び、Ｌ３層１１３は、いずれも、大きさが「３ｘ３」であるフィルタ（以降、本願では、「３ｘ３フィルタ」と称する）による畳み込み演算を行なうこととする。但し、これらの中間層に対して例えば畳み込み演算がフィルタを用いて施される際の窓の大きさは、「３ｘ３」に限定されない。
【００２３】
ニューラルネットワーク１１に含まれる中間層は、下位側に位置する層から上位側に位置する層になるにつれて、より高度な認識処理を行う。例えば、ニューラルネットワーク１１が顔認識処理を行う場合、Ｌ１層１１１は、認識対象を表す顔画像データ（ピクセルデータ）からエッジを検出する処理を行う。Ｌ２層１１２は、Ｌ１層１１１によって検出されたエッジを使用して、顔画像における単純な形状（顔を構成する要素等）を検出する処理を行う。そして、Ｌ３層１１３は、Ｌ２層１１２によって検出された単純な形状を使用して、人物の特定に必要となる、より複雑な特徴を検出する処理を行う。
【００２４】
図３は、本実施形態に係るニューラルネットワーク１１に含まれる中間層が行なう畳み込み演算と、ニューラルネットワーク１１が学習対象とする入力層１１０に入力された学習データ１００における部分領域（以降、本願では「局所領域」と称する）の大きさとの関係を概念的に例示する図である。
【００２５】
Ｌ３層１１３は、Ｌ２層１１２からの出力に対して、３ｘ３フィルタによる畳み込み演算を行なう。この場合、Ｌ３層１１３における１つの要素（領域サイズ＝１ｘ１）に関する（基準とする）Ｌ２層１１２における学習の対象となる領域（以下、学習対象領域と称する）の大きさは「３ｘ３」となる。Ｌ２層１１２は、Ｌ１層１１１からの出力に対して、３ｘ３フィルタによる畳み込み演算を行なう。したがって、Ｌ２層における「３ｘ３」の領域が行方向及び列方向に最大２要素ずつ移動可能な領域である「５ｘ５」の領域は、Ｌ３層１１３における当該要素に関するＬ１層１１１における学習対象領域である。Ｌ１層１１１は、入力層１１０からの出力に対して、３ｘ３フィルタによる畳み込み演算を行なう。したがって、Ｌ１層における「５ｘ５」の領域が行方向及び列方向に最大２要素ずつ移動可能な領域である「７ｘ７」の領域は、Ｌ３層１１３における当該要素に関する入力層１１０における学習対象領域である。
【００２６】
図３は、上述した関係を表しており、Ｌ３層１１３に関して学習効果が期待される、入力層１１０における学習対象領域の大きさの最小値が「７ｘ７」であることを示している。すなわち、学習対象領域の大きさが「７ｘ７」未満である場合、Ｌ３層１１３に関しては、フィルタの中心部にしか有効なデータが存在しないことになるので、学習が困難となる。同様に、Ｌ２層１１２に関して学習効果が期待される、入力層１１０おける学習対象領域の大きさの最小値は「５ｘ５」である。同様にまた、Ｌ１層１１１に関して学習効果が期待される、入力層１１０おける学習対象領域の大きさの最小値は「３ｘ３」である。
【００２７】
上述した通り、ニューラルネットワーク１１においては、一般に、上位側に位置する層ほど高度な認識処理を行う。そして、行なう認識処理が高度になるにつれて、より広範囲な局所領域（学習対象領域）を用いた学習が必要となる。従って、精度の高い処理結果を学習後の運用時に享受するためには、学習対象領域の大きさの最小値は、Ｌ１層１１１に関しては小さく、Ｌ３層１１３に関しては大きいことが必要とされる。
【００２８】
本実施形態に係るニューラルネットワーク学習装置１０は、上述した、異なる中間層に関する、必要とされる学習対象領域の大きさの違いを考慮して、学習データ１００に対して、学習対象領域の大きさを変更した、複数回にわたる学習をニューラルネットワーク１１が行なうように制御する。即ち、図１に示す決定モジュール１２は、ニューラルネットワーク１１が学習対象とする、入力層１１０における局所領域（学習対象領域）の大きさを、ニューラルネットワーク１１の構造に基づいて、Ｌ１層１１１、Ｌ２層１１２、及び、Ｌ３層１１３の個々に対して決定する。決定モジュール１２は、ニューラルネットワーク１１の構造として、例えば、フィルタによる畳み込み演算を行うＬ１層１１１、Ｌ２層１１２、及び、Ｌ３層１１３に関する当該フィルタの大きさを用いる。
【００２９】
図４は、本実施形態に係る決定モジュール１２が、１回目の学習処理における学習対象として決定する学習対象領域の大きさと、各層において学習効果が期待される局所領域の大きさの最小値との関係を例示する図である。決定モジュール１２は、１回目の学習処理において、Ｌ１層１１１に関する学習効果が期待される局所領域の大きさの最小値以上であり、かつ、Ｌ２層１１２に関する学習効果が期待される局所領域の大きさの最小値未満であるという条件を満たすように、学習対象領域の大きさを決定する。より具体的には、図４に例示する通り、Ｌ１層１１１における学習効果が期待される局所領域の大きさの最小値は「３ｘ３」であり、Ｌ２層１１２における学習効果が期待される局所領域の大きさの最小値は「５ｘ５」である。したがって、決定モジュール１２はこの場合、当該条件を満足すべく、１回目の学習対象として決定する局所領域の大きさを、例えば「４ｘ４」に決定する。
【００３０】
決定モジュール１２は、次に、ニューラルネットワーク１１の構造に基づいて、２回目の学習処理における学習対象領域の大きさを決定する。図５は、本実施形態に係る決定モジュール１２が、２回目の学習対象として決定する局所領域の大きさと、各層において学習効果が期待される局所領域の大きさの最小値との関係を例示する図である。決定モジュール１２は、２回目の学習処理において、Ｌ２層１１２における学習効果が期待される局所領域の大きさの最小値以上であり、かつ、Ｌ３層１１３における学習効果が期待される局所領域の大きさの最小値未満であるという条件を満たすように、学習対象領域の大きさを決定する。より具体的には、図５に例示する通り、Ｌ２層１１２における学習効果が期待される局所領域の大きさの最小値は「５ｘ５」であり、Ｌ３層１１３における学習効果が期待される局所領域の大きさの最小値は「７ｘ７」である。したがって、決定モジュール１２はこの場合、当該条件を満足すべく、２回目の学習対象として決定する局所領域の大きさを、例えば「６ｘ６」に決定する。
【００３１】
決定モジュール１２は、その次に、３回目の学習処理に関して、Ｌ３層１１３における学習効果が期待される局所領域の大きさの最小値以上であるという条件を満たすように、学習対象領域の大きさを決定する。尚、本実施形態では、Ｌ３層１１３は、中間層における最上位に位置する層であるので、当該条件には、「次段に位置する層における学習効果が期待される局所領域の大きさの最小値未満である」ことは含まれない。そこでこの場合、決定モジュール１２は、３回目の学習対象領域の大きさを、例えば「８ｘ８」に決定する。
【００３２】
図１に示す制御モジュール１５は、抽出モジュール１３、及び、学習制御モジュール１４を含んでいる。抽出モジュール１３は、決定モジュール１２により決定された学習対象領域の大きさに基づいて、局所領域を、その大きさを変えながら、繰り返し、学習データ１００から抽出する。すなわち、抽出モジュール１３は、１回目の学習処理において、学習データ１００から、大きさが「４ｘ４」である局所領域を抽出する。抽出モジュール１３は、２回目の学習処理において、学習データ１００から、大きさが「６ｘ６」である局所領域を抽出する。抽出モジュール１３は、３回目の学習処理において、学習データ１００から、大きさが「８ｘ８」である局所領域を抽出する。抽出モジュール１３は、この際、学習データ１００を、決定モジュール１２により決定された局所領域の大きさに分割してもよいし、複数の局所領域が重複することを許して、複数の局所領域をランダムに抽出するようにしてもよい。
【００３３】
学習制御モジュール１４は、抽出モジュール１３により繰り返し抽出された局所領域を入力として、ニューラルネットワーク１１が繰り返し学習するように制御する。すなわち、学習制御モジュール１４は、１回目の学習処理において、大きさが「４ｘ４」である局所領域を入力として、ニューラルネットワーク１１が学習するように制御する。この場合、上述した通り、ニューラルネットワーク１１は、Ｌ２層１１２及びＬ３層１１３に関する学習が困難であるので、Ｌ１層１１１に関する学習を行なう。
【００３４】
学習制御モジュール１４は、２回目の学習処理において、大きさが「６ｘ６」である局所領域を入力として、ニューラルネットワーク１１が学習するように制御する。この場合、ニューラルネットワーク１１は、Ｌ３層１１３に関する学習が困難であるので、Ｌ１層１１１及びＬ２層１１２に関する学習を行なう。そして学習制御モジュール１４は、３回目の学習処理において、大きさが「８ｘ８」である局所領域を入力として、ニューラルネットワーク１１が学習するように制御する。この場合、ニューラルネットワーク１１は、Ｌ１層１１１乃至Ｌ３層１１３に関する学習を行なう。
【００３５】
ニューラルネットワーク１１は、例えば一般的によく用いられる学習方法である、誤差逆伝播法に基づく確率的勾配降下法などを用いて、上述した学習を行なう。
【００３６】
次に図６のフローチャートを参照して、上述した各モジュールを本実施形態に係るニューラルネットワーク学習装置１０に実装する場合の動作（処理）について詳細に説明する。
【００３７】
ニューラルネットワーク学習装置１０は、変数ｉ（ｉは１乃至３のいずれかの整数）を１から３に変化させながら、ステップＳ１０２からステップＳ１０４までの処理を繰り返し実行する（ステップＳ１０１）。
【００３８】
決定モジュール１２は、ニューラルネットワーク１１の構造に基づいて、Ｌｉ層における学習効果が期待される局所領域の大きさの最小値以上であり、かつ、Ｌ（ｉ＋１）層における学習効果が期待される局所領域の大きさの最小値未満であるという条件を満たすように、学習対象領域の大きさを決定する（ステップＳ１０２）。
【００３９】
制御モジュール１５に含まれる抽出モジュール１３は、決定モジュール１２によって決定された学習対象領域の大きさに基づいて、学習対象領域を学習データ１００から抽出する（ステップＳ１０３）。制御モジュール１５に含まれる学習制御モジュール１４は、決定モジュール１２によって抽出された学習対象領域を入力として、ニューラルネットワーク１１が学習するように制御する（ステップＳ１０４）。
【００４０】
ニューラルネットワーク学習装置１０は、変数ｉが３未満である場合は、変数ｉに１を加算して、ステップＳ１０２からの処理を実行し、変数ｉが３である場合は、全体の処理を終了する（ステップＳ１０５）。
【００４１】
なお、図６に示すフローチャートでは、ニューラルネットワーク学習装置１０は、ステップＳ１０２乃至Ｓ１０４を繰り返し行なうが、ニューラルネットワーク学習装置１０が行なうフローは、これとは異なってもよい。ニューラルネットワーク学習装置１０は、例えば、各中間層に対して学習対象領域の大きさを全て決定した後に（即ち、変数ｉが取り得る全ての値についてステップＳ１０２を完了した後に）、図６に示すＳ１０３乃至Ｓ１０４を繰り返し行なうようにしてもよい。
【００４２】
本実施形態に係るニューラルネットワーク学習装置１０は、学習データが少ない場合であっても、ニューラルネットワークの汎化性能が低下することを回避できる。その理由は、ニューラルネットワーク学習装置１０は、複数の階層を含むニューラルネットワークの構造に基づいて、学習対象領域の大きさを各階層に対して決定し、その大きさで抽出した局所領域を入力として、ニューラルネットワークが繰り返し学習するように制御するからである。
【００４３】
以下に、本実施形態に係るニューラルネットワーク学習装置１０によって実現される効果について、詳細に説明する。
【００４４】
ニューラルネットワークが行なう深層学習では、学習データが少量である場合、過学習によって、汎化性能が大きく低下することが知られている。深層学習では、一般的に、誤差逆伝播法に基づいて、出力層から入力層に向かって誤差を逆伝播することによって、出力層における誤差が小さくなるように学習する。学習データが少量である場合、ニューラルネットワークは、出力層に近い上位層のみにおいて学習することによって、誤差を十分小さくすることができる。但しこの場合、上位層における学習が進み、入力層に近い下位層における学習が進まなくなるという現象が発生する。これにより、ニューラルネットワークは過学習の状態となるので、その汎化性能が低下するという問題がある。
【００４５】
このような問題に対して、本実施形態に係るニューラルネットワーク学習装置１０は、決定モジュール１２、及び、制御モジュール１５を備える。そして制御モジュール１５は、抽出モジュール１３、及び、学習制御モジュール１４を含む。即ち、決定モジュール１２は、複数の階層を含むニューラルネットワーク１１が学習対象とする、入力層１１０における局所領域の大きさを、ニューラルネットワーク１１の構造に基づいて、個々の階層に対して決定する。抽出モジュール１３は、決定モジュール１２により決定された局所領域（学習対象領域）の大きさに基づいて、局所領域を、その大きさを変えながら繰り返し抽出する。そして、学習制御モジュール１４は、抽出モジュール１３により繰り返し抽出された局所領域を入力として、ニューラルネットワーク１１が繰り返し学習するように制御する。
【００４６】
より具体的には、本実施形態に係るニューラルネットワーク学習装置１０は、まず、Ｌ１層１１１に関する学習が進み、Ｌ２層１１２及びＬ３層１１３に関する学習が進まないような大きさの局所領域（学習対象領域）を入力として、ニューラルネットワーク１１が学習するように制御する。ニューラルネットワーク学習装置１０は、次に、Ｌ１層１１１及びＬ２層１１２に関する学習が進み、Ｌ３層１１３に関する学習が進まないような大きさの局所領域を入力として、ニューラルネットワーク１１が学習するように制御する。ニューラルネットワーク学習装置１０は、その後、Ｌ１層１１１乃至Ｌ３層１１３に関する学習が進むような大きさの局所領域を入力として、ニューラルネットワーク１１が学習するように制御する。これにより、本実施形態に係るニューラルネットワーク学習装置１０は、学習データが少ない場合であっても、ニューラルネットワーク１１が効率的に学習するように制御することによって、ニューラルネットワーク１１の汎化性能が低下することを回避できる。
【００４７】
また、本実施形態に係る決定モジュール１２は、第１の階層に関する学習効果が期待される局所領域の大きさの最小値以上であり、かつ、その第１の階層の上位に隣接する第２の階層に関する学習効果が期待される局所領域の大きさの最小値未満であるという条件を満たすように、第１の階層に対して局所領域の大きさを決定する。そして、決定モジュール１２は、フィルタによる畳み込み演算を行う階層に関するフィルタの大きさに基づいて、局所領域の大きさを決定する。これにより、本実施形態に係るニューラルネットワーク学習装置１０は、ニューラルネットワーク１１の汎化性能が低下することを、確実に回避することができる。
【００４８】
＜第２の実施形態＞
図７は、本願発明の第２の実施形態に係るニューラルネットワーク学習装置２０の構成を概念的に示すブロック図である。
【００４９】
本実施形態に係るニューラルネットワーク学習装置２０は、決定モジュール２２、及び、制御モジュール２５を備えている。
【００５０】
決定モジュール２２は、複数の階層を含むニューラルネットワーク２１が学習対象とする、学習情報２００における局所領域の大きさを、ニューラルネットワーク２１の構造に基づいて、個々の階層に対して決定する。
【００５１】
制御モジュール２５は、決定モジュール２２により決定された局所領域の大きさに基づいて、局所領域を学習情報２００から抽出する。
【００５２】
制御モジュール２５は、抽出した局所領域が表す学習情報を、ニューラルネットワーク２１が学習することを、学習情報２００から抽出する局所領域の大きさを変えながら繰り返し行うように制御する。
【００５３】
本実施形態に係るニューラルネットワーク学習装置２０は、学習データが少ない場合であっても、ニューラルネットワークの汎化性能が低下することを回避できる。その理由は、ニューラルネットワーク学習装置２０は、複数の階層を含むニューラルネットワークの構造に基づいて、学習対象とする局所領域の大きさを各階層に対して決定し、その大きさで抽出した局所領域を入力として、ニューラルネットワークが繰り返し学習するように制御するからである。
【００５４】
＜ハードウェア構成例＞
上述した各実施形態において図１、及び、図７に示したニューラルネットワーク学習装置１０及び２０における各部は、専用のＨＷ（ＨａｒｄＷａｒｅ）（電子回路）によって実現することができる。また、図１、及び、図７において、少なくとも、下記構成は、ソフトウェアプログラムの機能（処理）単位（ソフトウェアモジュール）と捉えることができる。
・決定モジュール１２及び２２、
・制御モジュール１５及び２５。
【００５５】
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図８を参照して説明する。
【００５６】
図８は、本願発明の各実施形態に係るニューラルネットワーク学習装置を実行可能な情報処理装置９００（コンピュータ）の構成を例示的に説明する図である。即ち、図８は、図１、及び、図７に示したニューラルネットワーク学習装置或いはその一部を実現可能なコンピュータ（情報処理装置）の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。図８に示した情報処理装置９００は、構成要素として下記を備えている。
・ＣＰＵ（Ｃｅｎｔｒａｌ＿Ｐｒｏｃｅｓｓｉｎｇ＿Ｕｎｉｔ）９０１、
・ＲＯＭ（Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）９０２、
・ＲＡＭ（Ｒａｎｄｏｍ＿Ａｃｃｅｓｓ＿Ｍｅｍｏｒｙ）９０３、
・ハードディスク（記憶装置）９０４、
・無線送受信部等の外部装置との通信インタフェース９０５、
・バス９０６（通信線）、
・ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ＿Ｄｉｓｃ＿Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）等の記録媒体９０７に格納されたデータを読み書き可能なリーダライタ９０８、
・入出力インタフェース９０９。
【００５７】
即ち、上記構成要素を備える情報処理装置９００は、これらの構成がバス９０６を介して接続された一般的なコンピュータである。情報処理装置９００は、ＣＰＵ９０１を複数備える場合もあれば、マルチコアにより構成されたＣＰＵ９０１を備える場合もある。
【００５８】
そして、上述した実施形態を例に説明した本願発明は、図８に示した情報処理装置９００に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図（図１及び図７）における上述した構成、或いはフローチャート（図６）の機能である。本願発明は、その後、そのコンピュータプログラムを、当該ハードウェアのＣＰＵ９０１に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ（ＲＡＭ９０３）、または、ＲＯＭ９０２やハードディスク９０４等の不揮発性の記憶デバイスに格納すれば良い。
【００５９】
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、ＣＤ−ＲＯＭ等の各種記録媒体９０７を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本願発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体９０７によって構成されると捉えることができる。
【００６０】
以上、上述した実施形態を模範的な例として本願発明を説明した。しかしながら、本願発明は、上述した実施形態には限定されない。即ち、本願発明は、本願発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【００６１】
この出願は、２０１７年１月１９日に出願された日本出願特願２０１７−００７６１４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００６２】
１０    ニューラルネットワーク学習装置
１１    ニューラルネットワーク
１１０    入力層
１１１    Ｌ１層
１１２    Ｌ２層
１１３    Ｌ３層
１１４    出力層
１２    決定モジュール
１３    抽出モジュール
１４    学習制御モジュール
１５    制御モジュール
１００    学習データ
１０１    パターン認識入力データ
１０２    パターン認識結果
２０    ニューラルネットワーク学習装置
２１    ニューラルネットワーク
２２    決定モジュール
２５    制御モジュール
２００    学習情報
９００    情報処理装置
９０１    ＣＰＵ
９０２    ＲＯＭ
９０３    ＲＡＭ
９０４    ハードディスク（記憶装置）
９０５    通信インタフェース
９０６    バス
９０７    記録媒体
９０８    リーダライタ
９０９    入出力インタフェース
【図１】
2018135516.tif 000003
【図２】
2018135516.tif 000004
【図３】
2018135516.tif 000005
【図４】
2018135516.tif 000006
【図５】
2018135516.tif 000007
【図６】
2018135516.tif 000008
【図７】
2018135516.tif 000009
【図８】
2018135516.tif 000010
【手続補正書】
【提出日】令和1年7月5日(2019.7.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定手段と、
前記決定手段により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御手段と、
を備えるニューラルネットワーク学習装置。
【請求項２】
前記決定手段は、第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項１に記載のニューラルネットワーク学習装置。
【請求項３】
前記決定手段は、フィルタによる畳み込み演算を行う前記階層に関する前記フィルタの大きさに基づいて、前記局所領域の大きさを決定する、
請求項１または２に記載のニューラルネットワーク学習装置。
【請求項４】
パターン認識処理を行う前記ニューラルネットワークをさらに備える、
請求項１乃至３のいずれか一項に記載のニューラルネットワーク学習装置。
【請求項５】
前記ニューラルネットワークは、前記パターン認識処理として、顔認識処理、あるいは物体認識処理、あるいは音声認識処理を行う、
請求項４に記載のニューラルネットワーク学習装置。
【請求項６】
情報処理装置によって、
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定し、
決定した前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する、
ニューラルネットワーク学習方法。
【請求項７】
第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項６に記載のニューラルネットワーク学習方法。
【請求項８】
フィルタによる畳み込み演算を行う前記階層に関する前記フィルタの大きさに基づいて、前記局所領域の大きさを決定する、
請求項６または７に記載のニューラルネットワーク学習方法。
【請求項９】
複数の階層を含むニューラルネットワークが学習対象とする、学習情報における局所領域の大きさを、前記ニューラルネットワークの構造に基づいて、個々の前記階層に対して決定する決定処理と、
前記決定処理により決定された前記局所領域の大きさに基づいて、前記局所領域を前記学習情報から抽出するとともに、抽出した前記局所領域が表す前記学習情報を前記ニューラルネットワークが学習することを、前記学習情報から抽出する前記局所領域の大きさを変えながら繰り返し行うように制御する制御処理と、
をコンピュータに実行させるためのニューラルネットワーク学習プログラム。
【請求項１０】
前記決定処理は、第一の前記階層に関する学習効果が期待される前記局所領域の大きさの最小値以上であり、かつ、前記第一の階層の次段に位置する第二の前記階層における学習効果が期待される前記局所領域の大きさの最小値未満であることを満たすように、前記第一の階層に対して前記局所領域の大きさを決定する、
請求項９に記載のニューラルネットワーク学習プログラム。
【国際調査報告】
2018135516.tif 000011
2018135516.tif 000012