Skip to content

Instantly share code, notes, and snippets.

@Shiba16
Created February 24, 2016 05:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Shiba16/dbcfcacb78fe5e7d0f95 to your computer and use it in GitHub Desktop.
Save Shiba16/dbcfcacb78fe5e7d0f95 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": [
"# coding: utf-8\n",
"\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"from pylab import *\n",
"%matplotlib inline\n",
"\n",
"class PitmanYor:\n",
" def __init__(self, alpha, beta): \n",
" self.alpha = alpha #param of Pitman-Yor process. \n",
" self.beta = beta #param of Pitman-Yor process. When beta == 0.0, it means Dirichlet Process\n",
" self.tables = [] #when tables[i] = j , the number of people in table i is j\n",
" self.tables_num = [] # when n th people get a seat , the number of tables is appended on this array's n th element\n",
"\n",
" def alpha_beta_setter(self, alpha, beta):\n",
" self.alpha = alpha\n",
" self.beta = beta\n",
"\n",
" def make_tables(self, sum_people):\n",
" self.tables = []\n",
" self.tables_num = []\n",
"\n",
" for n in range(sum_people):\n",
" tables_prob = []\n",
" for p_in_table in self.tables:\n",
" tables_prob.append(\n",
" (p_in_table - self.beta) / ( n + self.alpha)\n",
" )\n",
" tables_prob.append(\n",
" (self.alpha + self.beta * len(self.tables)) / (n + self.alpha)\n",
" )\n",
" \n",
" choosed_table = np.nonzero(np.random.multinomial(1, tables_prob))[0][0]#generate random number which follow Pitman-Yor Process(when self.beta == 0.0, Dirichlet Process)\n",
"\n",
" if choosed_table == len(self.tables):\n",
" self.tables.append(1)\n",
" else:\n",
" self.tables[choosed_table] += 1\n",
" self.tables_num.append(len(self.tables))\n",
"\n",
" def get_graph_parts(self):\n",
" return [range(len(self.tables_num)), self.tables_num, range(len(self.tables)), self.get_sorted_tables()]\n",
" \n",
" def get_sorted_tables(self):\n",
" sorted_tables =self.tables.copy()\n",
" sorted_tables.sort()\n",
" sorted_tables.reverse()\n",
"\n",
" return sorted_tables"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x10aec22b0>,\n",
" <matplotlib.lines.Line2D at 0x10aec2470>]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10527d710>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"crp_items = []\n",
"crp = PitmanYor(2, 0.0)\n",
"crp.make_tables(1000)\n",
"crp_items.append(crp.get_graph_parts())\n",
"\n",
"crp.alpha_beta_setter(10, 0.0)\n",
"crp.make_tables(1000)\n",
"crp_items.append(crp.get_graph_parts())\n",
"\n",
"#show Figure11.5\n",
"plot(crp_items[0][0], crp_items[0][1], \"b\", crp_items[1][0],crp_items[1][1], \"g\")"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x10af8c198>,\n",
" <matplotlib.lines.Line2D at 0x10af8c358>]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x105295d68>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"#show Figure11.6\n",
"plot(crp_items[0][2], crp_items[0][3], \"b\", crp_items[1][2], crp_items[1][3], \"g\")"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x1110a6198>,\n",
" <matplotlib.lines.Line2D at 0x1110a6358>,\n",
" <matplotlib.lines.Line2D at 0x1110a6cc0>,\n",
" <matplotlib.lines.Line2D at 0x1110ad518>]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x111060a90>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pit_items = []\n",
"\n",
"pit = PitmanYor(2, 0.0)\n",
"pit.make_tables(1000)\n",
"pit_items.append(pit.get_graph_parts())\n",
"\n",
"pit.alpha_beta_setter(2, 0.2)\n",
"pit.make_tables(1000)\n",
"pit_items.append(pit.get_graph_parts())\n",
"\n",
"pit.alpha_beta_setter(2, 0.3)\n",
"pit.make_tables(1000)\n",
"pit_items.append(pit.get_graph_parts())\n",
"\n",
"pit.alpha_beta_setter(2, 0.4)\n",
"pit.make_tables(1000)\n",
"pit_items.append(pit.get_graph_parts())\n",
"\n",
"#show Figure11.7\n",
"plot(pit_items[0][0], pit_items[0][1], \"b\", pit_items[1][0], pit_items[1][1], \"g\", pit_items[2][0], pit_items[2][1], \"r\", pit_items[3][0], pit_items[3][1], \"c\" )"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x11117edd8>,\n",
" <matplotlib.lines.Line2D at 0x1111b07b8>]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nMir8IiIh8/8BcZB1S0PlkiUAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x111070a20>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pit_items = []\n",
"\n",
"pit = PitmanYor(2, 0.0)\n",
"pit.make_tables(1000)\n",
"memo = pit.get_graph_parts()\n",
"pit_items.append(memo[2])\n",
"pit_items.append(memo[3])\n",
"\n",
"pit.alpha_beta_setter(2, 0.8)\n",
"pit.make_tables(1000)\n",
"memo = pit.get_graph_parts()\n",
"pit_items.append(memo[2])\n",
"pit_items.append(memo[3])\n",
"\n",
"#show Figure11.8(in zokupata, the number of tables is 10^5, but in this program, 1000 )\n",
"plt.xscale(\"log\")\n",
"plt.yscale(\"log\") \n",
"plot(pit_items[0], pit_items[1], \"b\", pit_items[2],pit_items[3], \"g\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"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.5.1"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment