モンテカルロ法の乱数列は何が問題か?

このQ&Aのポイント
  • モンテカルロ法を使って計算する際に注意すべき点は、乱数列の生成方法です。
  • 50区分の頻度検定だけでは乱数列の一様性を確認できず、正しいモンテカルロ法の計算には不適切です。
  • モンテカルロ法を正しく行うには、乱数列の周期が必要な乱数の数よりも十分に大きいことが必要です。
回答を見る
  • ベストアンサー

モンテカルロ法

モンテカルロ法を使って計算を行う際に、 ある方法を用いて乱数列を発生させ、それを用いて行いました。 この乱数列は50の区分に分けた後、 カイ2乗分布による危険率1%の頻度検定 に合格したものを用いたのですが、 これではモンテカルロ法による計算を行うには 正しいとはいえないとのことでした。 これはなぜなのでしょうか。 確かに、50区分の頻度検定だけでは、 極端な話、周期50の数列がちょうど50区分に分かれて発生していて 結果として一様乱数となっているような場合も考えられます。 それでは、周期が計算に必要な乱数の数に対して十分に大きいとき、 モンテカルロ法として正しいと言えるようになるのでしょうか? 解説をよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.1

最も極端な話、arguistさんの作った「(疑似)乱数列」r[n] が 1,2,3,4,.......,50, 1.5,2.5,3.5, ...., 50.5, 1.25,2.25, ....., 50.25, 1.75,2.75, ...., 50.75, 1.125, .... だったとしましょうか。 χ二乗検定は完璧にパスしそうですね。周期はない。十分周期が長いわけです。 で、これを使って、50個の要素からなる列x[j] (j=1,2,...,50)から二つのサンプルを取り出すのに x[r[n]の整数部分], x[r[n+1]の整数部分] という風にやったとすると、ほとんどいつも、列xの中から隣り合う二つの要素を拾い出すことになります。 x[j]がjに多少とも依存するものであったとすれば、(たとえば、最も極端な場合 x[j] = j だったとすれば)選ばれた二つのサンプルには相関がある。  そういうわけで、一連の部分列r[n],r[n+1],...,r[n+m-1]に相関があってはまずいわけです。m=2の場合ならX[n]=r[n], Y[n]=r[n+1] として、(X[n],Y[n])を2次元のグラフにプロットしてみれば一目瞭然でしょう。 もちろん、「乱数列」をどう使うかにも依ります。滑らかな関数f(x)の定積分をするためにこの乱数列を用いても多分問題はない。単に等間隔にサンプルを採って平均を求めるんですから、丁度50の倍数の個数のサンプルを採るか、あるいはうんと沢山のサンプルを採れば、大抵正解に近い値が得られるでしょう。 しかし、2変数関数f(x,y)の定積分をしたくてx,yを選ぶのにこの「乱数列」を使っちゃうとダメなのはもうお分かりですね。  一般に、モンテカルロ法というのは相手にしている関数が多変数である場合、とくにその変数の数が多くて等間隔にサンプリングしてたんじゃとても計算が終わらないや、って場合にこそ有用な方法ですから、部分列r[n],r[n+1],...,r[n+m-1]の無相関性が非常に重要になります。

arquist
質問者

お礼

 なるほど。よくわかりました。  例えば、1本の乱数列から交互に要素をとって(A列:2n-1番目の数、B列:2n版目の数など)計算をする場合には、A列とB列が無相関であることが重要なわけですね。  そういえば、連の検定とか系列相関検定とかあったのを思い出しました。  ありがとうございました。

