(57)【要約】  ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、を有する。
2020054399.tif 000002
【特許請求の範囲】
【請求項１】
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を有する
学習構造推定装置。
【請求項２】
請求項１に記載の学習構造推定装置であって、
前記推定部は、未学習の状態において前記学習波受信部が得ると推定される計算値と、前記出力値と、の間に生じるずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
【請求項３】
請求項２に記載の学習構造推定装置であって、
前記推定部は、前記学習波発信部が発信する学習波を変えながら取得した、前記計算値と前記出力値とのずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
【請求項４】
請求項１から請求項３までのいずれか１項に記載の学習構造推定装置であって、
前記推定部は、推定したニューラルネットワークの構造中に所定の領域が存在するか否か確認するよう構成され、
前記学習波発信部は、前記推定部が確認した前記領域に影響を与える学習波を発信する
学習構造推定装置。
【請求項５】
請求項４に記載の学習構造推定装置であって、
前記領域に影響を与える学習波として、逆位相、正位相、拡散、のうちのいずれかの特性を有する学習波を発信する
学習構造推定装置。
【請求項６】
請求項１から請求項５までのいずれか１項に記載の学習構造推定装置であって、
前記学習波発信部は、個別のニューロンの位相を変化させることで、ターゲット方向に対して指向性のあるビームとしての特性を有する学習波を発信可能なよう構成されている
学習構造推定装置。
【請求項７】
請求項１から請求項６までのいずれか１項に記載の学習構造推定装置であって、
前記学習波発信部が発信する前記学習波を計算する学習波計算部を有する
学習構造推定装置。
【請求項８】
請求項１から請求項７までのいずれか１項に記載の学習構造推定装置であって、
学習データをニューラルネットワークの上位層に入力するデータ入力部と、
ニューラルネットワークの下位層から前記データ入力部による入力の結果を取得するデータ出力部と、
を有する
学習構造推定装置。
【請求項９】
学習構造推定装が、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得て、
前記出力値に基づいて、ニューラルネットワークの構造を推定する
学習構造推定方法。
【請求項１０】
学習構造推定装置に、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を実現させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習構造推定装置、学習構造推定方法、記録媒体に関する。
【背景技術】
【０００２】
ニューラルネットワークを用いた学習システムが知られている。【０００３】
例えば、特許文献１には、ニューラルネットワークを具備する系統連系装置が記載されている。特許文献１によると、ニューラルネットワークは、事前に学習装置により学習を行っており、振幅差・位相差演算手段及び時系列データ演算手段から得られるそれぞれの演算結果を同時並行入力し、学習通り基準電圧を出力する。【０００４】
また、例えば、特許文献２には、複数の学習データによりニューラルネットワークを学習させる学習処理を行う学習部と、所定の場合に少なくとも１つのニューロンを含む追加中間層を新たに生成する中間層生成部と、を備えたニューラルネットワーク学習装置が記載されている。特許文献２によると、中間層生成部による中間層生成処理で追加中間層を新たに生成した場合、追加中間層が生成されたニューラルネットワークにて学習処理を再度実行する。このような構成により、ニューラルネットワークの構造を最適化することが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−２４８８３５号公報
【特許文献２】特開２０１７−３７３９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ニューラルネットワークがトレーニングのデータを記憶する際、データのトレーニングに成功したが、サンプル外での予測には役に立たなくなる過剰適合（overfitting）という現象が生じることがある。このような過剰適合という現象が生じてしまうと、テストデータでは、高い精度で動作しても、実世界では、期待道理に動作しないとの問題が発生することになる。【０００７】
上記のような過剰適合の状態では学習結果を役立てることが出来ない。そのため、過剰適合は解消することが望ましい。しかしながら、特許文献１、２に記載されているような技術では、過剰適合を起こすようなニューラルネットワークの構造を特定することが出来ず、過剰適合を効果的に解消することが出来なかった。【０００８】
このように、問題が生じるようなニューラルネットワークの構造を効率的に特定することが難しい、という問題が生じていた。その結果、過剰適合などの問題のある状態を効率的に解消することが出来ない、という事態が生じていた。【０００９】
そこで、本発明の目的は、問題が生じるようなニューラルネットワークの構造を効率的に特定することが難しい、という問題を解決する学習構造推定装置、学習構造推定方法、記録媒体を提供することにある。
【課題を解決するための手段】
【００１０】
かかる目的を達成するため本発明の一形態である学習構造推定装置は、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を有する
という構成をとる。【００１１】
また、本発明の他の形態である学習構造推定方法は、
学習構造推定装が、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得て、
前記出力値に基づいて、ニューラルネットワークの構造を推定する
という構成をとる。【００１２】
また、本発明の他の形態である記録媒体は、
学習構造推定装置に、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を実現させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体である。
【発明の効果】
【００１３】
本発明は、以上のように構成されることにより、問題が生じるようなニューラルネットワークの構造を効率的に特定することが難しい、という問題を解決する学習構造推定装置、学習構造推定方法、記録媒体を提供することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態における学習装置の構成の一例を示すブロック図である。
【図２】ニューラルネットワークの模式図である。
【図３】ニューラルネットワーク内で平面波を生成した場合の模式図である。
【図４】ニューラルネットワーク内でビーム波を生成した場合の模式図である。
【図５】学習が進んだニューラルネットワーク内で平面波が変化する状態の一例を示す模式図である。
【図６】学習状態と検知状態の一例を示す図である。
【図７】学習状態と検知状態の一例を示す図である。
【図８】学習装置が構造を検知する際の流れの一例を示すフローチャートである。
【図９】学習装置が再学習を行う際の流れの一例を示すフローチャートである。
【図１０】本発明の第２の実施形態における学習構造推定装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
［第１の実施形態］
本発明の第１の実施形態を図１から図９までを参照して説明する。図１は、学習装置１の構成の一例を示すブロック図である。図２は、ニューラルネットワークの模式図である。図３は、ニューラルネットワーク内で平面波を生成した場合の模式図である。図４は、ニューラルネットワーク内でビーム波を生成した場合の模式図である。図５は、学習が進んだニューラルネットワーク内で平面波が変化する状態の一例を示す模式図である。図６、図７は、学習状態と検知状態の一例を示す図である。図８は、学習装置１が構造を検知する際の流れの一例を示すフローチャートである。図９は、学習装置１が再学習を行う際の流れの一例を示すフローチャートである。
【００１６】
本発明の第１の実施形態では、ニューラルネットワーク内を伝搬するデータを疑似的な波として捉えた学習波を用いて、ニューラルネットワークを構成するニューロン３の構造を検知、推定することが可能な学習装置１（学習構造推定装置）について説明する。後述するように、本実施形態において説明する学習装置１は、ホイヘンス＝フレネルの原理に基づいた位相配列型（フェーズドアレイ型）のレーダと同様の原理に基づく方法などを用いてニューラルネットワーク内に対する学習波の発信を行う。そして、例えば、学習装置１は、予め計算した理論的な計算値と、学習波受信部８が得た値と、のずれに基づいて、ニューロン３の構造を推定する。また、学習装置１は、特定した構造に所定の領域が存在するか否か確認して、確認した領域に影響を与える学習波を生成、発信することが出来る。
【００１７】
学習装置１は、例えば、ネットワークを介して接続された外部装置などから学習データを得ることにより、学習を実施する情報処理装置である。図１は、学習装置１の構成の一例を示している。図１を参照すると、学習装置１は、データ入力部２と、ニューロン３と、データ出力部４と、学習波制御部５と、学習波計算部６と、学習波発信部７と、学習波受信部８と、を有している。
【００１８】
例えば、学習装置１は、ＣＰＵ（Central Processing Unit）などの演算装置と、プログラムを記憶した記憶装置と、を有している。例えば、学習装置１は、記憶装置が記憶するプログラムを演算装置が実行することで、上記各処理部を実現する。
【００１９】
なお、図１では、学習装置１が１台の情報処理装置により構成されている場合について例示している。しかしながら、学習装置１は、複数台の情報処理装置により構成されても構わない。例えば、学習装置１は、データ入力部２とニューロン３とデータ出力部４としての機能を有する情報処理装置と、学習波制御部５と学習波計算部６と学習波発信部７と学習波受信部８としての機能を有する情報処理装置と、から構成されても構わない。学習装置１は、上記例示した以外の構成であっても構わない。
【００２０】
データ入力部２は、例えば、学習装置１の外部などから学習または識別のためのデータである学習データを受け付ける。データ入力部２は、入力されたデータをニューロン３の最上層である上位層に伝搬する。
【００２１】
ニューロン３は、学習装置１の主な構成要素である。ニューロン３は、データ入力部２が受け付けた学習データに基づいて、重みの調整を実施する学習処理を実行する。
【００２２】
ニューロン３は、一般的に上下の層を構成しており、上方の層のニューロンは、下層のニューロンと結合している。ニューロン３において、学習の情報が上層から伝わると、ニューロン３中のニューロンは反応し、入力された値とは異なる値を下層に伝搬する。このように、ニューロン３はニューラルネットワークを構成している。図２に、一般的なニューラルネットワークの模式図を示す。
【００２３】
例えば、図１の場合、ニューロン３は、上位層と、中間層と、下位層と、から構成されている。なお、ニューロン３が有する中間層は、１つであっても構わないし、複数であっても構わない。
【００２４】
また、ニューロン３は、最終層からいわゆる逆向き伝搬（誤差伝搬等）を行うことが出来る。ニューロン３は、上記逆向き伝搬に伴い、自分の出力値を修正する。
【００２５】
データ出力部４は、学習の目的状況の入力または、識別の結果をニューロン３の最下層である下位層から受け取る。そして、データ出力部４は、受け取った結果を出力する。データ出力部４による出力先は、例えば、学習装置１が有する画面表示部やネットワークを介して接続された外部装置など、任意のもので構わない。
【００２６】
なお、データ入力部２と、ニューロン３と、データ出力部４とは、従来から利用されている既知のものと同様の構成であって構わない。データ入力部２と、ニューロン３と、データ出力部４とは、既知の変形例を有して構わない。
【００２７】
学習波制御部５は、学習波の計算を学習波計算部６に指示したり、学習波を伝搬した結果に基づくニューロン３の構造の推定を行ったりする。また、学習波制御部５は、推定したニューロン３の構造中の所定領域に影響を与える学習波の計算を学習波計算部６に指示することが出来る。
【００２８】
例えば、学習波制御部５は、ニューロン３の構造を推定するために、平面波や拡散波、ビームなどの複数の検知用の学習波や位相の異なる学習波を計算するよう学習波計算部６に指示する。また、学習波制御部５は、ニューロン３中の各ニューロンが単純な振動格子として振る舞う際に学習波受信部８が受信すると想定される理論的な出力値を、例えば学習波計算部６から取得する。そして、学習波制御部５は、学習波発信部７が発信する学習波を変えながら、実際の学習波受信部８からの出力（出力値）と、取得した理論的な計算値とを比較することで、上記２つの値のずれに基づいて、ニューロン３の構造推定を行う。
【００２９】
さらに、学習波制御部５は、推定した構造を分析して、ニューロン３の構造中に所定の領域があるか否か確認することが出来る。上記所定の領域は、例えば、勾配が消失している領域、急な崖が存在する領域、コラム構造領域、結晶構造領域、複数のニューロン３の構造を学習した結果特定される領域（例えば、過剰適合が生じている際に生じる領域）などがある。そして、学習波制御部５は、上記所定の領域に影響を与える学習波の計算を学習波計算部６に指示する。なお、影響の与え方には、学習勾配を緩和（逆位相）、学習勾配を強化（正位相）、特定構造を破壊（拡散）等がある。
【００３０】
以上のように、学習波制御部５は、ニューロン３の構造を推定する際やニューロン３中の所定領域に影響を与える際などに学習波の制御を行う。なお、学習波制御部５による動作の詳細は後述する。
【００３１】
学習波計算部６は、学習波制御部５からの指示に基づいて、学習波を生成するための計算を実施する。学習波計算部６は、平面波などを計算するとともに、所謂ホイヘンス＝フレネルの原理に基づき、ターゲット方向に対し、指向性のあるビームを計算することができる。つまり、学習波計算部６は、位相配列型（フェーズドアレイ型）のレーダで用いられている原理と同様の原理を用いることで、任意の方向へ指向性のある学習波を計算可能なよう構成されている。
【００３２】
また、学習波計算部６は、学習波受信部８が受信すると想定される理論的な計算値を計算することが出来る。例えば、学習波計算部６は、ニューロン３中の各ニューロンが単純な振動格子として振る舞う際に学習波受信部８が受信すると想定される理論的な計算値を計算することが出来る。
【００３３】
なお、学習波計算部６は、実際に発信する電波等を計算するのではなく、ニューラルネットワークの各ニューロンに波（学習波）が到達したときの位相を計算する。また、学習波は数値計算に基づいて発生させるため、個々の学習データの作成や個別のニューロン調整を実施する必要はない。
【００３４】
具体的な一例としては、例えば、学習波計算部６は、最終段の右側ニューロンを＋値、左側ニューロンを-値にしたい場合、矩形波が合成されるように、上位層のニューロン値をAsinΘ/π  Asin3Θ/3π  Asin5Θ/5π  …のように割り振る（なお、Aはニューロンの取り得る値の幅内に収まるための適当な定数である）。もちろん、学習波計算部６は、上記例示した以外の計算を行うよう構成しても構わない。
【００３５】
学習波発信部７は、学習波制御部５から、学習波を発生するためのデータを受け取る。つまり、学習波発信部７は、学習波制御部５を介して、学習波計算部６で計算した結果を示す情報を受信する。そして、学習波発信部７は、ニューロン３の最上層である上位層を制御することで、学習波を発生させる。
【００３６】
学習波受信部８は、ニューロンの最下層である下位層からの出力である出力値を得る。学習波受信部８は、下位層からの出力である出力値を学習波制御部５に送付する。
【００３７】
なお、図１では、ニューロン３の最下層である下位層からの出力を利用する場合について例示している。しかしながら、原理的には中間層あるいは、複数の層から出力値を得てもよく、どの層から取り出すかは、実装上の差異に過ぎない。つまり、学習波受信部８は、下位層以外から出力値を得ても構わないし、複数の層から出力値を得ても構わない。
【００３８】
以上が、学習装置１の構成の一例である。
【００３９】
ここで、学習装置１の処理について、より詳細に説明する。
【００４０】
例えば、波動的にみると、非学習の状態におけるニューロン３中の各ニューロンは、単純な振動格子である。また、学習とは、波が上層から下層に伝わっていく過程である。
【００４１】
例えば、ニューロン３の最上層である上位層が同時に同じ出力で、下層である中位層に学習波を出力して、最終層である下位層まで同様に伝搬したとする。この場合、マクロ的にみれば、全体として、平面波が発生している状態である。図３に平面波の発信の様子を示す。
【００４２】
また、ニューロン３の最上層である上位層の個別のニューロンの出力値（位相）を変化させることで、中間層である第２層以降に到達する波（学習波）を制御することが可能である。つまり、学習波発信部７が学習波計算部６による計算の結果に基づいて上位層のニューロンを個別に制御することで、極めて細いビームの生成や、拡散された波、水面の屈折と同様に波の進行方向を変化させることも可能である。図４に指向性を持つビームの発信の様子を図示する。
【００４３】
これらの波は、学習波計算部６により、厳密に計算することができる。学習波計算部６による各種学習波の計算は、基本的に波動方程式に依存する。この計算は、位相配列型のレーダにおいて行われている計算と同様である。換言すると、学習波計算部６により計算される学習波は波動関数を使った数値データであり、最上層である上位層に投入する数値データにより中間層などの特定領域に特定の値を発生することが可能である。
【００４４】
また、学習が行われていない場合、ニューロン３中の各ニューロンは、上述したように、固有値を持たない単純な振動格子である。このため、学習波発信部７により学習波が発信され、最下層である下位層のニューロンの出力値を学習波受信部８が受け取った場合、学習波受信部８が受け取った出力値は、原理的には、学習波計算部６が計算する理論的な計算値と一致する。なお、ニューロンの数などによる制限（波動的には媒質とその境界等で発生する反射等）に関しては、学習前に「学習波」を様々に変化させた際の出力値を学習波受信部８が受け取っておくことで、非学習時のニューロン３全体の特性として、事前に得ることが可能である。例えば、学習波計算部６は、理論的な計算値を計算する際に、上記事前に得た情報に応じた補正を行うことが出来る。
【００４５】
また、データ入力部２から伝搬された学習データにより学習が進んだ状況下で、学習波を発生させ、学習波受信部８が取得した出力値を見ると、図５で示すように、非学習時とは異なる結果となる。
【００４６】
図５で示す例の場合、学習が進むことにより、各ニューロンが単純な振動格子ではなく、固有値（固有振動数）を持つ格子になっている。そのため、学習波は内部の構造に応じて、回折したり、屈折したり、反射したりする。その結果、学習波受信部８が得る出力値は、上記のような、内部の構造に応じて、回折したり、屈折したり、反射したりした結果の値となる。換言すると、学習波受信部８が得る出力値は、ニューロン３内部の仮想的な構造に応じた値であることになる。
【００４７】
以上のように、学習波受信部８が得る出力値は、学習の有無によって変化し、また、学習による変化に応じたものとなる。そのため、学習波受信部８が得る出力値によると、ニューロン３中のどの領域のニューロンが特定の学習に係わっているか判定することが出来る。原理的には、レーダによる物体の観測や超音波探傷試験等と同一である。
【００４８】
なお、特定の受信部の感度（最下層である下位層のうちの特定のニューロンの出力値）が小さい場合、その理由としては、媒質の密度が濃い（全体として、１個１個のニューロンの出力値が小さい）場合や大きな物体によって電波が遮られている（特異な学習点があり、他の出力が抑制されている）場合などが考えられる。このような場合、例えば、学習波制御部５による制御により、位相などが異なる複数の学習波を、学習波発信部７を介して発信することで、媒質の密度や特異な領域を確定させることができる。これは、学習状態を勾配としてとらえるレーダを使って、地形を計測していることと同義である。
【００４９】
学習波制御部５がニューロン３の構造を特定する際に用いるアルゴリズムとしては、例えば、逆投影法（Back projection）や逐次近似画像再構成法（Iterative reconstruction）等を利用することが出来る。
【００５０】
例えば、単純な例として閾値のみで構成されたニューラルネットでの状況を図示する。初期状態の閾値は１とする。このような、学習されていない状態＝何もない空間の状態は、図６のような状態となる。
【００５１】
図６で示す場合、入力層の各ニューロンに１ずつ値が入力されると、次の段には１／４ずつ出力される。また、上記を合成すると１になる。そのため、次の層にまた１／４ずつ出力される。これは、平行波の状態である。
【００５２】
一方、学習された状態＝重みがついた状態の一例として図７を示す。図７中の高くなっている部分が、学習の結果、閾値が上がった状態を示している。図７で示す場合、上位層から入力される値がこの高さを超えないと、次の層への出力は０となる。光波と考えると、高い部分の後方の領域は、暗く（影に）なる。ただし、図７で示す通り、他のニューロンからも光（値）はとどく。そのため、影になる部分も実際の値は０よりも高くなる。
【００５３】
学習波制御部５は、これらの影の状態から内部の物体（ニューロン３の構造）を推定することになる。なお、当然ながら、学習波制御部５が学習波受信部８を用いて観測するのは、学習波受信部８が得た出力値と、学習波計算部６による計算の結果である理論的な計算値と、の間に生じるずれである。ずれを精密に観測するためには、上述したように、学習波発信部７による入力値を様々に変える必要がある。
【００５４】
以上のように、学習波制御部５は、最終層である下位層からの出力と理論的な計算値との間のずれに基づいて、ニューロン３の構造を推定することが出来る。ここで、従来より、学習時の勾配消失状態等のニューロン近傍の状態が特定の構造を持つことは知られている。そのため、例えば、「ある構造が観測された場合に学習状態がうまくいっていない（例えば、過剰適合がある）」と判断できる事象の推定構造を予め集めて記憶しておくことで、当該記憶している情報を利用して、現在の状態を判定することが可能となる。予め記憶している状態との比較方法などは、既知の技術を採用して構わない。換言すると、上記判定方法に関しては、本特許では特に限定はしない。
【００５５】
また、本発明によると、特異な領域を発見した場合にその領域に特定の値（ビーム）を発生させることが可能である。そのため、上記特定の値を含む形で、再学習を実施すると、学習データのみの学習とは異なる形でニューラルネットワークの学習を行うことが可能となる。その結果、例えば、過剰適合の状態を効率的に解消することが可能となる。換言すると、本実施形態で説明した学習装置１によると、教師データ＋逆向き誤差伝搬という形以外でのニューロンの制御が可能となる。つまり、学習装置１によると、ある学習データに関する学習の中心的領域を計測し、さらにその領域に特定の値を自動的に発生させた上で、再学習を実施させることができる。これにより、過剰な学習を外部から自動的に制御することが可能となる。
【００５６】
次に、図８、図９を参照して、学習装置１の動作の一例について説明する。まずは、図８を参照して、学習波を用いてニューロン３の構造を検知、推定する際の学習装置１の動作の一例について説明する。ただし、以下の動作説明は一例であり、「学習した上で逆位相の学習波を投入する」方式や「学習をしながら検知を行い、学習波を随時投入する」方式、などを採用しても構わない。
【００５７】
学習波制御部５による制御に応じて、学習波計算部６は、学習波を計算する（ステップＳ１０１）。例えば、学習波計算部６は、平面波、拡散波、ビームなど様々な種類の学習波を計算することが出来る。
【００５８】
学習波発信部７は、学習波計算部６による計算の結果に基づいて、学習波に相当する数値データをニューロン３の上位層に投入する（ステップＳ１０２）。これにより、学習波発信部７は、学習波を発信する。
【００５９】
学習波受信部８は、最下層である下位層に到達した学習波（ニューロンの出力値）を検知する（ステップＳ１０３）。なお、学習波受信部８は、中間層から学習波を検知しても構わない。
【００６０】
学習波制御部５は、学習波受信部８が検知した出力値に基づいて、ニューロン空間内にある仮想の物体の形状と領域を推定（学習勾配を推定）する（ステップＳ１０４）。例えば、学習波制御部５は、学習波計算部６から、ニューロン３中の各ニューロンが単純な振動格子として振る舞う際の理論的な計算値を取得する。そして、学習波制御部５は、学習波受信部８からの出力値と、理論的な計算値とを比較することで、上記２つの値のずれに基づいて、ニューロン３の構造推定を行う。
【００６１】
また、学習波制御部５は、ニューロン３の構造推定に十分なデータが集まっているか否か確認する（ステップＳ１０５）。ニューロンの出力値が小さく構造を把握できないなど、推定に十分なデータが集まっていないと判断した場合（ステップＳ１０５、ＮＯ）、学習波制御部５は、位相を変更する、所定の方向へのビームを生成する、など、新たな学習波の計算を学習波計算部６に指示する。これに応じて、学習波計算部６は、学習波のパラメータ修正を計算する（ステップＳ１０６）。その後、学習波発信部７は、修正した学習波を発信する（ステップＳ１０２）。一方、ニューロン３の構造推定に十分なデータが集まっている場合（ステップＳ１０５、ＹＥＳ）、学習装置１は処理を終了する。
【００６２】
続いて、図９を参照して、学習波を加えた上での学習である再学習を行う際の動作の一例について説明する。
【００６３】
図９を参照すると、学習波制御部５は、図８を参照して説明した動作により推定した構造を分析して、推定したニューロン３の構造中に所定の構造があるか否か確認する（ステップＳ２０１）。上記所定の構造は、例えば、勾配が消失している領域、急な崖が存在する領域、コラム構造、結晶構造、複数のニューロン３の構造を学習した結果特定される構造（例えば、過剰適合が生じている際に生じる構造）などがある。
【００６４】
学習波制御部５は、上記確認した構造に応じた学習波を計算するよう学習波計算部６に指示する。例えば、学習波制御部５は、確認した領域に影響を与える学習波を計算するよう学習波計算部６に指示する。なお、影響の与え方は、学習勾配を緩和（逆位相）、学習勾配を強化（正位相）、特定構造を破壊（拡散）等がある。これに応じて、学習波計算部６は、指示に応じた学習波を計算する（ステップＳ２０２）。また、学習波計算部６は、最下層に上記の波が到達したときの波形（数値データ）である予測値を計算する。
【００６５】
データ入力部２は、学習データとして、生成された波（ニューロンの入力値）と到着した波（ニューロンの出力値）を投入する（ステップＳ２０３）。つまり、データ入力部２は、学習波発信部７が発信した値と、学習波発信部８が得た出力値と、を学習データとしてニューロン３に投入する。その後、データ出力部４は、学習した結果を示す情報を得る。そして、学習波制御部５は、データ出力部４が取得した波が、学習波計算部６により計算された予測値に近いかを判断する（ステップＳ２０４）。学習波受信部８に到着した波が予測値に近くない場合（ステップＳ２０４、ＮＯ）、再度学習を行う。一方、学習波受信部８に到着した波が予測値に近い場合（ステップＳ２０４、ＹＥＳ）、学習装置１は処理を終了する。
【００６６】
このように、学習装置１は、学習波制御部５と、学習波計算部６と、学習波発信部７と、学習波受信部８と、を有している。このような構成により、学習波発信部７は、学習波計算部６による計算の結果に基づいて、学習波を発信することが出来る。また、学習波受信部８は、最下層である下位層に到達した学習波（ニューロンの出力値）を検知することが出来る。その結果、学習波制御部５は、学習波受信部８による検知の結果に基づいて、ニューロン３の構造を推定することが可能となる。これにより、問題が生じるようなニューラルネットワークの構造を効率的に特定することが可能となる。
【００６７】
また、学習波制御部５は、所定の領域を特定して、特定した領域に影響を与える学習波を生成可能なよう構成されている。これによると、問題があると想定される領域を効率的に修正することが可能となる。
【００６８】
［第２の実施形態］
次に、本発明の第２の実施形態について、図１０を参照して説明する。図１は、本発明の第２の実施形態における学習構造推定装置９０の構成の一例を示すブロック図である。
【００６９】
図１０を参照すると、学習構造推定装置９０は、学習波発信部９１と、学習波受信部９２と、推定部９３と、を有している。
【００７０】
例えば、学習構造推定装置９０は、ＣＰＵなどの演算装置と、プログラムを記憶した記憶装置と、を有している。例えば、学習構造推定装置９０は、記憶装置が記憶するプログラムを演算装置が実行することで、上記各処理部を実現する。
【００７１】
学習波発信部９１は、ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる。
【００７２】
学習波受信部９２は、ニューラルネットワークの中位層または下位層から、学習波を伝搬した結果の出力値を得る。
【００７３】
推定部９３は、学習波受信部９２が得た出力値に基づいて、ニューラルネットワークの構造を推定する。
【００７４】
このように、本実施形態における学習構造推定装置９０は、学習波発信部９１と、学習波受信部９２と、推定部９３と、を有している。このような構成により、学習波受信部９２は、ニューラルネットワークの中位層または下位層から、学習波を伝搬した結果の出力値を得ることが出来る。その結果。、推定部９３は、学習波受信部９２が得た出力値に基づいて、ニューラルネットワークの構造を推定することが可能となる。これにより、問題が生じるようなニューラルネットワークの構造を効率的に特定することが可能となる。
【００７５】
なお、本実施形態の場合、学習構造推定装置９０は、ニューラルネットワークを有していても構わないし、ニューラルネットワークを有していなくても構わない。換言すると、学習構造推定装置９０は、自身が有するニューラルネットワークの構造を推定するよう構成しても構わないし、外部装置が有するニューラルネットワークの構造を推定するよう構成しても構わない。
【００７６】
また、上述した学習構造推定装置９０は、当該学習構造推定装置９０に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、学習構造推定装置９０に、ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、ニューラルネットワークの中位層または下位層から、学習波を伝搬した結果の出力値を得る学習波受信部と、学習波受信部が得た出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、を実現するためのプログラムである。
【００７７】
また、上述した学習構造推定装置９０により実行される学習構造推定方法は、学習構造推定装９０が、ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、ニューラルネットワークの中位層または下位層から、学習波を伝搬した結果の出力値を得て、出力値に基づいて、ニューラルネットワークの構造を推定する、という方法である。
【００７８】
上述した構成を有する、プログラム、又は、学習構造推定方法、の発明であっても、上記学習構造推定装置９０と同様の効果を有するために、上述した本発明の目的を達成することが出来る。また、上記プログラムを記録した、コンピュータが読み取り可能な記録媒体であっても、同様の効果を有するために、上述した本発明の目的を達成することが出来る。
【００７９】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における学習構造推定装置などの概略を説明する。但し、本発明は、以下の構成に限定されない。
【００８０】
（付記１）
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を有する
学習構造推定装置。
（付記２）
付記１に記載の学習構造推定装置であって、
前記推定部は、未学習の状態において前記学習波受信部が得ると推定される計算値と、前記出力値と、の間に生じるずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
（付記３）
付記２に記載の学習構造推定装置であって、
前記推定部は、前記学習波発信部が発信する学習波を変えながら取得した、前記計算値と前記出力値とのずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
（付記４）
付記１から付記３までのいずれか１項に記載の学習構造推定装置であって、
前記推定部は、推定したニューラルネットワークの構造中に所定の領域が存在するか否か確認するよう構成され、
前記学習波発信部は、前記推定部が確認した前記領域に影響を与える学習波を発信する
学習構造推定装置。
（付記５）
付記４に記載の学習構造推定装置であって、
前記領域に影響を与える学習波として、逆位相、正位相、拡散、のうちのいずれかの特性を有する学習波を発信する
学習構造推定装置。
（付記６）
付記１から付記５までのいずれか１つに記載の学習構造推定装置であって、
前記学習波発信部は、個別のニューロンの位相を変化させることで、ターゲット方向に対して指向性のあるビームとしての特性を有する学習波を発信可能なよう構成されている
学習構造推定装置。
（付記７）
付記１から付記６までのいずれか１項に記載の学習構造推定装置であって、
前記学習波発信部が発信する前記学習波を計算する学習波計算部を有する
学習構造推定装置。
（付記８）
付記１から付記７までのいずれか１項に記載の学習構造推定装置であって、
学習データをニューラルネットワークの上位層に入力するデータ入力部と、
ニューラルネットワークの下位層から前記データ入力部による入力の結果を取得するデータ出力部と、
を有する
学習構造推定装置。
（付記９）
学習構造推定装が、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得て、
前記出力値に基づいて、ニューラルネットワークの構造を推定する
学習構造推定方法。
（付記１０）
学習構造推定装置に、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を実現させるためのプログラム。
【００８１】
なお、上記各実施形態及び付記において記載したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されていたりする。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【００８２】
以上、上記各実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることが出来る。
【００８３】
なお、本発明は、日本国にて２０１８年９月１１日に特許出願された特願２０１８−１６９８２８の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【符号の説明】
【００８４】
１  学習装置
２  データ入力部
３  ニューロン
４  データ出力部
５  学習波制御部
６  学習波計算部
７  学習波発信部
８  学習波受信部
９０  学習構造推定装置
９１  学習波発信部
９２  学習波受信部
９３  推定部
【図１】
2020054399.tif 000003
【図２】
2020054399.tif 000004
【図３】
2020054399.tif 000005
【図４】
2020054399.tif 000006
【図５】
2020054399.tif 000007
【図６】
2020054399.tif 000008
【図７】
2020054399.tif 000009
【図８】
2020054399.tif 000010
【図９】
2020054399.tif 000011
【図１０】
2020054399.tif 000012
【手続補正書】
【提出日】令和3年1月14日(2021.1.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させる学習波発信部と、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得る学習波受信部と、
前記学習波受信部が得た前記出力値に基づいて、ニューラルネットワークの構造を推定する推定部と、
を有する
学習構造推定装置。
【請求項２】
請求項１に記載の学習構造推定装置であって、
前記推定部は、未学習の状態において前記学習波受信部が得ると推定される計算値と、前記出力値と、の間に生じるずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
【請求項３】
請求項２に記載の学習構造推定装置であって、
前記推定部は、前記学習波発信部が発信する学習波を変えながら取得した、前記計算値と前記出力値とのずれに基づいて、ニューラルネットワークの構造を推定する
学習構造推定装置。
【請求項４】
請求項１から請求項３までのいずれか１項に記載の学習構造推定装置であって、
前記推定部は、推定したニューラルネットワークの構造中に所定の領域が存在するか否か確認するよう構成され、
前記学習波発信部は、前記推定部が確認した前記領域に影響を与える学習波を発信する
学習構造推定装置。
【請求項５】
請求項４に記載の学習構造推定装置であって、
前記領域に影響を与える学習波として、逆位相、正位相、拡散、のうちのいずれかの特性を有する学習波を発信する
学習構造推定装置。
【請求項６】
請求項１から請求項５までのいずれか１項に記載の学習構造推定装置であって、
前記学習波発信部は、個別のニューロンの位相を変化させることで、ターゲット方向に対して指向性のあるビームとしての特性を有する学習波を発信可能なよう構成されている
学習構造推定装置。
【請求項７】
請求項１から請求項６までのいずれか１項に記載の学習構造推定装置であって、
前記学習波発信部が発信する前記学習波を計算する学習波計算部を有する
学習構造推定装置。
【請求項８】
請求項１から請求項７までのいずれか１項に記載の学習構造推定装置であって、
学習データをニューラルネットワークの上位層に入力するデータ入力部と、
ニューラルネットワークの下位層から前記データ入力部による入力の結果を取得するデータ出力部と、
を有する
学習構造推定装置。
【請求項９】
情報処理装置が、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得て、
前記出力値に基づいて、ニューラルネットワークの構造を推定する
学習構造推定方法。
【請求項１０】
情報処理装置に、
ニューラルネットワークの上位層を制御することで、ニューラルネットワーク内を伝搬するデータを波として捉えた学習波を発信させ、
ニューラルネットワークの中位層または下位層から、前記学習波を伝搬した結果の出力値を得て、
前記出力値に基づいて、ニューラルネットワークの構造を推定する
処理を実現させるためのプログラム。
【国際調査報告】
2020054399.tif 000013
2020054399.tif 000014