チョコボール統計

チョコボールの秘密を統計解析で明らかにしていく。おもちゃのカンヅメ欲しい。

金のエンゼルがN回目までに出る確率を推定する

【2019/10/17追記】

本記事で利用しているデータは古く、また、データ数が少ないです。 そのため、以下の記事をご覧いただくことを推奨します。

chocolate-ball.hatenablog.com

また、個人出版している下記書籍にも詳しく記載しています。

エンゼル出現確率をベイズ推定する - chocolate-ball - BOOTH


はじめに

chocolate-ball.hatenablog.com

1/24の計測でついに金のエンゼルが出ました! 通算78箱目での出現となりました。 (「金のエンゼル2倍」キャンペーン内)

現在のキャンペーンで金のエンゼル出現確率が2倍になってはいますが、想定外に早めの出現だなという印象です。
そこで今回の分析では、78箱でエンゼルが出現する確率はどのくらいなのかを推定してみます。

前提条件(仮定)

前提条件として、 現行の金のエンゼル2倍キャンペーンの商品のみを計測対象とします。
また、金のエンゼルの出現率はキャンペーンの期間中で、どの味でも一定と仮定します。

【トップに戻る】

問題設定

成功(確率p)か失敗(確率1-p)という二値の事象で、 毎回の確率pは変化しないよ(復元抽出)という試行のことをベルヌーイ試行といいます。 チョコボールの場合も金の出る確率は一定と仮定するので、ベルヌーイ試行です。
ベルヌーイ試行の場合に、n回目で成功が出る確率p(n)は幾何分布に従います。

幾何分布というのは、1-n回連続で失敗し、その後に成功する確率を表します。 以下の式の通りに表現されます。 ここで、回数nは当然整数なので、離散型の確率分布です。

{ \displaystyle
p(n) = (1-p)^{n-1}p
}

エンゼルがn回目に出た場合の確率は、このように幾何分布を使って推定できます。 幾何分布は2つのパラメータで定義されます(試行回数nと事象の発生確率p)。

ここで、幾何分布の式をそのまま使うとn回目にエンゼルが出現する確率が算出できます。 しかし、78回目にエンゼルが出る確率を知りたいのではなく、 78回目”まで”にエンゼルが出現する確率を知りたいです。

そこで、上記の式を累積(離散確率なので)して得られる累積確率を考えます。
以下に幾何分布の例を示します。 左は確率質量関数を示しており、N回目に成功を引く確率を意味しています。 右は確率質量の累積で、N回目までに成功を引く確率を意味しています。 この図は確率0.1で成功する場合の例なんですが、 10回目までに成功する確率は60%くらいであることがわかります(20回試行しても80%くらい)。

f:id:hippy-hikky:20180128114020p:plain
幾何分布の例(確率p=0.1)。左が確率質量関数。右が累積確率関数。

【トップに戻る】

エンゼル出現確率

上記の通り、 幾何分布は2つのパラメータで定義されます。 試行回数は変量なので、エンゼルの出現確率pをどのように設定するかが問題になります。

今回は、2つの方式で予測した確率を設定してみます。

  • ベイズ推定によって推定した出現確率
  • 様々な人が集計している結果を利用(最尤推定

ベイズ推定を利用したエンゼルの出現確率

当ブログでは、 日々の計測で、一様分布を事前分布としてベイズ推定によってエンゼルの出現確率を予測しています。
金のエンゼルは第30回計測記事で出現しましたので、 第29回計測記事の予測値を使ってみます。

chocolate-ball.hatenablog.com

ベイズ推定では、推定するパラメータを事後分布の形で得ます。 上記記事では、ベイズ信頼区間を使って予測の下限と上限を以下のように計算していました。

90%信用区間(下界、上界それぞれ5%)は、下界が0.07%、上界が3.77%という予測になっています。

また、期待値は1.29%でした(記事には載せていない)。

これらの値を使って予測をしていきます。

様々な人の集計結果

Googleで「チョコボール 確率 金」などをクエリとして検索すると、 様々な方がチョコボールの集計をされています。 (ただし、単発記事で金が1枚出るまでの記事であることが多いようです。 1回出たくらいじゃ確率の評価は難しい。)

これらの記事のデータを集計し、金のエンゼルの出現確率の予測値としようと思います。 今回参考にさせていただいたのは以下の3つの記事です。

これらの記事を参照するにあたって、 全ての期間と味でエンゼルの出現確率が同じであると仮定します。

集計すると以下のようになります。

{ \displaystyle
(1+2+1)/(1000+1000+915)=4/2915=0.0014 (0.14\%)
}

ここで、現在は金のエンゼルの出現確率が2倍になっているので、 この場合のエンゼルの出現確率の予測値は0.28%とします。

上記の私が75箱開けた時点でのベイズ推定による予測値の間に入っていることが確認できますね。

【トップに戻る】

エンゼル出現までの回数の推定

実装

幾何分布は上記の通り複雑な定義ではないですので、 生で書いても良いのですが、scipyを使って簡単に計算します。

コードは以下の通りです。

推定結果

結果は以下のとおりです。

ベイズ推定による推定結果

ベイズ推定による期待値(1.29%)を使って計算すると、 63%の確率で78個までに金のエンゼルが出現するであろうと予測しています。

この時の累積確率は以下のとおりです。 赤い線が、今回金のエンゼルが出た78箱時点を表しています。

f:id:hippy-hikky:20180128122137p:plain

予測の下限と上限としては、5.3%~95.0%の確率で78個までに金のエンゼルが出現するであろうと予測しています。

様々な人の集計結果を利用した推定結果

上記の3つの記事を利用すると、 金のエンゼルの出現確率は0.28%と予測しています。 この場合には、19.6%の確率で78個までに金のエンゼルが出現するであろうと予測できました。

f:id:hippy-hikky:20180128122544p:plain

ちなみに、 ここで利用したエンゼル出現確率の場合に、250個買えば50%の確率でエンゼルが当たるようです。 0.28%の逆数である357個トライした場合には63%になります。 確率が1%のものを、100回トライしても当たらないのはこういうことなんですね。

【トップに戻る】

おわりに

ということで今回は、78箱までにエンゼルが出現する確率はいくらなのかという確率を推定してみました。
金のエンゼルの予測確率として何を使うかによって変わりますが、 78箱目でのエンゼル出現は20%程度の確率では生じるであろうということがわかりました。
78箱でのエンゼル出現はそこそこの確率だったということですね。

この問題は、当然エンゼルの出現についてだけ使えるものではないです。 例えば次のような応用が考えられます(世の中にはこういうことを論じている文献が腐るほどあるので今更ですが。。。)。

  • ある装置の故障確率について知識がある場合に、あと何回動かしたら故障するか
  • ソシャゲのガチャでレアを引くまでの回数(出現確率一定であり変化しないと仮定するとですが)

普段から興味のある事象の予測に使える可能性がありそうですね。

最後に、 今回金のエンゼルが出たので、しばらく眺めた後におもちゃのカンヅメに交換しようと思います。
その件についてはまた別途記事を書こうと思います。

【トップに戻る】

参考文献

定番の参考書。

【トップに戻る】

森永製菓  チョコボール<ピーナッツ>  28g×20箱

森永製菓 チョコボール<ピーナッツ> 28g×20箱