{ "metadata": { "name": "", "signature": "sha256:6ca7559e1b8660ea67cc45b547302194b7aa709bf44c51b1e2736b5dc6322d3f" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": { "internals": { "frag_number": 1, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Project: Target Marketing in Banking" ] }, { "cell_type": "markdown", "metadata": { "internals": { "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "-" } }, "source": [ "Metis Data Science Bootcamp, New York City, Feb 2015\n", "\n", "© Frederik Durant" ] }, { "cell_type": "heading", "level": 1, "metadata": { "internals": { "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Business questions" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 3, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "-" } }, "source": [ "A bank wants to run a targeted marketing campaign to **sell a term deposit product**.\n", "\n", "Given a certain **campaign budget**:\n", "\n", "- **Which customers** should it target?\n", "\n", "- In **what order**?\n", "\n", "- Is it wise to spend the **complete** campaign budget?\n", "\n", "The bank has a database of 41K past customer call records, indicating successful and failed sales of this product.\n", "\n" ] }, { "cell_type": "heading", "level": 1, "metadata": { "internals": { "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Technical assignment" ] }, { "cell_type": "markdown", "metadata": { "internals": {}, "slideshow": { "slide_type": "-" } }, "source": [ "Using the database, build a model to:\n", "\n", "- **predict** which customer will buy a term deposit product\n", "\n", "- **rank** customers by their propensity to buy the product\n", "\n", "To evaluate model performance, produce for each machine learning algorithm:\n", "\n", "- an [ROC](http://en.wikipedia.org/wiki/Receiver_operating_characteristic) curve\n", "\n", "- a [LIFT][lift] curve\n", "\n", "- a PROFIT curve\n", "\n", "[lift]: http://en.wikipedia.org/wiki/Lift_(data_mining)" ] }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 3 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Additional learning goals" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "- maximally use D3.js and interactive visualizations\n", "\n", "- use a shared MySQL database as the data source" ] }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Data and reference material" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "[Bank Marketing data set](https://archive.ics.uci.edu/ml/datasets/Bank+Marketing)" ] }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Code" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "[Project mcnulty_banking at GitHub](https://github.com/fdurant/mcnulty_banking)" ] }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Literature" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "skip" } }, "source": [ "- Chakarin Vajiramedhin and Anirut Suebsing: [Feature Selection with Data Balancing for Prediction of Bank Telemarketing](http://www.m-hikari.com/ams/ams-2014/ams-113-116-2014/vajiramedhinAMS113-116-2014.pdf)\n", "\n", "- Sérgio Moro, Paulo Cortez and Paulo Rita: [A Data-Driven Approach to Predict the Success of Bank Telemarketing](http://repositorium.sdum.uminho.pt/xmlui/bitstream/handle/1822/30994/dss-v3.pdf?sequence=1)" ] }, { "cell_type": "heading", "level": 1, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Data preparation & loading" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "We use the [bank-additional.zip](https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank-additional.zip) data set, unchanged. For pedagogical reasons, we were asked to first load the data in a MySQL database running on a virtual server at [DigitalOcean](https://www.digitalocean.com). This involved writing a [DB schema](https://github.com/fdurant/mcnulty_banking/blob/master/data/bank-additional/bank-additional-schema.sql) as well as a [load command](https://github.com/fdurant/mcnulty_banking/blob/master/data/bank-additional/bank-additional-load-data.sql) in SQL.\n", "\n", "Let's check if the data are readable from there:" ] }, { "cell_type": "code", "collapsed": true, "input": [ "import pymysql\n", "import credentials\n", "\n", "db = pymysql.connect(host=credentials.host,\n", " user=credentials.user,\n", " passwd=credentials.password,\n", " db='bank')\n", "\n", "cursor = db.cursor()\n", "\n", "cursor.execute(\"SELECT * FROM bank_full LIMIT 3\")\n", "for i in cursor.fetchall():\n", " print i\n", "\n", "cursor.close()\n", "db.close()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "(56, 'housemaid', 'married', 'basic.4y', 'no', 'no', 'no', 'telephone', 'may', 'mon', 261, 1, 999, 0, 'nonexistent', 1.1, 93.994, -36.4, 4.857, 5191.0, 'no')\n", "(57, 'services', 'married', 'high.school', 'unknown', 'no', 'no', 'telephone', 'may', 'mon', 149, 1, 999, 0, 'nonexistent', 1.1, 93.994, -36.4, 4.857, 5191.0, 'no')\n", "(37, 'services', 'married', 'high.school', 'no', 'yes', 'no', 'telephone', 'may', 'mon', 226, 1, 999, 0, 'nonexistent', 1.1, 93.994, -36.4, 4.857, 5191.0, 'no')\n" ] } ], "prompt_number": 14 }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 7 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Now that we know the database connection is up and running, let's read our data directly into a DataFrame:" ] }, { "cell_type": "code", "collapsed": true, "input": [ "import pymysql\n", "import credentials\n", "import pandas.io.sql as psql\n", "db = pymysql.connect(host=credentials.host,\n", " user=credentials.user,\n", " passwd=credentials.password,\n", " db='bank')\n", "query = \"SELECT * FROM bank_full;\"\n", "bankDF = psql.read_sql(query, con=db)\n", "db.close()\n", "print \"Number of database records read: %d\" % len(bankDF)\n", "#print bankDF.columns\n", "bankDF.head()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 18, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Number of database records read: 41188\n" ] }, { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
agejobmaritaleducationbank_defhousingloancontactcontact_monthday_of_week...campaignpdayspreviouspoutcomeemp_var_ratecons_price_idxcons_conf_idxeuribor3mnr_employedy
0 56 housemaid married basic.4y no no no telephone may mon... 1 999 0 nonexistent 1.1 93.994-36.4 4.857 5191 no
1 57 services married high.school unknown no no telephone may mon... 1 999 0 nonexistent 1.1 93.994-36.4 4.857 5191 no
2 37 services married high.school no yes no telephone may mon... 1 999 0 nonexistent 1.1 93.994-36.4 4.857 5191 no
3 40 admin. married basic.6y no no no telephone may mon... 1 999 0 nonexistent 1.1 93.994-36.4 4.857 5191 no
4 56 services married high.school no no yes telephone may mon... 1 999 0 nonexistent 1.1 93.994-36.4 4.857 5191 no
\n", "

5 rows \u00d7 21 columns

\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ " age job marital education bank_def housing loan contact \\\n", "0 56 housemaid married basic.4y no no no telephone \n", "1 57 services married high.school unknown no no telephone \n", "2 37 services married high.school no yes no telephone \n", "3 40 admin. married basic.6y no no no telephone \n", "4 56 services married high.school no no yes telephone \n", "\n", " contact_month day_of_week ... campaign pdays previous poutcome \\\n", "0 may mon ... 1 999 0 nonexistent \n", "1 may mon ... 1 999 0 nonexistent \n", "2 may mon ... 1 999 0 nonexistent \n", "3 may mon ... 1 999 0 nonexistent \n", "4 may mon ... 1 999 0 nonexistent \n", "\n", " emp_var_rate cons_price_idx cons_conf_idx euribor3m nr_employed y \n", "0 1.1 93.994 -36.4 4.857 5191 no \n", "1 1.1 93.994 -36.4 4.857 5191 no \n", "2 1.1 93.994 -36.4 4.857 5191 no \n", "3 1.1 93.994 -36.4 4.857 5191 no \n", "4 1.1 93.994 -36.4 4.857 5191 no \n", "\n", "[5 rows x 21 columns]" ] } ], "prompt_number": 15 }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 18, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Most of our models can't handle the categorical fields, so our next step is to convert them to dummy numerical variables." ] }, { "cell_type": "code", "collapsed": true, "input": [ "import pandas as pd\n", "import numpy as np\n", "tmpDF = bankDF.copy()\n", "tmpDF.y.replace(to_replace=['yes','no'], value=[1,0], inplace=True)\n", "\n", "# Delete the field(s) unknown before the call is made\n", "nonAvailableFields = ['duration']\n", "for field in nonAvailableFields:\n", " tmpDF.drop(field, axis=1, inplace=True)\n", "\n", "# Key: categorical field name\n", "# Value: list of abbreviation and post-dummification redundant field\n", "categoricalFields = {'job':['job','unknown'],\n", " 'marital':['mar','unknown'],\n", " 'education':['ed','unknown'],\n", " 'bank_def':['def','unknown'],\n", " 'housing':['h','unknown'],\n", " 'loan':['loan','unknown'],\n", " 'contact':['cntct','telephone'],\n", " 'contact_month':['cntct',None], # Because 'jan' and 'feb' are missing in the data, despite being plausible\n", " 'day_of_week':['dow','fri'], # Even though 'sat' and 'sun' are missing, these are not plausible values\n", " 'poutcome':['pout','nonexistent'],\n", " }\n", "# Convert all categorical fields in dummy numerical ones\n", "# AND delete one dummified field because it contains redundant information\n", "for (categoricalField, value) in categoricalFields.iteritems():\n", " (prefix, dummifiedRedundantField) = value\n", " tmpDF = pd.concat([tmpDF, pd.get_dummies(tmpDF[categoricalField], prefix=prefix)], axis=1)\n", " if dummifiedRedundantField:\n", " tmpDF.drop(\"%s_%s\" % (prefix, dummifiedRedundantField), axis=1, inplace=True)\n", "\n", "# of course, also delete the categorical fields\n", "for (categoricalField,_) in categoricalFields.iteritems():\n", " tmpDF.drop(categoricalField, axis=1, inplace=True)\n", "bankDF2 = tmpDF.copy()\n", "#print bankDF2.columns\n", "bankDF2.head()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 20, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
agecampaignpdayspreviousemp_var_ratecons_price_idxcons_conf_idxeuribor3mnr_employedy...ed_illiterateed_professional.courseed_university.degreeloan_noloan_yesdef_nodef_yesmar_divorcedmar_marriedmar_single
0 56 1 999 0 1.1 93.994-36.4 4.857 5191 0... 0 0 0 1 0 1 0 0 1 0
1 57 1 999 0 1.1 93.994-36.4 4.857 5191 0... 0 0 0 1 0 0 0 0 1 0
2 37 1 999 0 1.1 93.994-36.4 4.857 5191 0... 0 0 0 1 0 1 0 0 1 0
3 40 1 999 0 1.1 93.994-36.4 4.857 5191 0... 0 0 0 1 0 1 0 0 1 0
4 56 1 999 0 1.1 93.994-36.4 4.857 5191 0... 0 0 0 0 1 1 0 0 1 0
\n", "

5 rows \u00d7 54 columns

