(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023156173
(43)【公開日】2023-10-24
(54)【発明の名称】乱数生成装置、乱数生成方法及び乱数生成プログラム
(51)【国際特許分類】
G06F 7/58 20060101AFI20231017BHJP
【FI】
G06F7/58 620
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022065876
(22)【出願日】2022-04-12
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】岡田 大樹
(57)【要約】
【課題】近似的に互いに独立な正規分布変数列を容易に生成できる乱数生成装置、乱数生成方法及び乱数生成プログラムを提供すること。
【解決手段】乱数生成装置10は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける入力部111と、平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する行列生成部112と、行列Rを用いてXの線形和R
TXを算出する演算部113と、演算結果を、l個の互いに漸近的独立な正規乱数標本列として出力する出力部114と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける入力部と、
平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する行列生成部と、
行列Rを用いてXの線形和RTXを算出する演算部と、
前記演算部による演算結果を、l個の互いに漸近的独立な正規乱数標本列として出力する出力部と、を備える乱数生成装置。
【請求項2】
前記行列生成部は、χの分散、及びmに基づいて、Rを規格化して漸近的直交行列とする請求項1に記載の乱数生成装置。
【請求項3】
前記行列生成部は、χを有界な確率分布とし、
log 2/log m<γ’<γ<1/2,l=mγ’と定義された定数γ’、及びmを用いて表されるRenyi divergenceの上界を近似精度として算出する近似精度算出部を備え、
前記出力部は、前記l個の互いに漸近的独立な正規乱数標本列と共に、前記近似精度を出力する請求項1又は請求項2に記載の乱数生成装置。
【請求項4】
前記行列生成部は、χを有界な確率分布とし、
log 2/log m<γ’<γ<1/2,l=(1+c)mγ’と定義された正の定数cに基づいて、l個の互いに独立で分散がXのc倍で均一な正規乱数ノイズZをサンプルするノイズ生成部と、
γ’及びmを用いて表されるRenyi divergenceの上界を近似精度として算出する近似精度算出部と、を備え、
前記演算部は、Xの線形和に前記正規乱数ノイズZを加算したRTX+Zを算出し、
前記出力部は、前記l個の互いに漸近的独立な正規乱数標本列と共に、前記近似精度を出力する請求項1又は請求項2に記載の乱数生成装置。
【請求項5】
m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける入力ステップと、
平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する行列生成ステップと、
行列Rを用いてXの線形和RTXを算出する演算ステップと、
前記演算ステップにおける演算結果を、l個の互いに漸近的独立な正規乱数標本列として出力する出力ステップと、をコンピュータが実行する乱数生成方法。
【請求項6】
請求項1に記載の乱数生成装置としてコンピュータを機能させるための乱数生成プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、標本を再利用し互いに独立な正規乱数を生成する乱数生成装置、乱数生成方法及び乱数生成プログラムに関する。
【背景技術】
【0002】
互いに独立かつ分散が均一なm次元多変量正規分布に従う乱数確率変数Xの標本を再利用することで、互いに独立な正規乱数を生成したい、という状況を想定する。
【0003】
[多変量正規分布]
m次元の確率変数:
【数1】
がm次元多変量正規分布に従うとき、
【数2】
と書き、平均μ及び共分散行列Σは、それぞれ、
【数3】
である。
【0004】
[統計的独立性]
また、確率変数X,Yが確率密度関数fXY(x,y)=fX(x)fY(y)を満たすとき、XとYは互いに独立であるという。
【0005】
[無相関な正規分布列]
ここで、
【数4】
について、X
1,…,X
mが互いに無相関であるとき、共分散行列Σは、
【数5】
のような対角行列となり、このとき、X
1,…,X
mは互いに独立である(逆は自明)。
【0006】
[(準)直交行列を用いたガウス乱数の再生成法]
多変量正規分布の線形変換は、
【数6】
であり、特に、互いに独立かつ分散が均一なm次元多変量正規分布に従う乱数確率変数:
【数7】
は、ある(準)直交行列:
【数8】
の定数倍の行列A=cMを用いて線形和をとると、Y:=A
TXの共分散行列は、
【数9】
と求められるので、
【数10】
となり、Yは互いに独立な正規分布変数列となる。
【0007】
このように、(準)直交行列Mを用いて、互いに独立なm次元多変量正規分布に従う乱数確率変数Xの線形和をとることで、互いに独立なl次元多変量正規分布に従う乱数確率変数が生成できる(例えば、非特許文献1参照)。
【0008】
したがって、
図7に示すアルゴリズム1により、互いに独立な正規乱数を生成する乱数生成装置を構成することができる。
アルゴリズム1を実行する乱数生成装置は、m個の互いに独立な正規乱数標本列:
【数11】
が入力されると、(準)直交行列:
【数12】
を生成し、
【数13】
を算出することにより、l個の互いに独立な正規乱数標本列:
【数14】
を出力する。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】Joan Of Arc,不偏分散が自由度n-1のカイ二乗分布に従うことの証明,2020,インターネット(2022年1月10日検索)<https://note.com/joan_of_arc/n/n64f83b63d540>
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、従来技術のアルゴリズム1は、(準)直交行列による線形和に限定される。(準)直交行列の生成手段の実装は複雑であり、(準)直交行列の生成自体に、正規乱数のサンプルが必要な場合もあった。
【0011】
本発明は、近似的に互いに独立な正規分布変数列を容易に生成できる乱数生成装置、乱数生成方法及び乱数生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明に係る乱数生成装置は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける入力部と、平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する行列生成部と、行列Rを用いてXの線形和RTXを算出する演算部と、前記演算部による演算結果を、l個の互いに漸近的独立な正規乱数標本列として出力する出力部と、を備える。
【0013】
前記行列生成部は、χの分散、及びmに基づいて、Rを規格化して漸近的直交行列としてもよい。
【0014】
前記行列生成部は、χを有界な確率分布とし、log 2/log m<γ’<γ<1/2,l=mγ’と定義された定数γ’、及びmを用いて表されるRenyi divergenceの上界を近似精度として算出する近似精度算出部を備え、前記出力部は、前記l個の互いに漸近的独立な正規乱数標本列と共に、前記近似精度を出力してもよい。
【0015】
前記行列生成部は、χを有界な確率分布とし、log 2/log m<γ’<γ<1/2,l=(1+c)mγ’と定義された正の定数cに基づいて、l個の互いに独立で分散がXのc倍で均一な正規乱数ノイズZをサンプルするノイズ生成部と、γ’及びmを用いて表されるRenyi divergenceの上界を近似精度として算出する近似精度算出部と、を備え、前記演算部は、Xの線形和に前記正規乱数ノイズZを加算したRTX+Zを算出し、前記出力部は、前記l個の互いに漸近的独立な正規乱数標本列と共に、前記近似精度を出力してもよい。
【0016】
本発明に係る乱数生成方法は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける入力ステップと、平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する行列生成ステップと、行列Rを用いてXの線形和RTXを算出する演算ステップと、前記演算ステップにおける演算結果を、l個の互いに漸近的独立な正規乱数標本列として出力する出力ステップと、をコンピュータが実行する。
【0017】
本発明に係る乱数生成プログラムは、前記乱数生成装置としてコンピュータを機能させるためのものである。
【発明の効果】
【0018】
本発明によれば、近似的に互いに独立な正規分布変数列を容易に生成できる。
【図面の簡単な説明】
【0019】
【
図1】第1実施形態における乱数生成装置の機能構成を示す図である。
【
図2】第1実施形態における乱数生成方法のアルゴリズムを示す図である。
【
図3】第2実施形態における乱数生成装置の機能構成を示す図である。
【
図4】第2実施形態における乱数生成方法のアルゴリズムを示す図である。
【
図5】第3実施形態における乱数生成装置の機能構成を示す図である。
【
図6】第3実施形態における乱数生成方法のアルゴリズムを示す図である。
【
図7】従来の乱数生成方法のアルゴリズムを示す図である。
【発明を実施するための形態】
【0020】
以下、本発明の実施形態を例示して説明する。
後述の第1~第3実施形態の乱数生成方法は、(準)直交行列ではない、より広いクラスの生成が容易な行列を用いて線形和をとることにより、互いに漸近的独立な正規分布変数列を生成する手法である。
すなわち、厳密に独立ではないが、漸近的に(近似的に)独立な正規分布変数列とすることで、従来よりも乱数の生成が容易となる。
【0021】
[漸近的統計的独立性]
自然数nに依存する確率変数(列)X
n,Y
nの確率密度関数が、
【数15】
を満たすとき、X
nとY
nは互いに漸近的独立であるという。
【0022】
[漸近的直交行列]
実数上の確率分布χがE[χ]=0であるとし、標本の分散をVar[X]=E[X
2]:=σ
χ
2とおく。このとき、行列:
【数16】
は、mに関する漸近的直交行列であり、
【数17】
である。ただし、l<mとする。
【0023】
このことは、次のように証明できる。
まず、R’の各行をr
i、Σ’:=(R’)
TR’とおく。mが十分に大きいとき、中心極限定理により、
・対角成分は、
【数18】
∵ m個のX
2の和:
【数19】
・非対角成分は、
【数20】
∵ m個のXYの和:
【数21】
【0024】
よって、
【数22】
について、
・対角成分は、
【数23】
のように、(デルタ関数:確率1でx=1)に分布が収束する。
・非対角成分は、
【数24】
のように、(デルタ関数:確率1でx=0)に分布が収束する。
すなわち、
【数25】
となる。
【0025】
[漸近的独立なサンプル増幅]
前述のように漸近的直交行列:
【数26】
を定義すると、互いに独立かつ分散が均一なm次元多変量正規分布
【数27】
に対するRによる線形和
【数28】
は、mが十分に大きいとき、
【数29】
と近似できる。つまり、Yは互いに漸近的独立な正規分布変数列となる。
【0026】
このことは、次のように証明できる。
すなわち、Rが漸近的直交行列であれば、前述のように、mが十分に大きいとき、
【数30】
と近似できる。よって、線形和であるYの共分散行列は、
【数31】
と近似できる。したがって、共分散行列が漸近的に対角行列となる(共分散が0に収束する)ため、Yの各変数同士は漸近的独立である。
【0027】
[第1実施形態]
第1実施形態の乱数生成装置10は、平均がゼロ、分散が有限で非ゼロの確率分布からランダムな行列をサンプルし、線形和をとることにより、漸近的独立な正規乱数標本列を出力する。
【0028】
図1は、本実施形態における乱数生成装置10の機能構成を示す図である。
乱数生成装置10は、制御部11及び記憶部12の他、各種の入出力インタフェース等を備えた情報処理装置(コンピュータ)である。
【0029】
制御部11は、乱数生成装置10の全体を制御する部分であり、記憶部12に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部11は、CPUであってよい。
【0030】
記憶部12は、ハードウェア群を乱数生成装置10として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)等であってよい。
【0031】
制御部11は、入力部111と、行列生成部112と、演算部113と、出力部114とを備える。
入力部111は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける。
【0032】
行列生成部112は、平均がゼロ、かつ、分散が有限で非ゼロの確率分布χからサンプルした値からなる、m行l列の行列Rを生成する。
このとき、行列生成部112は、確率分布χの分散、及びmに基づいて、Rを規格化して漸近的直交行列とし、出力される正規乱数標本列の分散を入力と等しくしてもよい。
【0033】
演算部113は、行列Rを用いてXの線形和Y=RTXを算出する。
出力部114は、標本列Yを、l個の互いに漸近的独立な正規乱数標本列として出力する。
【0034】
図2は、本実施形態における乱数生成方法のアルゴリズム2を示す図である。
アルゴリズム2では、m個の互いに独立で分散が均一な正規乱数標本列
【数32】
を入力とし、l個の互いに漸近的独立な正規乱数標本列
【数33】
を出力する。
【0035】
具体的には、ステップ1において、行列生成部112は、まず、E[χ]=0を満たす確率分布χを定義し、
【数34】
を生成する。ここで、χの標本の分散をσ
χ
2とおく。
【0036】
続いて、ステップ2において、行列生成部112は、規格化された漸近的直交行列
【数35】
を生成する。
【0037】
ステップ3において、演算部113は、Xの線形和を、
【数36】
と算出し、l個の互いに漸近的独立な正規乱数標本列を得る。
【0038】
なお、行列生成部112は、例えば、{-1,0,1}上の一様乱数(E[χ]=0,E[χ2]=2/3)、あるいは、平均0の任意の正規乱数等、E[χ]=0を満たす任意の確率分布χから、容易に漸近的直交行列Rを生成可能である。
また、ステップ2の規格化は省略可能であるが、この場合、出力される漸近的独立な正規乱数標本列の分散は、mσχ
2σ2Iとなる。
【0039】
本実施形態によれば、乱数生成装置10は、与えられる標本の次元数mが十分に大きいとき、平均E[χ]=0を満たす任意の確率分布χから得られる漸近的直交行列を用いた線形和により、十分に(近似的に)互いに独立な正規乱数列を再生成することができる。
したがって、従来は、線形和行列は(準)直交行列である必要があり、実装が複雑であったのに対して、乱数生成装置10は、一様乱数等の任意の確率分布χから、厳密に独立ではないものの、容易に高速に互いに漸近的独立な正規乱数列を生成できる。また、任意の確率分布を用いて、漸近的直交行列として多くのバリエーションを採用でき、線形和の自由度が向上する。
【0040】
[第2実施形態]
第1実施形態では、与えられる正規乱数の標本の次元数mが無限大となった際の漸近的独立性を用いた。近似的な独立性を確保するために、mを十分に大きくするには、入力として、互いに独立な正規乱数標本列を十分に多く用意する必要がある。
しかしながら、mをどの程度大きくとったら十分なのかを定量的に評価できないという課題がある。
【0041】
第2実施形態の乱数生成装置20は、第1実施形態で用いた平均がゼロ、分散が有限で非ゼロの確率分布χを、有界(Bounded)な分布に制限することにより、互いに独立な正規乱数列との近似精度を定量的に評価する。
【0042】
ここでは、近似精度として、2つの確率変数間で定義される広義の距離関数である、Renyi divergence R
aを用いる。
確率変数P,Qの確率密度関数をそれぞれp(x),q(x)とすると、1≦aに対して、Renyi divergenceは、次のように定義される。
【数37】
【0043】
Ra(P∥P)=1であり、Ra(P∥Q)が1に近いほど、PとQの分布が類似しているといえる。
【0044】
本実施形態では、漸近的直交行列の要素をサンプリングするための確率分布は、Boundedで、かつ、平均が0の分布を用いる。具体的には、ある実数β>0に対して、χ
βを、
【数38】
を満たす確率分布とする。
【0045】
また、自然数mをセキュリティパラメータとし、mによらない定数γ’,γを、
【数39】
と定義する。
【0046】
このとき、行列:
【数40】
をサンプルし、rankR’=l(フルランク)であったと仮定する。また、
【数41】
を定義し、
【数42】
とすると、Renyi divergenceについて、
【数43】
が得られる。
【0047】
図3は、本実施形態における乱数生成装置20の機能構成を示す図である。
乱数生成装置20は、制御部21及び記憶部22の他、各種の入出力インタフェース等を備えた情報処理装置(コンピュータ)である。
【0048】
制御部21は、乱数生成装置20の全体を制御する部分であり、記憶部22に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部21は、CPUであってよい。
【0049】
記憶部22は、ハードウェア群を乱数生成装置20として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)等であってよい。
【0050】
制御部21は、入力部211と、行列生成部212と、演算部213と、近似精度算出部214と、出力部215とを備える。
入力部211は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける。また、入力部211は、前述の定数a,γ,γ’を取得する。
【0051】
行列生成部212は、平均がゼロ、かつ、分散が有限で非ゼロのBoundedな確率分布χβからサンプルした値からなる、m行l列の行列Rを生成する。
このとき、行列生成部212は、確率分布χβの分散、及びmに基づいて、Rを規格化して漸近的直交行列とし、出力される正規乱数標本列の分散を入力と等しくしてもよい。
演算部213は、行列Rを用いてXの線形和Y=RTXを算出する。
【0052】
近似精度算出部214は、前述のように定義された定数γ’、及びセキュリティパラメータmを用いて表されるRenyi divergenceの上界を近似精度として算出する。
【0053】
出力部215は、標本列Yを、l個の互いに漸近的独立な正規乱数標本列として出力すると共に、算出された近似精度を出力する。
【0054】
図4は、本実施形態における乱数生成方法のアルゴリズム3を示す図である。
アルゴリズム3では、第1実施形態のアルゴリズム2と同様に、m個の互いに独立で分散が均一な正規乱数標本列
【数44】
を入力とし、さらに、定数として、
【数45】
を定義する。ただし、γは、乱数生成装置20に予め設定された固定値であってよく、近似精度としてのRenyi divergenceの上界を極力小さく(1に近く)するために、1/2に近い値(例えば、0.48等)が設定される。
【0055】
そして、アルゴリズム3では、l個の互いに漸近的独立な正規乱数標本列
【数46】
と共に、近似精度R
a’が出力される。
【0056】
具体的には、ステップ1において、行列生成部212は、まず、前述のBoundedな確率分布χ
βを定義し、
【数47】
を生成する。ここで、χ
βの標本の分散をσ
χ
2とおく。
【0057】
続いて、ステップ2において、行列生成部212は、規格化された漸近的直交行列
【数48】
を生成する。
【0058】
ステップ3において、演算部213は、Xの線形和を、
【数49】
と算出し、l個の互いに漸近的独立な正規乱数標本列を得る。
【0059】
ステップ4において、近似精度算出部214は、近似精度として、Renyi divergenceの上界である、
【数50】
を算出する。
【0060】
ステップ5において、出力部215は、ステップ3で算出されたl個の互いに漸近的独立な正規乱数標本列Yと共に、ステップ4で算出された近似精度Ra’を出力する。
【0061】
なお、行列生成部212は、例えば、[-β,β]上の一様乱数、あるいは、平均0の任意の正規乱数X~N(0,σ
2)等、様々なBoundedな確率分布χ
βから、容易に漸近的直交行列Rを生成可能である。
ここで、正規分布は、定数t>0に対して、
【数51】
を満たすため、tが十分に大きいとき非常に高い確率(overwhelming probability)で、t・σ-Boundedな分布とみなすことができることが知られている。
【0062】
また、ステップ2の規格化は、入出力で分散が同一である必要がなければ、第1実施形態と同様に省略可能である。
【0063】
本実施形態によれば、乱数生成装置20は、Boundedな確率分布からサンプルした値によりランダム行列Rを生成することにより、m個の互いに独立な正規乱数標本Xの線形和であるY:=RTXを、l個の互いに漸近的独立な正規乱数標本として出力する。
このとき、出力であるYと、互いに独立な正規乱数列との間のa次のRenyi divergenceの上界を、m,γ’により表現することができる。
【0064】
したがって、乱数生成装置20は、第1実施形態の効果に加えて、得られた互いに漸近的独立な正規乱数標本と、厳密に互いに独立な正規乱数との近似精度を定量的に評価できる。
なお、Renyi divergenceのパラメータaは、[2,∞)の範囲で任意に選択可能であり、状況に応じてユーザが選択できる。
【0065】
[第3実施形態]
第2実施形態では、元のm次元標本Xに対して、最大でもl<√m次元の漸近的独立な正規乱数標本Yしか生成できないという課題がある。
第3実施形態の乱数生成装置30は、Yに互いに独立な多次元正規乱数を加算することで、任意の次元の正規乱数標本を生成する。
【0066】
自然数mをセキュリティパラメータとし、mによらない定数:
【数52】
を定義し、任意のc>0に対し、l:=(1+c)・m
γ’とする。
例えば、(1+c)=m
1-γ’とすれば、l=mとなる。
【0067】
また、Boundedな確率変数χ
βの分散をVar[χ
β]:=σ
χ
2=O(1)と定義し、行列:
【数53】
をサンプルしたとき、第2実施形態に加えて、次のように追加の正規乱数ノイズZを定義する。
【数54】
【0068】
このとき、任意のa=O(1)∈[2,∞)に対して、overwhelmingな確率で、
【数55】
が成り立つ。したがって、追加のノイズを付加したY+Zと、正規乱数列:
【数56】
との間のRenyi divergenceについて、
【数57】
が得られる。
【0069】
図5は、本実施形態における乱数生成装置30の機能構成を示す図である。
乱数生成装置30は、制御部31及び記憶部32の他、各種の入出力インタフェース等を備えた情報処理装置(コンピュータ)である。
【0070】
制御部31は、乱数生成装置30の全体を制御する部分であり、記憶部32に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部31は、CPUであってよい。
【0071】
記憶部32は、ハードウェア群を乱数生成装置30として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)等であってよい。
【0072】
制御部31は、入力部311と、行列生成部312と、ノイズ生成部313と、演算部314と、近似精度算出部315と、出力部316とを備える。
入力部311は、m個の互いに独立で分散が均一な正規乱数標本列Xの入力を受け付ける。また、入力部311は、前述の定数a,γ,γ’を取得すると共に、出力の次数lに応じた定数cを決定する。
【0073】
行列生成部312は、平均がゼロ、かつ、分散が有限で非ゼロのBoundedな確率分布χβからサンプルした値からなる、m行l列の行列Rを生成する。
このとき、行列生成部312は、確率分布χβの分散、及びmに基づいて、Rを規格化して漸近的直交行列とし、出力される正規乱数標本列の分散を入力と等しくしてもよい。
【0074】
ノイズ生成部313は、前述の定数cに基づいて、l個の互いに独立で分散がXのc倍で均一な正規乱数ノイズZをサンプルする。
【0075】
演算部314は、行列Rを用いたXの線形和に正規乱数ノイズZを加算し、Y=RTX+Zを算出する。
【0076】
近似精度算出部315は、前述のように定義された定数γ’、及びセキュリティパラメータmを用いて表されるRenyi divergenceの上界を近似精度として算出する。
【0077】
出力部316は、標本列Yを、l個の互いに漸近的独立な正規乱数標本列として出力すると共に、算出された近似精度を出力する。
【0078】
図6は、本実施形態における乱数生成方法のアルゴリズム4を示す図である。
アルゴリズム4では、第1実施形態のアルゴリズム2及び第2実施形態のアルゴリズム3と同様に、m個の互いに独立で分散が均一な正規乱数標本列
【数58】
を入力とし、さらに、定数として、
【数59】
を定義する。ただし、γは、乱数生成装置20に予め設定された固定値であってよく、近似精度としてのRenyi divergenceの上界を極力小さく(1に近く)するために、1/2に近い値(例えば、0.48等)が設定される。
【0079】
そして、アルゴリズム4では、l個の互いに漸近的独立な正規乱数標本列
【数60】
と共に、近似精度R
a’が出力される。
【0080】
具体的には、ステップ1において、行列生成部312は、まず、前述のBoundedな確率分布χ
βを定義し、
【数61】
を生成する。ここで、χ
βの標本の分散をσ
χ
2とおく。
【0081】
続いて、ステップ2において、行列生成部312は、規格化された漸近的直交行列
【数62】
を生成する。
【0082】
ステップ3において、ノイズ生成部313は、正規乱数ノイズ:
【数63】
をサンプルする。なお、入力された標本列Xの分散σ
2は既知であるものとする。
【0083】
ステップ4において、演算部314は、Xの線形和に正規乱数ノイズZを加算した、
【数64】
を算出し、l個の互いに漸近的独立な正規乱数標本列を得る。
【0084】
ステップ5において、近似精度算出部315は、近似精度として、Renyi divergenceの上界である、
【数65】
を算出する。
【0085】
ステップ6において、出力部316は、ステップ4で算出されたl個の互いに漸近的独立な正規乱数標本列Yと共に、ステップ5で算出された近似精度Ra’を出力する。
【0086】
なお、行列生成部312は、第2実施形態と同様に、例えば、[-β,β]上の一様乱数、あるいは、平均0の任意の正規乱数X~N(0,σ2)等、様々なBoundedな確率分布χβから、容易に漸近的直交行列Rを生成可能である。
また、ステップ2の規格化は、出力される標本の分散の増大が許容されるならば、第1及び第2実施形態と同様に省略可能である。
【0087】
本実施形態によれば、乱数生成装置30は、Boundedな確率分布からサンプルした値によりランダム行列Rを生成し、さらに、出力の次元lに応じた正規乱数ノイズを加算することにより、l個の互いに漸近的独立な正規乱数標本を出力する。
このとき、出力であるYと、互いに独立な正規乱数列との間のa次のRenyi divergenceの上界を、m,γ’により表現することができる。
【0088】
したがって、乱数生成装置30は、第2実施形態の効果に加えて、出力される標本の分散が入力に比べて増大する代わりに、任意の次元l>0の互いに漸近的独立な正規乱数標本を入力標本の線形和に基づいて生成できる。
【0089】
前述の実施形態により、例えば、高速な疑似乱数生成器を生成でき、さらに、格子暗号方式の暗号文の安全性証明等への適用も期待できる。よって、ネットワークの安全性を向上できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進すると共に、イノベーションの拡大を図る」に貢献することが可能となる。
【0090】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【0091】
乱数生成装置(10、20、30)による乱数生成方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD-ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
【符号の説明】
【0092】
10 乱数生成装置
11 制御部
12 記憶部
20 乱数生成装置
21 制御部
22 記憶部
30 乱数生成装置
31 制御部
32 記憶部
111 入力部
112 行列生成部
113 演算部
114 出力部
211 入力部
212 行列生成部
213 演算部
214 近似精度算出部
215 出力部
311 入力部
312 行列生成部
313 ノイズ生成部
314 演算部
315 近似精度算出部
316 出力部