二手三手/技巧の統計的な検証手法の話

最近、技巧の検証に手を出しているんですがこの検証ってすごく難しいですね。僕もたまにDA/TAの検証情報載せてたのですが、2000とか3000のサンプル数じゃぜんぜん足りなかったんじゃないかと思っています。ここらへんの記事ですね。

ハレゼナ 累積バフによるDA/TAの調査

それに対して、すごく良い検証をされてる方の参考記事を貼っておきます。最低でもこれぐらい試行数はやらないとって感じですね。この記事で8000サンプルぐらいでも±1.5%ブレる可能性あるって見ちゃうと今までの僕の検証結果はかなり怪しいですね。

ですので、今後自分でDA/TAとか技巧の確率を検証するに当たって、どのような目安でサンプル数を決定して、その結果がどのぐらい信頼できるかといったものを検討しましょうといった感じの記事です。間違っている点などありましたら、ご指摘いただければと思います。

今回はいつにもましてグラブル成分の薄い記事となっております。それでもよければ続きをどうぞ。

二項分布:ガチャの確率

結果が成功か失敗のいずれかである n 回の独立な試行を行ったときの成功数で表される離散確率分布である。

二項分布 – Wikipedia

技巧やDA/TAの確率などは、この分布に従います。Pを成功確率として、n 回試行し k 回成功する確率がどうなるのかというのが、確率質量関数になります。それが以下になります。

c(n, k) * P^k * (1-P)^(n-k)

c(n, k) というのは組み合わせ数です。例として皆さんの馴染みが深いグラブルのガチャで考えてみましょう。レジェフェスの時、SSRが排出される確率は 6% です。100 回ガチャを引いて、SSRが 0 枚である確率は以下になります。

SSR 0枚:c(100, 0) * 0.06^0 * 0.94^100 = 0.00205 (0.205%)

同様に、100 回ガチャを引いて、SSRが 1 枚である確率と、6枚である確率は以下となります。

SSR 1枚:c(100, 1) * 0.06^1 * 0.94^99 = 0.0131 (1.31%)
SSR 6枚:c(100, 6) * 0.06^6 * 0.94^94 = 0.1657 (16.57%)

これを、横軸をSSR率(SSR枚数/ガチャ試行数)と、縦軸を確率とすると以下のようなグラフになります。青が試行数100、橙が試行数1000となっており、試行数を増やすことでグラフが急峻になり、確率から離れた値が出ることが少なくなります。よく言われる試行数を増やせばドロップは収束するといった話ですね。(試行数が違うため、それぞれ試行数で割って正規化しています)

今回、久々にMatlab使ってます。プロットが結構便利なんですよね。スクリプトもセットで置いておきます。Statistics Toolbox とかあったらもっと楽なんでしょうけど、この程度の統計計算なら数式ベースでいけるでしょう。

二項分布から正規分布への近似

さて、ここまでで既に確率が分かっているガチャの排出率(確率)に対して、実際に引いたとき(試行数)にSSR率(結果)がどうなるかという話をしてきました。本題に入る前に、二項分布は正規分布に近似できるという話をしておきます。二項分布は試行数が大きく確率がそこまで小さくない場合には、正規分布に近似できます。

期待値 np および分散 np(1 − p) が 5 よりも大きい場合、二項分布 B(n, p) に対する良好な近似として正規分布がある。

正規分布 – Wikipedia

正規分布についての説明は、まぁ割愛します。とりあえず困ったら使っとけみたいなやつです。

二項分布と正規分布は平均値にデータが集中する形が非常に似ている分布です。ですが、二項分布は分布範囲が 0 から試行数までの離散確率分布であり、分布の両端が0でない場合は不連続になっています。(正規分布は-∞から∞まで連続確率分布)

ですが、先ほどの試行数が十分に大きく確率がそこまで小さくないという条件だと、分布の両端が0に漸近していくため、正規分布と近似しても問題なくなるというノリだと思います。詳細は『二項分布 正規分布 近似』とかでググれば出てくるとは思いますが、使う上では知らなくても大丈夫だと思います。

近似した正規分布は、期待値 np で、分散 np(1-p) となります。実際に、さっきのレジェフェス1000連の時の二項分布に、近似した正規分布を重ねてみましょう。上が重ねたグラフで、下が誤差ですね。n が1000だと一番誤差が大きいところで10%ちょいぐらいでしょうか。n が大きくなればなるほど正規分布に近づいていきます。

一応こちらもMATLABスクリプトを。

測定結果から95%信頼区間を見る

ここから、実際に殴って検証から出てきた値(標本測定値)から、実際の確率を求めるためにはどうしたらよいか?という話になります。技巧やDA/TAの分布は二項分布に従い、試行数が十分な場合は 試行数 n と確率 p から正規分布に近似できるということを見てきました。

正規分布では、分散の平方根を取ったものを σ (シグマ)と呼び、期待値から ± 1σ が約68%で、± 3σが99.7%です。95%の区間は± 1.97σ となります。正規分布の分散は np(1-p) で近似されますので、95% 信頼区間は、期待値 np ± 1.97 * sqrt(np(1-p)) となり、これを試行数 n で割ったものが確率になります。ここでの95%信頼区間というのは、この区間の中に95%の確率で、本来(母集団)の確率があるという意味です。

先ほどのハレゼナの検証記事では、2000回のうち849回TAが出ていましたが、これは 849 ± 22.1 回で、確率にすると 42.45 ± 1.1% (95%信頼区間) となります。

許容誤差に対する必要な試行数は、n > 1.97^2*p*(1-p) / (許容誤差)^2 を満たす数になります。例えば、5% 程度の武器スキルを許容誤差 0.5% で検証する場合は、1.97^2 * 0.05 * 0.95 / 0.005^2 = 7373 回となります。技巧/二手三手のスキル値は、この精度では足りないかもしれないので、神石とかでブーストしたほうがよいですね。

(追記)

100とか200の検証数じゃ少なすぎやんけ!!みたいな風に思うかもしれませんが、そういうことではないです。例えば、DA/TAバフとかは効果が概ね5%刻みなので、信頼区間が ± 3% もあれば十分でしょう。何を調べるかによって、必要なサンプル数は変わってきます。これだけは真実を伝えたかった。

(追記2)

1.97σじゃなくて1.96σでした。上述の1.97で計算してるものは全部1.96に置き換えてください…。

参考リンク

http://www.lbm.go.jp/ohtsuka/envsta/envsta10.html

http://lbm.ab.a.u-tokyo.ac.jp/~omori/kokusai11/kokusai11_926.html

 

二手三手/技巧の統計的な検証手法の話」への1件のコメント

コメントを残す

メールアドレスが公開されることはありません。