JP2019061338A - Regulating device of neural network, device, and program - Google Patents

Regulating device of neural network, device, and program Download PDF

Info

Publication number
JP2019061338A
JP2019061338A JP2017183502A JP2017183502A JP2019061338A JP 2019061338 A JP2019061338 A JP 2019061338A JP 2017183502 A JP2017183502 A JP 2017183502A JP 2017183502 A JP2017183502 A JP 2017183502A JP 2019061338 A JP2019061338 A JP 2019061338A
Authority
JP
Japan
Prior art keywords
neurons
value
neuron
neural network
importance
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
JP2017183502A
Other languages
Japanese (ja)
Other versions
JP6754343B2 (en
Inventor
ヤセル モハメド
Mohammad Yasser
ヤセル モハメド
啓一郎 帆足
Keiichiro Hoashi
啓一郎 帆足
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2017183502A priority Critical patent/JP6754343B2/en
Publication of JP2019061338A publication Critical patent/JP2019061338A/en
Application granted granted Critical
Publication of JP6754343B2 publication Critical patent/JP6754343B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

To provide a regulating device which, even when a device has low processing capability, regulates a neural network so as to be able to operate the device.SOLUTION: A regulating device comprises: means to determine a first value showing importance of each of neurons of a first neural network; means to determine a second value showing a computational cost of each of the neurons of the first neural network; means to calculate an evaluation value for each of groups of a predetermined number of neurons selected from all the neurons of the first neural network on the basis of the first value and the second value of each of the neurons included in the groups and select one group on the basis of the evaluation value; and means to generate a second neural network by keeping in the predetermined number of the neurons included in the selected group and the neurons necessary for performance of computation by the predetermined number of the neurons included in the selected group and excluding the other neurons from the first neural network.SELECTED DRAWING: Figure 13

Description

本発明は、処理能力の低い、例えば、携帯型のデバイスにおいて動作させることができる様に、ニューラルネットワークを調整する調整装置に関する。   The present invention relates to an adjusting device for adjusting a neural network so that it can be operated in low-throughput, for example, portable devices.

ニューラルネットワークを使用してある入力に基づき何らかの判定を行ったり、ある入力に対する出力を決定したりすることが行われている。特許文献1は、人に取り付けた加速度センサ等のセンサが出力する信号から、ニューラルネットワークを使用して当該人の行動を判定することを開示している。   It has been practiced to use a neural network to make some decisions based on an input or to determine the output for an input. Patent Document 1 discloses that the action of a person is determined using a neural network from a signal output from a sensor such as an acceleration sensor attached to the person.

米国特許第9278255号明細書U.S. Pat. No. 9,278,255

ニューラルネットワークにより精度の高い出力を得るためには、非常に多くのニューロンを使用してニューラルネットワークを構成する必要がある。しかしながら、その様なニューラルネットワークは処理負荷が高く、よって、処理能力の低いデバイス、例えば、携帯型のデバイスで動作させることが難しくなる。   In order to obtain an accurate output by a neural network, it is necessary to construct a neural network using a large number of neurons. However, such neural networks are processing intensive, which makes them difficult to operate on low-throughput devices, such as portable devices.

本発明は、処理能力の低いデバイスでも動作させることができる様に、ニューラルネットワークを調整する調整装置を提供するものである。   The present invention provides an adjusting device for adjusting a neural network so that it can operate even with a low processing capacity device.

本発明の一態様によると、第1ニューラルネットワークを調整して第2ニューラルネットワークを生成する調整装置は、前記第1ニューラルネットワークの各ニューロンの重要度を示す第1の値を求める第1手段と、前記第1ニューラルネットワークの各ニューロンの計算コストを示す第2の値を求める第2手段と、前記第1ニューラルネットワークの総てのニューロンから所定数のニューロンを選択した組それぞれについて、当該組に含まれるニューロンそれぞれの前記第1の値と前記第2の値とに基づき評価値を算出し、前記評価値に基づき1つの組を選択する選択手段と、前記選択した組に含まれる前記所定数のニューロンと、前記選択した組に含まれる前記所定数のニューロンが計算を行うのに必要なニューロンと、を残し、それ以外のニューロンを前記第1ニューラルネットワークから削除することで、前記第2ニューラルネットワークを生成する生成手段と、を備えていることを特徴とする。   According to one aspect of the present invention, an adjusting device for adjusting a first neural network to generate a second neural network comprises: first means for determining a first value indicating importance of each neuron of the first neural network; A second means for obtaining a second value indicating a calculation cost of each neuron of the first neural network, and a set in which a predetermined number of neurons are selected from all the neurons of the first neural network; An evaluation value is calculated based on the first value and the second value of each of the included neurons, selection means for selecting one set based on the evaluation value, and the predetermined number included in the selected set , And the predetermined number of neurons included in the selected set need to perform calculations. By removing the neuron from the first neural network, characterized by comprising a generating means for generating said second neural network.

本発明によると、調整装置は、処理能力の低いデバイスでも動作させることができる様にニューラルネットワークを調整することができる。   In accordance with the present invention, the coordinator can tune the neural network so that it can operate even with low-throughput devices.

一実施形態の説明に用いるニューラルネットワークの構成図。The block diagram of the neural network used for description of one Embodiment. 実施形態で用いる用語の説明図。Explanatory drawing of the term used by embodiment. 実施形態で用いる用語の説明図。Explanatory drawing of the term used by embodiment. 各ニューロンの固有重要度を示す図。The figure which shows the intrinsic importance of each neuron. 各ニューロンの合計重要度の計算方法の説明図。Explanatory drawing of the calculation method of the total importance of each neuron. 各ニューロンの合計重要度を示す図。The figure which shows the total importance of each neuron. 各ニューロンの計算コストを示す図。The figure which shows the calculation cost of each neuron. ニューロンのペアの相関値の計算方法の説明図。Explanatory drawing of the calculation method of the correlation value of the pair of neurons. ニューロンの選択方法の説明図。Explanatory drawing of the selection method of a neuron. ニューロンの選択方法の説明図。Explanatory drawing of the selection method of a neuron. ニューロンの選択方法の説明図。Explanatory drawing of the selection method of a neuron. ニューロンの選択方法の説明図。Explanatory drawing of the selection method of a neuron. 一実施形態による調整装置の構成図。The block diagram of the adjustment apparatus by one Embodiment.

以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の実施形態は例示であり、本発明を実施形態の内容に限定するものではない。また、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。   Hereinafter, exemplary embodiments of the present invention will be described with reference to the drawings. The following embodiment is an exemplification, and the present invention is not limited to the contents of the embodiment. Further, in each of the following drawings, components that are not necessary for the description of the embodiment will be omitted from the drawings.

図1は、本実施形態を説明するためのニューラルネットワークを示している。上述した様に、より精度の高い出力を得るためには、非常に多くのニューロンを使用してニューラルネットワークを構成するが、ここでは、本発明の原理の説明を簡略化するため、ニューロン#1〜#12の計12個のニューロンを有するニューラルネットワークを用いて説明する。このニューラルネットワークの出力に基づき判定する内容等は任意であるが、ここでは、一例として、ニューラルネットワークの出力に基づき人の行動内容を判定するものとする。この場合、図1のニューラルネットワークは、例えば、多数の人に装着したセンサ等の出力に基づき処理能力の高いデバイスにおいて学習が行われて生成される。また、本実施形態では、ニューラルネットワークの総てのニューロンの出力値に基づき人の行動を判定するものとする。したがって、ニューロン#1〜#12それぞれの出力値と人の行動との関係を示す判定情報についても、予め処理能力の高いデバイスにおいて行われた学習により決定されているものとする。そして、例えば、ある人に装着したセンサの出力が入力として与えられたときの、ニューロン#1〜#12それぞれの出力値と判定情報に基づき、当該人の行動が判定される。   FIG. 1 shows a neural network for explaining the present embodiment. As mentioned above, in order to obtain a more accurate output, a large number of neurons are used to construct a neural network, but here, in order to simplify the explanation of the principle of the present invention, neuron # 1 Description will be made using a neural network having a total of 12 neurons # 12 to # 12. Although the contents to be determined based on the output of this neural network are arbitrary, here, as an example, it is assumed that the action content of a person is determined based on the output of the neural network. In this case, the neural network in FIG. 1 is generated by learning in a device with high processing power based on the output of, for example, a sensor worn by a large number of people. In the present embodiment, human behavior is determined based on the output values of all the neurons of the neural network. Therefore, it is assumed that the determination information indicating the relationship between the output value of each of the neurons # 1 to # 12 and the action of a person is also determined in advance by learning performed in a device with high processing capability. Then, for example, the action of the person is determined based on the output value of each of the neurons # 1 to # 12 and the determination information when the output of the sensor worn on the person is given as an input.

本実施形態による調整装置は、携帯端末等の処理能力の低いデバイスでもニューラルネットワークを動作可能とさせるため、図1のニューラルネットワークのニューロンの数を減少させて、新たなニューラルネットワークを構成する。このため数Nをまず決定する。数Nは、元のニューラルネットワークのニューロンの数Mより小さい数であり、この数Nは、ニューラルネットワークを動作させる能力の低いデバイスの処理能力に基づき決定する。   The adjustment device according to the present embodiment configures a new neural network by reducing the number of neurons in the neural network of FIG. 1 in order to make the neural network operable even in a device with low processing capability such as a portable terminal. For this reason, the number N is determined first. The number N is a number smaller than the number M of neurons in the original neural network, and this number N is determined based on the processing capability of the less capable device to operate the neural network.

まず、本実施形態による調整装置での処理について説明する前に、本実施形態で使用する用語の定義を行う。あるニューロンに入力を直接与えるニューロンを当該ニューロンの「親ニューロン」と呼ぶものとする。つまり、あるパスの接続元のニューロンを、当該パスの接続先のニューロンの親ニューロンと呼ぶものとする。さらに、あるニューロンから、第1層のニューロン(図1では、ニューロン#1〜#4)までパスを、その方向とは逆向きに辿ったときに含まれる総てのニューロンを、当該ニューロンの「全親ニューロン」又は「総ての親ニューロン」と呼ぶものとする。具体的には、図2のニューロン#9の親ニューロンは、ニューロン#5、#6及び7であり、ニューロン#9の全親ニューロンは、ニューロン#1〜#7である。あるニューロンの全親ニューロンとは、当該あるニューロンの入力値に影響を与えるニューロンである。   First, before describing processing in the adjustment device according to the present embodiment, terms used in the present embodiment will be defined. A neuron that provides input directly to a neuron is referred to as the "parent neuron" of that neuron. That is, the neuron at the connection source of a certain path is called the parent neuron of the neuron at the connection destination of the path. Furthermore, the path from a certain neuron to the neuron in the first layer (neurons # 1 to # 4 in FIG. 1) is traced to all neurons included when the path is reversed. It is called "all parent neurons" or "all parent neurons". Specifically, parent neurons of neuron # 9 in FIG. 2 are neurons # 5, # 6 and 7 and all parent neurons of neuron # 9 are neurons # 1 to # 7. All parent neurons of a neuron are neurons that affect the input value of the neuron.

同様に、あるニューロンの出力を直接の入力とするニューロンを当該ニューロンの「子ニューロン」と呼ぶものとする。つまり、あるパスの接続先のニューロンを、当該パスの接続元のニューロンの子ニューロンと呼ぶものとする。さらに、あるニューロンから、最終層のニューロン(図1では、ニューロン#10〜#12)までパスを順方向に辿ったときに含まれる総てのニューロンを、当該ニューロンの「全子ニューロン」又は「総ての子ニューロン」と呼ぶものとする。具体的には、図3のニューロン#2の子ニューロンは、ニューロン#5及び7であり、ニューロン#2の全子ニューロンは、ニューロン#5、7及び#8〜#12である。あるニューロンの全子ニューロンは、当該あるニューロンの出力により、入力が影響を受けるニューロンである。   Similarly, a neuron whose output is an output of a certain neuron is called “child neuron” of that neuron. That is, the neuron to which a certain path is connected is referred to as a child neuron of the neuron from which the path is connected. Furthermore, all neurons included in the forward path from a certain neuron to the neurons in the last layer (neurons # 10 to # 12 in FIG. 1) are referred to as “all child neurons” or “ It is called "all child neurons". Specifically, the child neurons of neuron # 2 in FIG. 3 are neurons # 5 and 7, and all child neurons of neuron # 2 are neurons # 5, 7 and # 8 to # 12. All child neurons of a neuron are neurons whose input is affected by the output of the neuron.

本実施形態の調整装置は、各ニューロン#1〜#12それぞれについて「重要度」を求める。重要度は、例えば、線形回帰(Linear Regression)や、ランダムフォレスト(Random Forest)の様な、公知の任意のアルゴリズムにより求めることができる。なお、以下の説明においては、後述する合計重要度と区別するために、線形回帰等の公知のアルゴリズムで求めるニューロンの重要度を「固有重要度」と呼ぶものとする。図4は、本実施形態の説明で使用する、各ニューロン#1〜#12それぞれの固有重要度を示している。   The adjustment device of the present embodiment obtains “importance” for each of the neurons # 1 to # 12. The degree of importance can be determined by any known algorithm such as, for example, Linear Regression or Random Forest. In the following description, in order to distinguish the total importance described later, the importance of a neuron obtained by a known algorithm such as linear regression is called “unique importance”. FIG. 4 shows the unique importance of each of the neurons # 1 to # 12 used in the description of the present embodiment.

調整装置は、各ニューロン#1〜#12それぞれについて、固有重要度に基づき「合計重要度」Tを求める。あるニューロンの合計重要度は、当該ニューロンの全子ニューロンの固有重要度の和に所定の係数を乗じた値と、当該ニューロンの固有重要度との和として求める。ここで、所定の係数は1以下の整数である。例えば、あるニューロンの固有重要度をAとし、当該ニューロンの全子ニューロンの固有重要度の和をBとし、所定の係数をγとすると、当該ニューロンの合計重要度Tは、T=A+γBである。図5の表は、各ニューロンについて、その固有重要度と、全子ニューロンと、合計重要度を示している。なお、所定の係数γをここでは、0.01としている。例えば、ニューロン#6の全子ニューロンは、ニューロン#9、#11及び#12であるため、これらの固有重要度の和は、11.2+5.4+12.3=28.9である。したがって、係数α=0.01を乗ずると、その値は0.289であり、ニューロン#6の固有重要度4.3を加えることで、ニューロン#6の合計重要度は、4.589と計算される。図6は、各ニューロン#1〜#12の合計重要度を、各ニューロン#1〜#12に記載したものである。なお、ニューロンの合計重要度の計算方法は、本例の計算方法に限定されない。例えば、あるニューロンの合計重要度を、当該ニューロンの子ニューロンの合計重要度の和に所定の係数を乗じた値に、当該ニューロンの固有重要度を加えた値とすることもできる。なお、この場合には、最終層のニューロンから順に固有重要度を計算する。この様に、あるニューロンの合計重要度は、当該ニューロンの固有重要度と、当該ニューロンの全子ニューロンそれぞれの固有重要度が大きいほど大きくなる値とすれば、その計算方法は他の方法であっても良い。   The adjustment device determines “total importance” T based on the inherent importance for each of the neurons # 1 to # 12. The total importance of a certain neuron is obtained as a sum of a value obtained by multiplying the sum of the inherent importance of all child neurons of the neuron by a predetermined coefficient and the inherent importance of the neuron. Here, the predetermined coefficient is an integer of 1 or less. For example, if the intrinsic importance of a neuron is A, the sum of the intrinsic importance of all child neurons of the neuron is B, and the predetermined coefficient is γ, the total importance T of the neuron is T = A + γB . The table in FIG. 5 shows, for each neuron, its inherent importance, all child neurons, and the total importance. Here, the predetermined coefficient γ is 0.01. For example, since all child neurons of neuron # 6 are neurons # 9, # 11 and # 12, the sum of their inherent importance is 11.2 + 5.4 + 12.3 = 28.9. Thus, when multiplied by the coefficient α = 0.01, the value is 0.289, and the total importance of neuron # 6 is calculated to be 4.589 by adding the inherent importance 4.3 of neuron # 6 Be done. FIG. 6 shows the total importance of each of the neurons # 1 to # 12 in each of the neurons # 1 to # 12. The calculation method of the total importance of neurons is not limited to the calculation method of this example. For example, the total importance of a certain neuron may be a value obtained by adding the inherent importance of the relevant neuron to a value obtained by multiplying the sum of the total importance of the child neurons of the relevant neuron by a predetermined coefficient. In this case, the intrinsic importance is calculated sequentially from the neurons of the last layer. In this way, if the total importance of a certain neuron is a value that increases as the inherent importance of that neuron and the inherent importance of all child neurons of that neuron increase, the calculation method is another method. It is good.

また、本実施形態の調整装置は、各ニューロン#1〜#12それぞれについて、「計算コスト」Cを求める。計算コストCは、親ニューロンの計算コストの合計+1として計算される。図7に各ニューロ#1〜#12それぞれの計算コストを示す。例えば、ニューロン#1〜#4は、親ニューロンがないため、これらの計算コストは総て1となる。また、ニューロン#5の親ニューロンは、ニューロン#1から#4であり、その計算コストの合計は4である。したがって、ニューロン#5の計算コストは5となる。同様に、ニューロン#6及び#7の計算コストは、それぞれ、3及び4となる。さらに、ニューロン#9の親ニューロンは、ニューロン#5から#7であり、その計算コストの合計は12である。したがって、ニューロン#9の計算コストは13となる。なお、ニューロンの計算コストの計算方法は、本例の計算方法に限定されない。例えば、あるニューロンの計算コストを、当該ニューロンの全親ニューロンの数に1を加えた値とすることができる。この様に、あるニューロンの計算コストは、全親ニューロンの数が増えるほど大きくなる値とすれば、その計算方法は他の方法であっても良い。   Further, the adjustment device of the present embodiment obtains “calculation cost” C for each of the neurons # 1 to # 12. The computational cost C is calculated as the sum of the computational costs of the parent neuron + 1. FIG. 7 shows the calculation cost of each of the neuros # 1 to # 12. For example, since the neurons # 1 to # 4 do not have parent neurons, their calculation cost is all 1's. Also, the parent neuron of neuron # 5 is neurons # 1 to # 4, and the total calculation cost thereof is 4. Therefore, the computational cost of neuron # 5 is five. Similarly, the computational costs of neurons # 6 and # 7 are 3 and 4, respectively. Furthermore, the parent neuron of neuron # 9 is neurons # 5 to # 7, and its total computational cost is 12. Therefore, the computational cost of neuron # 9 is 13. In addition, the calculation method of the calculation cost of a neuron is not limited to the calculation method of this example. For example, the calculation cost of a certain neuron can be set to a value obtained by adding 1 to the number of all parent neurons of the neuron. As described above, if the calculation cost of a certain neuron increases as the number of all parent neurons increases, the calculation method may be another method.

さらに、本実施形態の調整装置は、ニューロン#1〜#12から2つを選択した組み合わせそれぞれについて「相関値」Corrを求める。例えば、図1のニューラルネットワークに任意の値を入力したときの、各ニューロン#1〜#12の出力を計算する。図8は、ニューラルネットワークに計n個の値を入力したときの、各ニューロン#1〜#12の出力を示している。ここで、各入力に対するニューロン#1の出力の平均値をE(X)とし、ニューロン#2の出力の平均値をE(Y)とする。また、各入力に対するニューロン#1の出力の2乗の平均値をE(X)とし、ニューロン#2の出力の2乗の平均値をE(Y)とする。さらに、各入力に対するニューロン#1の出力とニューロン#2の出力とを乗じた値の平均値をE(XY)とする。この場合、ニューロン#1と#2のペアの相関値Corrは、
Corr=M/N
M=(E(XY)−E(X)E(Y))
N=(E(X)−E(X)0.5(E(Y)−E(Y)0.5
として求めることができる。上記相関値の計算は、所謂、ピアソン相関係数であるが、例示であり、ニューロンのペアの相関値の計算方法も、本例の計算方法に限定されない。具体的には、入力に拘らず、似たような値を出力する2つのニューロンの相関値が高くなる様な任意の計算方法を相関値の計算に使用することができる。
Furthermore, the adjustment device of the present embodiment obtains the “correlation value” Corr for each combination of two selected from neurons # 1 to # 12. For example, the output of each neuron # 1 to # 12 when an arbitrary value is input to the neural network of FIG. 1 is calculated. FIG. 8 shows the outputs of the neurons # 1 to # 12 when a total of n values are input to the neural network. Here, the average value of the outputs of neuron # 1 for each input is E (X), and the average value of the outputs of neuron # 2 is E (Y). Also, let E (X 2 ) be the average of the squares of the outputs of neuron # 1 for each input, and E (Y 2 ) be the average of the squares of the outputs of neuron # 2. Further, let E (XY) be the average value of the outputs of the neuron # 1 and the outputs of the neuron # 2 for each input. In this case, the correlation value Corr of the pair of neurons # 1 and # 2 is
Corr = M / N
M = (E (XY)-E (X) E (Y))
N = (E (X 2) -E (X) 2) 0.5 (E (Y 2) -E (Y) 2) 0.5
It can be determined as Although the calculation of the correlation value is a so-called Pearson correlation coefficient, this is an example, and the calculation method of the correlation value of the pair of neurons is not limited to the calculation method of this example. Specifically, any calculation method that raises the correlation value of two neurons that output similar values regardless of the input can be used to calculate the correlation value.

調整装置は、全ニューロン#1〜#12から事前に決めた数Nを選択した組み合わせそれぞれについて評価値Evを以下の式(1)により求める。
Ev=ΣT−αΣC−βΣCorr (1)
なお、式(1)において、ΣTは、選択した組に含まれるN個のニューロンの合計重要度それぞれを積算することを示し、ΣCは、選択した組に含まれるN個のニューロンの計算コストそれぞれを積算することを示している。また、ΣCorrは、選択した組に含まれるN個のニューロンから2つを選択したペアそれぞれの相関値を積算することを示している。なお、α及びβは、それぞれ、計算コストの値と、相関値の値を、合計重要度の値に適合させるための調整係数であり、いずれも正の値である。
The adjustment device obtains an evaluation value Ev according to the following equation (1) for each combination in which the number N determined in advance is selected from all the neurons # 1 to # 12.
Ev = .SIGMA.T-.alpha..SIGMA.C-.beta..SIGMA.Corr (1)
In equation (1), ΣT indicates that the total importance of N neurons included in the selected set is integrated, and CC is the calculation cost of N neurons included in the selected set It shows that it integrates. Further, Cor Corr indicates that the correlation value of each of two pairs selected from N neurons included in the selected set is integrated. Note that α and β are adjustment coefficients for adjusting the value of the calculation cost and the value of the correlation value to the value of the total importance, and both are positive values.

例えば、Nを3とすると、調整装置は、12の組それぞれについて評価値Evを計算する。以下では、ニューロン#1、2及び4の組に対する評価値Evの計算について説明する。なお、αを0.2とし、βを3とする。まず、ニューロン#1、2及び4の合計重要度は、それぞれ、図6に示す様に、3.929、11.789、1.432である。したがって、式(1)のΣTは、17.15である。また、ニューロン#1、2及び4の計算コストは、それぞれ、図7に示す様に、1、1、1である。したがって、式(1)のΣCは3であり、α=0.2であるため、式(1)のαΣCは0.6となる。 For example, if N is 3, the adjustment device calculates an evaluation value Ev for each set of 12 C 3 . In the following, the calculation of the evaluation value Ev for the set of neurons # 1, 2 and 4 will be described. Note that α is 0.2 and β is 3. First, the total importance of neurons # 1, 2, and 4 is 3.929, 11.789, and 1.432 as shown in FIG. 6, respectively. Therefore, ΣT in equation (1) is 17.15. Further, the calculation cost of the neurons # 1, 2 and 4 is 1, 1, 1 as shown in FIG. Therefore, since ΣC in the equation (1) is 3, and α = 0.2, αΣC in the equation (1) is 0.6.

また、ニューロン#1と#2のペアの相関値が0.3であり、ニューロン#1と#4のペアの相関値が0.2であり、ニューロン#2と#4のペアの相関値が0.1であるものとすると、式(1)のΣCorrは0.6であり、β=3であるため、式(1)のβΣCorrは1.8となる。したがって、この場合、評価値Evは、17.15−0.6−1.8=14.75となる。   Also, the correlation value of the neuron # 1 and # 2 pair is 0.3, the correlation value of the neuron # 1 and # 4 pair is 0.2, and the correlation value of the neuron # 2 and # 4 pair is Assuming that the value is 0.1, Σ Corr of the formula (1) is 0.6 and β = 3, so ββ Corr of the formula (1) is 1.8. Therefore, in this case, the evaluation value Ev is 17.15-0.6-1.8 = 14.75.

調整装置は、この様に、M個のニューロンを有するニューラルネットワークの場合、の組それぞれについて評価値Evを計算し、最も評価値Evの大きい組のニューロンを残すと決定する。その後、調整装置は、残すと決定したニューロンに基づき、さらに残すべきニューロンを判定し、それ以外のニューロンについては削除を行う。以下では、N=4とし、評価値Evに基づき、図9の網掛けで示すニューロン#1、#3、#6及び#11を残すと決定した場合について、さらに残すべきニューロンと削除するニューロンをどの様に判定するかについて説明する。 In this way, in the case of a neural network having M neurons, the adjustment device calculates an evaluation value Ev for each set of M C N , and decides to leave a set of neurons having the largest evaluation value Ev. Thereafter, based on the neurons determined to be left, the coordinator determines which neurons should be left, and deletes the other neurons. In the following, it is assumed that N = 4, and it is determined based on the evaluation value Ev that neurons # 1, # 3, # 6 and # 11 shown by hatching in FIG. It will be described how to judge.

ニューロン#11は、その計算にニューロン#8及び#9の出力を必要とするため、ニューロン#8及び#9は残さなければならないと判定される。図10は、残さなければならないと判定されたニューロン#8及び#9も網掛けで示している。そうすると、ニューロン#8及び#9は、その計算のために、ニューロン#5及び#7を必要とし、ニューロン#5及び#7は、その計算のために、ニューロン#2及び#4を必要とするため、ニューロン#2、#4、#5及び#7も残さなければならないと判定される。図11は、残さなければならないと判定されたニューロンの総てを網掛けで示している。したがって、調整装置は、残すと決定したニューロン#1、#3、#6及び#11における計算には必要のないニューロン#10及び#12を削除すると判定する。したがって、削除後のニューラルネットワークは、図12に示す様になる。   Since neuron # 11 requires the outputs of neurons # 8 and # 9 for its calculation, it is determined that neurons # 8 and # 9 must be left. FIG. 10 also shows by shading the neurons # 8 and # 9 determined to be left. Then, neurons # 8 and # 9 require neurons # 5 and # 7 for the calculation, and neurons # 5 and # 7 require neurons # 2 and # 4 for the calculation Therefore, it is determined that the neurons # 2, # 4, # 5 and # 7 must also be left. FIG. 11 shows by hatching all the neurons determined to be left. Therefore, the coordinator determines to delete neurons # 10 and # 12 which are not necessary for calculation in neurons # 1, # 3, # 6 and # 11 determined to be left. Therefore, the neural network after deletion is as shown in FIG.

なお、図12においては、計9つのニューロンがニューラルネットワークに存在しているが、出力として実際に使用するニューロンは、評価値Evに基づき残すと決定したニューロン#1、#3、#6及び#11のみである。つまり、ニューロン#2、#4、#6、#7〜#9は、残すと決定したニューロン#1、#3、#6及び#11が計算を行える様に残したものであって、その出力値は判定のために使用しない。調整装置は、その後、学習を再度行って、残すと決定したニューロン#1、#3、#6及び#11の出力値と、人の行動との関係を示す判定情報を作成する。   In FIG. 12, a total of nine neurons are present in the neural network, but the neurons actually used as an output are determined to be left based on the evaluation value Ev. 11 only. That is, the neurons # 2, # 4, # 6, and # 7 to # 9 are left for the neurons # 1, # 3, # 6, and # 11 determined to be able to perform calculations, and the output thereof The value is not used for judgment. After that, the adjustment device performs learning again, and generates determination information indicating the relationship between the output values of the neurons # 1, # 3, # 6, and # 11 determined to be left and the action of the person.

この様にして生成した、例えば、図12に示すニューラルネットワークと判定情報を、例えば、スマートフォンの様な携帯型の端末装置に設定する。ここでは、説明の簡略化のため元のニューラルネットワークのニューロンの数を12としたが、実際には、非常に多くの数のニューロンが含まれており、ターゲットとする端末装置の処理能力に応じてNを設定することで、処理負荷の軽いニューラルネットワークを構成することができる。なお、実際に端末装置が使用するニューラルネットワークのニューロンの数は、Nより大きくなるため、Nはその増加分を考慮して設定する。また、本実施形態では、判定に使用するニューロンの数はNとなるため、ニューラルネットワークの出力に基づく判定処理も軽くなる。   For example, the neural network and the determination information generated as described above and shown in FIG. 12 are set in, for example, a portable terminal device such as a smartphone. Here, the number of neurons in the original neural network is set to 12 for simplification of the explanation, but in actuality, a very large number of neurons are included, depending on the processing capability of the target terminal device. By setting N, it is possible to construct a neural network with a light processing load. In addition, since the number of neurons in the neural network actually used by the terminal device becomes larger than N, N is set in consideration of the increase. Further, in the present embodiment, the number of neurons used for the determination is N, so that the determination processing based on the output of the neural network can be lightened.

なお、本実施形態では、式(1)で評価値Evの計算に相関値も使用したが、相関値を使用しない構成とすることもできる。つまり、評価値Evを以下の式(2)で求めることができる。
Ev=ΣT−αΣC (2)
式(2)の計算式によると、最初に残すと決定するN個のニューロンは、合計重要度が高く、かつ、計算コストの低いものとなる。言い換えると、合計重要度が低く、かつ、計算コストの高いニューロンは選択され難くなる。この様に、ニューラルネットワークにおいて、計算コストが高く、あまり重要ではないニューロンを排除し、計算コストが低く、重要なニューロンにより判定することで、処理能力の高いデバイスで生成した、精度が高いが処理負荷も重いニューラルネットワークから、精度の劣化を抑えつつ、処理負荷の低いニューラルネットワークを生成することができる。
In the present embodiment, the correlation value is also used to calculate the evaluation value Ev in the equation (1), but it may be configured not to use the correlation value. That is, the evaluation value Ev can be obtained by the following equation (2).
Ev = ΣT-αΣC (2)
According to the formula of equation (2), the N neurons determined to be left first have high total importance and low computational cost. In other words, neurons with low total importance and high computational cost become difficult to select. In this way, in the neural network, the computational cost is high, the less important neurons are excluded, the computational cost is low, and the determination is made by the important neurons, so that the processing is performed with high accuracy. It is possible to generate a neural network with low processing load while suppressing deterioration in accuracy from the neural network with heavy load.

なお、相関値を使用する式(1)においては、相関値が大きい2つのニューロンが選択され難くなる。相関値が大きい2つのニューロンの出力は似ており、相関値が大きい2つのニューロンのペアを残しても、その2つの出力は冗長である。したがって、式(1)により選択するN個のニューロンそれぞれの相関値が低くなる様にすることで、冗長な出力を行うニューロンを排除することができる。   In equation (1) using the correlation value, it becomes difficult to select two neurons having large correlation values. The outputs of two neurons with large correlation values are similar, and even if the two pairs of neurons with large correlation values are left, the two outputs are redundant. Therefore, by setting the correlation value of each of the N neurons to be selected by equation (1) to be low, it is possible to eliminate neurons that perform redundant output.

図13は、本実施形態による調整装置の構成図である。保持部10は、学習済のニューラルネットワークと、数Nを保持している。ここでニューラルネットワークを保持するとは、ニューラルネットワークを構成する各ニューロンと、それらのパスによる接続状態と、各パスの重みについての情報を保持していることを意味する。重要度計算部11は、保持部が保持しているニューラルネットワークに基づき各ニューロンの固有重要度を計算し、さらに、各ニューロンの固有重要度に基づき各ニューロンの合計重要度を計算する。コスト計算部12は、保持部が保持しているニューラルネットワークに基づき各ニューロンの計算コストを計算する。処理部14は、各ニューロンの固有重要度と計算コストに基づき、式(2)の評価値Evが最大となるN個のニューロンを決定する。そして、決定したN個のニューロンと、当該N個のニューロンの計算に必要なニューロンを残し、それ以外のニューロンを削除して、処理能力の低いデバイスで使用できるニューラルネットワークを生成する。また、生成したニューラルネットワークの、決定したN個のニューロンの出力に基づき判定を行うための判定情報を学習により決定する。この判定情報も、処理能力の低いデバイスで生成したニューラルネットワークと共に使用される。なお、上述した様に、式(2)の評価値Evではなく、式(1)の評価値Evを使用することもできる。この場合、図13に示す様に、調整装置には、相関計算部13を設ける。相関計算部13は、2つのニューロンのペアそれぞれの相関値を計算する。   FIG. 13 is a block diagram of the adjusting device according to the present embodiment. The holding unit 10 holds the number N of learned neural networks. Here, holding the neural network means holding information on each neuron constituting the neural network, the connection state by these paths, and the weight of each path. The degree-of-importance calculation unit 11 calculates the inherent importance of each neuron based on the neural network held by the holding unit, and further calculates the total importance of each neuron based on the inherent importance of each neuron. The cost calculator 12 calculates the calculation cost of each neuron based on the neural network held by the holder. The processing unit 14 determines N neurons for which the evaluation value Ev of Equation (2) is maximized, based on the inherent importance of each neuron and the calculation cost. Then, leaving the determined N neurons and neurons necessary for the calculation of the N neurons, the other neurons are deleted to generate a neural network that can be used in a low-throughput device. Further, determination information for making a determination based on the outputs of the determined N neurons of the generated neural network is determined by learning. This determination information is also used together with the neural network generated by the low-throughput device. As described above, not the evaluation value Ev of Equation (2) but the evaluation value Ev of Equation (1) can be used. In this case, as shown in FIG. 13, the adjustment device is provided with a correlation calculation unit 13. The correlation calculation unit 13 calculates the correlation value of each of two pairs of neurons.

なお、本発明による調整装置は、コンピュータを上記調整装置として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。   The adjusting device according to the present invention can be realized by a program that causes a computer to operate as the adjusting device. These computer programs are stored in a computer readable storage medium or can be distributed via a network.

11:重要度計算部、12:コスト計算部、13:相関計算部、14:処理部   11: importance degree calculation unit, 12: cost calculation unit, 13: correlation calculation unit, 14: processing unit

Claims (10)

第1ニューラルネットワークを調整して第2ニューラルネットワークを生成する調整装置であって、
前記第1ニューラルネットワークの各ニューロンの重要度を示す第1の値を求める第1手段と、
前記第1ニューラルネットワークの各ニューロンの計算コストを示す第2の値を求める第2手段と、
前記第1ニューラルネットワークの総てのニューロンから所定数のニューロンを選択した組それぞれについて、当該組に含まれるニューロンそれぞれの前記第1の値と前記第2の値とに基づき評価値を算出し、前記評価値に基づき1つの組を選択する選択手段と、
前記選択した組に含まれる前記所定数のニューロンと、前記選択した組に含まれる前記所定数のニューロンが計算を行うのに必要なニューロンと、を残し、それ以外のニューロンを前記第1ニューラルネットワークから削除することで、前記第2ニューラルネットワークを生成する生成手段と、
を備えていることを特徴とする調整装置。
An adjusting device for adjusting a first neural network to generate a second neural network, comprising:
A first means for obtaining a first value indicating importance of each neuron of the first neural network;
A second means for determining a second value indicative of the computational cost of each neuron of the first neural network;
An evaluation value is calculated based on the first value and the second value of each of the neurons included in the set, for each set in which a predetermined number of neurons are selected from all the neurons of the first neural network, Selection means for selecting one set based on the evaluation value;
The predetermined number of neurons included in the selected set and the number of neurons required for the predetermined number of neurons included in the selected set to perform calculations, leaving the other neurons as the first neural network Generating means for generating the second neural network by deleting the second neural network.
The adjustment apparatus characterized by having.
組の前記評価値は、当該組に含まれるニューロンそれぞれの前記第1の値が大きい程、大きくなり、当該組に含まれるニューロンそれぞれの前記第2の値が大きい程、小さくなる値であることを特徴とする請求項1に記載の調整装置。   The evaluation value of the set is larger as the first value of each of the neurons included in the set is larger, and smaller as the second value of each of the neurons included in the set is larger. The adjusting device according to claim 1, characterized in that 前記選択手段は、前記評価値が最大となる組を選択することを特徴とする請求項2に記載の調整装置。   The adjustment device according to claim 2, wherein the selection means selects a set that maximizes the evaluation value. ニューロンの前記第1の値は、当該ニューロンの重要度が大きくなると、大きくなる値であることを特徴とする請求項1から3のいずれか1項に記載の調整装置。   The controller according to any one of claims 1 to 3, wherein the first value of a neuron is a value that increases as the degree of importance of the neuron increases. ニューロンの前記第1の値は、当該ニューロンの子ニューロンの重要度が大きくなると、大きくなる値であることを特徴とする請求項1から4のいずれか1項に記載の調整装置。   The adjusting device according to any one of claims 1 to 4, wherein the first value of a neuron is a value which increases as the degree of importance of a child neuron of the neuron increases. ニューロンの前記第2の値は、当該ニューロンの総ての親ニューロンの数が多くなると大きくなる値であることを特徴とする請求項1から5のいずれか1項に記載の調整装置。   The adjusting device according to any one of claims 1 to 5, wherein the second value of a neuron is a value that increases as the number of parent neurons in the neuron increases. 前記第1ニューラルネットワークの2つのニューロンのペアそれぞれについて、ペアに含まれる2つのニューロンの相関を示す第3の値を求める第3手段をさらに備えており、
前記選択手段は、組の前記評価値の算出に、当該組に含まれる前記所定数のニューロンから選択した2つのニューロンのペアそれぞれの前記第3の値を使用することを特徴とする請求項1から6のいずれか1項に記載の調整装置。
The method further comprises a third means for determining, for each of the two pairs of neurons of the first neural network, a third value indicating the correlation of the two neurons included in the pair,
The selection means is characterized in that the third value of each of two pairs of neurons selected from the predetermined number of neurons included in the set is used to calculate the evaluation value of the set. The adjustment apparatus of any one of to 6.
組の前記評価値は、当該組に含まれるニューロンのペアの前記第3の値が大きい程、小さくなることを特徴とする請求項7に記載の調整装置。   The adjusting device according to claim 7, wherein the evaluation value of the set decreases as the third value of the pair of neurons included in the set increases. 請求項1から8のいずれか1項に記載の調整装置が生成した前記第2ニューラルネットワークを使用することを特徴とするデバイス。   A device using the second neural network generated by the adjustment device according to any one of claims 1 to 8. 請求項1から8のいずれか1項に記載の調整装置としてコンピュータを機能させることを特徴とするプログラム。   A program that causes a computer to function as the adjustment device according to any one of claims 1 to 8.
JP2017183502A 2017-09-25 2017-09-25 Neural network regulators, devices and programs Active JP6754343B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017183502A JP6754343B2 (en) 2017-09-25 2017-09-25 Neural network regulators, devices and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017183502A JP6754343B2 (en) 2017-09-25 2017-09-25 Neural network regulators, devices and programs

Publications (2)

Publication Number Publication Date
JP2019061338A true JP2019061338A (en) 2019-04-18
JP6754343B2 JP6754343B2 (en) 2020-09-09

Family

ID=66178201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017183502A Active JP6754343B2 (en) 2017-09-25 2017-09-25 Neural network regulators, devices and programs

Country Status (1)

Country Link
JP (1) JP6754343B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111954206A (en) * 2019-05-17 2020-11-17 株式会社Ntt都科摩 Terminal and base station

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991264A (en) * 1995-09-20 1997-04-04 Hitachi Medical Corp Method and device for optimizing neural network structure
JP2000259598A (en) * 1999-03-12 2000-09-22 Fuji Electric Co Ltd Optimization learning method for neural network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991264A (en) * 1995-09-20 1997-04-04 Hitachi Medical Corp Method and device for optimizing neural network structure
JP2000259598A (en) * 1999-03-12 2000-09-22 Fuji Electric Co Ltd Optimization learning method for neural network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
押野隆弘 ほか: "誤差逆伝搬学習における中間層ユニットの逐次削減法", 電子情報通信学会論文誌, vol. 第J76-D-II巻,第7号, JPN6020028244, 25 July 1993 (1993-07-25), pages 1414 - 1424, ISSN: 0004318550 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111954206A (en) * 2019-05-17 2020-11-17 株式会社Ntt都科摩 Terminal and base station
CN111954206B (en) * 2019-05-17 2024-04-09 株式会社Ntt都科摩 Terminal and base station

Also Published As

Publication number Publication date
JP6754343B2 (en) 2020-09-09

Similar Documents

Publication Publication Date Title
CN112511342B (en) Network slicing method and device, electronic equipment and storage medium
Kameda et al. Braess-like paradoxes in distributed computer systems
CN113572697A (en) Load balancing method based on graph convolution neural network and deep reinforcement learning
CN107292326A (en) The training method and device of a kind of model
Peng et al. A fast algorithm to find all-pairs shortest paths in complex networks
Mukherjee et al. Development of an ensemble decision tree-based power system dynamic security state predictor
JP2012518834A (en) Method and system for calculating website visitor ratings
CN115085196B (en) Power load predicted value determination method, device, equipment and computer readable medium
Yeh Methodology for the reliability evaluation of the novel learning-effect multi-state flow network
JP2019061338A (en) Regulating device of neural network, device, and program
CN113054651A (en) Network topology optimization method, device and system
CN104598624A (en) User class determination method and device for microblog user
CN109657801A (en) Shunt method, device and the readable storage medium storing program for executing of recommender system
WO2018135515A1 (en) Information processing device, neural network design method, and recording medium
CN102970241A (en) Multipath load balancing method and multipath load balancing device
US11188454B2 (en) Reduced memory neural network training
CN110750945A (en) Chip simulation method and device, simulation chip and related product
Rodionov et al. Framework for biologically inspired graph optimization
Raamakirtinan et al. Identifying influential spreaders in complex networks based on weighted mixed degree decomposition method
CN113064554B (en) Optimal storage node matching method, device and medium based on distributed storage
KR20190118766A (en) Constructing method of classification restricted boltzmann machine and computer apparatus for classification restricted boltzmann machine
CN114251075B (en) Reservoir exploitation scheme determination method, device and equipment based on multi-target parameters
Akbas et al. Social network generation and role determination based on smartphone data
Nasir et al. Fast trust computation in online social networks
CN109840790B (en) User loss prediction method and device and computer equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200629

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200821

R150 Certificate of patent or registration of utility model

Ref document number: 6754343

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150