関連するQ&A

  • 凖モンテカルロ法 or モンテカルロ + MT

    3次元に広がる物理量を面積分する方法について検討中です。 凖モンテカルロという方法でLDSという数列を用いて計算をすると、積分計算の 誤差の軽減が速まるらしいということがわかりました。原理はまだ勉強中ですが、 対象の空間を区切って、それぞれの細空間に乱数のポイントを配置することが いい方向に働くように見られます。 これに対して、通常のモンテカルロ法でメルセンヌツイスター(MT)を用いた場合との 違いがいまいちわかりません。MTで一様乱数ができるのであれば、凖モンテカルロ のようにする必要はないのでしょうか?

  • モンテカルロの並列計算

    乱数を用いたモンテカルロ法について質問です。 周期が10の6乗の乱数を10万個用いてある計算をするとき 下記の二通りで計算を行なった場合、2)ではやはり偏った 乱数を用いていることになるのでしょうか? --------------------------------------------- 1) 10万個の乱数使用計算を一つの計算機で計算 乱数の初期化は1回 --------------------------------------------- 2) 10万個の乱数使用計算を20台の計算機で計算 計算機はそれぞれずらして実行し、時間を乱数の初期化に使用 各計算機にて5000個ずつの乱数使用 ---------------------------------------------

  • モンテカルロ法

    自分は現在、大学の1年生です。 パソコン関係に弱く、よく分からないことが多く、 質問があるので教えて頂ければ嬉しいです 大学のレポ(宿題)で「モンテカルロ計算をする際に周期の短い疑似乱数を使うとどのような問題が生じるか説明せよ」という問題がでました。 この回の講義を休んでいたせいもあって、まずモンテカルロ計算や疑似乱数について漠然としか理解できていません。 なので簡単に解説してくれるか、もしくは参考URLを載せてくれたら嬉しいです

  • モンテカルロとノンパラメトリック検定

    こんにちは、いつもお世話になっています。 今回はモンテカルロ推定について質問させていただきたいと思います。 SPSSを使って統計処理をしています。対応のない2群の検定でノンパラ(mann-whitney / wilcoxon検定)で計算したら有意差が出ました。オプションで、モンテカルロや正確確率推定ができるのですが、これは何のためですか?いろいろ調べてみましたが、モンテカルロは乱数を発生させて母集団の数を水増し(?)する方法のように感じました。例数が足りない場合はそれでやるということなのかもしれませんが、普通にやって差が出たものに対して、さらにモンテカルロを使うのはあまり意味がないでしょうか? あえて使いたいと思っているわけではないのですが、妥当な推定方法を使用したいと思っている者です。仔細にわたる数式には疎いですが、多少の統計の経験ありです。よろしくお願いします。

  • カイ二乗による適合度検定におけるカイ二乗値の分布

    カイ二乗による適合度検定で、期待度数と観測度数の差からカイ二乗値を計算するんですが、帰無仮説が正しい(すべての期待度数が観測度数と一致する)場合は、この検定統計量のカイ二乗値の分布はその自由度のカイ二乗分布になります。 帰無仮説が正しくなく、実際にある乖離(たとえば効果量w=0.3とか)があった場合、計算された検定統計量のカイ二乗値はどんな分布をすると理論的には言えるのでしょうか? 全体の総度数によってもかわるように思うのですが、いまいちわかりません。 平均の差の検定ではたとえば、t検定統計量が帰無仮説が成立しない場合非心t分布をとるのですが、カイ二乗検定ではこれは非心カイ二乗分布なのでしょうか? であったらその非心パラメタはどういうものなのでしょうか? カイ二乗による適合度検定で、検出力の計算をどうやるんだろうかと考えていたら、こういう疑問がわきました。

  • カイ2乗検定

    ある乱数を危険率1%のひん度検定を行え。 ただし、自由度49のカイ2乗分布の1%点は74.9とする。 という課題が出たのですが、このときというのは、 検定統計量vが79.4よりも小さければ受容される、という考え方良いのでしょうか??

  • Fisherの正確確率検定とカイ二乗検定

    最近卒論で検定をしていますが、分からないことが多いので誰か教えてください。よろしくお願いします! Fisherの正確確率検定とカイ二乗検定でカイ二乗検定を使う方が好ましい場合はありますか? カイ二乗検定はゼロ項がある場合使えないと聞きましたが本当ですか? fisherの正確確率検定と直接確率計算法は同じものですか?

  • カイ二乗分布のパーセント点について

    母分散の区間推定などにカイ二乗分布を使うときに たとえば有意水準5%で推定するときに両側検定をすると カイ二乗分布表の上側確率0.025%の部分と0.975%の部分を見ることになりますよね。 そのとき、0.025%の部分のカイ二乗値から0.975%の部分を計算することはできるのでしょうか。 たとえば、F値の場合F(0.975)=1/F(0.025)の関係があるようにカイ二乗値にも右側と左側で関係性があるのかどうかということです。 うまく説明ができていないかもしれませんが、ご解答いただければ幸いです。

  • マルコフ連鎖モンテカルロ

    マルコフ連鎖モンテカルロ法で、既約で非周期性を満たすマルコフ連鎖の持つ不変分布を、推定パラメータの目標分布となるように推移核を構成する際に、ギブス・サンプラーアルゴリズムを用いることを考えた場合、大きな流れとして何故、推移核をギブスサンプラーで与えられる式を導入することによって、推定したいパラメータの目標分布が不変分布に収束していくのかその原理がよくわかりません。 参考書として、「東洋経済」から出版されている「ベイズ計量経済分析」を用いています。 誰か教えていただけないでしょうか?

  • 統計学の適合度検定についての質問です

    統計学初心者です。 観測度数が理論度数の誤差の範囲内かどうかを調べたいのですがどうしたらいいでしょうか? 適当な数値ですが、画像データのAの実測度数が理論度数の誤差の範囲内かどうかを検定するための具体的な計算方法を教えてください。 有意水準は5%、カイ二乗分布 カイ二乗検定で”全体”の検定は x^2=(60-50)^2/50+(20-30)^2/30+・・・+(2-1)^2/1 =6.8444・・・ となり、自由度4のカイ二乗分布、有意水準5%が9.49なので x^2<9.49 有意差はない(誤差の範囲内) というのでまずは合ってますでしょうか? 次にAのみの観測度数と理論度数を検定(誤差の範囲内かどうかを知りたい)したいのですが、 x^2=(60-50)^2/50+(40-50)^2/50 =4 自由度2-1=1のカイ二乗分布、有意水準5%が3.84なので x^2>3.84 有意差はあり(誤差の範囲外) AとB~Eの2個に分けて計算してみましたが、そもそもこの方法が合っているのかどうか分かりません。 アドバイスよろしくお願いします。