Skip to content

Instantly share code, notes, and snippets.

@macks22
Created March 16, 2019 19:58
Show Gist options
  • Save macks22/e4896d3d00ea5eb8dc4a6de81f3c6c53 to your computer and use it in GitHub Desktop.
Save macks22/e4896d3d00ea5eb8dc4a6de81f3c6c53 to your computer and use it in GitHub Desktop.
Simulations of regret and potential value remaining (PVR) for Binomial and Beta-Binomial distributed data.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"from functools import partial\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"from scipy import stats\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"def plot_beta_dist(dist, ax=None, **kwargs):\n",
" if ax is None:\n",
" fig, ax = plt.subplots()\n",
"\n",
" support = np.linspace(0, 1, num=1000)\n",
" prob = dist.pdf(support)\n",
" ax.fill_between(support, prob, alpha=kwargs.pop('alpha', 0.7))\n",
"\n",
" return ax"
]
},
{
"cell_type": "code",
"execution_count": 133,
"metadata": {},
"outputs": [],
"source": [
"def compare_dists_visually(dist1, dist2, ax=None):\n",
" if ax is None:\n",
" fig, ax = plt.subplots(figsize=(5, 3))\n",
"\n",
" plt.tight_layout()\n",
" plot_beta_dist(dist1, ax)\n",
" plot_beta_dist(dist2, ax)"
]
},
{
"cell_type": "code",
"execution_count": 126,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 360x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"a1, b1 = (10, 90)\n",
"a2, b2 = (20, 80)\n",
"dist1 = stats.beta(a1, b1)\n",
"dist2 = stats.beta(a2, b2)\n",
"\n",
"compare_dists_visually(dist1, dist2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Simulations of Regret and Potential Value Remaining with Fixed $\\theta$"
]
},
{
"cell_type": "code",
"execution_count": 98,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.1, 0.2)"
]
},
"execution_count": 98,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"theta1 = dist1.mean()\n",
"theta2 = dist2.mean()\n",
"theta1, theta2"
]
},
{
"cell_type": "code",
"execution_count": 99,
"metadata": {},
"outputs": [],
"source": [
"rng = np.random.RandomState(42)\n",
"num_samples = 5000\n",
"arrival_rate = 50\n",
"num_arrivals = int(num_samples / arrival_rate)\n",
"samples1 = rng.binomial(arrival_rate, theta1, size=num_arrivals)\n",
"samples2 = rng.binomial(arrival_rate, theta2, size=num_arrivals)"
]
},
{
"cell_type": "code",
"execution_count": 100,
"metadata": {},
"outputs": [],
"source": [
"# Assume Beta(1, 1) prior for both groups.\n",
"totals = np.arange(1, num_arrivals + 1) * arrival_rate\n",
"\n",
"post_a1 = 1 + np.cumsum(samples1)\n",
"post_b1 = 1 + totals - np.cumsum(samples1)\n",
"params_per_time_step1 = list(zip(post_a1, post_b1))\n",
"\n",
"assert np.array_equal(\n",
" np.array([sum(pair) - 2 for pair in params_per_time_step1]),\n",
" totals)"
]
},
{
"cell_type": "code",
"execution_count": 101,
"metadata": {},
"outputs": [],
"source": [
"post_a2 = 1 + np.cumsum(samples2)\n",
"post_b2 = 1 + totals - np.cumsum(samples2)\n",
"params_per_time_step2 = list(zip(post_a2, post_b2))"
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {},
"outputs": [],
"source": [
"dists1 = [stats.beta(*params) for params in params_per_time_step1]\n",
"dists2 = [stats.beta(*params) for params in params_per_time_step2]"
]
},
{
"cell_type": "code",
"execution_count": 103,
"metadata": {},
"outputs": [],
"source": [
"def compute_regret(dist1, dist2, rng=None, num_samples=1000):\n",
" if rng is None:\n",
" rng = np.random.RandomState(42)\n",
"\n",
" samples = np.array([dist1.rvs(num_samples), dist2.rvs(num_samples)]).T\n",
" best = 0 if dist1.mean() > dist2.mean() else 1\n",
" best_across_samples = samples[:, best]\n",
" best_per_sample = samples.max(axis=-1)\n",
" return best_per_sample - best_across_samples"
]
},
{
"cell_type": "code",
"execution_count": 104,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = dists1[0]\n",
"dist2 = dists2[0]\n",
"regret = compute_regret(dist1, dist2)\n",
"plt.hist(regret)\n",
"plt.axvline(np.percentile(regret, q=95));"
]
},
{
"cell_type": "code",
"execution_count": 105,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = dists1[1]\n",
"dist2 = dists2[1]\n",
"regret = compute_regret(dist1, dist2)\n",
"plt.hist(regret)\n",
"plt.axvline(np.percentile(regret, q=95));"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD8CAYAAACb4nSYAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAGbtJREFUeJzt3X+MVeed3/H3Z+6dO79scIJnI5cfGbywuxpvtm52lnjVbGrFihdn28xWhQY2yqIWCaUpUqt0lWJFtbJo/2FVxe0qVAkSrBDZBlLStKMsu2wa0laNsoQhxrGxl2aMnQXixhgIjvnhYeDbP+5zh8vlDnOAO3OHcz4vacQ5z3nunOcZXX/u4+eecx5FBGZmVgwd7W6AmZnNHoe+mVmBOPTNzArEoW9mViAOfTOzAnHom5kViEPfzKxAHPpmZgWSKfQlrZR0TNKYpE1NjndJ2pOOH5Q0kMo7Je2U9IKklyU93drmm5nZ7ShPV0FSCdgKfAQ4CRySNBIRL9VVWw+ci4hlktYAW4CPA6uBroh4n6Re4CVJX42I16Y634MPPhgDAwN33CEzsyI6fPjwmxHRP129aUMfWAGMRcRxAEm7gWGgPvSHgc+n7b3AFyUJCKBPUhnoAcaBt251soGBAUZHRzM0y8zMaiT9OEu9LNM7C4ETdfsnU1nTOhExAZwHFlD9ALgAvA78LfDvI+JsloaZmVnrzfQXuSuAq8DfAZYC/0bSw42VJG2QNCpp9PTp0zPcJDOz4soS+qeAxXX7i1JZ0zppKmc+cAb4PeAvI+JKRLwBfBcYajxBRGyLiKGIGOrvn3ZKyszM7lCW0D8ELJe0VFIFWAOMNNQZAdal7VXAgag+s/lvgQ8DSOoDHgP+phUNNzOz2zdt6Kc5+o3AfuBl4GsRcVTSZkkfS9W2AwskjQGfAWqXdW4F7pN0lOqHx59GxA9b3QkzM8tGc20RlaGhofDVO2Zmt0fS4Yi4afq8ke/INTMrkNyE/k9+dokv/NUxXn3zQrubYmY2Z+Um9M9eGOdPDozxo5/+vN1NMTObs3IT+vO6OwF46/JEm1tiZjZ35Sb05/dUQ//8pSttbomZ2dyVm9C/r7v6GKG3HPpmZlPKTeiXOsT9XWXeuuzQNzObSm5CH2BeT6end8zMbiF3of/WJX+Ra2Y2lXyFfrend8zMbiVXoT+/p9Nf5JqZ3UKuQn+eQ9/M7JbyFfrdnb45y8zsFnIV+vN7Onn7nQkmrl5rd1PMzOakXIX+vJ7qDVo/92jfzKypfIX+5PN3PK9vZtZMrkLfz98xM7u1TKEvaaWkY5LGJG1qcrxL0p50/KCkgVT+CUlH6n6uSXq0tV24bl4Kfd+gZWbW3LShL6lEda3bp4BBYK2kwYZq64FzEbEMeBbYAhARfxYRj0bEo8AngVcj4kgrO1CvNqfv6R0zs+ayjPRXAGMRcTwixoHdwHBDnWFgZ9reCzwhSQ111qbXzhhP75iZ3VqW0F8InKjbP5nKmtaJiAngPLCgoc7Hga/eWTOzmfwi16FvZtbUrHyRK+kDwMWIeHGK4xskjUoaPX369B2fp7dSotQhj/TNzKaQJfRPAYvr9helsqZ1JJWB+cCZuuNruMUoPyK2RcRQRAz19/dnaXdTkqrP3/GcvplZU1lC/xCwXNJSSRWqAT7SUGcEWJe2VwEHIiIAJHUA/5QZns+vmddd9tU7ZmZTKE9XISImJG0E9gMlYEdEHJW0GRiNiBFgO7BL0hhwluoHQ82HgBMRcbz1zb+ZF1IxM5vatKEPEBH7gH0NZc/UbV8GVk/x2v8JPHbnTbw9nt4xM5taru7IhfSkTY/0zcyayl/o95Q57zl9M7Omchj6nt4xM5tK/kK/u5PxiWtcvnK13U0xM5tz8hf6Pb4r18xsKrkL/drzdzzFY2Z2s9yF/rzu6lWo/jLXzOxm+Qt9T++YmU0pd6Hv6R0zs6nlLvT9eGUzs6nlL/R7anP6Dn0zs0a5C/2uconuzg7euuwvcs3MGuUu9MHP3zEzm0o+Q9+PVzYzayqXoe/HK5uZNZfL0J/XXfZI38ysiUyhL2mlpGOSxiRtanK8S9KedPygpIG6Y78m6XuSjkp6QVJ365rf3LyeTi+ZaGbWxLShL6kEbAWeAgaBtZIGG6qtB85FxDLgWWBLem0Z+ArwqYh4BHgcmPEhuKd3zMyayzLSXwGMRcTxiBinusD5cEOdYWBn2t4LPCFJwJPADyPieYCIOBMRM/7M49rVO9euxUyfyszsnpIl9BcCJ+r2T6aypnUiYgI4DywAfgkISfsl/UDSZ+++ydOb11PmWsCFcU/xmJnVy7Qw+l3+/g8CvwFcBL4t6XBEfLu+kqQNwAaAJUuW3PVJrz9/Z4L702MZzMws20j/FLC4bn9RKmtaJ83jzwfOUP2/gv8dEW9GxEVgH/D+xhNExLaIGIqIof7+/tvvRYPa83fOX/S8vplZvSyhfwhYLmmppAqwBhhpqDMCrEvbq4ADERHAfuB9knrTh8E/AF5qTdOnNs9P2jQza2ra6Z2ImJC0kWqAl4AdEXFU0mZgNCJGgO3ALkljwFmqHwxExDlJX6D6wRHAvoj48xnqy6T5fqa+mVlTmeb0I2If1amZ+rJn6rYvA6uneO1XqF62OWvuT6tn+aFrZmY3yuUduT2VEgCXrsz41aFmZveUfIZ+Zwp9X7JpZnaDnIf+tTa3xMxsbsll6JdLHVRKHZ7eMTNrkMvQh+q8vqd3zMxulN/Q7yx5pG9m1iC/oV8pcemK5/TNzOrlN/Q7Pb1jZtYov6Ff8fSOmVmj/IZ+Z4lL4w59M7N6+Q39SomLDn0zsxvkN/Q7S1z29I6Z2Q1yHfqe0zczu1F+Q9/TO2ZmN8l16Ht6x8zsRvkN/c4SV64GV676Bi0zs5rchn6vn6lvZnaTTKEvaaWkY5LGJG1qcrxL0p50/KCkgVQ+IOmSpCPp50utbf7UutPjlS97Xt/MbNK0yyVKKgFbgY8AJ4FDkkYion6B8/XAuYhYJmkNsAX4eDr2SkQ82uJ2T2vymfoe6ZuZTcoy0l8BjEXE8YgYB3YDww11hoGdaXsv8IQkta6Zt682veMreMzMrssS+guBE3X7J1NZ0zoRMQGcBxakY0slPSfpf0n6rbtsb2bdntM3M7vJtNM7d+l1YElEnJH068B/k/RIRLxVX0nSBmADwJIlS1py4utLJjr0zcxqsoz0TwGL6/YXpbKmdSSVgfnAmYh4JyLOAETEYeAV4JcaTxAR2yJiKCKG+vv7b78XTUxevePQNzOblCX0DwHLJS2VVAHWACMNdUaAdWl7FXAgIkJSf/oiGEkPA8uB461p+q35i1wzs5tNO70TEROSNgL7gRKwIyKOStoMjEbECLAd2CVpDDhL9YMB4EPAZklXgGvApyLi7Ex0pFG3p3fMzG6SaU4/IvYB+xrKnqnbvgysbvK6rwNfv8s23hHfnGVmdrPc3pHb49A3M7tJbkO/u+zr9M3MGuU29Ds6RHdnh5+0aWZWJ7ehD14n18ysUa5Dv7dS9vSOmVmdXIe+p3fMzG6U69DvqXidXDOzerkO/d7OMhfHJ9rdDDOzOSPXod9dKXHpipdLNDOryXXo93R2eOUsM7M6uQ793kqZi1c8vWNmVpPr0O/uLHFp3NM7ZmY1uQ79ns6SL9k0M6uT69DvrZS4OD5BRLS7KWZmc0KuQ7+nUuJawPhVT/GYmUHOQ7+2kMplz+ubmQE5D/3aQiq+gsfMrCpT6EtaKemYpDFJm5oc75K0Jx0/KGmg4fgSSW9L+oPWNDubHi+ZaGZ2g2lDPy1svhV4ChgE1koabKi2HjgXEcuAZ4EtDce/APzF3Tf39nR7cXQzsxtkGemvAMYi4nhEjAO7geGGOsPAzrS9F3hCkgAk/S7wKnC0NU3ObnKdXI/0zcyAbKG/EDhRt38ylTWtExETwHlggaT7gH8L/OGtTiBpg6RRSaOnT5/O2vZpeZ1cM7MbzfQXuZ8Hno2It29VKSK2RcRQRAz19/e37OS1OX0vpGJmVlXOUOcUsLhuf1Eqa1bnpKQyMB84A3wAWCXpj4EHgGuSLkfEF++65RnURvq+K9fMrCpL6B8ClktaSjXc1wC/11BnBFgHfA9YBRyI6m2wv1WrIOnzwNuzFfjgq3fMzBpNG/oRMSFpI7AfKAE7IuKopM3AaESMANuBXZLGgLNUPxjaztM7ZmY3yjLSJyL2Afsayp6p274MrJ7md3z+Dtp3V/xFrpnZjXJ9R25XuQPJc/pmZjW5Dn1J9HaWPL1jZpbkOvShOsXj6R0zs6rch353Z8nr5JqZJbkP/epCKg59MzMoQOj3dHp6x8ysJveh3+3QNzOblPvQ762UfEeumVmS+9D31TtmZtflPvS7Oz3SNzOryX3o93qkb2Y2Kfeh3+ORvpnZpGKE/pWrVJ/0bGZWbPkP/Ur1QaKXr1xrc0vMzNov/6HfWe2i5/XNzIoQ+n6mvpnZpEyhL2mlpGOSxiRtanK8S9KedPygpIFUvkLSkfTzvKR/3NrmT682vXNpfGK2T21mNudMG/qSSsBW4ClgEFgrabCh2nrgXEQsA54FtqTyF4GhiHgUWAl8OS2cPmuur5PrOX0zsywj/RXAWEQcj4hxYDcw3FBnGNiZtvcCT0hSRFyMiNoQuxuY9UtoJkPf0ztmZplCfyFwom7/ZCprWieF/HlgAYCkD0g6CrwAfKruQ2BW1Ob0L3p6x8xs5r/IjYiDEfEI8BvA05K6G+tI2iBpVNLo6dOnW3r+2kjf6+SamWUL/VPA4rr9RamsaZ00Zz8fOFNfISJeBt4GfrXxBBGxLSKGImKov78/e+szuD7Sd+ibmWUJ/UPAcklLJVWANcBIQ50RYF3aXgUciIhIrykDSHov8CvAay1peUa9vmTTzGzStFfSRMSEpI3AfqAE7IiIo5I2A6MRMQJsB3ZJGgPOUv1gAPggsEnSFeAa8OmIeHMmOjKV7smrdxz6ZmaZLp+MiH3AvoayZ+q2LwOrm7xuF7DrLtt4V3o9vWNmNin3d+R2ljqolDu44Kt3zMzyH/oAfZUSF9/xSN/MrBCh31spe6RvZkZBQr+vyyN9MzMoSOh7pG9mVlWI0O/rKvnqHTMzChL6vZWyQ9/MjIKEfl+l5AeumZlRkNDv7SpzwV/kmpkVJPQ7PdI3M4OihH5XdU7/2rVZX8PFzGxOKUTo9/lJm2ZmQEFCv7er+lw5X6tvZkVXiNCvjfR9V66ZFV0hQr+34pG+mRkUJPT7uvxMfTMzKEjoT4703/FI38yKLVPoS1op6ZikMUmbmhzvkrQnHT8oaSCVf0TSYUkvpH8/3NrmZ+ORvplZ1bShL6kEbAWeAgaBtZIGG6qtB85FxDLgWWBLKn8T+EcR8T6qC6e3ZenEvjTSd+ibWdFlGemvAMYi4nhEjAO7geGGOsPAzrS9F3hCkiLiuYj4SSo/CvRI6mpFw2/H9XVyPb1jZsWWJfQXAifq9k+msqZ1ImICOA8saKjzT4AfRMQ7d9bUO9dXu07fl2yaWcGVZ+Mkkh6hOuXz5BTHNwAbAJYsWdLy83eVO+iQR/pmZllG+qeAxXX7i1JZ0zqSysB84EzaXwR8A/j9iHil2QkiYltEDEXEUH9//+31IANJ1dWzPNI3s4LLEvqHgOWSlkqqAGuAkYY6I1S/qAVYBRyIiJD0APDnwKaI+G6rGn0nev1MfTOz6UM/zdFvBPYDLwNfi4ijkjZL+liqth1YIGkM+AxQu6xzI7AMeEbSkfTzCy3vRQZ9XWUu+OodMyu4THP6EbEP2NdQ9kzd9mVgdZPX/RHwR3fZxpborZS46JuzzKzgCnFHLlSv1fezd8ys6AoT+r1dJd+cZWaFV5jQ76uU/ewdMyu8woR+9eodj/TNrNgKE/p9aZ1cM7MiK0zo+zp9M7MChX5fV5krV4PxiWvtboqZWdsUJvT9pE0zswKGvu/KNbMiK1Dop4VUfNmmmRVYYUK/tmSiR/pmVmSFCX2P9M3MChT6tXVyPdI3syIrTOj3dvnqHTOzwoT+5Ejfq2eZWYEVJvQ90jczK1Lod6ardzzSN7MCyxT6klZKOiZpTNKmJse7JO1Jxw9KGkjlCyR9R9Lbkr7Y2qbfnnKpg65yBxeveKRvZsU1behLKgFbgaeAQWCtpMGGauuBcxGxDHgW2JLKLwP/DviDlrX4LvR1lbnokb6ZFViWkf4KYCwijkfEOLAbGG6oMwzsTNt7gSckKSIuRMT/oRr+bddbKXnJRDMrtCyhvxA4Ubd/MpU1rRMRE8B5YEHWRkjaIGlU0ujp06ezvuy29VU80jezYpsTX+RGxLaIGIqIof7+/hk7T49H+mZWcFlC/xSwuG5/USprWkdSGZgPnGlFA1upz4ujm1nBZQn9Q8BySUslVYA1wEhDnRFgXdpeBRyIiGhdM1uj14ujm1nBlaerEBETkjYC+4ESsCMijkraDIxGxAiwHdglaQw4S/WDAQBJrwHzgIqk3wWejIiXWt+V6fV5cXQzK7hpQx8gIvYB+xrKnqnbvgysnuK1A3fRvpbq7Sr7jlwzK7Q58UXubOmrlHxHrpkVWqFCv7dS5tKVq1y9Nue+bjAzmxWFCv3a6lmXrni0b2bFVKjQn1w9y/P6ZlZQhQr92kjfd+WaWVEVKvR7J5dM9EjfzIqpUKHfNzm945G+mRVToUK/tnqW78o1s6IqVuhXaksmeqRvZsVUqNC/vji6R/pmVkyFCn2P9M2s6AoV+n1dvnrHzIqtUKHfVe6gu7ODE2cvtrspZmZtUajQl8RH3/cQI0d+wtue1zezAipU6AN88rH3cmH8Kt94rnHxLzOz/Ctc6D+6+AF+deE8vvK9HzMHF/cyM5tRmUJf0kpJxySNSdrU5HiXpD3p+EFJA3XHnk7lxyT9duuafmck8cnH3suxn/6cQ6+da3dzzMxm1bShL6kEbAWeAgaBtZIGG6qtB85FxDLgWWBLeu0g1aUTHwFWAv8p/b62+tjfXcj93WV2/fWP290UM7NZlWWkvwIYi4jjETEO7AaGG+oMAzvT9l7gCUlK5bsj4p2IeBUYS7+vrXoqJVb/+mL+8sXXeePnl9vdHDOzWZNljdyFwIm6/ZPAB6aqkxZSPw8sSOV/3fDahXfc2hb6xGNL2PHdVxn+4ne5ryvTUsFmZjPq8V/u53O/0ziR0lpzIu0kbQA2ACxZsmRWzvmL/ffx2ZW/zIunzs/K+czMpvOeed0zfo4soX8KWFy3vyiVNatzUlIZmA+cyfhaImIbsA1gaGho1i6p+fTjy2brVGZmc0KWOf1DwHJJSyVVqH4xO9JQZwRYl7ZXAQeiej3kCLAmXd2zFFgOfL81TTczs9s17Ug/zdFvBPYDJWBHRByVtBkYjYgRYDuwS9IYcJbqBwOp3teAl4AJ4F9GhJ92ZmbWJpprNygNDQ3F6Ohou5thZnZPkXQ4Ioamq1e4O3LNzIrMoW9mViAOfTOzAnHom5kViEPfzKxA5tzVO5JOA7fzJLQHgTdnqDlzWRH7XcQ+QzH7XcQ+w931+70R0T9dpTkX+rdL0miWy5Typoj9LmKfoZj9LmKfYXb67ekdM7MCceibmRVIHkJ/W7sb0CZF7HcR+wzF7HcR+wyz0O97fk7fzMyyy8NI38zMMrqnQ3+6BdvvNZJ2SHpD0ot1Ze+W9C1JP0r/viuVS9KfpL7/UNL7616zLtX/kaR1zc41V0haLOk7kl6SdFTSv0rlue23pG5J35f0fOrzH6bypZIOpr7tSY8yJz2afE8qPyhpoO53PZ3Kj0n67fb0KDtJJUnPSfpm2i9Cn1+T9IKkI5JGU1n73t8RcU/+UH3M8yvAw0AFeB4YbHe77rJPHwLeD7xYV/bHwKa0vQnYkrY/CvwFIOAx4GAqfzdwPP37rrT9rnb37RZ9fgh4f9q+H/i/wGCe+53afl/a7gQOpr58DViTyr8E/Iu0/WngS2l7DbAnbQ+m930XsDT991Bqd/+m6ftngP8MfDPtF6HPrwEPNpS17f3d9j/IXfwhfxPYX7f/NPB0u9vVgn4NNIT+MeChtP0QcCxtfxlY21gPWAt8ua78hnpz/Qf478BHitJvoBf4AdV1p98Eyql88v1NdS2L30zb5VRPje/5+npz8YfqynnfBj4MfDP1Idd9Tm1sFvpte3/fy9M7zRZsnxOLrrfYeyLi9bT9/4D3pO2p+n/P/l3S/8L/Paoj31z3O01zHAHeAL5FdcT6s4iYSFXq2z/Zt3T8PLCAe6zPwH8APgtcS/sLyH+fAQL4K0mH03rg0Mb395xYGN2yiYiQlMvLrSTdB3wd+NcR8ZakyWN57HdUV5B7VNIDwDeAX2lzk2aUpH8IvBERhyU93u72zLIPRsQpSb8AfEvS39QfnO3397080s+06HoO/FTSQwDp3zdS+VT9v+f+LpI6qQb+n0XEf03Fue83QET8DPgO1amNByTVBmL17Z/sWzo+HzjDvdXnvw98TNJrwG6qUzz/kXz3GYCIOJX+fYPqB/wK2vj+vpdDP8uC7XlQv+j8Oqpz3rXy30/f9j8GnE//u7gfeFLSu9IVAU+msjlJ1SH9duDliPhC3aHc9ltSfxrhI6mH6ncYL1MN/1WpWmOfa3+LVcCBqE7sjgBr0pUuS4HlwPdnpxe3JyKejohFETFA9b/VAxHxCXLcZwBJfZLur21TfV++SDvf3+3+kuMuvyD5KNWrPV4BPtfu9rSgP18FXgeuUJ2zW091HvPbwI+A/wG8O9UVsDX1/QVgqO73/HNgLP38s3b3a5o+f5DqnOcPgSPp56N57jfwa8Bzqc8vAs+k8oepBtgY8F+ArlTenfbH0vGH637X59Lf4hjwVLv7lrH/j3P96p1c9zn17/n0c7SWU+18f/uOXDOzArmXp3fMzOw2OfTNzArEoW9mViAOfTOzAnHom5kViEPfzKxAHPpmZgXi0DczK5D/DxcUCoGwgUvWAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"rng = np.random.RandomState(42)\n",
"regret_per_time_step = (compute_regret(dist1, dist2, rng)\n",
" for dist1, dist2 in zip(dists1, dists2))\n",
"pvr_per_time_step = [np.percentile(regret, q=95)\n",
" for regret in regret_per_time_step]\n",
"plt.plot(totals, pvr_per_time_step);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Consolidate code into functions"
]
},
{
"cell_type": "code",
"execution_count": 107,
"metadata": {},
"outputs": [],
"source": [
"def post_dists(totals, samples1, samples2):\n",
" # Assume Beta(1, 1) prior for both groups.\n",
" post_a1 = 1 + np.cumsum(samples1)\n",
" post_b1 = 1 + totals - np.cumsum(samples1)\n",
" params_per_time_step1 = list(zip(post_a1, post_b1))\n",
"\n",
" post_a2 = 1 + np.cumsum(samples2)\n",
" post_b2 = 1 + totals - np.cumsum(samples2)\n",
" params_per_time_step2 = list(zip(post_a2, post_b2))\n",
"\n",
" dists1 = [stats.beta(*params) for params in params_per_time_step1]\n",
" dists2 = [stats.beta(*params) for params in params_per_time_step2]\n",
"\n",
" return dists1, dists2"
]
},
{
"cell_type": "code",
"execution_count": 174,
"metadata": {},
"outputs": [],
"source": [
"def compute_pvr(dists1, dists2, rng=None):\n",
" if rng is None:\n",
" rng = np.random.RandomState(42)\n",
"\n",
" regret_per_time_step = (compute_regret(dist1, dist2, rng)\n",
" for dist1, dist2 in zip(dists1, dists2))\n",
" return np.array([\n",
" np.percentile(regret, q=95)\n",
" for regret in regret_per_time_step\n",
" ])"
]
},
{
"cell_type": "code",
"execution_count": 183,
"metadata": {},
"outputs": [],
"source": [
"def analyze_inference(arrival_rate, samples1, samples2, ax=None):\n",
" assert len(samples1) == len(samples2)\n",
" num_arrivals = len(samples1)\n",
"\n",
" totals = np.arange(1, num_arrivals + 1) * arrival_rate\n",
" dists1, dist2 = post_dists(totals, samples1, samples2)\n",
" pvr_per_time_step = compute_pvr(dists1, dists2)\n",
"\n",
" if ax is None:\n",
" fig, ax = plt.subplots()\n",
"\n",
" return ax.fill_between(np.arange(len(pvr_per_time_step)), pvr_per_time_step, -.0001)"
]
},
{
"cell_type": "code",
"execution_count": 184,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"analyze_inference(arrival_rate, samples1, samples2);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Simulations of Regret and Potential Value Remaining with Beta-Binomial"
]
},
{
"cell_type": "code",
"execution_count": 168,
"metadata": {},
"outputs": [],
"source": [
"def beta_binom_sim(dist1, dist2, num_samples=5000, arrival_rate=50, rng=None):\n",
" if rng is None:\n",
" rng = np.random.RandomState(42)\n",
"\n",
" fig, axes = plt.subplots(ncols=2, figsize=(8, 3))\n",
" compare_dists_visually(dist1, dist2, ax=axes[0])\n",
"\n",
" num_arrivals = int(num_samples / arrival_rate)\n",
" \n",
" theta1 = dist1.rvs(num_arrivals, random_state=rng)\n",
" theta2 = dist2.rvs(num_arrivals, random_state=rng)\n",
"\n",
" samples1 = rng.binomial(arrival_rate, theta1)\n",
" samples2 = rng.binomial(arrival_rate, theta2)\n",
"\n",
" analyze_inference(arrival_rate, samples1, samples2, ax=axes[1])\n",
" return axes"
]
},
{
"cell_type": "code",
"execution_count": 162,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x216 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = stats.beta(10, 90)\n",
"dist2 = stats.beta(20, 80)\n",
"beta_binom_sim(dist1, dist2);"
]
},
{
"cell_type": "code",
"execution_count": 163,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x216 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = stats.beta(10, 90)\n",
"dist2 = stats.beta(15, 85)\n",
"beta_binom_sim(dist1, dist2);"
]
},
{
"cell_type": "code",
"execution_count": 164,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x216 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = stats.beta(10, 90)\n",
"dist2 = stats.beta(5, 95)\n",
"beta_binom_sim(dist1, dist2);"
]
},
{
"cell_type": "code",
"execution_count": 186,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x216 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dist1 = stats.beta(10, 90)\n",
"dist2 = stats.beta(11, 89)\n",
"beta_binom_sim(dist1, dist2, arrival_rate=10);"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"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.6.8"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment