JP2019079523A - ニューラルネットワークにおけるランダム性の生成 - Google Patents
ニューラルネットワークにおけるランダム性の生成 Download PDFInfo
- Publication number
- JP2019079523A JP2019079523A JP2018197148A JP2018197148A JP2019079523A JP 2019079523 A JP2019079523 A JP 2019079523A JP 2018197148 A JP2018197148 A JP 2018197148A JP 2018197148 A JP2018197148 A JP 2018197148A JP 2019079523 A JP2019079523 A JP 2019079523A
- Authority
- JP
- Japan
- Prior art keywords
- execution unit
- distribution
- bit
- unit according
- result
- 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
- 238000013528 artificial neural network Methods 0.000 title description 17
- 238000009826 distribution Methods 0.000 claims abstract description 75
- 238000004590 computer program Methods 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 21
- 238000010606 normalization Methods 0.000 claims description 17
- 238000007792 addition Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 11
- 230000004913 activation Effects 0.000 description 6
- 238000005315 distribution function Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000012614 Monte-Carlo sampling Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 101100194362 Schizosaccharomyces pombe (strain 972 / ATCC 24843) res1 gene Proteins 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/501—Half or full adders, i.e. basic adder cells for one denomination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
命令の実行時に少なくとも1つのランダム化ビットストリングを生成するように構成されたハードウェア擬似乱数生成器と、
ランダム化ビットストリングから選択された所定のビット長の複数のビットシーケンスを受け取り、ビットシーケンスを足し合わせて結果を生成するように構成された加算回路と、
を備える実行ユニットが提供される。
命令の実行時に少なくとも1つのランダム化ビットストリングを生成するステップと、
ランダム化ビットストリングから所定のビット長のいくつかのビットシーケンスを選択し、ビットシーケンスを足し合わせて結果を生成するステップと、
を含む方法を提供する。別の態様は、実行時に上記の方法を行う非伝送媒体に記録されたコンピュータプログラム命令を含むコンピュータプログラムを備えるコンピュータプログラム製品を提供する。
1)正規(ガウス)分布への近接とハードウェアコストとの間の妥当な折り合い。
2)これを行うことで、扱い難い分数ではなく標準偏差が1の分布が生成される。これにより、整数を標準偏差が1となる浮動小数点値にスケーリングするのに必要なハードウェアを単純化できる。
Claims (20)
- 所定の確率分布に基づいて乱数を生成するためにコンピュータプログラム命令を実行するように構成された実行ユニットであって、
前記命令の実行時に少なくとも1つのランダム化ビットストリングを生成するように構成されたハードウェア擬似乱数生成器と、
前記ランダム化ビットストリングから選択された所定のビット長の複数のビットシーケンスを受け取り、前記ビットシーケンスを足し合わせて結果を生成するように構成された加算回路と、
を備える実行ユニット。 - 前記ハードウェア擬似乱数生成器は、前記命令の実行時に2つ以上のランダム化ビットストリングを生成するように構成され、前記加算回路は、2つ以上の結果を2つ以上のそれぞれの足し合わせから生成するように構成されている、請求項1に記載の実行ユニット。
- 前記正規化回路は、各結果を受け取り、前記正規化された結果を提供するように構成されたルックアップテーブルを備える、請求項1または2に記載の実行ユニット。
- 前記正規化回路は、前記結果から所定の数を減算し、前記所定の数は、前記加算回路によって生成される結果の取り得る全数値範囲の半分として計算される、請求項1から3のいずれか一項に記載の実行ユニット。
- 前記ビットシーケンスの数が12である、請求項1から4のいずれか一項に記載の実行ユニット。
- 前記正規化回路は、前記結果から186を減算するように構成されている、請求項5に記載の実行ユニット。
- 前記正規化回路は、ある数で除算するように構成されており、前記数は、前記所定のビット長を有する一様に分布されたランダム変数の取り得る値の数である、請求項1から6のいずれか一項に記載の実行ユニット。
- 各シーケンスの前記ビット長が5である、請求項1から7のいずれか一項に記載の実行ユニット。
- 前記正規化回路は、32で除算するように構成されている、請求項7に記載の実行ユニット。
- 前記所定の確率分布は、スケーリングされ、オフセットされ、量子化されたアーウィン・ホール分布の近似である、請求項1から9のいずれか一項に記載の実行ユニット。
- 前記所定の確率分布にさらに正確に適合するように、複数の前記コンピュータプログラム命令からの結果を足し合わせる、足し合わせ回路を備える、請求項1から10のいずれか一項に記載の実行ユニット。
- 前記ランダム化ビットストリングからの1つまたは複数のビットシーケンスを1つまたは複数の正規化された結果と組み合わせるように構成されている、請求項1から11のいずれか一項に記載の実行ユニット。
- 前記結果を受け取り、正規化された結果を生成して、前記所定の確率分布の中心を、選択された既知の値に合わせ、前記分布の分散を、選択された既知の値に調整するように構成された正規化回路を備える、請求項1から12のいずれか一項に記載の実行ユニット。
- 所定の確率分布に基づいて乱数を生成するためにコンピュータプログラム命令を実行する方法であって、
前記命令の実行時に少なくとも1つのランダム化ビットストリングを生成するステップと、
前記ランダム化ビットストリングから所定のビット長のいくつかのビットシーケンスを選択し、前記ビットシーケンスを足し合わせて結果を生成するステップと、
を含む方法。 - 前記命令に応答して、2つ以上のランダム化ビットストリングが生成され、2つ以上の結果が2つ以上のそれぞれの足し合わせから生成される、請求項14に記載の方法。
- 前記正規化ステップが、ルックアップテーブルを使用して行われる、請求項14または15に記載の方法。
- ビットシーケンスの前記数が12である、請求項14から16のいずれか一項に記載の方法。
- 各シーケンスのビット長が5である、請求項14から17のいずれか一項に記載の方法。
- 前記結果を正規化して、正規化された結果を生成し、前記所定の確率分布の中心を、選択された既知の値に合わせ、前記分布の分散を、選択された既知の値に調整するステップを含む、請求項14から18のいずれか一項に記載の方法。
- 所定の確率分布に基づいて乱数を生成する方法をコンピュータに実行させるプログラムであって、前記方法は、
前記命令の実行時に少なくとも1つのランダム化ビットストリングを生成するステップと、
ランダム化ビットストリングから所定のビット長のいくつかのビットシーケンスを選択し、それらのビットシーケンスを足し合わせて結果を生成するステップと
を含む、プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1717309.7A GB2568660B (en) | 2017-10-20 | 2017-10-20 | Generating Random Numbers Based on a Predetermined Probaility Distribution in an Execution Unit |
GB1717309.7 | 2017-10-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019079523A true JP2019079523A (ja) | 2019-05-23 |
JP6744375B2 JP6744375B2 (ja) | 2020-08-19 |
Family
ID=60481696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018197148A Active JP6744375B2 (ja) | 2017-10-20 | 2018-10-19 | ニューラルネットワークにおけるランダム性の生成 |
Country Status (8)
Country | Link |
---|---|
US (2) | US10613833B2 (ja) |
EP (1) | EP3474134B1 (ja) |
JP (1) | JP6744375B2 (ja) |
KR (1) | KR102181385B1 (ja) |
CN (1) | CN109697048B (ja) |
CA (1) | CA3021415C (ja) |
GB (1) | GB2568660B (ja) |
TW (1) | TWI717646B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112021006880T5 (de) | 2021-01-22 | 2023-11-16 | Nec Corporation | Zufallszahlengenerator, Zufallszahlen-Erzeugungsverfahren und nichtflüchtiges, computerlesbares Medium das ein Programm speichert |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2568660B (en) * | 2017-10-20 | 2020-10-14 | Graphcore Ltd | Generating Random Numbers Based on a Predetermined Probaility Distribution in an Execution Unit |
US11533272B1 (en) * | 2018-02-06 | 2022-12-20 | Amesite Inc. | Computer based education methods and apparatus |
CN110765111B (zh) * | 2019-10-28 | 2023-03-31 | 深圳市商汤科技有限公司 | 存储和读取方法、装置、电子设备和存储介质 |
TWI754970B (zh) * | 2020-06-22 | 2022-02-11 | 鴻海精密工業股份有限公司 | 加速啟動函數運算的裝置、方法及存儲介質 |
CN112580822B (zh) * | 2020-12-16 | 2023-10-17 | 北京百度网讯科技有限公司 | 机器学习模型的对抗训练方法装置、电子设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4218749A (en) * | 1978-09-25 | 1980-08-19 | Sangamo Weston, Inc. | Apparatus and method for digital noise synthesis |
GB2076570A (en) * | 1980-05-14 | 1981-12-02 | British Broadcasting Corp | Random Number Generator |
JPH06132825A (ja) * | 1992-10-16 | 1994-05-13 | Nippon Precision Circuits Kk | 信号生成回路 |
JP2005038229A (ja) * | 2003-07-16 | 2005-02-10 | Fujitsu Ltd | 乱数発生装置 |
JP2008078131A (ja) * | 2006-08-28 | 2008-04-03 | Gm Global Technology Operations Inc | パターン認識技法を使用する水蓄積における電池間の変動性の検出 |
JP2009049547A (ja) * | 2007-08-15 | 2009-03-05 | Seiko Epson Corp | 画像処理装置、画像処理方法、画像処理プログラム |
JP2013214050A (ja) * | 2012-03-30 | 2013-10-17 | Freescale Semiconductor Inc | ランダム値生成方法およびシステム |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE380696B (sv) | 1974-03-20 | 1975-11-10 | Philips Svenska Ab | Sett att alstra en pseudoslumpbitfoljd och anordning for utforande av settet. |
JPH03117209A (ja) * | 1989-09-29 | 1991-05-20 | Anritsu Corp | デジタルガウス性雑音信号発生装置 |
JPH05216630A (ja) | 1991-11-29 | 1993-08-27 | Nec Corp | 相関のある乱数発生器 |
JP2000276459A (ja) | 1999-03-26 | 2000-10-06 | Fujitsu Ltd | 学習による変換関数を用いた乱数発生装置,乱数発生方法および乱数発生システム |
US20030177155A1 (en) * | 2002-03-15 | 2003-09-18 | Shackleford J. Barry | Random number converter of distribution from uniform to gaussian-like |
JP4121769B2 (ja) | 2002-04-30 | 2008-07-23 | 株式会社エヌ・ティ・ティ・ドコモ | 乱数列生成装置及び乱数列生成方法、並びに伝搬モデルシミュレーション装置及び方法 |
US7472148B2 (en) * | 2004-07-23 | 2008-12-30 | Qualcomm Incorporated | Method and apparatus for random-number generator |
JP2006072891A (ja) | 2004-09-06 | 2006-03-16 | Sony Corp | セルオートマトンに基づく、制御可能な周期を有する擬似乱数シーケンスの生成方法および装置 |
US8255443B2 (en) * | 2008-06-03 | 2012-08-28 | International Business Machines Corporation | Execution unit with inline pseudorandom number generator |
US8601485B2 (en) * | 2011-05-25 | 2013-12-03 | Arm Limited | Data processing apparatus and method for processing a received workload in order to generate result data |
EP2798771A4 (en) * | 2011-12-29 | 2015-10-07 | Intel Corp | METHOD AND APPARATUS FOR NON-DETERMINISTIC RAND BIT GENERATOR (NRBG) |
US10061562B2 (en) * | 2012-09-29 | 2018-08-28 | Pivotal Software, Inc. | Random number generator in a parallel processing database |
US8873750B2 (en) * | 2013-03-14 | 2014-10-28 | International Business Machines Corporation | Instruction for performing a pseudorandom number generate operation |
US9417845B2 (en) * | 2013-10-02 | 2016-08-16 | Qualcomm Incorporated | Method and apparatus for producing programmable probability distribution function of pseudo-random numbers |
CN105045561A (zh) * | 2015-08-12 | 2015-11-11 | 中国电子科技集团公司第四十一研究所 | 一种伪随机数产生方法 |
US10922052B2 (en) * | 2015-10-12 | 2021-02-16 | Oracle International Corporation | Generating pseudorandom number sequences by nonlinear mixing of multiple subsidiary pseudorandom number generators |
US20170220322A1 (en) * | 2016-01-28 | 2017-08-03 | International Business Machines Corporation | Generating gaussian random numbers using inverse sampling and recurrence relationship |
ES2934735T3 (es) * | 2017-04-07 | 2023-02-24 | Intel Corp | Sistemas y métodos para generar números aleatorios gaussianos con aceleración por hardware |
GB2568660B (en) * | 2017-10-20 | 2020-10-14 | Graphcore Ltd | Generating Random Numbers Based on a Predetermined Probaility Distribution in an Execution Unit |
-
2017
- 2017-10-20 GB GB1717309.7A patent/GB2568660B/en active Active
-
2018
- 2018-02-01 US US15/886,505 patent/US10613833B2/en active Active
- 2018-10-12 EP EP18200110.7A patent/EP3474134B1/en active Active
- 2018-10-16 CN CN201811206421.4A patent/CN109697048B/zh active Active
- 2018-10-19 CA CA3021415A patent/CA3021415C/en active Active
- 2018-10-19 JP JP2018197148A patent/JP6744375B2/ja active Active
- 2018-10-19 KR KR1020180125337A patent/KR102181385B1/ko active IP Right Grant
- 2018-10-19 TW TW107136967A patent/TWI717646B/zh active
-
2020
- 2020-02-21 US US16/797,582 patent/US11334320B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4218749A (en) * | 1978-09-25 | 1980-08-19 | Sangamo Weston, Inc. | Apparatus and method for digital noise synthesis |
GB2076570A (en) * | 1980-05-14 | 1981-12-02 | British Broadcasting Corp | Random Number Generator |
JPH06132825A (ja) * | 1992-10-16 | 1994-05-13 | Nippon Precision Circuits Kk | 信号生成回路 |
JP2005038229A (ja) * | 2003-07-16 | 2005-02-10 | Fujitsu Ltd | 乱数発生装置 |
JP2008078131A (ja) * | 2006-08-28 | 2008-04-03 | Gm Global Technology Operations Inc | パターン認識技法を使用する水蓄積における電池間の変動性の検出 |
JP2009049547A (ja) * | 2007-08-15 | 2009-03-05 | Seiko Epson Corp | 画像処理装置、画像処理方法、画像処理プログラム |
JP2013214050A (ja) * | 2012-03-30 | 2013-10-17 | Freescale Semiconductor Inc | ランダム値生成方法およびシステム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112021006880T5 (de) | 2021-01-22 | 2023-11-16 | Nec Corporation | Zufallszahlengenerator, Zufallszahlen-Erzeugungsverfahren und nichtflüchtiges, computerlesbares Medium das ein Programm speichert |
Also Published As
Publication number | Publication date |
---|---|
US20190121616A1 (en) | 2019-04-25 |
KR102181385B1 (ko) | 2020-11-20 |
TW201931104A (zh) | 2019-08-01 |
US10613833B2 (en) | 2020-04-07 |
EP3474134B1 (en) | 2023-09-13 |
CN109697048A (zh) | 2019-04-30 |
CA3021415C (en) | 2021-05-25 |
TWI717646B (zh) | 2021-02-01 |
GB201717309D0 (en) | 2017-12-06 |
CN109697048B (zh) | 2024-03-22 |
JP6744375B2 (ja) | 2020-08-19 |
GB2568660A (en) | 2019-05-29 |
US20200192636A1 (en) | 2020-06-18 |
EP3474134A1 (en) | 2019-04-24 |
KR20190044550A (ko) | 2019-04-30 |
CA3021415A1 (en) | 2019-04-20 |
US11334320B2 (en) | 2022-05-17 |
GB2568660B (en) | 2020-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6744375B2 (ja) | ニューラルネットワークにおけるランダム性の生成 | |
US11169778B2 (en) | Converting floating point numbers to reduce the precision | |
US11294635B2 (en) | Pseudo-random number generator | |
JP7292297B2 (ja) | 確率的丸めロジック | |
CN113168310B (zh) | 用于转换数字的硬件模块 | |
Marni et al. | Mc3a: Markov chain monte carlo manycore accelerator | |
JP6709266B2 (ja) | ニューラルネットワークにおける処理 | |
Zhang et al. | Adaptive-Precision Framework for SGD Using Deep Q-Learning | |
Christiani et al. | Towards a scalable neuromorphic hardware for classification and prediction with stochastic no-prop algorithms | |
Khan et al. | Quantifying the Performance and Resource Usage of HLS4ML’s Implementation of the Batch Normalization Layer on FPGAs | |
Bodiwala et al. | Stochastic Computing for Deep Neural Networks | |
JP2021018455A (ja) | 乱数発生装置及び乱数発生方法 | |
Бархатова et al. | Algorithmic representation of the quantum operators and fast Quantum algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200515 |
|
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: 20200707 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200730 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6744375 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |