JP2019075003A - Approximate calculation device, approximate calculation method, and program - Google Patents
Approximate calculation device, approximate calculation method, and program Download PDFInfo
- Publication number
- JP2019075003A JP2019075003A JP2017202006A JP2017202006A JP2019075003A JP 2019075003 A JP2019075003 A JP 2019075003A JP 2017202006 A JP2017202006 A JP 2017202006A JP 2017202006 A JP2017202006 A JP 2017202006A JP 2019075003 A JP2019075003 A JP 2019075003A
- Authority
- JP
- Japan
- Prior art keywords
- power
- calculation
- equation
- fractional part
- approximate
- 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
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
本発明は、近似計算装置、近似計算方法及びプログラム、特に混合ガウスモデルを用いたベイズ識別に好適な近似計算装置、近似計算方法及びプログラムに関する。 The present invention relates to an approximate calculation apparatus, an approximate calculation method, and a program, and more particularly to an approximate calculation apparatus, an approximate calculation method, and a program suitable for Bayesian discrimination using a mixed Gaussian model.
筋電義手やブレインマシンインターフェース等において生体信号のパターン識別が用いられるが、これには混合ガウスモデル(Gaussian Mixture Model;GMM)に基づくベイズ識別が有効であることが知られているが、GMMの演算をリアルタイムで処理しようとすると実装コストが膨大となるという問題がある。 Pattern identification of biosignals is used in EMG hands and brain machine interfaces etc. For this purpose, it is known that Bayesian discrimination based on Gaussian mixture model (GMM) is effective. There is a problem that the implementation cost becomes huge when trying to process an operation in real time.
一方、リアルタイム処理においてべき乗の計算を行う場合がある。
例えば、特許文献1には、混合ガウスモデルを適用したニューラルネットワークに生体信号を入力し、電動義手を操作することが記載されている。混合ガウスモデルで事後確率の計算を行う際、指数関数を含む計算を行う。
On the other hand, power may be calculated in real time processing.
For example,
リアルタイム処理においてべき乗の計算を行う場合、べき乗の計算を高速に行う必要がある。べき乗の計算を比較的簡単な計算に置き換えることができれば、計算の高速化を図ることができ、また、比較的容易に計算のハードウェア実装を行える。 When performing the calculation of exponentiation in real time processing, it is necessary to calculate the exponentiation fast. If the calculation of the exponentiation can be replaced by a relatively simple calculation, the calculation can be accelerated, and the hardware implementation of the calculation can be performed relatively easily.
本発明は、べき乗の計算を比較的簡単な計算に置き換えることができる近似計算装置、近似計算方法およびプログラムを提供する。 The present invention provides an approximate calculation device, an approximate calculation method, and a program that can replace the calculation of powers with relatively simple calculations.
本発明の第1の態様によれば、近似計算装置は、2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する指数分離部と、前記小数部分について2のべき乗を直線近似で計算する小数部分計算部と、前記整数部分についての2のべき乗の計算結果と、前記小数部分計算部による前記小数部分についての2のべき乗の計算結果とを乗算する乗算部と、を備える。 According to a first aspect of the present invention, an approximate calculator separates an exponent of a real power of 2 into an integral part and a fractional part between 0 and 1 and a power of 2 for the fractional part. A fractional part calculation unit for calculating by linear approximation, and a multiplication unit for multiplying the calculation result of power of 2 for the integer part and the calculation result of power of 2 for the fraction part by the fractional part calculation unit Prepare.
前記整数部分について2のべき乗をシフト演算で計算する整数部分計算部を備えるようにしてもよい。 The integer part calculator may be provided to calculate the power of 2 for the integer part by a shift operation.
前記小数部分計算部は、前記0以上1未満の区間を分割した区間毎の直線近似にて前記小数部分についての2のべき乗を計算するようにしてもよい。 The fractional part calculation unit may calculate a power of 2 with respect to the fractional part by linear approximation for each section obtained by dividing the section between 0 and 1 inclusive.
前記小数部分計算部は、前記0以上1未満の区間を分割した区間における2のべき乗の両端を結んだ線分にて前記直線近似を行うようにしてもよい。 The fractional part calculation unit may perform the linear approximation with a line segment connecting both ends of the power of 2 in a section obtained by dividing the section between 0 and 1 inclusive.
ネイピア数の実数乗を2の実数乗に換算する底変換部を備えるようにしてもよい。 A bottom conversion unit may be provided to convert the Napier's number to the real power of 2.
前記底変換部は、混合ガウスモデルに基づくベイズ識別におけるネイピア数の実数乗を2の実数乗に換算するようにしてもよい。 The base conversion unit may convert the power of Napier's number to a real power of 2 in Bayesian discrimination based on a mixed Gaussian model.
本発明の第2の態様によれば、近似計算方法は、2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する指数分離ステップと、前記小数部分について2のべき乗を直線近似で計算する小数部分計算ステップと、前記整数部分についての2のべき乗の計算結果と、前記小数部分計算ステップでの前記小数部分についての2のべき乗の計算結果とを乗算する乗算ステップと、を含む。 According to a second aspect of the present invention, the approximation calculation method comprises an exponent separation step of separating an exponent of real power of 2 into an integral part and a fractional part of 0 or more and 1 and a power of 2 for the fractional part. A multiplication step of multiplying a fractional part calculation step calculated by linear approximation, a multiplication result of power of 2 for the integer part, and a calculation result of power of 2 for the fraction part in the fractional part calculation step; including.
本発明の第3の態様によれば、プログラムは、プログラミング可能な装置に2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する指数分離ステップと、前記小数部分について2のべき乗を直線近似で計算する小数部分計算ステップと、前記整数部分についての2のべき乗の計算結果と、前記小数部分計算ステップでの前記小数部分についての2のべき乗の計算結果とを乗算する乗算ステップと、を実行させるためのプログラムである。 According to a third aspect of the present invention, a program comprises an exponential separation step of separating into a programmable device an exponent of a real power of two into an integral part and a fractional part between 0 and 1 and 2 for the fractional part. Multiplication of the fractional part calculation step of calculating the power of the linear approximation, multiplication of the calculation result of the power of 2 for the integer part, and the calculation result of the power of 2 for the fraction part in the fractional part calculation step And a program for executing the steps.
本発明によれば、べき乗の計算を比較的簡単な計算に置き換えることができる。 According to the present invention, the calculation of the power can be replaced by a relatively simple calculation.
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本発明の実施形態に係る近似計算装置の機能構成を示す概略ブロック図である。図1に示すように、近似計算装置10は、底変換部11と、指数分離部12と、整数部分計算部13と、小数部分計算部14と、乗算部15とを備える。
Hereinafter, embodiments of the present invention will be described, but the following embodiments do not limit the invention according to the claims. Moreover, not all combinations of features described in the embodiments are essential to the solution of the invention.
FIG. 1 is a schematic block diagram showing a functional configuration of the approximate calculation device according to the embodiment of the present invention. As shown in FIG. 1, the
近似計算装置10は、べき乗の近似計算を行う。
底変換部11は、ネイピア数(e=2.71828・・・)の実数乗を2の実数乗に換算する。例えば、底変換部11は、混合ガウスモデル(Gaussian Mixture Model;GMM)に基づくベイズ識別におけるネイピア数の実数乗を2の実数乗に換算する。
但し、近似計算装置10が近似計算を行うべき乗は、底がネイピア数のものに限定されない。例えば、近似計算装置10が、底が10のべき乗の入力を受け、底変換部11が、底が10のべき乗を底が2のべき乗に換算するようにしてもよい。あるいは、近似計算装置10が、底が元々2であるべき乗の入力を受けて近似計算を行うようにしてもよい。
The
The
However, the power to which the
指数分離部12は、2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する。
整数部分計算部13は、指数の整数部分について2のべき乗をシフト演算(ビットシフト)で計算する。
小数部分計算部14は、指数の小数部分について2のべき乗を直線近似で計算する。
小数部分計算部14が、0以上1未満の区間を分割した区間毎の直線近似にて、指数の小数部分についての2のべき乗を計算するようにしてもよい。さらには、小数部分計算部14が、0以上1未満の区間を分割した区間における2のべき乗の両端を結んだ線分にて直線近似を行うようにしてもよい。
The
The integer
The fractional
The fractional
乗算部15は、整数部分計算部13による指数の整数部分についての2のべき乗の計算結果と、小数部分計算部14による小数部分についての2のべき乗の計算結果とを乗算する。
これにより、近似計算装置10は、べき乗の計算を四則演算およびシフト演算といった比較的簡単な計算に置き換えることができる。
近似計算装置10が行うべき乗の近似計算について、式を参照して説明する。
The
Thereby, the
The approximate calculation of powers performed by the
混合ガウスモデルにおいて、特徴ベクトルxをD次元の実数ベクトルとすると、特徴ベクトルxの生起確率密度関数f(x)は、式(1)のように示される。 In the mixed Gaussian model, assuming that the feature vector x is a D-dimensional real vector, the occurrence probability density function f (x) of the feature vector x is expressed by equation (1).
ここで、c(cは、1≦c≦Cの正整数)は、各クラスを識別する識別番号であり、Cはクラス数を示す。m(mは、1≦m≦Mcの正整数)は、クラスcを構成するコンポーネントを識別する識別番号であり、Mcは、クラスcを構成するコンポーネントの数を示す。混合ガウスモデルでは、正規分布(ガウス分布)の重ね合わせによってクラスが構成されており、ここでいうコンポーネントは、クラスを構成する正規分布である。
また、μc,m、Σc,m、γc,m(0≦γc,m≦1)は、それぞれ、クラスcのコンポーネントmの平均ベクトル、分散共分散行列、他のコンポーネントとの混合比を示す。全てのクラスcの全てのコンポーネントmの混合比γc,mの合計は1、すなわち、式(2)を満たすものとする。
Here, c (c is a positive integer of 1 ≦ c ≦ C) is an identification number for identifying each class, and C indicates the number of classes. m (m is a positive integer of 1 ≦ m ≦ M c ) is an identification number for identifying a component that constitutes class c, and M c indicates the number of components that constitute class c. In the mixed Gaussian model, a class is configured by superposition of normal distributions (Gaussian distributions), and the components referred to here are normal distributions that constitute the class.
Also, μ c, m , c c, m , γ c, m (0 ≦ γ c, m ≦ 1) are respectively the average vector of the component m of class c, the variance-covariance matrix, and the mixture with other components Indicates the ratio. The sum of the mixing ratios γ c, m of all components m of all classes c is assumed to be 1, ie, to satisfy the equation (2).
また、正規分布M(x;μc,m,Σc,m)は、式(3)のように示される。 Also, the normal distribution M (x; μ c, m , c c, m ) is expressed as in equation (3).
ここで、指数関数expは、ネイピア数eのべき乗を示す。Dは、上記のように特徴ベクトルの次元数を示す。
指数zc,mは、式(4)のように示される。
Here, the exponential function exp indicates the power of the Napier number e. D indicates the number of dimensions of the feature vector as described above.
The exponent z c, m is given by equation (4).
ここでは、上付きの「T」は、行列またはベクトルの転置を示す。上付きの「−1」は逆行列を示す。
特徴ベクトルxをクラスに分類する際の、クラスcのコンポーネントmに対する事後確率は式(5)のように示される。
Here, the superscript "T" indicates transpose of a matrix or a vector. The superscript “−1” indicates the inverse matrix.
The posterior probability with respect to the component m of the class c when classifying the feature vector x into classes is expressed as equation (5).
正規分布を指数関数を用いて表記すると、式(5)は式(6)のように示される。 Expressing the normal distribution using an exponential function, equation (5) is expressed as equation (6).
式(6)における指数関数expの定義域は[−∞,0]と広く、これら指数関数の演算に時間を要することが考えられる。
そこで、指数関数を高速かつ高精度に演算できる近似式を構築する。特に、ハードウェア実装を考慮して近似式を構築する。
まず、指数関数expを2のべき乗で表現すると式(7)のように示される。
The domain of the exponential function exp in Equation (6) is as wide as [−∞, 0], and it is considered that it takes time to calculate these exponential functions.
Therefore, we construct an approximate expression that can calculate the exponential function at high speed and with high accuracy. In particular, the approximation formula is constructed in consideration of the hardware implementation.
First, when the exponential function exp is expressed by a power of 2, it is expressed as Expression (7).
ここで、kは式8のように示される定数である。
Here, k is a constant shown as
式(7)を用いた指数関数expから2のべき乗への換算は、底変換部11が行う処理の例に該当する。
式(7)のzkを整数部分と小数部分とに分けると、式(9)のように示される。
The conversion from the exponential function exp to the power of 2 using the equation (7) corresponds to an example of processing performed by the
If zk of equation (7) is divided into the integer part and the decimal part, it is represented as equation (9).
ここで、αはzkの整数部分であり、式(10)のように示される。 Here, α is an integer part of z k and is expressed as equation (10).
関数floorは、整数への切り捨てを示す。具体的には関数floorは、引数を超えない最大の整数を示す。
式(9)のβはzkの小数部分であり、式(11)のように示される。
The function floor indicates truncation to an integer. Specifically, the function floor indicates the largest integer that does not exceed the argument.
Β in equation (9) is a fractional part of z k and is expressed as equation (11).
βの定義域は[0,1)、すなわち0≦β<1である。指数zkを整数部分αと小数部分βとに分離する処理は、指数分離部12の処理の例に該当する。
ここで、βの定義域を等間隔にn分割して、区間毎に2βをテイラー展開に基づいて線形近似する。2次以上の項を無視できると仮定すると、tの周りにおける2βのテイラー展開は、式(12)のように示される。
The domain of β is [0, 1), that is, 0 ≦ β <1. The process of separating the exponent zk into the integral part α and the decimal part β corresponds to an example of the process of the
Here, the domain of β is divided into n at equal intervals, and 2 β is linearly approximated based on the Taylor expansion for each section. Assuming that the second and higher order terms can be ignored, the Taylor expansion of 2 β around t is expressed as equation (12).
また、βの定義域[0,1)を等間隔にn分割した各区間は、式(13)のように示される。 Further, each section obtained by dividing the domain [0, 1) of β into n at equal intervals is expressed by equation (13).
すなわち、(l−1)/n≦β<l/nであり、lは、1≦l≦nの正整数である。
各区間の中間点をtn,lとすると、式(14)のように示される。
That is, (l−1) / n ≦ β <l / n, and l is a positive integer of 1 ≦ l ≦ n.
Assuming that the middle point of each section is t n, l , it is expressed as Expression (14).
中間点tn,lの周りにおける2βのテイラー展開は、式(15)のように示される。 The Taylor expansion of 2 β around the midpoint t n, l is shown as equation (15).
式(15)は、式(16)のように示すことができる。 Equation (15) can be expressed as equation (16).
ここで、an,lは、式(17)のように示される。 Here, a n, l is expressed as in equation (17).
また、bn,lは、式(18)のように示される。式(16)はβの一次関数であり、βを直線近似する。 Also, b n, l is expressed as in equation (18). Equation (16) is a linear function of β, which linearly approximates β.
式(16)による2βの近似を用いて、exp(z)を式(19)のように近似できる。 Exp (z) can be approximated as equation (19) using the approximation of 2 β according to equation (16).
さらに、係数an,lおよびbn,lを簡単化する。
式(17)に式(14)を代入すると、係数an,lは式(20)のように示される。
Furthermore, the coefficients a n, l and b n, l are simplified.
Substituting equation (14) into equation (17), coefficients a n, l are expressed as equation (20).
また、式(18)に式(14)を代入すると、係数bn,lは式(21)のように示される。 Further, when equation (14) is substituted into equation (18), the coefficient b n, l is expressed as equation (21).
式(20)および式(21)の「(2l−1)/2n」(=tn,l)、および、2の自然対数「ln2」を近似式で置き換える。
nの値を大きくしていくと、(2l−1)/2nは、1/nに収束する。これは、式(22)のように示される。
The equation (20) and equation (21) “(2 1 −1) / 2 n” (= t n, 1 ) and the natural logarithm “2” 2 “
As the value of n is increased, (21-1) / 2n converges to 1 / n. This is shown as equation (22).
また、nの値を大きくしていくと、(1−2−1/n)nは、ln2に収束する。これは式(23)のように示される。 Also, as the value of n is increased, (1-2-1 / n ) n converges to ln2. This is shown as equation (23).
式(22)に基づき、係数an,lおよびbn,lの(2l−1)/2nを1/nに置き換える。また、式(23)に基づき、係数an,lおよびbn,lのln2を(1−2−1/n)nに置き換える。
係数an,lから置き換え後の係数a’n,lは、式(24)のように示される。
Based on equation (22), replace (21-1) / 2n of the coefficients a n, l and b n, l with 1 / n. Also, based on equation (23), ln2 of the coefficients an , l and bn , l is replaced with (1-2-1 / n ) n.
Coefficients a n, coefficients after the replacement from the l a 'n, l is expressed by the equation (24).
係数bn,lから置き換え後の係数b’n,lは、式(25)のように示される。 Coefficients b n, coefficients after the replacement from l b 'n, l is expressed by the equation (25).
式(16)の係数an,lおよびbn,lを係数a’n,lおよびb’n,lで置き換えて、2βの近似は式(26)のように示される。 Substituting coefficients a n, l and b n, l of equation (16) with coefficients a ' n, l and b' n, l , an approximation of 2 β is shown as equation (26).
式(26)は、2βの示す曲線をn分割した各区間の曲線を、両端を結んだ直線で近似している。
図2は、式(26)による2βの近似の例を示す図である。図2は、2βの定義域を2分割する場合の例を示している。図2のグラフの横軸はβの値を示し、縦軸は2βの値を示す。
Expression (26) approximates the curve of each section obtained by dividing the curve represented by 2 β by n, by a straight line connecting both ends.
FIG. 2 is a diagram showing an example of approximation of 2 β by equation (26). FIG. 2 shows an example in which the domain of 2 β is divided into two. The horizontal axis of the graph of FIG. 2 shows the value of β, and the vertical axis shows the value of 2 β .
線L11は、2βを示す。点P11、P12、P13は、それぞれ、βの定義域を分割した区間の端部と線L11との交点を示す。点P11は、β=0の直線と線L11との交点を示す。点P12は、β=0.5の直線と線L11との交点を示す。点P13は、β=1の直線と線L11との交点を示す。
線L12a、線L12bは、それぞれβの区間[0,0.5)、[0.5,1)にて線L11を近似する。線L12aは、点P11と点P12とを結んだ直線(線分)である。線L12bは、点P12と点P13とを結んだ直線(線分)である。
このように、式(26)によれば、直感的に把握しやすい態様でβ2を近似することができる。
The line L11 shows 2 β . Points P11, P12, and P13 indicate points of intersection of the end of the section obtained by dividing the definition area of β and the line L11. A point P11 indicates an intersection point of the straight line of β = 0 and the line L11. A point P12 indicates an intersection point of the straight line of β = 0.5 and the line L11. A point P13 indicates an intersection point of the β = 1 straight line and the line L11.
The line L12a and the line L12b approximate the line L11 in the sections [0, 0.5) and [0.5, 1) of β, respectively. The line L12a is a straight line (line segment) connecting the point P11 and the point P12. The line L12 b is a straight line (line segment) connecting the point P12 and the point P13.
Thus, according to equation (26), β 2 can be approximated in a manner that is intuitively easy to grasp.
式(26)による近似を指数関数expの近似に適用する。具体的には、式(19)の係数an,lおよびbn,lを係数a’n,lおよびb’n,lで置き換えて、指数関数expの近似は式(27)のように示される。 The approximation by equation (26) is applied to the approximation of the exponential function exp. Specifically, the coefficients a n, l and b n, l in the equation (19) are replaced by the coefficients a ' n, l and b' n, l and the approximation of the exponential function exp is given by the equation (27) Indicated.
式(27)における2αは、二進数表現におけるシフト演算(ビットシフト)で演算できる。また、a’n,lβ+b’n,lは、βの一次関数である。このように、式(27)によれば、指数関数expをシフト演算と線形方程式で近似することができる。簡単な処理で演算を行える点で、式(27)によれば、指数関数expの演算を高速化することができる。特に式(27)は、シフト演算を用いる点、および、一次関数といった簡単な関数を用いる点でハードウェア実装が容易である。式(27)をハードウェア実装することで、指数関数expの演算を高速化することができる。
式(27)の「2α」の計算は、整数部分計算部13の処理の例に該当する。式(27)の「a’n,lβ+bn,l」の計算は、小数部分計算部14の処理の例に該当する。これらの計算結果の乗算は、乗算部15の処理の例に該当する。
The 2 alpha in the formula (27) can be calculated by a shift operation in binary representation (bit shift). Further, a ′ n, l β + b ′ n, l is a linear function of β. Thus, according to equation (27), the exponential function exp can be approximated by a shift operation and a linear equation. According to equation (27), the calculation of the exponential function exp can be sped up because the calculation can be performed by a simple process. In particular, equation (27) is easy to implement in hardware in that it uses a shift operation and a simple function such as a linear function. By implementing Equation (27) in hardware, it is possible to speed up the operation of the exponential function exp.
The calculation of “2 α ” in Expression (27) corresponds to an example of the processing of the integer
次に、指数関数expの近似を混合ガウスモデルに適用する。
正規分布を示す式(3)に式(27)の近似を導入して、正規分布は式(28)のように近似される。
Next, an approximation of the exponential function exp is applied to the mixed Gaussian model.
Introducing the approximation of equation (27) into equation (3) indicating a normal distribution, the normal distribution is approximated as equation (28).
ここで、Anは実数定数であり、式(29)のように示される。 Here, An is a real constant, and is expressed as in equation (29).
式(28)に示す正規分布の近似Mapp(x;μc,m,Σc,m)を近似ガウス分布(または近似正規分布)と称する。
近似ガウス分布Mapp(x;μc,m,Σc,m)について、式(30)が成り立つ。
The approximation M app (x; μ c, m , c c, m ) of the normal distribution shown in equation (28) is referred to as an approximate Gaussian distribution (or an approximate normal distribution).
Equation (30) holds for the approximate Gaussian distribution M app (x; μ c, m , Σ c, m ).
また、近似ガウス分布Mapp(x;μc,m,Σc,m)について、式(31)が成り立つ。 In addition, equation (31) holds for the approximate Gaussian distribution M app (x; μ c, m , c c, m ).
式(30)および式(31)より、近似ガウス分布Mapp(x;μc,m,Σc,m)は確率密度関数である。
近似ガウス分布Mapp(x;μc,m,Σc,m)を式(1)に適用すると式(32)のようになる。
From Equation (30) and Equation (31), the approximate Gaussian distribution M app (x; μ c, m , c c, m ) is a probability density function.
If the approximate Gaussian distribution M app (x; μ c, m , c c, m ) is applied to the equation (1), the equation (32) is obtained.
fapp(x)は、混合ガウスモデルの生起確率密度関数f(x)を模擬する。fapp(x)を用いての混合ガウスモデルの模擬を、近似混合ガウスモデル(近似GMM)と称する。
式(26)の近似を式(5)に適用して、近似GMMに基づいたベイズ推定におけるクラスcのコンポーネントmに対する事後確率papp(c,m|x)は、式(33)のように示される。
f app (x) simulates the occurrence probability density function f (x) of the mixed Gaussian model. The simulation of the Gaussian mixture model using f app (x) is called an approximate Gaussian mixture model (approximate GMM).
Applying the approximation of equation (26) to equation (5), the posterior probability p app (c, m | x) for component m of class c in the Bayesian estimation based on approximate GMM is given by equation (33) Indicated.
α、βのいずれもクラスcおよびコンポーネントm毎に値をとるため、添え字cおよびm、あるいは、c’およびm’を付している。
このように、近似GMMによれば、指数関数を用いずにGMMに基づくベイズ推定を近似可能であり、この点で演算を高速化することができる。
Since both α and β take values for each class c and component m, subscripts c and m or c ′ and m ′ are added.
Thus, according to the approximate GMM, the BMM estimation based on the GMM can be approximated without using an exponential function, and the calculation can be speeded up at this point.
次に、近似GMMのニューラルネットワークへの適用について説明する。以下、近似GMMを適用したニューラルネットワークを、近似GMMに基づく確率ニューラルネットワークと称する。
式(5)を、平均ベクトルμc,mおよび共分散逆行列Σc,m −1を用いて展開すると、式(34)のように、新たな入力ベクトルXと、η(c,m)とを用いて指数関数の引数を見かけ上線形化できる。
Next, the application of the approximate GMM to a neural network will be described. The neural network to which the approximate GMM is applied is hereinafter referred to as a probabilistic neural network based on the approximate GMM.
When the equation (5) is expanded using the mean vector μ c, m and the covariance inverse matrix c c, m −1 , the new input vector X and η (c, m) are obtained as the equation (34 ) And can be used to apparently linearize the argument of the exponential function.
ここで、新たな入力ベクトルXは、式(35)のように示される。 Here, the new input vector X is expressed as Expression (35).
すなわち、新たな入力ベクトルXは、元の入力ベクトルxの要素x1,・・・,xDのうち2つ以下の要素の積を要素としている。
また、η(c,m)は、式(36)のように示される。
That is, the new input vector X has as an element the product of two or less of the elements x 1 ,..., X D of the original input vector x.
Also, η (c, m) is expressed as shown in equation (36).
ここで、si,j (c,m)は、共分散逆行列Σc,m −1の要素であり、式(37)のように示される。 Here, s i, j (c, m) is an element of the covariance inverse matrix c c, m −1 , and is expressed as in equation (37).
また、η0 (c,m)は、式(38)のように示される。 Further, η 0 (c, m) is expressed as in equation (38).
δijはクロネッカーのデルタ(Kronecker Delta)であり、式(39)のように示される。 δ ij is a Kronecker Delta, which is represented by equation (39).
式(34)に式(24)、式(25)および式(27)を適用すると、式(40)のように示される。 If Formula (24), Formula (25), and Formula (27) are applied to Formula (34), it will be shown like Formula (40).
式(40)のαc,mは式(41)のように示すことができる。 Α c, m in the equation (40) can be expressed as the equation (41).
式(40)のβc,mは式(42)のように示すことができる。 The β c, m in equation (40) can be expressed as in equation (42).
式(6)に示されるようにk=log2eであり、このkを用いて新たなパラメータのベクトルw(c,m)を式(43)のようにおくことができる。 As shown in equation (6), k = log 2 e, and using this k, a vector w (c, m) of a new parameter can be set as in equation (43).
式(40)を式(34)と比較すると、GMMのパラメータμc,m、Σc,mおよびγc,mを、無制約のベクトルw(c,m)で表現可能である。
ベクトルw(c,m)の値を適切に獲得することができれば、入力ベクトルxを非線形変換した新たな入力ベクトルXとベクトルw(c,m)との積を求め、係数を用いた線形方程式およびビットシフトにてベイズ推定の演算を実行できる。そこで、ベクトルw(c,m)をニューラルネットワークの重みとして、w(c,m)の値を機械学習によって決定する。
Comparing equation (40) with equation (34), the GMM parameters μ c, m , c c, m and γ c, m can be expressed by the unconstrained vector w (c, m) .
If the value of the vector w (c, m) can be properly obtained, the product of a new input vector X obtained by nonlinear transformation of the input vector x and the vector w (c, m) is obtained, and a linear equation using coefficients It is possible to perform Bayesian estimation operations with and bit shift. Therefore, the value of w (c, m) is determined by machine learning with the vector w (c, m) as the weight of the neural network.
図3は、近似GMMに基づく確率ニューラルネットワークの構成例を示す図である。図3に示す構成で、ニューラルネットワーク20は、非線形変換部21と、第1層22と、第2層23と、第3層24とを備える。
非線形変換部21は、式(35)に示されるように、入力ベクトルx=[x1,x2,・・・,xD]Tを新たな入力ベクトルXに変換する。ここで、新たな入力ベクトルXの要素数をHとし、X=[X1,X2,・・・,XH]Tとも表記する。H=1+(D+3)/2である。
FIG. 3 is a diagram showing an example of the configuration of a stochastic neural network based on approximate GMM. In the configuration shown in FIG. 3, the
The
第1層22は、新たな入力ベクトルXの要素数Hと同数のノード22−1〜22−Hを備える。第1層のノード22−h(hは、1≦h≦Hの整数)は、入力されるXhを、第2層23の各ノードへ出力する。ノード22−hへの入力を(1)Ihとし、ノード22−hからの出力を(1)Ohとすると、式(44)のように示される。
The
第2層23は、近似GMMにおける全クラスの全コンポーネントと同数のノード23−1,1、・・・、23−1,M1、・・・、23−c,m、・・・、23−C,MCを備える。
第1層22の全ノードから第2層23の全ノードへ経路(Path)が設けられ、経路毎に重みが設定される。第1層22のノードからの出力に重みが乗算されて第2層23のノードに入力され、第2層のノードは、第1層からの出力の重み付け合計の入力を受ける。第1層22のノード22−hから第2層23のノード23−c,mへの経路の重みをwh c,mとすると、ノード23−c,mへの入力(2)Ic,mは、式(45)のように示される。
The
Paths are provided from all nodes in the
第2層23の各ノードは、式(40)の演算を行って、クラス毎かつコンポーネント毎の事後確率を算出し出力する。ノード23−c,mからの出力(2)Oc,mは、式(46)のように示される。
Each node of the
式(46)に示されるように、第2層23の各ノードが行う計算は、近似計算装置10が行うべき乗の近似計算を含む。この点で、第2層23の各ノードは近似計算装置10の例に該当する。
第3層24は、クラスの数Cと同数のノード24−1〜24−Cを備える。
第2層23の各ノードは、自らが対応するクラスに応じて、第3層24の各ノードのうち当該クラスに対応するノードへデータ(値)を出力する。第2層のノード23−c,mは、第3層24のノード24−cへ出力を行う。第3層24の各ノードは、第2層のノードからの出力の合計の入力を受け、当該合計を出力する。
第3層24のノード24−cへの入力を(3)Icとし、ノード24−cからの出力を(3)Ocとすると、式(47)のように示される。
As shown in equation (46), the calculation performed by each node of the
The
Each node of the
Assuming that the input to the node 24-c of the
次に、ニューラルネットワーク20における学習則について説明する。ニューラルネットワーク20は、重みwh c,mの値を学習する。
学習用データとしてN個の入力ベクトルx(n)(nは、1≦n≦Nの正整数)と、式(48)に示される教師信号ベクトルT(n)とが与えられた場合を考える。
Next, learning rules in the
Consider the case where N input vectors x (n) (n is a positive integer of 1 ≦ n N N) and training signal vector T (n) shown in equation (48) are given as learning data .
カルバック・ライブラー情報量(Kullback-Leibler Divergence)を最小化することでGMMのパラメータを学習的に獲得できるとの前提に基づき、ニューラルネットワーク20の評価関数を式(49)のように定義する。
The evaluation function of the
ニューラルネットワーク20は、式(49)のJを小さくするように学習を行う。
重みwh c,mの修正量をΔwh c,mとし、学習率をμとすると、一括学習法によって修正量Δwh c,mは、式(50)のように示される。
The
Assuming that the correction amount of the weight w h c, m is Δw h c, m and the learning rate is μ, the correction amount Δw h c, m is expressed by equation (50) according to the batch learning method.
式(50)の(∂Jn)/(∂wh c,m)は、式(51)のように表される。 The (∂J n ) / (∂w h c, m ) of the equation (50) is expressed as the equation (51).
ここで、Xh (n)は、入力ベクトルx(n)から得られる新たな入力ベクトルである。
式(50)および式(51)は、単純な四則演算で計算可能であり、この点で高速に演算可能である。
また、式(49)のlog2 (3)Ocを高速に演算できるよう近似を行う。log2 (3)Ocは、式(52)のように変形できる。
Here, X h (n) is a new input vector obtained from the input vector x (n) .
Equations (50) and (51) can be calculated by simple arithmetic operations, and can be operated at high speed in this respect.
Also, approximation is performed so that log 2 (3) O c of equation (49) can be calculated at high speed. log 2 (3) O c can be transformed as in equation (52).
ここで、mc、ncはいずれも整数であり、1≦mc<2である。
指数関数expの近似の場合と同様、mcの定義域[1,2)をn分割し、log2mcを近似する。mcの定義域を等間隔にn分割した区間は、式(53)のように示される。
Here, m c and n c are both integers, and 1 ≦ m c <2.
As in the case of the approximation of the exponential function exp, domain of m c a [1,2) divided into n approximates the log 2 m c. An interval obtained by dividing the domain of m c into n at equal intervals is expressed as in equation (53).
この区間におけるlog2mc上の両端の点は、式(54)のように示される。 The points at both ends on log 2 m c in this section are expressed as in equation (54).
式(54)に示される両端の点を結ぶ直線(線分)g’’n,lによって、log2mcは式(55)のように近似される。 The log 2 m c is approximated as in equation (55) by a straight line (line segment) g ′ ′ n, l connecting the points at both ends shown in equation (54).
ここで、cn,lは、式(56)のように示される。 Here, c n, l is represented by equation (56).
dn,lは、式(57)のように示される。 d n, l is expressed as in equation (57).
さらに、n=1、l=1とした場合、cn,l=1、dn,l=−1となり、log2mcを式(58)のように線形近似可能である。 Furthermore, when n = 1 and l = 1, c n, l = 1 and d n, l = -1, and log 2 m c can be linearly approximated as in equation (58).
この場合、式(52)は、式(59)のように示される。 In this case, equation (52) is expressed as equation (59).
また、式(49)は、式(60)のように示される。 Moreover, Formula (49) is shown like Formula (60).
式(50)の学習率μは、式(61)に基づいて学習サイクル毎に更新することが考えられる。 The learning rate μ in equation (50) may be updated for each learning cycle based on equation (61).
ここで、学習の収束時間の上限設定値をtfとすると、μkは式(62)のように示される。 Here, assuming that the upper limit setting value of the convergence time of learning is t f , μ k is expressed as in equation (62).
λは0<λ<1を満たす任意の定数である。ここで、λ=0.5とすると、μkは式(63)のように示される。 λ is any constant that satisfies 0 <λ <1. Here, assuming that λ = 0.5, μ k is expressed as in equation (63).
関数h(J)=√Jをtの周りでテイラー展開して第2項まで線形近似を行うと、式64のように示される。 When the function h (J) =) J is subjected to Taylor expansion around t and linear approximation is performed up to the second term, Expression 64 is obtained.
ここで、t=1とすると式(65)のように示される。 Here, assuming that t = 1, the equation (65) is obtained.
式(65)は、J=1における接線であり、J=1の近傍でのみ近似が成り立つ。近似の精度をより高めるために、式(65)を式(66)のように変形する。 Expression (65) is a tangent at J = 1, and approximation is established only in the vicinity of J = 1. In order to further improve the accuracy of approximation, equation (65) is transformed into equation (66).
ここで、0.5≦J’≦2である。また、qは自然数のベクトルである。
このように、比較的簡単な計算にて学習を実現可能である。
次に、上述した近似の精度について検討する。
式(19)に示される、指数関数の近似関数g1(z)=2α(an,lβ+bn,l)の、指数関数exp=f1(z)に対する誤差率E1を式(67)のように定義する。
Here, 0.5 ≦ J ′ ≦ 2. Also, q is a vector of natural numbers.
Thus, learning can be realized by relatively simple calculation.
The accuracy of the above approximation will now be considered.
The error rate E 1 of the approximate function g 1 (z) = 2α (an , l β + b n, l ) of the exponential function to the exponential function exp = f 1 (z) shown in the equation (19) is Define as).
また、式(19)に示される、指数関数expの近似関数g’1(z)=2α(an,lβ+bn,l)の、指数関数exp=f1(z)に対する誤差率E’1を式(68)のように定義する。 Further, the error ratio E ′ of the approximate function g ′ 1 (z) = 2α (a n, l β + b n, l ) of the exponential function exp to the exponential function exp = f 1 (z) shown in the equation (19) Define 1 as equation (68).
図4は、近似関数g1(z)を用いた場合の、指数関数の近似誤差率を示す図である。図4のグラフの横軸はzの値を示し、縦軸は近似誤差率を示す。
線L21は、分割数n=1の場合の近似誤差率を示す。線L22は、分割数n=2の場合の近似誤差率を示す。線L23は、分割数n=4の場合の近似誤差率を示す。
図4に示すように、分割数nが増加すると近似誤差率は小さくなる。近似誤差率が最も大きい分割数n=1の場合でも、近似誤差率の最大値は7.59%であり、比較的高精度に近似できている。
FIG. 4 is a diagram showing the approximation error rate of the exponential function when the approximation function g 1 (z) is used. The horizontal axis of the graph of FIG. 4 shows the value of z, and the vertical axis shows the approximation error rate.
A line L21 indicates the approximation error rate in the case of the division number n = 1. A line L22 indicates the approximation error rate in the case of the division number n = 2. A line L23 indicates the approximation error rate in the case of the division number n = 4.
As shown in FIG. 4, the approximation error rate decreases as the division number n increases. Even in the case of the division number n = 1 where the approximation error rate is the largest, the maximum value of the approximation error rate is 7.59%, and the approximation can be made with relatively high accuracy.
図5は、近似関数g’1(z)を用いた場合の、指数関数の近似誤差率を示す図である。図5のグラフの横軸はzの値を示し、縦軸は近似誤差率を示す。
線L31は、分割数n=1の場合の近似誤差率を示す。線L32は、分割数n=2の場合の近似誤差率を示す。線L33は、分割数n=4の場合の近似誤差率を示す。
図5に示すように、分割数nが増加すると近似誤差率は小さくなる。近似誤差率が最も大きい分割数n=1の場合でも、近似誤差率の最大値は6.15%であり、比較的高精度に近似できている。
FIG. 5 is a diagram showing the approximation error rate of the exponential function when the approximation function g ′ 1 (z) is used. The horizontal axis of the graph of FIG. 5 shows the value of z, and the vertical axis shows the approximation error rate.
A line L31 indicates the approximation error rate in the case of the division number n = 1. A line L32 indicates the approximation error rate in the case of the division number n = 2. A line L33 indicates the approximation error rate in the case of the division number n = 4.
As shown in FIG. 5, the approximation error rate decreases as the division number n increases. Even in the case of the division number n = 1 where the approximation error rate is the largest, the maximum value of the approximation error rate is 6.15%, and the approximation can be made with relatively high accuracy.
図6は、近似関数g1(z)、g’1(z)それぞれの近似誤差率を示す図である。図6では、近似関数g1(z)、g’1(z)それぞれについて、分割数n=1、2、4それぞれの場合の近似誤差率の平均値および最大値を示している。図6を参照すると、近似関数g’1(z)では、近似関数g1(z)よりも近似誤差率の平均値が大きくなっているものの、最大値は小さくなっている。もっとも、近似関数g1(z)とg’1(z)との近似誤差率の相違は1%程度と比較的小さい値である。 FIG. 6 is a diagram showing the approximation error rates of the approximation functions g 1 (z) and g ′ 1 (z). FIG. 6 shows, for the approximation functions g 1 (z) and g ′ 1 (z), the average value and the maximum value of the approximation error rates in the case of the division number n = 1, 2 and 4, respectively. Referring to FIG. 6, in the approximation function g ′ 1 (z), the average value of the approximation error rate is larger than that of the approximation function g 1 (z), but the maximum value is smaller. However, the difference between the approximation error rates of the approximation functions g 1 (z) and g ′ 1 (z) is a relatively small value of about 1%.
図7は、近似関数g’1(z)による指数関数の近似の例を示す図である。図7は、分割数n=1の場合の例を示している。図7のグラフの横軸はzを示し、縦軸はexp(z)を示す。
線L41は、指数関数exp(z)の実際値を示す。線L42は、近似関数g’1(z)による近似値を示す。
図7に示されるように、近似関数g’1(z)によって指数関数exp(z)を近似できている。
FIG. 7 is a diagram showing an example of approximation of an exponential function by the approximation function g ′ 1 (z). FIG. 7 shows an example in the case of the division number n = 1. The horizontal axis of the graph of FIG. 7 indicates z, and the vertical axis indicates exp (z).
The line L41 shows the actual value of the exponential function exp (z). A line L42 indicates an approximate value by the approximate function g ′ 1 (z).
As shown in FIG. 7, the exponential function exp (z) can be approximated by the approximation function g ' 1 (z).
次に、対数関数の近似精度について検討する。
式(59)に示される対数関数の近似関数g2((3)Oc)=mc+nc−1の、対数関数f2((3)Oc)=log2 (3)Ocに対する近似誤差率を式(69)のように定義する。
Next, the approximation accuracy of the logarithmic function is examined.
The approximate function g 2 ( (3) O c ) = m c + n c −1 of the logarithmic function shown in equation (59), the logarithmic function f 2 ( (3) O c ) = log 2 (3) for O c The approximation error rate is defined as equation (69).
図8は、近似関数g2(z)を用いた場合の、対数関数の近似誤差率を示す図である。図8のグラフの横軸は(3)Ocの値を示し、縦軸は近似誤差率を示す。
線L51は、分割数n=1の場合の近似誤差率を示す。線L52は、分割数n=2の場合の近似誤差率を示す。線L53は、分割数n=4の場合の近似誤差率を示す。
指数関数の近似の場合と同様、対数関数の近似の場合も分割数nが増加すると近似誤差率は小さくなる。
(3)Ocが1に近付くとlog2 (3)Ocが0に近付くため、近似誤差率は次第に大きくなる。見かけ上の近似誤差率が大きくなるものの、近似誤差f2((3)Oc)−g2((3)Oc)が最も大きい分割数n=1の場合でも、近似誤差は平均で0.058±0.026であり、比較的高精度に近似できている。
FIG. 8 is a diagram showing an approximation error rate of a logarithmic function when the approximation function g 2 (z) is used. The horizontal axis of the graph of FIG. 8 indicates the value of (3) O c and the vertical axis indicates the approximation error rate.
A line L51 indicates the approximation error rate in the case of the division number n = 1. A line L52 indicates the approximation error rate in the case of the division number n = 2. A line L53 indicates the approximation error rate in the case of the division number n = 4.
As in the case of the approximation of the exponential function, in the case of the approximation of the logarithmic function, the approximation error rate decreases as the division number n increases.
(3) When O c approaches one, log 2 (3) O c approaches zero, so the approximation error rate gradually increases. Although the apparent approximation error rate increases, the approximation error is 0 on average even in the case of the division number n = 1 where the approximation error f 2 ( (3) O c ) -g 2 ( (3) O c ) is the largest. .058 ± 0.026, and can be approximated with relatively high accuracy.
図9は、近似関数g2((3)Oc)による対数関数の近似の例を示す図である。図9は、分割数n=1の場合の例を示している。図9のグラフの横軸は(3)Ocを示し、縦軸はlog2 (3)Ocを示す。
線L61は、対数関数log2 (3)Ocの実際値を示す。線L62は、近似関数g2((3)Oc)による近似値を示す。
図9に示されるように、近似関数g2((3)Oc)によって対数関数exp(log2 (3)Oc)を近似できている。
FIG. 9 is a diagram illustrating an example of approximation of a logarithmic function by the approximation function g 2 ( (3) O c ). FIG. 9 shows an example in the case of the division number n = 1. The horizontal axis of the graph of FIG. 9 indicates (3) O c and the vertical axis indicates log 2 (3) O c .
The line L61 shows the actual value of the logarithmic function log 2 (3) O c . A line L62 indicates an approximate value by the approximate function g 2 ( (3) O c ).
As shown in FIG. 9, the logarithmic function exp (log 2 (3) O c ) can be approximated by the approximation function g 2 ( (3) O c ).
次に、近似混合ガウスモデルに基づくクラス識別の実験結果について説明する。図3に示すニューラルネットワークをFPGA(Field-programmable Gate Array)に実装してクラス識別および学習の実験を行った。
ハードウェア上では、以下の流れで指数関数の演算を行った。
1−1. (2)Ic,mの整数値をαc,mとし、小数値をβc,mとする。
1−2. βc,mに1を加え、αc,mビット左シフトする。
Next, experimental results of class identification based on the approximate mixed Gaussian model will be described. The neural network shown in FIG. 3 was implemented in an FPGA (Field-programmable Gate Array) to conduct an experiment of class identification and learning.
On hardware, the exponential function was calculated in the following flow.
1-1. (2) Let an integer value of I c, m be α c, m and let a decimal value be β c, m .
1-2. Add 1 to β c, m and shift left by α c, m bits.
また、対数関数の演算は、以下のように行った。
2−1. (3)Oc≦1のとき2−2.へ進む。(3)Oc>1のとき2−3.へ進む。
2−2. (3)Ocを2倍(1ビット左シフト)し、2−1.へ戻る。
2−3. 2−2.で2倍した回数(1ビット左シフトした回数)をncとし、式(59)の演算を行う。
Moreover, the calculation of the logarithmic function was performed as follows.
2-1. (3) When O c ≦ 1, 2-2. Go to (3) When O c > 1 2-3. Go to
2-2. (3) Double O c (1 bit left shift), 2-1. Return to
2-3. 2-2. The number of times multiplied by 2 (the number of times of 1-bit left shift) is set as nc, and the equation (59) is calculated.
平方根関数は、以下のように計算可能である。
3−1. J>2のとき3−2.に進む。J≦2のとき、3−3.に進む。
3−2. Jを1/4倍(2ビット右シフト)し、3−1.へ戻る。
3−3. 3−2.で1/4倍した回数(2ビット右シフトした回数)をqとして、式(66)の演算を行う。
以上より、ハードウェア上で指数関数、対数関数、平方根関数の各演算をシフト演算および加減算にて実行可能である。
The square root function can be calculated as follows.
3-1. When J> 2 3-2. Go to When J ≦ 2, 3-3. Go to
3-2. J is multiplied by 1/4 (2-bit shift right), 3-1. Return to
3-3. 3-2. The operation of equation (66) is performed, where q is the number of times multiplied by 1⁄4 (the number of times of right shift by 2 bits).
As described above, each operation of an exponential function, a logarithmic function, and a square root function can be executed on the hardware by shift operation and addition / subtraction.
実験の比較対象として、上記の近似を行わない混合ガウスモデルによるニューラルネットワークをソフトウェアで構築した。ソフトウェアによるニューラルネットワークの構築は、CPUクロック周波数3.40ギガヘルツ(GHz)、RAM(Random Access Memory)16.0ギガバイト(GB)のコンピュータおよびC言語を用いて行った。
以下では、近似混合ガウスモデルによるニューラルネットワークのFPGAを用いた構成を近似GMMハード構成と称する。また、近似を行わない混合ガウスモデルによるニューラルネットワークのソフトウェアによる構成をGMMソフト構成と称する。
As a comparison target of the experiment, a neural network with a mixed Gaussian model without the above approximation was constructed by software. The software-based neural network was constructed using a CPU clock frequency of 3.40 gigahertz (GHz) and a random access memory (RAM) computer of 16.0 gigabytes (GB) and a C language.
Hereinafter, a configuration using an FPGA of a neural network based on an approximate mixed Gaussian model is referred to as an approximate GMM hardware configuration. Moreover, the software configuration of the neural network based on the mixed Gaussian model without approximation is referred to as a GMM software configuration.
クラスの識別率については、GMMソフト構成、近似GMMハード構成共に約99と高い識別率を示し、有意差は認められなかった。
学習時間については、GMMソフト構成が6.43秒であったのに対し、近似GMMハード構成では8.47ミリ秒と、おおよそ800分の1の時間に短縮された。
上記のように、指数関数、対数関数、平方根関数の各演算をシフト演算および加減算にて実行可能であり、この点で、ハードウェア実装が容易である。ハードウェア実装および計算の簡単化により、上記のように学習時間が大幅に短縮された。
With regard to the class discrimination rate, both the GMM software configuration and the approximate GMM hard configuration showed a high discrimination rate of about 99, and no significant difference was observed.
With regard to the learning time, the GMM software configuration was 6.43 seconds, while the approximate GMM hard configuration was reduced to approximately 1.800 ms, which is 8.47 ms.
As described above, each operation of an exponential function, a logarithmic function, and a square root function can be performed by shift operation and addition / subtraction, and in this respect, hardware implementation is easy. The simplification of the hardware implementation and the calculation greatly reduced the learning time as described above.
以上のように、指数分離部12は、2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する。小数部分計算部14は、指数の小数部分について2のべき乗を直線近似で計算する。乗算部15は、整数部分についての2のべき乗の計算結果と、小数部分計算部14による小数部分についての2のべき乗の計算結果とを乗算する。
これにより、近似計算装置10では、指数の小数部分についての2のべき乗を簡単な線形演算に置き換えることができる。この点で、近似計算装置10によれば、ハードウェア実装が容易であり、ハードウェア実装および演算の簡単化による演算時間の短縮が見込まれる。
As described above, the
Thus, the
また、整数部分計算部13は、指数の整数部分について2のべき乗をシフト演算で計算する。
近似計算装置10によれば、指数の整数部分について2のべき乗をシフト演算で行う点で、ハードウェア実装が容易であり、ハードウェア実装および演算の簡単化による演算時間の短縮が見込まれる。
Further, the integer
According to the
また、小数部分計算部14は、0以上1未満の区間を分割した区間毎の直線近似にて指数の小数部分についての2のべき乗を計算する。
これにより、近似計算装置10では、特に高い演算精度を要求される場合は分割数を多くして近似の精度を高めることができる。かつ、区間毎の直線近似にて、指数の小数部分についての2のべき乗を簡単な線形演算に置き換えることができる。この点で、近似計算装置10によれば、ハードウェア実装が容易であり、ハードウェア実装および演算の簡単化による演算時間の短縮が見込まれる。
Further, the fractional
As a result, in the
また、小数部分計算部14は、0以上1未満の区間を分割した区間における2のべき乗の両端を結んだ線分にて直線近似を行う。
これにより、近似計算装置10では、指数の小数部分についての2のべき乗を、より簡単な線形演算に置き換えることができる。この点で、近似計算装置10によれば、ハードウェア実装が容易であり、ハードウェア実装および演算の簡単化による演算時間の短縮が見込まれる。
Further, the fractional
Thus, the
また、底変換部11は、ネイピア数の実数乗を2の実数乗に換算する。
これにより、近似計算装置10では、ネイピア数を底とする指数関数を、より簡単な演算に置き換えることができる。
Also, the
As a result, in the
また、底変換部11は、混合ガウスモデルに基づくベイズ識別におけるネイピア数の実数乗を2の実数乗に換算する。
近似計算装置10によれば、混合ガウスモデルを近似する近似混合ガウスモデルを用いることができる。近似混合ガウスモデルは、混合ガウスモデルと比較して、より簡単な演算で実装可能である。この点で、近似計算装置10によれば近似混合ガウスモデルのハードウェア実装が容易であり、ハードウェア実装および演算の簡単化による演算時間の短縮が見込まれる。
Further, the
According to the
なお、近似計算装置10が行う演算及び制御の全部または一部の機能を実現するためのプログラムを、コンピュータまたはハードウェアが読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムまたはハードウェアに読み込ませ、実行することで各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Note that the program for realizing all or part of the functions and operations of the calculation and control performed by the
The "computer system" also includes a homepage providing environment (or display environment) if the WWW system is used.
The term "computer-readable recording medium" refers to a storage medium such as a flexible disk, a magneto-optical disk, a ROM, a portable medium such as a ROM or a CD-ROM, or a hard disk built in a computer system. The program may be for realizing a part of the functions described above, or may be realized in combination with the program already recorded in the computer system.
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and design changes and the like within the scope of the present invention are also included.
10 近似計算装置
11 底変換部
12 指数分離部
13 整数部分計算部
14 小数部分計算部
15 乗算部
20 ニューラルネットワーク
21 非線形変換部
22 第1層
23 第2層
24 第3層
DESCRIPTION OF
Claims (8)
前記小数部分について2のべき乗を直線近似で計算する小数部分計算部と、
前記整数部分についての2のべき乗の計算結果と、前記小数部分計算部による前記小数部分についての2のべき乗の計算結果とを乗算する乗算部と、
を備える近似計算装置。 An exponent separation unit that separates the exponent of the real power of 2 into an integral part and a fractional part between 0 and 1;
A fractional part calculation unit that calculates, by linear approximation, a power of 2 on the fractional part;
A multiplication unit for multiplying the calculation result of the power of 2 for the integral part and the calculation result of the power of 2 for the fractional part by the fractional part calculation unit;
An approximate calculation device comprising:
前記小数部分について2のべき乗を直線近似で計算する小数部分計算ステップと、
前記整数部分についての2のべき乗の計算結果と、前記小数部分計算ステップでの前記小数部分についての2のべき乗の計算結果とを乗算する乗算ステップと、
を含む近似計算方法。 Exponential separation step which separates the exponent of the real power of 2 into an integral part and a fractional part between 0 and 1;
A fractional part calculation step of calculating by a linear approximation a power of 2 for the fractional part;
A multiplication step of multiplying the calculation result of the power of 2 for the integral part and the calculation result of the power of 2 for the fractional part in the fractional part calculation step;
Approximate calculation method including.
2の実数乗の指数を整数部分と0以上1未満の小数部分とに分離する指数分離ステップと、
前記小数部分について2のべき乗を直線近似で計算する小数部分計算ステップと、
前記整数部分についての2のべき乗の計算結果と、前記小数部分計算ステップでの前記小数部分についての2のべき乗の計算結果とを乗算する乗算ステップと、
を実行させるためのプログラム。 The programmable device comprises an exponential separation step which separates the exponent of the real power of 2 into an integral part and a fractional part between 0 and 1;
A fractional part calculation step of calculating by a linear approximation a power of 2 for the fractional part;
A multiplication step of multiplying the calculation result of the power of 2 for the integral part and the calculation result of the power of 2 for the fractional part in the fractional part calculation step;
A program to run a program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017202006A JP6918358B2 (en) | 2017-10-18 | 2017-10-18 | Approximate calculation device, approximate calculation method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017202006A JP6918358B2 (en) | 2017-10-18 | 2017-10-18 | Approximate calculation device, approximate calculation method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019075003A true JP2019075003A (en) | 2019-05-16 |
JP6918358B2 JP6918358B2 (en) | 2021-08-11 |
Family
ID=66544180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017202006A Active JP6918358B2 (en) | 2017-10-18 | 2017-10-18 | Approximate calculation device, approximate calculation method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6918358B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019101896A (en) * | 2017-12-06 | 2019-06-24 | 富士通株式会社 | Arithmetic processing unit and control method of arithmetic processing unit |
JP2021047778A (en) * | 2019-09-20 | 2021-03-25 | 株式会社東芝 | Operational circuit |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02205923A (en) * | 1989-02-03 | 1990-08-15 | Nec Corp | Arithmetic processor |
JPH0637644A (en) * | 1992-07-21 | 1994-02-10 | Sanyo Electric Co Ltd | Data conversion circuit and method |
JPH06202752A (en) * | 1992-12-10 | 1994-07-22 | Roland Corp | Interpolating device for exponential function data |
JP2002157004A (en) * | 2000-11-20 | 2002-05-31 | Denso Corp | Electronic control unit |
JP3816762B2 (en) * | 2001-06-05 | 2006-08-30 | 独立行政法人科学技術振興機構 | Neural network, neural network system, and neural network processing program |
JP2008107580A (en) * | 2006-10-26 | 2008-05-08 | Renesas Technology Corp | Display luminance control circuit |
-
2017
- 2017-10-18 JP JP2017202006A patent/JP6918358B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02205923A (en) * | 1989-02-03 | 1990-08-15 | Nec Corp | Arithmetic processor |
JPH0637644A (en) * | 1992-07-21 | 1994-02-10 | Sanyo Electric Co Ltd | Data conversion circuit and method |
JPH06202752A (en) * | 1992-12-10 | 1994-07-22 | Roland Corp | Interpolating device for exponential function data |
JP2002157004A (en) * | 2000-11-20 | 2002-05-31 | Denso Corp | Electronic control unit |
JP3816762B2 (en) * | 2001-06-05 | 2006-08-30 | 独立行政法人科学技術振興機構 | Neural network, neural network system, and neural network processing program |
JP2008107580A (en) * | 2006-10-26 | 2008-05-08 | Renesas Technology Corp | Display luminance control circuit |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019101896A (en) * | 2017-12-06 | 2019-06-24 | 富士通株式会社 | Arithmetic processing unit and control method of arithmetic processing unit |
JP2021047778A (en) * | 2019-09-20 | 2021-03-25 | 株式会社東芝 | Operational circuit |
JP7191797B2 (en) | 2019-09-20 | 2022-12-19 | 株式会社東芝 | Arithmetic circuit |
US11733970B2 (en) | 2019-09-20 | 2023-08-22 | Kabushiki Kaisha Toshiba | Arithmetic operation circuit |
Also Published As
Publication number | Publication date |
---|---|
JP6918358B2 (en) | 2021-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Durkan et al. | On contrastive learning for likelihood-free inference | |
Shao et al. | Constrained Bayesian state estimation–A comparative study and a new particle filter based approach | |
EP3906507A1 (en) | Dithered quantization of parameters during training with a machine learning tool | |
US11334320B2 (en) | Generating randomness in neural networks | |
Zheng | QBoost: Predicting quantiles with boosting for regression and binary classification | |
Bockius et al. | Model reduction techniques for the computation of extended Markov parameterizations for generalized Langevin equations | |
WO2018144534A1 (en) | Hardware-based machine learning acceleration | |
CN113313229A (en) | Bayesian optimization of sparsity in model compression | |
Garg et al. | Confounding tradeoffs for neural network quantization | |
Beskos et al. | A stable particle filter in high-dimensions | |
Schafer et al. | Likelihood-free inference in cosmology: Potential for the estimation of luminosity functions | |
JP2017016384A (en) | Mixed coefficient parameter learning device, mixed occurrence probability calculation device, and programs thereof | |
JP6918358B2 (en) | Approximate calculation device, approximate calculation method and program | |
CN115017178A (en) | Training method and device for data-to-text generation model | |
JP7405851B2 (en) | Hardware module for converting numbers | |
Abotaleb et al. | Development of algorithms for choosing the best time series models and neural networks to predict COVID-19 Cases | |
Huang et al. | FPGA implementation of 4-channel ICA for on-line EEG signal separation | |
Huai et al. | Latency-constrained DNN architecture learning for edge systems using zerorized batch normalization | |
Iquebal et al. | Emulating the evolution of phase separating microstructures using low-dimensional tensor decomposition and nonlinear regression | |
KR20190105368A (en) | Method and apparatus for linear approximation of deep neural network | |
Sendera et al. | Supermodeling: the next level of abstraction in the use of data assimilation | |
CN114830137A (en) | Method and system for generating a predictive model | |
Azzeh et al. | An application of classification and class decomposition to use case point estimation method | |
JP7477859B2 (en) | Calculator, calculation method and program | |
WO2020040007A1 (en) | Learning device, learning method, and learning program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200306 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210413 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210602 |
|
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: 20210706 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210714 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6918358 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |