Skip to content

Instantly share code, notes, and snippets.

@tanutarou
Last active August 31, 2022 21:03
Show Gist options
  • Save tanutarou/4f4a37ed9aa97cd441b4fd62be452fdd to your computer and use it in GitHub Desktop.
Save tanutarou/4f4a37ed9aa97cd441b4fd62be452fdd to your computer and use it in GitHub Desktop.
ポアソン分布に対するベイズ推論(メール受信数を例に実験)
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from IPython.core.pylabtools import figsize\n",
"from matplotlib import pyplot as plt\n",
"%matplotlib inline\n",
"import numpy as np\n",
"import scipy as sp\n",
"figsize(12.5, 12)\n",
"import seaborn as sns\n",
"sns.set(context='paper', style='darkgrid', rc={'figure.facecolor':'white'}, font_scale=1.2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 一日に受け取るメール件数の推定問題\n",
"過去10日間の受信したメール件数データを持っています。この状況で、明日一体何件メールが届くかを推定したいです。 \n",
"\n",
"ベイズ的アプローチでこれを推定してみます。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# モデルの定義\n",
"\n",
"メールを受け取る件数$x$はポアソン分布に従うと考えました。\n",
"$$\n",
"p(x|\\lambda) = Poi(x|\\lambda) = \\frac{\\lambda^x}{x!} \\exp(-\\lambda)\n",
"$$\n",
"そして、パラメータの$\\lambda$の事前分布として、ポアソン分布の共役分布であるガンマ分布を仮定します。\n",
"$$\n",
"p(\\lambda | a,b) = Gam(\\lambda | a, b) = \\frac{b^a}{\\Gamma(a)} \\lambda^{a-1} \\exp(-b \\lambda)\n",
"$$\n",
"ここで、a, bはハイパパラメータであり、$\\Gamma(a)$はガンマ関数です。\n",
"以下にガンマ分布がいくつかプロットしてあります。"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7fdc1012c0b8>"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nRfT/tiEtu7GkrNkAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fdc128b3160>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from scipy.stats import gamma\n",
"# ガンマ分布の可視化(3次元)\n",
"def gamma_pdf(x, a, b):\n",
" return (b**a) * x**(a-1) * np.exp(-b*x) / sp.special.gamma(a)\n",
"x = np.linspace(gamma.ppf(0.01, 1.0), gamma.ppf(0.99, 1.0), 100)\n",
"plt.plot(x, gamma_pdf(x, 1.0, 1.0), 'r-', lw=5, alpha=0.6, label='a=1.0, b=1.0')\n",
"plt.plot(x, gamma_pdf(x, 2.0, 2.0), 'b-', lw=5, alpha=0.6, label='a=2.0, b=2.0')\n",
"plt.plot(x, gamma_pdf(x, 2.0, 0.5), 'g-', lw=5, alpha=0.6, label='a=2.0, b=0.5')\n",
"plt.legend()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 事後確率分布の計算\n",
"今回、事前分布に共役分布であるガンマ分布を選んだので、データ${\\bf X}$が与えられたときの事後確率分布もガンマ分布になります。ここで、データ数は$N$とします。\n",
"\n",
"$$\n",
"\\begin{eqnarray}\n",
"p(\\lambda | {\\bf X}) &=& Gam(\\lambda| \\hat{a}, \\hat{b}) \\\\\n",
"\\end{eqnarray}\n",
"$$\n",
"$$\n",
"\\hat{a} = \\sum_{n=1}^N x_n + a \\\\\n",
"\\hat{b} = N + b\n",
"$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# データを用いて事後確率分布を求める\n",
"過去$10$日間の受信メール数が以下のようになっていました。\n",
"\n",
"[10, 5, 5, 3, 10, 10, 10, 10, 9, 8]\n",
"\n",
"この結果をもとに事後確率分布を更新していきましょう。"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"a_hat = 81\n",
"b_hat = 11\n"
]
}
],
"source": [
"figsize(12.5, 25)\n",
"ts = [10, 5, 5, 3, 10, 10, 10, 10, 9, 8]\n",
"# ts = [100 for i in range(10)]\n",
"# 事前分布のパラメータ\n",
"a = 1 \n",
"b = 1\n",
"# 事後分布のパラメータ\n",
"ah = sum(ts) + a\n",
"bh = len(ts) + b\n",
"print('a_hat = {}'.format(ah))\n",
"print('b_hat = {}'.format(bh))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# ベイズ推定\n",
"ベイズ推定では、以下の式で予測分布を計算します。共役分布なので、積分が解析的に行なえます。\n",
"$$\n",
"\\begin{eqnarray}\n",
"p^*(x) &=& \\frac{C_G(\\hat{a}, \\hat{b})}{x! C_G(x + \\hat{a}, 1+\\hat{b})}\\\\\n",
"\\end{eqnarray}\n",
"$$\n",
"$$\n",
"C_G(a, b) = \\frac{b^a}{\\Gamma(a)}\n",
"$$\n",
"実際にこの式を使って、推定を行います。"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.LineCollection at 0x7fdc128b3b38>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nHQg75cXtDmjHjukkVAUAyUFIB2IgdEWKlaxIAdyhjAyprW1CdXVZGh+3BLc7HIba2ib40AtgWSGk\nA1GKtCLFBx+MEy6ARSoqCqihYUqXL1vl81nkdBpauzbAh10Ayw4hHYjSYlak2LWL0/TAYtnt0vr1\nhHIAyxsXjgJRYkUKAAAQa6QHIEqsSAEAAGKNkA5EaXZFinBYkQIAACwFIR2I0uyKFA6HMWc7K1IA\nAICl4sJRIAZuX5FibMym7OwZVqQAAABLRkgHYmR2RYrMTJsmJwnnAABg6ZjuAgAAAJgMIR0AAAAw\nGUI6AAAAYDKEdAAAAMBkCOkAAACAyRDSAQAAAJMhpAMAAAAms6iQ7vF4VFVVpcrKSp06dSqkvb+/\nXzU1NaqoqNDx48eD269cuaLdu3eroqJChw8flmHcuiNjIBDQSy+9pKqqKm3fvl3//M//HKPdAQAA\nAFJfxJA+PT2tlpYWtba26vTp0zp58qRGR0fnPKa5uVnHjh1Td3e3ent7NTAwIEk6evSoGhsbde7c\nOfl8PvX09EiSfvKTn8gwDP3sZz9TV1eX7r///tjvGQAAAJCiIob0/v5+rVu3Ti6XSw6HQ6Wlpbpw\n4UKw3ev1yjAM5efny2azqba2Vj09PTIMQ319fSopKZEk1dXVyePxSLoV0vfv3y9Jstlscjqd8dg3\nAAAAICVFDOkjIyNyu93B73Nzc+X1eiO2j46Ozgnftz/v2rVram1t1e7du/Xss8/qk08+icnOAAAA\nAOnAnowfOjY2pj/6oz9Se3u7fvjDH+rv/u7v9Pzzz4d9bHZ2hux2W4IrTG82m1VOZ1ayy0g7mZkW\nSZLValFm5l2SJKczKb9iwVpuly61RDt+07lvosH4TQzef+OL/o0v+jexIr7ruVyuOUfOh4eHtWHD\nhgXbXS6XcnJy5PP5QrbPPqe8vFySVFFRoebm5nl//tiY/w52B4vhdGbJ57uR7DLSzuTkCklSZuZd\nmpy8KUny+aaSWsvt0qWWaMdvOvdNNBi/icH7b3zRv/FF/8be6tV3z9sWcbrLxo0bNTAwoJGREY2P\nj8vj8ai4uDjYPjvVZXBwUDMzMzpz5ozKyspksVhUWFio3t5eSVJHR4fKysokSaWlpfq3f/s3SdL7\n77+vNWvWLH3vAAAAgDQTMaTb7XYdPHhQ9fX1qqur0759+5STk6OGhobgEfSmpiY1NjaqqqpKxcXF\n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\nRJJUV1cnj8eTyLJTyuf7eNWqVdq4caMk6Q/+4A/kdDr18ccfJ6u8lPf5/l0MxvDiLdS/v/zlL/WV\nr3xFWVlZCa5qeSOkLwPnz5/Xl7/85ZDTex9//LF2796thx9+WO+//36SqktdC/XfyMiI3G538Pvc\n3Fx5vd5El5gWuru7w04RkKSHH35YX//619Xd3Z3gqlLfYsbo6OionE7ngo/B4vzXf/2XAoHAnD6/\nHWN56RbqO8ZwbHR3d2v79u3ztv/1X/+1du3apXfeeSeBVaU/5qSnud/+9rf6wQ9+oH/4h38IaTt/\n/rzcbrcuX76sJ554Qp2dnbr77ruTUGVqov/i77e//a2uX78ePBp5u3fffVdut1ter1ff+ta39KUv\nfUl//Md/nIQqgYV98skn+pu/+Rs1NzeHbWcsLx19F3+Tk5O6dOmS/vZv/zZs+9GjR+V2u/Xxxx/r\niSee0Nq1a/XVr341wVWmJ46kp7GxsTE99dRTampqCvumNXtEZ+3atVq3bp2GhoYSXGFqW6j/XC7X\nnKM1w8PDcrlciS4x5f3sZz+bd6rLbP+73W5t3bpV//3f/53I0lLeYsZoTk6OfD7fgo/Bwm7evKmn\nn35a3/rWt/Qnf/InYR/DWF66SH3HGI7e7FSXlStXhm2f/TdYtWqVqqqq9B//8R+JLC+tEdLT1MzM\njP7qr/5KDz30kIqLi0PaP/74Y01NTUm6NTf1o48+0n333ZfoMlNWpP6bfdMaHBzUzMyMzpw5o7Ky\nsqTUmsrmm+py48YNjY2NSZI+/fRTXbp0SV/84hcTXV5KW8wYtVgsKiwsVG9vrySpo6ODcXyHXnzx\nRd1///36+te/Hradsbx0i+k7xnD0FppyOD09revXr0uSpqam9E//9E/BVc8QPYvB1YRpyePx6MCB\nA3N+WVpbW1VfX6/Ozk79+7//uw4fPiyr1Sqr1aoDBw6ELKuE+c3Xfw0NDTpy5Ijcbrc+/PBDHTp0\nKLi83dNPP53sslPK7373Oz366KP6xS9+Edw2279TU1P69re/LenWhWGPPPKIvvGNbySr1JTwxBNP\nqL+/XxMTE1q1apV++MMfampqKuwYPXTokL7xjW+osLBQQ0NDeuaZZ/TJJ58El6+zWjm+E87n+/jV\nV1/VI488ooKCguA1Qa+88orWrl3LWF6Cz/fvG2+8oRdeeEFSaN8xhu9cuPeINWvWqLy8XOfPn1dm\nZmbwsbP9+8UvflF79+7VzZs3ZRiGtm/fznLDMURIBwAAAEyGj5IAAACAyRDSAQAAAJMhpAMAAAAm\nQ0gHAAAATIaQDgAAAJgMIR0AAAAwGUI6AAAAYDKEdAAAAMBk/h/44oJU24sUHwAAAABJRU5ErkJg\ngg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fdc128b3e80>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"figsize(12.5, 4)\n",
"from scipy.stats import nbinom\n",
"\n",
"x = np.array(list(range(1, 20)))\n",
"y = nbinom.pmf(k=ah, n=x, p=1.0/(bh + 1.0))\n",
"plt.plot(x, y, 'bo', ms=8)\n",
"plt.vlines(x, 0, y, colors='b', lw=5, alpha=0.5)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
},
"toc": {
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"toc_cell": false,
"toc_position": {},
"toc_section_display": "block",
"toc_window_display": false
},
"varInspector": {
"cols": {
"lenName": 16,
"lenType": 16,
"lenVar": 40
},
"kernels_config": {
"python": {
"delete_cmd_postfix": "",
"delete_cmd_prefix": "del ",
"library": "var_list.py",
"varRefreshCmd": "print(var_dic_list())"
},
"r": {
"delete_cmd_postfix": ") ",
"delete_cmd_prefix": "rm(",
"library": "var_list.r",
"varRefreshCmd": "cat(var_dic_list()) "
}
},
"types_to_exclude": [
"module",
"function",
"builtin_function_or_method",
"instance",
"_Feature"
],
"window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment