JP6623184B2 - 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム - Google Patents

多層ニューラルネットの大局構造抽出装置、方法、及びプログラム Download PDF

Info

Publication number
JP6623184B2
JP6623184B2 JP2017015909A JP2017015909A JP6623184B2 JP 6623184 B2 JP6623184 B2 JP 6623184B2 JP 2017015909 A JP2017015909 A JP 2017015909A JP 2017015909 A JP2017015909 A JP 2017015909A JP 6623184 B2 JP6623184 B2 JP 6623184B2
Authority
JP
Japan
Prior art keywords
community
layer
neural network
global structure
vertex
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017015909A
Other languages
English (en)
Other versions
JP2018124754A (ja
Inventor
千紘 渡邊
千紘 渡邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017015909A priority Critical patent/JP6623184B2/ja
Publication of JP2018124754A publication Critical patent/JP2018124754A/ja
Application granted granted Critical
Publication of JP6623184B2 publication Critical patent/JP6623184B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、大局構造抽出装置、方法、及びプログラムに係り、特に、多層ニューラルネットの各層のコミュニティを抽出する大局構造抽出装置、方法、及びプログラムに関する。
ネットワークの結合構造に基づき頂点のコミュニティ抽出を行う方法が知られている(非特許文献1)。
Newman. M. E. J and Leicht. E. A. Mixture models and exploratory analysis in networks. Proceedings of the National Academy of Sciences, Vol. 104, No. 23. pp. 9564-9569, 2007.
しかしながら、非特許文献1の方法では、多層ニューラルネットの大局構造を抽出するものではない。
本発明は、何らかの観測データに基づいて学習した多層ニューラルネットからの知識発見において、既存技術が抱えていた以下の問題を解決することを目的とする。
近年、深層学習のように大規模かつ複雑なネットワーク構造に基づく学習器を用いる方法により、様々なデータの予測や認識を高精度で行うことができることが示されてきた。しかし、そのような大規模で複雑なネットワーク構造において、どの部分がどのような働きをしているのかを人間が理解することは難しく、学習後のネットワークからの知識発見が困難であるという課題があった。
本発明は、上記の事情に鑑みてなされたもので、学習結果を人間にも理解しやすい形で提示するために、学習後の多層ニューラルネットから大まかな関係構造を抽出することができる大局構造抽出装置、方法、及びプログラムを提供することを目的とする。
上記の目的を達成するために第1の発明に係る大局構造抽出装置は、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部であって、前記層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、前記層dのコミュニティを抽出する大局構造抽出部を含んで構成されている。
第2の発明に係る大局構造抽出装置は、上記第1の発明において、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義する辺定義部を更に含む。
第3の発明に係る大局構造抽出装置は、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除する辺定義部と、を含んで構成されている。
第4の発明に係る大局構造抽出装置は、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義する辺定義部と、各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化する可視化部と、を含んで構成されている。
第5の発明に係る大局構造抽出装置は、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除する辺定義部と、前記ニューラルネットを、複数の多層ニューラルネットに分割し、予め用意された学習データに基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行う並列学習部と、を含んで構成されている。
第6の発明に係る大局構造抽出方法は、大局構造抽出部が、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出することであって、前記層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、前記層dのコミュニティを抽出することを特徴とする。
第7の発明に係る大局構造抽出方法は、大局構造抽出部が、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出し、辺定義部が、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、可視化部が、各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化することを特徴とする。
第8の発明に係るプログラムは、コンピュータを、上記の大局構造抽出装置の各部として機能させるためのプログラムである。
以上説明したように、本発明の大局構造抽出装置、方法、及びプログラムによれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、層dのコミュニティを適切に抽出することができ、学習結果を人間にも理解しやすい形で提示するために、学習後の多層ニューラルネットから大まかな関係構造を抽出することができる、という効果が得られる。
本発明の大局構造抽出装置、及びプログラムによれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除することにより、多層ニューラルネットを圧縮することができる、という効果が得られる。
本発明の大局構造抽出装置、方法、及びプログラムによれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化することにより、多層ニューラルネットの学習結果を人間にも理解しやすい形で提示することができる、という効果が得られる。
本発明の大局構造抽出装置、及びプログラムによれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除し、前記ニューラルネットを、複数の多層ニューラルネットに分割し、予め用意された学習データに基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行うことにより、多層ニューラルネットの学習に係る時間を短縮することができる、という効果が得られる。
本発明の第1の実施の形態に係る大局構造抽出装置の構成を示す概略図である。 本発明の第1の実施の形態に係る大局構造抽出装置の処理概要を示す図である。 多層ニューラルネットの学習アルゴリズムを示す図である。 本発明の第1の実施の形態に係る大局構造抽出装置の大局構造抽出部の構成を示す概略図である。 多層ニューラルネットのコミュニティ抽出を行うアルゴリズムを示す図である。 多層ニューラルネットのコミュニティ抽出を行うアルゴリズムを示す図である。 多層ニューラルネットを圧縮する方法を説明するための図である。 本発明の第1の実施の形態に係る大局構造抽出装置の可視化部の構成を示す概略図である。 多層ニューラルネットを可視化する方法を説明するための図である。 本発明の第1の実施の形態に係る大局構造抽出プログラムを示すフローチャートである。 本発明の第2の実施の形態に係る大局構造抽出装置の構成を示す概略図である。 多層ニューラルネットを分割する方法を説明するための図である。 本発明の第2の実施の形態に係る大局構造抽出プログラムを示すフローチャートである。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
<第1の実施の形態>
[大局構造抽出装置の構成]
以下、本発明の第1の実施の形態に係る大局構造抽出装置について図面を参照して説明する。大局構造抽出装置は、CPUと、RAMと、プログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図1には、本発明の実施形態に係る大局構造抽出装置100の構成の概略が示されている。図1に示すように、本実施形態に係る大局構造抽出装置100は、入力部10と、演算部20と、出力部50とで構成されている。
大局構造抽出装置100は、入力部10により、観測される入出力データの組

といくつかのパラメータを受け付け、演算部20により、学習した多層ニューラルネットの大まかな関係構造を抽出し、出力部50により出力する。
入力部10は、下記の観測データと第1〜第14のパラメータを入力として受け付ける。
まず、観測データとして、観測データの入出力の組

を受け付ける。ここで、Ndataはデータの個数、

の各次元数を

とおく。
第1のパラメータは、観測データの正規化における入力値の最大値xmaxである。例えば、xmax = 3 と設定すればよい。
第2のパラメータは、観測データの正規化における入力値の最小値xminである。例えば、xmin=-3 と設定すればよい。
第3のパラメータは、観測データの正規化における出力値の最大値ymaxである。ymax<1とする.例えば、ymax = 0.99と設定すればよい。
第4のパラメータは、観測データの正規化における出力値の最小値yminである。ymin >0とする.例えば、ymin = 0.01 と設定すればよい。
第5のパラメータは、多層ニューラルネットの学習における反復回数NNNである。例えば、NNN = 10000 と設定すればよい。
第6のパラメータは、多層ニューラルネットの層の数(入力層・出力層を含む)Ndepthである。多層ニューラルネットの深さd = 1 は入力層、深さd=Ndepthは出力層と対応する。
第7のパラメータは、多層ニューラルネットの各層に含まれる頂点数

である。ただし、

である。
第8のパラメータは、多層ニューラルネットの学習におけるステップ幅ηである。例えば、η = 0.7と設定すればよい。
第9のパラメータは、多層ニューラルネットの学習における辺のスパース化の度合いを表すパラメータ

である。例えば、

と設定すればよい。
第10のパラメータは、多層ニューラルネットの学習において辺の有無を決定するための閾値ξNNである。例えば、ξNN =0.01 と設定すればよい。
第11のパラメータは、多層ニューラルネットの学習におけるパラメータ更新のオフセット値

である。例えば、

と設定すればよい。
第12のパラメータは、学習済み多層ニューラルネットのコミュニティ抽出における反復回数NEMである。例えば、NEM =1000 と設定すればよい。
第13のパラメータは、学習済み多層ニューラルネットのコミュニティ抽出における1層のコミュニティ数の上限Ncである。例えば、Nc = 10 と設定すればよい。
第14のパラメータは、 学習済み多層ニューラルネットの各コミュニティ間の辺の有無を決定するための閾値

である。例えば、

と設定すればよい。
演算部20は、多層ニューラルネット学習部22と、隣接行列変換部24と、大局構造抽出部26と、可視化部28とを備えている。
演算部20の処理は、大まかに、多層ニューラルネット学習部22で観測データから多層ニューラルネットの学習を行い(図2(a))、大局構造抽出部26でその多層ニューラルネットにおけるコミュニティ抽出を行った後(図2(b))、得られたコミュニティ間の辺を定義する(図2(c))。以降、各ブロックの処理について詳細に説明する。
(多層ニューラルネット学習部22)
多層ニューラルネット学習部22は、入力部10で受け付けた、観測データの入出力の組

と、パラメータとを用い、多層ニューラルネットにおけるパラメータの学習を行う。ここで、シグモイド関数をσ(x)= 1/(1 + exp(-x))、符号関数を
と表記する。ただし、ここでxはベクトルや行列で表される値も許しており、その場合はxの各要素に関して上記の関数を適用するものとする。また、ここでは最も基礎的な多層ニューラルネットの学習方法の例を記載するが、本発明はより一般的な多層ニューラルネット、例えばいくつかの頂点を削除した多層ニューラルネットなどにも同様に適用可能である。
(観測データの前処理)
まず、多層ニューラルネット学習部22は、前処理として、入力部10で受け付けた、観測データの入出力の組

について正規化を行う。入力データ{x n}の最大値がxmax、最小値がxminとなるように正規化するには、以下の計算により入力データの値を変換すればよい。
{x n}のもともとの最大値、最小値をそれぞれamax、aminとするとき、正規化された入力データ

は以下の式に従って得られる。
同様の計算により、出力データ{y n}についても、その最大値がymax、最小値がyminとなるように正規化を行う。
(多層ニューラルネットのパラメータ初期化)
次に、多層ニューラルネット学習部22は、多層ニューラルネットのパラメータの初期化を行う。多層ニューラルネットにおけるパラメータは、深さdの層の頂点viと、深さd + 1の層の頂点vjを結ぶ辺の重みWd i,jの集合と、深さdの層の各頂点vd iにおける出力のバイアスθd iである。ここで、{Wd i,j}と{θd i}の初期値はそれぞれ、例えば(0, 1)の一様分布などからランダムに決めればよい。
(多層ニューラルネットの学習)
多層ニューラルネット学習部22は、上記で初期化したパラメータ{Wd i,j}と{θd i}と観測データから、パラメータの更新を行う。図3に示すAlgorithm1はパラメータ更新方法の一例であり、多層ニューラルネットによる出力値と観測データの二乗誤差を目的関数とする最急降下法によるものである。
(学習した多層ニューラルネットの後処理)
多層ニューラルネット学習部22は、学習した多層ニューラルネットにおける各辺の重みに対し、閾値処理を行う。具体的には、深さdの層の各頂点viと、深さd + 1の層の各頂点vjを結ぶ辺について、その重みの絶対値|Wd i,j|が閾値ξNN以上であればそのままとし、そうでなければWd i,j←0 とする。
(隣接行列変換部24)
隣接行列変換部24は、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、各層の隣接行列を生成する。
ここで、隣接行列と次数について説明する。グラフG=(V,E)の隣接行列A ={Aij}とは、全ての(i,j) の組み合わせに対し、(i,j)∈E ならばAij = 1、

ならばAij = 0 を満たす行列である。また、グラフの各頂点viの次数とは、viにつながる辺の数として定義される。
多層ニューラルネット学習部22で得られた{Wd i,j}に基づき、学習後の多層ニューラルネット全体をNdepth個のグラフに分割し、それらの隣接行列

を定義する。元の多層ニューラルネットにおける深さd’のi番目の頂点が、この隣接行列Adでは頂点番号

を持つとすると、Wd′ i,j=0 ならば

とし、Wd′ i,j≠0 ならば

とする。ここで、各隣接行列Adに含める頂点集合の組み合わせは様々に考えられるが、少なくとも学習後の多層ニューラルネットにおける深さd の頂点を全て含むものとする。以下に、(i)〜(iii)の隣接行列Adに含める頂点集合の一例を示す。
(i) Aは、深さ1,2 の頂点全てを含む隣接行列である。
(ii)

について、Adは、深さd-1,d,d+1の頂点全てを含む隣接行列である。
(iii)

は、深さNdepth-1, Ndepth の頂点全てを含む隣接行列である。
以降、(i), (ii), (iii) で定義された隣接行列を用いるものとして説明を進める。
最後に、上記の多層ニューラルネット学習部22による閾値処理により独立な(つまり、次数が0の)頂点が生じた場合、このような頂点の番号に対応するAdの行・列を削除する。例えば、多層ニューラルネットにおける深さd’の頂点viの次数が0の場合、行

と列

を削除する。
(大局構造抽出部26)
大局構造抽出部26は、隣接行列変換部24により得られたNdepth個のグラフの隣接行列

に対して、それぞれコミュニティ抽出を行うことで、多層ニューラルネットの大局構造を抽出する。本実施の形態では、図4に示すように、大局構造抽出部26は、コミュニティ抽出部32と、辺定義部34とを備えている。
コミュニティ抽出部32は、多層ニューラルネット学習部22によって学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、多層ニューラルネットの各層dに対し、当該層dのコミュニティを抽出する。
グラフ構造であるコミュニティ抽出手法は様々に考えられるが、以下では実施例として(1)上記非特許文献1に記載のコミュニティ抽出手法を用いる方法(図5のAlgorithm 2)と、(2) 上記非特許文献1記載の手法を拡張した独自のコミュニティ抽出手法を用いる方法(図6のAlgorithm 3)について記載する。これらのアルゴリズムを適用した結果として、多層ニューラルネットの各層の頂点集合は、最大でNc個のコミュニティに分割される。全ての層についてコミュニティ抽出を行った結果、得られたコミュニティの集合を

とおく。これは、学習した多層ニューラルネットのおおまかな構造を表すグラフにおける、頂点とみなすことができる。
図6のAlgorithm 3を適用する場合には、コミュニティ抽出部32は、層dのコミュニティを抽出する際に、層dの頂点が各コミュニティcに属する確率πcと、各コミュニティcについての、コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率τ´c,i、又は各コミュニティcについての、コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率τc,iとに基づいて、層dに含まれる各頂点が、各コミュニティcに属する確率qi,cを推定することにより、層dのコミュニティを抽出する。
次に、辺定義部34は、コミュニティ抽出部32で得られた各層dのコミュニティに基づいて、隣接する層のコミュニティ同士をつなぐ辺の集合

を定義する。
ある深さd のコミュニティC と、深さd + 1 のコミュニティC′との間の辺の有無は、C に含まれる頂点とC′に含まれる頂点の間の辺の情報から決定する。この方法は様々に考えられるが、例えば以下の方法1、方法2、方法3、または方法4のように決めればよい。
方法1では、コミュニティC に含まれる頂点とコミュニティC′に含まれる頂点の間に、少なくとも1 つの辺が存在するならば、その場合のみコミュニティC とコミュニティC′の間を辺で結ぶ。
方法2では、深さd のコミュニティC に含まれる頂点と深さd+1 のコミュニティC′に含まれる頂点の全ての組み合わせの個数(C の頂点がMC 個,C′ の頂点がMC′個ならばMC×MC′) に対する辺の数の割合rC,C′ (C の頂点とC′の頂点の間にM 本の辺がある場合、

)が閾値ξc d以上ならば、その場合のみコミュニティCとコミュニティC′の間を辺で結ぶ。
方法3では、方法2で定義された辺のうち、以下の条件(1) を満たすか、または条件(2) を満たすもののみを残し、残りを削除する。
条件(1)は、深さd のコミュニティC と深さd + 1 のコミュニティC′をつなぐ辺について、

であることである。条件(2)は、深さd のコミュニティC と深さd + 1 のコミュニティC′をつなぐ辺について、

であることである。
方法4は、方法2 で定義された辺のうち、上記の条件(1) を満たし、かつ条件(2) を満たすもののみを残し、残りを削除することである。
このようにして得られたコミュニティの集合

と、コミュニティ同士を結ぶ辺の集合

とにより、学習した多層ニューラルネットの大局構造を表すグラフを抽出することができる。
また、辺定義部34は、図7に示すように、隣接する層のコミュニティ間を結ぶ辺を定義した結果、次の層への辺を持たないコミュニティがある場合には、多層ニューラルネット学習部22で学習後の多層ニューラルネットから、当該コミュニティに含まれる頂点と、当該コミュニティに含まれる頂点に繋がる辺とを削除することにより、多層ニューラルネットを圧縮する。これにより、パラメータ数を減らした多層ニューラルネットを生成でき、計算時間や必要メモリを削減することができる。
(可視化部)
可視化部28は、多層ニューラルネットの大局構造を表すグラフにおける頂点集合

と辺集合

とを可視化して、出力部50により表示する。
図8に示すように、可視化部28は、大局構造可視化部40、コミュニティ受付部42、及び入出力可視化部44を備えている。
大局構造可視化部40は、上記図2(c)に示すように、大局構造抽出部26によって得られた、各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、出力部50により表示する。
コミュニティ受付部42は、大局構造可視化部40による可視化に対して、ユーザから、中間層のコミュニティの指定を受け付ける。
入出力可視化部44は、図9に示すように、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化し、出力部50による表示する。上記図9の例のように、多層ニューラルネットのタスクが、画像の特徴量から、その画像に写っているものを予測するタスクの場合、中間層の真ん中のコミュニティが指定されると、指定されたコミュニティにつながっている入力層のコミュニティの各頂点と、出力層のコミュニティの各頂点とを示す情報が可視化される。これにより、中間層の真ん中のコミュニティが、「特徴量3〜5」の値から「数字の画像」を予測する役割を果たしていることが分かる。
また、中間層の右側のコミュニティが指定されると、指定されたコミュニティにつながっている入力層のコミュニティの頂点と、出力層のコミュニティの頂点とを示す情報が可視化される。これにより、中間層の右側のコミュニティが、「特徴量1、2、6〜10」の値から「動物の画像」を予測する役割を果たしていることが分かる。
[大局構造抽出装置の作用]
次に、本発明の第1の実施の形態に係る大局構造抽出装置100の作用を説明する。
図10には、本発明の第1の実施の形態に係る大局構造抽出プログラムを示すフローチャートが示されている。大局構造抽出装置100の入力部10により、観測される入出力データの組といくつかのパラメータとを受け付け、大局構造抽出プログラムがスタートすると、ステップS100で、多層ニューラルネット学習部22は、入力部10で受け付けた、観測データの入出力の組

と、パラメータとを用い、多層ニューラルネットにおけるパラメータの学習を行う。例えば、上記図3に示すAlgorithm1に従って、多層ニューラルネットによる出力値と観測データの二乗誤差を目的関数とする最急降下法により、多層ニューラルネットにおける各辺の重みを学習する。そして、学習した多層ニューラルネットにおける各辺の重みに対し、閾値処理を行う。
ステップS102では、隣接行列変換部24は、学習後の多層ニューラルネット全体をNdepth 個のグラフに分割し、分割されたNdepth 個のグラフの各々に対し、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、各層の隣接行列を生成する。
ステップS106では、コミュニティ抽出部32は、上記ステップS102で生成された各層の隣接行列に基づいて、多層ニューラルネットの各層dに対し、当該層dのコミュニティを抽出する。例えば、上記図6に示すAlgorithm3に従って、層dのコミュニティを抽出する際に、層dに含まれる各頂点iが、各コミュニティcに属する確率qi,cの更新と、層dの頂点が各コミュニティcに属する確率πcの更新と、各コミュニティcについての、コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率τ´c,i、又は各コミュニティcについての、コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率τc,iの更新とを繰り返し、層dに含まれる各頂点iが、各コミュニティcに属する確率qi,cを推定することにより、層dのコミュニティを抽出する。
ステップS108では、辺定義部34は、コミュニティ抽出部32で得られた各層dのコミュニティに基づいて、隣接する層のコミュニティ同士をつなぐ辺の集合

を定義する。
また、辺定義部34は、隣接する層のコミュニティ間を結ぶ辺を定義した結果、次の層への辺を持たないコミュニティがある場合には、多層ニューラルネット学習部22で学習後の多層ニューラルネットから、当該コミュニティに含まれる頂点と、当該コミュニティに含まれる頂点に繋がる辺とを削除することにより、多層ニューラルネットを圧縮する。
ステップS110では、大局構造可視化部40は、各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、出力部50により表示する。
ステップS112では、コミュニティ受付部42は、大局構造可視化部40による可視化に対して、ユーザから、中間層のコミュニティの指定を受け付ける。
ステップS114では、入出力可視化部44は、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化し、出力部50による表示し、大局構造抽出プログラムを終了する。
以上説明したように、本発明の第1の実施の形態に係る大局構造抽出装置によれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、層dのコミュニティを適切に抽出することができ、学習結果を人間にも理解しやすい形で提示するために、学習後の多層ニューラルネットから大まかな関係構造を抽出することができる。
また、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除することにより、多層ニューラルネットを圧縮することができる。
また、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化することにより、多層ニューラルネットの学習結果を人間にも理解しやすい形で提示することができる。
また、学習した多層ニューラルネットの結合構造に基づいて簡略化された関係構造を抽出し、大規模かつ複雑な多層ニューラルネットの学習結果を人間にも理解しやすい形で提示することができる。
<第2の実施の形態>
[大局構造抽出装置の構成]
次に、第2の実施の形態に係る大局構造抽出装置について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
第2の実施の形態では、コミュニティ抽出の結果、多層ニューラルネットを分割できる場合には、分割した多層ニューラルネットを並列に再学習する点が、第1の実施の形態と異なっている。
図11に示すように、第2の実施形態に係る大局構造抽出装置200の演算部220は、多層ニューラルネット学習部22と、隣接行列変換部24と、大局構造抽出部26と、多層ニューラルネット分割部228と、並列学習部230とを備えている。
多層ニューラルネット分割部228は、辺定義部34により多層ニューラルネットを圧縮した結果、図12に示すように、多層ニューラルネットを、複数の多層ニューラルネットに分割することができる場合には、複数の多層ニューラルネットに分割する。
並列学習部230は、入力部10で受け付けた、観測データの入出力の組

に基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行い、学習結果を出力部50により出力する。
[大局構造抽出装置の作用]
次に、本発明の第2の実施の形態に係る大局構造抽出装置200の作用を説明する。なお、第1の実施の形態と同様の処理については、同一符号を付して詳細な説明を省略する。
図13には、本発明の第2の実施の形態に係る大局構造抽出プログラムを示すフローチャートが示されている。大局構造抽出装置200の入力部10により、観測される入出力データの組といくつかのパラメータとを受け付け、大局構造抽出プログラムがスタートすると、ステップS100で、多層ニューラルネット学習部22は、入力部10で受け付けた、観測データの入出力の組

と、パラメータとを用い、多層ニューラルネットにおけるパラメータの学習を行う。そして、学習した多層ニューラルネットにおける各辺の重みに対し、閾値処理を行う。
ステップS102では、隣接行列変換部24は、学習後の多層ニューラルネット全体をNdepth個のグラフに分割し、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、各層の隣接行列を生成する。
ステップS106では、コミュニティ抽出部32は、生成された各層の隣接行列に基づいて、多層ニューラルネットの各層dに対し、当該層dのコミュニティを抽出する。
ステップS108では、辺定義部34は、コミュニティ抽出部32で得られた各層dのコミュニティに基づいて、隣接する層のコミュニティ同士をつなぐ辺の集合

を定義する。
また、辺定義部34は、隣接する層のコミュニティ間を結ぶ辺を定義した結果、次の層への辺を持たないコミュニティがある場合には、多層ニューラルネット学習部22で学習後の多層ニューラルネットから、当該コミュニティに含まれる頂点と、当該コミュニティに含まれる頂点に繋がる辺とを削除することにより、多層ニューラルネットを圧縮する。
ステップS200では、多層ニューラルネット分割部228は、上記ステップS108において多層ニューラルネットを圧縮した結果、多層ニューラルネットを、複数の多層ニューラルネットに分割することができる場合には、複数の多層ニューラルネットに分割する。
ステップS202では、並列学習部230は、入力部10で受け付けた、観測データの入出力の組

に基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行い、学習結果を出力部50により出力する。
以上説明したように、本発明の第2の実施の形態に係る大局構造抽出装置によれば、多層ニューラルネットの各層dに対し、層dのコミュニティを抽出し、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除し、前記ニューラルネットを、複数の多層ニューラルネットに分割し、予め用意された学習データに基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行うことにより、多層ニューラルネットの学習に係る時間を短縮することができる。
[変形例]
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
例えば、コミュニティ抽出を行った結果に基づいて圧縮された多層ニューラルネットに対して、もう一度コミュニティ抽出を行うようにしてもよい。また、コミュニティ抽出を行った結果に基づいて圧縮された多層ニューラルネットに対して、再度コミュニティ抽出を行うことを、収束するまで繰り返すことにより、中間層の最適化を行うようにしてもよい。この場合には、最終的に多層ニューラルネットに残る頂点・辺の組み合わせが変わらなくなった時点で、繰り返し処理を終了するようにしてもよい。
大局構造抽出装置の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、大局構造抽出装置に係る上述した種々の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
10 入力部
20、220 演算部
22 多層ニューラルネット学習部
24 隣接行列変換部
26 大局構造抽出部
28 可視化部
32 コミュニティ抽出部
34 辺定義部
40 大局構造可視化部
42 コミュニティ受付部
44 入出力可視化部
50 出力部
100、200 大局構造抽出装置
228 多層ニューラルネット分割部
230 並列学習部

Claims (8)

  1. 学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部であって、
    前記層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、前記層dのコミュニティを抽出する大局構造抽出部
    を含む大局構造抽出装置。
  2. 前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義する辺定義部を更に含む請求項1記載の大局構造抽出装置。
  3. 学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、
    前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除する辺定義部と、
    を含む大局構造抽出装置。
  4. 学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、
    前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義する辺定義部と、
    各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化する可視化部と、
    を含む大局構造抽出装置。
  5. 学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出する大局構造抽出部と、
    前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、次の層への辺を持たないコミュニティがある場合には、前記ニューラルネットから、前記コミュニティに含まれる頂点と、前記コミュニティに含まれる頂点に繋がる辺とを削除する辺定義部と、
    前記ニューラルネットを、複数の多層ニューラルネットに分割し、予め用意された学習データに基づいて、分割された複数の多層ニューラルネットの各々の学習を並列に行う並列学習部と、
    を含む大局構造抽出装置。
  6. 大局構造抽出部が、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の結合関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出することであって、
    前記層dのコミュニティを抽出する際に、前記層dの頂点が各コミュニティcに属する確率と、各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を始点とした辺が層d+1の各頂点iを終点とする確率、又は各コミュニティcについての、前記コミュニティcに属する前記層dの頂点を終点とした辺が層d−1の各頂点iを始点とする確率とに基づいて、前記層dに含まれる各頂点iが、各コミュニティcに属する確率を推定することにより、前記層dのコミュニティを抽出する
    ことを特徴とする大局構造抽出方法。
  7. 大局構造抽出部が、学習後の多層ニューラルネットにおける各辺によって定まる、隣接する層の頂点間の接続関係に基づいて、前記ニューラルネットの各層dに対し、前記層dのコミュニティを抽出し、
    辺定義部が、前記大局構造抽出部によって抽出された、各層dのコミュニティに基づいて、隣接する層のコミュニティ間を結ぶ辺を定義し、
    可視化部が、各層dのコミュニティと、隣接する層のコミュニティ間を結ぶ辺とを可視化し、中間層のコミュニティの指定を受け付けたときに、指定されたコミュニティと関連する入力層のコミュニティ、及び出力層のコミュニティに含まれる頂点の情報を可視化する
    ことを特徴とする大局構造抽出方法。
  8. コンピュータを、請求項1〜請求項5の何れか1項記載の大局構造抽出装置の各部として機能させるためのプログラム。
JP2017015909A 2017-01-31 2017-01-31 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム Active JP6623184B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017015909A JP6623184B2 (ja) 2017-01-31 2017-01-31 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017015909A JP6623184B2 (ja) 2017-01-31 2017-01-31 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2018124754A JP2018124754A (ja) 2018-08-09
JP6623184B2 true JP6623184B2 (ja) 2019-12-18

Family

ID=63109647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017015909A Active JP6623184B2 (ja) 2017-01-31 2017-01-31 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6623184B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109211202A (zh) * 2018-09-21 2019-01-15 长安大学 一种基于无人机的高速公路边坡巡查的路径优化方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6731891B2 (ja) * 2017-07-13 2020-07-29 日本電信電話株式会社 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム
WO2021084717A1 (ja) * 2019-10-31 2021-05-06 日本電気株式会社 情報処理回路および情報処理回路の設計方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05108595A (ja) * 1991-10-17 1993-04-30 Hitachi Ltd ニユーラルネツトワークの分散学習装置
JP2001344590A (ja) * 2000-05-31 2001-12-14 Fuji Electric Co Ltd ニューラルネットワーク及びその学習方法、解析方法並びに異常判定方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109211202A (zh) * 2018-09-21 2019-01-15 长安大学 一种基于无人机的高速公路边坡巡查的路径优化方法
CN109211202B (zh) * 2018-09-21 2020-12-18 长安大学 一种基于无人机的高速公路边坡巡查的路径优化方法

Also Published As

Publication number Publication date
JP2018124754A (ja) 2018-08-09

Similar Documents

Publication Publication Date Title
US20180247193A1 (en) Neural network training using compressed inputs
CN107145977B (zh) 一种对在线社交网络用户进行结构化属性推断的方法
JP5235770B2 (ja) 顕著領域映像生成方法、顕著領域映像生成装置、プログラムおよび記録媒体
CN108171663B (zh) 基于特征图最近邻替换的卷积神经网络的图像填充系统
CN106780662B (zh) 人脸图像生成方法、装置及设备
JP6623184B2 (ja) 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム
US20240143977A1 (en) Model training method and apparatus
CN109063041B (zh) 关系网络图嵌入的方法及装置
JP6789762B2 (ja) 情報処理装置、情報処理方法及びプログラム
Cortiñas-Lorenzo et al. Adam and the ants: on the influence of the optimization algorithm on the detectability of DNN watermarks
JP2023533907A (ja) 自己注意ベースのニューラルネットワークを使用した画像処理
JP2013142991A (ja) 物体領域検出装置、方法、及びプログラム
US20160300124A1 (en) Method and system for image segmentation using a directed graph
Yu et al. Modeling spatial extremes via ensemble-of-trees of pairwise copulas
Paul et al. Dimensionality reduction of hyperspectral image using signal entropy and spatial information in genetic algorithm with discrete wavelet transformation
JP6770480B2 (ja) 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム
JP2015162113A (ja) システムパラメタ学習装置、情報処理装置、方法、及びプログラム
JP6731891B2 (ja) 多層ニューラルネットの大局構造抽出装置、方法、及びプログラム
WO2019167240A1 (ja) 情報処理装置、制御方法、及びプログラム
Singh et al. DTCWTASODCNN: DTCWT based weighted fusion model for multimodal medical image quality improvement with ASO technique & DCNN
CN116186824A (zh) 基于图像嵌入图神经网络模型的建筑结构布置方法
CN115346055A (zh) 一种基于多核宽度图神经网络特征提取与分类方法
Hebbal et al. Multi-fidelity modeling using DGPs: Improvements and a generalization to varying input space dimensions
CN110222222B (zh) 基于深层主题自编码模型的多模态检索方法
CN111475668A (zh) 针对复杂关系描述的图片视觉推理方法、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191119

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191125

R150 Certificate of patent or registration of utility model

Ref document number: 6623184

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150