\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 16, "text": [ " age campaign pdays previous emp_var_rate cons_price_idx \\\n", "0 56 1 999 0 1.1 93.994 \n", "1 57 1 999 0 1.1 93.994 \n", "2 37 1 999 0 1.1 93.994 \n", "3 40 1 999 0 1.1 93.994 \n", "4 56 1 999 0 1.1 93.994 \n", "\n", " cons_conf_idx euribor3m nr_employed y ... ed_illiterate \\\n", "0 -36.4 4.857 5191 0 ... 0 \n", "1 -36.4 4.857 5191 0 ... 0 \n", "2 -36.4 4.857 5191 0 ... 0 \n", "3 -36.4 4.857 5191 0 ... 0 \n", "4 -36.4 4.857 5191 0 ... 0 \n", "\n", " ed_professional.course ed_university.degree loan_no loan_yes def_no \\\n", "0 0 0 1 0 1 \n", "1 0 0 1 0 0 \n", "2 0 0 1 0 1 \n", "3 0 0 1 0 1 \n", "4 0 0 0 1 1 \n", "\n", " def_yes mar_divorced mar_married mar_single \n", "0 0 0 1 0 \n", "1 0 0 1 0 \n", "2 0 0 1 0 \n", "3 0 0 1 0 \n", "4 0 0 1 0 \n", "\n", "[5 rows x 54 columns]" ] } ], "prompt_number": 16 }, { "cell_type": "heading", "level": 1, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 20, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Model creation" ] }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 20 }, "slideshow": { "slide_type": "-" } }, "source": [ "Shared settings and initializations" ] }, { "cell_type": "code", "collapsed": true, "input": [ "%matplotlib inline\n", "import sys\n", "from sklearn.cross_validation import cross_val_score, KFold\n", "from sklearn.metrics import roc_auc_score\n", "from sklearn import preprocessing\n", "from matplotlib import pyplot as plt\n", "from math import log10\n", "from time import sleep\n", "\n", "X_values = bankDF2.copy()\n", "X_values.drop('y', axis=1, inplace=True)\n", "y_values = bankDF2['y']\n", "\n", "# Scale the X values\n", "X_values_scaled = preprocessing.scale(X_values.astype(float), copy=False)\n", "\n", "scorerType = 'roc_auc'\n", "\n", "nrCrossValidationFolds=10\n", "# We MUST shuffle, because the data seem to be somehow ordered by date,\n", "# resulting in grouped rows of similar socio-economic value combinations!!!\n", "cvGenerator = KFold(len(X_values), n_folds=nrCrossValidationFolds, shuffle=True) \n", "\n", "bestLogCValue = None\n", "bestKValue = None\n", "bestNrEst = None\n", "bestMaxFeat = None\n", "\n", "print \"%d columns:\" % len(X_values.columns), [str(c) for c in X_values.columns]\n", "print \"%d values:\" % len(X_values_scaled[0]), X_values_scaled[0]" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "53 columns: ['age', 'campaign', 'pdays', 'previous', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx', 'euribor3m', 'nr_employed', 'job_admin.', 'job_blue-collar', 'job_entrepreneur', 'job_housemaid', 'job_management', 'job_retired', 'job_self-employed', 'job_services', 'job_student', 'job_technician', 'job_unemployed', 'cntct_cellular', 'pout_failure', 'pout_success', 'dow_mon', 'dow_thu', 'dow_tue', 'dow_wed', 'cntct_apr', 'cntct_aug', 'cntct_dec', 'cntct_jul', 'cntct_jun', 'cntct_mar', 'cntct_may', 'cntct_nov', 'cntct_oct', 'cntct_sep', 'h_no', 'h_yes', 'ed_basic.4y', 'ed_basic.6y', 'ed_basic.9y', 'ed_high.school', 'ed_illiterate', 'ed_professional.course', 'ed_university.degree', 'loan_no', 'loan_yes', 'def_no', 'def_yes', 'mar_divorced', 'mar_married', 'mar_single']\n", "53 values: [ 1.53303429 -0.56592197 0.1954139 -0.34949428 0.64809227 0.72272247\n", " 0.88644656 0.71245988 0.33167991 -0.58202282 -0.53831699 -0.19143021\n", " 6.15277204 -0.2764353 -0.2087573 -0.18903213 -0.3265564 -0.1473267\n", " -0.44244927 -0.15887166 -1.31826996 -0.3392905 -0.1857 1.95899952\n", " -0.51458089 -0.49439422 -0.4960667 -0.26127446 -0.42007603 -0.06662113\n", " -0.45925282 -0.38504233 -0.11590677 1.41115463 -0.33253245 -0.13319736\n", " -0.11846175 1.10081447 -1.04887691 2.97708361 -0.24274754 -0.41474269\n", " -0.54809999 -0.0209096 -0.38191849 -0.64753149 0.46173139 -0.42287213\n", " 0.51371278 -0.00853476 -0.35509663 0.80763764 -0.62493754]\n" ] } ], "prompt_number": 17 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Logistic regression" ] }, { "cell_type": "code", "collapsed": true, "input": [ "from sklearn.linear_model import LogisticRegression\n", "\n", "cValues = [pow(10,(x-10)) for x in range(20)]\n", "#print \"cValues = \", cValues \n", "\n", "# selects weights inversely proportional to class frequencies in the training set\n", "# See http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html\n", "#classWeight = 'auto'\n", "classWeight = None\n", "\n", "estimators = []\n", "scoreList = []\n", "for i in range(len(cValues)):\n", " c = cValues[i]\n", " print >> sys.stderr, \"(%d/%d) Building logres model for C value %1.15f ...\" % (i+1,len(cValues),c),\n", " estimator = LogisticRegression(C=c,class_weight=classWeight)\n", " print >> sys.stderr, \"applying it ...\",\n", " scores = cross_val_score(estimator, X_values_scaled, y=y_values, scoring=scorerType, cv=cvGenerator, n_jobs=1)\n", " estimators.append(estimator)\n", " scoreList.append((scores.mean(),scores.std()))\n", " print >> sys.stderr, \"done\"\n", "sleep(1)\n", "\n", "print \"scoreList = \", scoreList\n", "meanScores = [x[0] for x in scoreList]\n", "\n", "bestModelIndex = meanScores.index(max(meanScores))\n", "print \"best logres model has:\"\n", "print \"%s score: %2.2f%% (+/- %2.2f%%)\" % (scorerType, scoreList[bestModelIndex][0] * 100, scoreList[bestModelIndex][1] * 100)\n", "bestCValue = cValues[bestModelIndex]\n", "bestLogCValue = log10(bestCValue)\n", "print \"C value: \", bestCValue\n", "print \"log10(C) value: \", bestLogCValue\n", "\n", "fig = plt.figure()\n", "plt.plot([log10(c) for c in cValues],[x[0] for x in scoreList], 'o-'\u001c", ", color='g', label='mean')\n", "plt.fill_between([log10(c) for c in cValues], [x[0]-x[1] for x in scoreList],\n", " [x[0]+x[1] for x in scoreList], alpha=0.1,\n", " color=\"g\", label='standard deviation')\n", "plt.title(\"Classification score on subscription prediction\\nwith logres model using various C values\")\n", "plt.xlabel(\"log10(C)\")\n", "plt.ylabel(scorerType)\n", "plt.legend(loc='best')\n", "plt.show()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "skip" } }, "outputs": [ { "output_type": "stream", "stream": "stderr", "text": [ "(1/20) Building logres model for C value 0.000000000100000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(2/20) Building logres model for C value 0.000000001000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(3/20) Building logres model for C value 0.000000010000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(4/20) Building logres model for C value 0.000000100000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(5/20) Building logres model for C value 0.000001000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(6/20) Building logres model for C value 0.000010000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(7/20) Building logres model for C value 0.000100000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(8/20) Building logres model for C value 0.001000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(9/20) Building logres model for C value 0.010000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(10/20) Building logres model for C value 0.100000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(11/20) Building logres model for C value 1.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(12/20) Building logres model for C value 10.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(13/20) Building logres model for C value 100.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(14/20) Building logres model for C value 1000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(15/20) Building logres model for C value 10000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(16/20) Building logres model for C value 100000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(17/20) Building logres model for C value 1000000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(18/20) Building logres model for C value 10000000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(19/20) Building logres model for C value 100000000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(20/20) Building logres model for C value 1000000000.000000000000000 ... applying it ... " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "scoreList = [(0.76949171906441904, 0.014599343487451131), (0.77559084839878234, 0.016680091940452973), (0.77558984089571026, 0.016669564577923329), (0.77562960117842694, 0.016669783129555374), (0.77599334757276783, 0.016712834033065491), (0.77865570872903878, 0.017084773628861349), (0.78577478466100215, 0.018246266290173292), (0.78995141066814933, 0.018194446599428572), (0.79057860690470305, 0.018057597021882185), (0.79183208796194027, 0.017781797514409677), (0.79161619019773755, 0.017933680674930202), (0.79154411612201447, 0.017980246276912498), (0.79153911447470549, 0.017983683123000981), (0.79153754742257032, 0.017984857467606537), (0.79153744595998676, 0.017984201985282833), (0.7915375656267658, 0.017984565896524217), (0.79153753794691761, 0.017985059650217641), (0.79153750778929299, 0.017984629877046337), (0.79153774266192811, 0.017984639119523849), (0.79153767677216846, 0.017984260022198047)]\n", "best logres model has:\n", "roc_auc score: 79.18% (+/- 1.78%)\n", "C value: 0.1\n", "log10(C) value: -1.0\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 18 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "skip" } }, "source": [ "K Nearest Neighbors" ] }, { "cell_type": "code", "collapsed": true, "input": [ "from sklearn.neighbors import KNeighborsClassifier\n", "\n", "kValues = range(1,31)\n", "#kValues = range(25,31) # In order to gain some processing time\n", "\n", "estimators = []\n", "scoreList = []\n", "for i in range(len(kValues)):\n", " k = kValues[i]\n", " print >> sys.stderr, \"(%d/%d) Building %d nearest neighbor model ...\" % (i+1,len(kValues),k),\n", " estimator = KNeighborsClassifier(n_neighbors=k)\n", " print >> sys.stderr, \"applying it ...\",\n", " scores = cross_val_score(estimator, X_values_scaled, y=y_values, scoring=scorerType, cv=cvGenerator, n_jobs=1)\n", " estimators.append(estimator)\n", " scoreList.append((scores.mean(),scores.std()))\n", " print >> sys.stderr, \"done\"\n", "sleep(1)\n", "\n", "print \"scoreList = \", scoreList\n", "meanScores = [x[0] for x in scoreList]\n", "\n", "bestModelIndex = meanScores.index(max(meanScores))\n", "print \"best KNN model has:\"\n", "print \"%s score: %2.2f%% (+/- %2.2f%%)\" % (scorerType, scoreList[bestModelIndex][0] * 100, scoreList[bestModelIndex][1] * 100)\n", "bestKValue = kValues[bestModelIndex]\n", "print \"K value: \", bestKValue\n", "\n", "fig = plt.figure()\n", "plt.plot([k for k in kValues],[x[0] for x in scoreList], 'o-'\u001c", ", color='g', label='mean')\n", "plt.fill_between([k for k in kValues], [x[0]-x[1] for x in scoreList],\n", " [x[0]+x[1] for x in scoreList], alpha=0.1,\n", " color=\"g\", label='standard deviation')\n", "plt.title(\"Classification score on subscription prediction\\nwith K nearest neighbor model using various K values\")\n", "plt.xlabel(\"K\")\n", "plt.ylabel(scorerType)\n", "plt.legend(loc='best')\n", "plt.show()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "skip" } }, "outputs": [ { "output_type": "stream", "stream": "stderr", "text": [ "(1/30) Building 1 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(2/30) Building 2 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(3/30) Building 3 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(4/30) Building 4 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(5/30) Building 5 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(6/30) Building 6 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(7/30) Building 7 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(8/30) Building 8 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(9/30) Building 9 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(10/30) Building 10 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(11/30) Building 11 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(12/30) Building 12 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(13/30) Building 13 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(14/30) Building 14 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(15/30) Building 15 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(16/30) Building 16 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(17/30) Building 17 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(18/30) Building 18 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(19/30) Building 19 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(20/30) Building 20 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(21/30) Building 21 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(22/30) Building 22 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(23/30) Building 23 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(24/30) Building 24 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(25/30) Building 25 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(26/30) Building 26 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(27/30) Building 27 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(28/30) Building 28 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(29/30) Building 29 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(30/30) Building 30 nearest neighbor model ... applying it ... " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "scoreList = [(0.61686248330254301, 0.0099981437838863804), (0.66913727936584078, 0.012600681503597767), (0.69785444267494223, 0.015687283948569192), (0.71515560365473918, 0.014818131237886285), (0.72425501559430283, 0.016845354516585), (0.72990286059285414, 0.016340911616737445), (0.7335368606945174, 0.017178034713099678), (0.73889135940768047, 0.017060886428724224), (0.74271904008057421, 0.016881761130210747), (0.744583148459389, 0.016796792570554754), (0.7469328112206256, 0.015702096606024066), (0.750637147503316, 0.014530303246797251), (0.75219250752037103, 0.013864254687591369), (0.75461714652447021, 0.015282407989463983), (0.75545206758029426, 0.015942693661563846), (0.75551633518904637, 0.016526714751929922), (0.75591405491617258, 0.01668222353026268), (0.75747196161339547, 0.015971081677249973), (0.75862862772102124, 0.015872595350427531), (0.75970608453744715, 0.015652587074260597), (0.76058305590137931, 0.016045794415517858), (0.76124442173950257, 0.016485012188106888), (0.76147056688636927, 0.017197212057929758), (0.76201029439038481, 0.018035220232425729), (0.76287690000962471, 0.018679844986823683), (0.76398680319965329, 0.019022717786763548), (0.76543345107674055, 0.019625045715179531), (0.76668763728866463, 0.019383585645356617), (0.76706779020246529, 0.019217174327706695), (0.76746990845193763, 0.019087388760932786)]\n", "best KNN model has:\n", "roc_auc score: 76.75% (+/- 1.91%)\n", "K value: 30\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 19 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23 }, "slideshow": { "slide_type": "skip" } }, "source": [ "Random forest" ] }, { "cell_type": "code", "collapsed": true, "input": [ "from sklearn.ensemble import RandomForestClassifier\n", "import itertools\n", "from math import log\n", "\n", "nrEstimators = [pow(2,x) for x in range(7,9)]\n", "maxFeatures = [pow(2,x) for x in range(1,int(log(len(X_values.columns.values.tolist()))+2))]\n", "\n", "rfConfigurations = list(itertools.product(*[nrEstimators,maxFeatures]))\n", "print \"configurations: \", rfConfigurations\n", "\n", "scoreList = []\n", "for i in range(len(rfConfigurations)):\n", " nrEst, maxFeat = rfConfigurations[i]\n", " print >> sys.stderr, \"(%d/%d) Building random forest model with %d estimators and maximum %d features ...\" % (i+1,len(rfConfigurations),nrEst,maxFeat),\n", " estimator = RandomForestClassifier(n_estimators=nrEst, max_features=maxFeat)\n", " print >> sys.stderr, \"applying it ...\",\n", " scores = cross_val_score(estimator, X_values_scaled, y=y_values, scoring=scorerType, cv=cvGenerator, n_jobs=1)\n", " scoreList.append((scores.mean(),scores.std()))\n", " print >> sys.stderr, \"done\"\n", "sleep(1)\n", "\n", "print \"scoreList = \", scoreList\n", "meanScores = [x[0] for x in scoreList]\n", "\n", "bestModelIndex = meanScores.index(max(meanScores))\n", "print \"best Random Forest model has:\"\n", "print \"%s score: %2.2f%% (+/- %2.2f%%)\" % (scorerType, scoreList[bestModelIndex][0] * 100, scoreList[bestModelIndex][1] * 100)\n", "bestNrEst, bestMaxFeat = rfConfigurations[bestModelIndex]\n", "print \"n_estimators: \", bestNrEst\n", "print \"max_features: \", bestMaxFeat\n", "\n", "fig = plt.figure()\n", "plt.plot([conf for conf in range(1,len(rfConfigurations)+1)],[x[0] for x in scoreList], 'o-'\u001c", ", color='g', label='mean')\n", "plt.fill_between([conf for conf in range(1,len(rfConfigurations)+1)], [x[0]-x[1] for x in scoreList],\n", " [x[0]+x[1] for x in scoreList], alpha=0.1,\n", " color=\"g\", label='standard deviation')\n", "plt.title(\"Classification score on subscription prediction\\nwith Random Forest model using various configurations\")\n", "plt.xlabel(\"Configuration ID (nr estimators, max features)\")\n", "plt.ylabel(scorerType)\n", "plt.legend(loc='best')\n", "plt.show()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "skip" } }, "outputs": [ { "output_type": "stream", "stream": "stderr", "text": [ "(1/8) Building random forest model with 128 estimators and maximum 2 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(2/8) Building random forest model with 128 estimators and maximum 4 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(3/8) Building random forest model with 128 estimators and maximum 8 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(4/8) Building random forest model with 128 estimators and maximum 16 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(5/8) Building random forest model with 256 estimators and maximum 2 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(6/8) Building random forest model with 256 estimators and maximum 4 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(7/8) Building random forest model with 256 estimators and maximum 8 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n", "(8/8) Building random forest model with 256 estimators and maximum 16 features ... applying it ... " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "configurations: [(128, 2), (128, 4), (128, 8), (128, 16), (256, 2), (256, 4), (256, 8), (256, 16)]\n", "scoreList = " ] }, { "output_type": "stream", "stream": "stdout", "text": [ " [(0.76768945798327159, 0.018147151669550964), (0.77388895837664984, 0.01721065749733788), (0.77624845940828902, 0.016912286996300936), (0.77509714548313668, 0.017077118005886713), (0.77165542125390119, 0.017431478360104655), (0.77424811572276253, 0.016397927989300697), (0.7761854927025631, 0.015843373377702776), (0.77620158285384833, 0.018285582468099634)]\n", "best Random Forest model has:\n", "roc_auc score: 77.62% (+/- 1.69%)\n", "n_estimators: 128\n", "max_features: 8\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "done\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAEoCAYAAACzVD1FAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXmcXFWVx7+nqvfOCglhyQZhkQCBCIY1ECFKWCI4qCyC\nGhjAEQG3QXEUgzoqCg4G0UGWIGtUFhUZDIIkBIFANJAAAUJCdrKns/VS25k/7q3q17V1dacr1dV9\nvp9Pfeot99133n333d+723miqhiGYRhGkFCpDTAMwzC6HyYOhmEYRgYmDoZhGEYGJg6GYRhGBiYO\nhmEYRgYmDoZhGEYGJg5FQkSmisj9RYz/DRE52S+LiEwXkc0i8rKInCQibxfhnMNFZLuISFfHbbRF\nREaKSEJEivqMisivReQ7u3B8Kh+WEyIyS0Qu88ufFZGZnYzn/0Tkkq61rntQUWoDyhkRuQj4GnAI\nsB14DfhvVf0HUNQJJKp6eGD1JGAisK+qNvttH9rVc4jIMuBSVf27P+cKoO+uxmt0H1T1PwoNKyL3\nAitV9buB4w/PfUS3Rv0PVX0QeLC9A0RkKjBKVVNioKpnFsvAUmM1h04iIl8D/gf4IbAXMAy4HZic\nDLIbzRkBLAsIQ1eh7N7rKAoiYi9BWSh2rWR3Yfe3SKiq/Tr4A/rjagrn5QkzFbg/sP4H4AOgAZgN\njA7sOxN4E9gGrAK+7rcPAv4CbAE2Ac8HjlkGnAZcBjQBMW/T94AJuDe8ZNhhwGPAemAjcJvfPgr4\nu9+2AXgA6O/33Q/EgUYf7zeAkUACCPkw+wJ/9rYtBv497fp/D/zWX9cbwNF50ut/gHXAVmABcJjf\nXgvc4q+3AZgD1Ph9n/DptgV4DvhQWvpc5+Nqwr0IHQe86MO/BpySx55DgVk+7BvA5MC+e3EvAn/x\n1/YycECOeGp8um70cb0CDA7ew2x5JpDWlwOrgTXJfOH3jwPm+fRaC9wS2HdS4DpXAJ8L2P1r4P+A\nHbj8cy/wA79/Ai7/Xe/zw/vARX7fFUAEaPH54U/p1wBUA7d6e1f7e1qVFvfX/H1eA3whT/rPAn4M\nzPXX+EdgYFraXAosB2b57ZcCbwGbgb8CwwPxfQx4G5eHbvPxX+r3fQGYEwh7GPA3XL5e69PjdH/t\nEX/98wN2XuaXBfiOT5N1uLzfL83mz3mbNwDfLnVZlrecK7UB5fgDJgFRfCGZI8xU2orDF4B6oNI/\nNPMD+z4ATvTL/YGxfvnH/mEO+9+JgWPeB071y59Py9wT8OLgj3sdV8DW+gc4ea5RuAKiEidEs4H/\nyXYOv57M4ElxeB74JVAFHIkTn48Grr/Jp5UAPwJeypFWp+MKuuSDdAiwt1++HSdg+9BawFcBB9Na\nwIWB/8QJVIU/bhnwL2A/f8374QroSX7/RL8+KIs9lcB7wLdwTa8fxYnAwX7/vf7YY/y5HwAeznFt\nV+IEtManw1igb470/R6Z4vCgv2+H+/RNFsQvAZ/1y3XAsX55hLf1fG/bHsCRAbsbgOP9ejUwHfh+\nIN9EgZt9Gpzs0/ggvz8VNkc+/D5OlAb53z+yxD3V23UGsBP/MpIl3WbhxGS0v75HsqTNvT5taoBz\n/P0/BJdP/gv4hw8/yKfJv/lzf8XbkiEOuGbTD4Cv4vJZH2Bc4P7cl2bnc4F4LvU2jMQ9648mwwds\nvsOn+xigmcALTXf79YhqZQnYE9ioqolCD1DVe1V1p6pGgRuBI0Uk2X4fAQ4TkX6qulVV5we27wOM\nVNW4ur6MbORr+hnn4/hPVW1S1ZZkPKq6RFWfVdWoqm7EidYphVyPiAwDTgC+qaoRVX0duAv3ZpRk\njqr+Vd3T8QBOQLIRwT2Uh4pISFXfUdW1vtljCnCtqn6gqglVfVlVI7jC7y/e/jiuQKv1NoFrEpum\nqqtVtQW4GPg/Vf2rv/ZncIKUrc34OKBeVX+iqjFVfQ5XS7gwEOYxVZ3nz/0gcFSea9sTV8Cqqs5X\n1e05wma7jzf6+/YGrnBO2hABDhKRQaraqKpz/faLgL+p6u98ntns700yTf6oqi/5NGjJcd7v+jzx\nPPAkLq2T4fLltYtwYrDR56cbgWBnbdTvj6vqUzjhOSRHXIorWN9S1Ubgu8Bn0gZDTPVp0wx8Efix\nzzsJ3IvVUSIyHHeP31DVx/y5b8XVCLJxNrBGVf/H5+sdqvpKgdf/WVwNbpmq7sTVOC5Ia7670T+D\nC3AvbbmeiZJj4tA5NgGDCm2zFZGwiPxERN4Tka24ty3FvdEAnIfLwMv8KIrj/Paf4d5gnxaRJSLy\nzU7YOgxYnk3IRGSIiMwQkVXervtxBVkh7Ats9g9BkhW4N/Qk6wLLjUBNtjTzhe8vcbWEdSJyhxfO\nQbi3wiVZzr+PP18yDgVWpp1/ZWB5BPBpEdmS/AEnAnvnuLaVaduW++3g7l3w2ppwb5jZuB+YCcwQ\nkdUiclMH28iDdqwI2HAZrva0SEReEZGz/PahwNIC48vGFlVtCqwvx6U1tD/IYl8fPpu9AJvS8mEj\nudMt3dYVtNZws+0fAfwicG83+e37eftX5Yk7yDDyp18+9iHz+iuAIYFtQVFqxNUwuiUmDp3jJVz7\n4ycLDH8Rrn38NFXtD+xP4C3Ev4GeCwzGta3+3m/foarfUNVR/vivichHO2jrSmC4iISz7PsRrl/h\ncG/XJbTNE/kKgzXAHiISfLiHk/kQFoSq3qaqx+CaEQ7GNRNtwFW9D8xx/hHJFf9GOQzX1p3N/hW4\nZomBgV9fVf1pjriHpb2ljkiLu9Driqnq91X1MFyt5mxaa1c7aVs4ZBOq4WnLq32876nqRao6GLgJ\neERE6nD3e1RHzQwsD/TxJBmBS4/0cNlYg2s+Cdq7JnvQgki/9iiuOS9J+v29Iu3+1vta0ge4vAG0\nySvZWAEckGNfey0F2a4/RtsXibLBxKETqOpW4AbgdhE5R0TqRKRSRM4QkZuyHNIHJyabRaQeVygD\n4I/7rIj0900U23EFNiJytogc6DPzNr+94KYszyu4h+Mn3s4aEUk2vfTBFVDbRGQ/XIEcZB05ChpV\nXYlrX/6xiFSLyBhcm+sDHbQPETlGRI4VkUrc21QzEPe1gXuAn4vIPr4GdryIVOEE9CwROdUf93V/\n3Is5TvMAMFlEPu7jqRGRCf6603nZ23Gdvz8TcIX6jKTJHbi2CSJyhBfn7bgCLu53v4ZrdqgQkWNw\nNcj0Avg7IlIrIofh2sZ/5+O9WEQG+zBb/XFx4CFgooh82se7p4gkmy6y2Z2tqeRGf93jgbNwgynA\n5YdcBSfAw97eQSIyCPeMdHaujwAXi8ihXqy+D/zB54ls/C/wbREZDSAi/UXk037f/+GabT/pa23X\nkF2IwTWj7SMi1/p83VdExvl964CRaS8NQR4Gvipujkof3HM+o53m5247GtDEoZOo6s9xIy++g+so\nXAF8CXg8GYTWB/0+XHVzNW7ky0u0LQQuBt73TTtX4Nouwb0x/w1XqLwI3K6qs7OZQ2ahot7OOG54\n7YHexpXAZ3yYG4EP4wqXJ3AdaMF4fox72Lf4obuk7b8Q96a0Bjca6gb1cyLy2ZSFfsBvcKNMluHe\nDn/m930DWAi8imsq+DGuQ/xdXLrdhqthnIUbURTLdgJVXYXrtPw2rffr62R5Bny/0GRcp+kGXJPX\nJf6cHb22vXGF61bcSJpZtBaY38WJ7xZcR236WHvFDRJ4D3gG+JnvKwHXif+GiGzH9RVd4NuyV+Ca\nKL+OS6/5uM7PfHYHt6319qzxdl4ZuO67gdE+PzyW5Vp/iOvHWeB/8/y24LkKRf3578W93FThCvWs\ncanqH3E1qBn+OVqISyN8/8engZ/g8taBwAtpcSWfl+24kU2T/XnfxXWmQ6tIbhKReVlsvsfb/Dyu\naaoRuDqXzXm2dQsktxAbhtGb8DWk+1U1V5PL7rTlOW/LPaW2pbdiNQfDMLor3bbJpTdg4mAYRpDu\n1JTQnWzpdVizkmEYhpGB1RwMwzCMDHqNOIhzNT0yz/5lInLa7rOocMS5bs43hNDoAiTgxrmAsF1+\nT6RM3D/LLrr57i74SaDPi8g2EblZRK4XkTtLbVeSUqdzr/FmqKopV9OSxfUw2Yf5ZUVEvoAb1teI\nm3ewHPieqj6e77jujojMAo7FTdxJMjHgmqHY57+XzPuyOyk4DxTl5GXi/lk74Oa7m3MFsF5V+5Xa\nEF+mXKaq45PbSp3OvabmUAT+4QVnAG4c/EMiMrDENu0qClzlZw4nfx0Shg66hjDKDOkhbr49I4BF\nxT5J2T4T2g28/3X2h3PK9ufA+mLg94H1lcAYv5zATTjK5Xr4fdzEoddxnitnANU5zvsF2npBrfPx\nH+PXc7rC9vuX5TsXbqbyGpwrikt93Af4ff1xk+rW+3j+i9aBBV/AecL8OW4i03s4lw1TcJO+1uHd\nN+e4rpSHybTthbgi7oj75Az33LnuSxZbEsB/+Hu9DTdzdhRuYmEyLSsD4S/3YTcBfwL2CezL5sb5\nssD+fNeQuidZbFxGblfc+Vx4p87v7+ULuMmAm3GTqiYF4twfN9lqG26i5O0EvACn2bMIOCuwXoHL\nl0f59Xzu5O8lj5vvfGlMmhffLNd4oD9fg7dnRp68me6G/PMFPg9Z09BfQzK/bfPXlbpPPkzSvfZG\nWvP/qYHjg2kwgbZu8pfR1mV8GOfl9z1/vjeBc33YQ2nrdn9zjnPky8sJnAfgd30a/TKwr+B0bpPm\nXVlY7+4f7gHZ4pf39TdkhV8/IJnI6Q8z2V0PL8O5TdgbGIgrFK7Mcd4v0OriNwxc5TNf0hVzIa6w\ns54L5+J6La2uih9Ks/0+3Czsetybzzu0dT0cxbnwFuAHOIG5zdvyMZ8x63Jc13MECsfA9kJcEd9L\nYe6T87nnzrgvWWxJ+Ovv49OoBSfEI3Ezrd+k9fsFp/qH4SjcDNtpwGy/rz03zjmvIT0/ZbHxfTJd\ncSfTK58L7+doey8jOAd7gvM6ujoQ50vAT3EF/Yk4ob0vhz3fBR4IrJ8FvJmWn3O5k7+X/G6+86Vx\nMm8ExSF4jQ8D1/vlKuCEHPaPILcb8vaeh3xp2Ca/0dZl+mhcQX2CT5ef+bhOzXHsBDLFIeUy3m/7\nFK15/TM4sR3i1z9P4IUz/Rz50jmQH/+MewaG4cTy4x1J54x039UCutQ/3FvEWOACnK/0l3EP9BSc\ne+Jc4vCDtHjex3/YxK/fBPw6xzm/gCtItvgM00jgWwtZwp8L/KuQc+Gm4P8osO+gpO3+wWih7Udt\nrgCeC9j1bmDfEf7YwYFtG/G1qSx2zsL5Wtrif/P89meBLwbCHeyvO0RrATAysP8pAjUQH24nzhHZ\nR3EP8LGkfQ8j233JYmMCX1D59Xk4d+TJ9ZvxQozrF/pJYF+9t3sE7q3wxbS4V9JasOS6hmHp+SmL\njeniMJXWQmcKrnZ3RJbj0sVhcWBfsna6F61O6GoC++8nd81hFK5wTX4k6UHgOznCDvDnSQrWvcC9\nWe5TstDKlcbDaV8cfot7Zvdr555fDzyaZXshz0PWNMyW39Lu0w3Ag4F9tf5cp+Y4dgJtxeF98nzM\nyIeZD3wiYGs+cciZzoH8eEJg/++A6zqSzum/ntB+OBt3Y8b75dm4bxKc7Jc7QtCdbj43zAAvq+pA\n3Jv/n4GUO20pzBV2+rmS3jn3IdNVcZJBuLeYdLfAudxkNwGo6oYCr0uBq7XVq+UxAZvac0VciPvk\nfTW3e+6OkH6NwfVm2qZlym517sU3UZgb51zXkM1RX3toYLkjLrxTeUTdNw3A3buku/TgZ2FzuuJW\n1SW4pqVPeCd2k3E10lzu5KHVNbbmi5v8adwe1+He6F8RkTdEZEqOcLnckBfyPORKw/bYl0D+UOfG\nfFPu4Flpk24i8jkRmR/IU4dTuIv8QtI53R148rkqNJ3b0FPE4aM4cZhFq1icQm5x0BzbOxomeZP+\nAzhFRE7xm9tzhZ2PD8h0VZxkI+6NcWTa/k65ye4AhbgiDqZXLvfJL0NO99zpcXSWYBxt7BbnEXdP\nXHq158Y57zW0Q7or7uT3END8LrwL5QOcu/TawLbhuQJ7HsY5SjwHeEtVk4VtNnfyULjrilxpvBqX\nDuDe2JOkvKGq6jpVvUJV98M1t/0qx/DgXG7Ii/k8rMGJEgA+rYMF+U5yXFeAVF4UkRE455JXAXv4\nF8s3aE3n9vJ+vnTOSwfSuQ09SRxqVHUNrgNqEq5dcn6OY9pzPQwd8OuiqltwN/5bflN7rrDzne/3\nwBcCroq/FzhP3O//bxHp4zPcV+mEm+wC7AjSUVfEOd0nSw733P64Qu5LezYHXVA/DEwRkSNFpNrb\n/bI6z6XtuXHO5wK6PXK64pb8LrwLQlWX45rTpnrX2sfjRCZfATMD19/zRdp6f83pTt7TnpvvnGns\na6yrgUt8DeVSAoW8OLfiyQK4wdufLU89SBY35F3wPOR7xh/FuXhPuoifmhb+NeBMERkoInvj+qzy\nUY+7vo1AyL+9Hx7Yvw4Y6p+LoH2F5OW819aBdG5D2YuDqi7GPWRz/Po23JfD/qG+wS0ZNLDcnuvh\nZPhcD1u2fbcCHxX3XYP2XGHnjE/dZyxvxXWyvotr7w8eezVOeJbirvlBXNtkLrs6+jaeLXyHXBFr\nHvfJ5HfPXeh9ybctmJbP4jpjH8W9ee2P65tC23Hj3M415LIjST5X3PlceKdfU757+VngeFzTwg9w\nbcyRXAap6lrcaJ/jfdgk7bmTz2VHu2nsuRz3crQRV1MMfur2GOBlcW7H/wRco6rLsti+ktxuyHfl\neUjfH7yuN33cM/x1bcd18iY/rXo/brThMtxIthlZzhW8hrdw33F/Cdf8czht3YY/ixtMsVZE1mex\np710znmPKDCd0ymqbyURmYQr6MLAXap6U9r+QTiV3xvXhn2zqt5byLGGYbQiIr/DNRfdWGpbeiK+\nxrwFONDX3Ho8RRMHX21+B5iIeyt5FbhQVRcFwkzFDfO63gvFO7hOTm3vWMPozfjmqi24DuTTcR9b\nOk5VXy+pYT0IEZmMe6MX3Fv/R1T16NJatfsoZrPSOOA9VV2m7staM3CdYUE+wDUz4P83qfuSVyHH\nGkZvZm/csNDkl+C+aMLQ5XwC93K6GtdMeEH+4D2LYk7r3o+2Q7lW4ca2B7kT+LuIrMENu/pMB441\njF6Lqv4F+Eup7ejJqOrluD6TXkkxaw6FtFd9G3hNVffFzfy7vRNj3g3DMIwuppg1h9W0HTc+jMzx\nxycA/w1uoo6IvI+b3byqgGMRkeL1phuGYfRgVDXvcP1i1hzmAQf5sfFVOL8of04L8zau0xkRGYIT\nhqUFHguUt/uP733veyW3wewvvR290f5ytr0n2F8IRas5qGpMRL6McxUQBu5W1UUicqXffwduIsd0\nEXkdJ1TXqepmgGzHFstWwzAMoy1F9TOuqk/hHJgFt90RWN6I8/NS0LGGYRjG7qHsZ0iXMxMmTCi1\nCbuE2V9aytn+crYdyt/+QijqDOliIyJazvYbhmGUAhFB2+mQLs/P1xmG0WtxDnSNQunsC7SJg2EY\nZYe1GBTGrgip9TkYhmEYGZg4GIZhGBmYOBiGYRgZmDgYhmEYGZg4GIZhGBnYaCXDMHoET/7tSaY9\nNI0WbaFaqrnmoms462Nn7fY4egpWczAMo+x58m9Pcu3t1/L0yKeZvf9snh75NNfefi1P/u3J3RbH\nyJEjufnmmxkzZgx9+/blsssuY926dZxxxhn079+fj33sYzQ0NADw8ssvc8IJJzBw4ECOOuooZs+e\nnYpn+vTpjB49mn79+jFq1Ch+85vfpPbNmjWLoUOH8vOf/5whQ4aw7777cu+99xZ8jR3BxMEwjLJn\n2kPTWDJ2SZttS8Yu4baHb9ttcYgIjz32GM8++yzvvPMOf/nLXzjjjDP4yU9+wvr160kkEkybNo3V\nq1dz9tlnc8MNN7BlyxZuvvlmzjvvPDZt2gTAkCFDePLJJ9m2bRvTp0/nq1/9KvPnz0+dZ926dWzb\nto01a9Zw9913c9VVV7F169aCr7NQrFnJMIyyp0Vbsm6fuXQmcmOBE8HeB0Zmbm5ONBdsx9VXX83g\nwYMBGD9+PEOGDOHII48E4JOf/CTPPvssDz74IGeeeSaTJk0CYOLEiRxzzDE8+eSTfO5zn+PMM89M\nxXfyySfz8Y9/nDlz5jB27FgAKisrueGGGwiFQpxxxhn06dOHd955h3HjxhVsZyGYOBiGUfZUS3XW\n7acfcDp//d5fC4rj9GWn8zRPZ2yvCdUUbMeQIUNSy7W1tW3Wa2pq2LFjB8uXL+cPf/gDTzzxRGpf\nLBbj1FNPBeCpp57ixhtvZPHixSQSCRobGxkzZkwq7J577kko1NroU1dXx44dOwq2sVCsWckwjLLn\nmouuYdT8UW22jfrXKK6+8OrdGkc6QTcfSVcWw4YN45JLLmHLli2p3/bt27nuuutoaWnhvPPO47rr\nrmP9+vVs2bKFM888syTuQqzmYBhG2ZMcUXTbw7fRnGimJlTD1V++ukMjjboijnwkC/iLL76Yj3zk\nIzz99NOcdtppRKNRXn75ZQ466CD69etHJBJh0KBBhEIhnnrqKZ5++mmOOOKILrEhoQmi8WhBYU0c\nDMPoEZz1sbN2uSDvijiCBB3fiQgiwtChQ/nTn/7Eddddx4UXXkg4HObYY4/l17/+NX379mXatGl8\n5jOfoaWlhcmTJ3POOefkjLMQtrdspzHaSGO0kWg8Slzjhdlezt4N7XsOhtH78N8iKLUZZYGI8O7G\ndwmHwlSGKgmHwjRFmzhwzwPtew6GYRi9mfqq+k4dZx3ShmEYRgZWczA6hKoSTUSJJWKoKiEJZfzs\nS12GUf6YOBhZSY5qiCViROIRmmPNNMeaiSViGWEVRRAU1w4cljAhCVERqki1c1aEKqgIVWQVExMU\nw+h+mDj0cuKJeKom0BJroTnWTEuspc2IBhEhLGEqw5VUV2SfbBREVUlogoQmaIo1kdAEiqKqKQFJ\nJyQhwtIqIsGfCYph7H5MHHoBqkpc46maQLIW0BJvaTPqIyQhwqEw1RXVu1TwJsUkTLhDNiYFpTnW\nbIJiGCXGxKEHoarEEjGiiSjReDQlApF4pE24ZJNPbUVttyksiyUoweYuQVLnqQhVUFdZR21lLVXh\nKipC9iiUE90l3/Zk7IkoQxKacCIQdyLQFGvK6A8QhFDIiUBnh7J1dzorKIoST8RpaG5gU+MmRISK\nUAV9qvpQV1lHVbiKynBlES03doVizXFIaIJ4Ik5c46nlSDxCJB5xTa/xWMYEsuD8gZ6GiUM3Jp6I\np2oCkXiEpmhTzv6AilBFQf0BvR0RccIZDrURgHgizraWbTQ0O3/7YQlTX1VPfVU9VeEqqsJVpTLZ\n6ALSC/3kQItkLTuaiKZeHARXK0nWNLuqubXcMHHoBsQSsVRNoCXWQlOsKWd/QFVFFSGx6SldTTgU\npjZUm1pPaIKd0Z1sa9kGuPSvq6yjT1WflFj0poKiu5LsT4snfMHv+9aShX4kHnHDrgOFPrS+JIRD\nYcISpq6yroRX0T0pqjiIyCTgViAM3KWqN6Xt/wbw2YAthwKDVLVBRK4F/h0Q4E5V/UUxbd2dxBIx\ndkZ2srVlKy2xtn7ou2N/QG8kJCFqKlpdNasqzbFmdkSca2RBqK2spU9VH6orqqkKm2h3Ncn+pORb\nf7KZJ/XWH48S01ibQh9ofdvvwAg7I5Oi+VYSkTDwDjARWA28ClyoqotyhD8b+IqqThSRw4GHgY8A\nUeCvwBdVdUnaMWXlW6k51kxDUwPbItsIScg6QsucSDxCLB5LdXjXVNTQp6oPNRU1VIWremQ7dFcR\nfNNPNZ/6N/5kc08ikch4QUqOOku+8dsLVMfpDr6VxgHvqeoyABGZAZwDZBUH4CKcIICrQcxV1WZ/\n7Gzg34CfFdHeohBPxNkZ2cmmpk1EE9FUx6dR/qT3RUTjUTY1bUo1B1aFq+hT1adXjohKFvjBN/5g\n527wpS7Z5BMs9K3mXHqKmVv3A1YG1lcBx2YLKCJ1wOnAl/ymhcAPRWQPoBk4C3ileKZ2PS2xFra2\nbGVrs/u2a3VFtVVveziV4co2ndyxRIyG5gY2N20G6DEjooLt/HGNpyZQJgv/bLPogwW/te+XB8UU\nh46090wGXlDVBgBVfVtEbgKeBnYC84FE15vYtSQ0QWO0kc1Nm2mONhMOuQfB3oB6J8kJeUnKZURU\nejt/LBGjJd5CJOYK/2zfA0gW/tbG33MopjisBoYF1ofhag/ZuIDWJiUAVPUe4B4AEfkRsCLbgVOn\nTk0tT5gwgQkTJnTW3k4TiUfY1uweekVdc0K1NR0ZbekuI6KCBX9ydE+qycfPokdoHdIZ6OC10XLl\nyYtzXuSlOS8BEE0U9iW4YnZIV+A6pE8D1uCahTI6pEWkP7AUGKqqTYHte6nqehEZDswEjlXVbWnH\nlqxDWlVpjDaypWkLjbFGwhKmpqLGaglGp1HVNs0ynR0RFWzuydferyioEy3r5O09lLxDWlVjIvJl\nXMEeBu5W1UUicqXff4cPei4wMygMnkdEZE/caKUvpQtDqYjGo+yI7GBz02biGk91OhrGriIirm+K\n1maZSDzChp0bso6IUrTNW7+19xtdiX0mtABUlaZYEw3NDexo2eHGwFfWWPXa2O0EZ/MmSRb+SYeD\nhpGPktccegLJyWqbGjcRS8SoDFdaX4JRUtJHRBlGsTBxyEJystr2yHZX1Q9XU1NZ0/6BhmEYPQQT\nB09ystrmps1EEpEe7c3UMAyjPXq9OGSbrNanwpqODMPo3fRKcbDJaoZhGPnpVeIQiUfY3rKdLU1b\nSGjC1RKsg9kwDCODHi8OwclqO6M7nTvsSnPqZRiGkY8eKw7ZJqv1re5barMMwzDKgh4lDskPsmxp\n3sLOyE4EsclqhmEYnaBHiEO2yWo2DNUwDKPzlL04rN2+1iarGYZhdDFlLw47ozutlmAYhtHFlH1j\nfG1lbfuBDMMwjA5R9uJgGIZhdD0mDoZhGEYGJg6GYRhGBiYOhmEYRgYmDoZhGEYGJg6GYRhGBiYO\nhmEYRgZcSUMzAAAgAElEQVQmDoZhGEYGJg6GYRhGBiYOhmEYRgYmDoZhGEYGJg6GYRhGBiYOhmEY\nRgYmDoZhGEYGJg6GYRhGBiYOhmEYRgZFFQcRmSQib4vIYhH5Zpb93xCR+f63UERiIjLA77teRN70\n2x8Skepi2moYhmG0UjRxEJEw8EtgEjAauFBEDg2GUdWbVXWsqo4FrgdmqWqDiIwELgc+rKpHAGHg\ngmLZahiGYbSlmDWHccB7qrpMVaPADOCcPOEvAh72y9uAKFAnIhVAHbC6iLYahmEYAYopDvsBKwPr\nq/y2DESkDjgdeBRAVTcDtwArgDVAg6o+U0RbDcMwjAAVRYxbOxB2MvCCqjYAiMgo4CvASGAr8AcR\n+ayqPph+4C0/uiW1fPz44zlh/Am7YrNhGEaP48U5L/LSnJcAiCaiBR0jqh0pwwtHRI4DpqrqJL9+\nPZBQ1ZuyhH0c+J2qzvDr5wMfU9V/9+uXAMep6lVpx+nqbdbaZBiGUShN0SYO3PNAVFXyhStms9I8\n4CARGSkiVcD5wJ/TA4lIf+Bk4E+BzW8Dx4lIrYgIMBF4q4i2GoZhGAGK1qykqjER+TIwEzfa6G5V\nXSQiV/r9d/ig5wIzVbUpcOzrInIfTmASwL+A3xTLVsMwDKMtRWtW2h1Ys5JhGEbH6A7NSoZhGEaZ\nYuJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRQTPcZRg/lmeee4Z5H7qEl0UJ1qJpL\nP3UpEz86sdRmGUbRKfe8/8xzz3Dn7+8sKKyJg9EhnnnuGW646waWH708tW3ZXcsAyuohMYyOUu55\nP5v9+TBxMApGVfn1jF9nZK7lRy/n1gdv5YCjDmBw3WD6VPXBeT0xjJ7DPY/ckzXv//S+nxId6pzZ\nacDfaHCCcZvtBYRpu1hAnAWc69f3Zj67+TBxMLISiUdYvHkxb214q81v69qtcEhm+MVbFnPxYxez\noXEDiUSCPev2ZHDdYAbVD3L/dYParCe3DagZYEJidCtiiRgrtq5g6ZalLNmyhCWbl7B0y1LmrZ4H\nozLDr9m5hkfeeiS1HszPQiBvt1mUdsPn3F5AmGzn2tS8KdP4PJg4GGxq3MSbG95sIwLvb3mfYf2H\nMXrwaEYPHs2VR1/J6MGj+erCr/I8z2fEccw+x/DgZc6jemO0kQ07N7ChcQMbGze6/50bWbJlCXNX\nz23d1riRpmhTSkiC4pESFy8qg+sHM7BmIOFQeJevt9zbjY1dR1XZ2LixrQA0LGXJ5iWs2raKver3\nYtTAURww8ABGDx7N2Qefza3P3spc5mbEdeReR3L3OXeX4Co6xkV/uYjZzC44vIlDLyKWiLF0y9KM\n2kBTrInRg5wIHD/0eC4bexkH73kwtZW1GXFc9unLWH7X8jbV0xHzRjDl8imp9brKOkYMGMGIASPa\ntak51symxk1saNyQEpENjRtYvW01r619jQ07N7CpaRMbdm5ge2Q7A2sGOsGoDwhHWg0l+asIZWbv\ncm83NjpGU7QpVegnhWDp5qUsbVhKSEIpARi1xyg+tc+nGLXHKEb0H5E170cuiLD2rrV583535tJP\nXcqyu5YV3LRkjvd6KA3NDSzasKhVBDa+xeJNixnSZ0iqNnDY4MMYPXg0+/Xdr0NNO8889wzTH51O\nc7yZmnANU86bslsK1mg8yqamTa7mkaVmElxvaG6gb1XfNiIyqG4Qz979LMs+vCwj7glLJ/DgLzO+\nJWWUAfFEnNXbV7cVAP+/uXEzIwaMcALgheCAPdzyHrV7dPhcpcr7XcUzzz3DXX+4izkPzGnX8Z6J\nQ5mT0ATLGpZl1AYamhv40KAPpYRg9ODRHDroUOqr6ktt8m4hnoizpXlLhojcecudfHDMBxnhD1l4\nCH++48/0qepTAmt7D7vSpLe5aXOq4F+6eWlKAJY3LGePuj3aCEDyf2i/oV3SFNmTKNQrqzUrlRE7\nIjtYtHFRGxF4Z+M7DKwd6ARg0Gg+PfrTjB48mhEDRhCS3jvHMRwKp5qXDuXQ1PbZA2fzAZnisHb7\nWsbeMZbD9zqck4efzEkjTmLs3mOzNk0ZnaOQJr3mWDPLG5a7foBkDcDXCGKJmCv09ziAAwYewORD\nJruawMADqKusK8Ul9Wjy1hxE5MfAT1V1i18fCHxdVb+zm+zLS7nWHNp7e1JVVm5bmRKAZPPQup3r\nOGTPQ9rWBgYfSr/qfiW8mvIiWwE1Yt4Ivn/59znhpBOYu2ouc1bM4fnlz7N6+2qOH3o844ePZ/yI\n8YwaOMpGVu0CF111EbNHZXaI7jdvPw467yCWNixl3Y51DO03lFF7jOKAAa4vIFkTGFQ3yNK/Cyi0\n5tCeOLymqkelbZuvqmO7yM5dohzFIVvhtPfcvZl0+iQYAW9tdGJQX1XfRgQOG3wY+w/Y36rIXUCh\n7cYbdm7ghRUvpMQC4OQRJzN++HhOGn4Sg+sH727Tyw5VZc2ONSxct5Dvfu+7rDl6TUaY4fOH8/0b\nv8+ogaMY3n+41daKTFeJwwJgnKo2+/VaYJ6qHtal1naSchSHXG9PQ14Zwhf/84spMehMZ5lRPFSV\nJVuWMGf5HOasmMNLq15iv777pcTiuKHHZR3h0ptQVdbuWMvC9Qt5fe3rLFi3gAXrFwAwZsgY3nvk\nPVYcvSLjOBsMsHvpqj6HB4FnReQe3LSKKcB9XWRjr2PdjnW8u+XdrPv2H7g/Vxx9xW62yCgUEeHA\nPQ7kwD0OZMrYKcQSMV5b+xpzls/htldu44q/XMGRQ45MicWYIWN6fC1v3Y51LFi/gAVrnQgsWLeA\nWCLGkUOOZMyQMXx2zGe5achN7NNnH0SEZwZkb9Irl6GgvY12RyuJyBnARNyE7r+p6szdYVghlEvN\nYdW2Vfzq1V/xp7f/RP0L9az+SKbN9vZU3uyI7ODlVS/z/PLneWHFC6zbsY4Thp3A+BHjGT98PCMH\njCzr9vINOze4moCvDSxYu4DmeHNKCMYMGcORQ45k37775r3Och8K2hPokmal7k53F4clW5Zw+yu3\nM3PJTC4+4mIuP/pyXpv7Ws4OUXtIeg5rd6zlhRUvpMSiKlzFySNO5qThJ3HS8JO6dbPhpsZNLFi3\ngNfXvc7CdQt5fd3rNEYbUwJwxJAjOHLIkQztN7SsBa+30lV9DjtodQFVBVQCO1S1WwyP6a7isGjD\nIm575TbmrJjDpUddypSxUxhQMyC1396eeheqyrub3k11bM9dPZf9B+yfEotx+42jpqKmJLZtbtqc\nEoDk//bIdo7Y64g2NYLh/YebEPQQurzmICIh4BPAcar6rS6wcZfpbuLw2trXmDZ3GvPXzueKD1/B\nJUdeYpOqjAwi8QjzP5ifEou3N77Nh/f5cKq/4rC9DivKHJWG5obWpiH/a2hu4PC9Dk+JwJghY3r9\nHJmeTtGalbINby0V3UUcXl71MtPmTmPx5sV86ZgvccHhF/T6kStG4Wxr2cZLK19KicWW5i2cOOzE\nlFgM6z+sTfhCZhlvbd7KwvUL2wjBxsaNHLHXEalmoTF7j2H/AfubEPQyuqpZ6bzAagg4GjhFVY/v\nGjN3jVKKg6oye/lsfjH3F6zfuZ4vf+TLnDf6PKrCVSWxx+g5rN6+mheWu/6KOSvm0Le6b0ooIksj\n/PS+n7bpsxo+bzgXnXsRlQdUpvoK1u9cz+F7Hc4Rex2RqhEcMPCAHj+CymifrhKHe2ntc4gBy4A7\nVXV9F9m5S5RCHBKa4OklT/OLub+gJdbCNcdew9kHn20Td4yikNAEizYucvMrls/h+enPkzg1kRGu\n3z/68amrPsWYvccwZq8xHLjHgSYERlZstFIXE0/EeeLdJ5g2dxrVFdVce+y1fHzUx61KbuxWPvnF\nT/LKwa9kbD9u8XE8+utHS2CRUW50ySQ4PyP6MmA0UIuvRajqpV1laHcnEo/w6FuP8stXf8le9Xtx\nwyk3cMqIU2zkhlESasPZ+7JqwqUZ7WT0XNp77b0fGAJMAmYBw4AdhUYuIpNE5G0RWSwi38yy/xsi\nMt//FopITEQGiMghge3zRWSriFzTgevaZZqiTUyfP52T7jmJJ959gls+fguPn/84E0ZOMGEwSsal\nn7qUEf9s+xGlEfNGMOU8m2VsdC0FOd4TkQWqOkZEKoEXVPXYdiMWCQPv4GZXrwZeBS5U1UU5wp8N\nfEVVJ6ZtD/njx6nqyrR9Xd6stCOyg/tfv5/f/Os3jN17LNccew1H7d0tBmcZBmDzZIxdo6t8K0X8\n/1YROQJYCxTqinIc8J6qLgMQkRnAOUBWcQAuAh7Osn0isCRdGLqahuYGps+fzvTXpnPS8JN46N8e\n4tDBh7Z/oGHsZiZ+dKKJgVF02hOHO0VkD+A7wJ+BPsB3C4x7PyBYoK8CstY4RKQOOB34UpbdFwAP\nFXjODrOxcSN3/vNOHlj4AKePOp3HL3icUQNHFet0hmEYZUFecVDVO/3ibGD/9P0i8nlV/W2uwztg\nx2Rcc1VDWvxVfl9Gf0WSW350S2r5+PHHc8L4Ewo64Zrta/jfef/Lo289yjkfOoeZF89kaL+hHTDZ\nMAyjPHhxzou8NOclAKKJaEHH7NJQ1nwf/hGR44CpqjrJr18PJFT1pixhHwd+p6oz0rafA/xHMo4s\nx3W4z2F5w3Juf/V2nnz3Sc4//HyuPPpKhvQZ0qE4DMMwypXu8A3pecBBIjISWAOcD1yYHkhE+gMn\n4/oc0rmQ7P0QHWbxpsXc9spt/P39v/O5Iz/HnEvndGvPmIZhGKWkaOKgqjER+TIwEwgDd6vqIhG5\n0u+/wwc9F5ipqk3B40WkHtcZffmu2PHG+jeYNncac1fP5bKxl/HDU39o31w2DMNoh6I1K+0O8jUr\nzVszj2lzp/Hm+je58pgruXjMxdRV1u1mCw3DMLoXu6tZ6R+7eHyXoqr8Y+U/mDZ3Giu2ruCqcVdx\n5+Q7qa6oLrVphmEYZUV7k+B+DPxUVbf49YHA11X1O7vJvryIiJ5yySlMOW8KMlKYNncaDc0NXH3s\n1Zx7yLlUhitLbaJhGEa3oqu8smZ8u6HUTUlBRESZCpWzKtn7yL35r0v+izMPPNO8URqGYeSgUHFo\nz7dSSERSHr28I75u98GC6IQoB2w5gMkHTzZhMAzD6ALa63N4EHhWRO4BBJgC3Fd0qzpBS7yl1CYY\nhmH0GNqbIX2TiCwATvObvq+qM4tvVscxl8WGYRhdRyGjleYHws0voi2dZsS8EUy53FwWG4ZhdBV5\n+xxE5DPAXODT/veKiHx6dxhWKBOWTuD7l3/fvFQahmF0Ie2NVloATEx+M1pEBgPPquqY3WRfXkrx\nDWnDMIxypqtGKwmwIbC+yW8zDMMwejA5+xzEfQvzVWCmiDyEE4Xzgad2k22GYRhGiWivQ3occAMw\nHvd9hjtU9fGiW2UYhmGUlJzioKoqIv8EVqnqV3ejTYZhGEaJaa/mcBxwsYgsB3b6bdpdOqQNwzCM\n4tCeOJy+W6wwDMMwuhXtzZBetpvsMAzDMLoR7Q1lNQzDMHohJg6GYRhGBiYOhmEYRgYmDoZhGEYG\nJg6GYRhGBiYOhmEYRgYmDoZhGEYGJg6GYRhGBiYOhmEYRgYmDoZhGEYGJg6GYRhGBiYOhmEYRgZF\nFQcRmSQib4vIYhH5Zpb93xCR+f63UERiIjLA7xsgIo+IyCIReUtEjiumrYZhGEYroqrFiVgkDLwD\nTARW4z45eqGqLsoR/mzgK6o60a//FpitqveISAVQr6pb047R1dtWF8V+wzCMnkhTtIkD9zwQVZV8\n4YpZcxgHvKeqy1Q1CswAzskT/iLgYQAR6Q+MV9V7AFQ1li4MhmEYuxtVJRKP0BxrJpaIldqcotLe\nx352hf2AlYH1VcCx2QKKSB3uw0Jf8pv2BzaIyHTgSOCfwLWq2lg8cw3DMFpRVaKJKLFEDFVFVQmH\nwtRU1FAZrqQp2sTOyE5UFREhJCEqQhVUhCoQyftSXhYUUxw60l41GXhBVRv8egXwYeDLqvqqiNwK\nfAu4If3AW350S2r5+PHHc8L4EzpvsWEYvZKEJojGo8QTcdQXXWEJU1tZy8CagVSFq6gMV1IRaltk\nJgUkGo/SEm+hMdJIU6yJZHN9SEKEJERluJKQlG78z4tzXuSlOS8BEE1ECzqmmH0OxwFTVXWSX78e\nSKjqTVnCPg78TlVn+PW9gZdUdX+/fhLwLVU9O+0463MwDKNDxBNxogknBEnCoTD1lfXUVNRQXVFN\nZaiScCjc6XPEEjGi8SiReITGaCNN0SZiGgMFESEcCu/yOTpLoX0Oxaw5zAMOEpGRwBrgfODC9EC+\nf+FkXJ8DAKq6VkRWisjBqvourlP7zSLaahRI8MFSFEFSb0fhUJiwhHtEldroGSQL6YQmXI1AoTJc\nSZ+qPtRW1FIZrixKIZ1sXqqtrKV/TX+g9dmJxqM0xZpojDTSHGtOHZNslqoMV3apLZ2laOKgqjER\n+TIwEwgDd6vqIhG50u+/wwc9F5ipqk1pUVwNPCgiVcASYEqxbDWyk9AEkXgk9YalqlSFq+hb1Zfa\nyloESYWJxCPEEjFaYi3ENIYgrmotIAgigiApAQlJyETE6FKicdc/ENd46g29KlxFv+p+1FbWUhmq\nLGnzTjgUTvVZ9K3uC/XuGUsKWHOsmcZoo+vH8EIWCnnBCFXu9uelaM1KuwNrVuo6kqMwkjUCRakI\nVVBfWU9dZR2V4UqqwlUFPViqSkITxDVOPBFv8wBEE9GUkCQ00UZAVJVQyNdCvICUotptdG9UlVgi\n1pqHfA22pqKGusq6VIdxKQrUriB5fdFElEgsQmOskeZosxM9z640S3WHZiWjmxIchZHQBCipKnBd\nZd0ut7mKCGEJEybs6ox57AgKSFzjxOKxNgLSEm0hkUikHvLgyJDUeULhknb2GcUjfcQQuPxVW1FL\nv+p+qbzaU0YIgbu+yrCr5dRV1jGAAUDbZqnGaGOqLyP5cpXs+E7vNO8sJg69gFR1OxFPFaw1FTUM\nqB7gHq4uzFAdQUSokIp2z53QhBOPRDwlJrFELCUgyf8kSQFJNmclayDJvhGje5JrxFBNZU3eEUO9\nhYxmKVrTLJqI0hxtpjHmmqWSJPN+Z2pRvTOVezDJ5pu4xhFcZqipqGFg7UBX3fbtruVEslAvRESS\nApJcDgpIJBZJVc2TApJsLjN2L20GNvimxQqpoK6yjtrK2l4vBIUSkhDVFdVUU02fqj5A22apllgL\njVHX8R1PxEEgFi9s8p71OZQxycIvoYnUtuqK6tSQvHJudy0Wwf6QSDzCtpZtqQ7AsISprqi22kUR\nSPZpJZuHkk0myf6sUg3r7E0Eh9cOqB3Qbp+DiUOZkGvkUH1VfWokRlW4yoSgEyQ0QUushZ2RnWxr\n2UYsEUu135ZbLas7ERxGKgj1VfX0re5LTUWN1QhKjIiYOJQjwbbXhCZclTswcihZ5bY33OIQiUdo\nijaxtWUrzbHm1BDc6nC1iW8eVJWWeEvqBSY4jNTSrntRiDiYfJeY9JFDgqSm7XfFyCGj41SFq6gK\nV9G/pj/xRJzmWDPbW7azI7KDhCYIhUJUh6vtnuBqB5FYhAQJwhKmT1Uf+lT1obqi2moHZY7VHEpE\nU7TJFTR+5FB9ZX1JRw4Z7ZN8M26MNrK1eSvRRBShd3VqJ9MgFo+BuMEO/av7U1NRY82aZYQ1K3VD\nmqJNxBNx9qjdg/41/a1Nu4xJzmrd2ryVxmhjathsT+vUjsajqb6DcChM3+q+rnZgtaeyxZqVuhGR\neISWWAv9qvuxZ92eveZNsyeT7LDuW92XhCZojjWzI7KD7S3biSfihCREVUVV2dUEkx30yRnstZW1\nDK4fnBpiavQOrOZQZOKJOE2xJmoqahhc5x4wo+fTEmtJdWpH4hEU7dYjyiLxCNG4c+UcFlc7qK+q\nt9pBD8WalUpIQhM0RZsIS5i9+uyVmqBi9D5iiViqU3tnZGeqeaaUzU/JOTLJyZJ1lXX0repLTWWN\n1Q56AdasVCIaI40gMLhuMP1q+vWo9mej41SEKlKjeFQ15X1za8tWYgnnwTY5PLmYJGsHSaeKA2oG\npEbEWR410rGaQxcS7GweUDug7Nqajd1PJB6hOdrMtpZtqS+IVYQrumReQKp24H1q1VfVO2d14Wob\nCNHLsZrDbsI6m43OkpxT0a+mH/FEnJZ4S2untsYJS7jg4c3ZXFQMrB2YmjhptQOjI1jNYRewzmaj\nWCQL+uScikg84rzYhiqorqhOhTMXFUZnsA7pIpHQBI3RRipCFQypH0J9Vf1ut8HoXSQ7tVOOAr1X\nWXNRYXQGa1bqYlQ19XGNIfVD6Fvd16rqxm4h2KmddMKY/E6xYRQDy1kFEuxsHlg70MZ+GyUj6XLF\nMIqJiUM7WGezYRi9EROHHMQSMZqiTdRW1jK8/3DrbDYMo1dh4pBGsLN5aL+h1tlsGEavxMTBk+xs\nVtQ6mw3D6PWYOGCdzYZhGOn0anGIxCNEYhH6Vve1zmbDMIwAvVIc2nQ2DxhuwwINwzDS6FXiYJ3N\nhmEYhdErxME6mw3DMDpGUcVBRCYBtwJh4C5VvSlt/zeAzwZsORQYpKoNIrIM2AbEgaiqjuuMDc3R\nZqKJKHvW7mmdzYZhGAVSNMd7IhIG3gEmAquBV4ELVXVRjvBnA19R1Yl+/X3gaFXdnOccOR3vBWc2\nD6obZP7rDcMwPKV2vDcOeE9Vl3ljZgDnAFnFAbgIeDhtW4ddTAY7m0cMGGGdzYZhGJ2gmA3v+wEr\nA+ur/LYMRKQOOB14NLBZgWdEZJ6IXN7eyRKaYGdkJ7FEjKH9hjK8v41CMgzD6CzFrDl0pL1qMvCC\nqjYEtp2oqh+IyGDgbyLytqrOyThJoLN5r/q96Ffdz3zaG4Zh7CLFFIfVwLDA+jBc7SEbF5DWpKSq\nH/j/DSLyOK6ZKkMcfvLDn1BbUUtNZQ2nfvRUJkyY0BW2G4Zh9BhmzZrFrFmzOnRMMTukK3Ad0qcB\na4BXyNIhLSL9gaXAUFVt8tvqgLCqbheReuBp4EZVfTrtWI3EItbZbBiG0QFK2iGtqjER+TIwEzeU\n9W5VXSQiV/r9d/ig5wIzk8LgGQI87puHKoAH04UhiQmDYRhG11P235AuZ/sNwzBKQSE1B5smbBiG\nYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZh\nZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg4mAYhmFk\nYOJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg4mAYhmFkYOJgGIZhZGDiYBiGYWRg\n4mAYhmFkYOJgGIZhZGDiYBiGYWRQVHEQkUki8raILBaRb2bZ/w0Rme9/C0UkJiIDAvvDft8TxbTT\nMAzDaEvRxEFEwsAvgUnAaOBCETk0GEZVb1bVsao6FrgemKWqDYEg1wJvAVosO0vJrFmzSm3CLmH2\nl5Zytr+cbYfyt78QillzGAe8p6rLVDUKzADOyRP+IuDh5IqIDAXOBO4CpIh2loxyz2Bmf2kpZ/vL\n2XYof/sLoZjisB+wMrC+ym/LQETqgNOBRwOb/wf4TyBRLAMNwzCM7BRTHDrSFDQZeCHZpCQiZwPr\nVXU+PbTWYBiG0Z0R1eI054vIccBUVZ3k168HEqp6U5awjwO/U9UZfv1HwCVADKgB+gGPqurn0o7r\nkX0RhmEYxUZV8754F1McKoB3gNOANcArwIWquigtXH9gKTBUVZuyxHMK8A1VnVwUQw3DMIwMKooV\nsarGROTLwEwgDNytqotE5Eq//w4f9FxgZjZhCEZXLDsNwzCMTIpWczAMwzDKl7KcIS0i94jIOhFZ\nWGpbOoOIDBOR50TkTRF5Q0SuKbVNHUFEakRkroi8JiJviciPS21TRynnCZYiskxEFnj7Xym1PR1F\nRAaIyCMissjnn+NKbVOhiMghgYm780Vkaxk+v9f7smehiDwkItVZw5VjzUFExgM7gPtU9YhS29NR\nRGRvYG9VfU1E+gD/BM5N74/pzohInao2+r6lF3D9Qi+U2q5CEZGvAUcDfVX1E6W2pyOIyPvA0aq6\nudS2dAYR+S0wW1Xv8fmnXlW3ltqujiIiIWA1ME5VV7YXvjsgIiOBvwOHqmqLiPwO+D9V/W162LKs\nOajqHGBLqe3oLKq6VlVf88s7gEXAvqW1qmOoaqNfrML1KZVNQdVDJliWpd1+AMp4Vb0HXN9kOQqD\nZyKwpFyEwbMNiAJ1XpjrcAKXQVmKQ0/CK/lYYG5pLekYIhISkdeAdcBzqvpWqW3qAOU+wVKBZ0Rk\nnohcXmpjOsj+wAYRmS4i/xKRO/0k2HLkAuChUhvREXxt8xZgBW4UaYOqPpMtrIlDCfFNSo8A1/oa\nRNmgqglVPQoYCpwsIhNKbFJB9JAJlid6f2RnAFf5ZtZyoQL4MPArVf0wsBP4VmlN6jgiUoWbvPuH\nUtvSEURkFPAVYCSutaKPiHw2W1gThxIhIpU4dyEPqOofS21PZ/FNAk8Cx5TalgI5AfiEb7d/GDhV\nRO4rsU0dQlU/8P8bgMdxfszKhVXAKlV91a8/ghOLcuMM4J/+HpQTxwAvquomVY0Bj+GeiQxMHEqA\niAhwN/CWqt5aans6iogMSrpWF5Fa4GPA/NJaVRiq+m1VHaaq++OaBf6ePvO+OyMidSLS1y/XAx8H\nymbUnqquBVaKyMF+00TgzRKa1FkuJOAotIx4GzhORGp9OTQR5/k6g6JNgismIvIwcAqwp4isBG5Q\n1eklNqsjnAhcDCwQkWSher2q/rWENnWEfYDf+tEaIeB+VX22xDZ1lnIbrjcEeNw911QAD6rq06U1\nqcNcDTzom2aWAFNKbE+H8KI8ESi3/h5U9XVfU56H63P7F/CbbGHLciirYRiGUVysWckwDMPIwMTB\nMHeon00AAAidSURBVAzDyMDEwTAMw8jAxMEwDMPIwMTBMAzDyMDEwTAMw8jAxKGbISJ7i8gMEXnP\n+855UkQO6mRc471r3n+JyL4iUvSp/iJypIicEVifLCLf7KK4d/j/kSLS5K/rLe8+/PN5jjtCRO7p\nChsKtPMUETk+sH6liFzSRXF/uyviKTUi8iHv8v2fInJAJ47/ip+AWTREZIyI3F3Mc3RnbJ5DN8LP\nWHwRmK6qv/HbxgD9OuMOW0T+F5ijqg92sZ1hVY3n2PcFnDvpq7vynD7u7ara1zsrfCLprl1E9se5\nAfiFqt6b5bj7gNsCLhvaO48AaCcfDhGZCmxX1Vs6c3w7cW9X1b4dCL9L11IsRORbQFhV/7uTx78P\nHKOqmzpwTM58m+eYWcBnVHV9B00sf1TVft3kB5yK83Ofa//PcK4SFuAyLMAEYBbOAdginK8mgH8H\nNuG+z30/MAJ4w++rA36Pc1vwGPAy8GG/b0fgfJ/CCRXAvcD/+rA3Ax/BCdm/gH8AB+Pcd68A1uPc\naXwG+AKuYAbn7OvvwOvAM8CwQNy/8PEsAc7Lcf3bA/EsTNv3UeBfWY6pBt4NrE8F7gGe8+e6OhDn\nO8BvgTeStgWOO9qn8zzgr7jvcQBc49PxdZyHzhHABzgfQvOBk/w5v+7DzwJ+Drzq79dHcP6R3gV+\nEDjf4/5cbwCX+20/AWI+3vv9tq/h8sRCnAPHbNcy3KdxMu98pZ18ONUf+zywDPg3f88XAE8BFT7c\nd3Hfhl8I3OG3Vfhtp/j1HwM/TIv/zEAaPeu3XYzzTDwfl89CfvuvfFq9AUwNpHmLtyd5fKH5dpS/\nhnn++g7x4T7tr+M1As8g8E3gqlKXDSUpj0ptgP0CN8Nl+p/n2Hce8DTOk+hewHJgb5w4NOA8LCZr\nHif6Y6YD/+aXR+ILVOAbwK/98mE4/+5Jcdieds7pfvle4M+01jb74t78wLkSeMQvfx6YFojj87SK\nwxPAJX55CvB4IO7f+eVDgcU50iCfOAwAGrMccxyulpFcn4r7OFElsCewEfc9ipFAHPfhlvQ4Kn26\n7unXz8d9Ex2cL/xKv9zP/38P+Frg+NQ6TpR+HLjfa3AuMaqAlcBAvy/5X+sLrYHBNPDLR+MKyFqg\nHleAHpV+LT7c04Hj+reTD6fiCs4wMAZoBE73+x4Dzgna6JfvA872y6Nx/nom4l4eKrKcI5gmh+Ly\nVjI//SqQT5LXHfZpd7hffx/YIz1vFJBvnwUO9MvH0iouC4B9gvfRL38Unzd7268sfSv1YPJV/U8E\nHlKXY9eLyGzcW+c24BVVXQPgv7EwAvcWDtndUp8I3Aqgqm+KyIICbfuDPz+4wvg+ETnQ70vmJclx\nTnAF9bl++QHgp4G4/+jtWSQiQwqwJ51c50y+ySdR4ElVjQKbRGQ9rnAGWK6q2T67eQhORJ/xrTRh\nXKEOrlB5SET+mLyGduwBV1iBK8zfUNV1ACKyFBiG+5DVtSKSTKthwEG4N/IgJwGPqWqTP/4xYLyP\nP3gtS4ADRGQazoNue76YFHhKVeMi8gbuLX6m37cQJz7gPNr+J64mugeuBvUXVX1LRB7AvQwcp877\nZzaSaXQaTsDm+fStBdb6fef7b1ZU4Hx6jcalW6Gk8q13kX888Ad/HnCiDO55+a2I/B4ngEk+CFxv\nr8LEoXvxJq5KnIv0AidZULcEtsUp7L7mKryCApXe4dcYWP4B7q3rkyIyAtdcUgi5zhspIEw+xpLd\nu6RmiS94rmB67cwRtwBvqmo218ZnASfjfPv/l4gU8tna5P1K0PbeJYAK/22M03AFa7OIPAfUZIkn\n/dqE1vuXuhZVbfB9V5OAL+Ka+y5rx8aIPzYhItE0G8Pivjt8O65/abWIfC/NxiNwIleo0P9WVdt0\ntvu+pK/j+ha2ish0sqcDFJZvQ7iP24zNOFj1P0RkHO5+/lNEkp9hDaZpr8JGK3UjVP+/vbMHySqM\n4vjvb0iDUVA4BS5CiWNTg9DS0lD0hrU4RS1R0RQ0BE0hWZvRkIsgDS051CBGGogVDoqmfVAQLUVE\nREpDNZyG81y8et8v0Eh9z2+Se/E+5z33uc95zgfPsTFge767V6qY6AIm8F1Uk6RWfEGaovxCWmtx\nncQXCCR14h9yxpdUSdIElKj8YexkefecP1VzEQ85lZPlGX5MNkAPHrpYMylBfRPoL3M7C7+thbdA\nq6SDabxmSZ0p2dtmZk/xhjW7gB3AEit1APUbPOG6/Z4MQwfucWX8kbd3BJ8Tx9Pxyy24VzaxeixJ\ne/DQzgM8T3AgXb8g6Xydcq2WMVukv6Ud+UnSXJF0AvcsDwH98tag1XgCdKd5jaTdktpwHf4EFpM3\neST3P0u4njJqzlszWwQ+SOpO4ygZTSS1m9mUmV0DvuJNrMC9lY81NbIFCeOw8SgBh1Mp6zxwHfhs\nZsN4CGMW/5gum1dQGMUPwWr8fQdf7BZwD2AByPr4XgEe4QbkEyvJP6sP6JU0jYdZsnvjQKekGUmn\nVsl3ETgtaRY3DpfqkLnS+O1ZKStwH69UKjRJx/W1v8pzal43s9+4R3cjhe1m8PDENmAoheWmkww/\n8HBKKcnXVeXZld7dCO5BvMITus9z9+/iR70PmXezG8Q3CS+AATObLTPeXmBcfjz8EMud1zrwnEst\nXRRkTL9zAA/xjJDa3CZD1AucNbN3wG282KDiGGb2GrgKjKa5MYon/OdwXb8B7uG5orweRiRlR8XX\nO297gDPpPc4Dx9L1Pklzkl4Ck2ls8EZK67KJ2WxEKWsDknZXzWb2S9428DGwr0pseFMjaRBPwG+q\nPt3/GkkPgdJWfe/rQSOXskbOoTFpAcbkrUoFnNviC8QtPHYdxiGHmR393zJsZFLI6X0jGgYIzyEI\ngiAoQ+QcgiAIggJhHIIgCIICYRyCIAiCAmEcgiAIggJhHIIgCIICYRyCIAiCAn8B0whtc/Dkdb8A\nAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 20 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 23, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Comparison of best models using cross-validation" ] }, { "cell_type": "code", "collapsed": true, "input": [ "from sklearn.linear_model import LogisticRegression\n", "from sklearn.neighbors import KNeighborsClassifier\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.naive_bayes import GaussianNB\n", "from sklearn.dummy import DummyClassifier\n", "\n", "# After-the-fact hardcoded optimizations, in case we want to skip the experimentation phase\n", "# (e.g. during a presentation)\n", "if bestLogCValue == None:\n", " bestLogCValue = -1\n", "if bestKValue == None:\n", " bestKValue = 30\n", "if bestNrEst == None or bestMaxFeat == None:\n", " bestNrEst = 256\n", " bestMaxFeat = 8\n", "\n", "models = {}\n", "models = {'logres with log10(C)=%d' % bestLogCValue : LogisticRegression(C=pow(10,bestLogCValue)), # Takes about 1 second elapsed time\n", " 'knn with K=%d' % bestKValue : KNeighborsClassifier(n_neighbors=bestKValue), # Takes about 12 seconds elapsed time\n", " 'gaussianNB': GaussianNB(),\n", " 'baseline' : DummyClassifier(strategy='stratified')\n", "# 'randomforest with nrEst=%d and maxFeat=%d' % (bestNrEst,bestMaxFeat): RandomForestClassifier(n_estimators=bestNrEst, max_features=bestMaxFeat) # Takes about 5 seconds elapsed time\n", " }\n", "\n", "fig = plt.figure(1,(9,6))\n", "plt.title(\"%d-fold cross-validation %s scores for various model types\" % (nrCrossValidationFolds, scorerType))\n", "plt.xlabel(\"Fold #\")\n", "plt.ylabel(scorerType)\n", "plt.grid()\n", "\n", "for modelName, model in models.items():\n", " print >> sys.stderr, \"Building %s model ...\" % modelName,\n", " print >> sys.stderr, \"applying it ...\",\n", " scores = cross_val_score(model, X_values, y=y_values, scoring=scorerType, cv=cvGenerator, n_jobs=1, verbose=10)\n", " print >> sys.stderr, \"done\"\n", " plt.plot(range(1,nrCrossValidationFolds+1), scores, 'o-', label=\"%s (%2.2f%% +/- %2.2f%%)\" % (modelName, scores.mean() * 100, scores.std() * 100))\n", " \n", "plt.legend(loc='best')\n", "plt.show()" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 31, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.748927 - 3.7s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "Building knn with K=30 model ... applying it ...[Parallel(n_jobs=1)]: Done 1 jobs | elapsed: 3.7s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.758574 - 3.7s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.769673 - 3.6s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.771936 - 3.6s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.806344 - 3.6s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 2 jobs | elapsed: 7.4s\n", "[Parallel(n_jobs=1)]: Done 5 jobs | elapsed: 18.2s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.759772 - 3.7s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.792484 - 3.7s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.773067 - 3.6s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.779205 - 3.7s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.782687 - 3.7s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 8 jobs | elapsed: 29.2s\n", "[Parallel(n_jobs=1)]: Done 10 out of 10 | elapsed: 36.6s finished\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.730469 - 0.1s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ " done\n", "Building gaussianNB model ... applying it ...[Parallel(n_jobs=1)]: Done 1 jobs | elapsed: 0.1s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.757479 - 0.1s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.769577 - 0.1s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.773234 - 0.0s\n", "[CV] no parameters to be set ........................................." ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 2 jobs | elapsed: 0.1s\n", "[Parallel(n_jobs=1)]: Done 5 jobs | elapsed: 0.3s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] ................ no parameters to be set, score=0.790082 - 0.0s\n", "[CV] no parameters to be set ........................................." ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] ................ no parameters to be set, score=0.769992 - 0.1s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.782535 - 0.1s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.773197 - 0.1s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.756975 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.783625 - 0.0s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 8 jobs | elapsed: 0.5s\n", "[Parallel(n_jobs=1)]: Done 10 out of 10 | elapsed: 0.5s finished\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.748908 - 0.4s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ " done\n", "Building logres with log10(C)=-1 model ... applying it ...[Parallel(n_jobs=1)]: Done 1 jobs | elapsed: 0.4s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.779050 - 0.5s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.790301 - 0.4s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.786824 - 0.4s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.816228 - 0.4s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 2 jobs | elapsed: 0.9s\n", "[Parallel(n_jobs=1)]: Done 5 jobs | elapsed: 2.1s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.785703 - 0.4s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.801108 - 0.4s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.785443 - 0.3s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.777990 - 0.4s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.794478 - 0.4s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 8 jobs | elapsed: 3.1s\n", "[Parallel(n_jobs=1)]: Done 10 out of 10 | elapsed: 3.8s finished\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.508652 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.494918 - 0.0s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ " done\n", "Building baseline model ... applying it ...[Parallel(n_jobs=1)]: Done 1 jobs | elapsed: 0.0s\n", "[Parallel(n_jobs=1)]: Done 2 jobs | elapsed: 0.0s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.485547 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.495306 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.499960 - 0.0s" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.506277 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.494437 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.514219 - 0.0s" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 5 jobs | elapsed: 0.1s\n", "[Parallel(n_jobs=1)]: Done 8 jobs | elapsed: 0.2s\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.503079 - 0.0s\n", "[CV] no parameters to be set .........................................\n", "[CV] ................ no parameters to be set, score=0.503250 - 0.0s\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "[Parallel(n_jobs=1)]: Done 10 out of 10 | elapsed: 0.2s finished\n", " done\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nMHv2bCZMmIC/vz8APXr0oEGDBvlTrVq1uOKKKwBYtWpVoXUNGjTAx8eHb7/9ttRjpKSk0KxZMwYP\nHpy/7NixYwwcOJCmTZvSsGFD+vbty3fffZe/fsWKFXTo0IGWLVvyxRdf5C8/fvw45513Hunp6U6f\ns7Mxa9YsnnzySae2nT59Or169aJWrVo8/fTTZ91+w4YNDBkyhAYNGhAcHMwbb7zhVFlxcXH06NGD\nZs2aMWfOnPzl2dnZXHjhhezfvz9/mb+/P3fccQezZ892SgahBLTWHjuZ6gtCzcDR9b54cYwODZ2q\nQedPoaFT9eLFMU6XWxllhISE6BUrVji9fVUyY8YMPW7cuELLwsPD9XvvvefU/itXrtRt2rTRWmud\nkZGhR48erS+55BJ9+vTpMtVj7969+tChQ1prrU+dOqVvueUWfcMNN+Svv/HGG/WNN96o09PT9erV\nq3XDhg315s2bHZaVkZGhmzZtqvfv31/i8Tp06KA//vhjh+uio6N1gwYNzirDnXfeqYcMGaIHDx5c\n6Nj//POPzs3N1Vpr/d133+latWrpkydPaq217tWrl968ebOOi4vTjRs31nl5eVprrSdPnqy/+uqr\nUo9XlPbt2+s9e/aUuH7QoEF6zZo1TpW1cOFC/dNPP+krr7xSP/3006Vue+TIEd28eXP96aef6qys\nLH3q1Cm9detWp8q67LLL9JIlS/T+/ft1kyZN8tt89uzZ+qWXXip2rKSkJN20aVOdlZXllBzeQknv\nb2t5mXQBscgIggfzxhvLSEh4rtCyhITnmDt3eZWWYc/WrVvp2LFj/td4SEgIr7zyCr1796ZRo0bc\neOON+e6Q6Oho2rRpw6uvvkqLFi1o1aoVH374ocNyV65cSVhYWP788OHD6d+/f/784MGD+eGHH/KP\nuWLFCpYsWcKsWbP44osvaNCgAX379s3fPjExkUGDBhEYGEhERATHjh0rVa4zZ84wZswY8vLyiIqK\nok6dOmU6L23btqV58+aA+YD09fWlZcuWAKSnp/PNN9/w7LPPUrduXQYOHMiVV17Jxx9/7LCs3377\njUaNGtGqVSuH62NiYjh69CjXXHONw/Uffvgh1113XakyrF27ls2bNzNhwoRCQZn+/v507doVHx8f\n8vLy8PHxoWnTptSuXTtflu7duxMWFkbt2rU5duwYv//+O3v27OHaa689+4myozSrWWpqKtu3b2fA\n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\nH2JGo6lrmH33AAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 21 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 31, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "ROC curves: balancing true positives and false positives" ] }, { "cell_type": "code", "collapsed": true, "input": [ "from sklearn.cross_validation import train_test_split\n", "from sklearn.metrics import roc_curve, roc_auc_score\n", "import mpld3\n", "mpld3.enable_notebook()\n", "import sys\n", "from matplotlib import pyplot as plt\n", "import re\n", "from math import log\n", "import json\n", "import copy\n", "\n", "# We don't use cross validation here, but will generate a random test set instead\n", "X_train, X_test, y_train, y_test = train_test_split(X_values, y_values, test_size=0.1, random_state=0)\n", "\n", "finalPredictions = {}\n", "\n", "for modelName, model in models.items():\n", " fittedModel = model.fit(X_train, y_train)\n", " \n", " if hasattr(model, \"predict_proba\"):\n", " print >> sys.stderr, \"Predicting probabilities for %s model ...\" % modelName,\n", " finalPredictions[modelName] = {'train': model.predict_proba(X_train),\n", " 'test': model.predict_proba(X_test)}\n", " print >> sys.stderr, \"done\"\n", " \n", "def plotROCCurve(figSize=7):\n", " # Define some CSS to control our custom labels\n", " css = \"\"\"\n", "table {\n", " border-collapse: collapse;\n", "}\n", "th {\n", " color: #ffffff;\n", " background-color: #000000;\n", "}\n", "td {\n", " padding: 2px;\n", " background-color: #cccccc;\n", "}\n", "table, th, td {\n", " font-family:Arial, Helvetica, sans-serif;\n", " border: 1px solid black;\n", " text-align: right;\n", "}\n", "\"\"\"\n", "\n", " jsonROCData = {} \n", " rocCurveFigure, ax = plt.subplots(figsize=(figSize,figSize))\n", " ax.grid(True, alpha=0.3)\n", " for modelName, probs in finalPredictions.iteritems():\n", " modelNameShort = re.split(\"\\s+\", modelName)[0]\n", "# if modelNameShort not in ['knn','baseline']:\n", "# continue\n", " y_probs = [x[1] for x in finalPredictions[modelName]['test']]\n", " fpr, tpr, thresholds = roc_curve(y_true=y_test, \n", " y_score=y_probs, pos_label=1)\n", "# print \"%s: fpr (size = %d)\" % (modelNameShort, len(fpr)), fpr\n", "# print \"tpr (size = %d)\" % len(tpr), tpr\n", "# print \"thresholds (size = %d)\" % len(thresholds), thresholds\n", " roc_auc = roc_auc_score(y_true=y_test, y_score=y_probs)\n", " jsonROCData[modelNameShort] = {}\n", " jsonROCData[modelNameShort]['fpr'] = [x for x in fpr]\n", " jsonROCData[modelNameShort]['tpr'] = [ x for x in tpr]\n", " jsonROCData[modelNameShort]['thresholds'] = [x for x in thresholds]\n", " jsonROCData[modelNameShort]['roc_auc'] = roc_auc\n", " points = plt.plot(fpr, tpr, 'x-', label=\"%s (AUC = %1.2f%%)\" % (modelName, roc_auc*100))\n", " labels = [\"
%s
FPR%0.1f%%
TPR%0.1f%%
threshold%0.4f
\" % (modelNameShort, fpr[i]*100, tpr[i]*100, thresholds[i]) for i in range(len(fpr))]\n", " mpld3.plugins.connect(rocCurveFigure, mpld3.plugins.PointHTMLTooltip(points[0],labels=labels, css=css))\n", " ax.set_title(\"ROC curve for prediction of successful term deposit sale\", y=1.06, fontsize=14 + log(figSize))\n", " ax.set_xlabel(\"False Positive Rate (FP/FP+TN)\", labelpad=15 + log(figSize), fontsize=12 + log(figSize))\n", " ax.set_ylabel(\"True Positive Rate (TP/TP+FN)\", labelpad=15 + log(figSize), fontsize=12 + log(figSize))\n", " plt.legend(loc=\"best\")\n", " plt.show()\n", " return jsonROCData\n", "\n", "# Export data to JSON file for visualization in D3.js or similar\n", "jsonROCData = plotROCCurve(figSize=9)\n", "with open('d3/ROCCurve.json', 'w') as outfile:\n", " json.dump(jsonROCData, outfile)\n", "\n", "from IPython.html.widgets import interact, fixed\n", "\n", "#mpld3.save_html(plotROCCurve(figSize=9), \"plotROCCurveBanking.html\", figid=\"ROC_Curve_Banking\")\n", "interact(plotROCCurve, figSize=(5,10))" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 33, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "metadata": {}, "output_type": "display_data", "png": "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\nV64Up9Mpq1evFpvNJvX19X3eo7W1VWJiYqS2tlbsdrukp6fLhAkTpLm5WVpbWyU2Nlbq6up6xCMi\nUlhYKFdffXWPcy1YsECysrLkyy+/lLa2Nlm4cKHcdttt/f5ua9eulbS0NDn99NNl6dKlYrfbezz+\n9NNPS3Jycr+3lJQU2bNnT9dz33vvPUlKShKllCxcuFA6OjpEROSLL74Qm83W47z333+/XHDBBf3G\n9Oc//1mWLFnS5/iZZ54pv/zlL6WxsVFiYmLk888/73rsmmuukTvuuKPH8ysqKkQpJS6XS1577TWx\nWCzicrn6fc/+3HvvvYP+7t649tpr5dprr+1xLD8/Xx588EFxOp3ywQcfSHp6uuzdu7ff119zzTWS\nmpoqqampMmfOHHn++ee9Ptcpp5wixcXFsnHjRhk/frw4HA459dRT5csvvxww3ry8PHnllVe8+t0i\nwUD/93iOB73Odb8FPYAhA4TzgDJP0b3dc+w7wHc8Pz8G1AIbPLdP+jmHyOLF4oqLlyZroghIx7hM\nccXFS8mExXL4sMj5T58vL297ebC/1xGne0Fudjpl/hdfyHfLyo66GIsM/I9C5EgRrajwrZge6+tF\njAJ45513yoQJE+Tdd9/t89jTTz/ddX/FihXy3e9+V0SMYhcbG9ujCKSnp8vHH3/c7/ucdtpp8sIL\nL8hHH30k55xzjlx++eXy+uuvyzvvvCN5eXk93rOzIK9cuVKuuuqqHudZuHCh3H333V33H3roIVm8\neHG/77l27VqJiYmR6OjoPv/Z+2rfvn1y9tlny4033igiIuvXr5cxY8b0eM4jjzwiCxcu7Pf1v/zl\nL+WKK67ocayyslJMJpOUlZWJiMjSpUvlBz/4QdfjQxXkp556qk8MgdbS0iKJiYl9PjMff/yxjB49\nWiwWi1gsFnnssccGPMcXX3whdXV14nK5ZPXq1ZKQkCAffPCBV+fauHGjLFy4UE455RR555135A9/\n+IPceeedUlxcLOecc46cccYZfWKbN2+ePPnkk37KQOgLp4Ic8it1ichrwGu9jj3c7edvAt8c6jxN\nJTvBmoTN3AwOsEaZcScmMdG5k/c/gIrDFV2XrDVDZx9yq8vFBZs2kR0by4PTpvl98FNyMvz4xzDF\nk/6HHvLtPA89BBUVxvmOlojw8MMPs3Dhwq7BVN2N6bbyWGxsbI/BTKNGjcLUbZ9t2/9n78zjoqre\n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\n", "text": [ "" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 22, "text": [ "" ] } ], "prompt_number": 22 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 33, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Lift curves: model vs. baseline performance" ] }, { "cell_type": "code", "collapsed": true, "input": [ "import numpy as np\n", "import mpld3\n", "mpld3.enable_notebook()\n", "import re\n", "from math import log\n", "\n", "def sortTestSetByProbability(y_test, y_probs):\n", " sortedIndexList = sorted(range(len(y_probs)), key=lambda k: y_probs[k], reverse=True)\n", " return [(y_probs[i], y_test[i], i) for i in sortedIndexList]\n", "\n", "def calculateLift(sortedProbsAndTrueLabels, nrPercentiles=10, posLabel=1):\n", " ''' Input is a list of tuples containing (prob, true label), sorted in descending order per prob\n", " Output is a a list of nrPercentiles tuples containing, for each percentile:\n", " (percentOfTargetPopulationInThisPercentile,\n", " percentOfPositivePopulationInThisPercentile,\n", " cumulativeLift,\n", " localLift\n", " )\n", " '''\n", " numberOfPositiveInstances = len([x for x in sortedProbsAndTrueLabels if x[1] == posLabel])\n", " percentileSplitOfInstances = [np_array.tolist() for np_array in np.array_split(np.array([x[1] for x in sortedProbsAndTrueLabels]), nrPercentiles)]\n", "# print \"len(percentileSplitOfInstances) = \", len(percentileSplitOfInstances)\n", "# print \"percentileSplitOfInstances[0:2] = \", percentileSplitOfInstances[0:2]\n", " result = [(0.0,0.0,0.0,0.0)]\n", " cumulativePercentage = 0.0\n", " cumulativeLift = 0\n", " localLift = 0\n", " for c in range(len(percentileSplitOfInstances)):\n", " percentile = percentileSplitOfInstances[c]\n", " nrPositivesInPercentile = len([x for x in percentile if x == posLabel])\n", " p = float(c+1)/float(nrPercentiles)\n", " cumulativePercentage += float(nrPositivesInPercentile)/float(numberOfPositiveInstances)\n", " cumulativeLift = cumulativePercentage/p\n", " localLift = (float(nrPositivesInPercentile)/float(numberOfPositiveInstances))/(1.0/float(nrPercentiles))\n", " result.append((p,cumulativePercentage,cumulativeLift, localLift))\n", " return result\n", "\n", "def plotLiftCurve(numberOfPercentiles=10, figSize=5):\n", " # Define some CSS to control our custom labels\n", " css = \"\"\"\n", "table {\n", " border-collapse: collapse;\n", "}\n", "th {\n", " color: #ffffff;\n", " background-color: #000000;\n", "}\n", "td {\n", " padding: 2px;\n", " background-color: #cccccc;\n", "}\n", "table, th, td {\n", " font-family:Arial, Helvetica, sans-serif;\n", " border: 1px solid black;\n", " text-align: right;\n", "}\n", "\"\"\"\n", " jsonLiftData = {}\n", " liftCurveFigure, ax = plt.subplots(figsize=(figSize,figSize))\n", " ax.grid(True, alpha=0.3)\n", " ax.set_autoscaley_on(False)\n", " ax.set_ylim([0,100])\n", " for modelName, probs in finalPredictions.iteritems():\n", " modelNameShort = re.split(\"\\s+\", modelName)[0]\n", " y_probs = [x[1] for x in finalPredictions[modelName]['test']]\n", " sortedProbsAndTrueLabels = sortTestSetByProbability(y_test,y_probs)\n", " lifts = calculateLift(sortedProbsAndTrueLabels, nrPercentiles=numberOfPercentiles, posLabel=1)\n", "# print modelName, lifts\n", " xPerc = [x[0]*100 for x in lifts]\n", " yPerc = [x[1]*100 for x in lifts]\n", " jsonLiftData[modelNameShort] = {}\n", " jsonLiftData[modelNameShort]['xPerc'] = [x for x in xPerc]\n", " jsonLiftData[modelNameShort]['yPerc'] = [y for y in yPerc]\n", " jsonLiftData[modelNameShort]['cumLift'] = [l[2] for l in lifts]\n", " jsonLiftData[modelNameShort]['localLift'] = [l[3] for l in lifts]\n", " points = ax.plot(xPerc, yPerc, 'o-', label=\"%s\" % modelNameShort)\n", " labels = [\"
%s
top-scored%2.1f%%
yields%2.1f%%
cum. lift%1.1f
local lift%1.1f
\" % (modelNameShort, xPerc[i],yPerc[i], lifts[i][2], lifts[i][3]) for i in range(len(yPerc))]\n", " mpld3.plugins.connect(liftCurveFigure, mpld3.plugins.PointHTMLTooltip(points[0],labels=labels, css=css))\n", " ax.set_title(\"Lift curve for prediction of successful term deposit sale\", y=1.06, fontsize=14 + log(figSize))\n", " ax.set_xlabel(\"Percentage of test instances (decreasing by probability)\", labelpad=15 + log(figSize), fontsize=12 + log(figSize))\n", " ax.set_ylabel(\"Percentage of positive instances targeted\", labelpad=15 + log(figSize), fontsize=12 + log(figSize))\n", " plt.legend(loc=4)\n", " plt.show()\n", " return jsonLiftData\n", "\n", "# Export data to JSON file for visualization in D3.js or similar\n", "jsonLiftData = plotLiftCurve(numberOfPercentiles=100, figSize=9)\n", "with open('d3/LiftCurve.json', 'w') as outfile:\n", " json.dump(jsonLiftData, outfile)\n", "\n", "from IPython.html.widgets import interact, fixed\n", "\n", "#mpld3.save_html(plotLiftCurve(numberOfPercentiles=10, figSize=9), \"plotLiftCurveBanking.html\", figid=\"Lift_Curve_Banking\")\n", "interact(plotLiftCurve, numberOfPercentiles=(5, 20), figSize=(5,10))" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 35, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 23, "text": [ "" ] } ], "prompt_number": 23 }, { "cell_type": "heading", "level": 2, "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 35, "slide_type": "subslide" }, "slideshow": { "slide_type": "slide" } }, "source": [ "Profit curves: knowing if/when to stop" ] }, { "cell_type": "markdown", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 37 }, "slideshow": { "slide_type": "fragment" } }, "source": [ "From the given case description, we don't exactly know how much a single contact costs, and how much a successful one would earn in terms of revenue. However, for each combination of these two, we can draw a profit curve." ] }, { "cell_type": "code", "collapsed": true, "input": [ "def calculateProfit(sortedProbsAndTrueLabels,\n", " nrPercentiles=20,\n", " posLabel=1,\n", " avgCostPerContact=10,\n", " avgRevenuePerContact=50\n", " ):\n", " ''' Input is a list of tuples containing (prob, avg cost per contact, avg revenue per contact,\n", " number of percentiles, true label), sorted in descending order per prob\n", " Output is a list containing tuples of the form\n", " (percentOfTargetPopulationInThisPercentile,\n", " cumulative revenue,\n", " cumulative cost,\n", " cumulative profit,\n", " revenue for this percentile,\n", " cost for this percentile,\n", " profit for this percentile)\n", " '''\n", " assert(avgCostPerContact >= 0.0), \"avgCostPerContact is expressed as a positive float\"\n", " assert(avgRevenuePerContact >= 0.0), \"avgRevenuePerContact is expressed as a positive float\"\n", " numberOfPositiveInstances = len([x for x in sortedProbsAndTrueLabels if x[1] == posLabel])\n", " percentileSplitOfInstances = [np_array.tolist() for np_array in np.array_split(np.array([x[1] for x in sortedProbsAndTrueLabels]), nrPercentiles)]\n", "# print \"len(percentileSplitOfInstances) = \", len(percentileSplitOfInstances)\n", "# print \"percentileSplitOfInstances[0:2] = \", percentileSplitOfInstances[0:2]\n", " result = [(0.0,0.0,0.0,0.0,0.0,0.0,0.0)]\n", " cumulativeCost = 0.0\n", " cumulativeRevenue = 0.0\n", " cumulativeProfit = 0.0\n", " for c in range(len(percentileSplitOfInstances)):\n", " percentile = percentileSplitOfInstances[c]\n", " nrPositivesInPercentile = len([x for x in percentile if x == posLabel])\n", " nrNegativesInPercentile = len(percentile) - nrPositivesInPercentile\n", " assert(nrPositivesInPercentile + nrNegativesInPercentile == len(percentile))\n", " assert(len(percentile) > 0)\n", " p = float(c+1)/float(nrPercentiles)\n", " costThisPercentile = avgCostPerContact * (nrPositivesInPercentile + nrNegativesInPercentile)\n", " revenueThisPercentile = avgRevenuePerContact * nrPositivesInPercentile\n", " profitThisPercentile = revenueThisPercentile - costThisPercentile\n", " cumulativeRevenue = cumulativeRevenue + revenueThisPercentile\n", " cumulativeCost = cumulativeCost + costThisPercentile\n", " cumulativeProfit = cumulativeProfit + profitThisPercentile\n", " result.append((p, cumulativeRevenue, cumulativeCost, cumulativeProfit, revenueThisPercentile, costThisPercentile, profitThisPercentile))\n", " return result\n", "\n", "def plotProfitCurve(numberOfPercentiles=10, figSize=7, avgCostPerContact=15, avgRevenuePerContact=75, yUnit=1000.0):\n", " # Define some CSS to control our custom labels\n", " css = \"\"\"\n", "table {\n", " border-collapse: collapse;\n", "}\n", "th {\n", " color: #ffffff;\n", " background-color: #000000;\n", "}\n", "td {\n", " padding: 2px;\n", " background-color: #cccccc;\n", "}\n", "table, th, td {\n", " font-family:Arial, Helvetica, sans-serif;\n", " border: 1px solid black;\n", " text-align: right;\n", "}\n", "\"\"\"\n", " jsonProfitData = {}\n", " profitCurveFigure, ax = plt.subplots(1, figsize=(int(figSize),int(figSize)))\n", " ax.grid(True, alpha=0.3)\n", " ax.set_autoscaley_on(True)\n", " for modelName, probs in finalPredictions.iteritems():\n", " modelNameShort = re.split(\"\\s+\", modelName)[0]\n", " y_probs = [x[1] for x in finalPredictions[modelName]['test']]\n", " sortedProbsAndTrueLabels = sortTestSetByProbability(y_test,y_probs)\n", " profits = calculateProfit(sortedProbsAndTrueLabels,\n", " avgCostPerContact=avgCostPerContact,\n", " avgRevenuePerContact=avgRevenuePerContact,\n", " nrPercentiles=int(numberOfPercentiles),\n", " posLabel=1)\n", " xPerc = [x[0]*100 for x in profits]\n", " yProfit = [x[3]/yUnit for x in profits]\n", " jsonProfitData[modelNameShort] = {}\n", " jsonProfitData[modelNameShort]['sortedProbsAndTrueLabels'] = sortedProbsAndTrueLabels\n", " jsonProfitData[modelNameShort]['xPerc'] = [x for x in xPerc]\n", " jsonProfitData[modelNameShort]['yProfit'] = [y for y in yProfit]\n", " jsonProfitData[modelNameShort]['cumProfit'] = [p[3] for p in profits]\n", " jsonProfitData[modelNameShort]['intervalProfit'] = [p[6] for p in profits]\n", " points = ax.plot(xPerc, yProfit, 'o-', label=\"%s\" % modelNameShort)\n", " labels = [\"
%s
top-scored%2.1f%%
cum. profit (USD)%.0f
interval profit (USD)%.0f
\" % (modelNameShort, xPerc[i],profits[i][3], profits[i][6]) for i in range(len(yProfit))]\n", " mpld3.plugins.connect(profitCurveFigure, mpld3.plugins.PointHTMLTooltip(points[0],labels=labels, css=css)) \n", "# print \"%s: \" % modelNameShort, profits\n", " ax.set_title(\"Profit curve for prediction of successful term deposit sale\", y=1.06, fontsize=14 + log(int(figSize)))\n", " ax.set_xlabel(\"Percentage of test instances (decreasing by probability)\", labelpad=15 + log(int(figSize)), fontsize=12 + log(int(figSize)))\n", " ax.set_ylabel(\"Profit (in %d USD)\" % int(yUnit), labelpad=15 + log(int(figSize)), fontsize=12 + log(int(figSize)))\n", " plt.legend(loc=1)\n", " plt.show()\n", " return jsonProfitData\n", "\n", "# Export data to JSON file for visualization in D3.js or similar\n", "jsonProfitData = plotProfitCurve(avgCostPerContact=15, avgRevenuePerContact=50, numberOfPercentiles=100, figSize=9, yUnit=1)\n", "with open('d3/ProfitCurve.json', 'w') as outfile:\n", " json.dump(jsonProfitData, outfile)\n", "\n", "from IPython.html.widgets import interact, fixed\n", "\n", "#mpld3.save_html(plotProfitCurve(avgCostPerContact=10, avgRevenuePerContact=50, numberOfPercentiles=20, figSize=9), \"plotLiftCurveBanking.html\", figid=\"Lift_Curve_Banking\")\n", "interact(plotProfitCurve, numberOfPercentiles=(10,50), figSize=(5,10), avgCostPerContact=(10,50), avgRevenuePerContact=(20,100))" ], "language": "python", "metadata": { "internals": { "frag_helper": "fragment_end", "frag_number": 38, "slide_helper": "subslide_end" }, "slide_helper": "slide_end", "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "metadata": {}, "output_type": "display_data", "png": "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\nC+AU7NzJjYvxHBm/g/+2/i8+JQpoOyxNoWIy2j1X9mTwmsEse3IZbps3qzHthATV4jbo2xc8PKBz\nZ2XPW7Wyo+AaTSYIISwO7ihM9Frugke3sHNA9NRZvFeqDxc99vPCgy/YWxy7UtTGFD3dPFnXfx03\n428yeM1gkps1UQuxx46FL76w8Nujh9oVrWdP2LUrd88panorLLTeNJp0tMHOjsOHSfn1D/aM+I3X\n2ozH293b3hJp8pkMRrtRQzUBbdIk+OQTC7/BwWpL8j59YOtWOwmscVg2/vADQaGhtB89mqDQUDZa\nTWQs6PAABw8e5N5778Xf35/hw4enbUHarVs3ypcvj7+/P927d+fChQtpYZYsWUJgYCClS5emdu3a\nrFixIu3eZ599RsOGDfH39yc4OJizZ8/afO6wYcOYPHkyALt27aJq1aq8//77VKhQgcqVK7NkyZI0\nvwkJCbzyyivUqFGDihUrMmrUKOLzcO53scPep4/Y40cuTuu63fsZOaPcKFl5VhUZlxSX43Aa5yMu\nKU4GfRkk+3/TXyalJEn5779S1qgh5Zw5Gfzu2ydluXJSOsHBRJp8JrPyY8OOHTLw2WclO3em/QKf\nfVZuME61yo67DS+llDVq1JCNGzeW58+flzdu3JCtW7eWkyZNktevX5dr1qyRcXFxMjo6Wvbp00f2\n7NlTSillTEyMLF26tDx58qSUUsrLly/LI0eOSCmlXLdunaxTp448fvy4TElJka+//rps1apV2vOE\nEDI8PFxKaXnK186dO6Wbm5ucOnWqTE5Olps2bZLe3t7y5s2bUkopx4wZI3v06CGjoqJkdHS07N69\nu3zttddy/J53S2ZpiIOf1mV3Aezy0jk12BcvyhgPP3n/y4/Jjw5+lLMwGqcmg9GOiJCyTh0p33wz\ng99ffpGyQgUpV62yg6Aau5FZ+dEpJMTC2Jp+QaGhOYr3bsNLqY7XXLBgQdr1pk2bZGBgYAZ/f/zx\nh/Tz85NSKoNdpkwZ+e2338o7VufMBgcHy8WLF6ddp6SkSG9vb3n27FkpZUaDPWnSJCmlMtheXl4y\nJSUlLWz58uXlzz//LFNTU2XJkiXTwkkp5f79+2WtWrVy/J53i7MabD3pLAti3pzHcu/HuFrpICOa\njbC3OA6BI+7tnJ+Yusd7ruzJkLVD+LLXl7jt3q1OBblzR+1Bbkzqad5cDXcHB0N8vJpgnhlFXW8F\n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\n", "text": [ "" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 24, "text": [ "" ] } ], "prompt_number": 24 } ], "metadata": {} } ] }