(57)【要約】【課題】通信量を削減しつつ、適切な分析を行うことができるデータ分析システムを提供する。【解決手段】データ分析システム９０は、学習済みニューラルネットワーク１８Ａの入力層を介して受け付けた観測データを、入力層から所定の中間層まで処理された結果得られる中間層の出力である低次元観測データを出力する変換処理を行う計器１０と、学習済みニューラルネットワーク１８Ｂにおいて低次元観測データを所定の中間層の次の中間層に入力し、次の中間層及び出力層を用いて、出力層の出力を、観測データを分析した結果とする分析処理を行う機器２０とを含む。学習済みニューラルネットワーク１８Ａ、１８Ｂは、所定の中間層のノード数が出力層のノード数よりも少なくなるように構成され、かつ、所定の制約の下、分析の結果が異なる観測データについて低次元観測データの確率分布の重複が、所定の制約がない場合と比べて少なくなるように予め学習されている。【選択図】図１
2019191635.tif 000002
【特許請求の範囲】
【請求項１】
計器により観測された観測データを分析する機器を含むデータ分析システムであって、
前記計器は、前記観測データを、前記観測データの次元よりも少ない次元の低次元観測データに変換する変換処理であって、予め用意された学習済みニューラルネットワークの入力層を介して受け付けた前記観測データを、前記入力層から所定の中間層まで処理された結果得られる前記中間層の出力である前記低次元観測データを出力する前記変換処理を行う変換部を備え、
前記機器は、前記低次元観測データから前記観測データを分析した結果を得る分析処理であって、前記低次元観測データを前記所定の中間層の次の中間層に入力し、前記次の中間層及び出力層を用いて、前記出力層の出力を、前記観測データを分析した結果とする前記分析処理を行う分析部を備え、
前記学習済みニューラルネットワークは、前記所定の中間層のノード数が前記出力層のノード数よりも少なくなるように構成され、かつ、所定の制約の下、前記分析した結果が異なる前記観測データについて前記低次元観測データの確率分布の重複が、前記所定の制約がない場合と比べて少なくなるように予め学習されているデータ分析システム。
【請求項２】
前記学習済みニューラルネットワークにおいて、前記所定の制約として、前記所定の中間層の一つ前の中間層が、前記低次元観測データの平均と分散をそれぞれ出力するノードを含み、前記分散を出力するノードの出力に、ノイズを乗算して、前記所定の中間層の入力とするように構成され、
前記学習済みニューラルネットワークは、分析対象となる前記観測データとは異なる、前記分析して得られる結果が既知の観測データを学習データとして予め学習されている請求項１に記載のデータ分析システム。
【請求項３】
前記変換部は、前記学習済みニューラルネットワークにおける前記所定の中間層の一つ前の中間層の前記平均を出力するノードの出力を、前記所定の中間層の出力として用いて、前記低次元観測データを出力する請求項２に記載のデータ分析システム。
【請求項４】
計器により観測された観測データを分析する機器を含むデータ分析システムによるデータ分析方法であって、
前記計器が備える変換部が、前記観測データを、前記観測データの次元よりも少ない次元の低次元観測データに変換する変換処理であって、予め用意された学習済みニューラルネットワークの入力層を介して受け付けた前記観測データを、前記入力層から所定の中間層まで処理された結果得られる前記中間層の出力である前記低次元観測データを出力する前記変換処理を行うステップと、
前記機器が備える分析部が、前記低次元観測データから前記観測データを分析した結果を得る分析処理であって、前記低次元観測データを前記所定の中間層の次の中間層に入力し、前記次の中間層及び出力層を用いて、前記出力層の出力を、前記観測データを分析した結果とする前記分析処理を行うステップと、
を含み、
前記学習済みニューラルネットワークは、前記所定の中間層のノード数が前記出力層のノード数よりも少なくなるように構成され、かつ、所定の制約の下、前記分析した結果が異なる前記観測データについて前記低次元観測データの確率分布の重複が、前記所定の制約がない場合と比べて少なくなるように予め学習されているデータ分析方法。
【請求項５】
コンピュータを、請求項１〜３のいずれか１項に記載のデータ分析システムが備える変換部及び分析部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ分析システム、方法、及びプログラムに係り、特に、センサ等の計器により観測された観測データを分析するデータ分析システム、方法、及びプログラムに関する。
【背景技術】
【０００２】
ＩｏＴ（Internet of Things）機器は、今後益々増加することが予測されている（例えば、非特許文献１を参照。）。ＩｏＴ機器の増加に伴い、ＩｏＴ機器においても省電力化を図ることが重要になっている。ＩｏＴ機器の省電力化のために、例えば、非特許文献２や非特許文献３では、ＩｏＴ機器の消費電力を低減する技術が提案されている。
【０００３】
また、ＩｏＴ機器を設置する目的は、ＩｏＴ機器が取得する詳細なデータではなく、詳細なデータから得られる分析結果である場合が多い（例えば、非特許文献４を参照。）。そして、より適切な分析を行うために、ニューラルネットワーク（Neural Network）等の機械学習が用いられている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】”総務省｜平成２７年度版  情報通信白書｜現在起きているＩＣＴの特徴的変化”＜インターネット検索：http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h27/html/nc261120.html 検索日：2018/03/13＞
【非特許文献２】”ドコモ、ＩｏＴ通信機器の消費電力を約５分の１にする新技術-ＣＮＥＴ Ｊａｐａｎ”＜インターネット検索：https://japan.cnet.com/article/35107812/ 検索日：2018/03/13＞
【非特許文献３】”ＩｏＴ端末の低消費電力化を実現するデータ圧縮技術”＜インターネット検索：https://shingi.jst.go.jp/var/rev1/0000/1202/2016_osaka-u_1.pdf 検索日：2018/03/13＞
【非特許文献４】”ＩＴ融合による統合型次世代農業プロジェクトを推進｜お客様に対する価値創造｜事業を通じた価値創造｜”＜インターネット検索：https://www.ntt-west.co.jp/csr/2015/valuable/customer/topics02.html 検索日：2018/03/13＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ニューラルネットワーク等の機械学習を用いたデータ分析システムとして、センサ等の計器と、サーバコンピュータ等の機器とを含むシステムがある。計器から機器に観測データを送信する場合、最もシンプルな方法として、図１１に示すように、計器では観測データの圧縮以外の処理は行わず、データ容量の大きな観測データを機器に送信する方法がある。この場合、機器では受信した観測データから特徴量への変換を行い、変換した特徴量に基づいて機械学習による推論の演算を行い、分析結果を得る。
【０００６】
また、別の方法としては、図１２に示すように、計器に簡易な計算機能を持たせ、計器で特徴量への変換まで行い、変換した特徴量を機器に送信する方法もある。この場合、機器では受信した特徴量に基づいて機械学習による推論の演算を行い、分析結果を得る。この方法によれば、図１１に示す方法と比較して、通信量が削減される。
【０００７】
また、更に別の方法としては、図１３に示すように、計器では機械学習による推論の演算を途中まで行い得られた中間データを機器に送信する方法もある。この場合、機器では受信した中間データから機械学習による推論の演算の続きを行い、分析結果を得る。この方法によれば、図１２に示す方法と比較して、更に通信量が削減される。
【０００８】
しかしながら、上記中間データの通信量は、中間層のノード数に応じて決まるため、この中間層のノード数を削減できれば、更に通信量を削減することが可能になると考えられる。一方、中間層のノード数を削減することで、中間層の出力値の確率分布の重複が多くなり、表現力が低下し、適切な分析が行えない場合がある。このため、通信量を削減しつつ、適切な分析を行えることが望まれている。
【０００９】
本発明は、上記の事情に鑑みてなされたものであり、通信量を削減しつつ、適切な分析を行うことができるデータ分析システム、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、第１の発明に係るデータ分析システムは、計器により観測された観測データを分析する機器を含むデータ分析システムであって、前記計器が、前記観測データを、前記観測データの次元よりも少ない次元の低次元観測データに変換する変換処理であって、予め用意された学習済みニューラルネットワークの入力層を介して受け付けた前記観測データを、前記入力層から所定の中間層まで処理された結果得られる前記中間層の出力である前記低次元観測データを出力する前記変換処理を行う変換部を備え、前記機器が、前記低次元観測データから前記観測データを分析した結果を得る分析処理であって、前記低次元観測データを前記所定の中間層の次の中間層に入力し、前記次の中間層及び出力層を用いて、前記出力層の出力を、前記観測データを分析した結果とする前記分析処理を行う分析部を備え、前記学習済みニューラルネットワークが、前記所定の中間層のノード数が前記出力層のノード数よりも少なくなるように構成され、かつ、所定の制約の下、前記分析した結果が異なる前記観測データについて前記低次元観測データの確率分布の重複が、前記所定の制約がない場合と比べて少なくなるように予め学習されている。
【００１１】
また、第２の発明に係るデータ分析システムは、第１の発明において、前記学習済みニューラルネットワークにおいて、前記所定の制約として、前記所定の中間層の一つ前の中間層が、前記低次元観測データの平均と分散をそれぞれ出力するノードを含み、前記分散を出力するノードの出力に、ノイズを乗算して、前記所定の中間層の入力とするように構成され、前記学習済みニューラルネットワークが、分析対象となる前記観測データとは異なる、前記分析して得られる結果が既知の観測データを学習データとして予め学習されている。
【００１２】
また、第３の発明に係るデータ分析システムは、第２の発明において、前記変換部が、前記学習済みニューラルネットワークにおける前記所定の中間層の一つ前の中間層の前記平均を出力するノードの出力を、前記所定の中間層の出力として用いて、前記低次元観測データを出力する。
【００１３】
一方、上記目的を達成するために、第４の発明に係るデータ分析方法は、計器により観測された観測データを分析する機器を含むデータ分析システムによるデータ分析方法であって、前記計器が備える変換部が、前記観測データを、前記観測データの次元よりも少ない次元の低次元観測データに変換する変換処理であって、予め用意された学習済みニューラルネットワークの入力層を介して受け付けた前記観測データを、前記入力層から所定の中間層まで処理された結果得られる前記中間層の出力である前記低次元観測データを出力する前記変換処理を行うステップと、前記機器が備える分析部が、前記低次元観測データから前記観測データを分析した結果を得る分析処理であって、前記低次元観測データを前記所定の中間層の次の中間層に入力し、前記次の中間層及び出力層を用いて、前記出力層の出力を、前記観測データを分析した結果とする前記分析処理を行うステップと、を含み、前記学習済みニューラルネットワークが、前記所定の中間層のノード数が前記出力層のノード数よりも少なくなるように構成され、かつ、所定の制約の下、前記分析した結果が異なる前記観測データについて前記低次元観測データの確率分布の重複が、前記所定の制約がない場合と比べて少なくなるように予め学習されている。
【００１４】
更に、上記目的を達成するために、第５の発明に係るプログラムは、コンピュータを、第１〜第３のいずれか１の発明に係るデータ分析システムが備える変換部及び分析部として機能させる。
【発明の効果】
【００１５】
以上説明したように、本発明に係るデータ分析システム、方法、及びプログラムによれば、通信量を削減しつつ、適切な分析を行うことができる。
【図面の簡単な説明】
【００１６】
【図１】実施形態に係るデータ分析システムの機能的な構成の一例を示すブロック図である。
【図２】実施形態に係る計器及び機器の各々の動作の説明に供する図である。
【図３】実施形態に係る学習済みニューラルネットワークの説明に供する図である。
【図４】実施形態に係る手法を画像認識タスク及び音素認識タスクに適用した場合に得られる推定精度の一例を示すグラフである。
【図５】実施形態に係るデータ変換処理プログラム及びデータ分析処理プログラムの処理の流れの一例を示すシーケンス図である。
【図６】実施形態に係る計器及び機器によるデータ分析処理の説明に供する図である。
【図７】実施形態に係る学習装置の機能的な構成の一例を示すブロック図である。
【図８】実施形態に係る学習処理プログラムの処理の流れの一例を示すフローチャートである。
【図９】実施形態に係る学習用ニューラルネットワークの説明に供する図である。
【図１０】実施形態に係る所定の中間層を２ノードとした場合の確率分布の一例を示す図である。
【図１１】従来技術の説明に供する図である。
【図１２】従来技術の説明に供する図である。
【図１３】従来技術の説明に供する図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本発明を実施するための形態の一例について詳細に説明する。
【００１８】
本実施形態では、センサ等の計器と、サーバコンピュータ等の機器と、を含み、学習済みニューラルネットワークを用いてデータ分析を行う推定側のデータ分析システムについて説明する。
【００１９】
図１は、本実施形態に係るデータ分析システム９０の機能的な構成の一例を示すブロック図である。
図１に示すように、本実施形態に係るデータ分析システム９０は、計器１０と、機器２０と、を含んで構成されている。これら計器１０と機器２０とはネットワークＮを介して通信可能に接続されている。
【００２０】
本実施形態に係る計器１０は、例えば、センサ等であり、観測対象に取り付けられ、観測対象から観測データを取得する。また、計器１０は、電気的には、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、及びＲＯＭ（Read Only Memory）等を備えて構成されている。ＲＯＭには、本実施形態に係るデータ変換処理プログラムが記憶されている。
【００２１】
上記のデータ変換処理プログラムは、例えば、計器１０に予めインストールされていてもよい。このデータ変換処理プログラムは、不揮発性の記憶媒体に記憶して、又は、ネットワークを介して配布して、計器１０に適宜インストールすることで実現してもよい。なお、不揮発性の記憶媒体の例としては、ＣＤ-ＲＯＭ（Compact Disc Read Only Memory）、光磁気ディスク、ＤＶＤ-ＲＯＭ（Digital Versatile Disc Read Only Memory）、フラッシュメモリ、メモリカード等が挙げられる。
【００２２】
ＣＰＵは、ＲＯＭに記憶されているデータ変換処理プログラムを読み込んで実行することにより、入力部１２、変換部１４、及び出力部１６として機能する。また、ＲＯＭには、学習済みニューラルネットワーク（学習済みモデル）１８Ａが格納されている。なお、計器１０が備える学習済みニューラルネットワーク１８Ａと、後述する機器２０が備える学習済みニューラルネットワーク１８Ｂとにより１つの学習済みニューラルネットワーク（以下、学習済みニューラルネットワーク１８という。）が構築される。つまり、１つの学習済みニューラルネットワーク１８を所定の中間層（この中間層は隠れ層ともいう。）で分割し、入力層から所定の中間層までが学習済みニューラルネットワーク１８Ａに含まれ、所定の中間層の次の中間層から出力層までが学習済みニューラルネットワーク１８Ｂに含まれている。
【００２３】
本実施形態に係る入力部１２は、観測対象から取得された観測データの入力を受け付ける。
【００２４】
本実施形態に係る変換部１４は、入力部１２から入力を受け付けた観測データを、観測データの次元よりも少ない次元の低次元観測データに変換する変換処理を行う。この変換処理では、観測データが学習済みニューラルネットワーク１８Ａの入力層に入力され、入力層から所定の中間層までの部分を用いて低次元観測データに変換される。つまり、低次元観測データは、学習済みニューラルネットワーク１８Ａの所定の中間層の出力として得られる。
【００２５】
本実施形態に係る出力部１６は、変換部１４により得られた低次元観測データを、計器１０の出力として、ネットワークＮを介して機器２０に送信する。
【００２６】
一方、本実施形態に係る機器２０は、例えば、サーバコンピュータ等であり、電気的には、ＣＰＵ、ＲＡＭ、及びＲＯＭ等を備えて構成されている。ＲＯＭには、本実施形態に係るデータ分析処理プログラムが記憶されている。このデータ分析処理プログラムは、例えば、機器２０に予めインストールされていてもよい。このデータ分析処理プログラムは、不揮発性の記憶媒体に記憶して、又は、ネットワークを介して配布して、機器２０に適宜インストールすることで実現してもよい。
【００２７】
ＣＰＵは、ＲＯＭに記憶されているデータ分析処理プログラムを読み込んで実行することにより、入力部２２、分析部２４、及び出力部２６として機能する。また、ＲＯＭには、学習済みニューラルネットワーク（学習済みモデル）１８Ｂが格納されている。
【００２８】
本実施形態に係る入力部２２は、計器１０から出力された低次元観測データの入力を受け付ける。
【００２９】
本実施形態に係る分析部２４は、入力部２２から入力を受け付けた低次元観測データから、観測データを分析した結果を得る分析処理を行う。この分析処理では、低次元観測データが所定の中間層の次の中間層に入力され、次の中間層から出力層までの部分を用いて、出力層の出力を、観測データを分析した結果とする。
【００３０】
本実施形態に係る出力部２６は、分析部２４により得られた分析結果を出力する。この分析結果は、例えば、図示しない表示部や、予め指定された端末装置等に出力される。
【００３１】
図２は、本実施形態に係る計器１０及び機器２０の各々の動作の説明に供する図である。
図２に示すように、計器１０では、入力を受け付けた観測データについて、学習済みニューラルネットワーク１８Ａを用いて推論の演算を途中まで行い得られた低次元観測データを機器２０に送信する。機器２０では、受信した低次元観測データを入力とし、学習済みニューラルネットワーク１８Ｂを用いた推論の演算の続きを行い、分析結果を得る。
【００３２】
本実施形態に係る学習済みニューラルネットワーク１８Ａは、所定の中間層のノード数が出力層のノード数よりも少なくなるように構成されている（これを「制約１」という。）。なお、所定の中間層のノード数は、１つ以上とされる。ここで、１ノードは、１次元に対応しており、１次元は、一例として、３２ビットで表される実数とされる。また、学習済みニューラルネットワーク１８Ａは、所定の制約（これを「制約２」という。）の下、分析部２４で分析した結果が異なる観測データについて低次元観測データの確率分布の重複が、制約２がない場合と比べて少なくなるように予め学習されている。
【００３３】
より具体的には、学習済みニューラルネットワーク１８Ａ、１８Ｂが、後述する学習装置により予め学習される。学習装置により学習済みニューラルネットワーク１８Ａ、１８Ｂを学習するための学習用ニューラルネットワークは、制約２として、所定の中間層の１つ前の中間層が、低次元観測データの平均と分散をそれぞれ出力するノードを含み、分散を出力するノードの出力に、ノイズを乗算して、所定の中間層の入力とするように構成されている。学習用ニューラルネットワークは、分析対象となる観測データとは異なる、分析して得られる結果（分析結果）が既知の観測データを学習データとして予め学習されている。つまり、学習データでは、学習データにより示される画像が分類される値を示す正解ラベルが予め付与されている。なお、後述する学習用ニューラルネットワークは、平均と分散をそれぞれ出力するノードが必要となるが、学習済みニューラルネットワーク１８Ａでは、少なくとも平均を出力するノードが含まれていればよい。このため、図２に示す例では、分散を出力するノード及びノイズを出力するノードを含まない構成としている。
【００３４】
本実施形態に係る変換部１４は、学習済みニューラルネットワーク１８Ａにおける所定の中間層の一つ前の中間層の平均μを出力するノードの出力を、所定の中間層の出力として用いて、低次元観測データを出力する。この平均μの出力は、分析結果が異なる観測データにおける低次元観測データの確率分布の重複が、制約２がない場合と比べて少なくなるように予め学習されている。なお、図２に示す例では、計器１０で中間層のノード数を「２」とした場合の中間データの出力を示し、Ｐ０〜Ｐ９は低次元観測データの確率分布を示している。
【００３５】
図３は、本実施形態に係る学習済みニューラルネットワーク１８Ａ、１８Ｂの説明に供する図である。
図３に示すように、本実施形態に係る学習済みニューラルネットワーク１８Ａには、入力層から所定の中間層までの部分が含まれている。一方、本実施形態に係る学習済みニューラルネットワーク１８Ｂには、所定の中間層の次の中間層（図示省略）から出力層までの部分が含まれている。
【００３６】
すなわち、観測データが学習済みニューラルネットワーク１８Ａの入力層に入力され、所定の中間層から低次元観測データが出力される。この所定の中間層の出力値は、平均μを出力するノードの出力である変数Ｚとして表される。一方、機器２０では、計器１０から受信した変数Ｚを、学習済みニューラルネットワーク１８Ｂの次の中間層に入力し、次の中間層から出力層までの部分を用いて、出力層の出力を、観測データの分析結果とする。この場合、計器１０は、制約１により、変数Ｚを機器２０に送信するだけなので、上述の図１３に示す従来例と比較して、通信量が削減される。また、制約２により、低次元観測データの重複が、制約２がない場合と比べて少なくなるため、制約１でノード数を少なくした場合でも表現力の低下が抑制される。
【００３７】
すなわち、所定の中間層におけるノード数での表現力を、最終的に適切に分析するという目的を満たすために、所定の中間層の出力値の確率分布が最終的に分析される結果毎に重複する範囲を少なくしている。
【００３８】
最終的に適切に分析されるべくニューラルネットワークの出力値を制御するために、中間層の重みをかえることが従来行われてきた方式であるが、本実施形態では、さらに中間層の出力値についても制約を設けている点がポイントである。例えば、ニューラルネットワーク等を用いて所定の観測データを正常・異常のどちらであるかを判定しようとする場合、正常だとわかっているデータは正常だと判定されるように、異常だとわかっているデータは異常だと判定されるように学習を行う。つまり、出力層からの出力について制約を与えて中間層の重み等を学習する。一方、本実施形態では、上述した制約に加え、所定の中間層についてもさらに制約を加えている。上述した例で説明すると、正常だとわかっているデータは正常だと判定されるように、異常だとわかっているデータは異常だと判定されるように、かつ、所定の中間層のノード数と、正常だとわかっているデータに係る所定の中間層からの出力値の確率分布と、異常だとわかっているデータに係る所定の中間層からの出力値の確率分布と、ができる限り重複しないようにする、という制約を与えて中間層の重みなどを学習する。
【００３９】
このような構成を有することで、出力層のノード数よりも所定の中間層のノード数が少ない場合、すなわち、分析される結果が多い場合に特に効果を奏する。例えば、文字認識の場合、判定対象のデータがどのような文字であるかというような判定よりも、判定対象のデータは誰の筆跡によるどのような文字である、というような場合である。
【００４０】
本実施形態に係る学習済みニューラルネットワーク１８Ｂを用いることにより、低次元観測データから、観測データの分析結果として、最も確率の高い値が出力される。例えば、図３に示すように、観測データの画像が手書きされた７８４次元の１桁の数字（図３の例では「０」）である場合、中間データとなる低次元観測データは２次元とされ、観測データの数字に応じて１０次元の値（０〜９）のうち最も確率の高い値（図３の例では「０」）が出力される。
【００４１】
図４は、本実施形態に係る手法を画像認識タスク及び音素認識タスクに適用した場合に得られる推定精度の一例を示すグラフである。
なお、図４の左図（画像認識タスク）及び右図（音素認識タスク）において、縦軸は推定の精度（１００％が最も高い）を示し、横軸は中間層のノード数を示す。
【００４２】
図４の左図において、Ａ１はＤＮＮ（Deep Neural Network）による圧縮器を示し、Ａ２は圧縮器の生成モデルを示し、Ａ３は一般的なＤＮＮを示し、Ａ４は本実施形態に係る手法を適用したＤＮＮを示す。
【００４３】
図４の右図において、Ｂ１は一般的なＤＮＮを示し、Ｂ２は本実施形態に係る手法を適用したＤＮＮを示す。
【００４４】
図４の左図及び右図のいずれの場合であっても、中間層のノード数を少なく絞った場合に、従来法と比較して、推定の精度が向上されている。
【００４５】
次に、図５及び図６を参照して、本実施形態に係るデータ分析システム９０の作用について説明する。なお、図５は、本実施形態に係るデータ変換処理プログラム及びデータ分析処理プログラムの処理の流れの一例を示すシーケンス図である。図６は、本実施形態に係る計器１０及び機器２０によるデータ分析処理の説明に供する図である。
【００４６】
図５のステップＳ１では、計器１０の入力部１２が、一例として、図６の「２台の装置で行う場合の構成」に示すように、観測データとして推定対象の画像を入力する。なお、図６に示す推定対象の画像としては、例えば、図３に示す７８４次元の行列化された手書き画像（図３の例では「０」）が入力される。また、図６の「１台の装置で行う場合の構成」は、比較例である。
【００４７】
ステップＳ２では、計器１０の変換部１４が、ステップＳ１で入力された観測データを、学習済みニューラルネットワーク１８Ａを用いて、観測データの次元よりも少ない次元の低次元観測データに変換する（制約１）。また、学習済みニューラルネットワーク１８Ａでは制約２が反映されているため、低次元観測データの確率分布の重複が、制約２がない場合と比べて少なくなる。
【００４８】
ステップＳ３では、計器１０の出力部１６が、一例として、図６の「２台の装置で行う場合の構成」に示すように、ステップＳ２で変換して得られた低次元観測データとしての所定の中間層の出力値（変数Ｚ）を機器２０に送信する。
【００４９】
次に、ステップＳ４では、機器２０の入力部２２が、ステップＳ３で計器１０から送信された、低次元観測データとしての所定の中間層の出力値（変数Ｚ）を入力する。
【００５０】
ステップＳ５では、機器２０の分析部２４が、ステップＳ４で入力された低次元観測データとしての所定の中間層の出力値を、学習済みニューラルネットワーク１８Ｂを用いて、分析する。
【００５１】
ステップＳ６では、機器２０の出力部２６が、一例として、図６の「２台の装置で行う場合の構成」に示すように、ステップＳ５での分析結果（図６の例では「０から９に該当する確率」）を出力し、これらデータ変換処理プログラム及びデータ分析処理プログラムによる一連の処理を終了する。なお、図３に示すように、観測データの数字に応じて１０次元の値（０〜９）のうち最も確率の高い値（図３の例では「０」）を最終的に出力してもよい。
【００５２】
次に、データ分析システム９０で用いる学習済みニューラルネットワーク１８Ａ、１８Ｂを学習するための学習装置について説明する。
【００５３】
図７は、本実施形態に係る学習装置３０の機能的な構成の一例を示すブロック図である。
【００５４】
本実施形態に係る学習装置３０には、例えば、パーソナルコンピュータや、サーバコンピュータ等が適用される。学習装置３０は、上述の図１に示した機器２０の一機能として実現してもよい。学習装置３０は、電気的には、ＣＰＵ、ＲＡＭ、及びＲＯＭ等を備えて構成されている。ＲＯＭには、本実施形態に係る学習処理プログラムが記憶されている。この学習処理プログラムは、例えば、学習装置３０に予めインストールされていてもよい。この学習処理プログラムは、不揮発性の記憶媒体に記憶して、又は、ネットワークを介して配布して、学習装置３０に適宜インストールすることで実現してもよい。
【００５５】
ＣＰＵは、ＲＯＭに記憶されている学習処理プログラムを読み込んで実行することにより、入力部３２、分析部３４、学習部３６、及び出力部３８として機能する。
【００５６】
本実施形態に係る入力部３２は、複数の学習データを含む学習データ群の入力を受け付ける。ここでいう学習データとは、分析対象となる観測データとは異なり、分析結果が既知の観測データである。
【００５７】
本実施形態に係る分析部３４は、学習用ニューラルネットワーク１８Ｃを用いて、入力部３２から入力を受け付けた学習データを分析した結果を得る処理を行う。学習用ニューラルネットワーク１８Ｃでは、入力層から所定の中間層までの部分により、学習データを、学習データの次元よりも少ない次元の低次元学習データに変換する変換処理を行う。この変換処理では、制約１として、学習データが学習用ニューラルネットワーク１８Ｃの入力層に入力され、入力層から入力された学習データが所定の中間層を用いて低次元学習データに変換される。つまり、低次元学習データは、学習用ニューラルネットワーク１８Ｃの所定の中間層の出力として得られる。学習用ニューラルネットワーク１８Ｃでは、所定の中間層のノード数が出力層のノード数よりも少なくなる。
【００５８】
また、学習用ニューラルネットワーク１８Ｃでは、所定の中間層の次の中間層から出力層までの部分により、所定の中間層で得られた低次元学習データから、学習データを分析した結果を得る分析処理を行う。この分析処理では、低次元学習データが所定の中間層の次の中間層に入力され、出力層の出力を、学習データを分析した結果とする。
【００５９】
本実施形態に係る学習部３６では、分析部３４で学習データを分析して得られた分析結果と、当該学習データに付与されている正解ラベルとを用いて、学習用ニューラルネットワーク１８Ｃにおける重みを更新する更新処理を行う。このとき、学習用ニューラルネットワーク１８Ｃでは、制約２として、分析結果が異なる学習データについて低次元学習データの確率分布の重複が少なくなるように学習される。より具体的には、所定の中間層の１つ前の中間層が、低次元学習データの平均と分散をそれぞれ出力するノードを含み、分散を出力するノードの出力に、ノイズを乗算して、所定の中間層の入力とする。
【００６０】
本実施形態に係る出力部３８は、上記学習により得られた学習用ニューラルネットワーク１８Ｃから構築される学習済みニューラルネットワーク１８を記憶部等に出力する。例えば、学習済みニューラルネットワーク１８は、学習用ニューラルネットワーク１８Ｃから、所定の中間層の一つ前までの分散を出力するノード及びノイズを出力するノードを除いたものである。
【００６１】
次に、図８及び図９を参照して、本実施形態に係る学習装置３０の作用について説明する。なお、図８は、本実施形態に係る学習処理プログラムの処理の流れの一例を示すフローチャートである。図９は、本実施形態に係る学習用ニューラルネットワーク１８Ｃの説明に供する図である。
【００６２】
図８のステップ１００では、入力部３２が、一例として、図９に示すように、学習用ニューラルネットワーク１８Ｃの入力層ｈ１に学習データを入力する。なお、図９では、１桁の数字が記載された画像を、記載された数字に応じて１０個の値（０〜９）に分類する問題として例示する。この場合、学習データとして、例えば、７８４次元の行列化された手書き画像（図９に示す例では「０」）が入力される。
【００６３】
ステップ１０２では、分析部３４が、制約１として、ステップ１００で入力層ｈ１に入力された学習データを、一例として、図９に示すように、所定の中間層ｈ３を用いて、学習データの次元よりも少ない次元の低次元学習データに変換する。
【００６４】
そして、本ステップ１０２では、分析部３４が、上記で得られた低次元学習データから、学習データを分析した結果を得る分析処理を行う。この分析処理では、一例として、図９に示すように、低次元学習データが所定の中間層ｈ３から出力層ｈ４に入力され、出力層ｈ４の出力を、学習データを分析した結果とする。図９に示す例では、学習用ニューラルネットワーク１８Ｃの出力層ｈ４から、分析結果として、「０から９に該当する確率」が出力される。
【００６５】
ステップ１０４では、学習部３６が、ステップ１０２で学習データを分析して得られた分析結果と、当該学習データに付与されている正解ラベルとを用いて、学習用ニューラルネットワーク１８Ｃにおける重みを更新する更新処理を行う。このとき、学習用ニューラルネットワーク１８Ｃでは、制約２として、所定の中間層ｈ３の１つ前の中間層ｈ２が、低次元学習データの平均μを出力するノード及び分散σを出力するノードを含み、分散σを出力するノードの出力に、ノイズεを乗算して、所定の中間層ｈ３の入力とする。なお、この制約２では、所定の中間層ｈ３の出力値が正規分布から生成されるものとする。この制約２により、低次元学習データの確率分布の重複が、制約２がない場合と比べて少なくなるように学習される。この学習は、入力層ｈ１から送られてくる学習データに基づいて、予め定められた目的関数を最小化することで行う。ここでいう目的関数とは、正解ラベルのベクトルと、所定の中間層ｈ３の出力値のベクトルとのクロスエントロピーとして示される。
【００６６】
図１０は、本実施形態に係る所定の中間層ｈ３を２ノードとした場合の確率分布の一例を示す図である。
図１０の左図は、制約２を行わない場合のノード１の出力値及びノード２の出力値の確率分布を示す。図１０の右図は、制約２を行った場合のノード１の出力値及びノード２の出力値の確率分布を示す。なお、確率分布Ｐ０、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７、Ｐ８、Ｐ９の各々は、正解ラベル０、１、２、３、４、５、６，７、８、９の各々に対応する。
【００６７】
図１０の左図に示すように、ノード１及びノード２の間で正解ラベル０〜９の確率分布をプロットした場合、重複が多くなり、表現力が低下する。これに対して、図１０の右図に示すように、ノード１及びノード２の間で正解ラベル０〜９の分布をプロットした場合、制約２を行わない場合と比較して、重複が少なくなり、表現力の低下が抑制される。一例として、確率分布Ｐ１を拡大した状態を示しているが、制約２では、出力値の分散σ及び平均μを制御して、重複する範囲を小さくする。つまり、上述したように、分散σにノイズεを乗算することで、重複する範囲が小さくなるように制御する。
【００６８】
ステップ１０６では、出力部３８が、全ての学習データについて終了したか否かを判定する。全ての学習データについて終了したと判定した場合（肯定判定の場合）、ステップ１０８に移行し、全ての学習データについて終了していないと判定した場合（否定判定の場合）、ステップ１００に戻り処理を繰り返す。
【００６９】
ステップ１０８では、出力部３８が、学習用ニューラルネットワーク１８Ｃに基づいて、学習済みニューラルネットワーク１８を構築し、構築した学習済みニューラルネットワーク１８を記憶部等に出力し、本学習処理プログラムによる一連の処理を終了する。
【００７０】
以上、実施形態としてデータ分析システム及び学習装置を例示して説明した。実施形態は、コンピュータを、データ分析システム及び学習装置が備える各部として機能させるためのプログラムの形態としてもよい。実施形態は、このプログラムを記憶したコンピュータが読み取り可能な記憶媒体の形態としてもよい。
【００７１】
その他、上記実施形態で説明したデータ分析システム及び学習装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
【００７２】
また、上記実施形態で説明したプログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
【００７３】
また、上記実施形態では、プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。
【符号の説明】
【００７４】
１０   計器
１２   入力部
１４   変換部
１６   出力部
１８、１８Ａ、１８Ｂ 学習済みニューラルネットワーク
１８Ｃ 学習用ニューラルネットワーク
２０   機器
２２   入力部
２４   分析部
２６   出力部
３０   学習装置
３２   入力部
３４   分析部
３６   学習部
３８   出力部
９０   データ分析システム
【図１】
2019191635.tif 000003
【図２】
2019191635.tif 000004
【図３】
2019191635.tif 000005
【図４】
2019191635.tif 000006
【図５】
2019191635.tif 000007
【図６】
2019191635.tif 000008
【図７】
2019191635.tif 000009
【図８】
2019191635.tif 000010
【図９】
2019191635.tif 000011
【図１０】
2019191635.tif 000012
【図１１】
2019191635.tif 000013
【図１２】
2019191635.tif 000014
【図１３】
2019191635.tif 000015