こんにちは!
デジタルマーケター兼データサイエンティストのウマたん(@statistics1012)です!
今回は負の二項分布について解説していきます。こちらは二項分布やポアソン分布と同様、確率変数が離散型である場合の確率分布です。
二項分布は「\(n\)回のベルヌーイ試行の中で、\(k\)回成功する確率を表した分布」と定義できますが、負の二項分布は「\(k\)回成功するまでに\(r\)回失敗する確率を表した分布」となります。
また幾何分布は「初めて1回成功するまでにr回失敗する確率を表した分布」と考えられています.つまり負の二項分布の期待値・分散に\(k=1\)を代入すれば、幾何分布の期待値・分散になることが分かりますね!
この記事では、そんな負の二項分布・幾何分布の定義とその性質について解説していきながらPythonで実装していきます!
・負の二項分布・幾何分布の定義について解説!
・負の二項分布・幾何分布の性質について解説!
・Pythonで負の二項分布・幾何分布を見てみよう!
以下のYoutube動画でも分かりやすく解説していますので参考にしてみてください!
負の二項分布について解説!
初めに負の二項分布の解説を行っていきます!
負の二項分布とは「\(k\)回成功するまでに\(r\)回失敗する確率を表した分布」と考えられています。例えばコインの表が5回出るまでにコインの裏が3回出る確率を知りたいときに用いることができます!
\(f(x)\) = \(\frac{(k+r-1)!}{(r)!(k-1)!}(1-p)^{r}p^{k}\)
それでは期待値と分散を導出してみましょう!まずは期待値から導出していきましょう!
\(E(x)\) = \(\frac{(k+r-1)!}{(r)!(k-1)!}r(1-p)^{r}p^{k}\)
= \(k\frac{(k+r-1)!}{(k)!(r-1)!}(1-p)^{r}p^{k}\) = \(\frac{k(1-p)}{p}\frac{(k+r-1)!}{(k)!(r-1)!}(1-p)^{r-1}p^{k+1}\) = \(\frac{k(1-p)}{p}\)
次に分散を導出していきましょう!まず二乗期待値\(E(x^{2})\)を求めいきます。
\(E(x^{2})\) = \(\frac{(k+r-1)!}{(r)!(k-1)!}r^{2}(1-p)^{r}p^{k}\) = \(\frac{(k+r-1)!}{(r)!(k-1)!}(r(r-1)+r)(1-p)^{r}p^{k}\)
= \((k+1)k\frac{(k+r-1)!}{(r-2)!(k+1)!}(1-p)^{r}p^{k}\) + \(\frac{k(1-p)}{p}\) = \(\frac{(1-p)^{2}k(k+1)}{p^{2}}\frac{(k+r-1)!}{(r-2)!(k+1)!}(1-p)^{r-2}p^{k+2}\) + \(\frac{k(1-p)}{p}\) = \(\frac{(1-p)^{2}k(k+1)}{p^{2}}\) + \(\frac{k(1-p)}{p}\)
そして分散は二乗期待値から期待値の二乗を引いたものなので…
\(V(x)\) = \(E(x^{2}) – E(x)^{2}\) = \(\frac{(1-p)^{2}k(k+1)}{(p)^{2}}\) + \(\frac{k(1-p)}{p}\) – \(\frac{(k(1-p))^{2}}{(p)^{2}}\)
= \(\frac{k(1-p)}{p^{2}}\)
幾何分布について解説!
次に幾何分布の解説を行っていきます!
幾何分布とは「初めて1回成功するまでに\(r\)回失敗する確率を表した分布」と考えられています。例えばコインの表が1回出るまでにコインの裏が3回出る確率を知りたいときに用いることができます!
\(f(x)\) = \((1-p)^{r}p\)
また期待値・分散も負の二項分布の期待値・分散に\(k\)に1を代入した値であることも考えられるね!
\(E(x)\) = \(\frac{1-p}{p}\)
\(V(x)\) = \(\frac{(1-p)}{p^{2}}\)
実際に負の二項分布・幾何分布をPythonで実装!
実際に負の二項分布・幾何分布をPythonで実装してみましょう!
今回はScipy.statsのnbinom関数を使って、成功する確率pが0.2, 0.8の時の、\(k\) = 1,5の場合で生成しました!(\(k\)=1は幾何分布を表しています!)
from scipy.stats import nbinom
import matplotlib.pyplot as plt
x = range(0,10)
k = [1,5]
p = [0.2,0.8]
for i in k:
for j in p:
y = nbinom.pmf(x,i,j)
plt.plot(x,y,label="k={}, p={}".format(i,j))
plt.legend()
plt.show()
図を見てみると、パラメータを変化させることで確率密度関数が変化していることが分かります!
負の二項分布・幾何分布 まとめ
本記事では負の二項分布・幾何分布についてまとめました!
今回の内容について理解できた方は、離散型分布の代表である一様分布、二項分布とポアソン分布,そして連続型分布である正規分布,ガンマ分布と指数分布を勉強すると良いでしょう!
確率分布は様々なものがあり、データや目的によって適切に使うことで初めて効果が表れる非常に優れたツールであると考えられます!確率分布だけでなく、統計学の知識やデータサイエンスの知識を得ることで、今までにない知見を身に付けることができます!
そうしたデータサイエンスの力を身に付けるためにはスタビジの記事やスクールを活用すると良いでしょう。
そして僕の経験を詰め込んだデータサイエンス特化のスクール「スタアカ(スタビジアカデミー)」を運営していますので,興味のある方はぜひチェックしてみてください!
AIデータサイエンス特化スクール「スタアカ」
【価格】 | ライトプラン:1280円/月 プレミアムプラン:149,800円 |
---|---|
【オススメ度】 | |
【サポート体制】 | |
【受講形式】 | オンライン形式 |
【学習範囲】 | データサイエンスを網羅的に学ぶ 実践的なビジネスフレームワークを学ぶ SQLとPythonを組みあわせて実データを使った様々なワークを行う マーケティングの実行プラン策定 マーケティングとデータ分析の掛け合わせで集客マネタイズ |
データサイエンティストとしての自分の経験をふまえてエッセンスを詰め込んだのがこちらのスタビジアカデミー、略して「スタアカ」!!
当メディアが運営するスクールです。
24時間以内の質問対応と現役データサイエンティストによる複数回のメンタリングを実施します!
カリキュラム自体は、他のスクールと比較して圧倒的に良い自信があるのでぜひ受講してみてください!
他のスクールのカリキュラムはPythonでの機械学習実装だけに焦点が当たっているものが多く、実務に即した内容になっていないものが多いです。
そんな課題感に対して、実務で使うことの多いSQLや機械学習のビジネス導入プロセスの理解などもあわせて学べるボリューム満点のコースになっています!
Pythonが初めての人でも学べるようなカリキュラムしておりますので是非チェックしてみてください!
ウォルマートのデータを使って商品の予測分析をしたり、実務で使うことの多いGoogleプロダクトのBigQueryを使って投球分析をしたり、データサイエンティストに必要なビジネス・マーケティングの基礎を学んでマーケティングプランを作ってもらったり・Webサイト構築してデータ基盤構築してWebマーケ×データ分析実践してもらったりする盛りだくさんの内容になってます!
・BigQuery上でSQL、Google Colab上でPythonを使い野球の投球分析
・世界最大手小売企業のウォルマートの実データを用いた需要予測
・ビジネス・マーケティングの基礎を学んで実際の企業を題材にしたマーケティングプランの策定
・Webサイト構築してデータ基盤構築してWebマーケ×データ分析実践して稼ぐ
データサイエンスに関する記事はこちら!
データサイエンスを勉強できるスクールやサイトは、ぜひこちらを参考にしてみてください!