JP2016173843A - 処理装置、判別方法およびプログラム - Google Patents

処理装置、判別方法およびプログラム Download PDF

Info

Publication number
JP2016173843A
JP2016173843A JP2016095342A JP2016095342A JP2016173843A JP 2016173843 A JP2016173843 A JP 2016173843A JP 2016095342 A JP2016095342 A JP 2016095342A JP 2016095342 A JP2016095342 A JP 2016095342A JP 2016173843 A JP2016173843 A JP 2016173843A
Authority
JP
Japan
Prior art keywords
weight
nodes
learning
neural network
unit
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.)
Granted
Application number
JP2016095342A
Other languages
English (en)
Other versions
JP6227052B2 (ja
Inventor
貴司 山崎
Takashi Yamazaki
貴司 山崎
松本 渉
Wataru Matsumoto
渉 松本
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2016095342A priority Critical patent/JP6227052B2/ja
Publication of JP2016173843A publication Critical patent/JP2016173843A/ja
Application granted granted Critical
Publication of JP6227052B2 publication Critical patent/JP6227052B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】階層型ニューラルネットワークにおいて、学習データに依存せずに疎結合を形成することで判別器学習と判別処理の高速化を図る。
【解決手段】階層型ニューラルネットワーク装置1は、判別器学習部2、重み記憶部3、学習データ記憶部4および教師データ記憶部5を備えて構成される。重み学習部20は、誤り訂正符号の検査行列に基づいて階層型ニューラルネットワークにおける一部のノード間に結合を行って疎結合部分を生成し、結合されたノード間の重みを学習する。すなわち、重み学習部20は、判別処理部21から出力された判別結果と、重み記憶部3から読み出したノード間の重み(判別器の重み)と教師データ記憶部5から読み出した教師データとを入力すると、これらのデータを用いて重み学習を行う。
【選択図】図1

Description

この発明は、処理装置、判別方法およびプログラムに関する。
周知のようにニューラルネットワークは、学習能力を持ち、非線形性、パターンマッチング性能に優れており、制御、予測、診断等の多くの分野に用いられている。
また、ニューラルネットワークには多くの構造が提案されているが、実用化されたその多くは、階層型、特に3階層型のものがほとんどである。階層型ニューラルネットワークは、通常バックプロパゲーション法(誤差逆伝搬法)と呼ばれるアルゴリズムにより学習し、内部の結合状態(ノード間の重み)が調整される。こうして学習データと同一の入力データを与えると学習データとほぼ同一の出力をする。また、学習データに近い入力を与えると学習データに近い出力をする特徴がある。
階層型ニューラルネットワークで複雑な問題を扱う場合、中間層のノード数や層数を増やすことになり、演算量が増加するという課題がある。この課題の解決法としてノード間を疎結合にして演算量を削減する例があり、代表的な特許文献として以下の2件がある。
特許文献1では、複数の入力ノードについて、学習データの最大、最小、平均、標準偏差の統計指標を用いることや学習データの入力ノード間または入力と出力との間の相関係数を用いることによって特徴が似た入力ノード同士のグループを形成し、それらのグループ内で入力ノードと中間ノードを結合して疎結合部分を有する構造としている。
また、特許文献2に記載のニューラルネットワーク構造最適化方法では、任意のノード間の結合を削除することにより構造の異なるニューラルネットワークを複数生成し、それぞれのニューラルネットワークの評価値を算出して評価値の比較判定を行うことで、最適な構造のニューラルネットワークに変更している。
特開2011−54200号公報 特開平9−91263号公報
特許文献1,2に代表される従来の技術では、判別器学習を行う前に疎結合を形成するための事前学習が必要であり、学習データの変更や修正があるごとに事前学習を行わなければならず、疎結合の形成に多くの時間と演算量を必要としていた。このため判別器学習と判別処理の高速化が図れないという課題があった。
この発明は、上記のような課題を解決するためになされたもので、階層型ニューラルネットワークにおいて、学習データに依存せずに疎結合を形成することで判別器学習と判別処理の高速化を図ることができる処理装置、判別方法およびプログラムを得ることを目的とする。
この発明に係る処理装置は、誤り訂正符号の検査行列に基づいて、階層型ニューラルネットワークにおける疎結合のノード間で学習された重みの値と入力信号とを用いて、問題を解く処理部を備える。
この発明によれば、誤り訂正符号の検査行列に基づいてノード間が結合されていない部分が形成されているため、高速に判別処理を行うことができる。これにより、例えば、階層型ニューラルネットワークにおいて、学習データに依存せずに疎結合を形成することで判別器学習と判別処理の高速化を図ることができるという効果がある。
この発明の実施の形態1に係る階層型ニューラルネットワーク装置の構成を示すブロック図である。 実施の形態1における階層型ニューラルネットワークの構造を示す図である。 従来の階層型ニューラルネットワークの構造を示す図である。 実施の形態1における重み学習処理を示すフローチャートである。 疑似乱数符号の検査行列を示す図である。 ユークリッド幾何的符号の検査行列の行数または列数に対する1の個数と1の割合を示す図である。 射影幾何的符号の検査行列の行数または列数に対する1の個数と1の割合を示す図である。 差集合巡回符号の検査行列の行数または列数に対する1の個数と1の割合を示す図である。 空間結合型符号の検査行列を示す図である。 ニューラルネットワークA,Bにおける入力ノードと中間ノード間の結合数の例を示す図である。 この発明の実施の形態2に係る階層型ニューラルネットワーク装置の構成を示すブロック図である。 実施の形態2におけるディープニューラルネットワークの構造を示す図である。 従来のディープニューラルネットワークの構造を示す図である。 実施の形態2における重みの事前学習と調整による重み学習処理を示すフローチャートである。 N=5とした場合における重みの事前学習と調整による重み学習処理の概要を示す図である。 重みの事前学習処理を示すフローチャートである。 重みの調整処理を示すフローチャートである。
以下、この発明をより詳細に説明するため、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
図1はこの発明の実施の形態1に係る階層型ニューラルネットワーク装置の構成を示すブロック図である。図1において、階層型ニューラルネットワーク装置1は、階層型ニューラルネットワークを用いて判別を行う装置であって、判別器学習部2、重み記憶部3、学習データ記憶部4および教師データ記憶部5を備えて構成される。
なお、階層型ニューラルネットワークは入力層、中間層および出力層からなり、各層は複数のノードを有している。また階層型ニューラルネットワークは、入力層と中間層とのノード間および中間層と出力層とのノード間に任意の重みを設定してノード間の結合状態を調整することにより様々な問題(分類問題あるいは回帰問題)を解くことができる判別器として機能する。
判別器学習部2は、階層型ニューラルネットワークを学習し、学習した階層型ニューラルネットワークを用いた判別を行う。その構成として、重み学習部20および判別処理部21を備える。
重み学習部20は、誤り訂正符号の検査行列に基づいて階層型ニューラルネットワークにおける一部のノード間に結合を行って疎結合部分を生成し、結合されたノード間の重みを学習する。すなわち、重み学習部20は、判別処理部21から出力された判別結果と、重み記憶部3から読み出したノード間の重み(判別器の重み)と教師データ記憶部5から読み出した教師データとを入力すると、これらのデータを用いて重み学習を行う。
また、重み学習部20は、誤り訂正符号の検査行列における行要素に一方の層のノードを割り当て、列要素にもう一方の層のノードを割り当てて、行列要素に1が立ったノード間を結合し、行列要素が0のノード間は結合しない。これにより、学習データを利用することなく、ノード間に疎結合部分を生成することができる。
判別処理部21は、結合されたノード間の重みが重み学習部20により学習された重みの値で更新された階層型ニューラルネットワークを用いて分類問題あるいは回帰問題を解く。例えば、判別処理部21は、重み記憶部3から初期化された重みまたは学習中の重みを入力し、学習データ記憶部4から学習データを入力すると、これらを用いた判別結果を重み学習部20へ出力する。また、判別処理部21は、重み記憶部3から学習済みの重みを入力し、判別データを入力すると、これらを用いた判別結果を装置外部のディスプレイなどの伝送装置へ出力する。
判別処理部21では、階層型ニューラルネットワークにおける入力層と中間層のノード間で学習データまたは判別データが入力信号となり、このノード間の重みが乗算される。この乗算結果を中間層におけるノードでそれぞれ合計したものが、閾値関数によって計算されて出力される。ここで、閾値関数をf()、中間層のj番目のノードの閾値関数の出力値をH、入力層のi番目のノードの入力信号をXとし、入力層のi番目のノードと中間層のj番目のノードとの間の重みをWjiとした場合には、閾値関数の出力値をHは下記式(1)で表せる。
=f(ΣXji) ・・・(1)
また中間層と出力層のノード間では、閾値関数によって計算された出力信号を入力信号とし、このノード間の重みが乗算される。この乗算結果を出力層における各ノードで合計したものが閾値関数によって計算されて、判別結果として出力される。ここで、出力層のk番目のノードの閾値関数の出力値をO、中間層のj番目のノードと出力層のk番目のノードとの間の重みをWkjとした場合、閾値関数の出力値Oは下記式(2)で表すことができる。ただし、閾値関数f()としてはシグモイド関数、tanh関数、max関数などが挙げられる。また、ノード間の重みの乗算は、ノード間の結合がある部分に対してのみ行う。
=f(ΣXkj) ・・・(2)
重み記憶部3は、階層型ニューラルネットワークにおけるノード間の重みを記憶する記憶部である。重み記憶部3には、重みの初期化処理時には階層型ニューラルネットワークの全てのノード間の重みの初期値が記憶され、疎結合の生成時には結合のあるノード間の重み学習値が記憶される。判別処理部21は、各ノードおよびそのノード間の重みの値を重み記憶部3から読み出すことで階層型ニューラルネットワークを構築し、これを用いて分類問題あるいは回帰問題を解く。
学習データ記憶部4は、学習データを記憶する記憶部である。学習データとは、予め正常と異常が判別された状態情報および特徴量を示すデータである。学習データには、教師データが既知の場合(教師あり学習)と、判別データに対して望ましい教師データが未知の場合(教師なし学習)とがある。
教師データ記憶部5は、教師データを記憶する記憶部である。教師データとは、判別データに対して望ましい出力データである。また、判別データは判別対象のデータである。
なお、重み学習部20と判別処理部21は、例えば、この実施の形態1に特有な処理が記述されたプログラムをマイクロコンピュータが実行することで、ハードウェアとソフトウェアとが協働した具体的な手段として実現することができる。
重み記憶部3、学習データ記憶部4および教師データ記憶部5は、例えば、階層型ニューラルネットワーク装置1として機能するコンピュータに搭載されているハードディスクドライブ(HDD)装置、USBメモリ、記憶メディア再生装置で再生可能な記憶メディア(CD、DVD、BD)に構築される。
図2は、実施の形態1における階層型ニューラルネットワークの構造を示す図であり、図3は従来の階層型ニューラルネットワークの構造を示す図である。図3に示すように、従来の階層型ニューラルネットワークは、入力層と中間層のノード間が全て結合し、中間層と出力層のノード間が全て結合している。これに対し、実施の形態1では、図2に示すように、入力層と中間層のノード間の結合および中間層と出力層のノード間の結合のうち少なくとも一方に疎結合部分が形成される。
次に動作について説明する。
図4は、実施の形態1における重み学習処理を示すフローチャートであり、この図4に沿って重み学習部20による重み学習の詳細を述べる。
まず、重み学習部20は、階層型ニューラルネットワークの各層における全てのノード間の重みを初期化する(ステップST1)。具体的には、各層における全てのノード間の重みに対して初期値を−0.5〜+0.5の乱数で与える。
次に、重み学習部20は、誤り訂正符号の検査行列に基づいて階層型ニューラルネットワークにおける一部のノード間にのみ結合を行って疎結合を生成する(ステップST2)。誤り訂正符号の検査行列としては、通常の階層型ニューラルネットワークと比べて学習誤差を同等または小さくするものであり、かつ、疎な行列とする。例えば、疑似乱数符号、有限幾何的符号、巡回符号、疑似巡回符号、低密度パリティ検査符号(LDPC)符号および空間結合符号のいずれかが挙げられる。
続いて、重み学習部20は、学習誤差を評価する評価関数の値が小さくなるように、疎結合部分で結合されたノード間の重みの修正量を算出する(ステップST3)。
なお、評価関数Jは、例えば下記式(3)で表すことができる。ただし、ノードの出力信号をo、教師データをtとする。
J=1/2・(o−t) ・・・(3)
この後、重み学習部20は、ステップST3で求めた修正量で、結合されたノード間の重みの値を従前の値から更新する(ステップST4)。
ノード間の重みの更新が終了すると、重み学習部20は、重み学習の終了条件を満たしたか否かを確認する(ステップST5)。ここで、終了条件としては、例えば、教師データと判別処理部21から入力した判別結果との誤差を算出する評価関数の値が予め定めた閾値以下となる場合が考えられる。また、学習回数が閾値回数以上となった場合であってもよい。
終了条件を満たし重み学習を終了すべきと判断した場合(ステップST5;YES)、重み学習部20は重み学習を終了する。一方、終了条件を満たしていない場合(ステップST5;NO)、ステップST3の処理に戻り、上述した重み学習を繰り返す。
これにより、判別処理部21は、疎結合部分で結合されたノード間の重みが重み学習部20により学習された重みの値で更新された階層型ニューラルネットワークを用いて分類問題あるいは回帰問題を解くことができる。
次に、図5に示す疑似乱数符号の検査行列に基づいて、入力層と中間層のノード間に疎結合部分を生成する場合の一例を示す。図5の行列は、各行、各列に1が4個ずつある、15×15の行列となっている。これは、各列の要素に割り当てられた入力層のノード(以下、入力ノードと記載する)x,x,・・・,x15と各行の要素に割り当てられた中間層のノード(以下、中間ノードと記載する)h,h,・・・,h15とがそれぞれ15個あり、行列要素の値が1である部分が結合するものとして1個の中間ノードに4個の入力ノードが結合することを示している。例えば、中間ノードhには、行列の要素に1が立った入力ノードx,x,x,x10が結合する。
中間ノードまたは出力ノード(出力層のノード)の数が少ない場合(例えば21個以下)、ユークリッド幾何的符号あるいは射影幾何的符号などの有限幾何的符号の検査行列、または、差集合巡回符号などの巡回符号の検査行列に基づいて、上述のように行列要素に1が立ったノード間で結合を行うと、大幅な演算量の削減が期待される。これは、図6に示すユークリッド幾何的符号の検査行列、図7に示す射影幾何的符号の検査行列、図8に示す差集合巡回符号の検査行列における、列数または行数に対する1の個数を示した結果から明らかなように、ノード数に対応する列数または行数が21個以下の場合において、列数または行数に対して1の個数が格段に少なく、ノード間に疎結合部分を形成することができるためである。
なお、巡回符号は符号語を巡回シフトして生成した符号であり、規則的な配列となっている。このため、時系列データの学習判別に適しており、またハードウェア実装する場合には、他の符号に比べて設計が容易に行えるという特徴がある。
また、中間ノードまたは出力ノードの数が多い場合(例えば21個を超える)においては、LDPC符号の検査行列、空間結合型符号の検査行列および疑似巡回符号の検査行列のいずれかに基づいてノード間の結合を行うと、大幅な演算量の削減が期待できる。これは、LDPC符号、空間結合型符号、疑似巡回符号の検査行列においては、行数や列数に依存せず、行に含まれる1の個数や列に含まれる1の個数が、平均3〜6個となるためである。例えば、行数を10000とした場合においても、行に含まれる1の個数の平均が3〜6個となり、ノード間の結合数の平均が3〜6個と疎結合になる。このため、大幅に演算量を削減することができる。特に、図9に示す空間結合型符号の検査行列は、1が帯状に配列した行列であるため、制御のし易さの観点よりも最大演算量の削減効果が期待できる。
上述したように、誤り訂正符号の検査行列に基づいてノード間を疎結合にすることで、判別性能を維持しつつ、高速に判別器学習および判別処理を行うことができる。
図10は、ニューラルネットワークA,Bにおける入力ノードと中間ノード間の結合数の例を示す図である。図10において、ニューラルネットワークAが、全てのノード間が結合された通常の階層型ニューラルネットワークであり、ニューラルネットワークBは、本発明により疎結合をノード間に形成した階層型ニューラルネットワークである。
ニューラルネットワークBでは、1つの中間ノードに対して4個の入力ノードが結合する場合を示している。このように、実施の形態1では、ニューラルネットワークAに対して、入力ノードと中間ノードとがそれぞれ50個である場合は2/25、100個である場合は1/25、1000個の場合は1/250に結合を削減することができる。これに伴って入力ノードと中間ノードの間の積和演算を削減できるため、判別器学習および判別処理を高速化することが可能である。
また、学習データに依存せず疎結合を生成するため、学習データの変更や修正があった場合においても、事前学習を行う手間を省くことができる。
以上のように、この実施の形態1によれば、誤り訂正符号の検査行列に基づいて、ノードを有する入力層、中間層および出力層からなる階層型ニューラルネットワークにおける一部のノード間に結合を行って疎結合部分を生成し、結合されたノード間の重みを学習する重み学習部20と、結合されたノード間の重みが重み学習部20によって学習された重みの値で更新された階層型ニューラルネットワークを用いて分類問題あるいは回帰問題を解く判別処理部21とを備える。このように階層型ニューラルネットワークにおいて学習データに依存せずに疎結合を形成することにより判別器学習および判別処理の高速化を図ることができる。
実施の形態2.
上記実施の形態1は、一般的な3階層型のニューラルネットワークを用いた判別器学習と判別処理を高速化する場合を示した。この実施の形態2では、階層型ニューラルネットワークの発展形であって、近年注目されているディープニューラルネットワークを用いた判別器学習と判別処理を高速化する場合について述べる。
図11は、この発明の実施の形態2に係る階層型ニューラルネットワーク装置の構成を示すブロック図である。図11に示す階層型ニューラルネットワーク装置1Aは、ディープニューラルネットワークを用いて分類問題あるいは回帰問題を解く装置であり、判別器学習部2A、重み記憶部3、学習データ記憶部4および教師データ記憶部5を備えて構成される。ディープニューラルネットワークは、入力層、複数層の中間層および出力層からなり、各層は複数のノードを有している。また、ディープニューラルネットワークは、入力層と中間層とのノード間および中間層と出力層とのノード間に任意の重みを設定してノード間の結合状態を調整することにより様々な問題(分類問題あるいは回帰問題)を解くことができる判別器として機能する。
図12は、実施の形態2におけるディープニューラルネットワークの構造を示す図であり、図13は従来のディープニューラルネットワークの構造を示す図である。図13に示すように、従来のディープニューラルネットワークは、入力層と中間層のノード間が全て結合し、中間層同士のノード間が全て結合し、中間層と出力層のノード間が全て結合している。これに対し、実施の形態2では、図12に示すように、入力層と中間層のノード間の結合、中間層同士のノード間の結合および中間層と出力層のノード間の結合のうち少なくとも一方に疎結合部分が形成される。
判別器学習部2Aは、ディープニューラルネットワークを学習し、学習したディープニューラルネットワークを用いて分類問題あるいは回帰問題を解く。その構成として、判別処理部21、重み事前学習部22および重み調整部23を備える。
重み事前学習部22は、誤り訂正符号の検査行列に基づいてディープニューラルネットワークにおける一部のノード間に結合を行って疎結合部分を生成し、結合されたノード間の重みを教師なし学習する。例えば、重み事前学習部22は、初期化されたノード間の重みおよび学習データが入力されると、重みの事前学習を行う。
また、重み事前学習部22は、誤り訂正符号の検査行列における行要素に一方の層のノードを割り当て、列要素にもう一方の層のノードを割り当てて、行列要素に1が立ったノード間を結合し、行列要素が0のノード間は結合しない。これにより、学習データを利用することなく、ノード間に疎結合部分を生成することができる。
重み調整部23は、重み事前学習部22が学習した重みを教師あり学習で微調整する。すなわち、重み調整部23は、結合されたノード間にのみ重みの微調整を行う。
実施の形態2における判別処理部21は、重み記憶部3から事前学習された重みまたは学習中の重みを入力し、学習データ記憶部4から学習データを入力すると、これらを用いた判別結果を重み調整部23へ出力する。また、判別処理部21は、重み記憶部3から学習済みの重みを入力し、判別データを入力すると、これらを用いた判別結果を装置外部のディスプレイなどの伝送装置へ出力する。
判別処理部21では、ディープニューラルネットワークにおける入力層と第1層目の中間層のノード間では学習データまたは判別データが入力信号となり、このノード間の重みが乗算される。この乗算結果を第1層目の中間層における中間ノードでそれぞれ合計したものが、閾値関数によって計算されて出力される。ここで、閾値関数をf()、第1層目の中間層のj番目の中間ノードの閾値関数の出力値をH1,j、i番目の入力ノードの入力信号をXとし、i番目の入力ノードと第1層目の中間層のj番目の中間ノードとの間の重みをW1,j,iとした場合には、閾値関数の出力値をH1,jは下記式(4)で表せる。
1,j=f(ΣX1,j,i) ・・・(4)
また、第n−1層目(nは2以上の整数)の中間層のj番目の中間ノードと第n層目の中間層のm番目の中間ノードとの間では、第n−1層目の中間ノードの閾値関数によって計算された出力信号を入力信号とし、このノード間の重みが乗算される。この乗算結果を第n層目の中間層における各中間ノードで合計したものが、閾値関数によって計算されて出力される。ここで、第n−1層目の中間層のj番目の中間ノードの閾値関数の出力値をHn−1,j、第n層目の中間層のm番目の中間ノードの閾値関数の出力値をHn,m、第n−1層目の中間層のj番目の中間ノードと第n層目の中間層のm番目の中間ノードとの間の重みをWn,m,n−1,jとした場合、閾値関数の出力値Hn,mは、下記式(5)で表すことができる。
n,m=f(ΣHn−1,jn,m,n−1,j) ・・・(5)
中間ノードと出力ノードの間では、中間ノードの閾値関数によって計算された出力信号を入力信号とし、このノード間の重みが乗算される。この乗算結果を出力層における各出力ノードで合計したものが閾値関数によって計算されて判別結果として出力される。
ここで、出力層のk番目の出力ノードの閾値関数の出力値をO、第N−1層目の中間層のj番目の中間ノードと出力層のk番目の出力ノードとの間の重みをWk,N−1,jとした場合、閾値関数の出力値Oは下記式(6)で表すことができる。
ただし、閾値関数f()としてはシグモイド関数、tanh関数、max関数などが挙げられる。また、ノード間の重みの乗算はノード間の結合がある部分に対してのみ行う。
=f(ΣHN−1,jk,N−1,j) ・・・(6)
なお、判別処理部21、重み事前学習部22および重み調整部23は、例えば、実施の形態2に特有な処理が記述されたプログラムをマイクロコンピュータが実行することで、ハードウェアとソフトウェアとが協働した具体的な手段として実現することができる。
次に動作について説明する。
図14は、実施の形態2における重み学習処理を示すフローチャートである。
まず、重み事前学習部22は、ディープニューラルネットワークの各層における全てのノード間の重みを初期化する(ステップST1a)。具体的には、実施の形態1と同様に、各層の全てのノード間の重みに対して初期値を−0.5〜+0.5の乱数で与える。
次に、重み事前学習部22は、誤り訂正符号の検査行列に基づいてディープニューラルネットワークにおける一部のノード間に結合を行って、疎結合を生成する(ステップST2a)。誤り訂正符号の検査行列としては、通常のディープニューラルネットワークと比べて学習誤差を同等または小さくするものであり、かつ、疎な行列とする。例えば、疑似乱数符号、有限幾何的符号、巡回符号、疑似巡回符号、LDPC符号および空間結合符号のいずれかが挙げられる。
続いて、重み事前学習部22は、図15に示すように、ディープニューラルネットワークをN層(Nは整数)とした場合において、第N−1層までの結合があるノード間の重み(W1,2,・・・,WN−2)の事前学習を行う(ステップST3a)。
この事前学習では、まず第1層と第2層の2層構造において、第1層と第2層のノード間の重みWを教師なし学習する。次に第2層と第3層の2層構造において、重みWの教師なし学習で第2層のノードから出力された信号を入力信号として、第2層と第3層のノード間の重みWを教師なし学習する。この処理を第N−2層と第N−1層のノード間の重みWN−2が事前学習されるまで繰り返す(図15参照、N=5とした場合)。
図16を用いて重みの事前学習の詳細を説明する。
まず、重み事前学習部22は、第2層のノードと第3層以上のノードの間の重みを事前学習する際、前段の事前学習で出力された信号を入力信号に初期設定する(ステップST1b)。次に、重み事前学習部22は、対数尤度が増加するように、結合されたノード間における重みの修正量を算出する(ステップST2b)。
続いて、重み事前学習部22は、算出した重みの修正量で、結合されたノード間の重みの値を更新して修正する(ステップST3b)。
ノード間の重みの更新が終了すると、重み事前学習部22は、現在の学習対象層における重み事前学習の終了条件を満たしたか否かを確認する(ステップST4b)。ここで、終了条件としては、例えば学習回数が閾値回数以上となった場合が考えられる。
現在の学習対象層の終了条件を満たし重み事前学習を終了すべきと判断した場合(ステップST4b;YES)、重み事前学習部22は、ステップST5bの処理へ移行する。
一方、終了条件を満たしていない場合(ステップST4b;NO)、ステップST2bの処理に戻り、上述した重み事前学習を繰り返す。
ステップST5bにおいて、重み事前学習部22は、ディープニューラルネットワークをN層とした場合に、第N−1層までの全ての層で結合されたノード間の重みの事前学習が完了したか否かを確認する。全層の重み事前学習が終了していない場合(ステップST5b;NO)、ステップST1bの処理に戻り、次の層間(さらに上方の層間)を学習対象として上述した重みの事前学習が行われる。また、全層の重み事前学習が終了していれば(ステップST5b;YES)、重み事前学習部22は事前学習を終了する。ここで、ディープニューラルネットワークがN層の場合、WからWN−2のN−2個の重みの事前学習が行われる。
図14の説明に戻る。
重み事前学習部22による重みの事前学習が完了すると、重み調整部23は、重み事前学習部22が事前学習した重みを教師あり学習によって微調整して最適化を行う(ステップST4a)。以下、図17を用いて重みの微調整の詳細を説明する。
まず、重み調整部23は、上記式(3)に示したような学習誤差を評価する評価関数Jの値が小さくなるように、教師データ記憶部5から読み出した教師データを利用した教師あり学習によって重み事前学習部22が事前学習したノード間の重みを最適化して重みの修正量を算出する(ステップST1c)。
次に、重み調整部23は、ステップST1cで求めた修正量で、重み事前学習部22が事前学習したノード間の重みの値を更新する(ステップST2c)。
ノード間の重みの更新が終了すると、重み調整部23は、重みの微調整の終了条件を満たしたか否かを確認する(ステップST3c)。ここで、終了条件としては、例えば、教師データと判別処理部21から入力した判別結果との誤差を算出する評価関数の値が予め定めた閾値以下となる場合が考えられる。また、学習回数が閾値回数以上となった場合であってもよい。
終了条件を満たし重みの微調整を終了すべきと判断した場合(ステップST3c;YES)、重み調整部23は重みの微調整を終了する。一方、終了条件を満たしていない場合(ステップST3c;NO)、ステップST1cの処理に戻り、上述した重みの微調整を繰り返す。これにより、判別処理部21は、疎結合部分で結合されたノード間の重みを重み事前学習部22により事前学習され、重み調整部23により最適化調整された重みの値で更新されたディープニューラルネットワークを用いて分類問題あるいは回帰問題を解くことができる。
ディープニューラルネットワークにおいて、中間ノードまたは出力ノードの数が少ない場合(例えば21個以下)、実施の形態1と同様に、ユークリッド幾何的符号あるいは射影幾何的符号などの有限幾何的符号の検査行列、または、差集合巡回符号などの巡回符号の検査行列において、行要素に一方の層のノードを割り当て列要素にもう一方の層のノードを割り当てて、行列要素に1が立ったノード間で結合を行うと、大幅な演算量の削減が期待される。これは、図6に示したユークリッド幾何的符号の検査行列、図7に示した射影幾何的符号の検査行列、図8に示した差集合巡回符号の検査行列における、列数または行数に対する1の個数を示した結果から明らかなように、ノード数に対応する列数または行数が21個以下の場合において列数または行数に対して1の個数が格段に少なく、ノード間に疎結合部分を形成することができるためである。
なお、巡回符号は符号語を巡回シフトして生成した符号であり、規則的な配列となっている。このため、時系列データの学習判別に適しており、またハードウェア実装する場合には、他の符号に比べて設計が容易に行えるという特徴がある。
また、ディープニューラルネットワークにおいて、中間ノードまたは出力ノードの数が多い場合(例えば21個を超える)は、実施の形態1と同様にLDPC符号の検査行列、空間結合型符号の検査行列および疑似巡回符号の検査行列のいずれかに基づいてノード間の結合を行うと、大幅な演算量の削減が期待できる。これは、LDPC符号、空間結合型符号、疑似巡回符号の検査行列においては、行数や列数に依存せず、行に含まれる1の個数や列に含まれる1の個数が平均3〜6個となるためである。例えば、行数を10000とした場合においても、行に含まれる1の個数の平均が3〜6個となり、ノード間の結合数の平均が3〜6個と疎結合になる。このため、大幅に演算量を削減することができる。特に、図9に示した空間結合型符号の検査行列は、行列要素の1が帯状に配列した行列であるため、制御のし易さの観点よりも最大演算量の削減効果が期待できる。
以上のように、この実施の形態2によれば、誤り訂正符号の検査行列に基づいて、ノードを有する入力層、複数層の中間層および出力層からなるディープニューラルネットワークにおける一部のノード間に結合を行って疎結合部分を生成し、結合されたノード間の重みを教師なし学習する重み事前学習部22と、重み事前学習部22が学習した重みを教師あり学習で調整する重み調整部23と、結合されたノード間の重みが重み調整部23によって調整された重みの値で更新されたディープニューラルネットワークを用いて分類問題あるいは回帰問題を解く判別処理部21とを備える。このようにディープニューラルネットワークにおいて疎結合を形成することにより判別器学習および判別処理の高速化を図ることができる。特に、ディープニューラルネットワークは、実施の形態1で示した階層型ニューラルネットワークに比べて中間層の層数が多く疎結合部分を形成可能な箇所が多いため、ノード間の積和演算の削減効果が大きい。また、学習データに依存せず疎結合を生成するため、学習データの変更や修正があった場合の事前学習を行う手間が省くことができる。
なお、本発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
この発明に係る階層型ニューラルネットワーク装置は、階層型ニューラルネットワークにおいて学習データに依存せずに疎結合を形成することにより判別器学習および判別処理の高速化を図ることができるので、各種の制御、予測、診断に関する情報処理に適用可能である。
1,1A 階層型ニューラルネットワーク装置、2,2A 判別器学習部、3 重み記憶部、4 学習データ記憶部、5 教師データ記憶部、20 重み学習部、21 判別処理部、22 重み事前学習部、23 重み調整部。

Claims (7)

  1. 誤り訂正符号の検査行列に基づいて、階層型ニューラルネットワークにおける疎結合のノード間で学習された重みの値と入力信号とを用いて、問題を解く処理部を備えた処理装置。
  2. 誤り訂正符号の検査行列に基づいてノード間の結合部と非結合部とが形成されたニューラルネットワークの重み情報を記憶する記憶部と、
    前記ニューラルネットワークの重み情報を用いて、入力信号に対する判別結果を計算し出力する判別処理部と
    を備えた処理装置。
  3. 前記ニューラルネットワークはディープニューラルネットワークであることを特徴とする請求項2に記載の処理装置。
  4. 前記検査行列は、階層型ニューラルネットワークにおける一つの層のノードを行要素とし、他の層のノードを列要素とすることを特徴とする請求項1乃至3のいずれか1項に記載の処理装置。
  5. 前記入力信号は時系列データであり、前記誤り訂正符号は巡回符号であることを特徴とする請求項1乃至4のいずれか1項に記載の処理装置。
  6. 誤り訂正符号の検査行列に基づいてノード間の結合部と非結合部とが形成されたニューラルネットワークの情報を記憶する記憶部から、1つのノードに結合された前記結合部の重みの値を読み出し、前記重みの値と前記結合部により結合されている他のノードの入力信号との乗算結果を複数の前記結合部に対して算出するステップと、
    前記複数の結合部に対して算出された前記乗算結果を用いて判別結果を出力するステップと、
    を備えた判別方法。
  7. 誤り訂正符号の検査行列に基づいてノード間の結合部と非結合部とが形成されたニューラルネットワークの情報を記憶する記憶部から、1つのノードに結合された前記結合部の重みの値を読み出し、前記重みの値と前記結合部により結合されている他のノードの入力信号との乗算結果を複数の前記結合部に対して算出するステップと、
    前記複数の結合部に対して算出された前記乗算結果を用いて判別結果を出力するステップと、
    をコンピュータに実行させるプログラム。
JP2016095342A 2016-05-11 2016-05-11 処理装置、判別方法およびプログラム Active JP6227052B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016095342A JP6227052B2 (ja) 2016-05-11 2016-05-11 処理装置、判別方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016095342A JP6227052B2 (ja) 2016-05-11 2016-05-11 処理装置、判別方法およびプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015561138A Division JP5937284B2 (ja) 2014-02-10 2014-02-10 階層型ニューラルネットワーク装置、判別器学習方法および判別方法

Publications (2)

Publication Number Publication Date
JP2016173843A true JP2016173843A (ja) 2016-09-29
JP6227052B2 JP6227052B2 (ja) 2017-11-08

Family

ID=57009049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016095342A Active JP6227052B2 (ja) 2016-05-11 2016-05-11 処理装置、判別方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6227052B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018101275A1 (ja) 2016-12-02 2018-06-07 国立大学法人東京工業大学 ニューラルネットワーク回路装置、ニューラルネットワーク、ニューラルネットワーク処理方法およびニューラルネットワークの実行プログラム
WO2019220975A1 (ja) 2018-05-15 2019-11-21 国立大学法人東京工業大学 ニューラルネットワーク回路装置、ニューラルネットワーク処理方法およびニューラルネットワークの実行プログラム
JP2021509995A (ja) * 2018-03-28 2021-04-08 三菱電機株式会社 システムを制御する装置及び方法
CN113228057A (zh) * 2019-01-11 2021-08-06 三菱电机株式会社 推理装置和推理方法
US11741348B2 (en) 2017-09-20 2023-08-29 Tokyo Institute Of Technology Neural network circuit device, neural network, neural network processing method, and neural network execution program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250757A (ja) * 1988-08-12 1990-02-20 Mamoru Tanaka 連想型ニューロコンピュータ
JP2003317073A (ja) * 2002-04-24 2003-11-07 Fuji Xerox Co Ltd ニューラルネットワーク処理装置
JP2006163808A (ja) * 2004-12-07 2006-06-22 Fuji Electric Holdings Co Ltd ニューラルネットワークの構造

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250757A (ja) * 1988-08-12 1990-02-20 Mamoru Tanaka 連想型ニューロコンピュータ
JP2003317073A (ja) * 2002-04-24 2003-11-07 Fuji Xerox Co Ltd ニューラルネットワーク処理装置
JP2006163808A (ja) * 2004-12-07 2006-06-22 Fuji Electric Holdings Co Ltd ニューラルネットワークの構造

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AHMED S. HADI: "Linear Block Code Decoder Using Neural Network", PROCEEDINGS OF IEEE INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS 2008, JPN6017014595, 8 June 2008 (2008-06-08), pages 1111 - 1114, XP031327674, ISSN: 0003545554 *
HIKARU MIZUTANI: "The New Weighting Method of Sparse Neural Network", CIRCUITS AND SYSTEMS, 1993., ISCAS '93, 1993 IEEE INTERNATIONAL SYMPOSIUM ON, JPN6016013326, 6 May 1993 (1993-05-06), pages 2383 - 2386, XP000379692, ISSN: 0003640042 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018101275A1 (ja) 2016-12-02 2018-06-07 国立大学法人東京工業大学 ニューラルネットワーク回路装置、ニューラルネットワーク、ニューラルネットワーク処理方法およびニューラルネットワークの実行プログラム
US11741348B2 (en) 2017-09-20 2023-08-29 Tokyo Institute Of Technology Neural network circuit device, neural network, neural network processing method, and neural network execution program
JP2021509995A (ja) * 2018-03-28 2021-04-08 三菱電機株式会社 システムを制御する装置及び方法
JP7012871B2 (ja) 2018-03-28 2022-01-28 三菱電機株式会社 システムを制御する装置及び方法
WO2019220975A1 (ja) 2018-05-15 2019-11-21 国立大学法人東京工業大学 ニューラルネットワーク回路装置、ニューラルネットワーク処理方法およびニューラルネットワークの実行プログラム
KR20210009353A (ko) 2018-05-15 2021-01-26 도쿄 아티잔 인텔리전스 가부시키가이샤 뉴럴 네트워크 회로장치, 뉴럴 네트워크 처리 방법 및 뉴럴 네트워크 실행 프로그램
CN113228057A (zh) * 2019-01-11 2021-08-06 三菱电机株式会社 推理装置和推理方法
CN113228057B (zh) * 2019-01-11 2024-05-31 三菱电机株式会社 推理装置和推理方法

Also Published As

Publication number Publication date
JP6227052B2 (ja) 2017-11-08

Similar Documents

Publication Publication Date Title
JP5937284B2 (ja) 階層型ニューラルネットワーク装置、判別器学習方法および判別方法
JP6227052B2 (ja) 処理装置、判別方法およびプログラム
US11610131B2 (en) Ensembling of neural network models
US20210390416A1 (en) Variable parameter probability for machine-learning model generation and training
US11853893B2 (en) Execution of a genetic algorithm having variable epoch size with selective execution of a training algorithm
US10380479B2 (en) Acceleration of convolutional neural network training using stochastic perforation
US20220147877A1 (en) System and method for automatic building of learning machines using learning machines
WO2021204163A1 (zh) 原模图低密度奇偶校验码的自学习译码方法及其相关设备
CN115358485A (zh) 一种基于图自注意力机制与霍克斯过程的交通流预测方法
CN110009048B (zh) 一种神经网络模型的构建方法以及设备
CN113490955A (zh) 用于产生金字塔层的架构的系统和方法
JP7279225B2 (ja) 破滅的忘却の発生を抑えつつ、転移学習を行う方法、情報処理装置及びプログラム
WO2021095512A1 (ja) 機械学習装置、情報処理方法および記録媒体
JP2024514063A (ja) ディープ・ニューラル・ネットワーク・トレーニング
JP2019185207A (ja) モデル学習装置、モデル学習方法、プログラム
WO2020054402A1 (ja) ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法
CN114528748A (zh) 优化透镜模块组装的方法及系统
US20210142153A1 (en) Resistive processing unit scalable execution
Li et al. Hessian Aware Low-Rank Perturbation for Order-Robust Continual Learning
JP6741159B1 (ja) 推論装置及び推論方法
KR20200141663A (ko) 컨볼루션 신경망 모델에 기초한 컴퓨팅 장치 및 그 동작 방법
US20240012726A1 (en) Methods and electronic device for repairing memory element in memory device
Tsiourvas Solving High Dimensional PDEs using Deep Learning
Dockhorn Generative Modeling with Neural Ordinary Differential Equations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170706

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: 20170912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171010

R150 Certificate of patent or registration of utility model

Ref document number: 6227052

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250