From 16883ef7acdb2fc6abba50b6d81dc601c5398360 Mon Sep 17 00:00:00 2001 From: Allen Downey Date: Sat, 16 Nov 2024 11:13:34 -0500 Subject: [PATCH] Revisions --- examples/zipf.ipynb | 1697 ++++++------------------------------------- 1 file changed, 214 insertions(+), 1483 deletions(-) diff --git a/examples/zipf.ipynb b/examples/zipf.ipynb index f7acab96..a74bbf41 100644 --- a/examples/zipf.ipynb +++ b/examples/zipf.ipynb @@ -1,14 +1,5 @@ { "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can order print and ebook versions of *Think Bayes 2e* from\n", - "[Bookshop.org](https://bookshop.org/a/98697/9781492089469) and\n", - "[Amazon](https://amzn.to/334eqGo)." - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -27,79 +18,29 @@ "\n", "To answer the first question, we'll do some Bayesian statistics.\n", "My solution is based on a model that's not very realistic, so we should not take the result too seriously, but it demonstrates some interesting methods, I think.\n", - "And as you'll see, there is a connection to Zipf's law, [which I wrote about last week](https://www.allendowney.com/blog/2024/11/10/zipfs-law/)." + "And as you'll see, there is a connection to Zipf's law, [which I wrote about last week](https://www.allendowney.com/blog/2024/11/10/zipfs-law/).\n", + "\n", + "Since last week's post was at the beginner level, I should warn you that this one is more advanced -- in rapid succession, it involves the beta distribution, the $t$ distribution, the negative binomial, and the binomial." ] }, { - "cell_type": "code", - "execution_count": 1, + "cell_type": "markdown", "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 1;\n", - " var nbb_unformatted_code = \"%load_ext nb_black\";\n", - " var nbb_formatted_code = \"%load_ext nb_black\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], "source": [ - "%load_ext nb_black" + "This post is based on *Think Bayes 2e*, which is available from\n", + "[Bookshop.org](https://bookshop.org/a/98697/9781492089469) and\n", + "[Amazon](https://amzn.to/334eqGo)." ] }, { "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 2;\n", - " var nbb_unformatted_code = \"try:\\n import empiricaldist\\nexcept ImportError:\\n !pip install empiricaldist\";\n", - " var nbb_formatted_code = \"try:\\n import empiricaldist\\nexcept ImportError:\\n !pip install empiricaldist\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 1, + "metadata": { + "tags": [ + "hide-cell" + ] + }, + "outputs": [], "source": [ "try:\n", " import empiricaldist\n", @@ -109,37 +50,13 @@ }, { "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 3;\n", - " var nbb_unformatted_code = \"# download thinkdsp.py\\n\\nfrom os.path import basename, exists\\n\\n\\ndef download(url):\\n filename = basename(url)\\n if not exists(filename):\\n from urllib.request import urlretrieve\\n\\n local, _ = urlretrieve(url, filename)\\n print(\\\"Downloaded \\\" + local)\\n\\n\\ndownload(\\\"https://github.com/AllenDowney/ThinkBayes2/raw/master/soln/utils.py\\\")\";\n", - " var nbb_formatted_code = \"# download thinkdsp.py\\n\\nfrom os.path import basename, exists\\n\\n\\ndef download(url):\\n filename = basename(url)\\n if not exists(filename):\\n from urllib.request import urlretrieve\\n\\n local, _ = urlretrieve(url, filename)\\n print(\\\"Downloaded \\\" + local)\\n\\n\\ndownload(\\\"https://github.com/AllenDowney/ThinkBayes2/raw/master/soln/utils.py\\\")\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 2, + "metadata": { + "tags": [ + "hide-cell" + ] + }, + "outputs": [], "source": [ "# download thinkdsp.py\n", "\n", @@ -160,37 +77,13 @@ }, { "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 4;\n", - " var nbb_unformatted_code = \"import numpy as np\\nimport pandas as pd\\nimport matplotlib.pyplot as plt\\n\\nfrom empiricaldist import Pmf\\nfrom utils import decorate\\n\\nplt.rcParams[\\\"figure.dpi\\\"] = 75\\nplt.rcParams[\\\"figure.figsize\\\"] = [6, 3.5]\";\n", - " var nbb_formatted_code = \"import numpy as np\\nimport pandas as pd\\nimport matplotlib.pyplot as plt\\n\\nfrom empiricaldist import Pmf\\nfrom utils import decorate\\n\\nplt.rcParams[\\\"figure.dpi\\\"] = 75\\nplt.rcParams[\\\"figure.figsize\\\"] = [6, 3.5]\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": 3, + "metadata": { + "tags": [ + "hide-cell" + ] + }, + "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", @@ -220,74 +113,18 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 5;\n", - " var nbb_unformatted_code = \"download(\\\"https://www.corpusdata.org/coca/samples/coca-samples-text.zip\\\")\";\n", - " var nbb_formatted_code = \"download(\\\"https://www.corpusdata.org/coca/samples/coca-samples-text.zip\\\")\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "download(\"https://www.corpusdata.org/coca/samples/coca-samples-text.zip\")" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 6;\n", - " var nbb_unformatted_code = \"import zipfile\\n\\n\\ndef generate_lines(zip_path=\\\"coca-samples-text.zip\\\"):\\n with zipfile.ZipFile(zip_path, \\\"r\\\") as zip_file:\\n file_list = zip_file.namelist()\\n for file_name in file_list:\\n with zip_file.open(file_name) as file:\\n lines = file.readlines()\\n for line in lines:\\n yield (line.decode(\\\"utf-8\\\"))\";\n", - " var nbb_formatted_code = \"import zipfile\\n\\n\\ndef generate_lines(zip_path=\\\"coca-samples-text.zip\\\"):\\n with zipfile.ZipFile(zip_path, \\\"r\\\") as zip_file:\\n file_list = zip_file.namelist()\\n for file_name in file_list:\\n with zip_file.open(file_name) as file:\\n lines = file.readlines()\\n for line in lines:\\n yield (line.decode(\\\"utf-8\\\"))\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import zipfile\n", "\n", @@ -311,37 +148,9 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 7;\n", - " var nbb_unformatted_code = \"import re\\nfrom collections import Counter\\n\\ncounter = Counter()\\n\\npattern = r\\\"[ /\\\\n]+|--\\\"\\n\\nfor line in generate_lines():\\n words = re.split(pattern, line)[1:]\\n counter.update(word.lower() for word in words if word)\";\n", - " var nbb_formatted_code = \"import re\\nfrom collections import Counter\\n\\ncounter = Counter()\\n\\npattern = r\\\"[ /\\\\n]+|--\\\"\\n\\nfor line in generate_lines():\\n words = re.split(pattern, line)[1:]\\n counter.update(word.lower() for word in words if word)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import re\n", "from collections import Counter\n", @@ -364,7 +173,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -373,41 +182,13 @@ "(188086, 11503819)" ] }, - "execution_count": 8, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 8;\n", - " var nbb_unformatted_code = \"num_words = counter.total()\\nlen(counter), num_words\";\n", - " var nbb_formatted_code = \"num_words = counter.total()\\nlen(counter), num_words\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ - "num_words = counter.total()\n", - "len(counter), num_words" + "len(counter), counter.total()" ] }, { @@ -419,37 +200,9 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 9;\n", - " var nbb_unformatted_code = \"for s in list(counter.keys()):\\n if not s[0].isalpha() or not s[-1].isalpha():\\n del counter[s]\";\n", - " var nbb_formatted_code = \"for s in list(counter.keys()):\\n if not s[0].isalpha() or not s[-1].isalpha():\\n del counter[s]\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "for s in list(counter.keys()):\n", " if not s[0].isalpha() or not s[-1].isalpha():\n", @@ -465,7 +218,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -474,36 +227,9 @@ "(151414, 8889694)" ] }, - "execution_count": 10, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 10;\n", - " var nbb_unformatted_code = \"num_words = counter.total()\\nlen(counter), num_words\";\n", - " var nbb_formatted_code = \"num_words = counter.total()\\nlen(counter), num_words\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -520,7 +246,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -548,36 +274,9 @@ " ('we', 47694)]" ] }, - "execution_count": 11, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 11;\n", - " var nbb_unformatted_code = \"counter.most_common(20)\";\n", - " var nbb_formatted_code = \"counter.most_common(20)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -593,7 +292,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -602,36 +301,9 @@ "(72159, 0.811715228893143)" ] }, - "execution_count": 12, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 12;\n", - " var nbb_unformatted_code = \"singletons = [word for (word, freq) in counter.items() if freq == 1]\\nlen(singletons), len(singletons) / counter.total() * 100\";\n", - " var nbb_formatted_code = \"singletons = [word for (word, freq) in counter.items() if freq == 1]\\nlen(singletons), len(singletons) / counter.total() * 100\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -648,68 +320,40 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "array(['leakylibrary', 'vegans-people', 'aurelle', 'dispelling', 'abijah',\n", - " 'nation-wide', 'zenker', 'dwigmore.com', 'snake-charmers',\n", - " 'andorganization', 'religion-are', 'www.indulgedecor.com',\n", - " 'self-enchantment', 're-asserted', 'subvertive', 'guzzles',\n", - " 'pdp-4270hd', 'interrogatory', 'peregoy', \"everything'sback\",\n", - " 'celexa', 'ychou', \"qu'a\", 'up.according', 'emission-reduction',\n", - " 'needthese', 'smker', 'dry-salt', 'kouhei-kun', 'mtv-hyped',\n", - " 'downspout', 'favelas', 'machinists', 'non-aspirin',\n", - " 'counter-heteronormative', 'mordoh', 'roulon', 'treecovered',\n", - " 'alabamians', 'blems', 'collusive', 'concensus', 'unenjoyable',\n", - " 'restrictiveness', 'flugsicherung', 'timberline', 'yoo-suk',\n", - " 'tania', 'yedu', 'panter', 'dramatica', 'praddock',\n", - " 'goldman-fergusons', 'snootful', 'diesel-electric', 'commerice',\n", - " 'progrssive', 'maltreating', 'white-clapboard', 'agricutural',\n", - " 'then-popular', \"sorry-i'm-late\", 'gamble-all', 'squeamishness',\n", - " 'edisons', 'meatside', 'alto-based', 'engine-tuning', 'folk-music',\n", - " 'x-i', 'hickam', 'octavius', 'participacin', 'perceivedness',\n", - " 'everywhere-and', 'switchblades', 'bocks', 'carbohydr', 'padfield',\n", - " 'ctb', 'expropriate', 'yeton', 'hualapai', 'unsinkable',\n", - " 'out-island', 'dallal', 'prostate-specific', 'paramecium',\n", - " 'one-to-nothing', 'irishamerican', 'zhezha', 'people.theyre',\n", - " 'dunphy', 'reclassify', 'southwind', 'roarsandscreeches',\n", - " 'dove-gray', 'lololol', 'www.votersfirstohio.com', 'bastide'],\n", + "array(['xcor', 'metress', 'commonspace', 'attilan', 'nutritus',\n", + " 'under-estimated', 'danci', 'thoughness', 'gmulder', 'multigrade',\n", + " 'tazzarine', 'well-remembered', 'snapchat', 'yt',\n", + " \"everything'sback\", 'moonclown', 'maschek', 'infront', 'meowing',\n", + " 'unhorses', 'waitressed', 'getbuckyballs.com', 'eye-rolling',\n", + " 'right.follow', 'al-maliki', 'where-it', 'candelabras',\n", + " 'trillion-dollar', 'poltically', 'way-stone', 'end-of-empire',\n", + " 'antiforgiveness', 'noncommunicative', 'astronomical-sized',\n", + " 'ms-like', 'colicky', 'mightly', 'lynsey', 'fifield',\n", + " 'consummately', 'oursega', 'steplewski', 'businessleaders',\n", + " 'pacifies', 'post-linsanity', 'high-born', 'okay.bye', 'mini-camp',\n", + " 'than-expected', 'x-lab', 'www.visitturin2006.com',\n", + " 'decreasing-there', 'kleiner', 'cosher', 'drm', 'castleman',\n", + " 'treelet', 'ostapowicz', 'gerrymander', 'kibitzing', 'resequenced',\n", + " 'goat-man', 'drenaje', 'tionist', 'betrothed', 'cannondale.com',\n", + " 'praddock', 'napoleanic', 'tiltfilter', 'gowe', 'marchev', 'fugly',\n", + " 'mouthit', 'blumberg', 'langone', 'self-superiority', 'etsu',\n", + " 'friesian', 'blixt', 'couzens', 'firestorms', 'headachy',\n", + " 'bisected', 'reel-to-reel', 'obscurant', 'with.the', 'yelp.com',\n", + " 'frostily', 'hemsehus', 'pa-lin', 'sun-blocking', 'baerga',\n", + " 'rightinfrontofyou', 'guangxi', 'jeiky', 'babbacombe',\n", + " 'deborahlchamberlain', 'counterbalancing', 'baupoint', 'gowned'],\n", " dtype='" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -734,74 +378,18 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 13, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 14;\n", - " var nbb_unformatted_code = \"freqs = np.array(sorted(counter.values(), reverse=True))\";\n", - " var nbb_formatted_code = \"freqs = np.array(sorted(counter.values(), reverse=True))\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "freqs = np.array(sorted(counter.values(), reverse=True))" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 14, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 15;\n", - " var nbb_unformatted_code = \"n = len(freqs)\\nranks = range(1, n + 1)\";\n", - " var nbb_formatted_code = \"n = len(freqs)\\nranks = range(1, n + 1)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "n = len(freqs)\n", "ranks = range(1, n + 1)" @@ -816,7 +404,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -828,33 +416,6 @@ }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 16;\n", - " var nbb_unformatted_code = \"plt.plot(ranks, freqs)\\n\\ndecorate(\\n title=\\\"Zipf plot\\\", xlabel=\\\"Rank\\\", ylabel=\\\"Frequency\\\", xscale=\\\"log\\\", yscale=\\\"log\\\"\\n)\";\n", - " var nbb_formatted_code = \"plt.plot(ranks, freqs)\\n\\ndecorate(\\n title=\\\"Zipf plot\\\", xlabel=\\\"Rank\\\", ylabel=\\\"Frequency\\\", xscale=\\\"log\\\", yscale=\\\"log\\\"\\n)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -875,7 +436,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 16, "metadata": {}, "outputs": [ { @@ -884,36 +445,9 @@ "-5.664633515191604" ] }, - "execution_count": 17, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 17;\n", - " var nbb_unformatted_code = \"rise = np.log10(freqs[-1]) - np.log10(freqs[0])\\nrise\";\n", - " var nbb_formatted_code = \"rise = np.log10(freqs[-1]) - np.log10(freqs[0])\\nrise\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -923,7 +457,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 17, "metadata": {}, "outputs": [ { @@ -932,36 +466,9 @@ "5.180166032638616" ] }, - "execution_count": 18, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 18;\n", - " var nbb_unformatted_code = \"run = np.log10(ranks[-1]) - np.log10(ranks[0])\\nrun\";\n", - " var nbb_formatted_code = \"run = np.log10(ranks[-1]) - np.log10(ranks[0])\\nrun\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -971,7 +478,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 18, "metadata": {}, "outputs": [ { @@ -980,36 +487,9 @@ "-1.0935235433575892" ] }, - "execution_count": 19, + "execution_count": 18, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 19;\n", - " var nbb_unformatted_code = \"rise / run\";\n", - " var nbb_formatted_code = \"rise / run\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -1032,118 +512,17 @@ "Given the number of times each word appear in the corpus, we can compute the rates, which is the number of times we expect each word to appear in a sample of a given size, and the inverse rates, which are the number of words we need to see before we expect a given word to appear.\n", "\n", "We will find it most convenient to work with the distribution of inverse rates on a log scale.\n", - "Here are the inverse rates:" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 20;\n", - " var nbb_unformatted_code = \"def describe(seq):\\n return pd.Series(seq).describe()\";\n", - " var nbb_formatted_code = \"def describe(seq):\\n return pd.Series(seq).describe()\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def describe(seq):\n", - " return pd.Series(seq).describe()" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 21;\n", - " var nbb_unformatted_code = \"num_words = counter.total()\\nrates = np.array(freqs) / num_words\";\n", - " var nbb_formatted_code = \"num_words = counter.total()\\nrates = np.array(freqs) / num_words\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "num_words = counter.total()\n", - "rates = np.array(freqs) / num_words" + "The first step is to use the observed frequencies to estimate word rates -- we'll estimate the rate at which each word would appear in a random sample. \n", + "\n", + "We'll do that by creating a beta distribution that represents the posterior distribution of word rates, given the observed frequencies (see [this section of *Think Bayes*](https://allendowney.github.io/ThinkBayes2/chap18.html#the-conjugate-prior)) -- and then drawing a random sample from the posterior.\n", + "So words that have the same frequency will not generally have the same inferred rate." ] }, { "cell_type": "code", - "execution_count": 70, + "execution_count": 19, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 70;\n", - " var nbb_unformatted_code = \"from scipy.stats import beta\\n\\nnp.random.seed(17)\\nalphas = freqs + 1\\nbetas = num_words - freqs + 1\\ninferred_rates = beta(alphas, betas).rvs()\";\n", - " var nbb_formatted_code = \"from scipy.stats import beta\\n\\nnp.random.seed(17)\\nalphas = freqs + 1\\nbetas = num_words - freqs + 1\\ninferred_rates = beta(alphas, betas).rvs()\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.stats import beta\n", "\n", @@ -1154,46 +533,43 @@ ] }, { - "cell_type": "code", - "execution_count": 71, + "cell_type": "markdown", "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 71;\n", - " var nbb_unformatted_code = \"# rates = np.where(freqs <= 500, inferred_rates, rates)\";\n", - " var nbb_formatted_code = \"# rates = np.where(freqs <= 500, inferred_rates, rates)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], "source": [ - "# rates = np.where(freqs <= 500, inferred_rates, rates)" + "Now we can compute the inverse rates, which are the number of words we have to sample before we expect to see each word once." ] }, { "cell_type": "code", - "execution_count": 72, + "execution_count": 20, "metadata": {}, + "outputs": [], + "source": [ + "inverse_rates = 1 / inferred_rates" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "tags": [ + "remove-cell" + ] + }, + "outputs": [], + "source": [ + "def describe(seq):\n", + " return pd.Series(seq).describe()" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "tags": [ + "remove-cell" + ] + }, "outputs": [ { "data": { @@ -1209,40 +585,12 @@ "dtype: float64" ] }, - "execution_count": 72, + "execution_count": 22, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 72;\n", - " var nbb_unformatted_code = \"inverse_rates = 1 / inferred_rates\\ndescribe(inverse_rates)\";\n", - " var nbb_formatted_code = \"inverse_rates = 1 / inferred_rates\\ndescribe(inverse_rates)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ - "inverse_rates = 1 / inferred_rates\n", "describe(inverse_rates)" ] }, @@ -1255,8 +603,21 @@ }, { "cell_type": "code", - "execution_count": 73, + "execution_count": 23, "metadata": {}, + "outputs": [], + "source": [ + "mags = np.log10(inverse_rates)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "tags": [ + "remove-cell" + ] + }, "outputs": [ { "data": { @@ -1272,40 +633,12 @@ "dtype: float64" ] }, - "execution_count": 73, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 73;\n", - " var nbb_unformatted_code = \"mags = np.log10(inverse_rates)\\ndescribe(mags)\";\n", - " var nbb_formatted_code = \"mags = np.log10(inverse_rates)\\ndescribe(mags)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ - "mags = np.log10(inverse_rates)\n", "describe(mags)" ] }, @@ -1313,43 +646,15 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "From the `empiricaldist` library, we'll use the `Surv` object, which represents survival functions, but we'll use a variation of the survival function which is the probability that a randomly-chosen value is greater than or equal to a given quantity.\n", + "To represent the distribution of these magnitudes, we'll use a `Surv` object, which represents survival functions, but we'll use a variation of the survival function which is the probability that a randomly-chosen value is greater than or equal to a given quantity.\n", "The following function computes this version of a survival function, which is called a tail probability." ] }, { "cell_type": "code", - "execution_count": 74, + "execution_count": 25, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 74;\n", - " var nbb_unformatted_code = \"from empiricaldist import Surv\\n\\n\\ndef make_surv(seq):\\n \\\"\\\"\\\"Make a non-standard survival function, P(X>=x)\\\"\\\"\\\"\\n pmf = Pmf.from_seq(seq)\\n surv = pmf.make_surv() + pmf\\n\\n # correct for numerical error\\n surv.iloc[0] = 1\\n return Surv(surv)\";\n", - " var nbb_formatted_code = \"from empiricaldist import Surv\\n\\n\\ndef make_surv(seq):\\n \\\"\\\"\\\"Make a non-standard survival function, P(X>=x)\\\"\\\"\\\"\\n pmf = Pmf.from_seq(seq)\\n surv = pmf.make_surv() + pmf\\n\\n # correct for numerical error\\n surv.iloc[0] = 1\\n return Surv(surv)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from empiricaldist import Surv\n", "\n", @@ -1373,92 +678,11 @@ }, { "cell_type": "code", - "execution_count": 75, + "execution_count": 26, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
probs
8.9617090.000020
8.9926840.000013
9.1333760.000007
\n", - "
" - ], - "text/plain": [ - "8.961709 0.000020\n", - "8.992684 0.000013\n", - "9.133376 0.000007\n", - "Name: , dtype: float64" - ] - }, - "execution_count": 75, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 75;\n", - " var nbb_unformatted_code = \"surv = make_surv(mags)\\nsurv.tail()\";\n", - " var nbb_formatted_code = \"surv = make_surv(mags)\\nsurv.tail()\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "surv = make_surv(mags)\n", - "surv.tail()" + "surv = make_surv(mags)" ] }, { @@ -1470,7 +694,7 @@ }, { "cell_type": "code", - "execution_count": 76, + "execution_count": 27, "metadata": {}, "outputs": [ { @@ -1482,33 +706,6 @@ }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 76;\n", - " var nbb_unformatted_code = \"surv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (log10 words per appearance)\\\", ylabel=\\\"Tail probability\\\")\";\n", - " var nbb_formatted_code = \"surv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (log10 words per appearance)\\\", ylabel=\\\"Tail probability\\\")\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -1527,7 +724,7 @@ }, { "cell_type": "code", - "execution_count": 77, + "execution_count": 28, "metadata": {}, "outputs": [ { @@ -1539,33 +736,6 @@ }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 77;\n", - " var nbb_unformatted_code = \"surv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (words per appearance)\\\", yscale=\\\"log\\\")\";\n", - " var nbb_formatted_code = \"surv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (words per appearance)\\\", yscale=\\\"log\\\")\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -1590,44 +760,16 @@ "\n", "To estimate the frequency of rare words, we will need to model the tail behavior of this distribution and extrapolate it beyond the data.\n", "So let's fit a $t$ distribution and see how it looks.\n", - "I'll use code from Chapter 8 of *Probably Overthinking It*, which is all about these long-tailed distributions.\n", + "I'll use code from [Chapter 8 of *Probably Overthinking It*](https://allendowney.github.io/ProbablyOverthinkingIt/longtail.html), which is all about these long-tailed distributions.\n", "\n", "The following function makes a `Surv` object that represents a $t$ distribution with the given parameters." ] }, { "cell_type": "code", - "execution_count": 78, + "execution_count": 29, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 78;\n", - " var nbb_unformatted_code = \"from scipy.stats import t as t_dist\\n\\n\\ndef truncated_t_sf(qs, df, mu, sigma):\\n ps = t_dist.sf(qs, df, mu, sigma)\\n surv_model = Surv(ps / ps[0], qs)\\n return surv_model\";\n", - " var nbb_formatted_code = \"from scipy.stats import t as t_dist\\n\\n\\ndef truncated_t_sf(qs, df, mu, sigma):\\n ps = t_dist.sf(qs, df, mu, sigma)\\n surv_model = Surv(ps / ps[0], qs)\\n return surv_model\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.stats import t as t_dist\n", "\n", @@ -1647,37 +789,9 @@ }, { "cell_type": "code", - "execution_count": 79, + "execution_count": 30, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 79;\n", - " var nbb_unformatted_code = \"from scipy.optimize import least_squares\\n\\n\\ndef fit_truncated_t(df, surv):\\n \\\"\\\"\\\"Given df, find the best values of mu and sigma.\\\"\\\"\\\"\\n low, high = surv.qs.min(), surv.qs.max()\\n qs_model = np.linspace(low, high, 1000)\\n ps = np.linspace(0.01, 0.8, 20)\\n qs = surv.inverse(ps)\\n\\n def error_func_t(params, df, surv):\\n mu, sigma = params\\n surv_model = truncated_t_sf(qs_model, df, mu, sigma)\\n\\n error = surv(qs) - surv_model(qs)\\n return error\\n\\n pmf = surv.make_pmf()\\n pmf.normalize()\\n params = pmf.mean(), pmf.std()\\n res = least_squares(error_func_t, x0=params, args=(df, surv), xtol=1e-3)\\n assert res.success\\n return res.x\";\n", - " var nbb_formatted_code = \"from scipy.optimize import least_squares\\n\\n\\ndef fit_truncated_t(df, surv):\\n \\\"\\\"\\\"Given df, find the best values of mu and sigma.\\\"\\\"\\\"\\n low, high = surv.qs.min(), surv.qs.max()\\n qs_model = np.linspace(low, high, 1000)\\n ps = np.linspace(0.01, 0.8, 20)\\n qs = surv.inverse(ps)\\n\\n def error_func_t(params, df, surv):\\n mu, sigma = params\\n surv_model = truncated_t_sf(qs_model, df, mu, sigma)\\n\\n error = surv(qs) - surv_model(qs)\\n return error\\n\\n pmf = surv.make_pmf()\\n pmf.normalize()\\n params = pmf.mean(), pmf.std()\\n res = least_squares(error_func_t, x0=params, args=(df, surv), xtol=1e-3)\\n assert res.success\\n return res.x\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.optimize import least_squares\n", "\n", @@ -1686,7 +800,7 @@ " \"\"\"Given df, find the best values of mu and sigma.\"\"\"\n", " low, high = surv.qs.min(), surv.qs.max()\n", " qs_model = np.linspace(low, high, 1000)\n", - " ps = np.linspace(0.01, 0.8, 20)\n", + " ps = np.linspace(0.1, 0.8, 20)\n", " qs = surv.inverse(ps)\n", "\n", " def error_func_t(params, df, surv):\n", @@ -1713,37 +827,9 @@ }, { "cell_type": "code", - "execution_count": 80, + "execution_count": 31, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 80;\n", - " var nbb_unformatted_code = \"from scipy.optimize import minimize\\n\\n\\ndef minimize_df(df0, surv, bounds=[(1, 1e3)], ps=None):\\n low, high = surv.qs.min(), surv.qs.max()\\n qs_model = np.linspace(low, high * 1.2, 2000)\\n\\n if ps is None:\\n t = surv.ps[0], surv.ps[-5]\\n low, high = np.log10(t)\\n ps = np.logspace(low, high, 30, endpoint=False)\\n\\n qs = surv.inverse(ps)\\n\\n def error_func_tail(params):\\n (df,) = params\\n print(df)\\n mu, sigma = fit_truncated_t(df, surv)\\n surv_model = truncated_t_sf(qs_model, df, mu, sigma)\\n\\n errors = np.log10(surv(qs)) - np.log10(surv_model(qs))\\n return np.sum(errors**2)\\n\\n params = (df0,)\\n res = minimize(error_func_tail, x0=params, bounds=bounds, tol=1e-3, method=\\\"Powell\\\")\\n assert res.success\\n return res.x\";\n", - " var nbb_formatted_code = \"from scipy.optimize import minimize\\n\\n\\ndef minimize_df(df0, surv, bounds=[(1, 1e3)], ps=None):\\n low, high = surv.qs.min(), surv.qs.max()\\n qs_model = np.linspace(low, high * 1.2, 2000)\\n\\n if ps is None:\\n t = surv.ps[0], surv.ps[-5]\\n low, high = np.log10(t)\\n ps = np.logspace(low, high, 30, endpoint=False)\\n\\n qs = surv.inverse(ps)\\n\\n def error_func_tail(params):\\n (df,) = params\\n print(df)\\n mu, sigma = fit_truncated_t(df, surv)\\n surv_model = truncated_t_sf(qs_model, df, mu, sigma)\\n\\n errors = np.log10(surv(qs)) - np.log10(surv_model(qs))\\n return np.sum(errors**2)\\n\\n params = (df0,)\\n res = minimize(error_func_tail, x0=params, bounds=bounds, tol=1e-3, method=\\\"Powell\\\")\\n assert res.success\\n return res.x\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.optimize import minimize\n", "\n", @@ -1776,7 +862,7 @@ }, { "cell_type": "code", - "execution_count": 81, + "execution_count": 32, "metadata": {}, "outputs": [ { @@ -1793,70 +879,43 @@ "35.407411894884405\n", "22.26495001595599\n", "14.142461878928419\n", - "25.283073250551638\n", - "19.7236020807297\n", - "22.167510053888318\n", - "21.970382380734854\n", - "21.93000366412791\n", - "21.932973281119267\n", - "21.93330665994396\n", - "21.933640038763702\n", - "18.866613319887918\n", + "25.697947062229677\n", + "20.707337220921392\n", + "22.572143210805486\n", + "22.390897998699558\n", + "22.387674578312218\n", + "22.38696883830132\n", + "22.386635466210475\n", + "22.38630209411468\n", + "19.77327093242095\n", "382.58404523885497\n", "618.4159547611448\n", - "236.83190952228986\n", - "146.75213571656514\n", - "91.07977380572476\n", - "56.67236191084038\n", - "35.407411894884405\n", - "22.264950015955982\n", - "14.142461878928419\n", - "25.283073250516892\n", - "19.723601830671786\n", - "22.167510080319087\n", - "21.97038323398375\n", - "21.93000166466634\n", - "21.932975865105618\n", - "21.933309198443858\n", - "21.932642531767378\n" + "236.8319095222899\n", + "146.75213571656516\n", + "91.0797738057248\n", + "56.672361910840394\n", + "35.40741189488441\n", + "22.264950015955993\n", + "14.142461878928424\n", + "25.697947054112568\n", + "20.7073371943388\n", + "22.572143293741753\n", + "22.390897870539447\n", + "22.38767398796015\n", + "22.386983906149368\n", + "22.386650572810865\n", + "22.38731723948787\n" ] }, { "data": { "text/plain": [ - "array([21.93297587])" + "array([22.38698391])" ] }, - "execution_count": 81, + "execution_count": 32, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 81;\n", - " var nbb_unformatted_code = \"df = minimize_df(25, surv)\\ndf\";\n", - " var nbb_formatted_code = \"df = minimize_df(25, surv)\\ndf\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -1866,45 +925,18 @@ }, { "cell_type": "code", - "execution_count": 82, + "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "(array([21.93297587]), 6.430927981834091, 0.48910465307252876)" + "(array([22.38698391]), 6.430702047528606, 0.490849531484811)" ] }, - "execution_count": 82, + "execution_count": 33, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 82;\n", - " var nbb_unformatted_code = \"mu, sigma = fit_truncated_t(df, surv)\\ndf, mu, sigma\";\n", - " var nbb_formatted_code = \"mu, sigma = fit_truncated_t(df, surv)\\ndf, mu, sigma\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -1921,84 +953,29 @@ }, { "cell_type": "code", - "execution_count": 83, + "execution_count": 34, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 83;\n", - " var nbb_unformatted_code = \"low, high = surv.qs.min(), surv.qs.max()\\nqs = np.linspace(low, 11, 2000)\\nsurv_model = truncated_t_sf(qs, df, mu, sigma)\";\n", - " var nbb_formatted_code = \"low, high = surv.qs.min(), surv.qs.max()\\nqs = np.linspace(low, 11, 2000)\\nsurv_model = truncated_t_sf(qs, df, mu, sigma)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "low, high = surv.qs.min(), surv.qs.max()\n", - "qs = np.linspace(low, 11, 2000)\n", + "qs = np.linspace(low, 10, 2000)\n", "surv_model = truncated_t_sf(qs, df, mu, sigma)" ] }, { "cell_type": "code", - "execution_count": 84, + "execution_count": 35, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAboAAAD/CAYAAACHFRPuAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAAuJAAALiQE3ycutAAA1X0lEQVR4nO3de1xUdf4/8NfMMNwvIqLcRUDE4TYo0c/VhK9a6lJeCF0vKZWUbZha7bamZW3rlqXd1tBqve1XrZ8mpvzStdRUvLRGJt5QvCIMihdEUJHbzOf3B+vkwMAgMldez8djHnHOnDnnPRP4ms/nfM7nSIQQAkRERDZKau4CiIiIjIlBR0RENo1BR0RENo1BR0RENo1BR0RENo1BR0RENo1BR0RENs3O3AW0hbu7OwICAsxdBhERWQiVSoXKykq9z1ll0AUEBCA/P9/cZRARkYVQKBTNPseuSyIismkMOiIismlW2XVJRNSRcEri30gkkvt+jVGDbsaMGcjKykJpaSnq6+v1brNr1y5kZGSgpqYGSUlJ+OKLLyCTyYxZFhGRVairq0NxcTFqamrMXYrFcHBwQGBgIORyeatfIzHm3Qv27t2LsLAwBAQE6A06jUaD8PBwZGdnQ6FQYOzYsUhOTkZaWlqL+1UoFByMQkQ279y5c3Bzc4OXl1ebWjK2RgiBsrIy3Lx5EyEhITrPtZQLRj1HN2DAAPj4+DT7fG5uLvz8/LSjZaZMmYKsrCxjlkREZBWEEKipqYGXlxekUikkEkmHf0ilUnh5eaGmpua+unPNeo5OpVIhMDBQuxwUFITi4mLTHLukBFuPXkRIZ3tI7/mmJEHDz42/PNVrNNh7/hb8POQI83JAYXkdQu++VgIIAZy9XouQznKcLauFRAL09HIAJBKcvlYNIQCpRILwLg4AgDNlNejZxQFSiQT1Gg12nr0Jf3c5ZFIpQr3k2HmmEpdu1aOLkxSny+vxWE939O7qhFNXq1F0owYSAL7udvhVVQW1ELhRrUF4Zzv858It3KiTYHiEB4aFe+DH0zdxsbIGkEjQzVWGSxU1OHG1Dok9nHHyajUqqzVwc5DiRlUdymuAUC8HeDnLUHa7DiWVdXCUApergPAudrhyWw1fNznq6+uQV9rwS+bnApy/DXhJgTLN/f0/WJDsDmULX4TuV3t+4238x9Xcskwm0/uQy+X8Bk7tgr9HuizuHJ0hrU3kzMxMZGZmapfLy8sf+Ngnr9zB0l+uI6OfN8K9GsLnbjV3yxL31Li7sAorD92Aq4MUY6I64buCSryQ0AVhXg6AaAiuz3++huRwN3x7ouGixYyHuzTU/59rqBcCdlKJdt2XuWV47iEvhHjaI6fwFlYdKoejnQQOdhI8HOiMradv6dT7S0k1UiM9sPFEJW7VNiSKXArU3RMue4vu/iSw7JcbOHapBgdK7uh9/2cO3bxnSa396VKV/nMB/7nY0PV8rqJWZ/352w3/vd+QA4A/b64EoP8Cz/shBfDlKC/4uLq26fXN/R5qNBoIIXQe90Mul0Mul8Pe3h729vZwdHSEk5MTHB0dYWfHcWDUcSUlJWHevHkYMGBAs9u8/fbbsLOzwxtvvPHAxzPrX1tgYKBOC66oqEjvjCcZGRnIyMjQLrd0YWBrDYoNxWIvLygDOkEqNfwN4eEYDUICixHe1RVxgZ5Ivlih89r+GoHYiBuI8fPA70tuQCKAuCBPAICydzmERkAqkWjX9VHc0L4+sa8G4cHFCPN2gZ1Uimg/D3x9sAiqstvwcXfEkZIKjI/vjvgenTFCVY6CSw3hEOLtgt0nr0Bdr8HVW7WICXDHtvxLuHK7HpMf7oHxCUFYe6gYxdduQSIk8PV0QnHZTRy8UIEnYnyRpyrH9Vu16OQsR9nNaly+XYdIHw/4eDig9MYdFF6vgrNcguKKGsT6eaCkohpBnZ2hrq/DvrMVEBIgxNMOx6/Vw98JUOnPVKPTAEjfWAagrNlt4roC30wfDju7tvfWNw49jUYDtVqt91FXV4fa2lrU1dWhqqoKN27c0NmXvb09XF1d4erqCjc3Nzg6Ora5LiJqmVmDLj4+HiqVCvn5+VAoFFi2bBlSUlJMcmypVII+/w2d1rCzk2Liw921y41fe+/+4rt31nmu8XLj1zfeNwCk9euht46EYC8kBHtpl/uHddV5Pj0pvFX7MafaWjVmfb0XG07cMrxxOzl0BQh74996n1MA2DI/2eA+7nZXtoVGo0F1dTWqq6tx584d3L59Gzdu3MD169cBAI6OjujUqRM6d+4MJyenNh2DyFjs7Owwe/ZsbNq0CTKZDCtWrMCbb76JEydOYMSIEfjwww8BNAxAnDlzJmpraxEYGIhly5bBx8cH169fx6RJk3D+/HkoFApUV1dr933kyBHMnDkTFRUVcHJywpIlSxAdHd2+9bfr3hqZOnUqNm/eDLVajYCAAIwcORLPPPMM5s6diy1btkAmk2Hp0qVITU1FTU0NEhMTMWnSJGOWRBbA3l6Gj9IS8VE77OvzvQcw/7trD7SPfADBszY3Wb//tYHw6+z2QPu+SyqVwtnZGc7Oztp1QghUVVWhsrIS5eXlKC0tRWlpKVxdXeHt7Q1PT0+enyGtwsJCnYBoL46OjggODm5xG7VajejoaLzzzjt45ZVX8OSTT+Lnn3+Gi4sLevbsiZdeegm+vr4YP348Nm3ahD59+uDDDz/EjBkzsHbtWvz1r39FTEwMNm/ejEOHDiE+Ph5Aw+UTzz//PLKysuDv74/c3Fykp6fjwIED7foejRp0X3zxhd71W7Zs0f48aNAgXipAbfbCgIfxQvPd/A3bfLYZW1X3v+/ffZCjs/yQE/DNW4Zbfq0lkUjg4uICFxcX+Pr6oqamBteuXcO1a9dw/vx5XLx4EX5+fgw8MjuJRILRo0cDAJRKJS5duoTOnRt6qiIiIlBYWIiKigr4+PigT58+ABpG0b///vsAgJycHKxZswYAEBcXh5iYGABAQUEBjh8/juTk3/6u7vZytCeeESeb9/k0/eF042Y1lH/f0er95N7Rbfm1d/A5ODjA398ffn5+KCsrw6VLl3D+/HlcvnwZ3bt312kNUsdjqNVlTFKpVDuASiqVwsHBQee5+vr6Jl/GWvPlTAiB0NBQ5OXltWu9jXGuS+qwOrk5onB+cpNHV8MvBfBb8AXP2oy+ero+20oikaBLly6IiopCYGAgqqurceLECZSUlHAqKLJYvXr1QmlpqTa0li9fjkGDBgEAEhMTtS26vLw8HD16FEBDa/DmzZvYsaPhC6cQAocOHWr32tiiI2rk50YDU95cuxmrDPztleG31p7SDtg478FbehKJBF27doWnpyeKiopQWlqqnRHC3t7+gfdP1J4cHBzw1VdfIT09HbW1tQgICMDy5csBAHPnzsWkSZOgUCgQGRmpPUcnl8uxceNGTJ8+Ha+88grq6uqQkpKCuLi4dq3NqFOAGQunACNzip21GRWt3DYj0QF/Hj6kXY579epVFBcXQyaTISwsDC4uLu2yX7JMQgicPHkSERERPEd7j+Y+l5ZygS06ovt0+J4W39RFm/F9SfPbZu6uQebuhpZeYSsuYWiJt7c3nJ2dcebMGZw6dQohISHw8PB4oH0SdQQMOqIH8MVLv4WXvksU7nX3+XUvKJEQ7N+m47m4uCAiIgKnT5/G2bNnERoayrAjMoBBR9RO7m2xtRR6Yz/PA5CHZx4C3nry/lt5Dg4O6NWrFwoKCnD27FmEhYXB3d29DRUTdQwcdUlkBHdHcPZuYZsVuQ2BuPrgkfvev1wuR3h4OORyOc6ePYs7d8w0/xqRFWDQERnRv++5bKE5b3xTbLDbUx97e3v07NkTEokEZ86cQV1d3YOUSmSzGHREJmIo8O5ek3c/HB0dERISgtraWpw7d47X2RHpwaAjMrH2Djx3d3cEBATg1q1buHTpUnuUSNSiXbt2YciQli+beeedd0xUjWEMOiIzKZyfjDPzhjf7/P2EXbdu3eDh4YFLly7h5s2bhl9AZGQMOiIC0HCLpsL5yZj1eBe9z99P6y44OBhyuRyFhYVQq9WGX0B0H9asWYPw8HD07dsXmzZtAgAcPHgQ/fv3R1xcHJRKJX744QcAwMsvvwy1Wg2lUqlt+b300kt46KGHEB0djaeeego1Nfpv8mwMnBmFyIK0FGqtueD8xo0bOHv2LLp27YrAwMD2LI1MrPEMIGqNwNWbhsNBIwTyL1ZC4ecOaStmVPF2c4DMwM2nS0tL0adPHxw8eBA+Pj5ITU1FRUUFNmzYACcnJ8jlcpSUlGDgwIE4e/YsgIZ72NXX12v3UVZWBi+vhntpTp8+HZGRkZg6darB+hpry8wobNERWZDC+ck49uajep8LnrUZcQZad506dYKnpyeuXLmC27dvG6NEsnD5Fyvx9v87jvyLle22zwMHDmDAgAHw9fWFRCLB5MmTAQC3bt3CxIkTERUVheTkZBQXF+PaNf33h9y0aZO2Rbdx40btxM6mwAvGiSyMq4s9Cucn623dlaMh8Fpq3QUGBqKyshJFRUWcJ9GGyKQS+Hg4Gtyuq5sDOrvaQxnQCVIDLbUHNWfOHPTp0wdr166FRCKBl5eX3pvDFhYW4u2338bBgwfh7e2NRYsW4fDhw0at7V5s0RFZqML5yfjTsE56n2upi1Mul8PPzw9VVVVGuYklWTapVII+QZ7tGnIPP/ww9u3bh9LSUgghsHr1agBARUUF/P39IZFIsH79ep3fN2dnZ22vQmVlJZycnODp6YmqqiqsWrWq3WprDQYdkQWbltS/2dZbS2Hn7e0NR0dHlJSUcGAKPTAfHx988MEHGDhwIOLj47Xnf19//XW8++67UCqV2L17N4KCgrSvmTZtGvr27YshQ4YgJiYGSUlJiIiIwODBg5GQkGDS+jkYhchKNBdszQVhRUUFzpw5A19fX/j5+RmzNDIC3qZHPw5GIbJhLbXsfrlwscl6Dw8PuLm54fLlyzqj34g6GgYdkRUpnJ+Mp5RN16cuOYTtBeearPfz84NGo8Hly5eNXxyRhWLQEVmZeeOS8cnE0Cbr01ecwPrDul03rq6ucHd3x5UrV9iqow6LQUdkhUZFR+jtyvzT1+fx9nrdc3l3W3WlpaWmKo/akRUOozCqtnweDDoiK6Yv7Fb+AvznvEq77OLiAnd3d1y9epUjMK2IRCKBg4MDysrKoNFoIITo8A+NRoOysjI4ODjc1wAdXjBOZOX0XVw+7ovDKJwfoF3u1q0bKisrce3aNXTr1s3UJVIbBQYGtjjbSEfk4OBw39PbMeiIbIC+sLt3BhV3d3c4OTnh8uXL6Nq1K4erWwm5XI6QkBB2X96jLb+77LokshH6ujHvDT8fHx/U1dWhvLzclGVRO5BIJHz899EWDDoiG7LuBWWTdXfDztPTE3K5nJcaUIfDoCOyIQnB/vDRsz541mZIJBJ07doVVVVVvLMBdShGDbpdu3YhMjISYWFhSE9P1zvia+HChYiMjERMTAyGDRvGb5tED+g/zcyg8uqKzfDy8oJEIsHVq1dNXBWR+Rgt6DQaDdLT0/HNN9/gzJkzqKys1M54fdfp06exZMkS/PLLLzhy5AiUSiUWLlxorJKIOgx95+uyChoGN3Tq1Anl5eW8gJw6DKMFXW5uLvz8/KBQKAAAU6ZMQVZWls42QgjU1dXhzp07EEKgsrISvr6+xiqJqENpbnCKt7c3NBoNb+FDHYbRgk6lUulc6xAUFITi4mKdbcLDw/HSSy8hMDAQvr6+OH78OGbMmGGskog6HH1hF/33HDg4OLD7kjoMowVda677KCsrw4YNG3DmzBmUlJQgJCQECxYsaLJdZmYmFAqF9sHh0UStF6Rnnbe3N6qrq3Hr1i2T10NkakYLurtX9N9VVFSEgIAAnW1+/PFHhISEwNfXFzKZDGPGjMH+/fub7CsjIwP5+fnah6enp7HKJrI5OXpadQ9//AuAhi+bRLbOaEEXHx8PlUqlvRHesmXLkJKSorNN9+7dceDAAVRWVgIAtm3bpj2nR0TtR18X5pPflKK8vBwajcYMFRGZjtGCTiaTYenSpUhNTUVoaChcXV0xadIkZGdnIz09HQCQkJCAtLQ0JCQkIDo6GhcuXMCsWbOMVRJRh/bDzP/TZJ1arUZFRYUZqiEyHYmwwknUWrplOhE1r/F8mACwPb0XwsLCzFANUftpKRc4MwpRB6KvC3PI0gLU1dWZoRoi02DQEXUw46KaruNIZrJlDDqiDmb+U01bdQkf5ZqhEiLTYNARdUD6ujBra2vNUAmR8THoiAgAED53m7lLIDIKBh1RB6WvVUdkixh0RB1Y50bL+i4/ILJ2DDqiDuxXtuqoA2DQEXVwo3vqLrNVR7aGQUfUwX08ha06sm0MOiKCQ6NlturIljDoiAgFPFdHNoxBR0R6sVVHtoJBR0QAeF0d2S4GHRER2TSDQffMM8/gp59+MkUtRGRmjVt17L4kW2Aw6B577DHMmTMHUVFR+Pjjj1FWVmaKuoiIiNqFwaAbP348fvzxR2zatAlXr15FXFwcxo0bh127dpmgPCIyt1mr2aoj69bqc3Tnzp3D6dOn4eLigoiICPztb39DWlqaMWsjIjNo3H35f4+ZqRCidmJnaIO//e1vWLVqFWJiYjB16lQ8+uij2ud69uzZwiuJiIjMz2CLTiqVIicnB+vXr9cJOQD4/vvvjVYYEZnPibcG6SxzUApZM4NBd/r0afj4+Oise/rppwEAISEhRimKiMzLycnJ3CUQtRuDQXfkyJEm6w4ePGiUYoiIiNpbs0G3aNEi9OzZEydOnEB4eLj24evri759+5qyRiIyg7xZ/XWW2X1J1qrZwSiTJ0/GE088gVdeeQUff/yxdr2bmxs6d258X2IisjXu7u7mLoGoXTQbdB4eHvDw8MCGDRtMWQ8RWQiplDMEkm1o9jd51KhRABouIbi36/LuMhHZvgMvx+sss/uSrFGzLbolS5YAALZv326yYojIsnh4eJi7BKIH1mzQ+fr6AgC6d+9usmKIyLI4OjqauwSiB9Zs12XjLsu2dF3u2rULkZGRCAsLQ3p6OtRqdZNtLl++jJEjRyIiIgK9evXCd9991/Z3Q0TtLufFaJ3l3uy+JCvTbIvuQbssNRoN0tPTkZ2dDYVCgbFjx2L16tVN5sdMS0vDs88+i7Fjx6K+vh4VFRUPdFwial+Nuy/vmKkOorZqNugetMsyNzcXfn5+UCgUAIApU6YgMzNTJ+gKCgpw+fJljB07tqEYOzt4eXk90HGJqH25urqauwSiB2K0UZcqlQqBgYHa5aCgIBQXF+tsc/LkSXTt2hXjx49HXFwcJk+ejOvXr7fxrRCRMchkMnz/TJi5yyBqM6ONuhRCGNymvr4eOTk5yM3NRVRUFObOnYs///nPWLZsmc52mZmZyMzM1C6Xl5e3qSYiapvGF48Hz9rc5HY+RJaq2RbdvaMuXVxckJ+fj/z8fLi6uraqWzMwMFCnBVdUVISAgIAm2ygUCkRFRQEAxo0bp3cezYyMDO3x8/Pz4enp2bp3R0TtgrOkkDUzOPXB2rVrER0djaVLl+Kf//wnYmJisG7dOoM7jo+Ph0qlQn5+PgBg2bJlSElJabJNbW2tNhC3bduGyMjItrwPIjIiZ2dnc5dA1GYSYaCPsVevXtixY4e2NVZSUoLBgwfj5MmTBnf+448/Ytq0aaipqUFiYiK+/PJLbNmyBdnZ2Vi6dCkAYM+ePZgxYwbq6+vh7++P5cuXa1uTzVEoFNoAJSLTOHfuHAZ9eUJnHbsvyVK0lAsG7zDu6uqq0+Xo7+8PFxeXVh140KBBTQ48YsQIjBgxQrv8yCOP4Ndff23V/ojIfNh9Sdaq2aDbv38/ACAxMRHjx4/H5MmTIZFIsGrVKiQlJZmqPiKyEAw6slbNBt2cOXN0lj/44APtz5cuXTJeRURkkezt7bF5UjCSVxWauxSi+9Js0O3cudOUdRCRFXBzc9NZ5mUGZA0MnqMDgFOnTuHYsWOorq7WrpswYYLRiiIiy8TuS7JGBoPuww8/xNq1a3Hu3DkkJSVh27ZtSEpKYtARdUCNW3RE1sDgdXQrV67Evn374O/vj/Xr1yMvLw8ajcYUtRGRheF0YGSNDAado6Mj5HI5JBIJ6uvr0aNHDxQWFpqgNCKyRPqmAyOyZAa7Lj09PVFZWYlBgwZhzJgx6NKlCzp37myK2ojIAvE8HVkbgy267OxsuLq6YsGCBRg9ejRiYmKwadMmU9RGRBbI2dnZ8D8cRBakVV2X169fxw8//ABvb29MmDABnTp1MkFpRGSJJBIJtj/f29xlELWa0SZ1JiLbpe96OiJLZfAc3dy5c5Gbm9tkUue7dwUnoo6H5+nImhhs0T3IpM5EZJscHBzgaO4iiFqJkzoTUZv88GI0Bi4+au4yiAzipM5E1Cb6rqfjvJdkiTipMxG1CacDI2th8BydRqPBF198gXHjxmHcuHH45z//ySnAiAgymQwzHzJ3FUSGGQy6mTNnYuvWrRg/fjwmTJiArVu3YubMmSYojYgs3dh+ceYugcggg5cX7N69G4cPH9YuP/7441AqlcasiYisBM/TkTVoVddlZWWldvnWrVsQQhi1KCKyDrzUiKyBwRbdiy++iPj4eIwePRoAsHHjRrzyyitGL4yILJ9EIsGobsDGy+auhKh5LbbohBAYMWIEvvnmG/j7+yMgIADr1q3D1KlTTVUfEVm42RM5IoUsW4stOolEgmHDhuHo0aOIjY01VU1EZEV4no4sncFzdBERETh16pQpaiEiK+ToyMnAyLIZPEdXUlKC2NhY9OnTR+fE8w8//GDUwojIerz8O+Dj/eaugkg/g0H33nvvmaIOIrJikx/5HT7ez6Qjy2Qw6BITE1FfX4/Tp08DAHr27Ak7O4MvI6IORN/96XiejiyFwcTatWsXJk+eDG9vbwghcP36dfzrX/9CYmKiKeojIivAL79kyQz+dk6bNg3Z2dna2VAOHz6MiRMn4tixY8aujYisyAhfIJs3NiELZHDUpVwu15nyKzY2FnK5vFU737VrFyIjIxEWFob09HSo1epmt01OTkZYWFir9ktElufvzw40dwlEehkMuqFDh2LWrFk4ceIETp48idmzZ2P48OG4ePEiLl682OzrNBoN0tPT8c033+DMmTOorKzE6tWr9W67Zs0adO7cue3vgojMrvF0YMGzNpupEiJdBrsu165dq/Pfu77++mtIJBKcO3dO7+tyc3Ph5+cHhUIBAJgyZQoyMzORlpams921a9eQmZmJ5cuX4/HHH2/TmyAi85NKDX5vJjILg0F3/vz5Nu1YpVIhMDBQuxwUFITi4uIm282cORPz5s3jRadERGQURvsK1po7HPz73/+GTCbDoEGDWtwuMzMTCoVC+ygvL2+vMomoHZ14q+W/ZSJzMFrQBQYG6rTgioqKEBAQoLNNTk4OduzYgeDgYAwYMAAXLlxATExMk31lZGQgPz9f+/D09DRW2UT0AJycnHSWeZ6OLIHRgi4+Ph4qlQr5+fkAgGXLliElJUVnm/feew8qlQqFhYXYu3cvunfvjiNHjhirJCIi6oCMFnQymQxLly5FamoqQkND4erqikmTJiE7Oxvp6enGOiwREZEOiWjmZFrPnj0hkUiarBdCQCKRmPWOBgqFQttSJCLLUldXh55v/jbpO6cCI1NoKReaHXW5fft2oxVERLar8YQSnPeSzK3ZoOvevbsp6yAiIjKKZoNu1KhR2LhxY5MuTEvouiQiImqtZoNuyZIlANiFSUT37/x7v0eP17eYuwwiAC0Ena+vLwB2YRLR/Ws8kI3n6cicDF5ekJeXh9/97ndwd3eHvb299kFERGQNDM51+cc//hGLFy/Gs88+iz179uDzzz9HXV2dKWojIiJ6YM226Pbt2wcAqK2tRVxcHOrr6+Hq6oo//elPyMrKMlmBRGSd2FVJlqLZoHvppZcAQNtN2b17d6xduxb79u1DRUWFaaojIpvBeS/JXAx2Xb711luoqKjAwoUL8eKLL6KyshKLFi0yRW1EREQPrNmgKyoqwvPPPw8A2LBhAwAgNDRUuzxs2DATlEdE1swXwCVzF0EdXrNB5+Ligv79+5uyFiKyMT/NT2aXJZlds0Hn5eWFtLQ0U9ZCRDaO19OROTQ7GKU1dwgnIiKydM0G3Z49e0xZBxHZqC3TE8xdAnVwzQadq6urKesgIhul8PPWWeY5OzI1o91hnIiIyBIw6IiIyKYx6IjI6DjSksyJQUdEJsfzdGRKDDoiIrJpDDoiIrJpDDoiMonG5+nYfUmmwqAjIiKbxqAjIiKbxqAjIpNp3H2Zc+aCmSqhjoRBR0RmM3npMXOXQB0Ag46IiGwag46ITIqzpJCpGTXodu3ahcjISISFhSE9PR1qtVrn+by8PPTv3x+RkZGIiorCP/7xD2OWQ0QWiJcZkLEZLeg0Gg3S09PxzTff4MyZM6isrMTq1at1tnF2dsby5ctx/Phx7N+/H4sWLUJeXp6xSiIiog7IaEGXm5sLPz8/KBQKAMCUKVOQlZWls014eDh69eoFAHB3d0fv3r1RXFxsrJKIyEL836mx5i6BOhCjBZ1KpUJgYKB2OSgoqMUQO3v2LH755Rf079/fWCURkYX4Pz0CdJbZfUnGZGesHQshWr3tjRs3MGrUKHz66afo3Llzk+czMzORmZmpXS4vL2+XGomIyPYZrUUXGBio04IrKipCQEBAk+2qqqqQnJyM5557DmPGjNG7r4yMDOTn52sfnp6exiqbiEykv4fu8oJ/bzNPIWTzjBZ08fHxUKlUyM/PBwAsW7YMKSkpOtvU1dUhJSUFjz76KKZPn26sUojIAq15Xfcyg8zdtWaqhGyd0YJOJpNh6dKlSE1NRWhoKFxdXTFp0iRkZ2cjPT0dALBu3Tps27YNGzduhFKphFKpxPr1641VEhERdUAScT8n0yyEQqHQthSJyLo1HojCC8qpLVrKBc6MQkRENo1BR0QWpbaW5+qofTHoiMisGndVhs/l6EtqXww6IrI49fX15i6BbAiDjojMrp+b7nLYG9+bpxCySQw6IjK7r+c0HWnZ+G4nRG3FoCMiixQ6Z6u5SyAbwaAjIoug7/o5nquj9sCgIyKLxXN11B4YdERkMfS16nhdHT0oBh0RWTReV0cPikFHRBZFX6uusrLSDJWQrWDQEZHFi3l3DzQajbnLICvFoCMii6OvVXf58mUzVEK2gEFHRFah36e/oqqqytxlkBVi0BGRRdLXqlO8s5NdmHTfGHREZLHiHZuuU6lUpi+ErBqDjogs1vq3m7bqBi4+irKyMjNUQ9aKQUdEFk1fF2bfBf/B7du3zVANWSMGHRFZvNE9m66L/Nsu1NTUmLwWsj4MOiKyeB9PadqqA4Beb23nFGFkEIOOiKyCvi5MAFDM3cawoxYx6IjIaui9lQ8a5sO8c+eO6Qsiq8CgIyKr0lzLrvdff8SNGzdMWwxZBQYdEVmd5sJOOX8fVCoVLyonHQw6IrJKzYXdgM8OI2T2v3Hr1i0TV0SWikFHRFarubADgKh5u/Hpps28BIEYdERk3QrnJ+MPkfqf+/inhksQ/py5mReYd2ASIYQwdxH3S6FQID8/39xlEJGFCZ612eA2O6fFws/bGw4ODiaoiEylpVwwaotu165diIyMRFhYGNLT06FWq5tss27dOoSHhyM0NBRz5swxZjlEZOMK5ye32J0JAP/z2WH0ems7gmdtRvCszbheXo66ujoTVUjmYLQWnUajQXh4OLKzs6FQKDB27FgkJycjLS1Nu01FRQWio6Nx4MABeHt7Y+DAgXjvvfeQmJjY4r7ZoiOi1mhNC685370YjZAuXWBvbw87O7t2rIqMoaVcMNr/vdzcXPj5+UGhUAAApkyZgszMTJ2g27p1K5KSkuDr6wsASEtLQ1ZWlsGgIyJqjXtbd/cbeo8vPtouNUgBiP8+HABIJEBAZzm83Jzw6RgFnOXyZl8rkUha3Leh562Fi4uLUd+L0YJOpVIhMDBQuxwUFITi4mKD22zdutVYJRFRB9a4SzNk1maY4mq7e49RAwACOFNWhzNldei/4D8IcQUu3AK8XIBhoU6QS6U4WVaHXl5yyKS/nV0SQuBKlQbxfg6wk0qhEQKF5TXIv1qLzs52SPB3hN1/t9cIgaKKOgASBHnYQXpPiGiEQK1aQOFtr7PenGJjY43aajbanlvTI9raXtPMzExkZmZql8vLy9tcFxERAJxr5lzeu9n/xpf72y8CZWgIOwHAEQAkgKO9BDdqBNQATv/3cr9Lt4FVx+7AXiZFVZ0Gv1yuh4Pdb0FXrxaoqlUjuocvfh/bDUdKbuLdffm4WaOGBHWI6eGHFGU3AMDhkkp8nHsKEgDvjwxHjJ+bdj9HLt7Em5vP4G/J/jrrzUkqNe4FAEYLusDAQJ0WXFFREQICAppsc+TIkRa3AYCMjAxkZGRol+92hxIRtbfZI4Zj9gjjHqO2Vo33tx7HgbNl8HGTI7eoAgFerpg1NAJ2cil2F1xFUnhXyGS6LbFzV29jTN9A2NlJ8YhHJ/zzaWfszL+MQE8XjEsIgt1/g3GgRycsdnODRABxQZ6QSn/bz8BOnvjU3R3KgE46622Z0QajqNVq9OzZE9999512MMrw4cPxzDPPaLepqKhAVFQUfv75Z+1glL///e/4n//5nxb3zcEoRER0L7NcXiCTybB06VKkpqYiNDQUrq6umDRpErKzs5Geng4A8PDwwIIFCzBw4ED06tULiYmJBkOOiIjofvCCcSIisnpmu2CciIjI3Bh0RERk0xh0RERk0xh0RERk06xyMIq7u7ve6+2sQXl5OTw9Pc1dhtXj5/jg+Bk+OH6GD669PkOVSoXKykq9z1ll0FkzjhhtH/wcHxw/wwfHz/DBmeIzZNclERHZNAYdERHZNAadid07Zye1HT/HB8fP8MHxM3xwpvgMeY6OiIhsGlt0RERk0xh0JlJcXIzBgwejd+/eiIyMxOuvv27ukqxaRkaGUW/UaMtu376NtLQ09OrVCxEREfjiiy/MXZLVWb16NWJiYqBUKvHII4+goKDA3CVZhRkzZiAgIKDJ3+6sWbMQFhaG8PBwZGVltftxGXQmYmdnh/fffx8nTpzAoUOHsHfvXmzatMncZVmlPXv24NatW+Yuw2q9+uqriIyMREFBAU6cOIHRo0ebuySrUlVVhRkzZuDHH39EXl4eJk6ciDfeeMPcZVmFMWPG4JdfftFZt337duzfvx8FBQXYuXMnXn755Xb/+2bQmYivry/i4+MBAPb29oiLi0NRUZGZq7I+NTU1mDVrFhYuXGjuUqzSzZs3kZ2djVdeeQUAIJFI0LVrVzNXZV00Gg2EENp/jCsqKuDr62vmqqzDgAED4OPjo7MuKysLTz/9NGQyGfz9/dG/f3/88MMP7Xpc9v2YwfXr17Fx48Z2/5/ZEbzzzjuYMmUKvL29zV2KVTp37hy6deuGadOm4eeff0b37t3xySefoHv37uYuzWq4urris88+Q1RUFDw8PODh4YGffvrJ3GVZLZVKhZSUFO1yUFAQiouL2/UYbNGZWG1tLVJTUzFjxgxERESYuxyrcuTIERw4cEDnLvV0f+rr65GXl4fU1FT8+uuveOKJJ/Dss8+auyyrUldXh8WLFyM3NxclJSVITU3FX/7yF3OXZbVMMfCfQWdCarUaEyZMgFKpxKuvvmrucqzOvn37kJ+fjx49eiA4OBhqtRrBwcHNzm9HTQUEBMDLywtDhgwBAIwbNw4HDx40c1XWJS8vD0II9O7dG0DDZ7h//34zV2W9AgMDdVpwRUVF7T6XMYPOhJ5//nm4ubnhww8/NHcpVumPf/wjLl68iMLCQhQWFkImk6GwsBDu7u7mLs1qdOvWDZGRkfj1118BANu2bUNkZKSZq7IuAQEBKCgoQElJCYCGz1ChUJi5KuuVkpKClStXQq1Wo6SkBHv37sVjjz3WrsfgOToT2bdvH5YvX46oqCjExcUBAJ599llMnz7dzJVRR7NkyRJMmTIFt2/fRqdOnbB06VJzl2RVfH19MX/+fDz66KOQy+Xw9vbG8uXLzV2WVZg6dSo2b94MtVqNgIAAjBw5EpmZmdi2bRvCw8MhlUrx0Ucfwc3NrV2Py5lRiIjIprHrkoiIbBqDjoiIbBqDjoiIbBqDjoiIbBqDjoiIbBqDjoiIbBqDjmzudjcbN27EkSNH2vTaxx57THshcHBwMFQqVZvrmD9/PkJDQyGRSJrs59NPP0XPnj0RFhaGzMzMNh+jrZ5++mmsXr3a5Mft6ObPn4///d//NXcZHQ6Djkyivr7eZPtqa9Dt2LED/v7+8Pf3b2tpOgYPHowff/yxyYTJp0+fxuLFi3Ho0CEcOnQIn3zyCc6fP98ux9SnPT97a66hJaaqLyMjAwsWLDDJ/I70GwYd6bCzs8M777wDpVKJmJgYnDp1CkII9OjRQ9vSAYDk5GTt3RcWLVqEhIQExMbGIj09HXV1dQAaWkSzZs1CfHw8Fi1ahG+//VZ7s8qYmBhcuHABALBr1y4MGDAAffv2xWOPPaZ35vKVK1fi8ccfx9ChQxEVFQUASE1NRXx8PKKiovDyyy8DAHbu3Ins7GzMmTMHSqUS+/fvx507d/DCCy8gISEB0dHR+Oyzz/S+93/9619ITU3V+9zevXsRHx+PmJgYJCcno7S0FEDDnSh+//vfIzIyEk8++SQefvhh7N27FwDw0EMP6b0rwIYNG/CHP/wBrq6ucHNzQ2pqKr799ludbTQaDfz8/FBTUwONRoPOnTtrW35vv/229j18++23iI2NRXR0NCZMmICbN28CaGixTZ06Ff369UNaWhqqq6sxadIkREREYOjQobh69ar2WHPnzkVkZCRiYmLw6KOP6n3/dnZ2mD17NqKjo9GnTx8cPXpUW+ecOXOQkJCAmJgYzJ49W+c1b7zxBuLi4rBhwwad/R08eBD9+/dHXFwclEqlzp08mjvWypUr8cQTT2DIkCHo1asX0tLSUFtbCwC4cOECHn/8ccTHxyM+Ph67d+9u1XHurW/FihVISEhAXFwckpKStF8+du3ahf79+2PChAlQKBQYPnw4qqurAQDXrl3DH/7wB8TExCAmJgZff/01gIYJyAcNGoS+fftiwIAB2vfg5uaG0NBQ7NmzR+/nTEYiqMOTyWTanwGIr7/+WgghxIIFC0R6eroQQoi//OUvYuHChUIIIa5duyYCAgJEfX292LFjh3jqqaeEWq0WQgiRkZEhFi9eLIQQonv37uLNN9/U7js6OlpcvHhRCCFEVVWVuHPnjigrKxP9+vUTN27cEEIIsW7dOjF27NgmNa5YsUJ06dJFlJaWatddu3ZNCCGEWq0WI0eOFFu3bhVCCJGWliZWrVql3e7NN98UX3zxhRBCiOrqatG3b19x/PjxJscIDg7W2X/37t1FcXGxqK6uFgEBAeLgwYNCCCEWLlyorXH69Oli9uzZQggh8vLyhEwmE3v27NHZ79393DVt2jTx5ZdfapcXL14sZs6c2aSeESNGiN27d4u8vDyRkJAgxowZI4QQIjExURw9elRcunRJ+Pj4iAsXLmj3+9prr2k/g0GDBona2lohhBAfffSRGD9+vNBoNKKoqEi4u7uLVatWibKyMtG7d2/t/7/r1683qUOIht+LzMxMIYQQGzduFH379hVCCLFs2TLt+1er1eKJJ54QW7Zs0b5m2bJlevdXUVGhrU2lUomQkBCDx1qxYoXo1KmTUKlUQqPRiJSUFLFo0SIhhBCDBg0Sx44dE0IIceHCBdGjRw+h0WgMHufe+u7+PgkhRFZWlhg3bpwQQoidO3cKZ2dncfbsWSGEEMnJyWL16tVCCCEmTJgg3nnnHe3rysrKRG1trXj44YeFSqUSQgjx888/i4SEBO028+bNE/PmzdP7uZBx2NbJGXpgEokETz75JICGFsnWrVsBABMnTkRaWhpeffVVrFu3DikpKZDJZNiyZQtycnLQp08fAEB1dTWcnJy0+5s4caL256SkJDz11FMYNWoURo4ciaCgIGzfvh0FBQVITEwE0NBCaG6euyFDhqBbt27a5S+//BLr1q2DWq3GlStXMGDAAAwdOrTJ67Zs2YI7d+5g8eLFAIDKykoUFBQ0mYj30qVLeu9zd/LkSfj4+Gjf45QpU/D+++8DAHJycrBmzRoA0LasDBGt7LZKTEzE7t274eHhgeeeew6ZmZmorq7GmTNnEBkZiezsbAwYMABBQUHaup5//nnt68eOHQu5XK6t87nnnoNEIkFgYCAGDRoEAPDw8ICLiwuefvppDB06FE888USz9aSlpQEARo4ciWeeeQa3b9/Gli1bcPjwYWzevBkAcPv2bZw+fRrDhw8HAEyYMEHvvm7duoX09HTk5+fDzs4OxcXFuHbtGrp06dLssYCG34G7XcuTJ0/G6tWr8fTTT2Pv3r06v2u1tbW4cuUK1Gp1i8e5t76CggLMmTMH165dg1qthlT6W4dXnz59EBISAqDh7+Jua+/777/HkiVLtNt17twZx44dw/Hjx5GcnKxdf/36de3PXbt2RV5eXrOfM7U/Bh3pkEql2n8cZTKZ9txFdHQ06uvrcfLkSXz11VfaOzAIIfDyyy9j5syZevfn4uKi/fkf//gHDh06hG3btiExMRGrV6+GEAKPPPIINm7caLC2e/e1e/duZGVlIScnB25ubnj11Ve13UmNCSGwZs0aKJXKFvfv6OiImpoanaAGGsK/peXWPndXa29LkpSUhNdeew0eHh54//33sWPHDqxcuRIJCQmQSCQG67r382qOTCbD/v37kZOTg++//x5vvPEG8vLy4OHhYfC1QMNnu2DBAowaNUrvvh0dHfW+bs6cOejTpw/Wrl0LiUQCLy+vZv//3Uvf56vRaODs7Kw3PJ555plmj9O4vokTJ+Krr75Cv379cPToUYwePVr7nIODg877uvecXuOahBAIDQ1tNswafxkk4+M5Omq1CRMm4L333sOVK1eQkJAAABg+fDhWrFiBGzduAADKy8ubHVhx6tQpxMXF4bXXXsOjjz6KvLw89OvXDz///DOOHTsGoOGmlnfPZ7SkoqICnTp1gpubG8rKypCVlaV9zs3NTecedcOHD8enn34KtVoNoGEwiL572EVGRuL06dNN1vfq1QulpaXaf7iWL1+ubRENHDhQe17m6NGjrRoEM3r0aKxduxa3bt3CzZs3sX79ep1/VO9SKpXIz8/H2bNnERYWhqSkJLz33ntISkoCACQkJGDfvn3aEZ0rVqzQ1tVYYmIivvrqKwBASUkJdu7cCQC4efMmysrKMHjwYMyfPx+Ojo7NjjRdtWoVAOC7775DSEgIXFxcMHz4cCxZskQbHhcvXtSev2xJRUUF/P39IZFIsH79ep0WT3PHAoDt27fj0qVLEEJg9erVSExMhLu7OyIjI3XuIHD3NkSGjnOvyspKbWvxyy+/NPgeAGDo0KH49NNPtcvXr19HREQEbt68iR07dgBoCL5Dhw5ptzl16pT2PDOZBoOOWm3ChAlYtWoVxo0bp103ZMgQvPDCCxg4cCBiYmIwePDgZv+hfO211xAVFQWlUonLly/jqaeeQpcuXfD1118jPT0dsbGxUCqVyMnJMVjLsGHD4Orqil69eiE1NRUDBw7UqfOzzz7TDkZ544034OrqitjYWERFReG5557TDmK414gRI7T/ON3LwcEBX331FdLT0xETE4Nt27bhk08+AdAwkCM3NxeRkZH461//iqioKG1raN68eQgICIBKpcJDDz2EESNGAADCw8PxwgsvQKlUQqlUYvr06dpusXtJpVL06dNH+49iYmIiioqKtN28Pj4++Oyzz5CcnIzo6GhcuXIFc+bM0ft5vfDCC5BIJIiIiMCzzz6L/v37A2gIgpEjR2oHU4wcOVLv/elkMhmKi4sRExODuXPnakNlypQp6NevH+Lj4xEdHY2UlBTtl56WvP7663j33XehVCqxe/dubfdrS8cCgP79+2sH1Tg5OeG5554DAKxZs0Y7MEehUGgH67R0nMY++OADJCYmom/fvvD09DT4HoCGy0SOHDmCqKgoxMbGYtu2bZDL5di4cSPmzZuH2NhYREZG6nwRy8nJwbBhw1q1f2ofvE0P0X9dvXoVI0eOxL59+1rVBQk0nAuSSCSQy+U4ffo0Bg0ahFOnTtlc15SdnZ3JhuA3d6yVK1di7969Vn3/vJ9++gmLFy/WtljJNHiOjui/vL298Ze//AWlpaXw9fVt1WsuXbqE0aNHQ61WQwiBzz//3OZCjtpPWVkZ3n33XXOX0eGwRUdERDaN5+iIiMimMeiIiMimMeiIiMimMeiIiMimMeiIiMimMeiIiMim/X8Xu2wko6gNOwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 84;\n", - " var nbb_unformatted_code = \"surv_model.plot(color=\\\"gray\\\", alpha=0.4, label=\\\"model\\\")\\nsurv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (log10 words per appearance)\\\", ylabel=\\\"Tail probability\\\")\";\n", - " var nbb_formatted_code = \"surv_model.plot(color=\\\"gray\\\", alpha=0.4, label=\\\"model\\\")\\nsurv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(xlabel=\\\"Inverse rate (log10 words per appearance)\\\", ylabel=\\\"Tail probability\\\")\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2011,52 +988,25 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "With the y-axis on a linear scale, we can see that the model fits the data reasonably well, except for a range in the middle of the distribution -- the words that are not common or rare.\n", + "With the y-axis on a linear scale, we can see that the model fits the data reasonably well, except for a range between 5 and 6 -- that is for words that appear about 1 time in a million.\n", "\n", - "And here's what the model looks like on a log-y scale." + "Here's what the model looks like on a log-y scale." ] }, { "cell_type": "code", - "execution_count": 85, + "execution_count": 36, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 85;\n", - " var nbb_unformatted_code = \"surv_model.plot(color=\\\"gray\\\", alpha=0.4, label=\\\"model\\\")\\nsurv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Tail probability\\\",\\n yscale=\\\"log\\\",\\n)\";\n", - " var nbb_formatted_code = \"surv_model.plot(color=\\\"gray\\\", alpha=0.4, label=\\\"model\\\")\\nsurv.plot(marker=\\\".\\\", ms=1, lw=0.2, label=\\\"data\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Tail probability\\\",\\n yscale=\\\"log\\\",\\n)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2090,45 +1040,18 @@ }, { "cell_type": "code", - "execution_count": 86, + "execution_count": 37, "metadata": {}, "outputs": [ { "data": { - "image/png": "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kzaOTNij119/neTkZBobGxk4cCAZGRm2DsmmAgICeOmll7j//vtxcXHB39+fN99809Zh9bgnnniCzz77DKPRiEajYc6cOaSnp7N9+3YiIiJwcnLiT3/6E56enrYO1SpkZRQhhBAOTZouhRBCODRJdEIIIRyaJDohhBAOTRKdEEIIhyaJTgghhEOTRCeEEMKhSaITXeZo2+F89NFH5Ofn39Kx06ZNs0xCHj58OHq9/pbjeOmllwgLC0OlUnU4zyuvvEJ4eDharZb09PRbvsatWrx4MZs3b+7x6/Z1L730En//+99tHYbDkEQn7IrBYOixc91qotu5cydBQUEEBQXdamht3HvvvXz++ecdFl8+ceIE69at4+DBgxw8eJCXX36Z7777rluueS3d+dn35hg601Pxpaamsnbt2j61HqU1SaITt8TZ2ZlVq1YRExNDdHQ0RUVFKIrCiBEjLDUdgJkzZ1p2W3j11VcZP348Y8eOJSUlhZaWFqC1RvTss88SGxvLq6++yocffmjZKDM6OprTp08DsGvXLiZNmsSdd97JtGnTrrnS+oYNG5g1axYPPPAAY8aMASAxMZHY2FjGjBnDU089BUBOTg5ZWVmkpaURExPDvn37uHz5MsuWLWP8+PFERUXx2muvXfPeN27cSGJi4jXf27t3L7GxsURHRzNz5kzOnj0LtO48MWPGDHQ6Hf/xH//B3Xffzd69ewG46667rrnDwAcffMAjjzyCh4cHnp6eJCYm8uGHH7YpYzKZCAwMpKmpCZPJhI+Pj6Xm99vf/tZyDx9++CFjx44lKiqKBQsWUF9fD7TW2J544gkmTJhAUlISV65cYdGiRYwaNYoHHniAyspKy7V+85vfoNPpiI6O5v7777/m/Ts7O/Pcc88RFRXFuHHjOHz4sCXOtLQ0xo8fT3R0NM8991ybY1auXMkdd9zBBx980OZ833zzDRMnTuSOO+4gJiamzc4d17vWhg0bmD17Nvfddx8jR44kKSmJ5uZmAE6fPs2sWbOIjY0lNjaW3NzcLl3n6vjeeustxo8fzx133EF8fLzlj49du3YxceJEFixYQGRkJA8++CBXrlwBoKqqikceeYTo6Giio6N59913gdYFyqdOncqdd97JpEmTLPfg6elJWFgYe/bsuebnLG6SIkQXqdVqy78B5d1331UURVHWrl2rpKSkKIqiKL/8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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAboAAAD/CAYAAACHFRPuAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAAuJAAALiQE3ycutAABDBUlEQVR4nO3de1yUZf74/9cwHJWDAorIgMpRGUE0VnNtQS3PqcmSubp+1aByYz/ttvVxK91D/twOuocOYp/6YOJq9cmiAxara4WoWWYloaKAGsIoiqKcVA4zc//+IO4NQQRkGBjez8djHjpzX9d9v+9xnPdc133d16VRFEVBCCGEsFF21g5ACCGEsCRJdEIIIWyaJDohhBA2TRKdEEIImyaJTgghhE2TRCeEEMKmSaIDJkyYYO0QhBBC3ILWvsc1ch8d9OnTh6FDh1o7DCGEEB1UWFjI1atXW9xm38WxdEtDhw4lNzfX2mEIIYTooPDw8Btuk65LIYQQNk0SnRBCCJsmXZdCCNHD9aahFhqNpt11LJrodu/eTVJSErW1tUycOJFXX30VrVbbpMy2bdtYtWoVJpOJBQsW8Je//AWAyspKFi1axPHjx/Hw8GDLli2MGDGCK1euMGnSJOrq6qivr2fChAls2LABe3t7UlNTeeyxx/D39wcaRuEkJydb8hSFEMJq6uvrKS4upra21tqhdBknJyf8/f1xcHBoeyXFQkwmkxIUFKQcPXpUURRFuffee5XU1NQmZcrLyxV/f3/l7NmzSn19vTJ+/Hhl9+7diqIoysqVK5Unn3xSURRF+fjjj5WJEyeq+62qqlL/Pm/ePGXTpk2KoijKpk2blISEhHbHOmLEiA6doxBCWNPJkyeV0tJSxWQyKWaz2eYfJpNJKS0tVU6ePNnsvWjte9xi1+gOHjzI4MGD1ZEwCQkJpKWlNSmzY8cOJk6ciK+vL/b29ixZskQtk5aWRmJiIgAzZ84kPz+fsrIy7OzscHV1BcBoNFJbW9uhpqwQQvRkiqJQW1uLl5cXdnZ2aDQam3/Y2dnh5eVFbW1tu7prLZboDAaD2oUIEBAQQHFxcZvLXL9Np9NhMBjU5+PGjWPAgAG4u7uzaNEi9fXt27czatQopk6dysGDBzv9vIQQN1dxtZ41H+US/8p+nnzvMOcqaqwdks3qbT/0O3K+Fkt0bcm27cnI1ztw4ABnzpzh0qVL7N69G4C7776bwsJCvvvuO1auXMm8efOorq5uVjc5OZnw8HD1cfny5Q7HIYRoqqy6lnkbPidl3/eUX6vn7YNF3P3yPk5daP5/UfQ+0dHRXX5MiyU6f3//Ji24oqIidDpdm8vodLom2wwGA35+fk3qu7q6MmfOHLZv3w6At7c3Li4uAMTGxqLT6cjLy2sWW1JSErm5ueqjf//+t3i2Qgho+PH6yP8d4vSlq7y2+DY++V0s7yz/KdfqjDz8xrfUGk3WDlFYidFoBODrr7/uUL1bYbFEFx0djcFgUGcc2bhxI3FxcU3KTJ8+nczMTEpKSjAajWzevFktExcXR0pKCgAZGRkEBwfj7e1NaWkp5eXlANTW1pKRkYFerwfg7Nmz6r6PHj1KYWEhgYGBljpFIcR1tueU8PmJMh69K4Sp+kEA3DakP6vnjuT4uSpS9n5v5QiFJdjb2/PUU08RERHBmDFjOHz4MACpqancfffdTJs2jZEjR6plG73//vuMGjWKiIgIFi5cSFVVFQBLly7loYceYvz48SxZsuTW47vlPdyAVqslJSWF+Ph4amtriY2NZfHixaSnp5Oenk5KSgoeHh6sW7eOmJgYzGYz8+fPZ9KkSQCsWLGCRYsWERISgpubG1u2bAEaktmyZcswmUyYTCZmzpypDlpZv349H374IQ4ODjg4OJCamiqtNSG6SL3JzPP/Os4Qrz48ENP0B2bcGD/+72AR/7P7JIvGBdCvj6OVorRdK979jvzznd89HOrjytr4Ua2WMZlM6HQ6Dh8+zIcffsiyZcvUltuBAwc4cuQIPj4+TeqcO3eOhx9+mAMHDhAQEMB//dd/sWbNGp5//nkATpw4wZ49e9p3G8ENWPQ+usmTJzebQ3LOnDnMmTNHfb5gwQIWLFjQrK6HhwcfffRRs9ejoqI4dOhQi8d75plneOaZZ24xaiFER+w8eo4z5ddYFx+Jk33T+2U1Gg2PTQ1jwWtf8n8Hi1keG2SlKIWlNLa85s6dy7Jly7hy5QoAd911V7MkBw0J8I477iAgIABoGJn/4IMPqtvnz5/fKUkOZGYUIUQneX3f93i7OjInanCL28cN82SErztbvjhN4h3DsNfKDISd6WatLmvp27dvi69fP3ry+uc3qtcR8kkTQtyyvHNVfFtUzsKxAc1ac400Gg1LfzqEM+XX2FtwsYsjFJbWeHnpo48+IjAw8KaJauzYsXz++efqbWObNm1i8uTJFolNWnRCiFv2YfYZAOLG6FotNzPClz9+eJT0784yafjArghNdAGtVktxcTGRkZHqdIw3M2jQINavX8+sWbMwm81ERETw6quvWiQ+WXiVhnWMZD06ITpGURRi1mXi2deJD5NuvMpzo19t/YY9+Rf45g9TcHZoufUnbk5RFI4fP87w4cOtftO4vb19p9wG0BY3Ou/Wvsel61IIcUu+M1RQfOkac0a1fG3uerNHDeZKnYnM46UWjkyIBpLohBC35LNj5wGYpm8+sq4lk8IG4mRvxyfHJNHZiq5qzXWUJDohxC35LK+UUB9XdP37tKm8i6OW2wO9yMq/gNnc66+ciC4giU4I0WGllTUcOVPJpLD2DSyZFDaAi9W1HD1baaHIeo/eNsyiI+criU4I0WG78y8AMLGdia6xfGaedF92lEajwcnJibKyMsxmM4qi2PzDbDZTVlaGk5NTuwbgyO0FQogO25N/AVcne6KHtm+qvaHefRnm3Zes/As8cmeIhaKzfY0T41+82HvuS2xcYbw9JNEJITpEURQOfH+J6KH9cejALCfjg7zYdrCYq3VG+jjKV1FHODg4EBgY2Ku6L7vVenRCCNtWWHaVC1W1jBvm1aH644Z5YjQrfHu6vHMD64WsvfJ3Vz46QhKdEKJDDpwqA2DsMM8O1b89sCFBHvi+rNNiEqIlkuiEEB1y4PtLuDhoidR5dKi+j7szQ736cODUpU6OTIimJNEJITrkq+8vcduQjl2fa3R7oBfZxeXU1MvK48JyJNEJIdqt+NJVzpRfY1wHuy0bjQv0pM5k5lBReecEJkQLJNEJIdrtm9OXAYgeemuJ7raAhvqHii/fckxC3IgkOiFEu2UXl2OnocPX5xr5e7rg2deRbGnRCQuyaKLbvXs3er2e4OBgEhMTMZma98Nv27aN0NBQgoKCWLlypfp6ZWUls2fPJiQkhOjoaI4dOwbAlStXGDt2LFFRUej1eh588EF1QlGj0ciyZcsIDg5Gr9ezd+9eS56eEL1WdnE5oT5u9HW6tfvfNBoNUf79yC4u71X3gomuZbFEZzabSUxM5J133uHEiRNUVlaydevWJmUqKip4/PHHycrKIi8vj8zMTLKysgBYu3YtERERFBQUsHr1ah5++GEAXFxc+Oyzz8jOzubw4cNcvHhR3W9qaiq1tbWcOHGCt956i4SEBPnPI0QnqzOayT1bSZR/v07ZX5R/P0qraimpqOmU/QlxPYsluoMHDzJ48GDCw8MBSEhIIC0trUmZHTt2MHHiRHx9fbG3t2fJkiVqmbS0NBITEwGYOXMm+fn5lJWVYWdnh6urK9DQgqutrVVvIvxxncjISLy8vDh06JClTlGIXulYSSV1JnOnJjpoaCUKYQkWS3QGg6HJfGQBAQEUFxe3ucz123Q6HQaDQX0+btw4BgwYgLu7O4sWLWrzMYUQt+Y7QzkAozop0Y2SRCcszGKJri1dhrfSrXjgwAHOnDnDpUuX2L17d7v2l5ycTHh4uPq4fFlGfAnRVtnF5bg4aAkZ6Nop+/NwcSBwQF8ZkCIsxmKJrnFW7UZFRUXodLo2l9HpdE22GQwG/Pz8mtR3dXVlzpw5bN++vc3HBEhKSiI3N1d99O/fvpnXhejNsovLidB5YH8LN4pfL8q/HzlnyjHJQqzCAiyW6KKjozEYDOTm5gKwceNG4uLimpSZPn06mZmZlJSUYDQa2bx5s1omLi6OlJQUADIyMggODsbb25vS0lLKy8sBqK2tJSMjA71e36xOTk4OFy5cYMyYMZY6RSF6nYpr9Zy6cKXTrs81ivDzoKbezKkL1Z26XyHAgsv0aLVaUlJSiI+Pp7a2ltjYWBYvXkx6ejrp6emkpKTg4eHBunXriImJwWw2M3/+fCZNmgTAihUrWLRoESEhIbi5ubFlyxYAzp49y7JlyzCZTJhMJmbOnKkOQFm6dCn79u0jODgYR0dHNm7c2OHZroUQzR09WwE0JKbOpB/s8cP+KwnxcevUfQuhUWT8PeHh4WrLUwhxYyl7T7Hm42N89lgsgQM65xodQHWtkZF/2kniHcNYdXd4p+1X9B6tfY/LzChCiDbLLamkj6OWIV59O3W/rk72DPPuy9GzlZ26XyFAEp0Qoh1yz1YyfJAbWrvOvyQQPtido2crZJIH0ekk0Qkh2qTWaOJEaTXhg90tsv+Rgz2orDFiuHzNIvsXvZckOiFEmxScr8ZoVtSBI51N/0MCbRzwIkRnkUQnhGiT3B+un4X7WqZF15jojpyR63Sic0miE0K0ydGzFWjtNIQNsszwfy9XJ3w9nKVFJzqdJDohRJvkllQSNKAvzg5aix1DP9iDIzLyUnQySXRCiJsymxWOlVRZrNuyUbivGxeqaimrrrXocUTvIolOCHFTRZeuUl1rtNiIy0Zhgxr2n3euyqLHEb2LJDohxE3lljQORLHMiMtGjdf/jkuiE51IEp0Q4qaONSY6C7fohnr1wdHeTlp0olNJohNC3FTeuSoGuDnh2dfRosex19oRMtCV4+cl0YnOI4lOCHFTBaXVhPp03iTOrQkb5EbB+SrMsjad6CSS6IQQraqpN1FYdoWQgV2zfM7wQW5crTNRfPlqlxxP2D5JdEKIVp0orUZRsNiN4tcb/sPISxmQIjqLJDohRKvyf7he1lVdl8N/SKgyIEV0Fkl0QohW5Z+vBuiylb8HuDnRv48Dx8/JDCmic0iiE0K0Kv98Fb4ezrg7O3TJ8TSahvk0petSdBaLJrrdu3ej1+sJDg4mMTERk8nUrMy2bdsIDQ0lKCiIlStXqq9XVlYye/ZsQkJCiI6O5tixYwBkZ2czYcIE9Ho9I0eO5KWXXlLrpKam4uXlRVRUFFFRUSQlJVny9IToFfLPV3VZa67R8EHuFF68Qk198+8MIdrLYonObDaTmJjIO++8w4kTJ6isrGTr1q1NylRUVPD444+TlZVFXl4emZmZZGVlAbB27VoiIiIoKChg9erVPPzwwwD06dOH119/naNHj7J//35efvllsrOz1X3OmzeP7OxssrOzSU5OttTpCdErXKltWAg1rIuuzzUKG+SGWWkYCCPErbJYojt48CCDBw8mPDwcgISEBNLS0pqU2bFjBxMnTsTX1xd7e3uWLFmilklLSyMxMRGAmTNnkp+fT1lZGaGhoYSFhQHg7u7OiBEjKC4uttRpCNGrFZR27fW5RjIVmOhMFkt0BoMBf39/9XlAQECzhNRameu36XQ6DAZDk/onT57k66+/ZsKECepr27dvZ9SoUUydOpWDBw926jkJ0ds0jrgM6+JEF+rTOPJSBqSIW2dvqR0rys1nNWhLmRspLy/nnnvu4cUXX8TT0xOAu+++m/vuuw8XFxeysrKYN28ex48fx9W1abdLcnJyk27Ny5cvdzgOIWxZ/g8tquCBXdt16epkj7+ni7ToRKewWIvO39+/SQuuqKgInU7X5jI6na7JNoPBgJ+fHwBXr15l1qxZPPDAA9x7771qGW9vb1xcXACIjY1Fp9ORl5fXLLakpCRyc3PVR//+/TvhjIWwPfml1fh7utDXyWK/iW8ozMeNgvNyjU7cOosluujoaAwGA7m5uQBs3LiRuLi4JmWmT59OZmYmJSUlGI1GNm/erJaJi4sjJSUFgIyMDIKDg/H29qa+vp64uDimTJnCI4880mR/Z8+eVf9+9OhRCgsLCQwMtNQpCmHz8s9VEdpFU39dL9THjXOVNVRcrbfK8YXtsFii02q1pKSkEB8fT1BQEK6urixevJj09HR1kImHhwfr1q0jJiaGsLAwYmNjmTRpEgArVqwgJyeHkJAQVq1axYYNG4CG2xF27drFBx98oN5G8O677wKwfv169Ho9UVFRLF26lNTUVGmtCdFBFdfqOVdZ0+UDURo1DkjJL5XuS3FrNMqtXCizEeHh4WrLUwjR4JvTl/j5K1/wj/tGMW+07uYVOtmxkkpmvLiXNfeM5Je3D+ny44uepbXvcZkZRQjRorxzP9xaYKWuy8ABfdHaadSRn0J0lCQ6IUSL8s9XYafp+hGXjZzstQzz7iuTO4tbJolOCNGi/PNVDPHqi7OD1moxhPm4kX++6pZuRRJCEp0QokX556sJsVJrrlGojxuXr9ZzobrWqnGInk0SnRCimUtX6rhYXdtli63eSNighkSbf07upxMdJ4lOCNFM4wAQa91a0EidCkwGpIhbIIlOCNGMtea4vN4Qr7442tupU5EJ0RGS6IQQzeSfr8LeTsMw775WjUNrpyFkoKu06MQtkUQnhGgm/3w1w7wbWlPW1jDnZRVms4y8FB1j/U+xEKJbURSF/PNV6vUxawsd5MaVOhNnyq9ZOxTRQ0miE0I0caG6lvKr9YR08ariN9J4nVBmSBEdJYlOCNFE41B+aw9EaRQ6SEZeilsjiU4I0UR3ubWg0WAPZ1yd7GXkpegwSXRCiCbyz1fhqLVjqFcfa4cCgEajIdTHlTxZhFV0kCQ6IUQT+eerCBzQF3tt9/l6CBvkxsnSaowms7VDET1Q9/kkCyGsTlEUCs5XW33qr+uF+rhRZzJTWHbV2qGIHkgSnRBCVVJRQ1WtsdvcWtBIRl6KWyGJTgihUgeiWHnVguupIy9lQIrogDYluqysrA7tfPfu3ej1eoKDg0lMTMRkMjUrs23bNkJDQwkKCmLlypXq65WVlcyePZuQkBCio6M5duwYANnZ2UyYMAG9Xs/IkSN56aWX1DpGo5Fly5YRHByMXq9n7969HYpbiN5KneOym3Vders64dXXUVp0okPalOieeeYZRowYwdq1ayktLW3Tjs1mM4mJibzzzjucOHGCyspKtm7d2qRMRUUFjz/+OFlZWeTl5ZGZmakm1bVr1xIREUFBQQGrV6/m4YcfBqBPnz68/vrrHD16lP379/Pyyy+TnZ0NQGpqKrW1tZw4cYK33nqLhIQEWbBRiHbIP1+Ns4Mduv7dY8Tlj4X6uMm9dKJD2pTodu7cyb/+9S+qq6u5/fbbiY+PZ+fOna3WOXjwIIMHDyY8PByAhIQE0tLSmpTZsWMHEydOxNfXF3t7e5YsWaKWSUtLIzExEYCZM2eSn59PWVkZoaGhhIWFAeDu7s6IESMoLi5uVicyMhIvLy8OHTrU1vdCiF4v/3wVIQPd0NpprB1KM2GD3Ci8eIWa+uY9Q0K0ps3X6IYOHcrTTz/NCy+8wJdffslDDz1EWFgY27dvb7G8wWDA399ffR4QEKAmpLaUuX6bTqfDYDA0qX/y5Em+/vprJkyY0OZjCiFaZjY3jLjsbgNRGoX6uGFW4OQFuZ9OtE+bEl1xcTF/+tOfCA0NZdu2bbz55psUFhbyr3/9i1//+tct1mlLl+GtdCuWl5dzzz338OKLL+Lp6dmu/SUnJxMeHq4+Ll++3OE4hLAVhsvXuFZvUlf17m7U1cal+1K0U5sS3ZQpU3B3d+eLL75g69atxMTEABAYGMijjz7aYh1/f/8mramioiJ0Ol2by+h0uibbDAYDfn5+AFy9epVZs2bxwAMPcO+997brmABJSUnk5uaqj/79+7flbRDCpuV1s6m/rtcYV945adGJ9mlToluzZg2PPfYY3t7e6mvvvfceAL/97W9brBMdHY3BYCA3NxeAjRs3EhcX16TM9OnTyczMpKSkBKPRyObNm9UycXFxpKSkAJCRkUFwcDDe3t7U19cTFxfHlClTeOSRR5rs78d1cnJyuHDhAmPGjGnLKQrR63WXVcVvxN3ZgcEeztKiE+3W5lGX1/vLX/7Sah2tVktKSgrx8fEEBQXh6urK4sWLSU9PVweMeHh4sG7dOmJiYggLCyM2NpZJkyYBsGLFCnJycggJCWHVqlVs2LABaLgdYdeuXXzwwQdERUURFRXFu+++C8DSpUtxcHAgODiYBQsWsHHjRjSa7ndRXYjuKP98FW5O9vh6OFs7lBsKHeQm99KJdtMorVzY2rt3L3v27GHDhg0kJSWpr1dUVLBz5051WH9PFx4errY8heitpr+whz6OWt57eIK1Q7mhZzOO8eqeUxz+81TcnB2sHY7oRlr7Hm+1RWc2mzEajZjNZurr69WHj49Ps1sFhBA9l9Fk5tSFK93uRvHrNY4ILSiV63Si7exb2xgbG0tsbCy/+MUvCA0N7aqYhBBdrLDsKnUmc7e9taBRYyLOP1fFmAAZRCbaptVE9/rrr3P//fer18Cu99RTT1kkKCFE1+ruA1EaBQ90RaOR1cZF+7Sa6Orr65v8KYSwTY0DPLrrrQWNnB20DPXqKyMvRbu0mugeeughAP70pz91STBCCOsoKK3Cs68j3q6O1g7lpkJ9XPnmdLm1wxA9SJtuL/jDH/5ARUUFZrOZu+++Gx8fH9555x1LxyaE6CJ556oI9XHtEbfjhPm4cbG6lrLqWmuHInqINiW6Dz/8EA8PD/7973/j5uZGdnZ2i/fWCSF6nlqjicKyq91+IEqjxrXp8s/LyEvRNm1KdHZ2DcU++eQT7r33Xnx9fS0alBCi65y6cAWTWekxiU5WGxft1aZEFxgYyK9+9Ss+/PBDpkyZwrVr12SdNyFsRHddbPVGhnr3xUGrkZGXos3alOjeeOMNpk6dys6dO3Fzc+PSpUs899xzlo5NCNEFGkdchg7sGYnOQWtH0ABX8mUqMNFGbUp0Li4uzJkzB2dnZ4qKijCZTOqCqkKIni3/fDU+7k549Ok5U2o1rjYuPUuiLVq9vaDRhg0bWLlyJZ6enur1Oo1GQ35+vkWDE0JYXv75qh5zfa5R2CA30r87y7nKGnw9XKwdjujm2pTo/va3v5GbmyuDUISwMVfrjBRdusrUcB9rh9IuoeradFWS6MRNtanrcvDgwZLkhLBB6vW5HjIQpZGMvBTt0aYWXVRUFHPmzGHevHk4OTmpry9cuNBigQkhLO9YSUOiCPd1t3Ik7aPr74KLg1ZWGxdt0qZEV11djZeXF3v27FFf02g0kuiE6OGOlVSitdMQPNDV2qG0i52dhlAfV2nRiTZpU6LbtGmTpeMQQljBsZJKggb0xdlBa+1Q2i3Ux43tOWcxmRW0dt1/6jJhPW26RnfmzBkWLFhATEwMAEeOHOGVV16xaGBCCMtSFIXj56oY0cO6LRuFDXKjpt5M8aWr1g5FdHNtSnQJCQnEx8dTWVkJwPDhw9mwYcNN6+3evRu9Xk9wcDCJiYmYTKZmZbZt20ZoaChBQUGsXLlSfb2yspLZs2cTEhJCdHQ0x44dU7fNnz+fAQMGEBwc3GRfqampeHl5ERUVRVRUFElJSW05PSF6JcPla1TXGntsolNHXkr3pbiJNiW6srIy4uPj1ZnN7e3tsbdvvdfTbDaTmJjIO++8w4kTJ6isrGTr1q1NylRUVPD444+TlZVFXl4emZmZZGVlAbB27VoiIiIoKChg9erVPPzww2q95cuXs3PnzhaPO2/ePLKzs8nOziY5ObktpydEr5Rb0vDDtacmuh+vNi5Ea9qU6JydnamqqlIT3dGjR3F2dm61zsGDBxk8eLA6g0pCQgJpaWlNyuzYsYOJEyfi6+uLvb09S5YsUcukpaWRmJgIwMyZM8nPz6esrAyAyZMn4+np2Y7TFEJc71hjouthtxY0GujmhIeLg7ToxE21KdGtWbOG6dOnU1RURFxcHNOmTWPt2rWt1jEYDPj7+6vPAwICKC4ubnOZ67fpdDoMBsNNY92+fTujRo1i6tSpHDx4sC2nJ0SvdKykEq++jgxwc7p54W5Io9EQ5uMmIy/FTbVp1GVsbCwfffQR+/fvR1EU/vd//xcvL69W67RlDrrOnqfu7rvv5r777sPFxYWsrCzmzZvH8ePHcXVtOnQ6OTm5Sbfm5cuXOzUOIXqCYyUNA1F6wmKrNxI6yJX/+6qYOqMZR/s2/W4XvVCbPhlHjx7lk08+4dq1awQGBt40yQH4+/s3acEVFRWh0+naXEan0zXZZjAY8PPza/WY3t7euLg0TAcUGxuLTqcjLy+vWbmkpCRyc3PVR//+/W96PkLYkurahqm/Rvj2zG7LRmE+bhjNCt9fvGLtUEQ31mqiq66uZurUqdx+++0888wzrFmzhnHjxjFjxgyuXm19SG90dDQGg4Hc3FwANm7cSFxcXJMy06dPJzMzk5KSEoxGI5s3b1bLxMXFkZKSAkBGRgbBwcF4e3u3esyzZ8+qfz969CiFhYUEBga2WkeI3ijvXM8eiNJIRl6Ktmg10T399NN4enpy5swZDh06RHZ2NmfOnMHT05Onn3661R1rtVpSUlKIj48nKCgIV1dXFi9eTHp6ujrIxMPDg3Xr1hETE0NYWBixsbFMmjQJgBUrVpCTk0NISAirVq1qcjvDrFmzGD9+PIWFheh0Op599lkA1q9fj16vJyoqiqVLl5KamiqtNSFakPvD1F82k+h+SNxCtESjtHKhTK/X8+WXX+Lm1rR7o7KykvHjx3P06FGLB9gVwsPD1ZanEL3BU+8f5p2vizn69PQef23r9mc+ZYSvG5uWjbV2KMKKWvseb/UTrtFomiU5AHf3nn0BW4jermHqL9cen+QARvp5cPhMpSzCKm6o1U+5o6Njh7YJIbovo8lM7tlKIvw8rB1Kp4jw8+BidS3nK2utHYroplq9vSA7O7vFhKYoCmaz2WJBCSEsp6C0mlqjmQidbSS6kX4N1xkPn6lgkEfrE1mI3qnVFp3ZbKaurq7Zo76+vsV5K4UQ3d/hMxVAQ5efLWhsmR754byEuF7P76AXQrTLkTMVaO00PW6x1RsZ6O7MQDcnSXTihiTRCdHLHD5TQchA1x65Bt2NRPh5qC1VIa4niU6IXsTWBqI0GunnQWlVLaWVNdYORXRDkuiE6EVsbSBKo8brjUfOSqtONCeJTohexNYGojRqbKEeNsgMKaI5SXRC9CKHDbY1EKWRj7sT3q5Ocp1OtEgSnRC9iC0ORIGGWZwi/Nxl5KVokSQ6IXoJo8nMsRLbG4jSaKSfB+cqayitkgEpoilJdEL0Ennnq2xyIEqjKP9+AHxXLK060ZQkOiF6iW+LygEYE2CbS1c1JrpDRZetG4jodiTRCdFLHCq6jLODHWGDevaq4jfi5erEUK8+fCuJTlxHEp0QvcShonIidf1w0Nruf/vRAf3JMVRgNMmk8+I/bPcTL4RQXb5Sx/cXr9hst2Wj0QH9uFpnIv98tbVDEd2IJDoheoFDxQ3deaMD+lk3EAsb7d+QyBvPVwiwcKLbvXs3er2e4OBgEhMTW1zaZ9u2bYSGhhIUFMTKlSvV1ysrK5k9ezYhISFER0dz7Ngxddv8+fMZMGAAwcHBTfZlNBpZtmwZwcHB6PV69u7da7mTE6IHOWTjA1EaDfd1w9nBjm9Pl1s7FNGNWCzRmc1mEhMTeeeddzhx4gSVlZVs3bq1SZmKigoef/xxsrKyyMvLIzMzk6ysLADWrl1LREQEBQUFrF69mocfflitt3z5cnbu3NnsmKmpqdTW1nLixAneeustEhISUBTFUqcoRI/xbdFl/D1dGODmZO1QLMpBa0ekXz9p0YkmLJboDh48yODBgwkPDwcgISGBtLS0JmV27NjBxIkT8fX1xd7eniVLlqhl0tLSSExMBGDmzJnk5+dTVlYGwOTJk/H09Gx2zB/XiYyMxMvLi0OHDlnqFIXoEUxmhe+KK9RuPVs3OqAfpy5cofxqnbVDEd2ExRKdwWDA399ffR4QEEBxcXGby1y/TafTYTAYbvmYQvQ2BaVVVNcaGWPj1+caNV6HbOyuFcJiia4tXYad3a3Y1v0lJycTHh6uPi5flm4OYbu+Lmz4fI8Z0jtadNFDG3p7viq8ZOVIRHdhsUTn7+/fpDVVVFSETqdrcxmdTtdkm8FgwM/P75aPCZCUlERubq766N+/d3wBiN7py1NluDrZ29yKBTfi7epE0IC+HDhVZu1QRDdhsUQXHR2NwWAgNzcXgI0bNxIXF9ekzPTp08nMzKSkpASj0cjmzZvVMnFxcaSkpACQkZFBcHAw3t7erR7zx3VycnK4cOECY8aM6exTE6LHUBSFA99fInpof+xt+Ebx640L9CLHUMHVOqO1QxHdgMU++VqtlpSUFOLj4wkKCsLV1ZXFixeTnp6uDhjx8PBg3bp1xMTEEBYWRmxsLJMmTQJgxYoV5OTkEBISwqpVq9iwYYO671mzZjF+/HgKCwvR6XQ8++yzACxduhQHBweCg4NZsGABGzduRKPRWOoUhej2vr94hQtVtdwe6GXtULrUuGGeGM2KXKcTAGgUGX9PeHi42vIUwpa89VURT753mPcf/imjbfweuh87V1HD7c9+yiOTg/nd1DBrhyO6QGvf472nL0OIXujAqTL6OGoZaaNr0N3IIA9nhnj14cvvZUCKkEQnhM1SFIUvT13itiH9bXoi5xsZN8yT7OJyauqbz8gkepfe9+kXopcounSVc5U1ve76XKNxw7yoM5rJLi63dijCyiTRCWGjvjjZMLz+9sDmswj1BuODGhL85ycuWjkSYW2S6ISwUXsKLuDmZE+krp+1Q7GKwf1cCB7oyp78C9YORViZJDohbJDRZGZfwUV+GuzVK6/PNYoJGUDOmQouX5F5L3uz3vs/QAgblnOmgsoaIzGhA6wdilX9LNQbRYF90n3Zq0miE8IGNXbXxYT07kR3+zAvHO3tpPuyl5NEJ4QN2pN/gWHeffH37GPtUKzKxVHL2KGe7C24KGtT9mKS6ISwMRVX68kuLicmpPW5YXuLn4V4c66yhoLSamuHIqxEEp0QNmZ3filmBWLDene3ZaPG9+HTY6VWjkRYiyQ6IWzMrtzz9HHU8tMgadEBhPm44e/pwq7cc9YORViJJDohbEit0cTuvAtMDBuAs4PW2uF0CxqNhqnhgzhUXE5pVY21wxFWIIlOCBvyxckyqmuNTAn3sXYo3crUcB8URboveytJdELYkH/nnkdrp2FymCS6H7ttSH88+zry76PSfdkbSaITwkaYzQqf5J7n9kBPPPo4WDucbsVea8edwwfy+YmGFq/oXSTRCWEjviq8RGlVLdP1g6wdSrc0feQg6kxmGZTSC0miE8JGfJh9Bq2dhpkRvtYOpVv6WcgA+vVx4MPss9YORXQxSXRC2IBao4mMw+eICfHGy9XJ2uF0S472dsyM8GVvwUUuVtdaOxzRhSya6Hbv3o1eryc4OJjExERMpuYr/W7bto3Q0FCCgoJYuXKl+nplZSWzZ88mJCSE6Ohojh07dtM6f/7zn/H19SUqKoqoqCj+8pe/WPL0hOg2svIuUHGtnntG+1k7lG7tnig/TGaFj3NKrB2K6EIWS3Rms5nExETeeecdTpw4QWVlJVu3bm1SpqKigscff5ysrCzy8vLIzMwkKysLgLVr1xIREUFBQQGrV6/m4YcfvmkdgKSkJLKzs8nOzm6SBIWwZR9mn8XFQSu3FdxE9JD++PVz4YPsM9YORXQhiyW6gwcPMnjwYMLDwwFISEggLS2tSZkdO3YwceJEfH19sbe3Z8mSJWqZtLQ0EhMTAZg5cyb5+fmUlZW1WkeI3ujylTp2HTvPNL0PfRztrR1Ot2Znp2Fu1GAOFZVzQua+7DUslugMBgP+/v7q84CAAIqLi9tc5vptOp0Og8Fw0/2+9tprREZGMm/ePAoKCjr9vITobtK+NVBnNPOLsQHWDqVHuO8nDd8fbxw4beVIRFexWKJry5IYHVk2o7U6y5cv5+TJk+Tk5LBgwQJmz57dYrnk5GTCw8PVx+XLl9sdhxDdgaIovHmgiOCBrowd5mntcHqEIV59iQkdQNo3Bq7VNR83IGyPxRKdv79/k5ZWUVEROp2uzWV0Ol2TbQaDAT8/v1brDBo0CAeHhhtl77vvPsrLyykrK2sWW1JSErm5ueqjf//+nXDGQnS9L06VceriFRaODUCj0Vg7nB5j0bgAKmuMfJQjtxr0BhZLdNHR0RgMBnJzcwHYuHEjcXFxTcpMnz6dzMxMSkpKMBqNbN68WS0TFxdHSkoKABkZGQQHB+Pt7d1qnbNn//OhzczMxMHBAU9P+ZUrbNfm/YU42dvx8zG6mxcWqjuHD2SQuzNbvjwtC7L2Aha7cq3VaklJSSE+Pp7a2lpiY2NZvHgx6enppKenk5KSgoeHB+vWrSMmJgaz2cz8+fOZNGkSACtWrGDRokWEhITg5ubGli1bAFqt88QTT3Do0CG0Wi1ubm6899578itX2KxTF6r5d+55fjluiEz51U72WjsWjx/Cup15fHGqTJY0snEaRX7OEB4errY8hegpnnzvMG8fLCLz8YkM8epr7XB6nIpr9Ux47jNGB/RjS8I4a4cjblFr3+MyM4oQPVBpVQ1p3xqYEeErSa6DPFwcWHR7AHsLLnLYUGHtcIQFSaITogdK/uwEdUYzv4oNsnYoPVrChGE42tuxPlNuRbJlkuiE6GGKL13lza+KmBXhy0g/D2uH06MNdHdm4dgAdh49z7dFcpuRrZJEJ0QP849d+ZgV+N3UUGuHYhP+a3Iwbk72PJtxTEZg2ihJdEL0IN+cvsR7h84wP1pH0ABXa4djE7xcnVg+MYiDhZfZcUTWqrNFkuiE6CGMJjMr3z+Ch4sDj08Ns3Y4NuX+CcPw93Th6e25VNXUWzsc0ckk0QnRQ7z++fccP1fFEzOGy5pznczFUcuaeyI4V1nDup151g5HdDJJdEL0AMdKKvnrznzGDvXkvmj/m1cQ7RYbOoB7ogaz5cvT7Cu4aO1wRCeSRCdEN1dTb+KRtw7h5GDH3+8bhZ2dzPZjKX+eo8fX3Znfvp3NhSpZhdxWSKITohtTFIX/fjeHgtJq/jIvAl3/PtYOyab16+PIi78YzeWrdTzy1iHqjGZrhyQ6gSQ6Ibqxlz87wfbvzvLAz4YxZ9Rga4fTK/xkqCdPTB/OF6fKeOr9w3LLgQ2Q5YiF6KY27y/k77vymTx8IE/MGGHtcHqVxJ8No/jyVf75xWkGujnx39PCZIL4HkwSnRDd0KbPv+fp7bmMG+bJ+oWj0cp1uS6l0Wj402w9F6pq2bD7JLVGM6tmjZBk10NJ16UQ3YjJrPD09qM8vT2XscM8eX3pT+jjKL9HrUFrp+GlX4xmzqjBbNz3Pb99O1tWJO+h5H+QEN3E2fJr/G5bNl+eusQ9UYN5Pj4SJ3uttcPq1Ry0dvzjvii8XZ14/fPvyT9fzcu/GE3wQJmVpieRFp0QVmYyK7xx4DTTX9jDN6cv8+SM4fzjvihJct2E1k7DH2eH84/7RvH9xWpmvriX5MwTMiKzB5EWnRBWYjYr/Dv3PC98ks/xc1UMH+TGX+8dJSsSdFPzRuu4LcCTJ97LYd3OPN76qojf3BnCvNF+2GulzdCdyQrjyArjomuVVtawPaeEN748zamLV/Dq68jvpoay4CcBMuikB1AUhfTvzvKPXfkUll1lkLszC8b6Mz/an8H9XKwdXq9l1RXGd+/ejV6vJzg4mMTEREym5hdzt23bRmhoKEFBQaxcuVJ9vbKyktmzZxMSEkJ0dDTHjh27pTpCWIPRZCa7uJwNu0/wi9e+5PZnP+X/+ygXBVhzz0g+f2Iyi8YNkSTXQ2g0GuZG+bHrd7Gsi4/Ex92JFz4p4KfPfcac9ft46dMCDhZeoqZeBq50FxZt0ZnNZkJDQ0lPTyc8PJz58+cza9YslixZopapqKggIiKCAwcOMGDAAGJiYnj22WeJjY1l1apVmM1mnnnmGTIyMli3bh2ZmZkdqtMaadGJW6UoCpU1Rs6WX6Ok4hpFZVfJO1/FsZIq8s5Vce2HL71B7s5M0/swd7Qfo/37yXB1G3HkTAXbc86yK/c8py5cAcBBqyF8sAdhPq4EDWh46DxdGOjmTP8+DvJv38la+x63aKI7cOAA//3f/82ePXsA2LlzJ8nJyaSnp6tl3n77bT7++GP++c9/AvDqq69y9OhRXnrpJUaMGMHHH39MYGAgAH5+fuTk5PDJJ5+0u46Xl9cN47zVRHfkTAW1TS5MN31Lr3+Hr3/Dm22/7oWblm9Wonml9u7j5jG3HmPz4zePsfl539oxm3+S2//vYDSbqTOaqTcp1BlN1JkantcZzdT+8PcrtUYqrtVTea3hz4pr9ZRfrePKdUPPHbV2BA90ZbivG2MC+vPTIC+GefeVLzgbV3jxCl+fvsy3RZfJLirn1MVqauqbDlxx1NoxwM0Jz76OuDnb4+pkj6uzPW4//Omo1eJgr8FRa4eD1g5H+4Y/HbQaHLR22GkaWpYawE6jQaNp+JMf/rTTgIaGP//zWkO5tmjrJ7TtH+XWC9ppYHRA/7burEWtfY9bdDCKwWDA3/8/M60HBARQXFx80zI7duxocZtOp8NgMHSoTmuJ7lY9+M+vOVtRY7H9i+6lj6MWd2cHPFwccHexZ3A/ZzxcHPH1cGZwPxcG93NG19+FIV59cZBBCr3OUO++DPXuS/xtOqBh0NGZ8mucvFBNSUUN5ytrKK2qpbSyhktX6iirruN02VUqa+qprjW28IPN9jnZ25G3ZobF9m/RRNeWxmJHGpS32ghNTk4mOTlZfX758uVb2t/Tc0c264+//peO5rpfNM230+r260vcrH5DGU2rZZrt4yYx3+Rpu4/X0jFuel63/L62Xl5r1/Ar2sn+P7+iHX/4u6O24SGrB4j2sLPT4O/ZB3/Pm0/IrSgK1+pN1BsVak0m6k0K9Uaz2rNQb2robTArCorSUF4B9bn6OgpmM822tUVbv15b7Enq4P7sLNzLYdFE5+/v36QFV1RUhE6na1YmJyenxTI6nY7i4mK1G9JgMODn59ehOj+WlJREUlKS+jw8PPyWznNKuM8t1RdCCGj4IdbH0R4cARysHY7NsGi/SnR0NAaDQe033bhxI3FxcU3KTJ8+nczMTEpKSjAajWzevFktExcXR0pKCgAZGRkEBwfj7e3doTpCCCF6J4u26LRaLSkpKcTHx1NbW0tsbCyLFy8mPT2d9PR0UlJS8PDwYN26dcTExGA2m5k/fz6TJk0CYMWKFSxatIiQkBDc3NzYsmULQIfqCCGE6J3khnHk9gIhhOjprHrDuBBCCGFNkuiEEELYNEl0QgghbJokOiGEEDZNBqMA7u7uze7v6+4uX75M//63NmVObyPvWfvJe9Z+8p61X2e8ZwaDgcrKyha3SaLroWSkaPvJe9Z+8p61n7xn7Wfp90y6LoUQQtg0SXRCCCFsmiS6HurHc3WKtpH3rP3kPWs/ec/az9LvmVyjE0IIYdOkRSeEEMKmSaLrQYqLi7nzzjsZMWIEer2eJ5980toh9ShJSUnY21t0HnObceXKFZYsWUJYWBjDhw/n1VdftXZI3d7WrVuJjIwkKiqKn/3sZ+Tl5Vk7pG7pN7/5DTqdrtn/xSeeeILg4GBCQ0NJS0vr1GNKoutB7O3tef755zl27BiHDh1i3759fPjhh9YOq0fYu3cv1dXV1g6jx3jsscfQ6/Xk5eVx7Ngx5s2bZ+2QurWrV6/ym9/8hs8++4zs7GwWLVrEqlWrrB1Wt3Tvvffy9ddfN3ntk08+Yf/+/eTl5ZGZmcmjjz7aqf9fJdH1IL6+vkRHRwPg6OjI6NGjKSoqsnJU3V9tbS1PPPEEf/3rX60dSo9QVVVFeno6v/vd74CGxUAHDhxo5ai6N7PZjKIo6pdzRUUFvr6+Vo6qe7rjjjsYNGhQk9fS0tJYunQpWq0WPz8/JkyYwL///e9OO6b04/RQly5d4oMPPujUD4OtWr16NQkJCQwYMMDaofQIp06dwsfHh1//+td89dVXDBkyhBdeeIEhQ4ZYO7Ruy9XVlfXr1zNy5Eg8PDzw8PDgiy++sHZYPYbBYGiyKHdAQADFxcWdtn9p0fVAdXV1xMfH85vf/Ibhw4dbO5xuLScnhwMHDrBs2TJrh9JjGI1GsrOziY+P59tvv2X27Nncf//91g6rW6uvr2fDhg0cPHiQM2fOEB8fz+9//3trh9VjWHrwvyS6HsZkMrFw4UKioqJ47LHHrB1Ot/f555+Tm5vLsGHDGDp0KCaTiaFDh95wTjwBOp0OLy8v7rrrLgAWLFjAN998Y+Wourfs7GwURWHEiBFAw3u2f/9+K0fVc/j7+zdpwRUVFXXq/MOS6HqYBx98EDc3N/72t79ZO5Qe4Ve/+hVnz56lsLCQwsJCtFothYWFuLu7Wzu0bsvHxwe9Xs+3334LwK5du9Dr9VaOqnvT6XTk5eVx5swZoOE9Cw8Pt3JUPUdcXBypqamYTCbOnDnDvn37mDp1aqftX67R9SCff/45r7/+OiNHjmT06NEA3H///TzyyCNWjkzYmldeeYWEhASuXLlCv379SElJsXZI3Zqvry/PPfccU6ZMwcHBgQEDBvD6669bO6xu6aGHHuLjjz/GZDKh0+mYO3cuycnJ7Nq1i9DQUOzs7Pj73/+Om5tbpx1TZkYRQghh06TrUgghhE2TRCeEEMKmSaITQghh0yTRCSGEsGmS6IQQQtg0SXRCCCFsmiQ60Wa2tsTNBx98QE5OTofqTp06Vb05eOjQoRgMhg7H8dxzzxEUFIRGo2m2nxdffJGQkBCCg4NJTk7u8DE6aunSpWzdurXLj9vbPffcc/zzn/+0dhg2QxKd6FaMRmOX7aujie7TTz/Fz88PPz+/jobWxJ133slnn33WbNLkgoICNmzYwKFDhzh06BAvvPAC33//faccsyWd+d735Bha01XxJSUlsW7dOovPAdlbSKITHWJvb8/q1auJiooiMjKS/Px8FEVh2LBhaksHYNasWeoKCy+//DJjx45l1KhRJCYmUl9fDzS0iJ544gmio6N5+eWXef/999UFLCMjIzl9+jQAu3fv5o477uC2225j6tSpLc5unpqayt133820adMYOXIkAPHx8URHRzNy5EgeffRRADIzM0lPT2flypVERUWxf/9+rl27xvLlyxk7diwRERGsX7++xXPfvHkz8fHxLW7bt28f0dHRREZGMmvWLM6dOwc0rDYxc+ZM9Ho9P//5zxk3bhz79u0D4Cc/+UmLKwO899573Hfffbi6uuLm5kZ8fDzvv/9+kzJms5nBgwdTW1uL2WzG09NTbfn9+c9/Vs/h/fffZ9SoUURERLBw4UKqqqqAhhbbQw89xPjx41myZAk1NTUsXryY4cOHM23aNC5cuKAe649//CN6vZ7IyEimTJnS4vnb29vz1FNPERERwZgxYzh8+LAa58qVKxk7diyRkZE89dRTTeqsWrWK0aNH89577zXZ3zfffMOECRMYPXo0UVFRTVbruNGxUlNTmT17NnfddRdhYWEsWbKEuro6AE6fPs3dd99NdHQ00dHRZGVltek4P45v06ZNjB07ltGjRzNx4kT1x8fu3buZMGECCxcuJDw8nBkzZlBTUwPAxYsXue+++4iMjCQyMpK33noLaJh0fPLkydx2223ccccd6jm4ubkRFBTE3r17W3yfRTspQrSRVqtV/w4ob731lqIoirJu3TolMTFRURRF+f3vf6/89a9/VRRFUS5evKjodDrFaDQqn376qfLLX/5SMZlMiqIoSlJSkrJhwwZFURRlyJAhyh/+8Ad13xEREcrZs2cVRVGUq1evKteuXVPKysqU8ePHK+Xl5YqiKMq2bduU+fPnN4tx06ZNire3t3Lu3Dn1tYsXLyqKoigmk0mZO3eusmPHDkVRFGXJkiXKli1b1HJ/+MMflFdffVVRFEWpqalRbrvtNuXo0aPNjjF06NAm+x8yZIhSXFys1NTUKDqdTvnmm28URVGUv/71r2qMjzzyiPLUU08piqIo2dnZilarVfbu3dtkv437afTrX/9aee2119TnGzZsUH772982i2fOnDlKVlaWkp2drYwdO1a59957FUVRlNjYWOXw4cNKSUmJMmjQIOX06dPqflesWKG+B5MnT1bq6uoURVGUv//978ovfvELxWw2K0VFRYq7u7uyZcsWpaysTBkxYoT673fp0qVmcShKw+ciOTlZURRF+eCDD5TbbrtNURRF2bhxo3r+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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 86;\n", - " var nbb_unformatted_code = \"prior = surv_model.make_pmf()\\nprior.plot(label=\\\"prior\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Density\\\",\\n)\";\n", - " var nbb_formatted_code = \"prior = surv_model.make_pmf()\\nprior.plot(label=\\\"prior\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Density\\\",\\n)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2149,37 +1072,9 @@ }, { "cell_type": "code", - "execution_count": 87, + "execution_count": 38, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 87;\n", - " var nbb_unformatted_code = \"ps = 1 / np.power(10, prior.qs)\";\n", - " var nbb_formatted_code = \"ps = 1 / np.power(10, prior.qs)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "ps = 1 / np.power(10, prior.qs)" ] @@ -2188,13 +1083,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Now suppose that in a given day, you read or hear 10,000 words in a context where you would notice if you heard a new word for the first time.\n", + "Now suppose that in a given day, you read or hear 10,000 words in a context where you would notice if you heard a word for the first time.\n", "Here's the number of words you would hear in 50 years." ] }, { "cell_type": "code", - "execution_count": 88, + "execution_count": 39, "metadata": {}, "outputs": [ { @@ -2203,36 +1098,9 @@ "182500000" ] }, - "execution_count": 88, + "execution_count": 39, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 88;\n", - " var nbb_unformatted_code = \"words_per_day = 10_000\\ndays = 50 * 365\\nk = days * words_per_day\\nk\";\n", - " var nbb_formatted_code = \"words_per_day = 10_000\\ndays = 50 * 365\\nk = days * words_per_day\\nk\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2246,48 +1114,19 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Now, what's the probability that you fail to hear a word in `k` attempts and then hear it on the next attempt?\n", - "We can answer that with the negative binomial distribution, which computes the probability of getting the `n`th success after `k` failures." + "Now, what's the probability that you fail to encounter a word in `k` attempts and then encounter it on the next attempt?\n", + "We can answer that with the negative binomial distribution, which computes the probability of getting the `n`th success after `k` failures, for a given probability -- or in this case, for a sequence of possible probabilities." ] }, { "cell_type": "code", - "execution_count": 89, + "execution_count": 40, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 89;\n", - " var nbb_unformatted_code = \"from scipy.stats import nbinom\\n\\nn = 1\\n\\nlikelihood = nbinom.pmf(k, n, ps)\";\n", - " var nbb_formatted_code = \"from scipy.stats import nbinom\\n\\nn = 1\\n\\nlikelihood = nbinom.pmf(k, n, ps)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.stats import nbinom\n", "\n", "n = 1\n", - "\n", "likelihood = nbinom.pmf(k, n, ps)" ] }, @@ -2300,45 +1139,18 @@ }, { "cell_type": "code", - "execution_count": 90, + "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "1.3468326547799861e-11" + "1.3581072166387401e-11" ] }, - "execution_count": 90, + "execution_count": 41, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 90;\n", - " var nbb_unformatted_code = \"posterior = prior * likelihood\\nposterior.normalize()\";\n", - " var nbb_formatted_code = \"posterior = prior * likelihood\\nposterior.normalize()\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2355,45 +1167,18 @@ }, { "cell_type": "code", - "execution_count": 91, + "execution_count": 42, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 91;\n", - " var nbb_unformatted_code = \"prior.plot(alpha=0.5, label=\\\"prior\\\")\\nposterior.plot(label=\\\"posterior\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Density\\\",\\n)\";\n", - " var nbb_formatted_code = \"prior.plot(alpha=0.5, label=\\\"prior\\\")\\nposterior.plot(label=\\\"posterior\\\")\\ndecorate(\\n xlabel=\\\"Inverse rate (log10 words per appearance)\\\",\\n ylabel=\\\"Density\\\",\\n)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2412,45 +1197,17 @@ "If you go 50 years without hearing a word, that suggests that it is a rare word, and the posterior distribution reflects that logic.\n", "\n", "The posterior distribution represents a range of possible values for the inverse rate of the word you heard.\n", - "Now we can use it to answer the question we started with: what is the probability of hearing the same word again on the same day -- that is, within the next 10,000 words you hear.\n", + "Now we can use it to answer the question we started with: what is the probability of hearing the same word again on the same day -- that is, within the next 10,000 words you hear?\n", "\n", - "To answer that, we can use the survival function of the binomial distribution to compute the probability of more than 0 successes in the next `n_pred` attempts.\n", + "To answer that, we can use the survival function of the [binomial distribution](https://allendowney.github.io/ThinkBayes2/chap18.html?highlight=binomial#binomial-likelihood) to compute the probability of more than 0 successes in the next `n_pred` attempts.\n", "We'll compute this probability for each of the `ps` that correspond to the inverse rates in the posterior." ] }, { "cell_type": "code", - "execution_count": 92, + "execution_count": 43, "metadata": {}, - "outputs": [ - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 92;\n", - " var nbb_unformatted_code = \"from scipy.stats import binom\\n\\nn_pred = words_per_day\\nps_pred = binom.sf(0, n_pred, ps)\";\n", - " var nbb_formatted_code = \"from scipy.stats import binom\\n\\nn_pred = words_per_day\\nps_pred = binom.sf(0, n_pred, ps)\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from scipy.stats import binom\n", "\n", @@ -2462,50 +1219,23 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "And we can use the probabilities in the posterior to compute the expected value." + "And we can use the probabilities in the posterior to compute the expected value -- by the law of total probability, the result is the probability of hearing the same word again within a day." ] }, { "cell_type": "code", - "execution_count": 93, + "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "(0.00016010294670308533, 6245.981230155142)" + "(0.00016009921991573168, 6246.1266240169725)" ] }, - "execution_count": 93, + "execution_count": 44, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "application/javascript": [ - "\n", - " setTimeout(function() {\n", - " var nbb_cell_id = 93;\n", - " var nbb_unformatted_code = \"p = np.sum(posterior * ps_pred)\\np, 1 / p\";\n", - " var nbb_formatted_code = \"p = np.sum(posterior * ps_pred)\\np, 1 / p\";\n", - " var nbb_cells = Jupyter.notebook.get_cells();\n", - " for (var i = 0; i < nbb_cells.length; ++i) {\n", - " if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n", - " if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n", - " nbb_cells[i].set_text(nbb_formatted_code);\n", - " }\n", - " break;\n", - " }\n", - " }\n", - " }, 500);\n", - " " - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -2517,9 +1247,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The chance of hearing the same word again within a day is about 1 in 6000.\n", - "With all of the assumptions we made in this calculation, there's no reason to be more precise than that.\n", + "The result is about 1 in 6000.\n", "\n", + "With all of the assumptions we made in this calculation, there's no reason to be more precise than that.\n", "And as I mentioned at the beginning, we should probably not take this conclusion to seriously.\n", "If you hear a word for the first time after 50 years, there's a good chance the word is \"having a moment\", which greatly increases the chance you'll hear it again.\n", "I can't think of why chartism might be in the news at the moment, but maybe this post will go viral and make it happen." @@ -2543,6 +1273,7 @@ } ], "metadata": { + "celltoolbar": "Tags", "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python",