From efcaef60bf8436da80e5b2298363198659050b92 Mon Sep 17 00:00:00 2001 From: Guido Petri <18634426+guidopetri@users.noreply.github.com> Date: Sun, 8 Nov 2020 00:51:58 -0500 Subject: [PATCH] re-run baseline with new data format --- baseline-lr-channel-format.ipynb | 1962 ++++++++++++++++++++++++++++++ 1 file changed, 1962 insertions(+) create mode 100644 baseline-lr-channel-format.ipynb diff --git a/baseline-lr-channel-format.ipynb b/baseline-lr-channel-format.ipynb new file mode 100644 index 0000000..082ee47 --- /dev/null +++ b/baseline-lr-channel-format.ipynb @@ -0,0 +1,1962 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Baseline with channel format + log loss" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RoundNum
WinningSide
CT0.474391
T0.525609
\n", + "
" + ], + "text/plain": [ + " RoundNum\n", + "WinningSide \n", + "CT 0.474391\n", + "T 0.525609" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# ideas: map-based, player count based, logreg, peterx's stuff\n", + "import pandas as pd\n", + "from sklearn.metrics import roc_auc_score, log_loss\n", + "\n", + "map_data = pd.read_csv('G:/datasets/csgo/csgo_rounds_dust2.csv', usecols=['RoundNum', 'WinningSide'])\n", + "map_baseline = map_data.groupby('WinningSide').agg({'RoundNum': 'count'})\n", + "map_baseline = map_baseline / map_baseline.sum(axis=0)\n", + "map_baseline" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.5\n", + "16.38489957117866\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "\n", + "print(roc_auc_score(map_data['WinningSide'] == 'CT', np.zeros(map_data.shape[0])))\n", + "print(log_loss(map_data['WinningSide'] == 'CT', np.zeros(map_data.shape[0])))\n", + "del map_data" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + "
MatchIdRoundNumSideTickIsAliveWinningSide
041CT1525751
141CT1529051
241CT1532351
341CT1535651
441CT1538951
.....................
2131902189222T30653011
2131903189222T30659611
2131904189222T30666211
2131905189222T30672811
2131906189222T30679411
\n", + "

2131907 rows × 6 columns

