WO2019142241A1 - データ処理システムおよびデータ処理方法 - Google Patents

データ処理システムおよびデータ処理方法 Download PDF

Info

Publication number
WO2019142241A1
WO2019142241A1 PCT/JP2018/001051 JP2018001051W WO2019142241A1 WO 2019142241 A1 WO2019142241 A1 WO 2019142241A1 JP 2018001051 W JP2018001051 W JP 2018001051W WO 2019142241 A1 WO2019142241 A1 WO 2019142241A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameter
value
neural network
output
data
Prior art date
Application number
PCT/JP2018/001051
Other languages
English (en)
French (fr)
Inventor
陽一 矢口
Original Assignee
オリンパス株式会社
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 オリンパス株式会社 filed Critical オリンパス株式会社
Priority to PCT/JP2018/001051 priority Critical patent/WO2019142241A1/ja
Priority to JP2019566013A priority patent/JP6942203B2/ja
Priority to CN201880085993.3A priority patent/CN111630530B/zh
Publication of WO2019142241A1 publication Critical patent/WO2019142241A1/ja
Priority to US16/929,746 priority patent/US20200349444A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Definitions

  • the present invention relates to a data processing system and a data processing method.
  • a neural network is a mathematical model that includes one or more non-linear units, and is a machine learning model that predicts an output corresponding to an input.
  • Many neural networks have one or more intermediate layers (hidden layers) in addition to the input layer and the output layer. The output of each intermediate layer becomes the input of the next layer (intermediate layer or output layer). Each layer of the neural network produces an output in response to the input and its parameters.
  • the present invention has been made in view of such circumstances, and an object thereof is to provide a technology capable of realizing more stable learning while having relatively high accuracy.
  • a data processing system outputs data that is output by performing processing according to a neural network on learning data, and an ideal output for the learning data.
  • a learning unit is provided that optimizes optimization target parameters of the neural network based on comparison with data.
  • Another aspect of the invention is a data processing method. This method comprises the steps of: outputting output data corresponding to learning data by executing processing according to a neural network on learning data; output data corresponding to learning data; and an ideal output for the learning data Optimizing the optimization target parameters of the neural network based on the comparison with the data.
  • any combination of the above-described constituent elements, one obtained by converting the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program and the like is also effective as an aspect of the present invention.
  • FIG. 1 It is a block diagram showing the function and composition of a data processing system concerning an embodiment. It is a figure which shows the flowchart of the learning process by a data processing system. It is a figure which shows the flowchart of the application process by a data processing system.
  • the ReLU function As the activation function, it is possible to alleviate the gradient disappearance problem that makes it difficult to learn deep neural networks. Deep neural networks that have become capable of learning achieve high performance in a wide variety of tasks including image classification by improving expressive power.
  • the ReLU function alleviates the problem of gradient disappearance caused by using a sigmoid function with a gradient with a large absolute value that is always smaller than 1 because the gradient for a positive value input is always 1 and so on. be able to.
  • the output of the ReLU function is non-negative and has an average value that is clearly out of zero. Therefore, the average value of the input to the next layer may deviate from zero and learning may be delayed.
  • Non-zero gradients for negative inputs The Leaky ReLU, PReLU, RReLU, and ELU functions have been proposed, but the mean value for any output is greater than zero. Further, the CReLU function and the NCReLU function output the channel combination of ReLU (x) and ReLU (-x) in convolutional deep layer learning, and the BReLU function reverses half of the channels to obtain an average value as a whole layer Is zero, but the problem has not been solved that the average value of each channel deviates from zero. Also, it can not be applied to other neural networks without the concept of channels.
  • NG Nonlinearity Generator
  • the output average value is zero in the initial state of the neural network without bias shift, and an activation function with a sufficiently large gradient (close to 1) over a sufficiently wide range of the value range is required.
  • FIG. 1 is a block diagram showing the function and configuration of a data processing system 100 according to an embodiment.
  • Each block shown here can be realized by hardware as an element such as a CPU (central processing unit) of a computer or a mechanical device, and as software as a computer program or the like. It depicts the functional blocks realized by the collaboration of Therefore, it is understood by those skilled in the art that these functional blocks can be realized in various forms by a combination of hardware and software.
  • the data processing system 100 applies, to the image, a “learning process” of learning a neural network based on an image for learning and a correct value that is ideal output data for the image, and a learned neural network.
  • application processing that performs image processing such as image classification, object detection or image segmentation.
  • the data processing system 100 executes a process according to a neural network on an image for learning, and outputs output data for the image for learning. Then, the data processing system 100 updates a parameter for optimization (learning) of the neural network (hereinafter, referred to as “optimization target parameter”) so that the output data approaches the correct value.
  • the optimization target parameter is optimized by repeating this.
  • the data processing system 100 executes the process according to the neural network on the image using the optimization target parameter optimized in the learning process, and outputs the output data for the image.
  • the data processing system 100 interprets the output data to perform image classification of the image, object detection from the image, and image segmentation of the image.
  • the data processing system 100 includes an acquisition unit 110, a storage unit 120, a neural network processing unit 130, a learning unit 140, and an interpretation unit 150.
  • the neural network processing unit 130 and the learning unit 140 mainly realize the learning processing function
  • the neural network processing unit 130 and the interpreting unit 150 mainly realize the application processing function.
  • the acquiring unit 110 acquires a plurality of learning images at one time and correct values corresponding to each of the plurality of images. Further, the acquisition unit 110 acquires an image to be processed in the application process.
  • the image may be, for example, an RGB image, or a grayscale image, regardless of the number of channels.
  • the storage unit 120 stores the image acquired by the acquisition unit 110, and serves as a work area of the neural network processing unit 130, the learning unit 140 and the interpretation unit 150, and a storage area of parameters of the neural network.
  • the neural network processing unit 130 executes processing in accordance with the neural network.
  • the neural network processing unit 130 executes processing corresponding to each component of each layer of the input layer processing unit 131 which executes processing corresponding to each component of the input layer of the neural network, and one or more intermediate layers (hidden layer).
  • the intermediate layer processing unit 132 includes an output layer processing unit 133 that executes processing corresponding to each component of the output layer.
  • the intermediate layer processing unit 132 executes an activation process of applying an activation function to input data from the preceding layer (the input layer or the preceding intermediate layer) as processing of each component of each layer of the intermediate layer.
  • the intermediate layer processing unit 132 may execute convolution processing, thinning processing, and other processing in addition to the activation processing.
  • Cc is a parameter indicating the center value of the output value (hereinafter referred to as "center value parameter”)
  • Wc is a parameter having a non-negative value (hereinafter referred to as "width parameter”).
  • a parameter pair of center value parameter C c and width parameter W c is set independently for each component.
  • components are channels of input data, coordinates of input data, and input data itself.
  • the output layer processing unit 133 performs, for example, an operation combining a soft max function, a sigmoid function, a cross entropy function, and the like.
  • the learning unit 140 optimizes optimization target parameters of the neural network.
  • the learning unit 140 calculates an error using an objective function (error function) that compares an output obtained by inputting a learning image into the neural network processing unit 130 and a correct value corresponding to the image.
  • the learning unit 140 calculates the gradient of the parameter by the gradient back propagation method or the like as described in Non-Patent Document 1 based on the calculated error, and the optimization target parameter of the neural network is calculated based on the momentum method. Update.
  • the optimized parameters in addition to the weighting factor and the bias includes a central value parameter C c and the width parameter W c. Note that the initial value of the center value parameter C c is set, for example, "0", "1" is set to the initial value of the width parameter W c.
  • the processing by the learning unit 140 will be specifically described as an example the case of updating the central value parameter C c and width parameters W c.
  • the learning unit 140 calculates the gradient for the central value parameter C c of the objective function ⁇ of the neural network and the gradient for the width parameter W c based on the gradient back propagation method using the following equations (2) and (3) Do.
  • ⁇ / ⁇ f (x c ) is the gradient back-propagated from the subsequent layer.
  • the input x c in each component of each layer of the intermediate layer, the center value parameter C c, gradient ⁇ f for each width parameter W c (x c) / ⁇ x c, ⁇ f (x c) / ⁇ C c and ⁇ f (x c ) / ⁇ W c are calculated by the following formulas (4), (5) and (6).
  • the learning unit 140 updates the center value parameter C c and the width parameter W c by the momentum method (the following equations (7) and (8)) based on the calculated gradient.
  • momentum
  • learning rate
  • the optimization target parameter Is optimized By repeating the acquisition of the image for learning by the acquisition unit 110, the processing according to the neural network for the image for learning by the neural network processing unit 130, and the update of the optimization target parameter by the learning unit 140, the optimization target parameter Is optimized.
  • the learning unit 140 determines whether to end learning.
  • the termination condition for terminating learning is, for example, that learning has been performed a predetermined number of times, that an instruction to terminate from the outside has been received, that the average value of the update amounts of optimization target parameters has reached a predetermined value, The calculated error is within the predetermined range.
  • the learning unit 140 ends the learning process when the end condition is satisfied. When the end condition is not satisfied, the learning unit 140 returns the process to the neural network processing unit 130.
  • the interpreting unit 150 interprets the output from the output layer processing unit 133 and implements image classification, object detection or image segmentation.
  • FIG. 2 shows a flowchart of learning processing by the data processing system 100.
  • the acquisition unit 110 acquires a plurality of learning images (S10).
  • the neural network processing unit 130 executes a process according to the neural network on each of the plurality of learning images acquired by the acquisition unit 110, and outputs output data for each (S12).
  • the learning unit 140 updates the parameters based on the output data for each of the plurality of learning images and the correct value for each (S14). In updating this parameter, in addition to the weighting factor and bias, the center value parameter Cc and the width parameter Wc are also updated as optimization target parameters.
  • the learning unit 140 determines whether the termination condition is satisfied (S16). If the end condition is not satisfied (N in S16), the process returns to S10. If the end condition is satisfied (Y in S16), the process ends.
  • FIG. 3 shows a flowchart of application processing by the data processing system 100.
  • the acquisition unit 110 acquires an image of an application processing target (S20).
  • the neural network processing unit 130 executes processing on the image acquired by the acquisition unit 110 according to the neural network in which the optimization target parameters have been optimized, ie, the learned neural network, and outputs output data (S22).
  • the interpretation unit 150 interprets the output data, performs image classification of the image of the object, detects an object from the image of the object, and performs image segmentation on the image of the object (S24).
  • the outputs of all the activation functions do not depend on the initial value of the input and there is no bias shift and the output average value is zero in the initial state of the neural network.
  • the gradient becomes 1 in a fixed range of As a result, speeding up of learning, maintenance of gradient, relaxation of initial value dependency, and avoidance of low precision local solution can be realized.
  • Modification 2 Although not particularly mentioned in the embodiment, when the width parameter W of the activation function of a component becomes less than a predetermined threshold and the output value by the activation function becomes relatively small, the output is applied to the application process. It is considered to have no effect. Therefore, when the width parameter W of the activation function of a certain component becomes equal to or less than a predetermined threshold, it is not necessary to execute arithmetic processing that affects only the output by the activation function. That is, it is not necessary to execute arithmetic processing by the activation function or arithmetic processing for outputting only to the component. For example, components that execute only their arithmetic processing may be deleted for each component. In this case, since unnecessary arithmetic processing is not executed, speeding up of processing and reduction of memory consumption can be realized.
  • 100 data processing system 130 neural network processing unit, 140 learning unit.
  • the present invention relates to a data processing system and a data processing method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

データ処理システム100は、学習データに対してニューラルネットワークにしたがった処理を実行することにより出力される出力データと、その学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化する学習部を備える。ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数である。学習部は、第1のパラメータおよび第2のパラメータを、最適化パラメータのひとつとして最適化する。

Description

データ処理システムおよびデータ処理方法
 本発明は、データ処理システムおよびデータ処理方法に関する。
 ニューラルネットワークは、1以上の非線形ユニットを含む数学的モデルであり、入力に対応する出力を予測する機械学習モデルである。多くのニューラルネットワークは、入力層と出力層の他に、1以上の中間層(隠れ層)をもつ。各中間層の出力は次の層(中間層または出力層)の入力となる。ニューラルネットワークの各層は、入力および自身のパラメータに応じて出力を生成する。
Alex Krizhevsky、Ilya Sutskever、Geoffrey E. Hinton、「ImageNet Classification with Deep Convolutional Neural Networks」、NIPS2012_4824
 比較的高精度でありながらも、より安定した学習を実現できることが望ましい。
 本発明はこうした状況に鑑みなされたものであり、その目的は、比較的高精度でありながらも、より安定した学習を実現できる技術を提供することにある。
 上記課題を解決するために、本発明のある態様のデータ処理システムは、学習データに対してニューラルネットワークにしたがった処理を実行することにより出力される出力データと、その学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化する学習部を備える。ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数であり、学習部は、第1のパラメータおよび第2のパラメータを、最適化パラメータのひとつとして最適化する。
 本発明の別の態様は、データ処理方法である。この方法は、学習データに対してニューラルネットワークにしたがった処理を実行することにより学習データに対応する出力データを出力するステップと、学習データに対応する出力データと、その学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化するステップと、を備える。ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数であり、最適化対象パラメータを最適化するステップでは、第1のパラメータおよび第2のパラメータを、最適化パラメータのひとつとして最適化する。
 なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
 本発明によれば、比較的高精度でありながらも、より安定した学習を実現できる。
実施の形態に係るデータ処理システムの機能および構成を示すブロック図である。 データ処理システムによる学習処理のフローチャートを示す図である。 データ処理システムによる適用処理のフローチャートを示す図である。
 以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。
 実施の形態を説明する前に、基礎となった知見を説明する。勾配を用いた学習においてニューラルネットワークの任意の層に与える入力の平均値がゼロから外れた場合、重み更新の方向に対応する偏りの影響で、学習が滞ることが知られている。
 一方、ReLU関数を活性化関数に用いることにより、ディープニューラルネットワークの学習を困難にする勾配消失問題を緩和することができる。学習が可能になったディープニューラルネットワークは表現力の向上によって画像分類を含む多種多様なタスクにおいて高性能を達成している。ReLU関数は、正値入力に対する勾配が常に1であるため、絶対値が大きい入力に対する勾配が常に1よりはるかに小さいシグモイド関数を活性化関数に用いた場合等に引き起こされる勾配消失問題を緩和することができる。しかし、ReLU関数の出力は、非負であり、明らかにゼロから外れた平均値をもつ。したがって、次の層への入力の平均値がゼロから外れ、学習が滞る場合がある。
 負値入力に対する勾配がゼロではないLeaky ReLU関数、PReLU関数、RReLU関数、ELU関数が提案されているが、いずれの出力も平均値はゼロより大きい。また、CReLU関数、NCReLU関数は畳み込み深層学習においてReLU(x)とReLU(-x)のチャンネル結合を出力することで、BReLU関数はチャンネルの半数を正負反転することで、層全体としての平均値をゼロにしているが、各チャンネルの平均値がゼロから外れる問題の解消には至っていない。また、チャンネルの概念がないその他のニューラルネットワークには適用できない。
 Nonlinearity Generator(NG)は、f(x)=max(x,a)(aはパラメータ)と定義され、a≦min(x)であれば恒等写像となるため、各層の入力の平均値がゼロになるように初期化されたニューラルネットワークでは、各層の出力の平均値がゼロである。また、上記のように初期化した場合、収束が進んで平均値がゼロから外れた状態でもさらに収束が進む実験結果が示されており、平均値ゼロが真に重要であるのは学習の初期であることがわかる。ここで、aの初期値a0が小さすぎると収束開始までに多大な時間を要するため、a0≒min(x0)(x0はxの初期値)であることも望ましい。しかし、近年は、ニューラルネットワークの計算グラフ構造が複雑化しており、適切な初期値を与えるのは困難である。
 Batch Normalization(BN)は、ミニバッチ全体の平均と分散を正規化し、出力の平均値をゼロにすることで学習を高速化した。しかし、ニューラルネットワークの任意の層でバイアスシフトを行うとニューラルネットワークの正斉次性を担保せず、精度の低い局所解が存在することが近年報告されている。
 よって、比較的高精度でありながらも、より安定した学習を実現するためには、すなわち学習遅滞問題、勾配消失問題、初期値問題、低精度局所解問題を解決するためには、入力の初期値に依存せずにバイアスシフトなしで出力平均値がニューラルネットワークの初期状態においてゼロであり、値域の十分広い範囲において勾配が十分大きい(1に近い)活性化関数が必要である。
 以下ではデータ処理装置を画像処理に適用する場合を例に説明するが、当業者によれば、データ処理装置を音声認識処理、自然言語処理、その他の処理にも適用可能であることが理解されよう。
 図1は、実施の形態に係るデータ処理システム100の機能および構成を示すブロック図である。ここに示す各ブロックは、ハードウェア的には、コンピュータのCPU(central processing unit)をはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
 データ処理システム100は、学習用の画像と、その画像に対する理想的な出力データである正解値とに基づいてニューラルネットワークの学習を行う「学習処理」と、学習済みのニューラルネットワークを画像に適用し、画像分類、物体検出または画像セグメンテーションなどの画像処理を行う「適用処理」と、を実行する。
 学習処理では、データ処理システム100は、学習用の画像に対してニューラルネットワークにしたがった処理を実行し、学習用の画像に対する出力データを出力する。そしてデータ処理システム100は、出力データが正解値に近づくようにニューラルネットワークの最適化(学習)対象のパラメータ(以下、「最適化対象パラメータ」と呼ぶ)を更新する。これを繰り返すことにより最適化対象パラメータが最適化される。
 適用処理では、データ処理システム100は、学習処理において最適化された最適化対象パラメータを用いて、画像に対してニューラルネットワークにしたがった処理を実行し、その画像に対する出力データを出力する。データ処理システム100は、出力データを解釈して、画像を画像分類したり、画像から物体検出したり、画像に対して画像セグメンテーションを行ったりする。
 データ処理システム100は、取得部110と、記憶部120と、ニューラルネットワーク処理部130と、学習部140と、解釈部150と、を備える。主にニューラルネットワーク処理部130と学習部140により学習処理の機能が実現され、主にニューラルネットワーク処理部130と解釈部150により適用処理の機能が実現される。
 取得部110は、学習処理においては、一度に複数枚の学習用の画像と、それら複数枚の画像のそれぞれに対応する正解値とを取得する。また取得部110は、適用処理においては、処理対象の画像を取得する。なお、画像は、チャンネル数は特に問わず、例えばRGB画像であっても、また例えばグレースケール画像であってもよい。
 記憶部120は、取得部110が取得した画像を記憶する他、ニューラルネットワーク処理部130、学習部140および解釈部150のワーク領域や、ニューラルネットワークのパラメータの記憶領域となる。
 ニューラルネットワーク処理部130は、ニューラルネットワークにしたがった処理を実行する。ニューラルネットワーク処理部130は、ニューラルネットワークの入力層の各コンポーネントに対応する処理を実行する入力層処理部131と、1以上の中間層(隠れ層)の各層の各コンポーネントに対応する処理を実行する中間層処理部132と、出力層の各コンポーネントに対応する処理を実行する出力層処理部133と、を含む。
 中間層処理部132は、中間層の各層の各コンポーネントの処理として、前段の層(入力層または前段の中間層)からの入力データに対して活性化関数を適用する活性化処理を実行する。なお中間層処理部132は、活性化処理に加えて、畳み込み処理や間引き処理やその他の処理を実行してもよい。
 活性化関数は、以下の式(1)により与えられる。
Figure JPOXMLDOC01-appb-M000003
 ここで、Cは出力値の中心値を示すパラメータ(以下、「中心値パラメータ」と呼ぶ)であり、Wは非負の値をとるパラメータ(以下、「幅パラメータ」と呼ぶ)である。中心値パラメータC、幅パラメータWのパラメータ対は、コンポーネントごとに独立に設定される。例えばコンポーネントは入力データのチャンネルや、入力データの座標や、入力データそのものである。
 つまり、本実施の形態の活性化関数は、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフはf(x)=Cに対応する点について点対称な関数である。したがって、後述のように中心値パラメータCの初期値に例えば「0」を設定した場合、学習の初期では出力の平均値は、すなわち次の層への入力の平均値は、明らかにゼロとなる。
 出力層処理部133は、例えばソフトマックス関数、シグモイド関数、クロスエントロピー関数などを組み合わせた演算を行う。
 学習部140は、ニューラルネットワークの最適化対象パラメータを最適化する。学習部140は、学習用の画像をニューラルネットワーク処理部130に入力することにより得られた出力と、その画像に対応する正解値とを比較する目的関数(誤差関数)により、誤差を算出する。学習部140は、算出された誤差に基づいて、非特許文献1に記載のように、勾配逆伝搬法等によりパラメータについての勾配を計算し、モーメンタム法に基づいてニューラルネットワークの最適化対象パラメータを更新する。本実施の形態では、最適化対象パラメータには、重み係数およびバイアスに加え、中心値パラメータCと幅パラメータWとが含まれる。なお、中心値パラメータCの初期値には例えば「0」が設定され、幅パラメータWの初期値には「1」が設定される。
 学習部140による処理を、中心値パラメータCおよび幅パラメータWを更新する場合を例に具体的に説明する。
 学習部140は、ニューラルネットワークの目的関数εの中心値パラメータCついての勾配と幅パラメータWついての勾配をそれぞれ、勾配逆伝搬法に基づき、以下の式(2)、(3)で算出する。
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
 ここで、∂ε/∂f(xc)は後続の層から逆伝搬されてきた勾配である。
 学習部140は、中間層の各層の各コンポーネントにおける入力x、中心値パラメータC、幅パラメータWそれぞれについての勾配∂f(xc)/∂xc、∂f(xc)/∂Cc、∂f(xc)/∂Wcは以下の式(4)、(5)、(6)で算出する。
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
 学習部140は、算出された勾配に基づき、モーメンタム法(以下の式(7)、(8))で中心値パラメータC、幅パラメータWを更新する。
Figure JPOXMLDOC01-appb-M000009
Figure JPOXMLDOC01-appb-M000010
 ここで、
 μ:モーメンタム
 η:学習率
 である。
 例えば、μ=0.9、η=0.1に設定する。
 学習部140は、W<0となった場合は、さらにW=0に更新する。
 取得部110による学習用の画像の取得と、ニューラルネットワーク処理部130による学習用画像に対するニューラルネットワークにしたがった処理と、学習部140による最適化対象パラメータの更新とを繰り返すことにより、最適化対象パラメータが最適化される。
 また、学習部140は、学習を終了すべきか否かを判定する。学習を終了すべき終了条件は、例えば学習が所定回数行われたことや、外部から終了の指示を受けたことや、最適化対象パラメータの更新量の平均値が所定値に達したことや、算出された誤差が所定の範囲内に収まったことである。学習部140は、終了条件が満たされる場合、学習処理を終了させる。学習部140は、終了条件が満たされない場合、処理をニューラルネットワーク処理部130に戻す。
 解釈部150は、出力層処理部133からの出力を解釈して、画像分類、物体検出または画像セグメンテーションを実施する。
 実施の形態に係るデータ処理システム100の動作を説明する。
 図2は、データ処理システム100による学習処理のフローチャートを示す。取得部110は、複数枚の学習用の画像を取得する(S10)。ニューラルネットワーク処理部130は、取得部110が取得した複数枚の学習用の画像のそれぞれに対して、ニューラルネットワークにしたがった処理を実行し、それぞれについての出力データを出力する(S12)。学習部140は、複数枚の学習用の画像のそれぞれについての出力データと、それぞれについての正解値とに基づいて、パラメータを更新する(S14)。このパラメータの更新では、重み付け係数やバイアスに加えて、中心値パラメータCおよび幅パラメータWも最適化対象パラメータとして更新する。学習部140は、終了条件が満たされるか否かを判定する(S16)。終了条件が満たされない場合(S16のN)、処理はS10に戻される。終了条件が満たされる場合(S16のY)、処理は終了する。
 図3は、データ処理システム100による適用処理のフローチャートを示す。取得部110は、適用処理の対象の画像を取得する(S20)。ニューラルネットワーク処理部130は、取得部110が取得した画像に対して、最適化対象パラメータが最適化されたすなわち学習済みのニューラルネットワークにしたがった処理を実行し、出力データを出力する(S22)。解釈部150は、出力データを解釈し、対象の画像を画像分類したり、対象の画像から物体検出したり、対象の画像に対して画像セグメンテーションを行ったりする(S24)。
 以上説明した実施の形態に係るデータ処理システム100によると、すべての活性化関数の出力は、入力の初期値に依存せずにバイアスシフト無しで出力平均値がニューラルネットワークの初期状態においてゼロ、値域の一定範囲において勾配が1となる。これにより、学習の高速化、勾配の維持、初期値依存性の緩和、低精度局所解の回避を実現することができる。
 以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
(変形例1)
 実施の形態では、活性化関数が式(1)で与えられる場合について説明したが、これに限られない。活性化関数は、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称であればよい。活性化関数は例えば、式(1)の代わりに、以下の式(9)により与えられてもよい。
Figure JPOXMLDOC01-appb-M000011
 この場合、勾配∂f(xc)/∂xc、∂f(xc)/∂Cc、∂f(xc)/∂Wcは、式(4)、(5)、(6)の代わりに、以下の式(10)、(11)、(12)で与えられる。
Figure JPOXMLDOC01-appb-M000012
Figure JPOXMLDOC01-appb-M000013
Figure JPOXMLDOC01-appb-M000014
 本変形例によれば実施の形態と同様の作用効果を奏することができる。
(変形例2)
 実施の形態では特に言及しなかったが、あるコンポーネントの活性化関数の幅パラメータWが所定の閾値以下となり、その活性化関数による出力値が比較的小さくなった場合、その出力は、適用処理に影響を与えないものと考えられる。したがって、あるコンポーネントの活性化関数の幅パラメータWが所定の閾値以下となった場合、その活性化関数による出力のみに影響する演算処理を実行しなくてもよい。つまり、その活性化関数による演算処理や、そのコンポーネントのみに出力するための演算処理を実行しなくてもよい。例えば、それらの演算処理のみを実行するコンポーネントを、コンポーネントごと削除してもよい。この場合、不要な演算処理が実行されなくなるため、処理の高速化や消費メモリの削減を実現できる。
 100 データ処理システム、 130 ニューラルネットワーク処理部、 140 学習部。
 本発明は、データ処理システムおよびデータ処理方法に関する。

Claims (8)

  1.  学習データに対してニューラルネットワークにしたがった処理を実行することにより出力される出力データと、その学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化する学習部を備え、
     前記ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数であり、
     前記学習部は、前記第1のパラメータの初期値として0を設定し、前記第1のパラメータおよび前記第2のパラメータを、最適化パラメータのひとつとして最適化することを特徴とするデータ処理システム。
  2.  前記活性化関数f(x)は、
    Figure JPOXMLDOC01-appb-M000001
     で表現されることを特徴とする請求項1に記載のデータ処理システム。
  3.  前記活性化関数f(x)は、
    Figure JPOXMLDOC01-appb-M000002
     で表現されることを特徴とする請求項1に記載のデータ処理システム。
  4.  前記ニューラルネットワークは、畳み込みニューラルネットワークであり、コンポーネントごとに独立した、前記第1のパラメータおよび前記第2のパラメータを有することを特徴とする請求項1から3のいずれかに記載のデータ処理システム。
  5.  前記コンポーネントはチャンネルであることを特徴とする請求項4に記載のデータ処理システム。
  6.  前記学習部は、前記第2のパラメータが所定の閾値以下となった場合、その活性化関数による出力のみに影響する演算処理を実行しないことを特徴とする請求項1から5のいずれかに記載のデータ処理システム。
  7.  学習データに対してニューラルネットワークにしたがった処理を実行することにより学習データに対応する出力データを出力するステップと、
     学習データに対応する出力データと、その学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化するステップと、を備え、
     前記ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数であり、
     前記第1のパラメータの初期値として0が設定され、
     前記最適化対象パラメータを最適化するステップでは、前記第1のパラメータおよび前記第2のパラメータを、最適化パラメータのひとつとして最適化することを特徴とするデータ処理方法。
  8.  学習データに対してニューラルネットワークにしたがった処理を実行することにより出力される出力データと、その学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化する機能をコンピュータに実現させるためのプログラムであって、
     前記ニューラルネットワークの活性化関数f(x)は、第1のパラメータをC、非負の値をとる第2のパラメータをWとするとき、入力値に対する出力値がC±Wの範囲内の値を連続的にとり、入力値に対する出力値が一意に決まり、そのグラフがf(x)=Cに対応する点について点対称である関数であり、
     前記最適化対象パラメータを最適化する機能は、前記第1のパラメータの初期値として0を設定し、前記第1のパラメータおよび前記第2のパラメータを、最適化パラメータのひとつとして最適化することを特徴とするプログラム。
PCT/JP2018/001051 2018-01-16 2018-01-16 データ処理システムおよびデータ処理方法 WO2019142241A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2018/001051 WO2019142241A1 (ja) 2018-01-16 2018-01-16 データ処理システムおよびデータ処理方法
JP2019566013A JP6942203B2 (ja) 2018-01-16 2018-01-16 データ処理システムおよびデータ処理方法
CN201880085993.3A CN111630530B (zh) 2018-01-16 2018-01-16 数据处理系统、数据处理方法和计算机可读存储介质
US16/929,746 US20200349444A1 (en) 2018-01-16 2020-07-15 Data processing system and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/001051 WO2019142241A1 (ja) 2018-01-16 2018-01-16 データ処理システムおよびデータ処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/929,746 Continuation US20200349444A1 (en) 2018-01-16 2020-07-15 Data processing system and data processing method

Publications (1)

Publication Number Publication Date
WO2019142241A1 true WO2019142241A1 (ja) 2019-07-25

Family

ID=67302103

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/001051 WO2019142241A1 (ja) 2018-01-16 2018-01-16 データ処理システムおよびデータ処理方法

Country Status (4)

Country Link
US (1) US20200349444A1 (ja)
JP (1) JP6942203B2 (ja)
CN (1) CN111630530B (ja)
WO (1) WO2019142241A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112598107A (zh) * 2019-10-01 2021-04-02 创鑫智慧股份有限公司 数据处理系统及其数据处理方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10943353B1 (en) 2019-09-11 2021-03-09 International Business Machines Corporation Handling untrainable conditions in a network architecture search
US11023783B2 (en) * 2019-09-11 2021-06-01 International Business Machines Corporation Network architecture search with global optimization

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5271090A (en) * 1990-03-21 1993-12-14 At&T Bell Laboratories Operational speed improvement for neural network

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2859377B2 (ja) * 1990-06-14 1999-02-17 キヤノン株式会社 ニューラルネットを用いた画像処理方法および画像処理装置
DE4228703A1 (de) * 1992-08-28 1994-03-03 Siemens Ag Verfahren zum Entwurf eines neuronalen Netzes
JP2002222409A (ja) * 2001-01-26 2002-08-09 Fuji Electric Co Ltd ニューラルネットワークの最適化学習方法
US6941289B2 (en) * 2001-04-06 2005-09-06 Sas Institute Inc. Hybrid neural network generation system and method
WO2016145516A1 (en) * 2015-03-13 2016-09-22 Deep Genomics Incorporated System and method for training neural networks
CN105550744A (zh) * 2015-12-06 2016-05-04 北京工业大学 一种基于迭代的神经网络聚类方法
CN106682735B (zh) * 2017-01-06 2019-01-18 杭州创族科技有限公司 基于pid调节的bp神经网络算法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5271090A (en) * 1990-03-21 1993-12-14 At&T Bell Laboratories Operational speed improvement for neural network

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Artificial Neural Network", WEBARCHIVE.ORG, 8 November 2012 (2012-11-08), XP055625028, Retrieved from the Internet <URL:https:/web.archive.org/web/20121108031923/http://www.saedsayad.com:80/artificial_neural_network.htm> [retrieved on 20180409] *
HE, KAIMING ET AL.: "Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification", 2015 IEEE INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV), 6 February 2015 (2015-02-06) - 7 December 2015 (2015-12-07), pages 1026 - 1034, XP032866428 *
KIDA YUSUKE ET AL.: "Voice activity detection based on optimally weighted combination of multiple features", IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, vol. J89-D, 22 August 2006 (2006-08-22) - 9 April 2018 (2018-04-09), pages 1820 - 1828 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112598107A (zh) * 2019-10-01 2021-04-02 创鑫智慧股份有限公司 数据处理系统及其数据处理方法

Also Published As

Publication number Publication date
JPWO2019142241A1 (ja) 2020-11-19
CN111630530A (zh) 2020-09-04
CN111630530B (zh) 2023-08-18
JP6942203B2 (ja) 2021-09-29
US20200349444A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
Kingma et al. Glow: Generative flow with invertible 1x1 convolutions
EP3629250A1 (en) Parameter-efficient multi-task and transfer learning
JP6610278B2 (ja) 機械学習装置、機械学習方法及び機械学習プログラム
TW201901532A (zh) 前饋生成神經網路
Kohler et al. Towards a theoretical understanding of batch normalization
US20200349444A1 (en) Data processing system and data processing method
Cui et al. Adaptive decentralized NN control of large-scale stochastic nonlinear time-delay systems with unknown dead-zone inputs
WO2019207770A1 (ja) 学習済みモデル更新装置、学習済みモデル更新方法、プログラム
CN111062465A (zh) 一种神经网络结构自调整的图像识别模型及方法
JP2018106489A (ja) 学習システムおよび学習方法
Chalasani et al. Self-organizing maps with information theoretic learning
US20220335298A1 (en) Robust learning device, robust learning method, program, and storage device
WO2019215904A1 (ja) 予測モデル作成装置、予測モデル作成方法、および予測モデル作成プログラム記録媒体
Lam et al. Gaussian Process Neural Networks for Speech Recognition.
WO2021100184A1 (ja) 学習装置、推定装置、学習方法および学習プログラム
US20230306255A1 (en) Method and system for smooth training of a quantized neural network
US11544563B2 (en) Data processing method and data processing device
WO2019142242A1 (ja) データ処理システムおよびデータ処理方法
WO2020040007A1 (ja) 学習装置、学習方法及び学習プログラム
WO2020003450A1 (ja) データ処理システムおよびデータ処理方法
JP7055211B2 (ja) データ処理システムおよびデータ処理方法
CN113240025B (zh) 一种基于贝叶斯神经网络权重约束的图像分类方法
US20210133626A1 (en) Apparatus and method for optimizing quantized machine-learning algorithm
WO2024024217A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
WO2022239448A1 (ja) 量子化プログラム、情報処理装置、及び値域決定方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18901360

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019566013

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18901360

Country of ref document: EP

Kind code of ref document: A1