JP2013092895A - Resampling device - Google Patents
Resampling device Download PDFInfo
- Publication number
- JP2013092895A JP2013092895A JP2011234314A JP2011234314A JP2013092895A JP 2013092895 A JP2013092895 A JP 2013092895A JP 2011234314 A JP2011234314 A JP 2011234314A JP 2011234314 A JP2011234314 A JP 2011234314A JP 2013092895 A JP2013092895 A JP 2013092895A
- Authority
- JP
- Japan
- Prior art keywords
- likelihood value
- input
- random number
- cumulative
- likelihood
- 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
- 238000012952 Resampling Methods 0.000 title claims abstract description 66
- 230000001186 cumulative effect Effects 0.000 claims abstract description 131
- 239000011159 matrix material Substances 0.000 claims abstract description 36
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 238000005070 sampling Methods 0.000 claims description 19
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 14
- 239000002245 particle Substances 0.000 abstract description 51
- 238000000034 method Methods 0.000 description 9
- 238000011156 evaluation Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000000630 rising effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
Description
本発明は、逐次モンテカルロ法によるパラメータ推定に関し、重み付けに応じた仮説の再標本化を行う再標本化装置に関する。 The present invention relates to parameter estimation by a sequential Monte Carlo method, and relates to a resampling apparatus that resamples hypotheses according to weighting.
観測情報と、観測量と状態量との間の関係を確率・統計的に表現したモデルと、に基づいて状態量(パラメータ)を推定する方法として、逐次モンテカルロ法(パーティクルフィルタ、粒子フィルタまたはCONDENSATION等とも呼ばれる)がある。逐次モンテカルロ法では、状態量の確率密度分布を空間方向に離散化(標本化)して表現することで、多次元の状態空間における確率的な挙動を能率的に模擬することができる。また、逐次モンテカルロ法では、この離散化された状態空間内の数量を仮説(粒子)と呼び、複数かつ有限の粒子によって確率密度分布を近似表現する。 As a method of estimating state quantities (parameters) based on observation information and a model that probabilistically and statistically represents the relationship between observed quantities and state quantities, a sequential Monte Carlo method (particle filter, particle filter or CONDENSATION Etc.). In the sequential Monte Carlo method, the probability density distribution of state quantities is discretized (sampled) in the spatial direction, and thus stochastic behavior in a multidimensional state space can be efficiently simulated. In the sequential Monte Carlo method, the quantity in the discretized state space is called a hypothesis (particle), and the probability density distribution is approximated by a plurality of finite particles.
逐次モンテカルロ法では、各粒子に重み付けを行うことが広く行われている。これにより、確率密度は状態空間内における粒子の密度と重みとの積によって表現されることになる。このように、逐次モンテカルロ法では、各粒子に重み付けを行うことで表現の自由度が増えるため、確率密度関数をより精度高く近似表現することができる。 In the sequential Monte Carlo method, it is widely performed to weight each particle. Thereby, the probability density is expressed by the product of the density and weight of the particles in the state space. Thus, in the sequential Monte Carlo method, weighting each particle increases the degree of freedom of expression, so that the probability density function can be approximated with higher accuracy.
その一方で、逐次モンテカルロ法では、重み付けの小さい粒子が増加すると、寄与の少ない粒子が数多く存在することになり無駄が生じる。そのため、重み付けに応じた出現頻度となるように、新たな粒子に再編成(重み付けはより均質なものとする)することで、寄与の少ない粒子を省く操作が行われる。この操作のことを再標本化(あるいはリサンプリング)と呼ぶ(例えば特許文献1の段落0002、非特許文献1参照)。
On the other hand, in the sequential Monte Carlo method, if the number of particles with a small weight increases, a large number of particles with little contribution are present, resulting in waste. Therefore, an operation of omitting particles with little contribution is performed by reorganizing new particles (weighting is made more uniform) so that the appearance frequency corresponds to the weighting. This operation is called resampling (or resampling) (see, for example, paragraph 0002 and
しかし、再標本化処理には、重み付けに応じた頻度で生起する特殊な乱数発生器が必要である。なお、「重み付けに応じた頻度で生起する」とは、重み付けの重い粒子ほど乱数が生起される確率が高いということを意味している。このような重み付けに応じた頻度で生起する特殊な乱数は、例えば重み付けを積算したものを累積確率密度分布とみなし、その逆関数に対して一様乱数を代入することで生成することができるが、従来はソフトウェア処理によって当該演算が行われており、論理回路や順序回路を用いたハードウェア処理によって前記した機能を高速に実現することは考えられてこなかった。 However, the resampling process requires a special random number generator that occurs at a frequency according to the weighting. Note that “occurs at a frequency according to weighting” means that the more highly weighted particles have a higher probability of generating random numbers. A special random number that occurs at a frequency according to such weighting can be generated by, for example, considering the cumulative weight density distribution as a cumulative probability density distribution and substituting a uniform random number for its inverse function. Conventionally, the operation is performed by software processing, and it has not been considered to realize the above functions at high speed by hardware processing using a logic circuit or a sequential circuit.
また、従来の逐次モンテカルロ法では、非常に多くの(例えば千個ないし十万個程度の)粒子を用いて演算を行うことが通例であり、粒子をメモリ上に記憶した上で、前記した特殊な乱数によるアドレッシングによってランダムアクセスを行って再標本化を実現していた。そのため、従来の逐次モンテカルロ法では、次元数と粒子数との積の回数だけメモリのランダムアクセスが発生することが、特に状態量の次元(すなわち粒子の次元)が高い場合における演算のボトルネックとなっていた。 Further, in the conventional sequential Monte Carlo method, it is usual to perform calculations using a very large number of particles (for example, about 1,000 to 100,000). Re-sampling was realized by random access by addressing with random numbers. Therefore, in the conventional sequential Monte Carlo method, random access to the memory occurs as many times as the product of the number of dimensions and the number of particles, which is a bottleneck for computation especially when the state quantity dimension (that is, particle dimension) is high. It was.
一方、画像処理等の用途によっては、粒子数は比較的少ない数で良いものの、状態空間が極めて高次である場合や、非常に多数の逐次モンテカルロ法による処理を並列して実行しなければならない場合がある。このような用途においては、メモリのランダムアクセスが次元数や並列処理数に比例して増大することが問題点となるため、粒子数が少ない場合の利点(例えば再標本化による高速化等の利点)を生かすことができなかった。 On the other hand, depending on applications such as image processing, the number of particles may be relatively small. However, when the state space is extremely high, or a large number of sequential Monte Carlo methods must be executed in parallel. There is a case. In such applications, random access of memory increases in proportion to the number of dimensions and the number of parallel processes, so there is an advantage when the number of particles is small (for example, an advantage such as speeding up by resampling) ) Could not be saved.
本発明はかかる点に鑑みてなされたものであって、メモリのランダムアクセスを避けつつ、並列的なスイッチング操作によって高速な再標本化を実現することを課題とし、特に粒子数が少ない場合に有利な再標本化装置を提供することを課題とする。 The present invention has been made in view of the above points, and an object of the present invention is to realize high-speed resampling by parallel switching operation while avoiding random access of a memory, and is particularly advantageous when the number of particles is small. It is an object to provide a simple resampling apparatus.
前記課題を解決するために請求項1に係る再標本化装置は、逐次モンテカルロ法によりモデルのパラメータを推定する際に用いられる当該パラメータの解の候補である複数の仮説を、当該仮説の尤もらしさを示す尤度値に従って再標本化する再標本化装置であって、累積尤度値算出手段と、一様乱数発生手段と、複数の比較手段と、プライオリティエンコーダと、マトリックススイッチと、を備える構成とした。
In order to solve the above-described problem, the resampling apparatus according to
これにより、再標本化装置は、累積尤度値算出手段に複数の仮説に対応した尤度値が順次入力され、当該累積尤度値算出手段によって、当該尤度値が入力された時点における累積尤度値を、当該尤度値が入力される度に算出する。また、再標本化装置は、一様乱数発生手段によって、累積値尤度値算出手段において算出された最大の累積尤度値未満の一様乱数を、所定の時間間隔で所定の回数だけ生成する。なお、一様乱数とは、指定区間内で一様と見なすことができる乱数、すなわち予め定められた区間内で全ての数が同じ確率で現れるような乱数のことを意味している。 Accordingly, the resampling apparatus sequentially inputs likelihood values corresponding to a plurality of hypotheses to the cumulative likelihood value calculating unit, and the cumulative value at the time when the likelihood value is input by the cumulative likelihood value calculating unit. A likelihood value is calculated each time the likelihood value is input. Further, the resampling device generates a uniform random number less than the maximum cumulative likelihood value calculated by the cumulative likelihood value calculating unit by the uniform random number generating unit a predetermined number of times at predetermined time intervals. . Note that the uniform random number means a random number that can be regarded as uniform within a specified interval, that is, a random number such that all the numbers appear with the same probability within a predetermined interval.
また、再標本化装置は、複数の比較手段によって、累積尤度値算出手段において算出された複数の累積尤度値のそれぞれと、一様乱数発生手段によって生成された一様乱数とを、当該一様乱数が生成される度に比較する。また、再標本化装置は、プライオリティエンコーダによって、複数の比較手段において一様乱数以下であると判定された累積尤度値の中から最大の累積尤度値を選択し、当該最大の累積尤度値が算出される際に累積尤度値算出手段に入力された尤度値に対応する仮説を示すコードを、複数の比較手段から比較結果が入力される度に生成する。そして、再標本化装置は、複数の接点を備えるマトリックススイッチに複数の仮説が入力され、当該マトリックススイッチによって、プライオリティエンコーダにおいて生成された複数のコードが示す複数の仮説に対応する接点を制御することで、再標本化された複数の仮説を出力する。 Further, the resampling device uses each of the plurality of cumulative likelihood values calculated in the cumulative likelihood value calculating unit and the uniform random number generated by the uniform random number generating unit by the plurality of comparing units. Compare each time a uniform random number is generated. Further, the resampling device selects the maximum cumulative likelihood value from among the cumulative likelihood values determined by the priority encoder to be equal to or less than the uniform random number in the plurality of comparison means, and the maximum cumulative likelihood A code indicating a hypothesis corresponding to the likelihood value input to the cumulative likelihood value calculation means when the value is calculated is generated each time a comparison result is input from a plurality of comparison means. The re-sampling apparatus controls a contact corresponding to a plurality of hypotheses indicated by a plurality of codes generated in the priority encoder by the matrix switch, wherein a plurality of hypotheses are input to the matrix switch including the plurality of contacts. Outputs a plurality of resampled hypotheses.
このように、再標本化装置は、累積尤度値算出手段、一様乱数発生手段、複数の比較手段およびプライオリティエンコーダにおける一連の処理によって、再標本化の対象となる複数の仮説を決定する。そして、マトリックススイッチに複数の仮説が入力されると、当該マトリックススイッチから、前記した一連の処理によって決定された再標本化後の複数の仮説が一度に出力されることになる。従って、再標本化装置によれば、複数の仮説(粒子)をメモリに記憶する必要がないため、メモリのランダムアクセスが発生することがない。また、再標本化装置によれば、マトリックススイッチに標本化前の複数の仮説を入力すると、再標本化後の複数の仮説が一度に出力されるという並列的なスイッチング操作を実現することができる。 As described above, the resampling apparatus determines a plurality of hypotheses to be resampled by a series of processes in the cumulative likelihood value calculating means, the uniform random number generating means, the plurality of comparison means, and the priority encoder. When a plurality of hypotheses are input to the matrix switch, a plurality of resampled hypotheses determined by the above-described series of processes are output from the matrix switch at a time. Therefore, according to the resampling apparatus, since it is not necessary to store a plurality of hypotheses (particles) in the memory, random access to the memory does not occur. Further, according to the resampling device, when a plurality of hypotheses before sampling are input to the matrix switch, a parallel switching operation in which a plurality of hypotheses after resampling are output at a time can be realized. .
また、請求項2に係る再標本化装置は、請求項1に係る再標本化装置において、累積尤度値算出手段が、加算手段と、シフトレジスタと、を備える構成とした。
The resampling apparatus according to
これにより、再標本化装置は、加算手段に複数の仮説に対応した複数の尤度値が順次入力され、当該加算手段によって、複数の尤度値を順次加算することで、入力された尤度値の数に対応する複数の累積尤度値を算出する。また、シフトレジスタに加算手段から累積尤度値が順次入力され、当該シフトレジスタによって、複数の比較手段に対して、複数の累積尤度値を同時に出力する。 As a result, the resampling apparatus sequentially inputs a plurality of likelihood values corresponding to a plurality of hypotheses to the adding means, and sequentially adds the plurality of likelihood values by the adding means. A plurality of cumulative likelihood values corresponding to the number of values are calculated. Further, cumulative likelihood values are sequentially input from the adding means to the shift register, and a plurality of cumulative likelihood values are simultaneously output to the plurality of comparing means by the shift register.
このように、再標本化装置は、加算手段とシフトレジスタによって、入力された尤度値列を累積尤度値列に変換し、当該累積尤度値列を構成する複数の累積尤度列を複数の比較手段に対して同時に出力することができる。 In this way, the resampling device converts the input likelihood value sequence into a cumulative likelihood value sequence by the adding means and the shift register, and calculates a plurality of cumulative likelihood sequences constituting the cumulative likelihood value sequence. It can output simultaneously with respect to several comparison means.
請求項1および請求項2に係る発明によれば、論理回路や順序回路を用いてハードウェア処理を行うことで、仮説(粒子)をメモリに記憶する必要がなく、かつ、複数の仮説(粒子)を一度に再標本化することができるため、メモリのランダムアクセスを避けつつ、並列的なスイッチング操作によって高速な再標本化を実現することができる。また、請求項1および請求項2に係る発明によれば、状態空間が高次である場合であっても、並列的に処理を行うことができるため、粒子数が少ない場合において、次元数に関わらず高速に再標本化を行うことができる。
According to the first and second aspects of the invention, it is not necessary to store hypotheses (particles) in a memory by performing hardware processing using a logic circuit or a sequential circuit, and a plurality of hypotheses (particles) ) Can be resampled at a time, and high-speed resampling can be realized by parallel switching operations while avoiding random access of the memory. Further, according to the inventions according to
本発明の実施形態に係る再標本化装置について、図面を参照しながら説明する。なお、以下の説明において、同一の構成については同一の名称及び符号を付し、詳細説明を省略する。 A resampling apparatus according to an embodiment of the present invention will be described with reference to the drawings. In the following description, the same configuration is given the same name and symbol, and detailed description is omitted.
再標本化装置1は、逐次モンテカルロ法によるモデルのパラメータを推定する際に用いられる複数の仮説を、それらの仮説に対応した尤度値に従って再標本化するものである。ここで、仮説とは、前記したモデルのパラメータの解の候補のことを意味している。また、尤度値とは、それぞれの仮説の尤もらしさを示す値のことを意味している。
The
再標本化装置1は、例えば映像中における人間の顔の姿勢(位置、向き)をトラッキング(追跡)する場合において、当該映像中における人間の顔の位置(2次元)、大きさ(1次元)、向き(3次元)からなる顔姿勢パラメータ等を推定するためのパラメータ推定装置の内部に組み込まれて用いられる。このパラメータ推定装置は、まず前記した顔姿勢パラメータの複数の仮説を作成し、各仮説について、現在のフレームの画像に対して当該仮説がどの程度尤もらしいかの評価(尤度評価)を行う。そして、パラメータ推定装置は、各仮説の尤度を用いて最終的な姿勢パラメータ推定を行う。再標本化装置1は、このようなパラメータ推定装置において、前記した尤度に従って仮説の再標本化を行い、寄与の少ない仮説を省く処理を行う。
For example, in the case of tracking (tracking) the posture (position, orientation) of a human face in an image, the
再標本化装置1は、ここでは図1に示すように、シフトレジスタ10と、加算手段12と、一様乱数発生手段13と、比較手段14と、プライオリティエンコーダ15と、計数手段16と、マトリックス制御手段17と、マトリックススイッチ18と、を備えている。そして、再標本化装置1は、図1に示すように、図示しない外部の仮説(粒子)生成手段からマトリックススイッチ18に入力される複数の仮説(粒子)1〜Hを、図示しない外部の尤度評価手段から加算手段12に入力される複数の尤度値と、一様乱数発生手段13によって生成される一様乱数と、に基づいて複数の仮説(粒子)1〜Kに再標本化する。なお、再標本化装置1が備えるシフトレジスタ10および加算手段12は、後記するように、外部から入力される尤度値から累積尤度値を算出するための累積尤度値算出手段として機能する。また、前記した「H」および「K」は、2以上の整数を意味しており、同数であっても同数でなくてもどちらでも構わない。
Here, the
シフトレジスタ10は、予め定められたクロックに同期して、データを内部でシフトさせながら保持するものである。シフトレジスタ10は、具体的には図1に示すように、加算手段12から順次入力される複数の累積尤度値のそれぞれを保持し、後記する複数の比較手段14に対して、それぞれの累積尤度値を同時に出力する。シフトレジスタ10は、図1に示すように、複数の遅延手段11−1,11−2,11−3,・・・,11−Hから構成される。すなわち、シフトレジスタ10は、図1に示すように、遅延手段がH段分カスケード接続されて構成される。
The
シフトレジスタ10には、図1に示すように、クロックφ1のタイミングで、加算手段12から累積尤度値が順次入力される。この累積尤度値は、図示しない外部の尤度評価手段から順次入力される尤度値が順次加算されたものであり、後に入力されるものほど値が大きくなる。そして、シフトレジスタ10は、図1に示すように、順次入力される累積尤度値を遅延手段11−H、・・・、遅延手段11−3、遅延手段11−2、遅延手段11−1、の順序で上方向に順次シフトさせ、遅延手段11−1,11−2,11−3,・・・,11−Hのそれぞれに累積尤度値を保持させる。なお、以下の説明では、複数の遅延手段11−1,11−2,11−3,・・・,11−Hを包括して、「遅延手段11−h(hは1以上H以下の整数)」と表記する場合がある。
As shown in FIG. 1, the cumulative likelihood value is sequentially input from the adding means 12 to the
遅延手段11−hは、入力された数値をクロック入力のタイミングで保持するとともに、当該数値をリセット入力のタイミングで破棄するものである。なお、遅延手段11−hが保持または破棄する数値は、整数、固定小数点、または浮動小数点のいずれであっても構わない。遅延手段11−hは、具体的には図1に示すように、後記する加算手段12から入力される累積尤度値を、図示しない外部のクロック発生手段から入力されるクロックφ1のタイミングで保持するとともに、図示しない外部のリセット発生手段から入力されるリセット入力Rのタイミングで破棄して値ゼロを出力する。
The delay means 11-h holds the input numerical value at the clock input timing and discards the numerical value at the reset input timing. The numerical value held or discarded by the delay unit 11-h may be an integer, a fixed point, or a floating point. Delay means 11-h, as specifically shown in FIG. 1, the cumulative likelihood value input from the
ここで、累積尤度値とは、前記したように、図示しない外部の尤度評価手段から入力される複数の尤度値を加算したものである。例えば、再標本化装置1の加算手段12に対して、尤度値L1、尤度値L2、尤度値L3および尤度値L4がこの順番で入力される場合、これらの尤度値が入力される度に、後記する加算手段12によって累積尤度値A1(=L1)、累積尤度値A2(=L1+L2)、累積尤度値A3(=L1+L2+L3)および累積尤度値A4(=L1+L2+L3+L4))が順次算出され、遅延手段11−h(ここではh=4)に順次入力される。このように、累積尤度値は、加算手段によって、図示しない外部の尤度評価手段から入力される尤度値の数と同じ数だけ算出され、遅延手段11−hに順次入力される。
Here, as described above, the cumulative likelihood value is obtained by adding a plurality of likelihood values input from an external likelihood evaluation unit (not shown). For example, when likelihood values L 1 , likelihood values L 2 , likelihood values L 3, and likelihood values L 4 are input in this order to the adding means 12 of the
遅延手段11−hは、具体的には図2に示すように、リセット入力付きのD(Delay)フリップフロップによって実現することができる。ここで、遅延手段11−hの上下方向の段数は、図1に示すように、再標本化装置1に入力される尤度値(または粒子)の数Hに対応している。すなわち、遅延手段11−hは、例えば再標本化装置1に入力される尤度値の個数Hが4つである場合、上下方向に少なくとも4段配置される。
Specifically, the delay unit 11-h can be realized by a D (Delay) flip-flop with a reset input as shown in FIG. Here, the number of stages in the vertical direction of the delay means 11-h corresponds to the number H of likelihood values (or particles) input to the
また、遅延手段11−hの左右方向の段数は、再標本化装置1に入力される尤度値の個数Hと尤度値の範囲(例えば尤度値を2進数で表わした場合のビット数)とに対応している。すなわち、遅延手段11−hは、例えば2進数の数値が入力される場合において、再標本化装置1に入力される尤度値の個数Hが4つであり、それぞれの尤度値の範囲が0以上255以下(つまり2進数で8ビット以下)である場合、左右方向に少なくとも10段配置される。これは、例えば再標本化装置1の加算手段12に対して、4回とも尤度値「255」が入力され、当該加算手段12から遅延手段11−hに対して、累積尤度値「1020(つまり2進数で10ビット)」が入力された場合であっても、桁があふれないようにするためである。
The number of stages in the left-right direction of the delay unit 11-h is the number H of likelihood values input to the
遅延手段11−hには、図1に示すように、後記する加算手段12から、クロックφ1に同期して累積尤度値A1,A2,A3,・・・,AHが順次入力される。そして、遅延手段11−hは、当該クロックφ1の立ち上がりエッジのタイミングで、最下段の遅延手段11−Hから最上段の遅延手段11−1に向かって、累積尤度値A1,A2,A3,・・・,AHを一段ずつ順次シフトさせて保持させる。そして、遅延手段11−hは、比較手段14−1,14−2,・・・,14−(H−1)に対して、累積尤度値A1,A2,A3,・・・を同時に出力し、一様乱数発生手段13に対して、最大の累積尤度値AHを出力する。なお、以下の説明では、複数の累積尤度値A1,A2,A3,・・・,AHを包括して、「累積尤度値Ah(hは1以上H以下の整数)」と表記する場合がある。 As shown in FIG. 1, the delay means 11-h sequentially receives cumulative likelihood values A 1 , A 2 , A 3 ,..., A H from an adder means 12 to be described later in synchronization with the clock φ 1. Entered. The delay means 11-h at the timing of the rising edge of the clock phi 1, towards the delay means 11-1 uppermost from the bottom of the delay means 11-H, cumulative likelihood values A 1, A 2 , A 3 ,..., A H are sequentially shifted and held one step at a time. The delay means 11-h, the comparison means 14-1,14-2, ···, 14- (H- 1) relative to the cumulative likelihood values A 1, A 2, A 3 , ··· Are simultaneously output, and the maximum cumulative likelihood value A H is output to the uniform random number generation means 13. In the following description, a plurality of cumulative likelihood values A 1 , A 2 , A 3 ,..., A H are comprehensively expressed as “cumulative likelihood value A h (h is an integer of 1 or more and H or less). May be written.
加算手段12は、入力された数値を加算するものである。なお、加算手段12が加算する2つの数値は、整数、固定小数点、または浮動小数点のいずれであっても構わない。加算手段12には、図1に示すように、図示しない外部の尤度評価手段から、クロックφ1に同期して尤度値L1,L2,L3,・・・,LHが順次入力されるとともに、シフトレジスタ10の最下段に配置された遅延手段11−Hから、クロックφ1に同期して累積尤度値が順次入力される。ここで、尤度値L1,L2,L3,・・・,LHは、後記するマトリックススイッチ18に入力される、再標本化をしようとする複数の仮説(粒子)1〜Hに対応したものである。
The adding means 12 adds the input numerical values. Note that the two numerical values added by the adding means 12 may be an integer, a fixed point, or a floating point. As shown in FIG. 1, the adding means 12 receives likelihood values L 1 , L 2 , L 3 ,..., L H sequentially from an external likelihood evaluation means (not shown) in synchronization with the clock φ 1. In addition to the input, cumulative likelihood values are sequentially input from the delay means 11 -H arranged at the bottom of the
そして、加算手段12は、両者を加算することでさらに累積尤度値を算出し、これを遅延手段11−Hに出力する。すなわち、加算手段12は、尤度値L1,L2,L3,・・・,LHが入力される度に、当該尤度値L1,L2,L3,・・・,LHが入力された時点における累積尤度値を算出し、当該累積尤度値を遅延手段11−Hに出力する。なお、以下の説明では、複数の尤度値L1,L2,L3,・・・,LHを包括して、「尤度値Lh(hは1以上H以下の整数)」と表記する場合がある。
Then, the adding
加算手段12は、入力された2つの数値が整数または固定小数点による2進数で表現されている場合には、例えば半加算器1個以上および全加算器0個以上によって実現することができる。但し、加算手段12の具体的構成は、図示しない外部の尤度評価手段から入力される尤度値Lhの値の範囲によって異なる。例えば、加算手段12に入力される一方の値、すなわち図示しない外部の尤度評価手段から入力される尤度値Lhの範囲が0以上M以下の整数値である場合、加算手段12に入力される他方の値、すなわち遅延手段11−Hから入力される累積尤度値は、0以上M×(H−1)以下の整数値となる。従って、この場合、以下の式(1)によって加算手段12を構成する最小限の半加算器の数を算出することができるとともに、以下の式(2)によって加算手段12を構成する最小限の全加算器の数を算出することができる。 The adding means 12 can be realized by, for example, one or more half adders and zero or more full adders when the two input numerical values are expressed as integers or binary numbers with a fixed point. However, specific configuration of the adding means 12 is dependent range of values of the likelihood values L h input from the outside of the likelihood evaluation unit (not shown). For example, one of the values input to the adding means 12, that is, when the range of the likelihood values L h input from the outside of the likelihood evaluation unit (not shown) is an integer value of 0 ≦ m ≦ M, input to the adding means 12 The other value, that is, the cumulative likelihood value input from the delay means 11-H is an integer value of 0 or more and M × (H−1) or less. Therefore, in this case, the minimum number of half adders constituting the adding means 12 can be calculated by the following expression (1), and the minimum number constituting the adding means 12 can be calculated by the following expression (2). The number of full adders can be calculated.
加算手段12は、例えば図示しない外部の尤度評価手段から入力される尤度値Lhの範囲が0以上255以下であり、シフトレジスタ10の段数H、すなわち再標本化装置1に入力される尤度値の個数Hが8個である場合、図3に示すように、少なくとも半加算器5個と全加算器7個とで構成することができる。ここで、図3において、A,B,SおよびCの端子を有するブロックは、半加算器を表わしており、A,B,X,SおよびCの端子を有するブロックは、全加算器を示している。そして、図3における半加算器および全加算器の端子の記号は、AおよびBが被加算器入力、Xがキャリー入力、Sが加算結果出力、Cがキャリー出力を表わしている。
The adding means 12 has a range of likelihood values L h inputted from an external likelihood evaluating means (not shown), for example, of 0 or more and 255 or less, and is inputted to the stage number H of the
再標本化装置1では、シフトレジスタ10および加算手段12、すなわち累積尤度値算出手段を前記したように構成することで、最上段の遅延手段11−1から最下段の遅延手段11−Hに向かって、それぞれ累積尤度値Ahが現れる。すなわち、再標本化装置1では、外部の図示しない尤度評価手段から加算手段12に対して尤度列(尤度値L1,L2,L3,・・・,LH)が入力されると、遅延手段11−hから累積尤度列(累積尤度値A1,A2,A3,・・・,AH)が出力される。
In the
以下、遅延手段11−hおよび加算手段12の動作について、図4を参照しながら簡単に説明する。なお、以下では、再標本化装置1に入力される尤度値Lhの個数Hを4個(つまり遅延手段11−hの段数Hを4段)とした場合について説明する。また、図4のタイミングチャートにおいて途切れている箇所は、途中の動作を省略していることを示している。
Hereinafter, operations of the delay unit 11-h and the
まず、加算手段12は、1回目のクロックφ1の立ち上がりエッジのタイミングで外部から尤度値L1が入力されると、これを累積尤度値A1として遅延手段11−hの最下段(説明の便宜上、「遅延手段11−4」とする)に出力する。すると、遅延手段11−4は、加算手段12から入力された累積尤度値A1(=尤度値L1)を保持する。
First, when the likelihood value L 1 is input from the outside at the timing of the first rising edge of the clock φ 1 , the adding
次に、加算手段12は、2回目のクロックφ1の立ち上がりエッジのタイミングで外部から尤度値L2が入力されるとともに、遅延手段11−4から累積尤度値A1(=尤度値L1)が入力されると、両者を加算して累積尤度値A2(=尤度値L1+L2)を算出し、これを遅延手段11−4に出力する。すると、遅延手段11−4は、前記した累積尤度値A1(=尤度値L1)を上段の遅延手段11−3へとシフトさせ、加算手段12から入力された累積尤度値A2(=尤度値L1+L2)を保持する。
Next, the
次に、加算手段12は、3回目のクロックφ1の立ち上がりエッジのタイミングで外部から尤度値L3が入力されるとともに、遅延手段11−4から累積尤度値A2(=尤度値L1+L2)が入力されると、両者を加算して累積尤度値A3(=尤度値L1+L2+L3)を算出し、これを遅延手段11−4に出力する。すると、遅延手段11−4は、前記した累積尤度値A2(=尤度値L1+L2)を上段の遅延手段11−3へとシフトさせ、加算手段12から入力された累積尤度値A3(=尤度値L1+L2+L3)を保持する。また、遅延手段11−3は、前記した累積尤度値A1(=尤度値L1)を上段の遅延手段11−2へとシフトさせ、遅延手段11−4から入力された累積尤度値A2(=尤度値L1+L2)を保持する。
Next, the
次に、加算手段12は、4回目のクロックφ1の立ち上がりエッジのタイミングで外部から尤度値L4が入力されるとともに、遅延手段11−4から累積尤度値A3(=尤度値L1+L2+L3)が入力されると、両者を加算して累積尤度値A4(=尤度値L1+L2+L3+L4)を算出し、これを遅延手段11−4に出力する。すると、遅延手段11−4は、前記した累積尤度値A3(=尤度値L1+L2+L3)を上段の遅延手段11−3へとシフトさせ、加算手段12から入力された累積尤度値A4(=尤度値L1+L2+L3+L4)を保持する。また、遅延手段11−3は、前記した累積尤度値A2(=尤度値L1+L2)を上段の遅延手段11−2へとシフトさせ、遅延手段11−4から入力された累積尤度値A3(=尤度値L1+L2+L3)を保持する。また、遅延手段11−2は、前記した累積尤度値A1(=尤度値L1)を上段の遅延手段11−1へとシフトさせ、遅延手段11−3から入力された累積尤度値A2(=尤度値L1+L2)を保持する。
Then, the addition means 12, together with the likelihood value L 4 is input from the outside at a timing of the fourth clock phi 1 of the rising edge, the cumulative likelihood value A 3 from the delay unit 11-4 (= likelihood value When L 1 + L 2 + L 3 ) is input, the two are added to calculate a cumulative likelihood value A 4 (= likelihood value L 1 + L 2 + L 3 + L 4 ), and this is sent to the delay means 11-4. Output. Then, the delay unit 11-4 shifts the cumulative likelihood value A 3 (= likelihood value L 1 + L 2 + L 3 ) to the upper delay unit 11-3, and the cumulative value input from the
以上のような動作により、累積尤度算手段は、クロックφ1に同期して、加算手段12によって尤度値L1,L2,L3,L4の数に対応する累積尤度値A1,A2,A3,A4を算出し、遅延手段11−1,11−2,11−3,11−4によって累積尤度値A1,A2,A3,A4をそれぞれ保持する。そして、クロックφ2に同期して、遅延手段11−4は、一様乱数発生手段13に対して累積尤度値A4を出力するとともに、遅延手段11−1,11−2,11−3は、複数の比較手段14に対して累積尤度値A1,A2,A3を出力する。以下、再標本化装置1の残りの構成について説明する。
By the operation as described above, the cumulative likelihood calculating means synchronizes with the clock φ 1 , and the cumulative likelihood value A corresponding to the number of likelihood values L 1 , L 2 , L 3 , L 4 by the adding
一様乱数発生手段13は、一様乱数を発生させるものである。この一様乱数とは、前記したように、指定区間内で一様と見なすことができる乱数のことを意味している。一様乱数発生手段13は、図1に示すように、一様乱数を所定の時間間隔ごと、すなわちクロックφ2ごとに発生させるとともに、所定の回数、すなわち出力する粒子の数と同じK回発生させる。一様乱数発生手段13には、図1に示すように、シフトレジスタ10の最下段に配置された遅延手段11−Hから累積尤度値AHが入力される。そして、一様乱数発生手段13は、当該累積尤度値AHに基づいて、0以上AH未満の範囲の一様乱数を発生させる。すなわち、一様乱数発生手段13は、加算手段12によって算出された最大の累積尤度値AH未満の一様乱数を生成する。
The uniform random number generation means 13 generates a uniform random number. As described above, the uniform random number means a random number that can be regarded as uniform within a specified section. Uniform
一様乱数発生手段13は、例えばM系列やPN系列等の擬似乱数発生回路によって発生させた乱数値s(sがとり得る値の最小値は0、最大値はAH以上とする)に対して、遅延手段11−Hから入力された累積尤度値AHによる剰余演算を施すことによって実現することができる。従って、一様乱数発生手段13は、具体的には図5に示すように、擬似乱数発生回路20と、シフトレジスタ21と、切替回路22と、ラッチ回路23と、減算回路24と、シフトレジスタ25と、ラッチ回路26と、から構成することができる。
The uniform random number generation means 13 is for a random value s generated by a pseudo-random number generation circuit such as an M series or a PN series (the minimum value that s can take is 0 and the maximum value is A H or more). Te, it can be realized by providing a remainder operation by cumulative likelihood value a H input from the delay unit 11-H. Therefore, as shown in FIG. 5, the uniform random number generation means 13 includes a pseudo random
擬似乱数発生回路20は、擬似的な乱数を発生させるものである。擬似乱数発生回路20は、前記したように、例えばM系列やPN系列の乱数発生回路によって構成することができ、ここでは図5に示すように、シフトレジスタ21に排他的論理和ゲートを3個接続した周期65535のM系列発生回路で構成されている。
The pseudo random
一様乱数発生手段13の残りの構成であるシフトレジスタ21、切替回路22、ラッチ回路23、減算回路24およびシフトレジスタ25は、前記した累積尤度値AHによる剰余演算を施すための剰余演算回路を構成するものである。これらの構成はそれぞれ一般的なものであるため、詳細な説明は省略する。
The shift register 21 is the remaining structure of the uniform
以下、一様乱数発生手段13の動作について、図6を参照(適宜図5も参照)しながら簡単に説明する。また、図6のタイミングチャートにおいて途切れている箇所は、途中の動作を省略していることを示している。 Hereinafter, the operation of the uniform random number generation means 13 will be briefly described with reference to FIG. 6 (refer to FIG. 5 as appropriate). Further, the interrupted portions in the timing chart of FIG. 6 indicate that intermediate operations are omitted.
まず、一様乱数発生手段13は、図6に示すように、クロックφ3によって擬似乱数発生回路20の擬似乱数の乱数値sを更新する。次に、一様乱数発生手段13は、図6に示すように、制御信号c1をローレベルにすることで、切替回路22のスイッチ群を擬似乱数発生回路20側に倒しつつ、シフトレジスタ25をクリアする。次に、一様乱数発生手段13は、図6に示すように、クロックφ4に1番目の正のパルスを与え、ラッチ回路23に擬似乱数発生回路20が発生させた擬似乱数の乱数値sをラッチする。次に、一様乱数発生手段13は、図6に示すように、制御信号c2をローレベルとした状態で、クロックφ5に1番目の正のパルスを与え、H番目の累積尤度値出力の値(シフトレジスタ10の最下段の遅延手段11−Hから出力される累積尤度値AH)をシフトレジスタ25にセットし、その後、制御信号c2をハイレベルにする。
First, as shown in FIG. 6, the uniform random number generation means 13 updates the pseudo random number value s of the pseudo random
次に、一様乱数発生手段13は、図6に示すように、クロックφ4とクロックφ5について、2番目ないし(ビット幅−1)番目(図5の例では15番目)まで、交互に正のパルスを与える(但し、クロックφ4をクロックφ5に先行させる)。これにより、擬似乱数の乱数値sから引き得る最大の「AHの整数倍」を引いた結果(すなわち、sをAHで除した際の剰余(R=s%AH))が減算回路24の出力に現れる。そして、一様乱数発生手段13は、図6に示すように、最後にクロックφ2に正のパルスを与えることで、0以上AH未満の整数の一様乱数R(以下、単に乱数Rという)をラッチ回路26にラッチし、乱数出力を得る。このように、一様乱数発生手段13はクロックφ2ごとに乱数Rを発生させ、図1に示すように、その都度当該乱数Rを複数の比較手段14に対して出力する。
Then, the uniform
なお、図6のタイミングチャートにおける「AH−1が乱数Rの最大値となる」とは、後記する比較手段14において、累積尤度値と比較される乱数Rの最大値が実質的にAH−1であることを示している。すなわち、一様乱数発生手段13は、前記したように0以上AH未満の乱数Rを発生させることができるが、図1に示すように、比較手段14にはシフトレジスタ10の最下段に配置された遅延手段11−Hから累積尤度値AHが入力されない。そのため、仮に一様乱数発生手段13によってAH−1超えAH以下の乱数Rが生成され、当該乱数Rが比較手段14に入力されると、後記する比較結果Dhの値が必ず0となる。従って、図6のタイミングチャートにおける「AH−1が乱数Rの最大値となる」とは、乱数Rの実質的な最大値がAH−1であることを示している。
Note that “A H-1 is the maximum value of the random number R” in the timing chart of FIG. 6 means that the maximum value of the random number R compared with the cumulative likelihood value is substantially A in the comparison means 14 described later. It shows that it is H-1 . That is, uniform
比較手段14は、入力された2つの数値の大小を比較するものである。比較手段14は、図1に示すように、複数の比較手段14−1,14−2,・・・,14−(H−1)から構成される。すなわち、比較手段14は、図1に示すように、比較手段が、シフトレジスタ10を構成する遅延手段の段数Hよりも1個少ないがH−1段分カスケード接続されて構成される。
The comparing means 14 compares the magnitudes of the two input numerical values. As shown in FIG. 1, the
複数の比較手段14には、図1に示すように、遅延手段11−Hを除く遅延手段11−hから、累積尤度値Ahがそれぞれ同時に入力されるとともに、一様乱数発生手段13から乱数Rがそれぞれ同時に入力される。そして、比較手段14は、前記した一様乱数発生手段13によって一様乱数Rが生成されて入力される度に、以下の式(3)に示すように、累積尤度値Ahと乱数Rとの大小を比較し、その比較結果Dhをプライオリティエンコーダ15に出力する。すなわち、比較手段14は、以下の式(3)に示すように、累積尤度値Ahが乱数Rより大きい場合は「比較結果Dh=0」を出力し、累積尤度値Ahが乱数R以下である場合は「比較結果Dh=1」を出力する。
As shown in FIG. 1, the cumulative likelihood values A h are simultaneously input to the plurality of comparison means 14 from the delay means 11-h excluding the delay means 11-H, and from the uniform random number generation means 13. A random number R is input simultaneously. Then, each time the uniform random number R is generated and inputted by the uniform random number generating means 13, the comparing
ここで、「比較結果Dhを出力する」とは、例えば再標本化装置1の加算手段12にH個の尤度値L1,L2,L3,・・・,LHが入力された場合に、比較手段14が、入力された尤度値Lhよりも1個少ないH−1個の比較結果D1,D2,D3,・・・,DH−1をプライオリティエンコーダ15に対して出力することを示している。なお、前記した式(3)において、Dhの値「0」はローレベルと読み替え、Dhの値「1」はハイレベルと読み替えても構わない。
Here, “output comparison result D h ” means that, for example, H likelihood values L 1 , L 2 , L 3 ,..., L H are input to the adding means 12 of the
例えば、再標本化装置1の加算手段12に入力される尤度値Lhの個数Hが4つ(つまり遅延手段11−hの段数Hが4段)である場合、比較手段14−1には、遅延手段11−1から累積尤度値A1が入力され、比較手段14−2には、遅延手段11−2から累積尤度値A2が入力される。そして、比較手段14の最下段(説明の便宜上、「比較手段14−3」とする)には、最下段の遅延手段11−3から累積尤度値A3が入力される。また同時に、比較手段14−1,14−2,14−3には、クロックφ2に同期して乱数Rがそれぞれ入力される。
For example, if the number H of the likelihood values L h inputted to the adding means 12 of the
そして、比較手段14−1は、累積尤度値A1と乱数Rとの比較結果D1をプライオリティエンコーダ15に出力し、比較手段14−2は、累積尤度値A2と乱数Rとの比較結果D2をプライオリティエンコーダ15に出力し、比較手段14−3は、累積尤度値A3と乱数Rとの比較結果D3をプライオリティエンコーダ15に出力する。このように、再標本化装置1の加算手段12に4つの尤度値L1,L2,L3,L4が入力されると、プライオリティエンコーダ15には、3つの比較結果D1,D2,D3が同時に入力されることになる。
Then, comparison means 14-1, the comparison result D 1 of the cumulative likelihood value A 1 and the random number R output to the
比較手段14は、例えば累積尤度値Ahと乱数Rとの差分を演算する減算回路として実装し、R−Ahを演算した結果として現れる最上位ビットのボローフラグを比較結果Dhとすることができる。
For example, the
プライオリティエンコーダ15は、優先順位の最も高い入力に対応するコードを出力するものである。プライオリティエンコーダ15には、具体的には図1に示すように、複数の比較手段14−1,14−2,・・・,14−(H−1)のそれぞれから比較結果Dhが入力される。この比較結果Dhは、前記した式(3)に示すように、0または1の数値(フラグ)から構成されるものである。そして、プライオリティエンコーダ15は、複数の比較手段14−1,14−2,・・・,14−(H−1)から入力される複数の比較結果Dhのうち、Dh=1(乱数R以下であると判定された比較結果)となるものを選出し、値が1である比較結果Dhのうちの最大の「h」を選択する。なお、全てのhについてDh=0の場合には、最大の「h」は0であったものとみなす。
The
ここで、前記した「複数の比較結果Dhのうち、Dh=1(乱数R以下であると判定された比較結果)となるものを選出し、値が1である比較結果Dhのうちの最大の「h」を選択する」とは、言い換えれば、複数の比較手段14−1,14−2,・・・,14−(H−1)によって乱数R以下であると判定された累積尤度値Ahとなるものを選出し、これらの累積尤度値Ahの中から、最大の累積尤度値Ahを選択するとともに、当該累積尤度値Ahのインデックス(下付き数字)である「h」を選択するという処理のことを意味している。 Here, among the above-described plurality of comparison results D h , those that satisfy D h = 1 (comparison results determined to be equal to or less than the random number R) are selected, and among the comparison results D h whose value is 1. In other words, “the largest“ h ”is selected” is an accumulation determined by the plurality of comparison means 14-1, 14-2,..., 14-(H−1) to be equal to or less than the random number R. elect that the likelihood value a h, from these cumulative likelihood value a h, with selecting a maximum cumulative likelihood value a h, index (subscript of the cumulative likelihood value a h ) That is “h” is selected.
そして、プライオリティエンコーダ15は、選択したhに1を加えた(h+1)を標本点Pとしてマトリックス制御手段17に出力する。ここで、標本点Pとは、言い換えれば、前記した最大の累積尤度値Ahが算出される際に加算手段12(累積尤度値算出手段)に入力された尤度値Lhに対応する仮説を示すコードのことを意味している。なお、プライオリティエンコーダ15は、前記した複数の比較手段14−1,14−2,・・・,14−(H−1)から比較結果Dhが入力される度に、コード(標本点P)を生成し、これをマトリックス制御手段17に出力する。
Then, the
例えば、再標本化装置1に入力される尤度値Lhの個数Hが4つ(つまり遅延手段11−hの段数Hが4段)である場合、プライオリティエンコーダ15には、比較手段14−1から比較結果D1が、比較手段14−1から比較結果D2が、比較手段14の最下段(説明の便宜上、「比較手段14−3」とする)から比較結果D3が入力される。そして、例えばこれらの比較結果D1,D2,D3の値がそれぞれ「D1=1,D2=1,D3=0」である場合、プライオリティエンコーダ15は、値が1である比較結果D1,D2のうちの最大の「h」(インデックス、下付き数字)である「2」を選出し、当該「2」に1を加えた「3」のコード(標本点P)をマトリックス制御手段17に出力する。
For example, if the number H of the likelihood values L h inputted to the
ここで、プライオリティエンコーダ15が生成する標本点Pは、再標本化の対象となる仮説を示している。従って、前記した例において、プライオリティエンコーダ15によって値が1である比較結果D1,D2のうちの最大の「h」に1を加えた「3」を選出するという処理は、比較手段14−3によって乱数R以下であると判定された累積尤度値A1,A2の中で最も大きい累積尤度値A2を選択した後に、当該累積尤度値A2よりも一段階大きい累積尤度値A3を選択し、当該累積尤度値A3が算出される際に加算手段12に入力された尤度値L3に対応する仮説を選出するという処理に相当することになる。
Here, the sampling point P generated by the
以上の処理により、比較手段14の比較結果Dhのうち、1(ハイレベル)のビットが立つ「h」である標本点Pは、近似的に一様な乱数Rを累積尤度関数の逆関数に代入した結果に近似することになる。すなわち、標本点Pは、累積尤度関数に近似的に比例する確率で生起することになる。 As a result of the above processing, the sampling point P of “h” in which the 1 (high level) bit is set out of the comparison result D h of the comparison means 14 is converted into an approximately uniform random number R by the inverse of the cumulative likelihood function. It approximates the result assigned to the function. That is, the sample point P occurs with a probability that is approximately proportional to the cumulative likelihood function.
計数手段16は、クロックφ2のタイミングで1〜Kまで計数するカウンタである。このKは、図1に示すように、再標本化後の粒子の数(自然数)であり、予め任意の数で設定される。計数手段16は、例えばバイナリカウンタを用いることができ、図1に示すように、クロックφ2に同期して、そのカウント値kをマトリックス制御手段17に出力する。 Counting means 16 is a counter for counting at the timing of the clock phi 2 to 1 to K. As shown in FIG. 1, K is the number of particles after re-sampling (natural number), and is set in advance as an arbitrary number. Counting means 16, for example, may be used the binary counter, as shown in FIG. 1, in synchronism with the clock phi 2, and outputs the count value k in the matrix control unit 17.
マトリックス制御手段17は、プライオリティエンコーダ15から入力される標本点P(コード)と、計数手段16から入力されるカウント値kと、に基づいてマトリックススイッチ18の接点の継断を制御するものである。マトリックス制御手段17は、具体的には図1に示すように、プライオリティエンコーダ15から標本点Pが、計数手段16からカウント値kが、それぞれ入力されると、P番目の入力(図1では行)とk番目の出力(図1では列)との接点を閉じ、P番目以外の入力(図1では行)とk番目の出力(図1では列)との接点を開放するような接点制御信号を生成し、これをマトリックススイッチ18に出力する。これにより、マトリックス制御手段17は、図1に示すように、1番目〜K番目の各粒子(仮説)の出力を、1番目〜H番目の粒子の入力の中の1つの入力に接続することができ、その結果として、マトリックススイッチ18に入力されたH個の粒子を再標本化後のK個の粒子に写像して出力することができる。
The matrix control unit 17 controls the connection / disconnection of the
マトリックススイッチ18は、スイッチング操作によって、外部から入力される複数の仮説(粒子)を複数の仮説(粒子)に再標本化するものである。マトリックススイッチ18は、図1に示すように、碁盤状に接点が配置されており、マトリックス制御手段17から入力される接点制御信号に従って、これらの接点を閉鎖または開放するように構成されている。また、マトリックススイッチ18が備える接点は、図1に示すように、外部から入力される再標本化前の複数の仮説(粒子)1〜Hと、外部に出力する再標本化後の複数の仮説(粒子)1〜Kと、に対応している。このマトリックススイッチ18は、例えばCMOS(Complementary Metal Oxide Semiconductor)によるスイッチで実現することができる。
The
マトリックススイッチ18には、図1に示すように、図示しない外部の仮説(粒子)生成手段から、再標本化前の複数の仮説(粒子)1〜Hが入力され、マトリックス制御手段17から、接点制御信号が入力される。この接点制御信号には、プライオリティエンコーダ15によって生成された標本点P(コード)と、計数手段16によって計数されたカウント値kに関する情報が含まれている。そして、マトリックススイッチ18は、当該接点制御信号に基づいて図1に示す接点を制御することで、再標本化後の複数の仮説(粒子)1〜Kを出力する。このような処理によって、マトリックススイッチ18における粒子入力と粒子出力の関係が、再標本化前の粒子と再標本化後の粒子の関係となる。すなわち、マトリックススイッチ18に複数の粒子の状態量(複数の仮説1〜H)を入力すると、即座に再標本化が実行され、再標本化後の複数の粒子の状態量(複数の仮説1〜K)が出力されることになる。
As shown in FIG. 1, a plurality of hypotheses (particles) 1 to H before re-sampling are input to the
以上のような構成を備える再標本化装置1は、累積尤度値算出手段(加算手段12およびシフトレジスタ10)、一様乱数発生手段13、複数の比較手段14およびプライオリティエンコーダ15における一連の処理によって、再標本化の対象となる複数の仮説を決定する。そして、マトリックススイッチ18に複数の仮説が入力されると、当該マトリックススイッチ18から、前記した一連の処理によって決定された再標本化後の複数の仮説が一度に出力されることになる。従って、再標本化装置1によれば、複数の仮説(粒子)をメモリに記憶する必要がないため、メモリのランダムアクセスが発生することがない。また、再標本化装置1によれば、マトリックススイッチ18に標本化前の複数の仮説を入力すると、再標本化後の複数の仮説が一度に出力されるという並列的なスイッチング操作を実現することができる。
The
従って、再標本化装置1によれば、論理回路や順序回路を用いてハードウェア処理を行うことで、仮説(粒子)をメモリに記憶する必要がなく、かつ、複数の仮説(粒子)を一度に再標本化することができるため、メモリのランダムアクセスを避けつつ、並列的なスイッチング操作によって高速な再標本化を実現することができる。また、再標本化装置1によれば、状態空間が高次である場合であっても、並列的に処理を行うことができるため、粒子数が少ない場合において、次元数に関わらず高速に再標本化を行うことができる。
Therefore, according to the
以上、本発明に係る再標本化装置について、発明を実施するための形態により具体的に説明したが、本発明の趣旨はこれらの記載に限定されるものではなく、特許請求の範囲の記載に基づいて広く解釈されなければならない。また、これらの記載に基づいて種々変更、改変等したものも本発明の趣旨に含まれることはいうまでもない。 The resampling apparatus according to the present invention has been specifically described above with reference to the embodiments for carrying out the invention. However, the gist of the present invention is not limited to these descriptions, and the description of the claims Should be widely interpreted on the basis. Needless to say, various changes and modifications based on these descriptions are also included in the spirit of the present invention.
1 再標本化装置
10 シフトレジスタ
11−1,11−2,11−3,11−H,11−h 遅延手段
12 加算手段
13 一様乱数発生手段
14,14−1,14−2,14−(H−1) 比較手段
15 プライオリティエンコーダ
16 計数手段
17 マトリックス制御手段
18 マトリックススイッチ
20 擬似乱数発生回路
21 シフトレジスタ
22 切替回路
23 ラッチ回路
24 減算回路
25 シフトレジスタ
26 ラッチ回路
1
Claims (2)
前記複数の仮説に対応した前記尤度値が順次入力され、当該尤度値が入力された時点における累積尤度値を、当該尤度値が入力される度に算出する累積尤度値算出手段と、
前記累積値尤度値算出手段によって算出された最大の累積尤度値未満の一様乱数を、所定の時間間隔で所定の回数だけ生成する一様乱数発生手段と、
前記累積尤度値算出手段によって算出された複数の前記累積尤度値のそれぞれと、前記一様乱数発生手段によって生成された前記一様乱数とを、当該一様乱数が生成される度に比較する複数の比較手段と、
前記複数の比較手段によって前記一様乱数以下であると判定された前記累積尤度値の中から最大の累積尤度値を選択し、当該最大の累積尤度値が算出される際に前記累積尤度値算出手段に入力された前記尤度値に対応する仮説を示すコードを、前記複数の比較手段から比較結果が入力される度に生成するプライオリティエンコーダと、
前記複数の仮説が入力されるとともに、当該複数の仮説に対応した複数の接点を備え、前記プライオリティエンコーダによって生成された複数の前記コードが示す複数の仮説に対応する前記接点を制御することで、再標本化された複数の仮説を出力するマトリックススイッチと、
を備えることを特徴とする再標本化装置。 A re-sampling device that re-samples a plurality of hypotheses that are candidates for a solution of the parameter used when estimating a parameter of the model by a sequential Monte Carlo method according to a likelihood value indicating the likelihood of the hypothesis,
Cumulative likelihood value calculation means for sequentially calculating the likelihood values corresponding to the plurality of hypotheses and calculating the cumulative likelihood value at the time when the likelihood value is input each time the likelihood value is input. When,
Uniform random number generating means for generating a uniform random number less than the maximum cumulative likelihood value calculated by the cumulative likelihood value calculating means for a predetermined number of times at a predetermined time interval;
Each of the plurality of cumulative likelihood values calculated by the cumulative likelihood value calculating unit and the uniform random number generated by the uniform random number generating unit are compared each time the uniform random number is generated. A plurality of comparison means,
The maximum cumulative likelihood value is selected from the cumulative likelihood values determined by the plurality of comparison means to be equal to or less than the uniform random number, and the cumulative cumulative value is calculated when the maximum cumulative likelihood value is calculated. A priority encoder that generates a code indicating a hypothesis corresponding to the likelihood value input to the likelihood value calculation means each time a comparison result is input from the plurality of comparison means;
The plurality of hypotheses are input, a plurality of contacts corresponding to the plurality of hypotheses are provided, and the contacts corresponding to the plurality of hypotheses indicated by the plurality of codes generated by the priority encoder are controlled, A matrix switch that outputs a number of resampled hypotheses;
A re-sampling device comprising:
前記複数の仮説に対応した前記複数の尤度値が順次入力され、当該複数の尤度値を順次加算することで、入力された前記尤度値の数に対応する複数の前記累積尤度値を算出する加算手段と、
前記加算手段から前記累積尤度値が順次入力され、前記複数の比較手段に対して、複数の前記累積尤度値を同時に出力するシフトレジスタと、
を備えることを特徴とする請求項1に記載の再標本化装置。 The cumulative likelihood calculating means includes
The plurality of likelihood values corresponding to the plurality of hypotheses are sequentially input, and the plurality of likelihood values corresponding to the number of input likelihood values are sequentially added by sequentially adding the plurality of likelihood values. Adding means for calculating
The cumulative likelihood value is sequentially input from the adding means, and a shift register that outputs a plurality of the cumulative likelihood values simultaneously to the plurality of comparing means;
The resampling apparatus according to claim 1, further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011234314A JP5845054B2 (en) | 2011-10-25 | 2011-10-25 | Resampling equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011234314A JP5845054B2 (en) | 2011-10-25 | 2011-10-25 | Resampling equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013092895A true JP2013092895A (en) | 2013-05-16 |
JP5845054B2 JP5845054B2 (en) | 2016-01-20 |
Family
ID=48615974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011234314A Active JP5845054B2 (en) | 2011-10-25 | 2011-10-25 | Resampling equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5845054B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220051044A1 (en) * | 2020-08-14 | 2022-02-17 | Fujitsu Limited | Image processing apparatus and computer-readable storage medium for storing screen processing program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011210063A (en) * | 2010-03-30 | 2011-10-20 | Nec Corp | Sequential clustering device, method and program |
JP2012078980A (en) * | 2010-09-30 | 2012-04-19 | Nippon Hoso Kyokai <Nhk> | Model parameter estimation device and program therefor |
-
2011
- 2011-10-25 JP JP2011234314A patent/JP5845054B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011210063A (en) * | 2010-03-30 | 2011-10-20 | Nec Corp | Sequential clustering device, method and program |
JP2012078980A (en) * | 2010-09-30 | 2012-04-19 | Nippon Hoso Kyokai <Nhk> | Model parameter estimation device and program therefor |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220051044A1 (en) * | 2020-08-14 | 2022-02-17 | Fujitsu Limited | Image processing apparatus and computer-readable storage medium for storing screen processing program |
US11682188B2 (en) | 2020-08-14 | 2023-06-20 | Fujitsu Limited | Image processing apparatus and computer-readable storage medium for storing screen processing program |
Also Published As
Publication number | Publication date |
---|---|
JP5845054B2 (en) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4413858B2 (en) | Random number test circuit | |
US20190012409A1 (en) | Optimization apparatus and method of controlling the same | |
US10534576B2 (en) | Optimization apparatus and control method thereof | |
US20220207370A1 (en) | Inferring device, training device, inferring method, and training method | |
JP2020086821A (en) | Optimization device and control method thereof | |
JP6923790B2 (en) | Optimization device and control method of optimization device | |
Chernov et al. | Basic concept of linear synthesis of multi-valued digital structures in linear spaces | |
JP2020204929A (en) | Sampling device and sampling method | |
US8345816B1 (en) | RAM-based event counters using transposition | |
CN111077768A (en) | Optimization device and control method of optimization device | |
JP2011060158A (en) | Physical random number generation device | |
Yao et al. | Novel RNS parameter selection for fast modular multiplication | |
JP5845054B2 (en) | Resampling equipment | |
CN117435855B (en) | Method for performing convolution operation, electronic device, and storage medium | |
JP2020042576A (en) | Compound search device, compound search method, and compound search program | |
JP2019133651A (en) | Optimization apparatus and optimization apparatus control method | |
Asadi et al. | CORLD: In-stream correlation manipulation for low-discrepancy stochastic computing | |
Piestrak | Design of multi-residue generators using shared logic | |
Güngör et al. | A logistic map Runge Kutta-4 solution for FPGA using fixed point representation | |
RU2661797C1 (en) | Computing device | |
Abdellatef et al. | Characterization of correlation in stochastic computing functions | |
Moghadam et al. | P2LSG: Powers-of-2 low-discrepancy sequence generator for stochastic computing | |
JPWO2015133095A1 (en) | Parity check code generation apparatus, encoding method, encoding apparatus, and control program | |
KR100858559B1 (en) | Method for adding and multipying redundant binary and Apparatus for adding and multipying redundant binary | |
CN111105846B (en) | Device and method for retrieving compounds |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140326 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140901 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150731 |
|
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: 20151027 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5845054 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |