(57)【要約】  パラメータ推定部８１は、観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定する。変分確率推定部８２は、対数周辺化尤度の下限を最大化するノードの変分確率のパラメータを推定する。ノード削除判定部８３は、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除する。収束判定部８４は、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定する。
2018066237.tif 000002
【特許請求の範囲】
【請求項１】
ニューラルネットワークモデルを推定するモデル推定装置であって、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定部と、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定部と、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定部と、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定部とを備え、
前記収束判定部によって前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定部による前記パラメータの推定、前記変分確率推定部による前記変分確率のパラメータの推定および前記ノード削除判定部による該当するノードの削除を繰り返す
ことを特徴とするモデル推定装置。
【請求項２】
ノード削除判定部は、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する
請求項１記載のモデル推定装置。
【請求項３】
パラメータ推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定する
請求項１または請求項２記載のモデル推定装置。
【請求項４】
パラメータ推定部は、推定したパラメータを用いて元のパラメータを更新する
請求項３記載のモデル推定装置。
【請求項５】
変分確率推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化する変分確率のパラメータを推定する
請求項１から請求項４のうちのいずれか１項に記載のモデル推定装置。
【請求項６】
変分確率推定部は、推定したパラメータを用いて元のパラメータを更新する
請求項５記載のモデル推定装置。
【請求項７】
パラメータ推定部は、ラプラス法に基づいて対数周辺化尤度を近似し、近似した対数周辺化尤度の下限を最大化するパラメータを推定し、
変分確率推定部は、前記対数周辺化尤度の下限を最大化するように変分確率のパラメータを変分分布の仮定の元で推定する
請求項１から請求項６のうちのいずれか１項に記載のモデル推定装置。
【請求項８】
ニューラルネットワークモデルを推定するモデル推定方法であって、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定し、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定し、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除し、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定し、
前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータの推定、前記変分確率のパラメータの推定および該当するノードの削除を繰り返す
ことを特徴とするモデル推定方法。
【請求項９】
変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する
請求項８記載のモデル推定方法。
【請求項１０】
ニューラルネットワークモデルを推定するコンピュータに適用されるモデル推定プログラムであって、
前記コンピュータに、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定処理、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定処理、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定処理、および、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定処理を実行させ、
前記収束判定処理で前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定処理、前記変分確率推定処理および前記ノード削除判定処理を繰り返させる
ためのモデル推定プログラム。
【請求項１１】
コンピュータに、
ノード削除判定処理で、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定させる
請求項１０記載のモデル推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ニューラルネットワークのモデルを推定するモデル推定装置、モデル推定方法およびモデル推定プログラムに関する。
【背景技術】
【０００２】
ニューラルネットワークのモデルは、ある出力ｖを表現するため、各層に存在するノードを層間でそれぞれ相互作用があるように繋げたモデルである。図５は、ニューラルネットワークのモデルを示す説明図である。【０００３】
図５では、ノードｚが丸で表され、横列に並んだノードの集合が各層を表わしている。また、最下層のｖ１、・・・、ｖＭが出力（可視素子）を示し、最下層より上のｌ層（図５では、ｌ＝２）がＪｌ個の素子を有する隠れ層を示している。ニューラルネットワークでは、ノードおよび層は、隠れ変数を定義するために用いられる。【０００４】
非特許文献１には、ニューラルネットワークモデルを学習する方法の一例が記載されている。非特許文献１に記載された方法では、層の数およびノードの数を予め定めておき、モデルの学習を変分ベイズ推定で行うことで、モデルを表わすパラメータを適切に推定する。【０００５】
なお、混合モデルを推定する方法の一例が、特許文献１に記載されている。特許文献１に記載された方法では、データの混合モデル推定のターゲットとなる確率変数に対する隠れ変数の変分確率が計算される。そして、計算された隠れ変数の変分確率を用いて、混合モデルのコンポーネントごとに分離されたモデル事後確率の下限が最大となるようにコンポーネントの種類及びそのパラメータを最適化することで、最適な混合モデルが推定される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１２／１２８２０７号
【非特許文献】
【０００７】
【非特許文献１】D. P. and Welling, M., “Auto-encoding variational Bayes”, arXiv preprint arXiv:1312.6114, 2013.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ニューラルネットワークのモデルの性能は、ノードの数および層の数に依存することが知られている。非特許文献１に記載された方法でモデルを推定する場合、ノードの数および層の数を事前に決めておく必要があるため、これらの値を適切にチューニングしなければならないという問題があった。【０００９】
そこで、本発明は、理論的正当性を失うことなく、層の数およびノードの数を自動で設定してニューラルネットワークのモデルを推定できるモデル推定装置、モデル推定方法およびモデル推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明によるモデル推定装置は、ニューラルネットワークモデルを推定するモデル推定装置であって、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化するそのニューラルネットワークモデルのパラメータを推定するパラメータ推定部と、対数周辺化尤度の下限を最大化するノードの変分確率のパラメータを推定する変分確率推定部と、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定部と、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定する収束判定部とを備え、収束判定部によってニューラルネットワークモデルが収束したと判定されるまで、パラメータ推定部によるパラメータの推定、変分確率推定部による変分確率のパラメータの推定およびノード削除判定部による該当するノードの削除を繰り返すことを特徴とする。【００１１】
本発明によるモデル推定方法は、ニューラルネットワークモデルを推定するモデル推定方法であって、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化するそのニューラルネットワークモデルのパラメータを推定し、対数周辺化尤度の下限を最大化するノードの変分確率のパラメータを推定し、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除し、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定し、ニューラルネットワークモデルが収束したと判定されるまで、パラメータの推定、変分確率のパラメータの推定および該当するノードの削除を繰り返すことを特徴とする。【００１２】
本発明によるモデル推定プログラムは、ニューラルネットワークモデルを推定するコンピュータに適用されるモデル推定プログラムであって、コンピュータに、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化するそのニューラルネットワークモデルのパラメータを推定するパラメータ推定処理、対数周辺化尤度の下限を最大化するノードの変分確率のパラメータを推定する変分確率推定処理、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定処理、および、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定する収束判定処理を実行させ、収束判定処理でニューラルネットワークモデルが収束したと判定されるまで、パラメータ推定処理、変分確率推定処理およびノード削除判定処理を繰り返させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、理論的正当性を失うことなく、層の数およびノードの数を自動で設定してニューラルネットワークのモデルを推定できる。
【図面の簡単な説明】
【００１４】
【図１】本発明によるモデル推定装置の一実施形態を示すブロック図である。
【図２】モデル推定装置の動作例を示すフローチャートである。
【図３】本発明によるモデル推定装置の概要を示すブロック図である。
【図４】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【図５】ニューラルネットワークのモデルを示す説明図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面を参照して説明する。
【００１６】
以下、図５に例示するニューラルネットワークを適宜参照しながら、本発明の内容を説明する。図５に例示するような、Ｍ個の可視素子およびＪｌ個（ｌは、ｌ番目の隠れ層）の素子を有するＳＢＮ（sigmoid belief network）の場合、異なる層間の確率的関係は、以下に例示する式１から式３で表すことができる。
【００１７】
【数１】
2018066237.tif 000003
【００１８】
式１から式３において、σ（ｘ）＝１／１＋ｅｘｐ（−ｘ）は、シグモイド関数を表わす。また、ｚｉ（ｌ）は、ｌ番目の隠れ層におけるｉ番目の２値素子を表わし、ｚｉ（ｌ）∈｛０，１｝である。また、ｖｉは、可視層におけるｉ番目の入力であり、
【数２】
2018066237.tif 000004
である。また、Ｗ（ｌ）は、ｌ層とｌ−１層との間の重み行列を表わし、
【数３】
2018066237.tif 000005
である。なお、以下の説明では、表記を単純にするため、Ｍ＝Ｊ０で表す。また、ｂは、最上位層のバイアスであり、
【数４】
2018066237.tif 000006
である。また、ｃ（ｌ）は、残りの層におけるバイアスに対応し、
【数５】
2018066237.tif 000007
である。
【００１９】
本実施形態では、ＳＢＮにおけるモデル選択問題に、ＦＡＢ（factorized Asymptotic Bayesian）推論を適用し、ＳＢＮにおける隠れ素子の数を自動的に決定する。ＦＡＢ推論は、同時尤度のラプラス近似に基づいて導かれるＦＩＣ（因子化情報量基準：Factorized Information Criterion）の下限を最大化することによりモデル選択問題を解決するものである。
【００２０】
まず初めに、与えられたモデルＭに対し、ｖとｚの対数尤度を以下の式４で表す。なお、式４において、θ＝｛Ｗ，ｂ，ｃ｝と表記する。
【００２１】
【数６】
2018066237.tif 000008
【００２２】
ここでは、説明を容易にするため、１層の隠れ層を想定しているが、多層の場合にも容易に拡張可能である。上記式４にラプラス法を適用すると、以下の式５に例示する近似式が導出される。
【００２３】
【数７】
2018066237.tif 000009
【００２４】
式５において、Ｄθは、θの次元を表わし、θハット（θに上付き＾）は、θの最大尤度（ＭＬ：maximum-likelihood）評価を表わす。また、Ψｍは、Ｗｉ・およびｃｉ・に関する対数尤度の二階微分行列を表わす。
【００２５】
以下の参考文献１および参考文献２によれば、上記式５において、定数項を漸近的に無視することが可能なため、ｌｏｇΨｍを以下の式６のように近似可能である。本明細書では、以下に記載する参考文献１を参照して引用する。
＜参考文献１＞
国際公開第２０１４／１８８６５９号
＜参考文献２＞
特表２０１６−５２０２２０号公報
【００２６】
【数８】
2018066237.tif 000010
【００２７】
これらに基づき、ＳＢＮにおけるＦＩＣを、以下の式７のように定義できる。  
【００２８】
【数９】
2018066237.tif 000011
【００２９】
対数関数の凹性から、以下の式８により、式７におけるＦＩＣの下限を得ることが可能である。
【００３０】
【数１０】
2018066237.tif 000012
【００３１】
ＦＩＣの導出後にモデルパラメータの推定およびモデル選択を行う方法の一つとして、平均場変分ベイズ（mean-field variational Bayesian（ＶＢ））を使用する方法が挙げられる。ただし、平均場ＶＢは、隠れ変数間の独立を想定しているため、ＳＢＮには使用できない。そこで、ＶＢにおいて、モンテカルロサンプルを用いて扱いにくい変分オブジェクトを近似し、ノイズのある勾配において分散を減少させる確率的最適化を利用する。
【００３２】
ＮＶＩＬ（neural variational inference and learning ）アルゴリズムにより、ｖをｚにマップする認識ネットワーク（recognition network ）を用いて、変分分布の仮定のもと、上記式７の変分確率ｑを、以下の式９のようにモデル化できる。なお、表記を単純にするため、ｖ＝ｚ（０）、J０＝Ｍとする。ＮＶＩＬアルゴリズムは、例えば、以下の参考文献３に記載されている。
＜参考文献３＞
Mnih, A. and Gregor, K., "Neural variational inference and learning in belief networks", ICML, JMLR: W&CP vol.32, pp.1791-1799, 2014
【００３３】
【数１１】
2018066237.tif 000013
【００３４】
式９において、φ（ｌ）はｌ層における認識ネットワークの重み行列であり、以下の性質を有する。
【００３５】
【数１２】
2018066237.tif 000014
【００３６】
ＳＢＮにおいて生成されるモデルおよび認識ネットワークを学習するため、通常、確率的勾配上昇法が使用される。上記の式８および式９における認識モデルのパラメトリック方程式から、目的関数ｆを、以下の式１０のように表すことができる。
【００３７】
【数１３】
2018066237.tif 000015
【００３８】
以上に基づいて、本発明によるモデル推定装置の処理を説明する。図１は、本発明によるモデル推定装置の一実施形態を示すブロック図である。本実施形態のモデル推定装置１００は、初期値設定部１０と、パラメータ推定部２０と、変分確率推定部３０と、ノード削除判定部４０と、収束判定部５０と、記憶部６０を備えている。
【００３９】
初期値設定部１０は、ニューラルネットワークのモデルを推定する際に用いる各種パラメータを初期化する。具体的には、初期値設定部１０は、観測値データ、初期ノード数および初期層数を入力し、変分確率およびパラメータを出力する。初期値設定部１０は、設定された変分確率およびパラメータを記憶部６０に記憶する。
【００４０】
ここで出力されるパラメータは、ニューラルネットワークモデルで用いられるパラメータである。ニューラルネットワークモデルは、観測値ｖの確率がどのように決まるか表現するものであり、モデルのパラメータは、層間の相互作用や、観測値の層と隠れ変数の層との関係を表わすために使われる。
【００４１】
上記式１〜３が、ニューラルネットワークモデルを表わした式であり、式１〜３の場合、ｂ（具体的には、Ｗ，ｃ，ｂ）がパラメータである。また、式１〜３の場合、観測値データがｖに対応し、初期ノード数がＪｌの初期値に対応し、初期層数がＬに対応する。初期値設定部１０は、これらの初期値に大きめの値を設定する。以降、初期ノード数および初期層数を徐々に小さくしていく処理が行われる。
【００４２】
また、本実施形態では、ニューラルネットワークモデルを推定する際、上記パラメータの推定と、隠れ変数ノードが１になる確率の推定とが繰り返される。変分確率は、この隠れ変数ノードが１になる確率を表わし、例えば、上記式９で表すことができる。変分確率が式９で表される場合、初期値設定部１０は、ｑの分布のパラメータφについて初期化した結果を出力する。
【００４３】
パラメータ推定部２０は、ニューラルネットワークモデルのパラメータを推定する。具体的には、パラメータ推定部２０は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを求める。ニューラルネットワークモデルのパラメータを求めるために用いられるパラメータとは、初期値設定部１０により初期化されたニューラルネットワークモデルのパラメータ、または、後述の処理で更新されたニューラルネットワークモデルのパラメータである。周辺化尤度の下限を最大化する式は、上記の例では、式８で表される。式８について、ニューラルネットワークモデルのパラメータＷに関して周辺化尤度の下限を最大化する集合はいくつか存在するが、パラメータ推定部２０は、例えば、勾配法を用いてパラメータを求めてもよい。
【００４４】
勾配法を用いる場合、パラメータ推定部２０は、生成されるモデルのｌ番目のレベルの重み行列（すなわち、Ｗ（ｌ））について、ｉ番目の行の勾配を、以下の式１１で算出する。
【００４５】
【数１４】
2018066237.tif 000016
【００４６】
なお、式１１における期待値は評価が難しいため、パラメータ推定部２０は、変分分布から生成されるサンプルを用いたモンテカルロ積分を使うことによって、期待値を近似する。
【００４７】
パラメータ推定部２０は、求めたパラメータを用いて元のパラメータを更新する。具体的には、パラメータ推定部２０は、記憶部６０に記憶されたパラメータを求めたパラメータで更新する。上記例の場合、パラメータ推定部２０は、勾配を算出した後、標準的な勾配上昇アルゴリズムを使用して、パラメータを更新する。パラメータ推定部２０は、例えば、以下の式１２に基づいてパラメータを更新する。なお、τＷは、生成するモデルの学習係数である。
【００４８】
【数１５】
2018066237.tif 000017
【００４９】
変分確率推定部３０は、変分確率のパラメータを推定する。具体的には、変分確率推定部３０は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化する変分確率のパラメータを推定する。変分確率のパラメータを求めるために用いられるパラメータとは、初期値設定部１０により初期化された変分確率のパラメータまたは後述の処理で更新された変分確率のパラメータ、および、ニューラルネットワークモデルのパラメータである。
【００５０】
パラメータ推定部２０で説明した内容と同様に、周辺化尤度の下限を最大化する式は、上記の例では、式８で表される。変分確率推定部３０は、パラメータ推定部２０と同様、変分確率のパラメータφに関して周辺化尤度の下限を最大化するように、勾配法を用いて変分確率のパラメータを推定してもよい。
【００５１】
勾配法を用いる場合、変分確率推定部３０は、認識ネットワークのｌ番目のレベルの重み行列（すなわち、φｉ・（ｌ））について、ｉ番目の行の勾配を、以下の式１３で算出する。
【００５２】
【数１６】
2018066237.tif 000018
【００５３】
なお、式１３における期待値は、式１１における期待値と同様に評価が難しいため、変分確率推定部３０は、変分分布から生成されるサンプルを用いたモンテカルロ積分を使うことによって、期待値を近似する。
【００５４】
変分確率推定部３０は、推定した変分確率のパラメータを用いて元の変分確率のパラメータを更新する。具体的には、変分確率推定部３０は、記憶部６０に記憶された変分確率のパラメータを、求めた変分確率のパラメータで更新する。上記例の場合、変分確率推定部３０は、勾配を算出した後、標準的な勾配上昇アルゴリズムを使用して、変分確率のパラメータを更新する。変分確率推定部３０は、例えば、以下の式１４に基づいてパラメータを更新する。なお、τφは、認識ネットワークの学習係数である。
【００５５】
【数１７】
2018066237.tif 000019
【００５６】
ノード削除判定部４０は、変分確率推定部３０によりパラメータが推定された変分確率に基づいて、ニューラルネットワークモデルのノードを削除するか否か判定する。具体的には、ノード削除判定部４０は、各層のノードについて算出した変分確率の和が閾値以下の場合、削除対象のノードと判定し、そのノードを削除する。ｌ層のｋ番目のノードについて削除対象のノードか否か判定する式は、例えば、以下の式１５で表される。
【００５７】
【数１８】
2018066237.tif 000020
【００５８】
このように、ノード削除判定部４０が推定された変分確率に基づいてノードを削除するか否か判定するため、計算負荷の小さい、コンパクトなニューラルネットワークモデルを推定することが可能になる。
【００５９】
収束判定部５０は、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定する。具体的には、収束判定部５０は、求めたパラメータおよび推定された変分確率が最適化基準を満たしているか判定する。
【００６０】
パラメータ推定部２０および変分確率推定部３０によって各パラメータが更新される。そこで、収束判定部５０は、例えば、変分確率の更新幅が閾値より小さい場合や、対数周辺化尤度の下限の値の変化が小さい場合、モデルの推定処理が収束していると判定し、処理を終了する。一方、収束していないと判定された場合、パラメータ推定部２０による処理および変分確率推定部３０の処理が行われ、ノード削除判定部４０までの一連の処理が繰り返される。最適化基準は、ユーザ等により予め定められ、記憶部６０に記憶される。
【００６１】
初期値設定部１０と、パラメータ推定部２０と、変分確率推定部３０と、ノード削除判定部４０と、収束判定部５０とは、プログラム（モデル推定プログラム）に従って動作するコンピュータのＣＰＵによって実現される。例えば、プログラムは、記憶部６０に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、初期値設定部１０、パラメータ推定部２０、変分確率推定部３０、ノード削除判定部４０および収束判定部５０として動作してもよい。
【００６２】
また、初期値設定部１０と、パラメータ推定部２０と、変分確率推定部３０と、ノード削除判定部４０と、収束判定部５０とは、それぞれが専用のハードウェアで実現されていてもよい。また、記憶部６０は、例えば、磁気ディスク等により実現される。
【００６３】
次に、本実施形態のモデル推定装置の動作を説明する。図２は、本実施形態のモデル推定装置の動作例を示すフローチャートである。
【００６４】
モデル推定装置１００は、推定処理に用いるデータとして、観測値データ、初期ノード数、初期層数および最適化基準の入力を受け付ける（ステップＳ１１）。初期値設定部１０は、入力された観測値データ、初期ノード数および初期層数をもとに、変分確率およびパラメータを設定する（ステップＳ１２）。
【００６５】
パラメータ推定部２０は、観測値データおよび設定されたパラメータ並びに変分確率をもとに、対数周辺化尤度の下限を最大化するニューラルネットワークのパラメータを推定する（ステップＳ１３）。また、変分確率推定部３０は、観測値データおよび設定されたパラメータ並びに変分確率をもとに、対数周辺化尤度の下限を最大化するように変分確率のパラメータを推定する（ステップＳ１４）。
【００６６】
ノード削除判定部４０は、推定された変分確率に基づいて、各ノードをモデルから削除するか否か判定し（ステップＳ１５）、所定の条件を満たす（該当する）ノードを削除する（ステップＳ１６）。
【００６７】
収束判定部５０は、求めたパラメータおよび推定した変分確率が最適化基準を満たしているか否か判定する（ステップＳ１７）。最適化基準が満たされていると判定された場合（ステップＳ１７におけるＹｅｓ）、処理を終了する。一方、最適化基準が満たされていないと判定された場合（ステップＳ１７におけるＮｏ）、ステップＳ１３から処理が繰り返される。
【００６８】
なお、図２では、初期値設定部１０による処理の後、パラメータ推定部２０による処理が行われ、その後で変分確率推定部３０による処理およびノード削除判定部４０による処理が行われる動作を例示した。ただし、処理の順序は、図２に例示する方法に限られない。初期値設定部１０による処理の後、変分確率推定部３０による処理およびノード削除判定部４０による処理が行われ、その後で、パラメータ推定部２０による処理が行われてもよい。すなわち、ステップＳ１２の処理の後で、ステップＳ１４およびステップＳ１５の処理が行われ、その後で、ステップＳ１２の処理が行われてもよい。そして、ステップＳ１５の処理で最適化基準が満たされていないと判定された場合、ステップＳ１４から処理が繰り返されてもよい。
【００６９】
以上のように、本実施形態では、パラメータ推定部２０が、ｖおよびｚに関する対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定し、変分確率推定部３０も、対数周辺化尤度の下限を最大化するように、ノードの変分確率のパラメータを推定する。ノード削除判定部４０は、推定された変分確率に基づいて削除対象のノードを判定し、該当すると判定されたノードを削除する。収束判定部５０は、変分確率の変化に基づいて、ニューラルネットワークモデルの収束性を判定する。
【００７０】
そして、収束判定部５０によってニューラルネットワークモデルが収束したと判定されるまで、ニューラルネットワークのパラメータの推定処理、変分確率のパラメータの推定処理および該当するノードの削除処理が繰り返される。よって、理論的正当性を失うことなく、層の数およびノードの数を自動で設定してニューラルネットワークのモデルを推定できる。
【００７１】
なお、層の数を増やして過学習を防ぐようなモデルを作成することも一方で可能である。しかし、このようなモデルを作成する場合、計算等に時間がかかり、多くのメモリが必要になる。本実施形態では、層の数を減少させるようにモデルを推定するため、過学習を防ぎつつ、計算負荷の小さいモデルを推定できる。
【００７２】
次に、本発明の概要を説明する。図３は、本発明によるモデル推定装置の概要を示すブロック図である。本発明によるモデル推定装置は、ニューラルネットワークモデルを推定するモデル推定装置８０（例えば、モデル推定装置１００）であって、推定されるニューラルネットワークモデル（例えば、Ｍ）における観測値データ（例えば、可視素子ｖ）および隠れ層のノード（例えば、ノードｚ）に関する対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータ（例えば、式８におけるθ）を推定するパラメータ推定部８１（例えば、パラメータ推定部２０）と、対数周辺化尤度の下限を最大化するノードの変分確率のパラメータ（例えば、式９におけるφ）を推定する変分確率推定部８２（例えば、変分確率推定部３０）と、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定部８３（例えば、ノード削除判定部４０）と、変分確率の変化（例えば、最適化基準）に基づいて、ニューラルネットワークモデルの収束性を判定する収束判定部８４（例えば、収束判定部５０）とを備えている。
【００７３】
そして、収束判定部８４によってニューラルネットワークモデルが収束したと判定されるまで、パラメータ推定部８１によるパラメータの推定、変分確率推定部８２による変分確率のパラメータの推定およびノード削除判定部８３による該当するノードの削除を繰り返す。
【００７４】
そのような構成により、理論的正当性を失うことなく、層の数およびノードの数を自動で設定してニューラルネットワークのモデルを推定できる。
【００７５】
また、ノード削除判定部８３は、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定してもよい。
【００７６】
また、パラメータ推定部８１は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定してもよい。そして、パラメータ推定部８１は、推定したパラメータを用いて元のパラメータを更新してもよい。
【００７７】
また、変分確率推定部８２は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化する変分確率のパラメータを推定してもよい。そして、変分確率推定部８２は、推定したパラメータを用いて元のパラメータを更新してもよい。
【００７８】
具体的には、パラメータ推定部８１は、ラプラス法に基づいて対数周辺化尤度を近似し、近似した対数周辺化尤度の下限を最大化するパラメータを推定してもよい。そして、変分確率推定部８２は、対数周辺化尤度の下限を最大化するように変分確率のパラメータを変分分布の仮定の元で推定してもよい。
【００７９】
図４は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ１０００は、ＣＰＵ１００１、主記憶装置１００２、補助記憶装置１００３、インタフェース１００４を備えている。
【００８０】
上述のモデル推定装置は、それぞれコンピュータ１０００に実装される。そして、上述した各処理部の動作は、プログラム（モデル推定プログラム）の形式で補助記憶装置１００３に記憶されている。ＣＰＵ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、当該プログラムに従って上記処理を実行する。
【００８１】
なお、少なくとも１つの実施形態において、補助記憶装置１００３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００が当該プログラムを主記憶装置１００２に展開し、上記処理を実行しても良い。
【００８２】
また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００８３】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００８４】
（付記１）ニューラルネットワークモデルを推定するモデル推定装置であって、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定部と、前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定部と、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定部と、前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定部とを備え、前記収束判定部によって前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定部による前記パラメータの推定、前記変分確率推定部による前記変分確率のパラメータの推定および前記ノード削除判定部による該当するノードの削除を繰り返すことを特徴とするモデル推定装置。
【００８５】
（付記２）ノード削除判定部は、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する付記１記載のモデル推定装置。
【００８６】
（付記３）パラメータ推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定する付記１または付記２記載のモデル推定装置。
【００８７】
（付記４）パラメータ推定部は、推定したパラメータを用いて元のパラメータを更新する付記３記載のモデル推定装置。
【００８８】
（付記５）変分確率推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化する変分確率のパラメータを推定する付記１から付記４のうちのいずれか１つに記載のモデル推定装置。
【００８９】
（付記６）変分確率推定部は、推定したパラメータを用いて元のパラメータを更新する付記５記載のモデル推定装置。
【００９０】
（付記７）パラメータ推定部は、ラプラス法に基づいて対数周辺化尤度を近似し、近似した対数周辺化尤度の下限を最大化するパラメータを推定し、変分確率推定部は、前記対数周辺化尤度の下限を最大化するように変分確率のパラメータを変分分布の仮定の元で推定する付記１から付記６のうちのいずれか１つに記載のモデル推定装置。
【００９１】
（付記８）ニューラルネットワークモデルを推定するモデル推定方法であって、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定し、前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定し、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除し、前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定し、前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータの推定、前記変分確率のパラメータの推定および該当するノードの削除を繰り返すことを特徴とするモデル推定方法。
【００９２】
（付記９）変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する付記８記載のモデル推定方法。
【００９３】
（付記１０）ニューラルネットワークモデルを推定するコンピュータに適用されるモデル推定プログラムであって、前記コンピュータに、推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定処理、前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定処理、パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定処理、および、前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定処理を実行させ、前記収束判定処理で前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定処理、前記変分確率推定処理および前記ノード削除判定処理を繰り返させるためのモデル推定プログラム。
【００９４】
（付記１１）コンピュータに、ノード削除判定処理で、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定させる付記１０記載のモデル推定プログラム。
【００９５】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００９６】
この出願は、２０１６年１０月７日に出願された日本特許出願２０１６−１９９１０３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００９７】
本発明は、ニューラルネットワークのモデルを推定するモデル推定装置に好適に適用される。例えば、本発明のモデル推定装置を用いて、画像認識やテキスト分類などを行うニューラルネットワークモデルを作成することが可能である。
【符号の説明】
【００９８】
１０  初期値設定部
２０  パラメータ推定部
３０  変分確率推定部
４０  ノード削除判定部
５０  収束判定部
１００  モデル推定装置
【図１】
2018066237.tif 000021
【図２】
2018066237.tif 000022
【図３】
2018066237.tif 000023
【図４】
2018066237.tif 000024
【図５】
2018066237.tif 000025
【手続補正書】
【提出日】平成31年3月12日(2019.3.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ニューラルネットワークモデルを推定するモデル推定装置であって、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定部と、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定部と、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定部と、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定部とを備え、
前記収束判定部によって前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定部による前記パラメータの推定、前記変分確率推定部による前記変分確率のパラメータの推定および前記ノード削除判定部による該当するノードの削除を繰り返す
ことを特徴とするモデル推定装置。
【請求項２】
ノード削除判定部は、変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する
請求項１記載のモデル推定装置。
【請求項３】
パラメータ推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化するニューラルネットワークモデルのパラメータを推定する
請求項１または請求項２記載のモデル推定装置。
【請求項４】
パラメータ推定部は、推定したパラメータを用いて元のパラメータを更新する
請求項３記載のモデル推定装置。
【請求項５】
変分確率推定部は、観測値データ、パラメータ、および変分確率に基づいて、対数周辺化尤度の下限を最大化する変分確率のパラメータを推定する
請求項１から請求項４のうちのいずれか１項に記載のモデル推定装置。
【請求項６】
変分確率推定部は、推定したパラメータを用いて元のパラメータを更新する
請求項５記載のモデル推定装置。
【請求項７】
パラメータ推定部は、ラプラス法に基づいて対数周辺化尤度を近似し、近似した対数周辺化尤度の下限を最大化するパラメータを推定し、
変分確率推定部は、前記対数周辺化尤度の下限を最大化するように変分確率のパラメータを変分分布の仮定の元で推定する
請求項１から請求項６のうちのいずれか１項に記載のモデル推定装置。
【請求項８】
ニューラルネットワークモデルを推定するモデル推定方法であって、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定し、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定し、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除し、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定し、
前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータの推定、前記変分確率のパラメータの推定および該当するノードの削除を繰り返す
ことを特徴とするモデル推定方法。
【請求項９】
変分確率の和が予め定めた閾値以下のノードを削除対象のノードと判定する
請求項８記載のモデル推定方法。
【請求項１０】
ニューラルネットワークモデルを推定するコンピュータに適用されるモデル推定プログラムであって、
前記コンピュータに、
推定されるニューラルネットワークモデルにおける観測値データおよび隠れ層のノードに関する対数周辺化尤度の下限を最大化する当該ニューラルネットワークモデルのパラメータを推定するパラメータ推定処理、
前記対数周辺化尤度の下限を最大化する前記ノードの変分確率のパラメータを推定する変分確率推定処理、
パラメータが推定された変分確率に基づいて削除対象のノードを判定し、削除対象に該当すると判定されたノードを削除するノード削除判定処理、および、
前記変分確率の変化に基づいて、前記ニューラルネットワークモデルの収束性を判定する収束判定処理を実行させ、
前記収束判定処理で前記ニューラルネットワークモデルが収束したと判定されるまで、前記パラメータ推定処理、前記変分確率推定処理および前記ノード削除判定処理を繰り返させる
ためのモデル推定プログラム。
【国際調査報告】
2018066237.tif 000026
2018066237.tif 000027