\n", + "
" + ], + "text/plain": [ + " MatchId RoundNum Side Tick IsAlive WinningSide\n", + "0 4 1 CT 15257 5 1\n", + "1 4 1 CT 15290 5 1\n", + "2 4 1 CT 15323 5 1\n", + "3 4 1 CT 15356 5 1\n", + "4 4 1 CT 15389 5 1\n", + "... ... ... ... ... ... ...\n", + "2131902 1892 22 T 306530 1 1\n", + "2131903 1892 22 T 306596 1 1\n", + "2131904 1892 22 T 306662 1 1\n", + "2131905 1892 22 T 306728 1 1\n", + "2131906 1892 22 T 306794 1 1\n", + "\n", + "[2131907 rows x 6 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# player count based\n", + "import pandas as pd\n", + "\n", + "player_data = pd.read_csv('G:/datasets/csgo/csgo_playerframes_dust2.csv',\n", + " names=['MatchId',\n", + " 'MapName',\n", + " 'RoundNum',\n", + " 'Tick',\n", + " 'Second',\n", + " 'PlayerId',\n", + " 'PlayerSteamId',\n", + " 'TeamId',\n", + " 'Side',\n", + " 'X',\n", + " 'Y',\n", + " 'Z',\n", + " 'ViewX',\n", + " 'ViewY',\n", + " 'AreaId',\n", + " 'Hp',\n", + " 'Armor',\n", + " 'IsAlive',\n", + " 'IsFlashed',\n", + " 'IsAirborne',\n", + " 'IsDucking',\n", + " 'IsScoped',\n", + " 'IsWalking',\n", + " 'EqValue',\n", + " 'HasHelmet',\n", + " 'HasDefuse',\n", + " 'DistToBombsiteA',\n", + " 'DistToBombsiteB',\n", + " 'Created',\n", + " 'Updated'],\n", + " usecols=['MatchId', 'RoundNum', 'Tick', 'Side', 'IsAlive'])\n", + "player_data['IsAlive'] = player_data['IsAlive'].astype(int)\n", + "results = pd.read_csv('G:/datasets/csgo/csgo_rounds_dust2.csv', usecols=['MatchId', 'RoundNum', 'WinningSide'])\n", + "player_data = pd.merge(player_data, results, on=['MatchId', 'RoundNum'])\n", + "del results\n", + "player_data['WinningSide'] = (player_data['WinningSide'] == 'CT').astype(int)\n", + "player_data = player_data.groupby(['MatchId',\n", + " 'RoundNum',\n", + " 'Side',\n", + " 'Tick',\n", + " ],\n", + " as_index=False).agg({'IsAlive': 'sum', 'WinningSide': 'max'})\n", + "player_data" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + "
IsAliveWinner
SideCTT
MatchIdRoundNumTick
41152575.05.01
152905.05.01
153235.05.01
153565.05.01
153895.05.01
..................
1892223065303.01.01
3065963.01.01
3066623.01.01
3067283.01.01
3067943.01.01
\n", + "

1069034 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " IsAlive Winner\n", + "Side CT T \n", + "MatchId RoundNum Tick \n", + "4 1 15257 5.0 5.0 1\n", + " 15290 5.0 5.0 1\n", + " 15323 5.0 5.0 1\n", + " 15356 5.0 5.0 1\n", + " 15389 5.0 5.0 1\n", + "... ... ... ...\n", + "1892 22 306530 3.0 1.0 1\n", + " 306596 3.0 1.0 1\n", + " 306662 3.0 1.0 1\n", + " 306728 3.0 1.0 1\n", + " 306794 3.0 1.0 1\n", + "\n", + "[1069034 rows x 3 columns]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pivoted = player_data.pivot_table(index=['MatchId', 'RoundNum', 'Tick'], values=['IsAlive'], columns=['Side'])\n", + "pivoted['Winner'] = player_data.groupby(['MatchId', 'RoundNum', 'Tick']).agg({'WinningSide': 'max'})['WinningSide']\n", + "pivoted" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Int64Index([ 4, 15, 21, 26, 28, 29, 37, 38, 41, 47,\n", + " ...\n", + " 1676, 1677, 1690, 1693, 1698, 1786, 1799, 1853, 1878, 1892],\n", + " dtype='int64', name='MatchId', length=173)" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pivoted.index.levels[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1069034 840727 228307\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "\n", + "mask = np.random.choice(pivoted.index.levels[0], replace=False, size=int(pivoted.index.levels[0].shape[0] * 0.8))\n", + "pivoted.reset_index(drop=False, inplace=True)\n", + "train, test = pivoted[pivoted['MatchId'].isin(mask)], pivoted[~pivoted['MatchId'].isin(mask)]\n", + "print(pivoted.shape[0], train.shape[0], test.shape[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "import seaborn as sns\n", + "\n", + "player_baseline = train.groupby([('IsAlive', 'CT'), ('IsAlive', 'T')], as_index=False).agg({('Winner', ''): 'mean'})\n", + "player_baseline.columns = ['CT count', 'T count', 'Win probability']\n", + "player_baseline_pivoted = player_baseline.pivot('CT count', 'T count', 'Win probability')" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sns.heatmap(data=player_baseline_pivoted[::-1], annot=True);" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + " \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", + "
CT countT countWin probability
00.00.00.647826
10.01.00.191748
20.02.00.139085
30.03.00.064767
40.04.00.009368
50.05.00.337838
61.00.00.749311
71.01.00.295594
81.02.00.068938
91.03.00.018865
101.04.00.002529
111.05.00.002117
122.00.00.919903
132.01.00.739738
142.02.00.321526
152.03.00.086343
162.04.00.068196
172.05.00.005225
183.00.00.930149
193.01.00.904065
203.02.00.609385
213.03.00.348066
223.04.00.133202
233.05.00.072199
244.00.00.914416
254.01.00.928820
264.02.00.801678
274.03.00.563250
284.04.00.388412
294.05.00.264632
305.00.00.881131
315.01.00.823868
325.02.00.880390
335.03.00.756279
345.04.00.578517
355.05.00.488413
\n", + "
" + ], + "text/plain": [ + " CT count T count Win probability\n", + "0 0.0 0.0 0.647826\n", + "1 0.0 1.0 0.191748\n", + "2 0.0 2.0 0.139085\n", + "3 0.0 3.0 0.064767\n", + "4 0.0 4.0 0.009368\n", + "5 0.0 5.0 0.337838\n", + "6 1.0 0.0 0.749311\n", + "7 1.0 1.0 0.295594\n", + "8 1.0 2.0 0.068938\n", + "9 1.0 3.0 0.018865\n", + "10 1.0 4.0 0.002529\n", + "11 1.0 5.0 0.002117\n", + "12 2.0 0.0 0.919903\n", + "13 2.0 1.0 0.739738\n", + "14 2.0 2.0 0.321526\n", + "15 2.0 3.0 0.086343\n", + "16 2.0 4.0 0.068196\n", + "17 2.0 5.0 0.005225\n", + "18 3.0 0.0 0.930149\n", + "19 3.0 1.0 0.904065\n", + "20 3.0 2.0 0.609385\n", + "21 3.0 3.0 0.348066\n", + "22 3.0 4.0 0.133202\n", + "23 3.0 5.0 0.072199\n", + "24 4.0 0.0 0.914416\n", + "25 4.0 1.0 0.928820\n", + "26 4.0 2.0 0.801678\n", + "27 4.0 3.0 0.563250\n", + "28 4.0 4.0 0.388412\n", + "29 4.0 5.0 0.264632\n", + "30 5.0 0.0 0.881131\n", + "31 5.0 1.0 0.823868\n", + "32 5.0 2.0 0.880390\n", + "33 5.0 3.0 0.756279\n", + "34 5.0 4.0 0.578517\n", + "35 5.0 5.0 0.488413" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "player_baseline" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + "
CT countT counttruthWin probability
05.02.010.880390
15.02.010.880390
25.02.010.880390
35.02.010.880390
45.02.010.880390
...............
2279090.05.000.337838
2279100.05.000.337838
2279110.05.000.337838
2279120.05.000.337838
2279130.05.000.337838
\n", + "

227914 rows × 4 columns

\n", + "
" + ], + "text/plain": [ + " CT count T count truth Win probability\n", + "0 5.0 2.0 1 0.880390\n", + "1 5.0 2.0 1 0.880390\n", + "2 5.0 2.0 1 0.880390\n", + "3 5.0 2.0 1 0.880390\n", + "4 5.0 2.0 1 0.880390\n", + "... ... ... ... ...\n", + "227909 0.0 5.0 0 0.337838\n", + "227910 0.0 5.0 0 0.337838\n", + "227911 0.0 5.0 0 0.337838\n", + "227912 0.0 5.0 0 0.337838\n", + "227913 0.0 5.0 0 0.337838\n", + "\n", + "[227914 rows x 4 columns]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "test = test[[('IsAlive', 'CT'), ('IsAlive', 'T'), ('Winner', '')]]\n", + "test.columns = ['CT count', 'T count', 'truth']\n", + "\n", + "preds = pd.merge(test, player_baseline, on=['CT count', 'T count'])\n", + "preds" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AUC: 0.774313639605856\n", + "Log loss: 0.550037538559992\n" + ] + } + ], + "source": [ + "print(f'AUC: {roc_auc_score(preds[\"truth\"], preds[\"Win probability\"])}')\n", + "print(f'Log loss: {log_loss(preds[\"truth\"], preds[\"Win probability\"])}')" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.6966311854471423" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.metrics import accuracy_score\n", + "\n", + "accuracy_score(preds['truth'], preds['Win probability'] > 0.5)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "# WOAH. what is that??? that can't be right\n", + "\n", + "from sklearn.metrics import roc_curve\n", + "\n", + "fpr, tpr, _ = roc_curve(preds['truth'], preds['Win probability'])" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "\n", + "plt.figure(figsize=(10, 7))\n", + "plt.plot(fpr, tpr)\n", + "plt.plot([0, 1], [0, 1], 'k--')\n", + "plt.xlabel('FPR')\n", + "plt.ylabel('TPR')\n", + "plt.xlim([0, 1])\n", + "plt.ylim([0, 1])\n", + "plt.title('ROC curve of players alive baseline model');" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + "
MatchIdRoundNumTickCT countT countWinner
041152575.05.01
141152905.05.01
241153235.05.01
341153565.05.01
441153895.05.01
\n", + "
" + ], + "text/plain": [ + " MatchId RoundNum Tick CT count T count Winner\n", + "0 4 1 15257 5.0 5.0 1\n", + "1 4 1 15290 5.0 5.0 1\n", + "2 4 1 15323 5.0 5.0 1\n", + "3 4 1 15356 5.0 5.0 1\n", + "4 4 1 15389 5.0 5.0 1" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# examine what is up with the weird numbers for 0 ct's\n", + "\n", + "train.columns = ['MatchId', 'RoundNum', 'Tick', 'CT count', 'T count', 'Winner']\n", + "train.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \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", + "
MatchIdRoundNumTickCT countT countWinner
4974647193008350.05.00
4974847193009010.05.00
4974947193009340.05.00
4975047193009670.05.00
4975247193010330.05.00
.....................
8837171506243839550.05.00
8837181506243839880.05.00
8837211506243840870.05.00
8837221506243841200.05.00
8837231506243841530.05.00
\n", + "

74 rows × 6 columns

\n", + "
" + ], + "text/plain": [ + " MatchId RoundNum Tick CT count T count Winner\n", + "49746 47 19 300835 0.0 5.0 0\n", + "49748 47 19 300901 0.0 5.0 0\n", + "49749 47 19 300934 0.0 5.0 0\n", + "49750 47 19 300967 0.0 5.0 0\n", + "49752 47 19 301033 0.0 5.0 0\n", + "... ... ... ... ... ... ...\n", + "883717 1506 24 383955 0.0 5.0 0\n", + "883718 1506 24 383988 0.0 5.0 0\n", + "883721 1506 24 384087 0.0 5.0 0\n", + "883722 1506 24 384120 0.0 5.0 0\n", + "883723 1506 24 384153 0.0 5.0 0\n", + "\n", + "[74 rows x 6 columns]" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "train[(train['CT count'] == 0) & (train['T count'] == 5)]" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading transformed data...\n", + "\n", + "Done!\n" + ] + } + ], + "source": [ + "from csgo_wp.data_transform import transform_data, CSGODataset, transform_multichannel\n", + "import warnings\n", + "warnings.filterwarnings('ignore')\n", + "\n", + "dataset = CSGODataset(transform=transform_multichannel)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "torch.Size([409641, 6, 5, 5])\n" + ] + } + ], + "source": [ + "print(dataset.data.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading transformed data...\n", + "\n", + "Done!\n", + "Reading transformed data...\n", + "\n", + "Done!\n" + ] + } + ], + "source": [ + "val_dataset = CSGODataset(transform=transform_multichannel, dataset_split='val')\n", + "test_dataset = CSGODataset(transform=transform_multichannel, dataset_split='test')" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "torch.Size([175042, 6, 5, 5])\n", + "torch.Size([164186, 6, 5, 5])\n" + ] + } + ], + "source": [ + "print(val_dataset.data.shape)\n", + "print(test_dataset.data.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.metrics import roc_auc_score, roc_curve, log_loss, accuracy_score" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AUC: 0.7447931723335289\n", + "Log loss: 0.5782255539325183\n", + "Accuracy: 0.6820820146022097\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import torch\n", + "\n", + "from sklearn.linear_model import LogisticRegression\n", + "\n", + "lr = LogisticRegression(random_state=13)\n", + "lr.fit(dataset.data.view(-1, 150), dataset.targets)\n", + "preds = lr.predict_proba(val_dataset.data.view(-1, 150))\n", + "\n", + "from sklearn.metrics import roc_curve, roc_auc_score\n", + "\n", + "fpr, tpr, _ = roc_curve(val_dataset.targets, preds[:, 1])\n", + "\n", + "print('AUC: ', roc_auc_score(val_dataset.targets, preds[:, 1]))\n", + "print('Log loss: ', log_loss(val_dataset.targets, preds[:, 1]))\n", + "print('Accuracy: ', accuracy_score(val_dataset.targets, preds[:, 1] > 0.5))\n", + "\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "\n", + "plt.figure(figsize=(10, 7))\n", + "plt.plot(fpr, tpr)\n", + "plt.plot([0, 1], [0, 1], 'k--')\n", + "plt.xlabel('FPR')\n", + "plt.ylabel('TPR')\n", + "plt.xlim([0, 1])\n", + "plt.ylim([0, 1])\n", + "plt.title('ROC curve of logistic regression baseline model');" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Fitting 5 folds for each of 100 candidates, totalling 500 fits\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "[Parallel(n_jobs=6)]: Using backend LokyBackend with 6 concurrent workers.\n", + "[Parallel(n_jobs=6)]: Done 38 tasks | elapsed: 14.3min\n", + "[Parallel(n_jobs=6)]: Done 188 tasks | elapsed: 65.3min\n", + "[Parallel(n_jobs=6)]: Done 438 tasks | elapsed: 148.7min\n", + "[Parallel(n_jobs=6)]: Done 500 out of 500 | elapsed: 170.5min finished\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AUC: 0.788196669273322\n", + "Log loss: 0.5223852725918076\n", + "Accuracy: 0.7062590692519509\n" + ] + }, + { + "data": { + "image/png": "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vvnmG4YPH87Ro0d5+umnefjhh52OJMWUijQROaf0rBxe+3EHb/y0i8sqhzFraBuaRZV1OpaI13rllVcYN24cTZo0YdGiRbRu3drpSFKMqUgTkbPadjiJcR+uZcuhU9zcKoqJfZoRGqh/MkTyIycnB19fX2666SYOHz7MU089RVCQTpcm56cDB0Tkv+S4LNN+2cW/l2wnJMCXl269nGubVnE6lohXSk9P57HHHmP37t18+umnuM+CKKXJpRw4oJ/FIvKn/QmpjP9kPct3HadLw0gm9W1BlbL6tS+SHzExMQwaNIgtW7Zw7733kp2djb+/5hKUi6ciTUTIynHx7rJY/r1kO9bCpL7NubOtzpMrkh9ZWVlMnDiR5557jipVqvDtt99y7bXXOh1LvJCKNJFSbuWeBO6ft4bDp9LpfFkkz93cjOrldWonkfw6deoU06dPp3///rz66quUK1fO6UjipVSkiZRSCSmZTP15J+8u20Pl8CBe6NeC26JrXPiOIvI/cnJymDt3LgMGDKBChQqsX79eJ0SXS6YiTaQUmvefffzjsw0AdL4sklfvbKXzbork086dOxkyZAjLli0jJCSE2267TQWaFAgVaSKlSGJaFhO/2MzHq+K4vHpZnuzZlNa1dAJnkfyw1jJt2jT+9re/4e/vz5w5c7j11ludjiUliIo0kVJi44FEhry7klNpWQzpWJuHr2uoec9ELsF9993H1KlTufbaa3n77bepXr2605GkhNG/0CIlnMtleXtpLC9+u42yIf7Mv6c9V9RU65lIflhr/5xKY8iQITRv3pxRo0Zp/jMpFCrSREqwXfHJPPrJBlbsSeDqBhV5+faWVAwLdDqWiFc6evQoo0aNomrVqrzxxhu0bduWtm3bOh1LSjAfpwOISOFYuPYA17/yG5sPnWJS3+bMGdZWBZpIPn366ac0bdqUr776irp16zodR0oJtaSJlDCxx1J44vONLN15jMtrlOP1O1tRI0Lznonkx4kTJxg7dizvvfceV1xxBXPmzKFp06ZOx5JSQkWaSAlhreXDlft5atEmclyWx29szJCOtfHzVYO5SH4lJCSwePFinn76af7xj3/otE5SpFSkiZQA6Vk5TPxyM+/9sY8OdSswqW9zalcMdTqWiFdKTk5m7ty5jBo1inr16rFnzx6dNUAcoSJNxMvtik9m2KyV7D2eypCOtXnypib4+OhIM5H8+O233xgyZAixsbG0adOG6OhoFWjiGPWDiHip9KwcXv9xBze9upSk9GymD2zN072aqkATyYf09HQefvhhOnfuDMAvv/xCdHS0w6mktFNLmogX2p+Qyog5MWw9nETnyyKZ1Lc51coFOx1LxGvdeOON/Pjjj4waNYoXX3yRsLAwpyOJYKy1TmfIk+joaBsTE+N0DBHH/LH7OOPmryU5I5tX7mhJ18aVnY4k4pWysrIwxuDn58c333yDMYbrrrvO6VhSwhhjVllr89Usq+5OES+R47L8e8l27pjxBz4GFozuoAJNJJ82bdpE+/btefHFFwHo0aOHCjQpdlSkiXiBvcdTGPTOf3j1hx30vLwaX469mkZVwp2OJeJ1cnJymDx5Mq1bt2b//v00btzY6Ugi56QxaSLF3PwV+3hy0SYMMKlvc+5sW9PpSCJeadeuXQwZMoSlS5fSp08fpk+fTqVKlZyOJXJOKtJEiqnE1CweX7iRxesO0r5uBC/f3pKqZXVwgEh+HTt2jC1btjBnzhwGDBigk6JLsaciTaQYitmTwP0frOFQYjpjuzbg/r/Ux19nDhDJs7i4OBYvXszo0aNp164de/fuJTRUEz2Ld1CRJlKMZGTn8O8l25n5WyyVywQyZ1hbOl0W6XQsEa9jreW9997j/vvvJzs7mz59+lC1alUVaOJV9NNcpJj4z+7j9HxtKdN/2U3vltX49q+dVKCJ5MPRo0e55ZZbGDRoEM2aNWPt2rVUrVrV6VgieaaWNBGHJaZl8eK3W3nvj31UCQ/irUHRdG+iqTVE8iMrK4v27dtz4MABXnzxRf7617/i6+vrdCyRfFGRJuKg33cdZ9yHazialMHA9rV49IZGhAToYymSV0lJSYSFheHv78+LL75Io0aNaNq0qdOxRC6JujtFHJDjskz/ZRd3zfyD0AA/FozqwIQ+zVSgieTDt99+S+PGjZk7dy4At9xyiwo0KRFUpIkUsV3xydw+/Xcmfb2VqxtE8um9HWldK8LpWCJeJzk5mdGjR9OjRw/Cw8Np0qSJ05FECpR+tosUEWsts5bv4fmvt+Lv68Okvs25o00NzdUkkg/Lly9n4MCBxMbG8tBDDzFhwgSCgzWPoJQsKtJEisDe4yk8+ukGlu86TufLInmxXwsqhQc5HUvEa8XHx2Ot5eeff6ZTp05OxxEpFMZa63SGPImOjrYxMTFOxxC5KNZa3vptN//8aiuhAb48dG1DBnesja+PWs9E8mrVqlWsX7+eoUOHApCRkUFgYKDDqUTOzxizylobnZ/7qiVNpJAkpGTyt4/X8ePWo/ylUSWe6dWUGhEhTscS8TpZWVn885//ZOLEidSoUYP+/fsTGBioAk1KPBVpIoVg6+FT3D07hqOnMhjfoxH3dKqLj1rPRPJs8+bNDBo0iFWrVjFgwABeffVVFWdSaqhIEylgc//Yy8QvNhMS4MtHozrQskY5pyOJeKX4+HjatGlDaGgon3zyCX379nU6kkiRUpEmUkCOnErnX19v5dM1B7iqfkVevLUFVcvqaDORvEpISCAiIoLIyEhmzpxJ165dqVSpktOxRIqc5kkTuUQul+WdpbH8ZfLPLF5/kHs612X2sLYq0ETyyFrL1KlTqVWrFt9//z0Ad955pwo0KbXUkiZyCTYfPMWjn21g3f6TdL4skqd7NaVOxVCnY4l4nbi4OIYPH853331Ht27daNiwodORRBynIk0kH5LSs3j9x53M+G03ZYP9eb5vc27XxLQi+TJ//nxGjRpFVlYWb7zxBqNHj9ZnSQQVaSJ59uv2eB79dAMHTqbR94oonrypCeVCApyOJeK1EhISaNasGbNmzaJ+/fpOxxEpNjSZrchFynFZ3vxpJ//+fju1K4TyXJ9mdKxf0elYIl7p888/Jysri1tvvRVrLS6XC19fX6djiRQ4TWYrUshij6Uwau4qth1J4rqmlfn3bS0JDdTHRySvTp48ydixY5k7dy5dunShX79+GGNUoImchb5lRC7gl+3x/PXDtbisZcrtLendsprGy4jkw3fffcewYcM4fPgwTz31FI899pg+SyLnoSJN5BxOpWfxyvc7eHtpLFHlgpk9rC31K4U5HUvEK61fv57rrruOxo0b8/nnnxMdna/eH5FSRUWayFms23+Sv360lt3xKdzZtgZP3tSU4AB1x4jk1eHDh6lSpQotWrRg3rx59OnTh+BgzSEocjE0ma1ILtk5Lp5etIl+05aTkpHNe8PbMalvCxVoInmUnp7O3//+d+rUqcOGDRsA98S0KtBELp5a0kQ8jiVncM/cVazae4Ibm1flnzc3p2yIv9OxRLzO6tWrGTRoEJs2beKee+6hdu3aTkcS8Uoq0kSArYdPMWbeGvYdT2VC76YM7FDb6UgiXum5557j6aefplKlSnz99df06NHD6UgiXktFmpRq6Vk5PLVwEx+t2k9YoB+zhrbR3GcilyA1NZXbb7+d1157jfLlyzsdR8SrqUiTUuvnbUd5YuFG9iekcUebGvztuoZUDAt0OpaIV8nJyWHKlCm0bNmSrl27MmHCBHx8NNxZpCDokySl0tw/9jJs1kpcLnh3SBuev6WFCjSRPNq9ezddunThb3/7G5988gmACjSRAqSWNClVTqZm8s+vtvBRTBydLovk1Tta6rybInlkrWXGjBk89NBD+Pr6Mnv2bAYOHOh0LJESR0WalBr/2X2ccR+u5VBiOndfVYfx1zfC31e/+kXyauHChYwaNYpu3brxzjvvUKNGDacjiZRIKtKkxEtKz+KRTzfwzcbDVC0bxMejOtCmdoTTsUS8irWWvXv3Urt2bXr16sUnn3zCzTffrNM6iRQiNSNIibYiNoEbX13Kl+sP0btlNb4d10kFmkgexcfH069fP1q2bMnBgwfx8fGhb9++KtBECpla0qRESs/KYcr3O5j5226qlgvi/bvbcaWm1hDJs88//5yRI0eSmJjIhAkTqFy5stORREoNFWlS4uw8msSwWTHsS0il5+XV+OfNzSgTpDMHiORFdnY2w4cPZ86cObRq1Yoff/yRZs2aOR1LpFRRkSYlhrWW2cv3MPm77QT4+fDu0DZ0aVjJ6VgiXsnPzw8/Pz+eeOIJHn/8cQICdBS0SFFTkSYlwr7jqTz62XqW7TxO29oRvHTb5dSICHE6lohXSUlJ4ZFHHmHkyJE0b96cmTNnatyZiINUpInXW7Aqjsc/34CvMTzbuykD29fSF4tIHi1btozBgweze/duGjRoQPPmzfU5EnGYijTxWikZ2Tzx+UY+XXOA6FrlmXJHS6qXV+uZSF6kp6fz5JNPMnnyZGrXrs1PP/1E586dnY4lIqhIEy91LDmD4bNWsi4ukXuvqccD3RoQ6OfrdCwRr/Pmm2/y4osvMnLkSCZPnkyZMmWcjiQiHirSxOv8sfs4Dy9YR3xSBq/c0ZLeLaOcjiTiVbKysti7dy/169fnvvvuo1WrVnTp0sXpWCJyhkKdzNYY08MYs80Ys9MY88g51rnGGLPWGLPJGPNLYeYR7zdrWSyD31mBwfDOkDYq0ETyaPPmzXTs2JG//OUvpKamEhgYqAJNpJgqtJY0Y4wv8AbQHYgDVhpjFllrN+dapxzwJtDDWrvPGKP5EuSsrLW88dNOXlqynRZRZZk5uA2RZQKdjiXiNVwuF1OmTOEf//gHYWFhTJs2jZAQjeEUKc4Ks7uzLbDTWrsbwBgzH+gNbM61Tn/gU2vtPgBr7dFCzCNeyuWyPLVoE3P/2EuPplWYckdLgvw1/kzkYp08eZLevXvz66+/0qtXL2bMmKEzB4h4gcLs7owC9ue6Hue5LbfLgPLGmJ+NMauMMYPOtiFjzEhjTIwxJiY+Pr6Q4kpxlJSexb3vr2buH3sZflUdpg64QgWaSB6Fh4cTGRnJrFmz+Pzzz1WgiXiJwizSzjbBjj3juh/QGrgRuA54whhz2f/cydoZ1tpoa210ZGRkwSeVYml/Qiq3Tvud77cc4ZHrG/H4jY01b5PIRTpw4AC33347cXFx+Pj4sGDBAgYPHqzPkIgXKcwiLQ6oket6deDgWdb5xlqbYq09BvwKXF6ImcRL7IpP5tZpv7P3eCozB0czqnM9fbmIXARrLe+//z7NmjVj8eLFrFmzxulIIpJPhVmkrQQaGGPqGGMCgDuARWessxC42hjjZ4wJAdoBWwoxk3iBDXGJ3DnjD06mZfLRPR24RuffFLko8fHx9OvXjwEDBtC4cWPWrVtHz549nY4lIvlUaEWatTYbGAN8i7vw+shau8kYM8oYM8qzzhbgG2A9sAKYaa3dWFiZpPj7adtR+s/8Az8fw4JRHWlevazTkUS8xjPPPMMXX3zB888/z2+//UaDBg2cjiQil8BYe+YwseItOjraxsTEOB1DCpi1lneW7WHCF5upGxnKrCFtqVlB0wOIXMjJkydJSEigbt26nDx5kv3799O8eXOnY4mIhzFmlbU2Oj/31RkHxHGZ2S6e+HwjH8bs59omlZlyR0tCAvTWFLmQJUuWMGzYMKpUqcKKFSsoV64c5cqVczqWiBSQQj3jgMiFHEvOYMScGD6M2c9d7WoybUBrFWgiF5CSksJ9993HtddeS1hYGG+88YYOrBEpgfRtKI5ZuSeBwe+sID0rhwl9mjGwfS2nI4kUe7t27aJHjx7s2rWLv/71rzz33HMEBwc7HUtECoGKNHHEbzviGfj2CgL9fPhy7NU0rhrudCQRr1C9enWaNGnCzJkz6dy5s9NxRKQQqbtTitxHMfsZ+PYK6lcK46sHVKCJXMjq1au58cYbSUxMJDAwkIULF6pAEykFVKRJkfpkVRx/X7CetnUi+GR0R+pFhjkdSaTYysrK4tlnn6Vdu3asWbOG3bt3Ox1JRIqQujul0G08kMjELzezeu9JMnNcXFGzHHOGtdU5OEXOY8uWLQwaNIiYmBj69+/Pa6+9RkREhNOxRKQIqUiTQhV7LIVB76wgK8dFtyaVqFsxjDF/qa8CTeQCHn74YWJjY/n444/p16+f03FExAEq0qTQrNyTwL3vrwbgs3s7Ur9SGYcTiRRvsbGxBAYGUq1aNaZPn46vry9VqlRxOpaIOERj0qRQ/Lj1CHfN/A8G+HBkexVoIudhrWXGjBk0b96cBx54AICoqCgVaCKlnFrSpMD9tiOee99fTc2IEN4b3o4qZYOcjiRSbB04cIC7776bb775hq5du/LSSy85HUlEigkVaVKgft52lBFzYqhbMYy5d7elUhkVaCLnsmzZMm666SYyMzN5/fXXGT16ND4+6uAQETcVaVJglmw+wr3vr6JuxTDmjWhHhbBApyOJFGtNmzala9euTJo0iQYNGjgdR0SKGf1kk0tmreWdpbHc9/5qGlUJZ/7I9irQRM5h4cKFXH/99WRmZlKuXDkWLFigAk1EzkpFmlyyl77bzrNfbKZd3QjeH9GO8qEBTkcSKXYSExMZMmQIffr04dChQ8THxzsdSUSKORVpckk+itnP6z/tpGujSrw7pA3hQf5ORxIpdn744QeaN2/Oe++9x+OPP86KFSuIiopyOpaIFHMakyb59sGKfTz66Qba1ong9f5X4Oerml/kTDk5OTz44IOEhoayfPly2rZt63QkEfESKtIkX77ddJhHP93ANQ0jmT6wNYF+OoOASG6///47TZs2JTw8nIULF1K5cmWCg4OdjiUiXkRNH5Jn7qM4V9Okajiv3dlKBZpILhkZGYwfP56rrrqKiRMnAlC7dm0VaCKSZ2pJkzz5ZXs8o95bRdNq4cwd1o4yGoMm8qc1a9YwaNAgNm7cyIgRI3jiiSecjiQiXkwtaXLRlu88xt2zV1K3Yihzh7ejbIgKNJHT5s2bR9u2bTl+/DhffvklM2bMoEwZnQ5NRPJPRZpclA9X7mPorJXUiAhxF2jBKtBEwD1PIMCVV175ZyvaDTfc4HAqESkJVKTJBc39fQ/jP9lAyxrlmD+yvc7FKQK4XC5efvllbrnlFqy11KpVi7fffpuIiAino4lICaEiTc7J5bK8+O1Wnli4ia6NKjFrqM7FKQIQGxtLly5dePDBB8nKyiIlJcXpSCJSAqlIk7PKzHYxdv4a3vhpFz0vr8a0ga0JDtBRnFK6WWt56623aNGiBWvXruXdd99l0aJFhIWFOR1NREqgPB/daYzxBe6w1r5fCHmkGEhIyWTIuytYH5fIQ90vY8xf6mOMcTqWiOOSkpJ45plnaNu2Le+++y41a9Z0OpKIlGDnbEkzxoQbYx41xrxujLnWuN0P7AZuK7qIUpS2HU6i39TlbD2cxCt3tOT+rg1UoEmpZq1l0aJFZGZmEh4ezrJly1iyZIkKNBEpdOfr7pwLNAQ2AHcD3wH9gN7W2t5FkE2K2I9bjzDg7f9wMi2LOcPa0rulzi0opVt8fDy33norvXv35p133gGgVq1a+PhopIiIFL7zdXfWtdY2BzDGzASOATWttUlFkkyK1Acr9vHYZxuoGRHC20PaUC9SY2ykdFu0aBEjRozgxIkTTJo0iREjRjgdSURKmfMVaVmnL1hrc4wxsSrQSp4cl2Xqzzt5acl2OtStwNuD2+gAASn1JkyYwJNPPsnll1/OkiVLaNGihdORRKQUOl+Rdrkx5hRwekBScK7r1lobXujppFBlZOfwxOcb+SgmjmubVGbKHS1VoEmp5nK58PHxoWfPnmRmZvLEE08QEBDgdCwRKaXOWaRZa/VtXYJl57i4Z+4qft4Wz91X1eHxm5o4HUnEMSkpKTzyyCOkpaUxc+ZMWrZsScuWLZ2OJSKl3PmO7gwyxozzHN050hijk7GXEImpWTzw4Vp+3hbPYzc0VoEmpdry5ctp2bIlr7/+OmXKlMHlcjkdSUQEOP/RnbOBaNxHd94AvFQkiaRQ7TyaxO0zfuebjYcZ06U+IzrVdTqSiCMyMjJ45JFHuPrqq8nKyuKnn37i5Zdf1pGbIlJsnK91rEmuozvfBlYUTSQpLMt2HmPEnBgC/HyYNbQNVzeIdDqSiGOOHDnC1KlTGTZsGC+99BLh4RpmKyLFy8Ue3ZmtCU2926er4xj/yXpqRITw3vB2VCsX7HQkkSKXnZ3Nhx9+SP/+/alZsyZbt26latWqTscSETmr8xVpLT1Hc4L7iE4d3emlPlkVx0Mfr6NN7fK8eVdrIssEOh1JpMht3bqVQYMGsXLlSipVqkT37t1VoIlIsXa+wRfrrLXhnr8y1lq/XJdVoHmJVXtPMOHLzdSMCGHu8HYq0KTUcblcTJkyhVatWrF7924+/PBDunfv7nQsEZELOl9Lmi2yFFIo/rP7OEPeXUmFsADeHdqGIH/NqiKlz4ABA/jggw+46aabeOutt6hSpYrTkURELsr5irRKxpgHz7XQWvvvQsgjBeSX7fGMmBND1bJBzB/ZnqplNQZNSg9rLS6XC19fX4YOHUr37t0ZMmQIGlsrIt7kfEWaLxDG/59xQLzEhrhEhs9aSY2IED4Z3ZGIUM2YLqXHwYMHufvuu2nTpg3PPPOMujZFxGudr0g7ZK19tsiSSIHYevgU/Wf+QXCAL9MHtlaBJqWGtZb58+dz3333kZ6eTs+ePZ2OJCJySc534IBa0LzM/oRUBsxcQaCfD4vHXMVllcs4HUmkSBw7dozbb7+d/v3707BhQ9auXcvo0aOdjiUicknOV6R1LbIUcsn2J6TSb9pyUjOzmTW0LbUrhjodSaTI7N+/n6+++opJkyaxdOlSLrvsMqcjiYhcsvOdYD2hKINI/iWmZnH79N9Jy8zhw5EdaBZV1ulIIoUuMTGRzz//nMGDB9OqVSv27t1LhQoVnI4lIlJgdJI6L5ed4+L++Ws4kpTBrGFtaV5dBZqUfD/88APNmzdn+PDh7NixA0AFmoiUOCrSvFhmtosh767k1+3xPN2zCVfULO90JJFClZKSwv3330+3bt0IDg5m2bJlNGjQwOlYIiKF4nxHd0ox5nJZ/vbxOpbuPMboa+oxsENtpyOJFCqXy0Xnzp1ZtWoVY8eOZdKkSYSEhDgdS0Sk0KhI81IvfLuNResOMq5bA8Z10yBpKbkyMzPx9/fHx8eH8ePHU7FiRbp06eJ0LBGRQqfuTi+T47L8+7ttTPtlF7dcUZ0HuqqrR0qutWvX0rp1a2bOnAnArbfeqgJNREoNFWleJDvHxZh5q3n1x530bRXF87c012lupETKzs5m4sSJtGnThmPHjlG9enWnI4mIFDl1d3qJ9Kwc7nt/NT9sPcrjNzbm7qvrOh1JpFBs27aNQYMGsWLFCu644w5ef/11HbkpIqWSijQvkJyRzcC3/8OafSd59PpGKtCkRIuNjWXXrl18+OGH3HbbbU7HERFxjIq0Ys7lsoyYHcP6uEReuKUFt7Wp4XQkkQK3Z88efvvtNwYOHEiPHj2IjY2lTBmd1kxESjeNSSvmJn29hd93H2dMl/oq0KTEsdYyc+ZMmjdvzrhx40hMTARQgSYigoq0Yu37zUd467dY+raKYlw3HcUpJcuhQ4fo2bMnI0aMoE2bNqxevZqyZXXGDBGR09TdWUztik/m4QXrqBcZyj/76ihOKVlSUlJo1aoVp06d4tVXX+W+++7Dx0e/GUVEclORVgxtOXSK26b9jo+P4Z0hbQjy93U6kkiBSElJITQ0lNDQUP71r3/RoUMHLrtMkzGLiJyNfroWMxnZOYyYE4Ovr+HjUR2oVSHU6UgiBWLx4sXUr1+fr776CoDBgwerQBMROQ8VacXMv5dsJ+5EGi/dejmXVdbgafF+iYmJDBs2jF69elG5cmVNTCsicpFUpBUjWw6d4q1fd3Nzqyi6Nq7sdByRS/bTTz/RokULZs+ezWOPPcaKFSto0aKFyeoIXQAAIABJREFU07Hk/9q78/gaz4SN4787C4nYBbXFVrUlpGJplVI6tLSlFWNp7bSmtYzyVtU7NaNjqeq0umBMTTveTlc1lKp1FEU6KCK1BLXTUFsskfV+/0imY1pLRE6e85xzfT+ffPSc8zi5uJP0ct/P89wi4go6J81LJCVfZuDfNlG0cBAvdKjrdByRfPH9998TEhLC+vXradasmdNxRERcRTNpXmLoh1s4cf4yM56IoWyxwk7HEcmzDRs28OmnnwLQv39/tm3bpoImIpIHKmle4Pi5FP61/zQDW9bgntvDnY4jkiepqamMGTOGFi1aMH78eDIzMzHGEBIS4nQ0ERFXUknzAi/M2w7A/ToPTVxq27ZtNG3alMmTJ9OvXz/WrVtHYKBuHSMicit0TprD3lu3n1W7TzK8bS1iqpZyOo7ITTtw4ABNmzaldOnSLFy4kIceesjpSCIiPkElzUFx359i/KId3BlRkmfuu93pOCI35ezZs5QsWZJq1aoxffp0OnfuTJkyZZyOJSLiM7Tc6ZD0zCz+d34ClUsVYU7/phQK0lCIO2RlZTFt2jQiIiLYvHkzAAMGDFBBExHJZx5tBsaYB4wxu40xe40xz1/nuCbGmExjTKwn83iTt1ftZe+JC4x5sA7FQoKdjiOSKwcOHKBt27b89re/5d5776VixYpORxIR8VkeK2nGmEDgbeBBoB7QwxhT7xrHvQws9VQWb7Nq9wleX7GH++uW48GoCk7HEcmVd999l6ioKDZv3szs2bNZuHAhFSro61dExFM8OZPWFNhrrf3eWpsGfAR0uspxQ4HPgBMezOI10jOzGDtvO6XDCvFKbEOn44jk2uHDh2ncuDHx8fH0798fY4zTkUREfJonS1ol4PAVj4/kPPcTY0wl4FFg5vXeyBjzpDFmkzFm08mTJ/M9aEH6e9xBjp27zIsP1aNUWCGn44hc18cff8zSpdmT3C+88AIrV66kWrVqzoYSEfETnixpV/tntv3Z49eB0dbazOu9kbV2lrW2sbW2cdmyZfMtYEE7fi6FV5cl0rR6aTpF61we8V6nTp2iW7dudO/enZkzs/8NFRQURECALnARESkonrwFxxGgyhWPKwPHfnZMY+CjnGWTcKCDMSbDWjvfg7kc88rS3aRmZjGhc6SWisRrLVq0iEGDBnHq1CkmTJjAc88953QkERG/5MmSthGoZYypDhwFugM9rzzAWlv93/9tjHkPWOSrBW3HsWQWbD1G77urUqt8MafjiFzVmjVrePjhh2nQoAFLliyhYUOdNyki4hSPrV1YazOAIWRftbkT+MRa+50xZrAxZrCnPq+3mrVmH8GBhuFtazkdReQXTpzIvm6nZcuWvPvuu2zcuFEFTUTEYR49wcRau9hae4e1tqa1dkLOczOttb+4UMBa29daO9eTeZyycmcS87ceo2tMFUoW0cUC4j0uXbrEsGHDqFWrFgcOHMAYQ9++fSlUSF+nIiJO07ZQHpaemcW4z78jonQRxnas63QckZ/ExcXRu3dv9uzZw7BhwyhXrpzTkURE5Aq6VMvDXl2WyJEzKfzuoXqEBAc6HUcEay1jx47lnnvuITU1lZUrVzJt2jSKFCnidDQREbmCSpoH7Tt5gZmr99G+fnl+Va+803FEADDGcPLkSfr27Ut8fDxt2rRxOpKIiFyFljs9aPzCHQA8+6vaDicRf5eRkcErr7xCu3btiImJYcaMGQQGamZXRMSbqaR5yBsr97A68STD29ai9m265YY4Z/fu3fTp04dvvvmG5ORkYmJiVNBERFxAy50e8M9dSfxpeSK/qleeoW1udzqO+KmsrCymTZtGdHQ0e/bs4aOPPmLSpElOxxIRkVxSSctnF1MzGP3ZdurcVow3ut9JUKD+isUZf/vb3/jtb39L27ZtSUhIoFu3bk5HEhGRm6Dlznw2+ctdnDyfyswnGhFaSEtKUrCstRw9epTKlSvzxBNPULRoUWJjY7UNmYiIC2maJx/tPXGB/4s7SLt65YmpWtrpOOJnjh8/ziOPPELTpk05e/YswcHBdO3aVQVNRMSlVNLy0StLdxEaHMgfOtV3Oor4mY8//pjIyEhWrFjB6NGjKV68uNORRETkFqmk5ZP9P15k+Y4kejaLoEKJUKfjiJ9ISUmhW7dudO/endtvv52tW7cyfPhwAgL0rS0i4nb6SZ4PrLW8tGgHQQEBPHVvDafjiB8JCQkhLS2NCRMmsG7dOmrX1j35RER8hUpaPli+I4l/7jrByHZ3UK54iNNxxMclJyfzzDPP/LQh+rx583jhhRcICtJ1QCIivkQl7RadupDKhMU7qVQylP4tqjsdR3zcqlWriIqKYubMmaxatQpAFwaIiPgolbRbkHw5nYFzNnHw1CVe7x5NsO6JJh5y6dIlhg8fTps2bShcuDDr1q2jX79+TscSEREPUqvII2stz30aT/yRc7zR406aVNMtN8RzJk6cyBtvvMGwYcPYunUrd911l9ORRETEw3QSSx5YaxnywRaWfPcDw9rW4pGGFZ2OJD4oLS2NH374gYiICEaPHs39999P69atnY4lIiIFRDNpeTD9q318sf04A1pUZ3jbWk7HER+0bds2mjRpQocOHcjIyKBYsWIqaCIifkYl7SYdOXOJPy1PpG2dcoztUJfAAJ20LfknIyODiRMn0qRJE5KSkpg0aZKu2hQR8VP66X+TRn26jUBjGN85kgAVNMlHSUlJdO7cmbi4OLp27cr06dMJDw93OpaIiDhEJe0mrNp1grjvTzO8bS0qldSuApK/SpcuTbFixfjwww/p1q2bbq0hIuLntNyZS1lZlj9+sYPKpUJ55r7bnY4jPuLgwYP06NGD06dPExwczNKlS+nevbsKmoiIqKTl1sL4Y+w7eZER999BoSD9tcmtsdYye/ZsoqKiWLRoEdu2bQN0Y1oREfkPtY1cSMvI4k/LE6lVriidonW7Dbk1x48f55FHHmHgwIHExMSwfft27rvvPqdjiYiIl1FJy4X/nb+dg6cu8fyDdQjSrgJyi0aOHMmKFSt4/fXXWblyJdWqVXM6koiIeCE1jhtYsPUon2w6QqfoirStW97pOOJSp06d4ujRowBMnTqVLVu2MHz4cAIC9C0oIiJXp/9DXMe5S+lMXLyTGuFhTHg0yuk44lJffPEFkZGR9O/fH4CKFStSp04dh1OJiIi3U0m7jslLdnHyfCqvdG1I0cK6W4ncnOTkZAYOHMhDDz1E2bJlefnll52OJCIiLqLmcQ3/3JXEh/86RM9mEcRULeV0HHGZ7777jo4dO3L48GGef/55fv/731O4cGGnY4mIiIuopF1FUvJlnpsbT43wMMZ2qOt0HHGhKlWqcMcdd/DBBx/QvHlzp+OIiIgLabnzZ9Izs/jN+5s5eymdN3rcSZiWOSWXvvnmG7p06UJqairFixdn2bJlKmgiIpJnKmk/M+GLnXx76CwTH40islIJp+OIC6SlpTF27FiaN2/Oxo0bOXDggNORRETEB6ikXWHm6n28t/4A3RpXoWvjyk7HEReIj4+nSZMmTJw4kT59+rB9+3Zq167tdCwREfEBWsvLsWDrUSZ/uYtf1SvPHx+N1PY8ckPWWgYPHkxSUhILFizgkUcecTqSiIj4EJU0IO77Uwz/aCsNq5Tkje53EqxdBeQ6EhMTCQ8Pp3Tp0rz//vsUL16c8PBwp2OJiIiP8fs2cvpiGkM+2EJ40cLM6deU0EKBTkcSL5WVlcWbb75JdHQ0Y8aMAaBGjRoqaCIi4hF+PZOWfDmd2BnrOX85nU8H302JIsFORxIvdfDgQfr3788///lPHnzwQcaNG+d0JBER8XF+W9KstQz9YAsHT19ixuONaFC5pNORxEstX76cLl26YK3lL3/5CwMGDNA5iyIi4nF+u9z513UHWJ14ksGtatCu/m1OxxEvVr9+fdq0aUN8fDwDBw5UQRMRkQLhlyVtxlf7eGnRDu65vQwjf6XbJcgvffLJJ3Tt2pWsrCwqVqzI/PnzqV69utOxRETEj/hdSdt44DQvL9lFROkiTO8ZQ0CAZkXkP06dOkWPHj3o1q0bhw4d4vTp005HEhERP+VXJe1yeibDP9xCpZKhLBzSQhcKyH9ZvHgxkZGRzJ07lz/+8Y+sW7dOV26KiIhj/OrCgfGLdnDs3GXe7dtEBU3+S2pqKk8//TTh4eF8+eWXREdHOx1JRET8nN+UtM0HT/PBN4fo3qQK99Up53Qc8RLr168nJiaGwoULs2zZMqpWrUrhwoWdjiUiIuIfy52X0jIY+sEWSocV4oWOdZ2OI14gJSWFESNGcM899/Daa68BcMcdd6igiYiI1/CLmbTJX+7i2LnLvNO7McVDtMzp7/71r3/Ru3dvdu/ezZAhQxg6dKjTkURERH7B52fSdh5P5oNvDtGtcRXur1fe6TjisFmzZnH33Xdz6dIlVqxYwZtvvklYWJjTsURERH7B50vaa8sTCS0UyJgOdZyOIg6y1gLQvHlz+vfvz/bt22nbtq3DqURERK7Np0ta/JGzLNuRRL/m1ShZpJDTccQBGRkZTJ48mYEDBwIQGRnJX/7yF0qUKOFwMhERkevz6ZL29qq9lAgNZkDLGk5HEQckJibSsmVLxowZw7lz50hLS3M6koiISK75bEk7djaFpd8l8VijSpQI1cUC/iQrK4s333yT6Ohodu3axd///nc+/fRTChXSbKqIiLiHz17dOWXJLgAebxbhcBIpaCdPnuTFF1+kVatWzJ49m4oVKzodSURE5Kb55Ezat4fOMH/rMQa3qsnt5Yo5HUcKgLWWRYsWkZWVRfny5dm0aROLFy9WQRMREdfyyZL22vJESoQG8/R9NZ2OIgXghx9+oFOnTjz88MPMnTsXgJo1a2KMcTiZiIhI3vlcSUtMOs/aPT/St3k13bjWD3z66adERkaybNky/vSnPxEbG+t0JBERkXzhcyXt/biDBBidi+YPRo0axa9//Wtq1KjBli1bGDFiBAEBPvclLSIifsqnLhxIz8xiwdZjtK9/G+WKhzgdRzzEWosxhg4dOlCiRAnGjBlDUJBPfSmLiIj4Vknbdvgs51LSeaiBThb3RefPn2fkyJGUKVOGSZMm0aZNG9q0aeN0LBEREY/wqbWhrYfPAtC4WimHk0h+W716NQ0aNGD27NkEBAT8tM2TiIiIr/KpkvZlwg/UKBtGeS11+oyUlBRGjBhB69atCQoKYu3atUyYMEFXboqIiM/zmZKWfDmdLYfOcG+tsk5HkXy0f/9+ZsyYwZAhQ9i6dSvNmzd3OpKIiEiB8Jlz0j7ZeJgsCw831PlobpeWlsbnn39ObGws9erVY+/evVSuXNnpWCIiIgXKJ2bS0jKymLZiD02qlaJRREmn48gt2L59O82aNaNr165s2rQJQAVNRET8kk+UtI83HuJ8agaDWtbQuUoulZmZyeTJk4mJieHYsWMsWLCAxo0bOx1LRETEMT6x3Dn9q33Ur1icdvVvczqK5FGnTp344osviI2NZcaMGYSHhzsdSURExFGuL2nHz6Vw/NxlHmpQwekocpOysrIACAgIoE+fPvTs2ZMePXpoNlRERAQfWO78vw0HAejRVNtAucmhQ4do164d06dPB6Br16707NlTBU1ERCSHR0uaMeYBY8xuY8xeY8zzV3n9cWNMfM7HemNMw5v9HBsPnKZsscLUKFs0f0KLR1lree+994iKiiIuLo6wsDCnI4mIiHglj5U0Y0wg8DbwIFAP6GGMqfezw/YDray1DYCXgFk38zlS0jLZdvgc99ctlx+RxcN++OEHOnfuTL9+/YiOjiY+Pp5+/fo5HUtERMQreXImrSmw11r7vbU2DfgI6HTlAdba9dbaMzkP44CbutfC6sQTpGVm8WCkzkdzg507d7J8+XJeffVVVq1aRY0aNZyOJCIi4rU8eeFAJeDwFY+PAM2uc/wA4MurvWCMeRJ4EiAi4j/nnq3YeYKihYO4u2aZWw4rnnH69GlWrFjBr3/9a+677z4OHDhAuXKa+RQREbkRT86kXe0M8Kvuim2MuY/skjb6aq9ba2dZaxtbaxuXLfufbZ9W7TpB9fAwggNdf/2DT1q8eDGRkZH07t2b48ePA6igiYiI5JIn280RoMoVjysDx35+kDGmAfAO0Mlaeyq3b/7jhVROXUyjSbXStxxU8tf58+d58skn6dixI6VLl2b9+vVUqKAlaRERkZvhyeXOjUAtY0x14CjQHeh55QHGmAhgHtDLWpt4M2++83gyAPfX08yMN0lPT6dJkyYkJiby3HPPMX78eAoXLux0LBEREdfxWEmz1mYYY4YAS4FA4K/W2u+MMYNzXp8JvAiUAabn3B8rw1qbq72ADpy6BED1cN3CwRukp6cTHBxMcHAw//M//0OdOnW45557nI4lIiLiWh49mctau9hae4e1tqa1dkLOczNzChrW2oHW2lLW2uicj1xv1phw5ByFggIoXyzEU/EllzZu3EiDBg2YN28eAAMGDFBBExERuUWuPeP+6NkUSoQGExCgO9Q7JS0tjd/97nfcfffdXLhwgZIlSzodSURExGe4du/OvScucI9uveGYhIQEevfuzZYtW+jTpw+vv/66SpqIiEg+cm1JO30pjfLFtdTplK1bt3L06FH+8Y9/0LlzZ6fjiIiI+BxXLnemZmSSlpFFsRDXdkxX2rNnz0/nnT3++OMkJiaqoImIiHiIK0tackoGACVCgx1O4h+ysrJ4++23iY6OZtiwYaSmpmKMoUSJEk5HExER8VmuLGknz6cC6KKBAnDo0CHat2/PkCFDuPfee/nmm2903zMREZEC4Mr1wjOX0gCoEV7U4SS+7eTJkzRo0ICMjAz+/Oc/M2jQIHLuZyciIiIe5sqSlpySDkDxUFfG93opKSmEhoZStmxZJk6cyAMPPECNGjWcjiUiIuJXXLnceT41+5y04iE6Jy2/zZ07l+rVq7NhwwYAnn76aRU0ERERB7iypJ25mL3cWbKISlp+OX36NI8//jhdu3alcuXKuueZiIiIw1xZ0pIvpxNgoGhhLXfmhyVLlhAVFcUnn3zCH/7wBzZs2EDdunWdjiUiIuLXXNlyfjyfRpmihXUSez7Ztm0bpUqVYuHChTRq1MjpOCIiIoJLZ9JOXUwlvKhuA3Er1qxZw5IlSwAYNWoUmzZtUkETERHxIq4saSnpmYQVCnQ6hiulpKTw7LPP0rp1a8aPH4+1lsDAQEJCtMWWiIiIN3FlSbuYmkmoStpN27hxI40aNeK1117jN7/5DcuWLdOSsYiIiJdy5Tlp51LSqVQq1OkYrhIfH8/dd9/NbbfdxtKlS2nXrp3TkUREROQ6XDqTlkExXdmZK+fPnwcgKiqK1157jYSEBBU0ERERF3BlSbuQmkGYStp1ZWZmMmXKFKpWrcqePXswxjB06FDd/0xERMQlXNd0rIVLaZmUDNWNbK9l79699OnTh/Xr1/PYY4+pmImIiLiQ62bSMrIsAKXCCjmcxDvNmDGDhg0bsmPHDt5//33mzp1L2bJlnY4lIiIiN8l1M2npmVkAhBdVSbuaHTt2cO+99/LOO+9QqVIlp+OIiIhIHrmupF1OzwSgUskiDifxDtZa5syZQ+3atbnrrrt49dVXCQ4O1q01REREXM51y50259fbSujmq0lJSXTu3Jm+ffsyc+ZMAAoVKqSCJiIi4gNcV9IyM3POSSvi3xcOfPbZZ0RGRrJ06VKmTp3K7NmznY4kIiIi+ch1y51pmVkUDwwgKNB1/TLfLFiwgNjYWGJiYpgzZw716tVzOpKIiIjkM9c1HYslLefiAX9z6tQpADp27Mif//xnNmzYoIImIiLio1xX0jIzLfUqFHc6RoE6f/48gwcPpl69epw8eZKgoCCefPJJgoP9e8lXRETEl7mvpFlLqTD/KSdr1qyhYcOGzJo1iz59+lCsWDGnI4mIiEgBcF9Jy7IU9YMtoTIyMhg5ciStW7fGGMOaNWuYMmUKISG6qlVERMQfuK6kpWdaSob6/o1sAwMD2b9/P4MHD2bbtm20aNHC6UgiIiJSgFw3JZVlLVnW3vhAF0pPT2fSpEn07NmT22+/nU8++YSgINcNkYiIiOQD182kAVQLD3M6Qr5LSEigWbNmjBs3jrlz5wKooImIiPgxV5a0yqVCnY6QbzIzM5kyZQoxMTEcOXKEefPm8fzzzzsdS0RERBzmypJWPMR3ru6cNm0ao0ePpmPHjiQkJPDoo486HUlERES8gCvX00KCA52OcEustSQlJXHbbbfx1FNPERERQZcuXbTnpoiIiPzElTNphYJcGRuAw4cP0759e1q1akVKSgphYWHExsaqoImIiMh/cWXbKeTCfTuttcyZM4eoqCjWr1/Ps88+q3ueiYiIyDW5crkzMMBds07Jycn06dOH+fPn06JFC9577z1q1qzpdCwRERHxYu6bkgJCgt0Vu0iRIpw9e5apU6fy1VdfqaCJiIjIDbmr7eQIdsFy55kzZ3jmmWd+2hB95cqVjBw5ksBAd1/0ICIiIgXD+9vOVXj7cufSpUuJjIxk1qxZrF69GoCAAFf+VYuIiIhDXNkcggK9s6RduHCBwYMH88ADD1CyZEni4uKIjY11OpaIiIi4kDtLmpfOSo0ePZpZs2YxatQoNm/eTExMjNORRERExKWMddlm5YUr1LI/7t9BMS/ZdeDy5cucOXOGChUqcOLECXbv3k3Lli2djiUiIiJewBiz2VrbOC+/15W34Ajwkhu/btq0id69e1O6dGnWrl1LuXLlKFeunNOxRERExAd457rhDTjd0dLT0xk3bhx33XUXycnJvPjii9oxQERERPKVK2fSDM4VokOHDvHoo4/y7bff0qtXL6ZNm0apUqUcyyMiIiK+yZ0lzcFJqzJlyhASEsJnn33GY4895lwQERER8WmuXO4saPv27aNPnz5cunSJsLAwvv76axU0ERER8ShXlrSCmkmz1jJjxgwaNGjAggULSEhIyPn8Ov9MREREPMudJa0Azkk7cuQI7du35+mnn6ZFixYkJCTQtGlTj39eEREREXBrSSuAiaxBgwaxbt06ZsyYwZIlS6hcubLnP6mIiIhIDndeOOCh9z1x4gSBgYGUKVOGt956C4CaNWt66LOJiIiIXJtLZ9Lyv6bNmzeP+vXrM3ToUCC7nKmgiYiIiFPcWdLy8b3OnDlDr1696NKlCxEREYwdOzYf311EREQkb9xZ0vKppW3cuJGoqCg+/PBDxo0bR1xcHPXr18+fNxcRERG5Be48Jy2fWlrVqlWpWbMm8+fPp3HjPO19KiIiIuIRrpxJuxVr166lV69eZGZmUq5cOVavXq2CJiIiIl7Hb0ra5cuXGTVqFK1atWL9+vUcPXrU6UgiIiIi1+QXJW3Tpk00atSIV199laeeeopt27YRERHhdCwRERGRa3LlOWk3IzMzk169enH+/HmWLFlC+/btnY4kIiIickOuK2m5vWRg586dVK1alSJFijB37lwqVqxIqVKlPJpNREREJL/43HJnZmYmU6dO5c477+Sll14CoH79+ipoIiIi4iqum0m7nn379tG3b1++/vprOnfuzIgRI5yOJCIiIpInPlPS5s+fzxNPPEFQUBBz5szhiSee8Mj2USIiIiIFwWdKWt26dWnbti1vvfUWVapUcTqOiIiIyC1x3zlpOZNj1lref/99Bg0ahLWW2rVrs2DBAhU0ERER8QkeLWnGmAeMMbuNMXuNMc9f5XVjjHkj5/V4Y0yjG74nhhMnTtClSxd69erFzp07uXjxomf+ACIiIiIO8dhypzEmEHgb+BVwBNhojPncWrvjisMeBGrlfDQDZuT8ek2Zly8QGRnJuXPnmDJlCs8++yyBgYGe+UOIiIiIOMST56Q1BfZaa78HMMZ8BHQCrixpnYA51loLxBljShpjKlhrj1/rTdPPJVElOppVq1ZRv359D8YXERERcY4nS1ol4PAVj4/wy1myqx1TCfivkmaMeRJ4Mudh6rfffpsQGRmZv2mloIQDPzodQvJEY+duGj930/i5V+28/kZPlrSr3f/C5uEYrLWzgFkAxphN1trGtx5PnKDxcy+Nnbtp/NxN4+dexphNef29nrxw4Ahw5aWWlYFjeThGRERExO94sqRtBGoZY6obYwoB3YHPf3bM50DvnKs87wLOXe98NBERERF/4bHlTmtthjFmCLAUCAT+aq39zhgzOOf1mcBioAOwF7gE9MvFW8/yUGQpGBo/99LYuZvGz900fu6V57Ez2RdWioiIiIg3cd+OAyIiIiJ+QCVNRERExAt5bUnzxJZSUjByMXaP54xZvDFmvTGmoRM55epuNH5XHNfEGJNpjIktyHxyfbkZP2NMa2PMVmPMd8aY1QWdUa4uFz87SxhjFhpjtuWMXW7O45YCYIz5qzHmhDEm4Rqv56mzeGVJu2JLqQeBekAPY0y9nx125ZZST5K9pZQ4LJdjtx9oZa1tALyEToj1Grkcv38f9zLZFwaJl8jN+BljSgLTgUestfWBrgUeVH4hl997zwA7rLUNgdbAqzl3TxDnvQc8cJ3X89RZvLKkccWWUtbaNODfW0pd6actpay1cUBJY0yFgg4qv3DDsbPWrrfWnsl5GEf2/fHEO+Tmew9gKPAZcKIgw8kN5Wb8egLzrLWHAKy1GkPvkJuxs0AxY4wBigKngYyCjSlXY61dQ/Z4XEueOou3lrRrbRd1s8dIwbvZcRkAfOnRRHIzbjh+xphKwKPAzALMJbmTm++/O4BSxpivjDGbjTG9CyydXE9uxu4toC7ZN33fDgy31mYVTDy5RXnqLJ7cFupW5NuWUlLgcj0uxpj7yC5pLTyaSG5GbsbvdWC0tTYz+x/04kVyM35BQAzQFggFNhhj4qy1iZ4OJ9eVm7FrD2wF2gA1geXGmLXW2mRPh5NblqfO4q0lTVtKuVdz08yhAAACe0lEQVSuxsUY0wB4B3jQWnuqgLLJjeVm/BoDH+UUtHCggzEmw1o7v2AiynXk9mfnj9bai8BFY8waoCGgkuas3IxdP2Cyzb7B6V5jzH6gDvCvgokotyBPncVblzu1pZR73XDsjDERwDygl/717nVuOH7W2urW2mrW2mrAXOBpFTSvkZufnQuAlsaYIGNMEaAZsLOAc8ov5WbsDpE9A4oxpjxQG/i+QFNKXuWps3jlTJoHt5QSD8vl2L0IlAGm58zGZFhrGzuVWf4jl+MnXio342et3WmMWQLEA1nAO9baq942QApOLr/3XgLeM8ZsJ3v5bLS19kfHQstPjDEfkn3Fbbgx5ggwDgiGW+ss2hZKRERExAt563KniIiIiF9TSRMRERHxQippIiIiIl5IJU1ERETEC6mkiYiIiHghlTQR8QvGmExjzNYrPqoZY1obY84ZY7YYY3YaY8blHHvl87uMMVOdzi8i/scr75MmIuIBKdba6CufMMZUA9Zaax8yxoQBW40xi3Je/vfzocAWY8w/rLXrCjayiPgzzaSJiAA52yRtJntPxCufTyF7v8QbboYsIpKfVNJExF+EXrHU+Y+fv2iMKQPcBXz3s+dLAbWANQUTU0Qkm5Y7RcRf/GK5M0dLY8wWsrdImpyzFU/rnOfjyd4fcbK19ocCzCoiopImIn5vrbX2oWs9b4y5A/g655y0rQUdTkT8l5Y7RUSuw1qbCEwCRjudRUT8i0qaiMiNzQTuNcZUdzqIiPgPY611OoOIiIiI/Ixm0kRERES8kEqaiIiIiBdSSRMRERHxQippIiIiIl5IJU1ERETEC6mkiYiIiHghlTQRERERL/T/paJp2c1+9T4AAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.model_selection import RandomizedSearchCV\n", + "from scipy.stats import loguniform, uniform\n", + "\n", + "params = {'C': loguniform(1e-3, 1e1),\n", + " 'l1_ratio': uniform(),\n", + " }\n", + "\n", + "lr = LogisticRegression(random_state=13, solver='saga', penalty='elasticnet')\n", + "\n", + "cv = RandomizedSearchCV(lr, params, random_state=3, n_iter=100, n_jobs=6, verbose=1, scoring='roc_auc')\n", + "cv.fit(dataset.data.view(-1, 150), dataset.targets)\n", + "\n", + "preds = cv.best_estimator_.predict_proba(val_dataset.data.view(-1, 150))\n", + "\n", + "fpr, tpr, _ = roc_curve(val_dataset.targets, preds[:, 1])\n", + "\n", + "print('AUC: ', roc_auc_score(val_dataset.targets, preds[:, 1]))\n", + "print('Log loss: ', log_loss(val_dataset.targets, preds[:, 1]))\n", + "print('Accuracy: ', accuracy_score(val_dataset.targets, preds[:, 1] > 0.5))\n", + "\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "\n", + "plt.figure(figsize=(10, 7))\n", + "plt.plot(fpr, tpr)\n", + "plt.plot([0, 1], [0, 1], 'k--')\n", + "plt.xlabel('FPR')\n", + "plt.ylabel('TPR')\n", + "plt.xlim([0, 1])\n", + "plt.ylim([0, 1])\n", + "plt.title('ROC curve of logistic regression baseline model');" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "LogisticRegression(C=7.263959337796386, class_weight=None, dual=False,\n", + " fit_intercept=True, intercept_scaling=1,\n", + " l1_ratio=0.7510273073183793, max_iter=100,\n", + " multi_class='auto', n_jobs=None, penalty='elasticnet',\n", + " random_state=13, solver='saga', tol=0.0001, verbose=0,\n", + " warm_start=False)" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cv.best_estimator_" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Fitting 5 folds for each of 100 candidates, totalling 500 fits\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "[Parallel(n_jobs=-1)]: Using backend LokyBackend with 12 concurrent workers.\n", + "[Parallel(n_jobs=-1)]: Done 38 tasks | elapsed: 1.3min\n", + "[Parallel(n_jobs=-1)]: Done 188 tasks | elapsed: 6.5min\n", + "[Parallel(n_jobs=-1)]: Done 438 tasks | elapsed: 14.6min\n", + "[Parallel(n_jobs=-1)]: Done 500 out of 500 | elapsed: 16.5min finished\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AUC: 0.7897245563325281\n", + "Log loss: 0.5182551794691311\n", + "Accuracy: 0.7085956513293953\n" + ] + }, + { + "data": { + "image/png": "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b7+dGjVqOB1LREQkqLhyuTPD4wGgbDEtu+W3OXPmUL16ddauXQvAI488ooImIiLiAFeWtJ9OnqdowRBKFHLlRKBfOn78OA899BDdunWjcuXK2vNMRETEYa4saYdPn6dCqcK6PyqfLFq0iJiYGGbPns1f//pX1q5dyw033OB0LBERkaDmyqmon06mcp32SMs3SUlJlC5dms8++4xGjRo5HUdERERw6UzawVPnqVyqiNMxXG3lypUsWrQIgKeeeorExEQVNBERET/iypJ2/Jd0yujJzjxJTU3lySefpE2bNrzwwgtYawkJCaFQoUJORxMREZEcXFfSMj2WDI8lUk92XrWEhAQaNWrExIkT+eMf/8iSJUt0X5+IiIifct09aRkeC0AZnTZwVZKTk7n55pspX748ixcvpn379k5HEhERkctw3UyaJ7ukFdf2G7ly5swZAGJiYpg4cSIpKSkqaCIiIi7gupKWabNKWpGCKmmXk5mZyfjx46latSo7duzAGMPQoUO1/5mIiIhLuK7p/GcmrURh10X3mZ07dxIfH8+aNWu47777VMxERERcyHUzaWkZWUdCFdPh6hc1depUGjZsyHfffcesWbOYM2cOkZGRTscSERGRq+S6plPAgAWKFwpzOopf+u6772jVqhVvvfUWlSpVcjqOiIiI5JHrSprHggEKh4U4HcUvWGuZOXMmderUoVmzZrzyyiuEhYVpaw0RERGXc91yp8daChgID3Vd9Hx3+PBhOnXqRJ8+fZg2bRoABQsWVEETEREJAK5rOhkeS6kiBSlQILiLyMcff0x0dDSLFy9mwoQJzJgxw+lIIiIiko9ct9yZ6bGULBzc96PNnz+frl27EhcXx8yZM6lXr57TkURERCSfuW4mzdrgvR/t2LFjANx111288cYbrF27VgVNREQkQLmupGV6LOFhrot9Tc6cOcPgwYOpV68eR48eJTQ0lEGDBhEWFtwziiIiIoHMdW0n09pfN7QNBitXrqRhw4ZMnz6d+Ph4ihcv7nQkERER8QHXlTQsRBQLdzqF12VkZDB8+HDatGmDMYaVK1cyfvx4ChUq5HQ0ERER8QHXlbQMjycoHhwICQlh165dDB48mKSkJFq0aOF0JBEREfEh1z3dmeGxVI8o6nQMr7hw4QJjx47lwQcf5Prrr2f27NmEhrpuiERERCQfuG4mDaBS6cJO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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.model_selection import RandomizedSearchCV\n", + "from scipy.stats import loguniform, uniform\n", + "from sklearn.feature_selection import VarianceThreshold\n", + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "params = {'C': loguniform(1e-3, 1e1),\n", + " 'l1_ratio': uniform(),\n", + " }\n", + "\n", + "scaler = StandardScaler()\n", + "thresh = VarianceThreshold() # remove constant features\n", + "\n", + "thresh.fit(dataset.data.view(-1, 150))\n", + "scaler.fit(thresh.transform(dataset.data.view(-1, 150)))\n", + "\n", + "lr = LogisticRegression(random_state=13, solver='saga', penalty='elasticnet')\n", + "\n", + "cv = RandomizedSearchCV(lr, params, random_state=3, n_iter=100, n_jobs=-1, verbose=1, scoring='roc_auc', pre_dispatch='n_jobs')\n", + "cv.fit(scaler.transform(thresh.transform(dataset.data.view(-1, 150))),\n", + " dataset.targets)\n", + "\n", + "preds = cv.best_estimator_.predict_proba(scaler.transform(thresh.transform(val_dataset.data.view(-1, 150))))\n", + "\n", + "fpr, tpr, _ = roc_curve(val_dataset.targets, preds[:, 1])\n", + "\n", + "print('AUC: ', roc_auc_score(val_dataset.targets, preds[:, 1]))\n", + "print('Log loss: ', log_loss(val_dataset.targets, preds[:, 1]))\n", + "print('Accuracy: ', accuracy_score(val_dataset.targets, preds[:, 1] > 0.5))\n", + "\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "\n", + "plt.figure(figsize=(10, 7))\n", + "plt.plot(fpr, tpr)\n", + "plt.plot([0, 1], [0, 1], 'k--')\n", + "plt.xlabel('FPR')\n", + "plt.ylabel('TPR')\n", + "plt.xlim([0, 1])\n", + "plt.ylim([0, 1])\n", + "plt.title('ROC curve of logistic regression baseline model');" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "LogisticRegression(C=0.0019701290593098237, class_weight=None, dual=False,\n", + " fit_intercept=True, intercept_scaling=1,\n", + " l1_ratio=0.8923931875870925, max_iter=100,\n", + " multi_class='auto', n_jobs=None, penalty='elasticnet',\n", + " random_state=13, solver='saga', tol=0.0001, verbose=0,\n", + " warm_start=False)" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cv.best_estimator_" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.7085956513293953" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cv.best_estimator_.score(scaler.transform(thresh.transform(val_dataset.data.view(-1, 150))), val_dataset.targets)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "import seaborn as sns\n", + "\n", + "results = pd.DataFrame.from_dict(cv.cv_results_)\n", + "sns.scatterplot(x='param_C', y='mean_test_score', data=results)\n", + "plt.xscale('log')\n", + "plt.show()\n", + "sns.scatterplot(x='param_l1_ratio', y='mean_test_score', data=results)\n", + "plt.show()\n", + "sns.scatterplot(x='param_C', y='mean_test_score', hue='param_l1_ratio', data=results)\n", + "plt.xscale('log')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sns.scatterplot(x='param_l1_ratio', y='mean_test_score', hue='param_C', data=results)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Fitting 5 folds for each of 100 candidates, totalling 500 fits\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "[Parallel(n_jobs=8)]: Using backend LokyBackend with 8 concurrent workers.\n", + "[Parallel(n_jobs=8)]: Done 42 tasks | elapsed: 3.8min\n", + "[Parallel(n_jobs=8)]: Done 192 tasks | elapsed: 18.5min\n", + "[Parallel(n_jobs=8)]: Done 442 tasks | elapsed: 39.1min\n", + "[Parallel(n_jobs=8)]: Done 500 out of 500 | elapsed: 46.5min finished\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AUC: 0.7802311496890286\n", + "Log loss: 0.5322571431835534\n", + "Accuracy: 0.7105380422984198\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.model_selection import RandomizedSearchCV\n", + "from scipy.stats import loguniform, uniform\n", + "from sklearn.feature_selection import VarianceThreshold\n", + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "params = {'C': loguniform(1e-6, 1e-2),\n", + " }\n", + "\n", + "scaler = StandardScaler()\n", + "thresh = VarianceThreshold() # remove constant features\n", + "\n", + "thresh.fit(dataset.data.view(-1, 150))\n", + "scaler.fit(thresh.transform(dataset.data.view(-1, 150)))\n", + "\n", + "lr = LogisticRegression(random_state=13, l1_ratio=1, solver='saga', penalty='elasticnet')\n", + "\n", + "cv = RandomizedSearchCV(lr, params, random_state=3, n_iter=100, n_jobs=8, verbose=1, scoring='roc_auc', pre_dispatch='n_jobs')\n", + "cv.fit(scaler.transform(thresh.transform(dataset.data.view(-1, 150))),\n", + " dataset.targets)\n", + "\n", + "preds = cv.best_estimator_.predict_proba(scaler.transform(thresh.transform(val_dataset.data.view(-1, 150))))\n", + "\n", + "fpr, tpr, _ = roc_curve(val_dataset.targets, preds[:, 1])\n", + "\n", + "print('AUC: ', roc_auc_score(val_dataset.targets, preds[:, 1]))\n", + "print('Log loss: ', log_loss(val_dataset.targets, preds[:, 1]))\n", + "print('Accuracy: ', accuracy_score(val_dataset.targets, preds[:, 1] > 0.5))\n", + "\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "\n", + "plt.figure(figsize=(10, 7))\n", + "plt.plot(fpr, tpr)\n", + "plt.plot([0, 1], [0, 1], 'k--')\n", + "plt.xlabel('FPR')\n", + "plt.ylabel('TPR')\n", + "plt.xlim([0, 1])\n", + "plt.ylim([0, 1])\n", + "plt.title('ROC curve of logistic regression baseline model');" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "LogisticRegression(C=0.00015086763143259878, class_weight=None, dual=False,\n", + " fit_intercept=True, intercept_scaling=1, l1_ratio=1,\n", + " max_iter=100, multi_class='auto', n_jobs=None,\n", + " penalty='elasticnet', random_state=13, solver='saga',\n", + " tol=0.0001, verbose=0, warm_start=False)" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cv.best_estimator_" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "results = pd.DataFrame.from_dict(cv.cv_results_)\n", + "sns.scatterplot(x='param_C', y='mean_test_score', data=results)\n", + "plt.xscale('log')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.0" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}