首页 / 专利库 / 人工智能 / 机器学习 / 人工神经网络 / 前馈神经网络 / 多层感知器 / Learning method/device for neural network

Learning method/device for neural network

阅读:879发布:2021-01-29

专利汇可以提供Learning method/device for neural network专利检索,专利查询,专利分析的服务。并且PURPOSE:To learn a neural network with high reliability, high efficiency and at a high speed in regard of plural categories. CONSTITUTION:When a specific category to which a subject belongs is identified with use of a three-layer perceptron, this perceptron is first learn in accordance with the category to be identified. At the same time, the (M-1) types of hyper- planes which separate M pieces of categories from each other are formed based on an N-dimensional vector serving as the sample data xi(j) of each category. Then the (M-l) types of parameters forming those hyper-planes are assigned to the (M-1) pieces of units corresponding to a medium layer P2, and the learning is carried out to the layer P2 from an input layer P1. In other words, the coupling weight wn(i) is learnt between the units of both layers P1 and P2 together with the bias value bn of each unit of the layer P2.,下面是Learning method/device for neural network专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】 入力データが複数のカテゴリのうちのどのカテゴリに属するかをニューラルネットワークを用いて識別するに際して、各カテゴリを分離する超平面を構成し、該超平面を構成するパラメータに基づき、ニューラルネットワークの入力層から中間層への学習を行なうようになっていることを特徴とするニューラルネットワークの学習方法。
  • 【請求項2】 請求項1記載のニューラルネットワークの学習方法において、各カテゴリを分離する超平面を構成するに際しては、先づ、各カテゴリの順番を各カテゴリの平均ベクトルの位置関係によって決定し、次いで、
    決定された順番n(n≧1)に従い、第(n+1)番目のカテゴリを第n番目までのカテゴリから分離させるように超平面を構成するようになっていることを特徴とするニューラルネットワークの学習方法。
  • 【請求項3】 請求項1記載のニューラルネットワークの学習方法において、各カテゴリを分離する超平面を構成することによってニューラルネットワークの入力層から中間層への学習を行なった後、中間層から出力層への学習を最小二乗法によって行なうようになっていることを特徴とするニューラルネットワークの学習方法。
  • 【請求項4】 N個のユニットを有する入力層から(M
    −1)個のユニットを有する中間層への学習を行なう第1の学習手段と、(M−1)個のユニットを有する中間層からM個のユニットを有する出力層への学習を行なう第2の学習手段とを有し、前記第1の学習手段は、識別したいカテゴリの数がMであり、各カテゴリのサンプルデータがN次元のベクトルであるときに、各カテゴリのサンプルデータであるN次元のベクトルに基づき、M個のカテゴリを各々分離する(M−1)種類の超平面を構成し、(M−1)種類の超平面を規定する(M−1)種類の各パラメータを中間層の対応した(M−1)個のユニットに割当てて入力層から中間層への学習を行なうようになっていることを特徴とするニューラルネットワークの学習装置。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】本発明は、音声認識,文字認識,
    物体認識,ロボット制御,株価予測等の分野に利用されるニューラルネットワークの学習方法および学習装置に関する。

    【0002】

    【従来の技術】従来、ニューラルネットワークの分野においては、その学習アルゴリズムとして、誤差逆伝播学習(バックプロパゲーション学習)が知られている。

    【0003】このバックプロパゲーションによる学習アルゴリズムは、入ベクトルに対して出力の誤まりを訂正する方向にネットワークを構成するユニット間の結合の重みを修正して学習を行なうものであり、この修正を二乗誤差の評価関数に関する最急降下法により行なうようになっている。 すなわち、それぞれの入力ベクトルの組に関する二乗誤差を求めると、この二乗誤差はユニット間の結合の重みの関数となっているので、結合の重みを変数として二乗誤差の評価関数に関し最急降下法を行なうことにより、各入力ベクトルに関して二乗誤差を最も小さくするような方向へユニット間の結合の重みを修正することができる。

    【0004】さらに、従来ではこれを発展させた確率的降下法の理論(以下では、これをも含めて最急降下法と呼ぶ)も知られている。

    【0005】

    【発明が解決しようとする課題】しかしながら、バックプロパゲーション学習では、出力層での誤差を出力層への入力として、出力層から入力層の方向へ逆方向に伝播させて学習がなされるので、必ずしも良い学習結果が得られるとは限らず、またたとえ良い学習結果が得られる場合でも、得られたネットワークの解釈が難かしく、また学習に相当時間がかかるという問題があった。 このため、入力データが複数のカテゴリのうちのどのカテゴリに属するかをニューラルネットワークを用いて実際に識別させようとする場合、それに先立ってなされる複数のカテゴリについてのニューラルネットワークの学習をバックプロパゲーションによって行なうとしたときには、
    学習を信頼性良く高速に行なうことはできず、さらに識別したいカテゴリが後から増えた場合には、全ての学習を最初からし直す必要があり、効率的でないという欠点があった。

    【0006】本発明は、複数のカテゴリについてのニューラルネットワークの学習を信頼性良く高速にかつ効率的に行なうことの可能なニューラルネットワークの学習方法および学習装置を提供することを目的としている。

    【0007】

    【課題を解決するための手段】上記目的を達成するために本発明のニューラルネットワークの学習方法は、入力データが複数のカテゴリのうちのどのカテゴリに属するかをニューラルネットワークを用いて識別するに際して、各カテゴリを分離する超平面を構成することにより、ニューラルネットワークの入力層から中間層への結合の重みの決定を行ない、複数のカテゴリについてのニューラルネットワークの学習を行なうようになっていることを特徴としている。

    【0008】各カテゴリを分離する超平面を構成するに際しては、先づ、各カテゴリの順番を各カテゴリの平均ベクトルの位置関係によって決定し、次いで、決定された順番n(n≧1)に従い、第(n+1)番目のカテゴリを第n番目までのカテゴリから分離させるように超平面を構成するようになっていることを特徴としている。

    【0009】さらに、本発明では、各カテゴリを分離する超平面を構成することによってニューラルネットワークの入力層から中間層への結合の重みを決定した後、中間層から出力層への結合の重みを最小二乗法によって決定するようになっていることを特徴としている。

    【0010】また、本発明のニューラルネットワークの学習装置は、N個のユニットを有する入力層から(M−
    1)個のユニットを有する中間層への学習を行なう第1
    の学習手段と、(M−1)個のユニットを有する中間層からM個のユニットを有する出力層への学習を行なう第2の学習手段とを有し、前記第1の学習手段は、識別したいカテゴリの数がMであり、各カテゴリのサンプルデータがN次元のベクトルであるときに、各カテゴリのサンプルデータであるN次元のベクトルに基づき、M個のカテゴリを各々分離する(M−1)種類の超平面を構成し、(M−1)種類の超平面を規定する(M−1)種類の各パラメータを中間層の対応した(M−1)個のユニットに割当てて入力層から中間層への学習を行なうようになっていることを特徴としている。

    【0011】

    【実施例】以下、本発明の一実施例を図面に基づいて説明する。 図1は本発明の一実施例のブロック図である。
    本実施例では、ニューラルネットワークが多層パーセプトロン型のネットワークNWとして構成されているとし、与えられた入力データ(入力パターン)が望ましいカテゴリ(種類)に識別されるようこのネットワークN
    Wの学習を行なうようになっている。 このため、本実施例では、階層的なニューラルネットワークNWに対して、前段階,例えば初段の学習を行なう第1の学習手段1と、後段階,例えば2段目以後の学習を行なう第2の学習手段2とが設けられている。 第1の学習手段1は、
    各カテゴリごとのサンプルデータに基づき前段階の学習を行なうようになっている。 また、第2の学習手段2
    は、例えば最小二乗法を用いて後段階以後の学習を行なうようになっている。

    【0012】いま、例えば図2に示すような3層パーセプトロンのニューラルネットワークNWを用いて音声,
    画像,文字等の対象,すなわち入力データの識別を行なうようとする場合を考える。 この際、音声,画像,文字等の対象はN次元ユークリッド空間R(N)に値をもつベクトルであるとする。 すなわち、音声,画像,文字等のデータをユークリッド空間R(N)の元として取り扱うものとする。 また、識別したい種類,すなわちカテゴリの数をM個,第i番目のカテゴリのサンプル数をM i
    個とし、第i番目のカテゴリの第j番目のサンプルデータをx i (j)と書くと、この場合には、図2の3層パーセプトロンにおいて、入力層P 1がN個のユニット、
    中間層P 2が(M−1)個のユニット、出力層P 3がM個のユニットからなるものとして構成する。

    【0013】なお、図2において、w n (i)は入力層P 1と中間層P 2のユニット間の結合の重みであり、B j
    (n)は中間層P 2と出力層P 3のユニット間の結合の重みを表わしており、b nは中間層P 2の各ユニットのバイアス値、t jは出力層P 3の各ユニットのバイアス値を表わしている。

    【0014】図2のような3層パーセプトロンを用いて対象がどのカテゴリに属するかを識別させようとする際には、これに先立って、識別対象のカテゴリに合わせた形で3層パーセプトロンの学習が行なわれる。 この場合に、上記第1の学習手段1は、各カテゴリのサンプルデータであるN次元のベクトルに基づき、M個のカテゴリを各々分離する(M−1)種類の超平面を構成し、(M
    −1)種類の超平面を構成する(M−1)種類の各パラメータを中間層P 2の対応した(M−1)個のユニットに割当てて入力層P 1から中間層P 2への学習を行なうようになっている。 すなわち、入力層P 1と中間層P 2のユニット間の結合の重みw n (i)と中間層P 2の各ユニットのバイアス値b nの学習を行なうようになっている。

    【0015】次に、本実施例の学習処理について図3のフローチャートを用いて説明する。 なお、以下では、この3層パーセプトロンにおいて、第1の学習手段1が入力層P 1から中間層P 2への学習を行ない、第2の学習手段2が中間層P 2から出力層P 3への学習を行なうものとする。 先づ、第1の学習手段1は、i番目のカテゴリに属するサンプルデータx i (j)の平均値,すなわち平均ベクトルx iを次式により計算する(ステップS
    1)。

    【0016】

    【数1】

    【0017】また、各カテゴリの平均ベクトルx(i)
    を平均した全ベクトルxを次式のように計算する(ステップS2)。

    【0018】

    【数2】

    【0019】次いで、各カテゴリに対し、次のようにして順番iを新たに設定する。 すなわち、平均ベクトルが全ベクトルxに対して最も遠い位置にあるカテゴリを1
    番目のカテゴリとし、平均ベクトルがn番目のカテゴリの平均ベクトルから最も近い位置にあるカテゴリを(n
    +1)番目のカテゴリとして順番を設定し、カテゴリについてのサフィックスiを上記の順番に入れ替える(ステップS3)。 なお、ここで、平均ベクトル間の遠近は、N次元のユークリッド空間におけるベクトル間のユークリッド距離,すなわちノルムによって決定される。

    【0020】このようにして、M個の各カテゴリについて順番を設定した後、入力層P 1と中間層P 2との間の学習処理を行なう(ステップS4乃至S8)。 すなわち、
    順番カウンタnを“1”に初期設定し(ステップS
    4)、x n+1を{x 1 ,…,x n }と分離させる超平面f n
    を作る(ステップS5)。 なお、この際、{x 1 ,…,
    n }のうちでx n+1に最も近いx nと分離させるよう超平面f nを作る。 次いで、この超平面を規定するパラメータw n (i),b nを中間層P 2のn番目のユニットに対する結合の重み,n番目のユニットのバイアス値としてそれぞれ割り当てる(ステップS6)。

    【0021】しかる後、順番カウンタnを“1”だけ歩進し(ステップS7)、ステップS6,S7の処理を同様にして繰り返し行ない、nがMとなった時点で、すなわち中間層P 2の(M−1)個の全てのユニットに対して学習を行なった時点で(ステップS8)、入力層P 1
    と中間層P 2との間の学習を終了する。

    【0022】具体的には、先づ、1番目のカテゴリと2
    番目のカテゴリとを分離する超平面f 1を次式により構成する。 なお、以下では、w,xはベクトルを表わし、
    w(i),x(i)はベクトルw,xのi番目の成分を表わすものとする。

    【0023】

    【数3】

    【0024】ここで、上記超平面f nを規定するパラメータw n (i)は次式のように決定される。

    【0025】

    【数4】

    【0026】また、パラメータb 1は、次のようにして決定される。 すなわち、数4によって求まったw
    1 (i)(ベクトルw 1 )を用いて先づ、次式により分布関数q(x)を定義する。

    【0027】

    【数5】g(x)=w 1・x

    【0028】そして、実数をとる2つの分布関数g(x
    1 (j)),g(x 2 (j))の平均E 1 ,E 2と標準偏差σ 1 ,σ 2とを次式により計算する。

    【0029】

    【数6】

    【0030】そこで、パラメータb 1を次式のように決める。

    【0031】

    【数7】 b 1 =−g〔(σ 1・x 2 +σ 2・x 1 )/(σ 1 +σ 2 )〕

    【0032】パラメータw 1を数4により決定し、またパラメータb 1を数7のように定めると、数3の超平面(f 1 =0)は2つの平均ベクトルx 1 ,x 2を最も良く分離するものとなる。 さらに分離の度合いを表わす実数Tを次式で定め、数3,数7により定めたパラメータw
    1 ,b 1をT倍して、これを最終的なパラメータw 1 ,b 1
    とする。

    【0033】

    【数8】T=‖x 1 −x 2 ‖/(σ 1 +σ 2

    【0034】このようにして、パラメータw 1 ,b 1が求まると、図2に示すように、パラメータであるベクトルw 1の各成分w 1 (i)(i=1〜N)を入力層P 1のN
    個の各ユニットから中間層P 2の1番目のユニットへの結合の重みw 1 (i)(i=1〜N)として割り当て、
    また、パラメータb 1を中間層P 2の1番目のユニットのバイアス値b 1として割り当てる。

    【0035】次いで、1番目,2番目のカテゴリと3番目のカテゴリとを分離する超平面f 2を数3と同様にして構成し、上述したと同様にして、超平面f 2を規定するパラメータw 2 ,b 2を求めて、パラメータであるベクトルw 2の各成分w 2 (i)(i=1〜N)を入力層P 1
    のN個の各ユニットから中間層P 2の2番目のユニットへの結合の重みw 2 (i)(i=1〜N)として割り当て、またパラメータb 2を中間層P 2の2番目のユニットのバイアス値b 2として割り当てる。

    【0036】以下同様の手順を帰納的に繰り返し、1番目〜n番目のカテゴリと(n+1)番目のカテゴリとを分離する超平面f nを構成し、パラメータw n ,b nを求め、パラメータw nを入力層P 1のN個の各ユニットから中間層P 2のn番目のユニットへの結合の重みw n (i)
    (i=1〜N)として割り当て、パラメータb nを中間層P 2のn番目のユニットのバイアス値b nとして割り当てる。

    【0037】そして、nが(M−1)となり、パラメータw M-1を入力層P 1のN個のユニットから中間層P 2の(M−1)番目へのユニットへの結合の重みw M-1 (i
    =1〜N)として割り当て、パラメータb M-1を中間層P 2の(M−1)番目のユニットのバイアス値b M-1として割り当てた時点で、入力層P 1から中間層P 2への学習を終了する。

    【0038】しかる後、第2の学習手段2は、中間層P
    2から出力層P 3への学習を行なう。 この学習では、先づ、i番目のカテゴリのサンプルデータx i (j)に対する中間層P 2での出力ベクトルfを求めておく。 すなわち、中間層P 2での出力ベクトルfは、ステップS1
    〜S8で学習のなされた入力層P 1から中間層P 2へのネットワークにより、次式のようになる。

    【0039】

    【数9】f=sigmoid(w・x i (j)+b i

    【0040】ここで、シグモイド関数sigmoid(x)はニューロンの特性を表わす単調増加関数であって、この関数として、実際上は、〔1/(1+exp(−
    x))〕等が用いられる。

    【0041】次いで、i番目のカテゴリに属するデータが入力層P 1に入力するとしたときに出力層P 3の各ユニットから次式のような出力ベクトルhが出力されるように学習を行なう。

    【0042】

    【数10】h=(0.01,0.01,…,0.99,
    …,0.01,…,0.01)

    【0043】すなわち、i番目のカテゴリに対応したi
    番目の成分が“0.99”で、それ以外の成分が“0.
    01”となるような出力ベクトルhが出力されるように学習を行なう。このような出力ベクトルhは、出力層P
    3でシグモイド関数sigmoid(x)を経た後での値となるので、シグモイド関数sigmoid(x)を経る前の値として、この出力ベクトルhをsigmoid(x)で逆変換した次式のベクトルyを求めておく。

    【0044】

    【数11】y=(sigmoid(0.01),sigmoid(0.
    01),…,sigmoid(0.99),…,sigmoid(0.
    01))

    【0045】このとき、中間層P 2と出力層P 3のユニット間の結合の重みB j (n),出力層の各ユニットのバイアス値t jは、次式Uを最小にするZ,Cによりそれぞれ与えられる。 ここでZはベクトルである。

    【0046】

    【数12】

    【0047】Uを最小にするようなZ,Cは最小二乗法によって計算することができ、これにより、中間層P 2
    から出力層P 3への学習を行なうことができる。

    【0048】上述のように、本実施例では、M個のカテゴリを各々分離する(M−1)種類の超平面を構成し、
    (M−1)種類の超平面を規定する(M−1)種類の各パラメータを中間層P 2の対応した(M−1)個のユニットに割り当てて入力層P 1から中間層P 2への学習を行なうようにしており、超平面を規定するパラメータを中間層P 2の対応したユニットに割り当てるだけの簡単な処理で学習がなされるので、従来のバックプロパゲーション学習に比べて、学習を迅速に行なうことができ、また、中間層P 2のユニットの各々に特定のカテゴリを分離させる機能を持たせることができるので、学習した結果のニューラルネットワークの解釈を簡単に行なうことができる。 さらに、識別したいカテゴリの種類が増加した場合にも、入力層P 1と中間層P 2との間の学習に関しては、既存の学習結果を維持し、新たに追加されたカテゴリについてのみ新たに学習を行なうだけで良く、カテゴリの種類の増加にも学習を煩雑なものにさせずに極めて簡単に対処することができる。 具体的には、(M+
    1)番目のカテゴリが新たに追加されたとき、中間層P
    2 ,出力層P 3のユニットを1つだけ増加し、それぞれ、
    M個,(M+1)個のユニットとし、入力層P 1と中間層P 2との間の学習に関しては中間層P 2のM番目のユニットについてだけ帰納的に新たに学習を行なえば良い。

    【0049】以上のようにニューラルネットワークNW
    の学習が行なわれた後、実際の入力データを入力層P 1
    に入力させ、出力層P 3からこの入力データのカテゴリ識別結果を得ることができる。

    【0050】この際に、実際の入力データとして例えば3番目のカテゴリに属するデータが入力層P 1に入力すると、中間層P 2の2番目のユニットだけが他のユニットの出力f 1 ,f 3 ,〜f (M-1)とは異なる特性(符号あるいは値)の出力f 2を出力する。

    【0051】これにより、出力層P 3において、3番目のカテゴリに対応した3番目のユニットからの出力が例えば“0.99”となり、他のユニットからの出力が“0.01”となって、入力データが3番目のカテゴリに属するものであると正確に識別することができる。

    【0052】なお、上述の実施例では、ネットワークを3層パーセプトロンとして構成し1つの中間層P 2だけが設けられている場合について述べたが、ネットワークを4層以上のパーセプトロンで構成し、第1,第2…の複数の中間層が設けられている場合にも、本発明を同様に適用することができ、このときには、第1の学習手段1は、入力層と第1の中間層との間の学習を行ない、第2の学習手段2は、第1の中間層と第2の中間層との間の学習,第2の中間層と第3の中間層との間の学習等を最後が出力層となるまで、最小二乗法により行なう。 この際、第2の学習手段2が各段で最小二乗法を用いるときには、各段において望ましい出力ベクトルが必要となるが、それには最終段(出力層の段階)での望ましい出力ベクトルを用いれば良い。 但し、この場合に、第2の中間層から出力層までの各層は同じユニット数Mである必要がある。

    【0053】

    【発明の効果】以上に説明したように本発明によれば、
    入力データが複数のカテゴリのうちのどのカテゴリに属するかをニューラルネットワークを用いて識別するに際して、各カテゴリを分離する超平面を構成し、該超平面を構成するパラメータに基づき、ニューラルネットワークの入力層から中間層への学習を行なうようになっているので、複数のカテゴリについてのニューラルネットワークの学習を信頼性良く高速にかつ効率的に行なうことができ、この学習結果に基づき入力データのカテゴリを正しく識別することができる。

    【0054】また、各カテゴリを分離する超平面を構成することによってニューラルネットワークの入力層から中間層への学習を行なった後、中間層から出力層への学習を最小二乗法によって行なうようになっているので、
    中間層から出力層までの学習をバックプロパゲーションによって行なう場合に比べ、ニューラルネットワーク全体の学習を高速にかつ効率的に行なうことができる。

    【図面の簡単な説明】

    【図1】本発明の一実施例のブロック図である。

    【図2】本発明が適用されるニューラルネットワークの一例を示す図である。

    【図3】本発明の学習処理を説明するためのフローチャートである。

    【符号の説明】

    1 第1の学習手段 2 第2の学習手段 NW ニューラルネットワーク P 1入力層 P 2中間層 P 3出力層 w n (i) 初段の結合の重み B j (n) 2段目の結合の重み b n中間層のバイアス値 t j出力層のバイアス値

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