Created
June 7, 2023 10:54
-
-
Save alonsosilvaallende/55c3cf65a983d9623b6a7284b83c9dcd to your computer and use it in GitHub Desktop.
Regression-for-Iris-dataset-colab.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"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.8.2" | |
}, | |
"colab": { | |
"name": "Regression-for-Iris-dataset-colab.ipynb", | |
"provenance": [], | |
"include_colab_link": true | |
} | |
}, | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/alonsosilvaallende/55c3cf65a983d9623b6a7284b83c9dcd/regression-for-iris-dataset-colab.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "VCV1UZu-NTgr" | |
}, | |
"source": [ | |
"# Regression for Iris dataset with 'sepal width' as the target" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "vVdIF-vCOYWB" | |
}, | |
"source": [ | |
"import sklearn\n", | |
"\n", | |
"assert sklearn.__version__ >= \"1.0\"\n", | |
"# %pip install -q -U scikit-learn>=1.0.0" | |
], | |
"execution_count": 1, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "9ypieMc3NQ-M" | |
}, | |
"source": [ | |
"import numpy as np\n", | |
"import pandas as pd\n", | |
"import matplotlib.pyplot as plt" | |
], | |
"execution_count": 2, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "-atdbdkNNQ-i" | |
}, | |
"source": [ | |
"from sklearn.datasets import load_iris\n", | |
"\n", | |
"iris = load_iris()" | |
], | |
"execution_count": 3, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"scrolled": false, | |
"id": "o-LwD0hQNQ-4", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "bd85d670-80bf-493d-dc24-dddf7f2095f7" | |
}, | |
"source": [ | |
"print(iris.DESCR)" | |
], | |
"execution_count": 4, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
".. _iris_dataset:\n", | |
"\n", | |
"Iris plants dataset\n", | |
"--------------------\n", | |
"\n", | |
"**Data Set Characteristics:**\n", | |
"\n", | |
" :Number of Instances: 150 (50 in each of three classes)\n", | |
" :Number of Attributes: 4 numeric, predictive attributes and the class\n", | |
" :Attribute Information:\n", | |
" - sepal length in cm\n", | |
" - sepal width in cm\n", | |
" - petal length in cm\n", | |
" - petal width in cm\n", | |
" - class:\n", | |
" - Iris-Setosa\n", | |
" - Iris-Versicolour\n", | |
" - Iris-Virginica\n", | |
" \n", | |
" :Summary Statistics:\n", | |
"\n", | |
" ============== ==== ==== ======= ===== ====================\n", | |
" Min Max Mean SD Class Correlation\n", | |
" ============== ==== ==== ======= ===== ====================\n", | |
" sepal length: 4.3 7.9 5.84 0.83 0.7826\n", | |
" sepal width: 2.0 4.4 3.05 0.43 -0.4194\n", | |
" petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)\n", | |
" petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)\n", | |
" ============== ==== ==== ======= ===== ====================\n", | |
"\n", | |
" :Missing Attribute Values: None\n", | |
" :Class Distribution: 33.3% for each of 3 classes.\n", | |
" :Creator: R.A. Fisher\n", | |
" :Donor: Michael Marshall (MARSHALL%[email protected])\n", | |
" :Date: July, 1988\n", | |
"\n", | |
"The famous Iris database, first used by Sir R.A. Fisher. The dataset is taken\n", | |
"from Fisher's paper. Note that it's the same as in R, but not as in the UCI\n", | |
"Machine Learning Repository, which has two wrong data points.\n", | |
"\n", | |
"This is perhaps the best known database to be found in the\n", | |
"pattern recognition literature. Fisher's paper is a classic in the field and\n", | |
"is referenced frequently to this day. (See Duda & Hart, for example.) The\n", | |
"data set contains 3 classes of 50 instances each, where each class refers to a\n", | |
"type of iris plant. One class is linearly separable from the other 2; the\n", | |
"latter are NOT linearly separable from each other.\n", | |
"\n", | |
".. topic:: References\n", | |
"\n", | |
" - Fisher, R.A. \"The use of multiple measurements in taxonomic problems\"\n", | |
" Annual Eugenics, 7, Part II, 179-188 (1936); also in \"Contributions to\n", | |
" Mathematical Statistics\" (John Wiley, NY, 1950).\n", | |
" - Duda, R.O., & Hart, P.E. (1973) Pattern Classification and Scene Analysis.\n", | |
" (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.\n", | |
" - Dasarathy, B.V. (1980) \"Nosing Around the Neighborhood: A New System\n", | |
" Structure and Classification Rule for Recognition in Partially Exposed\n", | |
" Environments\". IEEE Transactions on Pattern Analysis and Machine\n", | |
" Intelligence, Vol. PAMI-2, No. 1, 67-71.\n", | |
" - Gates, G.W. (1972) \"The Reduced Nearest Neighbor Rule\". IEEE Transactions\n", | |
" on Information Theory, May 1972, 431-433.\n", | |
" - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al\"s AUTOCLASS II\n", | |
" conceptual clustering system finds 3 classes in the data.\n", | |
" - Many, many more ...\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "SAFiuZC9NQ_J", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 206 | |
}, | |
"outputId": "74de2cfe-4f29-43b6-9ee3-80c6ab31e4d3" | |
}, | |
"source": [ | |
"df_raw = pd.DataFrame(iris.data, columns=iris.feature_names)\n", | |
"df_raw.head()" | |
], | |
"execution_count": 5, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
" sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)\n", | |
"0 5.1 3.5 1.4 0.2\n", | |
"1 4.9 3.0 1.4 0.2\n", | |
"2 4.7 3.2 1.3 0.2\n", | |
"3 4.6 3.1 1.5 0.2\n", | |
"4 5.0 3.6 1.4 0.2" | |
], | |
"text/html": [ | |
"\n", | |
" <div id=\"df-cf4250b5-5a9e-4d24-922e-42b7cfa2e564\">\n", | |
" <div class=\"colab-df-container\">\n", | |
" <div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sepal length (cm)</th>\n", | |
" <th>sepal width (cm)</th>\n", | |
" <th>petal length (cm)</th>\n", | |
" <th>petal width (cm)</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>5.1</td>\n", | |
" <td>3.5</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>4.9</td>\n", | |
" <td>3.0</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>4.7</td>\n", | |
" <td>3.2</td>\n", | |
" <td>1.3</td>\n", | |
" <td>0.2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>4.6</td>\n", | |
" <td>3.1</td>\n", | |
" <td>1.5</td>\n", | |
" <td>0.2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>5.0</td>\n", | |
" <td>3.6</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>\n", | |
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-cf4250b5-5a9e-4d24-922e-42b7cfa2e564')\"\n", | |
" title=\"Convert this dataframe to an interactive table.\"\n", | |
" style=\"display:none;\">\n", | |
" \n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n", | |
" <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
" \n", | |
" <style>\n", | |
" .colab-df-container {\n", | |
" display:flex;\n", | |
" flex-wrap:wrap;\n", | |
" gap: 12px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
"\n", | |
" <script>\n", | |
" const buttonEl =\n", | |
" document.querySelector('#df-cf4250b5-5a9e-4d24-922e-42b7cfa2e564 button.colab-df-convert');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" async function convertToInteractive(key) {\n", | |
" const element = document.querySelector('#df-cf4250b5-5a9e-4d24-922e-42b7cfa2e564');\n", | |
" const dataTable =\n", | |
" await google.colab.kernel.invokeFunction('convertToInteractive',\n", | |
" [key], {});\n", | |
" if (!dataTable) return;\n", | |
"\n", | |
" const docLinkHtml = 'Like what you see? Visit the ' +\n", | |
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n", | |
" + ' to learn more about interactive tables.';\n", | |
" element.innerHTML = '';\n", | |
" dataTable['output_type'] = 'display_data';\n", | |
" await google.colab.output.renderOutput(dataTable, element);\n", | |
" const docLink = document.createElement('div');\n", | |
" docLink.innerHTML = docLinkHtml;\n", | |
" element.appendChild(docLink);\n", | |
" }\n", | |
" </script>\n", | |
" </div>\n", | |
" </div>\n", | |
" " | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 5 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "e0HkoLYYNQ_f", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 206 | |
}, | |
"outputId": "439d58fc-d8ac-4da8-e25a-b26b18f4f122" | |
}, | |
"source": [ | |
"df_raw['class'] = iris.target\n", | |
"df_raw.head()" | |
], | |
"execution_count": 6, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
" sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) \\\n", | |
"0 5.1 3.5 1.4 0.2 \n", | |
"1 4.9 3.0 1.4 0.2 \n", | |
"2 4.7 3.2 1.3 0.2 \n", | |
"3 4.6 3.1 1.5 0.2 \n", | |
"4 5.0 3.6 1.4 0.2 \n", | |
"\n", | |
" class \n", | |
"0 0 \n", | |
"1 0 \n", | |
"2 0 \n", | |
"3 0 \n", | |
"4 0 " | |
], | |
"text/html": [ | |
"\n", | |
" <div id=\"df-812d90d4-2f91-4cf1-a7d2-406e76f01128\">\n", | |
" <div class=\"colab-df-container\">\n", | |
" <div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sepal length (cm)</th>\n", | |
" <th>sepal width (cm)</th>\n", | |
" <th>petal length (cm)</th>\n", | |
" <th>petal width (cm)</th>\n", | |
" <th>class</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>5.1</td>\n", | |
" <td>3.5</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>4.9</td>\n", | |
" <td>3.0</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>4.7</td>\n", | |
" <td>3.2</td>\n", | |
" <td>1.3</td>\n", | |
" <td>0.2</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>4.6</td>\n", | |
" <td>3.1</td>\n", | |
" <td>1.5</td>\n", | |
" <td>0.2</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>5.0</td>\n", | |
" <td>3.6</td>\n", | |
" <td>1.4</td>\n", | |
" <td>0.2</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>\n", | |
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-812d90d4-2f91-4cf1-a7d2-406e76f01128')\"\n", | |
" title=\"Convert this dataframe to an interactive table.\"\n", | |
" style=\"display:none;\">\n", | |
" \n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n", | |
" <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
" \n", | |
" <style>\n", | |
" .colab-df-container {\n", | |
" display:flex;\n", | |
" flex-wrap:wrap;\n", | |
" gap: 12px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
"\n", | |
" <script>\n", | |
" const buttonEl =\n", | |
" document.querySelector('#df-812d90d4-2f91-4cf1-a7d2-406e76f01128 button.colab-df-convert');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" async function convertToInteractive(key) {\n", | |
" const element = document.querySelector('#df-812d90d4-2f91-4cf1-a7d2-406e76f01128');\n", | |
" const dataTable =\n", | |
" await google.colab.kernel.invokeFunction('convertToInteractive',\n", | |
" [key], {});\n", | |
" if (!dataTable) return;\n", | |
"\n", | |
" const docLinkHtml = 'Like what you see? Visit the ' +\n", | |
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n", | |
" + ' to learn more about interactive tables.';\n", | |
" element.innerHTML = '';\n", | |
" dataTable['output_type'] = 'display_data';\n", | |
" await google.colab.output.renderOutput(dataTable, element);\n", | |
" const docLink = document.createElement('div');\n", | |
" docLink.innerHTML = docLinkHtml;\n", | |
" element.appendChild(docLink);\n", | |
" }\n", | |
" </script>\n", | |
" </div>\n", | |
" </div>\n", | |
" " | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 6 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ZAthwy2MNQ_3", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "98b75f63-86b0-4b60-af5a-d4039b6b75c8" | |
}, | |
"source": [ | |
"df_raw['class'].unique()" | |
], | |
"execution_count": 7, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"array([0, 1, 2])" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 7 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"list(iris.target_names)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "NJfKYx5u-kss", | |
"outputId": "2c2aba0c-7f0c-4102-9246-d95f1efe3ade" | |
}, | |
"execution_count": 8, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"['setosa', 'versicolor', 'virginica']" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 8 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "d0MYo8ixNRAA" | |
}, | |
"source": [ | |
"from sklearn.model_selection import train_test_split\n", | |
"\n", | |
"X_train, X_test, y_train, y_test = train_test_split(\n", | |
" df_raw.drop(columns='sepal width (cm)'), df_raw['sepal width (cm)'], random_state=42)" | |
], | |
"execution_count": 9, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "nY28r0Z6NRAK", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "7dd95f3d-5a57-4f67-adad-9f3c7f7e1a70" | |
}, | |
"source": [ | |
"X_train.columns" | |
], | |
"execution_count": 10, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Index(['sepal length (cm)', 'petal length (cm)', 'petal width (cm)', 'class'], dtype='object')" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 10 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "TSYfiyqPNRAT", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 35 | |
}, | |
"outputId": "711514a6-77ee-4bc1-9ecf-5127868d474f" | |
}, | |
"source": [ | |
"y_train.name" | |
], | |
"execution_count": 11, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"'sepal width (cm)'" | |
], | |
"application/vnd.google.colaboratory.intrinsic+json": { | |
"type": "string" | |
} | |
}, | |
"metadata": {}, | |
"execution_count": 11 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "_Nn9wkJINRAj" | |
}, | |
"source": [ | |
"categorical_columns = ['class']\n", | |
"numerical_columns = ['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']" | |
], | |
"execution_count": 12, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "SHNFVFSCNRAt" | |
}, | |
"source": [ | |
"from sklearn.pipeline import Pipeline\n", | |
"from sklearn.preprocessing import OneHotEncoder\n", | |
"\n", | |
"categorical_pipe = Pipeline([\n", | |
" ('onehot', OneHotEncoder())\n", | |
"])" | |
], | |
"execution_count": 13, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"pd.DataFrame(X_train['class']).head(5).style.hide(axis=\"index\")" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 206 | |
}, | |
"id": "Svs5Vu0IClPD", | |
"outputId": "6cae70af-7d4b-41be-cc29-b4649d7dff88" | |
}, | |
"execution_count": 15, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<pandas.io.formats.style.Styler at 0x7f3dc704d000>" | |
], | |
"text/html": [ | |
"<style type=\"text/css\">\n", | |
"</style>\n", | |
"<table id=\"T_4b388\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr>\n", | |
" <th id=\"T_4b388_level0_col0\" class=\"col_heading level0 col0\" >class</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <td id=\"T_4b388_row0_col0\" class=\"data row0 col0\" >0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_4b388_row1_col0\" class=\"data row1 col0\" >0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_4b388_row2_col0\" class=\"data row2 col0\" >2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_4b388_row3_col0\" class=\"data row3 col0\" >1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_4b388_row4_col0\" class=\"data row4 col0\" >1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 15 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"encoder = OneHotEncoder(sparse_output=False)\n", | |
"X = encoder.fit_transform(pd.DataFrame(X_train['class']))" | |
], | |
"metadata": { | |
"id": "RHVVQuInDJ9H" | |
}, | |
"execution_count": 17, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"source": [ | |
"Scikit-Learn loves Pandas: https://colab.research.google.com/gist/ageron/d4e0d3caed542b8a4285ef433f650a8d/scikit-learn-pandas.ipynb#scrollTo=9jZTcN0OC8ZP" | |
], | |
"metadata": { | |
"id": "N70viswyma4H" | |
} | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"encoder.feature_names_in_" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "qbJssFuqDQ6b", | |
"outputId": "b228ce82-9695-4baa-de36-00fe7bbdb5a3" | |
}, | |
"execution_count": 18, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"array(['class'], dtype=object)" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 18 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"encoder.get_feature_names_out()" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "y-MD3HyjDYqW", | |
"outputId": "fcc8d45e-bbd3-40eb-95f8-f4dd571cee45" | |
}, | |
"execution_count": 19, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"array(['class_0', 'class_1', 'class_2'], dtype=object)" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 19 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"X_train_df = pd.DataFrame(X, columns=encoder.get_feature_names_out(), index=X_train.index)\n", | |
"formatdict = {col: '{:.1f}' for col in X_train_df.columns.values}\n", | |
"X_train_df[:5].style.hide_index().format(formatdict)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 241 | |
}, | |
"id": "XrVNezgkUavU", | |
"outputId": "d6b2c10e-c6c6-46d3-fc80-cfc8ec6c2190" | |
}, | |
"execution_count": 20, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stderr", | |
"text": [ | |
"<ipython-input-20-eae1229f27ce>:3: FutureWarning: this method is deprecated in favour of `Styler.hide(axis=\"index\")`\n", | |
" X_train_df[:5].style.hide_index().format(formatdict)\n" | |
] | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<pandas.io.formats.style.Styler at 0x7f3dc704d3c0>" | |
], | |
"text/html": [ | |
"<style type=\"text/css\">\n", | |
"</style>\n", | |
"<table id=\"T_fc088\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr>\n", | |
" <th id=\"T_fc088_level0_col0\" class=\"col_heading level0 col0\" >class_0</th>\n", | |
" <th id=\"T_fc088_level0_col1\" class=\"col_heading level0 col1\" >class_1</th>\n", | |
" <th id=\"T_fc088_level0_col2\" class=\"col_heading level0 col2\" >class_2</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <td id=\"T_fc088_row0_col0\" class=\"data row0 col0\" >1.0</td>\n", | |
" <td id=\"T_fc088_row0_col1\" class=\"data row0 col1\" >0.0</td>\n", | |
" <td id=\"T_fc088_row0_col2\" class=\"data row0 col2\" >0.0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_fc088_row1_col0\" class=\"data row1 col0\" >1.0</td>\n", | |
" <td id=\"T_fc088_row1_col1\" class=\"data row1 col1\" >0.0</td>\n", | |
" <td id=\"T_fc088_row1_col2\" class=\"data row1 col2\" >0.0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_fc088_row2_col0\" class=\"data row2 col0\" >0.0</td>\n", | |
" <td id=\"T_fc088_row2_col1\" class=\"data row2 col1\" >0.0</td>\n", | |
" <td id=\"T_fc088_row2_col2\" class=\"data row2 col2\" >1.0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_fc088_row3_col0\" class=\"data row3 col0\" >0.0</td>\n", | |
" <td id=\"T_fc088_row3_col1\" class=\"data row3 col1\" >1.0</td>\n", | |
" <td id=\"T_fc088_row3_col2\" class=\"data row3 col2\" >0.0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <td id=\"T_fc088_row4_col0\" class=\"data row4 col0\" >0.0</td>\n", | |
" <td id=\"T_fc088_row4_col1\" class=\"data row4 col1\" >1.0</td>\n", | |
" <td id=\"T_fc088_row4_col2\" class=\"data row4 col2\" >0.0</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 20 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "DZIhlDdKNRA8" | |
}, | |
"source": [ | |
"from sklearn.preprocessing import StandardScaler\n", | |
"\n", | |
"numerical_pipe = Pipeline([\n", | |
" ('scaler', StandardScaler())\n", | |
"])" | |
], | |
"execution_count": 21, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "RwfiM8TKNRBD" | |
}, | |
"source": [ | |
"from sklearn.compose import ColumnTransformer\n", | |
"\n", | |
"preprocessing = ColumnTransformer(\n", | |
" [('cat', categorical_pipe, categorical_columns),\n", | |
" ('num', numerical_pipe, numerical_columns)])" | |
], | |
"execution_count": 22, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"from sklearn.neighbors import KNeighborsRegressor\n", | |
"\n", | |
"knn = Pipeline([\n", | |
" ('preprocess', preprocessing),\n", | |
" ('knn', KNeighborsRegressor(n_neighbors=1))\n", | |
"])" | |
], | |
"metadata": { | |
"id": "q90veasnBAGS" | |
}, | |
"execution_count": 23, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"from sklearn import set_config\n", | |
"\n", | |
"set_config(display='diagram')\n", | |
"\n", | |
"knn.fit(X_train, y_train)" | |
], | |
"metadata": { | |
"id": "adLj3uqmBT1X", | |
"outputId": "a33eec95-ba53-4463-ce30-4fdd4073654d", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 192 | |
} | |
}, | |
"execution_count": 24, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('knn', KNeighborsRegressor(n_neighbors=1))])" | |
], | |
"text/html": [ | |
"<style>#sk-container-id-1 {color: black;background-color: white;}#sk-container-id-1 pre{padding: 0;}#sk-container-id-1 div.sk-toggleable {background-color: white;}#sk-container-id-1 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-1 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-1 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-1 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-1 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-1 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-1 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-1 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-1 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-1 div.sk-item {position: relative;z-index: 1;}#sk-container-id-1 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-1 div.sk-item::before, #sk-container-id-1 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-1 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-1 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-1 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-1 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-1 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-1 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-1 div.sk-label-container {text-align: center;}#sk-container-id-1 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-1 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('knn', KNeighborsRegressor(n_neighbors=1))])</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" ><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">Pipeline</label><div class=\"sk-toggleable__content\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('knn', KNeighborsRegressor(n_neighbors=1))])</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-2\" type=\"checkbox\" ><label for=\"sk-estimator-id-2\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">preprocess: ColumnTransformer</label><div class=\"sk-toggleable__content\"><pre>ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot', OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler', StandardScaler())]),\n", | |
" ['sepal length (cm)', 'petal length (cm)',\n", | |
" 'petal width (cm)'])])</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-3\" type=\"checkbox\" ><label for=\"sk-estimator-id-3\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">cat</label><div class=\"sk-toggleable__content\"><pre>['class']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-4\" type=\"checkbox\" ><label for=\"sk-estimator-id-4\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">OneHotEncoder</label><div class=\"sk-toggleable__content\"><pre>OneHotEncoder()</pre></div></div></div></div></div></div></div></div><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-5\" type=\"checkbox\" ><label for=\"sk-estimator-id-5\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">num</label><div class=\"sk-toggleable__content\"><pre>['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-6\" type=\"checkbox\" ><label for=\"sk-estimator-id-6\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">StandardScaler</label><div class=\"sk-toggleable__content\"><pre>StandardScaler()</pre></div></div></div></div></div></div></div></div></div></div><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-7\" type=\"checkbox\" ><label for=\"sk-estimator-id-7\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">KNeighborsRegressor</label><div class=\"sk-toggleable__content\"><pre>KNeighborsRegressor(n_neighbors=1)</pre></div></div></div></div></div></div></div>" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 24 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"from sklearn.metrics import median_absolute_error\n", | |
"\n", | |
"print(\"train error: %0.3f, test error: %0.3f\" %\n", | |
" (median_absolute_error(y_train, knn.predict(X_train)),\n", | |
" median_absolute_error(y_test, knn.predict(X_test))))" | |
], | |
"metadata": { | |
"id": "CmbjfLmABb1F", | |
"outputId": "2845d982-e2a2-4d3e-e70f-5ff3364b8cb3", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
} | |
}, | |
"execution_count": 25, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"train error: 0.000, test error: 0.300\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"def scatter_predictions(y_pred, y_true):\n", | |
" plt.figure(figsize=(6, 6))\n", | |
" plt.xlabel('true target')\n", | |
" plt.ylabel('prediction')\n", | |
" plt.scatter(y_true, y_pred, color=\"C0\")\n", | |
" plt.plot(y_true,y_true, color=\"C1\")\n", | |
" \n", | |
"scatter_predictions(knn.predict(X_test), y_test)" | |
], | |
"metadata": { | |
"id": "_qVERwk2BsR-", | |
"outputId": "a627b849-95e0-40e8-f07c-7737d1a1e628", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 545 | |
} | |
}, | |
"execution_count": 26, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 600x600 with 1 Axes>" | |
], | |
"image/png": "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ifeGG25oHBcUFHhfffVV72effebdtGmT9+KLL/ba7Xbv1q1bTTyFiHbDDTd4V69e7a2oqPC+//773htuuMFrs9m8//rXv7xeb9N9/+abb3q7dOniveuuu7wffPCBNz8/39u1a1fvli1bTD2FiNbe/c/PfucLvDqD34HQOtL+t+p3gLdjIKl+sSZJGjdunN/2Rx55RJdddpkkaceOHYqL8x08++677zR79mxVVlaqR48eGjFihNatW8c5DEGoqqrSzJkz5XQ65XA4NGzYML366quaOHGipKb7fvTo0XriiSd000036cYbb9SgQYP03HPPtXoiMVrW3v3Pz37o8TtgVmf9Dti8Xq/X6rAAAABHwjkhAADACEoIAAAwghICAACMoIQAAAAjKCEAAMAISggAADCCEgIAAIyghAAAACMoIQAAwAhKCBDjxo0bp/nz5xvN0L9/f91zzz1GMwQKx0xAtKGEADgir9erQ4cOmY5xRAcOHDAdAUA7UEKAGHbZZZdp9erVWrp0qWw2m2w2m7Zt26Y33nhDNptNr7zyikaMGKGEhAStXbtWl112maZOner3GPPnz/e78aHH41FhYaHS09N11FFH6Yc//KGefvrpFjOMGzdO27dv1zXXXNOYQZK+/fZbTZs2TX369FH37t01dOhQ/f3vf2/ytfPmzdP8+fN13HHHadKkSZKkF154QYMGDZLdbtePf/xjPfroo7LZbNq9e3fj165du1ZjxozRUUcdpbS0NF111VXat29fq5kAWIsSAsSwpUuXKicnR7Nnz5bT6ZTT6VRaWlrj52+44QYtXrxYH3zwgYYNG9amxywsLNRjjz2m+++/X1u3btU111yjGTNmaPXq1c3Of+aZZ9S3b18tXLiwMYMk1dbWasSIEXrppZdUVlamX/7yl7rkkku0YcMGv69/9NFH1a1bN7355pu6//77VVFRoQsvvFBTp07Ve++9pzlz5uh3v/ud39d89tlnmjx5si644AK9//77+sc//qG1a9dq3rx5rWYCYK0upgMAMMfhcKhbt27q3r27UlJSmnx+4cKFjbezb4u6ujrdcccd+t///V/l5ORIkk466SStXbtWy5Yt05lnntnka3r27Kn4+HglJib6ZejTp4+uu+66xvGVV16pV199VU8++aSys7Mbtw8aNEh33nln4/iGG27Q4MGDtWTJEknS4MGDVVZWpttvv71xTmFhoaZPn954LsygQYN077336swzz1RRUVGLmQBYixICoEUjR45s1/xPP/1U+/fvb1JcDhw4oOHDh7frsdxut+644w49+eST+vLLL3XgwAHV1dWpe/fufvNGjBjhN/7oo4902mmn+W07vLRI0nvvvaf3339fjz/+eOM2r9crj8ejiooKDRkypF1ZAQSHEgKgRUcffbTfOC4uTl6v12/bwYMHG/+8d+9eSdJLL72kPn36+M1LSEho19+9ZMkSLV26VPfcc4+GDh2qo48+WvPnz29y8mlgxrbYu3ev5syZo6uuuqrJ50488cR2Px6A4FBCgBjXrVs3ud3uNs09/vjjVVZW5rdt8+bN6tq1qyQpIyNDCQkJ2rFjR7NvvbQnw5tvvqnzzz9fM2bMkFR/wuvHH3+sjIyMVh9r8ODBevnll/22bdy40W+clZWl8vJyDRw4sF2ZAFiLE1OBGNe/f3+9/fbb2rZtm7755ht5PJ4W55511ll655139Nhjj+mTTz5Rfn6+XylJTEzUddddp2uuuUaPPvqoPvvsM5WWlupPf/qTHn300VYzrFmzRl9++aW++eYbSfXnaaxatUrr1q3TBx98oDlz5mjXrl1HfD5z5szRhx9+qOuvv14ff/yxnnzySS1fvlySGq9yuf7667Vu3TrNmzdPmzdv1ieffKLnn3++8cTUljIBsBYlBIhx1113neLj45WRkaHjjz9eO3bsaHHupEmTdPPNN+u3v/2tTjvtNO3Zs0czZ870m7No0SLdfPPNKiws1JAhQzR58mS99NJLSk9Pb/FxFy5cqG3btmnAgAE6/vjjJUk33XSTsrKyNGnSJI0bN04pKSlNLg9uTnp6up5++mk988wzGjZsmIqKihqvjml4S2jYsGFavXq1Pv74Y40ZM0bDhw/XLbfcohNOOKHVTACsZfMGvsELAFHm9ttv1/3336+dO3eajgLgMJwTAiDq/OUvf9Fpp52mXr166c0339SSJUv83moBEB4oIQCizieffKLbbrtN1dXVOvHEE3XttddqwYIFpmMBCMDbMQAAwAhOTAUAAEZQQgAAgBGUEAAAYAQlBAAAGEEJAQAARlBCAACAEZQQAABgBCUEAAAY8f8TKFsQthraggAAAABJRU5ErkJggg==\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"from sklearn.inspection import permutation_importance\n", | |
"\n", | |
"def boxplot_pi(model, X_test, y_test):\n", | |
" result = permutation_importance(model, X_test, y_test, n_repeats=10,\n", | |
" random_state=42, n_jobs=-1)\n", | |
" sorted_idx = result.importances_mean.argsort()\n", | |
"\n", | |
" fig, ax = plt.subplots(figsize=(8,6))\n", | |
" ax.boxplot(result.importances[sorted_idx].T,\n", | |
" vert=False, labels=X_test.columns[sorted_idx])\n", | |
" ax.set_title(\"Permutation Importances (test set)\")\n", | |
" fig.tight_layout()\n", | |
" plt.show()\n", | |
"\n", | |
"boxplot_pi(knn, X_test, y_test)" | |
], | |
"metadata": { | |
"id": "0eCWxLhCEMuj", | |
"outputId": "46a8ac69-85c1-4f71-e7de-d83cb3da3cb1", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 607 | |
} | |
}, | |
"execution_count": 27, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 800x600 with 1 Axes>" | |
], | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAJOCAYAAAAqFJGJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABQ40lEQVR4nO3deVwVZf//8fcBZJPNXUkURQQsU8FccyktLPPOvMsyzSW3vmrL7ZKZueeSS2ZWtlhqapn1TeuXueRCppWaqJmCO1IumRuguML8/vDLuT2CClzCAXk9Hw8fcuZcM9dnZs45zPtcM4PNsixLAAAAAGDAxdkFAAAAACj8CBYAAAAAjBEsAAAAABgjWAAAAAAwRrAAAAAAYIxgAQAAAMAYwQIAAACAMYIFAAAAAGMECwAAAADGCBYAgCwlJCTIZrNp9uzZzi4FhUifPn30wAMPOLuMAuH9999XpUqVdOHCBWeXAuQLggWAImP27Nmy2Wz2f56enqpevbr69eunv//+29nl5crOnTs1cuRIJSQk5HoZn332md56661bVtOt0LVrV/n4+Di7jFxLTU3VyJEjFRMT4+xS8tWBAwc0c+ZMvfrqq/Zphw8f1siRI7V169Y87duZr+Nx48Zp8eLFmaZ37dpVFy9e1AcffJD/RQFOQLAAUOSMHj1ac+fO1TvvvKNGjRppxowZatiwoVJTU51dWo7t3LlTo0aNypNgUblyZZ07d07PPPNM7gssolJTUzVq1KgiFyymTZumKlWq6L777rNPO3z4sEaNGlUkg4Wnp6e6dOmiN998U5Zl5X9hQD4jWAAoch566CF16tRJPXr00OzZs/XSSy/pwIED+uabb4yXXRjDyfVkjOq4uro6u5RCIz09XefPn3d2GU5x6dIlzZ8/X+3bt3d2KQVK+/btdfDgQa1Zs8bZpQB5jmABoMi7//77JV05jSPDvHnzFBUVJS8vL5UsWVJPPfWU/vzzT4f5mjdvrrvuukubN29W06ZN5e3trVdffdV+bcLkyZP17rvvqmrVqvL29taDDz6oP//8U5ZlacyYMapYsaK8vLz06KOP6uTJkw7LttlsGjlyZKZag4OD1bVrV0lXTu164oknJEn33Xef/RSvjG/Jv/nmG7Vu3VqBgYHy8PBQSEiIxowZo7S0NId1WLJkiQ4ePGifPzg4WNL1r7FYvXq1mjRpouLFiysgIECPPvqo4uLiHNqMHDlSNptNe/fuVdeuXRUQECB/f39169Yt1+ErODhYjzzyiGJiYlS3bl15eXmpZs2a9vX9+uuvVbNmTXl6eioqKkpbtmxxmD/j9Kr9+/crOjpaxYsXV2BgoEaPHp3p2+SzZ89qwIABCgoKkoeHh8LCwjR58uRM7Ww2m/r166f58+frzjvvlIeHh95//32VKVNGkjRq1Cj7ds3Yn7///ru6du2qqlWrytPTU+XLl9ezzz6rEydOGG3DefPmqV69evL29laJEiXUtGlTrVixwqHN0qVL7fvO19dXrVu31o4dOxzaHD16VN26dVPFihXl4eGhChUq6NFHH73pqNi6det0/PhxtWzZ0j4tJiZG99xzjySpW7du9m1x9Wtqw4YNatWqlfz9/eXt7a1mzZpp/fr1DstOSUnRSy+9pODgYHl4eKhs2bJ64IEHFBsbK+nGr+Pr+eGHH3TvvfcqICBAPj4+CgsLcziFS5IuXLigESNGqFq1avLw8FBQUJBefvllh2smbDabzp49qzlz5tj7zniPSlJUVJRKlix5S764AAo6N2cXAADOtm/fPklSqVKlJEljx47VsGHD1L59e/Xo0UP//POPpk+frqZNm2rLli0KCAiwz3vixAk99NBDeuqpp9SpUyeVK1fO/tz8+fN18eJFPf/88zp58qQmTpyo9u3b6/7771dMTIwGDx6svXv3avr06Ro4cKA++eSTHNXdtGlTvfDCC3r77bf16quvKiIiQpLs/8+ePVs+Pj7q37+/fHx8tHr1ag0fPlzJycmaNGmSJGno0KFKSkrSX3/9palTp0rSDa9tWLlypR566CFVrVpVI0eO1Llz5zR9+nQ1btxYsbGxmQ7m2rdvrypVqmj8+PGKjY3VzJkzVbZsWb3xxhs5WtcMe/fu1dNPP63evXurU6dOmjx5stq0aaP3339fr776qvr06SNJGj9+vNq3b69du3bJxeW/36GlpaWpVatWatCggSZOnKhly5ZpxIgRunz5skaPHi1JsixL//rXv7RmzRp1795dtWvX1vLlyzVo0CAdOnTIvp0yrF69WgsXLlS/fv1UunRp1apVSzNmzND//M//6LHHHlO7du0kSXfffbekKwe0+/fvV7du3VS+fHnt2LFDH374oXbs2KFff/1VNpstx9tw1KhRGjlypBo1aqTR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XPo2bdrovvvu09ChQ5WQkKBatWppxYoV+uabb/TSSy9lupVoVry8vFSjRg198cUXql69ukqWLKm77rpLd911l5o2baqJEyfq0qVLuuOOO7RixYosR5Kyq1q1aho6dKjGjBmjJk2aqF27dvLw8NCmTZsUGBio8ePHy8/PTzNmzNAzzzyjyMhIPfXUUypTpowSExO1ZMkSNW7cWO+88452796tFi1aqH379qpRo4bc3Ny0aNEi/f3333rqqaduWMe9996rUqVKaeXKlQ7XcoSEhCggIEDvv/++fH19Vbx4cdWvX19VqlTRzJkz9dBDD+nOO+9Ut27ddMcdd+jQoUNas2aN/Pz89P/+3/9TSkqKKlasqMcff1y1atWSj4+PVq5cqU2bNmnKlCn2fnLyOh49erTWrl2r1q1bq3Llyjp27Jjee+89VaxYUffee68k6ZlnntHChQv13HPPac2aNWrcuLHS0tIUHx+vhQsXavny5fZTKqOiorRy5Uq9+eabCgwMVJUqVew3ENi8ebNOnjypRx99NNf7GCg08v0+VADgJBm3m920adNN2/7v//6vde+991rFixe3ihcvboWHh1t9+/a1du3aZW/TrFkz684778w0b8ZtWq+9ZeeaNWssSdaXX35507rS0tKswYMHW6VLl7a8vb2t6Ohoa+/evZluN2tZlvXRRx9ZVatWtVxdXR1usbp+/XqrQYMGlpeXlxUYGGi9/PLL9tuzXn0b1jNnzlhPP/20FRAQYEmy37Izq9vNWpZlrVy50mrcuLHl5eVl+fn5WW3atLF27tzp0CbjVqnX3s4zY10PHDiQabtd7Xq3m23dunWmtpIy3Yo0q32Qscx9+/ZZDz74oOXt7W2VK1fOGjFiRKbbtKakpFj/+c9/rMDAQKtYsWJWaGioNWnSJIfbol6v7ww///yzFRUVZbm7uzvcevavv/6yHnvsMSsgIMDy9/e3nnjiCevw4cOZbk+b0234ySefWHXq1LE8PDysEiVKWM2aNbN++OEHhzZr1qyxoqOjLX9/f8vT09MKCQmxunbtav3222+WZVnW8ePHrb59+1rh4eFW8eLFLX9/f6t+/frWwoULs1zHa73wwgtWtWrVMk3/5ptvrBo1alhubm6ZXlNbtmyx2rVrZ5UqVcry8PCwKleubLVv395atWqVZVmWdeHCBWvQoEFWrVq1LF9f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KArvjWxfvL1hwwaNGzdOv/32mxITE/X111/rn3/+sSfPUaNGafz48Xr77be1e/dubd++XbNmzdKbb77psJx3331XixYtUnx8vPr27atTp07p2WeflSSFhobqt99+0/Lly7V7924NGzYs0wF8Tg0fPlyffvqpRo0apR07diguLk4LFizQa6+9lu1l9O7dW/Hx8Ro8eLB2796thQsXavbs2ZKuhC3pSho/c+aMVq1apePHj9/w1KKbiY6O1o4dOxxGLfr166fk5GQ99dRT+u2337Rnzx7NnTv3hheBZ0dqaqo2b96sBx980Gg5AAAAKNqyHSz8/Py0du1aPfzww6pevbpee+01TZkyRQ899JAkqUePHpo5c6ZmzZqlmjVrqlmzZpo9e7aqVKnisJwJEyZowoQJqlWrltatW6dvv/1WpUuXlnTlAL5du3Z68sknVb9+fZ04ccJh9CI3oqOj9d1332nFihW655571KBBA02dOtV+AXp2VKlSRV999ZW+/vpr3X333ZoxY4b9rlAZ3+Q3atRIzz33nJ588kmVKVNGEydOzHXNNWvWVGRkpMPdsEqVKqXVq1frzJkzatasmaKiovTRRx8Zj1588803qlSpkpo0aWK0HAAAABRtNivjfrF5LCEhQVWqVNGWLVuMLsYuKMaOHav3339ff/75Z54sf8mSJRo0aJD++OMPhwuyb7UGDRrohRde0NNPP53teZKTk+Xv76+kpCT5+fnlWW0Abi+xsbGKiorS5s2bi/TpELcr9u9VDm+VPmwm9fpRCqzt7Gqcrqi/Ngr7+ufkuC9H11gUZe+9957uuecelSpVSuvXr9ekSZPs14bkhdatW2vPnj06dOhQnl0offz4cbVr185+m10AAAAgtwgW2bRnzx69/vrrOnnypCpVqqQBAwZoyJAhedrnSy+9lKfLL126tF5++eU87QMAAABFQ74Fi+DgYOXTWVd5YurUqZo6daqzywAAAAAKpLw7eR8AAABAkUGwAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAA+SI8PFybN29WeHi4s0sBgHxTlD77+MvbAIB84e3trcjISGeXAQD5qih99jFiAQAAAMAYwQIAAACAMYIFAAAAAGMECwAAAADGCBYAAAAAjBEsAAAAABgjWAAAAAAwRrAAAAAAYIxgAQAAAMAYwQIAAACAMTdnFwAAAAq/1NRUSVJsbKyTK3E+r9O7FSEpLj5e546mO7scp4uLi3N2CcgnBAsAAGAsPj5ektSzZ08nV+J8dcq7KLa3jzp27KgtBAs7X19fZ5eAPEawAAAAxtq2bStJCg8Pl7e3t3OLcTLb5fOKO5Oojx+uJMvN09nlFAi+vr4KDQ11dhnIYzbLsixnF4HCJTk5Wf7+/kpKSpKfn5+zywEAAEAeyclxHxdvAwAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxN2cXAABAhj179iglJcXZZdy2bJfPy/NMos77VJLl5unsclAI+Pr6KjQ01NlloJAgWAAACoQ9e/aoevXqzi7jtlanvItie/so8oMz2nI03dnloJDYvXs34QLZQrAAABQIGSMV8+bNU0REhJOruT15nd4tre2t+fPn61wAIQ43FhcXp06dOjGKiGwjWAAACpSIiAhFRkY6u4zb02EXaa0UER4uBdZ2djUAbjNcvA0AAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAMJSamqrY2FilpqY6uxQAwG2soP++IVgAgKH4+HhFRUUpPj7e2aUAAG5jBf33DcECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMGiEEhISJDNZtPWrVudXQoAAACQJYIFAAAAAGMECwAAAADGCBYFSHp6uiZOnKhq1arJw8NDlSpV0tixYzO1S0tLU/fu3VWlShV5eXkpLCxM06ZNc2gTExOjevXqqXjx4goICFDjxo118OBBSdK2bdt03333ydfXV35+foqKitJvv/2WL+sIAACA25ObswvAfw0ZMkQfffSRpk6dqnvvvVdHjhxRfHx8pnbp6emqWLGivvzyS5UqVUo///yzevXqpQoVKqh9+/a6fPmy2rZtq549e+rzzz/XxYsXtXHjRtlsNklSx44dVadOHc2YMUOurq7aunWrihUrlt+rCwAAgNsIwaKASElJ0bRp0/TOO++oS5cukqSQkBDde++9SkhIcGhbrFgxjRo1yv64SpUq+uWXX7Rw4UK1b99eycnJSkpK0iOPPKKQkBBJUkREhL19YmKiBg0apPDwcElSaGjoDWu7cOGCLly4YH+cnJxstK7A7ebcuXOSpLi4OCdXUrhlbL+M7QnAufhsK3gK+uckwaKAiIuL04ULF9SiRYtstX/33Xf1ySefKDExUefOndPFixdVu3ZtSVLJkiXVtWtXRUdH64EHHlDLli3Vvn17VahQQZLUv39/9ejRQ3PnzlXLli31xBNP2ANIVsaPH+8QZAA4ygj/nTp1cm4ht4mEhAQ1btzY2WUARR6fbQVXQf2cJFgUEF5eXtluu2DBAg0cOFBTpkxRw4YN5evrq0mTJmnDhg32NrNmzdILL7ygZcuW6YsvvtBrr72mH374QQ0aNNDIkSP19NNPa8mSJVq6dKlGjBihBQsW6LHHHsuyvyFDhqh///72x8nJyQoKCsr9ygK3meDgYEnSvHnzHEYHkTNxcXHq1KmTfXsCcC4+2wqegv45SbAoIEJDQ+Xl5aVVq1apR48eN2y7fv16NWrUSH369LFP27dvX6Z2derUUZ06dTRkyBA1bNhQn332mRo0aCBJql69uqpXr67//Oc/6tChg2bNmnXdYOHh4SEPDw+DtQNubxlfDERERCgyMtLJ1RR+OfmiBUDe4bOt4Cqon5PcFaqA8PT01ODBg/Xyyy/r008/1b59+/Trr7/q448/ztQ2NDRUv/32m5YvX67du3dr2LBh2rRpk/35AwcOaMiQIfrll1908OBBrVixQnv27FFERITOnTunfv36KSYmRgcPHtT69eu1adMmvokAAACAEUYsCpBhw4bJzc1Nw4cP1+HDh1WhQgU999xzmdr17t1bW7Zs0ZNPPimbzaYOHTqoT58+Wrp0qSTJ29tb8fHxmjNnjk6cOKEKFSqob9++6t27ty5fvqwTJ06oc+fO+vvvv1W6dGm1a9eOaygAAABghGBRgLi4uGjo0KEaOnRopucsy7L/7OHhoVmzZmnWrFkObcaPHy9JKleunBYtWpRlH+7u7vr8889vYdUAAAAAp0IBAAAAuAUIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAYwQLAAAAAMYIFgAAAACMESwAwFB4eLg2b96s8PBwZ5cCALiNFfTfN27OLgAACjtvb29FRkY6uwwAwG2uoP++YcQCAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjbs4uAAAASUpNTZUkxcbGOrmS25fX6d2KkBQXH69zR9OdXQ4KuLi4OGeXgEKGYAEAKBDi4+MlST179nRyJbevOuVdFNvbRx07dtQWggWyydfX19kloJAgWAAACoS2bdtKksLDw+Xt7e3cYm5TtsvnFXcmUR8/XEmWm6ezy0Eh4Ovrq9DQUGeXgULCZlmW5ewiULgkJyfL399fSUlJ8vPzc3Y5AAAAyCM5Oe7j4m0AAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMObm7AIAFCx79uxRSkqKs8sArst2+bw8zyTqvE8lWW6ezi4H+czX11ehoaHOLgNAFggWAOz27Nmj6tWrO7sM4IbqlHdRbG8fRX5wRluOpju7HDjB7t27CRdAAUSwAGCXMVIxb948RUREOLkaIGtep3dLa3tr/vz5OhdAEC5K4uLi1KlTJ0ZVgQKKYAEgk4iICEVGRjq7DCBrh12ktVJEeLgUWNvZ1QAA/g8XbwMAAAAwRrAAAAAAYIxgAQAAAMAYwQIAAACAMYIFAAAAAGMECwAAAADGCBYAAAAAjBEsAAAAABgjWAAAAAAwRrAAAAAAYIxgAQAAAMAYwQK4RmpqqmJjY5WamursUgAAQCFS1I8hCBbANeLj4xUVFaX4+HhnlwIAAAqRon4MQbAAAAAAYIxgAQAAAMAYwQIAAACAMYIFAAAAAGMECwAAAADGCBYAAAAAjBEsAAAAABgjWAAAAAAwVuiCRUxMjGw2m06fPn3dNjabTYsXL863mm5k5MiRql27dq7mfeaZZzRu3LhbW9A1nnrqKU2ZMiVP+wAAAMDtz2nBYvbs2QoICHBW93niVgaabdu26fvvv9cLL7xwS5Z3Pa+99prGjh2rpKSkPO0HAAAAt7dCN2JRVEyfPl1PPPGEfHx88rSfu+66SyEhIZo3b16e9gMAAIDbW66CRfPmzdWvXz/169dP/v7+Kl26tIYNGybLsuxtLly4oIEDB+qOO+5Q8eLFVb9+fcXExEi6cjpTt27dlJSUJJvNJpvNppEjR0qS5s6dq7p168rX11fly5fX008/rWPHjhmt5J9//qn27dsrICBAJUuW1KOPPqqEhAT78127dlXbtm01efJkVahQQaVKlVLfvn116dIle5sjR46odevW8vLyUpUqVfTZZ58pODhYb731liQpODhYkvTYY4/JZrPZH2eYO3eugoOD5e/vr6eeekopKSnXrTctLU1fffWV2rRp4zD9woULGjx4sIKCguTh4aFq1arp448/lvTfU8SWL1+uOnXqyMvLS/fff7+OHTumpUuXKiIiQn5+fnr66aeVmprqsNw2bdpowYIFOdyqAAAAwH/lesRizpw5cnNz08aNGzVt2jS9+eabmjlzpv35fv366ZdfftGCBQv0+++/64knnlCrVq20Z88eNWrUSG+99Zb8/Px05MgRHTlyRAMHDpQkXbp0SWPGjNG2bdu0ePFiJSQkqGvXrrlewUuXLik6Olq+vr766aeftH79evn4+KhVq1a6ePGivd2aNWu0b98+rVmzRnPmzNHs2bM1e/Zs+/OdO3fW4cOHFRMTo//93//Vhx9+6BB4Nm3aJEmaNWuWjhw5Yn8sSfv27dPixYv13Xff6bvvvtOPP/6oCRMmXLfm33//XUlJSapbt67D9M6dO+vzzz/X22+/rbi4OH3wwQeZRjRGjhypd955Rz///LM9UL311lv67LPPtGTJEq1YsULTp093mKdevXrauHGjLly4kP0NCwAAAFzFLbczBgUFaerUqbLZbAoLC9P27ds1depU9ezZU4mJiZo1a5YSExMVGBgoSRo4cKCWLVumWbNmady4cfL395fNZlP58uUdlvvss8/af65atarefvtt3XPPPTpz5kyuTgv64osvlJ6erpkzZ8pms0m6cvAfEBCgmJgYPfjgg5KkEiVK6J133pGrq6vCw8PVunVrrVq1Sj179lR8fLxWrlypTZs22Q/2Z86cqdDQUHs/ZcqUkSQFBARkWqf09HTNnj1bvr6+kq5clL1q1SqNHTs2y5oPHjwoV1dXlS1b1j5t9+7dWrhwoX744Qe1bNnSvn2u9frrr6tx48aSpO7du2vIkCHat2+fve3jjz+uNWvWaPDgwfZ5AgMDdfHiRR09elSVK1fOtMwLFy44hI7k5OQs675dnDt3TpIUFxfn5EryX8Y6Z2wDAChIivLnMwqHov57NNfBokGDBvYDdUlq2LChpkyZorS0NG3fvl1paWmqXr26wzwXLlxQqVKlbrjczZs3a+TIkdq2bZtOnTql9PR0SVJiYqJq1KiR4zq3bdumvXv32g/qM5w/f1779u2zP77zzjvl6upqf1yhQgVt375dkrRr1y65ubkpMjLS/ny1atVUokSJbNUQHBzs0H+FChVueHrXuXPn5OHh4bB9t27dKldXVzVr1uyGfd199932n8uVKydvb2+HAFKuXDlt3LjRYR4vLy9JynSKVIbx48dr1KhRN+z3dpJxmlynTp2cW4gTJSQk2AMqABQUfD6jsCiqv0dzHSxu5MyZM3J1ddXmzZsdDtYl3XDU4ezZs4qOjlZ0dLTmz5+vMmXKKDExUdHR0Q6nLeW0lqioKM2fPz/TcxmjDJJUrFgxh+dsNps91JjK6bJLly6t1NRUXbx4Ue7u7pL+e/Cfk75sNlu2+j558qQkx+1xtSFDhqh///72x8nJyQoKCspWPYVRxvUx8+bNU0REhHOLyWdxcXHq1KlTpmuEAKAgKMqfzygcivrv0VwHiw0bNjg8/vXXXxUaGipXV1fVqVNHaWlpOnbsmJo0aZLl/O7u7kpLS3OYFh8frxMnTmjChAn2A9fffvsttyVKkiIjI/XFF1+obNmy8vPzy9UywsLCdPnyZW3ZskVRUVGSpL179+rUqVMO7YoVK5ZpnXIj4+9e7Ny50/5zzZo1lZ6erh9//NF+KtSt8scff6hixYoqXbp0ls97eHjIw8PjlvZZkGWEuIiICIdRqqIku0EWAPITn88oLIrq79FcX7ydmJio/v37a9euXfr88881ffp0vfjii5Kk6tWrq2PHjurcubO+/vprHThwQBs3btT48eO1ZMkSSVe+dThz5oxWrVql48ePKzU1VZUqVZK7u7umT5+u/fv369tvv9WYMWOMVrBjx44qXbq0Hn30Uf300086cOCAYmJi9MILL+ivv/7K1jLCw8PVsmVL9erVSxs3btSWLVvUq1cveXl5OZyuFBwcrFWrVuno0aOZQkdOlClTRpGRkVq3bp3Dsrt06aJnn31Wixcvtq/HwoULc91Php9++sl+rQkAAACQG7kOFp07d9a5c+dUr1499e3bVy+++KJ69eplf37WrFnq3LmzBgwYoLCwMLVt21abNm1SpUqVJEmNGjXSc889pyeffFJlypTRxIkTVaZMGc2ePVtffvmlatSooQkTJmjy5MlGK+jt7a21a9eqUqVKateunSIiItS9e3edP38+RyMYn376qcqVK6emTZvqscceU8+ePeXr6ytPT097mylTpuiHH35QUFCQ6tSpY1R3jx49Mp2+NWPGDD3++OPq06ePwsPD1bNnT509e9aon/Pnz2vx4sXq2bOn0XIAAABQtNmsq//4RDY1b95ctWvXtv8Nh6Lor7/+UlBQkFauXKkWLVrc8uWfO3dOYWFh+uKLL9SwYcNbvvwMM2bM0KJFi7RixYpsz5OcnCx/f38lJSXl+vSygiw2NlZRUVHavHlzkRtqL8rrjkLk8Fbpw2ZSrx+lwNrOrgb5iM8oFHS342s0J8d9eXLx9u1o9erVOnPmjGrWrKkjR47o5ZdfVnBwsJo2bZon/Xl5eenTTz/V8ePH82T5GYoVK5bp71oAAAAAOUWwyKZLly7p1Vdf1f79++Xr66tGjRpp/vz5me66dCs1b948z5adoUePHnneBwAAAG5/uQoWMTExt7iMgi/jNrgAAAAAMsv1xdsAAAAAkIFgAQAAAMAYwQIAAACAMYIFAAAAAGMECwAAAADGCBYAAAAAjBEsAAAAABgjWADXCA8P1+bNmxUeHu7sUgAAQCFS1I8h+MvbwDW8vb0VGRnp7DIAAEAhU9SPIRixAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAmJuzCwBQcKSmpkqSYmNjnVwJcH1ep3crQlJcfLzOHU13djnIR3Fxcc4uAcANECwA2MXHx0uSevbs6eRKgOurU95Fsb191LFjR20hWBRJvr6+zi4BQBYIFgDs2rZtK0kKDw+Xt7e3c4sBrsN2+bziziTq44cryXLzdHY5yGe+vr4KDQ11dhkAsmCzLMtydhEoXJKTk+Xv76+kpCT5+fk5uxwAAADkkZwc93HxNgAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYc3N2AQCQXXv27FFKSoqzyyhwbJfPy/NMos77VJLl5um0Onx9fRUaGuq0/gEAzkWwAFAo7NmzR9WrV3d2GQVSnfIuiu3to8gPzmjL0XSn1rJ7927CBQAUUQQLAIVCxkjFvHnzFBER4eRqChav07ultb01f/58nQtwTviKi4tTp06dGFECgCKMYAGgUImIiFBkZKSzyyhYDrtIa6WI8HApsLazqwEAFFFcvA0AAADAGMECAAAAgDGCBQAAAABjBAsAAAAAxggWAAAAAIwRLAAAAAAYI1gAAAAAMEawAAAAAGCMYAEAAADAGMECAAAAgDGCBQAAAABjBAsUCqmpqYqNjVVqaqqzSwGAHOHzC0BRQbBAoRAfH6+oqCjFx8c7uxQAyBE+vwAUFQQLAAAAAMYIFgAAAACMESwAAAAAGCNYAAAAADBGsAAAAABgjGABAAAAwBjBAgAAAIAxggUAAAAAY7dNsIiJiZHNZtPp06dvyfK6du2qtm3b3rBN8+bN9dJLL92wzezZsxUQEJCrGoYNG6ZevXrlat7seuWVV/T888/naR8AAAC4/RW4YGFyIH4rTZs2TbNnz87RPMHBwXrrrbduSf9Hjx7VtGnTNHTo0FuyvOsZOHCg5syZo/379+dpPwAAALi9FbhgUVD4+/s7NeDMnDlTjRo1UuXKlfO0n9KlSys6OlozZszI034AAABwe7ulwaJ58+bq16+f+vXrJ39/f5UuXVrDhg2TZVn2NhcuXNDAgQN1xx13qHjx4qpfv75iYmIkXTmdqVu3bkpKSpLNZpPNZtPIkSMlSXPnzlXdunXl6+ur8uXL6+mnn9axY8eyXdvAgQP1yCOP2B+/9dZbstlsWrZsmX1atWrVNHPmTEmZT4U6e/asOnfuLB8fH1WoUEFTpkzJtO4HDx7Uf/7zH3vtV1u+fLkiIiLk4+OjVq1a6ciRIzesd8GCBWrTpo3DtPT0dE2cOFHVqlWTh4eHKlWqpLFjx0qSEhISZLPZtHDhQjVp0kReXl665557tHv3bm3atEl169aVj4+PHnroIf3zzz8Oy23Tpo0WLFhwky0IAAAAXN8tH7GYM2eO3NzctHHjRk2bNk1vvvmm/WBdkvr166dffvlFCxYs0O+//64nnnhCrVq10p49e9SoUSO99dZb8vPz05EjR3TkyBENHDhQknTp0iWNGTNG27Zt0+LFi5WQkKCuXbtmu65mzZpp3bp1SktLkyT9+OOPKl26tD3UHDp0SPv27VPz5s2znH/QoEH68ccf9c0332jFihWKiYlRbGys/fmvv/5aFStW1OjRo+21Z0hNTdXkyZM1d+5crV27VomJifb1ysrJkye1c+dO1a1b12H6kCFDNGHCBA0bNkw7d+7UZ599pnLlyjm0GTFihF577TXFxsbKzc1NTz/9tF5++WVNmzZNP/30k/bu3avhw4c7zFOvXj399ddfSkhIuNlmBAAAALLkdqsXGBQUpKlTp8pmsyksLEzbt2/X1KlT1bNnTyUmJmrWrFlKTExUYGCgpCsjCcuWLdOsWbM0btw4+fv7y2azqXz58g7LffbZZ+0/V61aVW+//bbuuecenTlzRj4+Pjetq0mTJkpJSdGWLVsUFRWltWvXatCgQVq8eLGkK6Mld9xxh6pVq5Zp3jNnzujjjz/WvHnz1KJFC0lXAlTFihXtbUqWLClXV1f7iMrVLl26pPfff18hISGSroSr0aNHX7fWxMREWZZl30aSlJKSomnTpumdd95Rly5dJEkhISG69957HeYdOHCgoqOjJUkvvviiOnTooFWrVqlx48aSpO7du2e6diSjn4MHDyo4ODhTPRcuXNCFCxfsj5OTk69be145d+6cJCkuLi7f+0bBkLHvM14LKFh4j14fr10ARcUtDxYNGjRwOA2oYcOGmjJlitLS0rR9+3alpaWpevXqDvNcuHBBpUqVuuFyN2/erJEjR2rbtm06deqU0tPTJV05CK9Ro8ZN6woICFCtWrUUExMjd3d3ubu7q1evXhoxYoTOnDmjH3/8Uc2aNcty3n379unixYuqX7++fVrJkiUVFhZ2034lydvb2x4qJKlChQo3PI0r45ePp6enfVpcXJwuXLhgDzbXc/fdd9t/zhjNqFmzpsO0a/v28vKSdGVkJSvjx4/XqFGjbthvXssYTenUqZNT64DzJSQk2IMyCg7eozfHaxfA7e6WB4sbOXPmjFxdXbV582a5uro6PHejUYezZ88qOjpa0dHRmj9/vsqUKaPExERFR0fr4sWL2e6/efPmiomJkYeHh5o1a6aSJUsqIiJC69at048//qgBAwbket1upFixYg6PbTabw3Un1ypdurQk6dSpUypTpoyk/x7856SvjIB37bSMUJbh5MmTkmTv61pDhgxR//797Y+Tk5MVFBSUrXpulYyRlHnz5ikiIiJf+0bBEBcXp06dOmU5qgbn4z16fbx2ARQVtzxYbNiwweHxr7/+qtDQULm6uqpOnTpKS0vTsWPH1KRJkyznd3d3t18HkSE+Pl4nTpzQhAkT7Ae0v/32W45ra9asmT755BO5ubmpVatWkq6Ejc8//1y7d+++7vUVISEhKlasmDZs2KBKlSpJunLQv3v3bodRjqxqz42QkBD5+flp586d9tGd0NBQeXl5adWqVerRo4dxH1f7448/VKxYMd15551ZPu/h4SEPD49b2mdOZQSriIgIRUZGOrUWOFd2QzbyF+/Rm+O1C+B2d8sv3k5MTFT//v21a9cuff7555o+fbpefPFFSVL16tXVsWNHde7cWV9//bUOHDigjRs3avz48VqyZImkK996nTlzRqtWrdLx48eVmpqqSpUqyd3dXdOnT9f+/fv17bffasyYMTmurWnTpkpJSdF3331nDxHNmzfX/PnzVaFChUynaGXw8fFR9+7dNWjQIK1evVp//PGHunbtKhcXx80XHBystWvX6tChQzp+/HiO68vg4uKili1bat26dfZpnp6eGjx4sF5++WV9+umn2rdvn3799Vd9/PHHue4nw08//WS/kxQAAACQG7c8WHTu3Fnnzp1TvXr11LdvX7344osOfz161qxZ6ty5swYMGKCwsDC1bdtWmzZtso8ENGrUSM8995yefPJJlSlTRhMnTlSZMmU0e/Zsffnll6pRo4YmTJigyZMn57i2EiVKqGbNmipTpozCw8MlXQkb6enp172+IsOkSZPUpEkTtWnTRi1bttS9996rqKgohzajR49WQkKCQkJCrntaUXb16NFD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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "dzk8LAsaNRBR" | |
}, | |
"source": [ | |
"from sklearn.linear_model import LinearRegression\n", | |
"\n", | |
"lm = Pipeline([\n", | |
" ('preprocess', preprocessing),\n", | |
" ('regressor', LinearRegression())\n", | |
"])" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"scrolled": true, | |
"id": "UMRyr788NRBc", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 192 | |
}, | |
"outputId": "84b114e3-9036-49b8-b048-4a5fecd19e63" | |
}, | |
"source": [ | |
"from sklearn import set_config\n", | |
"\n", | |
"set_config(display='diagram')\n", | |
"\n", | |
"lm.fit(X_train, y_train)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor', LinearRegression())])" | |
], | |
"text/html": [ | |
"<style>#sk-8c1da84b-8067-4061-b970-08641a70323b {color: black;background-color: white;}#sk-8c1da84b-8067-4061-b970-08641a70323b pre{padding: 0;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-toggleable {background-color: white;}#sk-8c1da84b-8067-4061-b970-08641a70323b label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-8c1da84b-8067-4061-b970-08641a70323b label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-8c1da84b-8067-4061-b970-08641a70323b label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-8c1da84b-8067-4061-b970-08641a70323b input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-8c1da84b-8067-4061-b970-08641a70323b input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-8c1da84b-8067-4061-b970-08641a70323b input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-estimator:hover {background-color: #d4ebff;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-item {z-index: 1;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel-item {display: flex;flex-direction: column;position: relative;background-color: white;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-parallel-item:only-child::after {width: 0;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;position: relative;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-label label {font-family: monospace;font-weight: bold;background-color: white;display: inline-block;line-height: 1.2em;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-label-container {position: relative;z-index: 2;text-align: center;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-8c1da84b-8067-4061-b970-08641a70323b div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-8c1da84b-8067-4061-b970-08641a70323b\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor', LinearRegression())])</pre><b>Please rerun this cell to show the HTML repr or trust the notebook.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"7495ca34-529d-4781-96cc-2a92ab40161d\" type=\"checkbox\" ><label for=\"7495ca34-529d-4781-96cc-2a92ab40161d\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">Pipeline</label><div class=\"sk-toggleable__content\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor', LinearRegression())])</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"c20bda8f-679d-424c-aa0b-ad650a36f2f0\" type=\"checkbox\" ><label for=\"c20bda8f-679d-424c-aa0b-ad650a36f2f0\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">preprocess: ColumnTransformer</label><div class=\"sk-toggleable__content\"><pre>ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot', OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler', StandardScaler())]),\n", | |
" ['sepal length (cm)', 'petal length (cm)',\n", | |
" 'petal width (cm)'])])</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"810baced-6e81-495e-992d-145e70170230\" type=\"checkbox\" ><label for=\"810baced-6e81-495e-992d-145e70170230\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">cat</label><div class=\"sk-toggleable__content\"><pre>['class']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"69f16397-5f69-4a1b-a8a7-16b135988dd7\" type=\"checkbox\" ><label for=\"69f16397-5f69-4a1b-a8a7-16b135988dd7\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">OneHotEncoder</label><div class=\"sk-toggleable__content\"><pre>OneHotEncoder()</pre></div></div></div></div></div></div></div></div><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"d3597d33-b224-4cb1-b128-0fd06c652d2c\" type=\"checkbox\" ><label for=\"d3597d33-b224-4cb1-b128-0fd06c652d2c\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">num</label><div class=\"sk-toggleable__content\"><pre>['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"555dba84-138f-4416-8a2b-74645686fd93\" type=\"checkbox\" ><label for=\"555dba84-138f-4416-8a2b-74645686fd93\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">StandardScaler</label><div class=\"sk-toggleable__content\"><pre>StandardScaler()</pre></div></div></div></div></div></div></div></div></div></div><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"3703f3a4-edf6-44b0-a80b-f29fb455eedd\" type=\"checkbox\" ><label for=\"3703f3a4-edf6-44b0-a80b-f29fb455eedd\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">LinearRegression</label><div class=\"sk-toggleable__content\"><pre>LinearRegression()</pre></div></div></div></div></div></div></div>" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 37 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.partial_dependence(\n", | |
" \"sepal length (cm)\", lm.predict, X100, ice=False,\n", | |
" model_expected_value=True, feature_expected_value=True\n", | |
")" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 296 | |
}, | |
"id": "F-MSZ5XUHRbr", | |
"outputId": "6695eac2-9b73-4271-a34b-9cc95574c8dc" | |
}, | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 432x288 with 4 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"# compute the SHAP values for the linear model\n", | |
"explainer = shap.Explainer(lm.predict, X100)\n", | |
"shap_values = explainer(X_train)" | |
], | |
"metadata": { | |
"id": "yUni0poMHhXz" | |
}, | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.waterfall(shap_values[5])" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 281 | |
}, | |
"id": "2TTNLtkDH8rt", | |
"outputId": "210bb8d7-cca1-46ec-c27c-7095ca271519" | |
}, | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 576x252 with 3 Axes>" | |
], | |
"image/png": "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jo6eC+D8ml5TeS+99NLwuXPnzrDZbLOcTuf4G264YeD333//fXR09BwAI0rb/fXXX+fabLaejz32mGXBggWbk5KS5gI4VUoZsXz58iUHDhw4HBERcerNN9980rJly5b6fP5TcjNmzLg2MzOzwinvcePGPaaUEmvXrvUJISLuu+++a2fOnPlhZGTk/wF4tJKoJycnJwe7XK51pTOklPaEhISNmzZt8kVGRp535513bjh8+PCly5YtSy1tc/jw4f4mk2nspEmTvtq8efNvS5YseWvJkiW7vV7vKZMmTWo9d+7cdV6v9z0AV5QuEx0dvdvlcp1S131JVNaPSQq51QzhuOIGM4ZUcbRxdbLC/QleOMt1h3JagdzCut8Q/LKTBBwW4Iu/6r5scXEAX6JO1MIUFdWzj00zVpuC8i0A/waQCqAHgI8A/A/AjZU1llJ2BPAUgLNrG0LTtNNq27acQrPZrMLCwga3b99+zcGDB3cB2AUA27dvn5yYmAiv13u5UsoDIPO55557efLkyc8JIeJmzJgBALBarR8cOHDgJwB4991379iwYcOyoqKiywF8+tVXX/1fmW19NWbMmHVffPHFWfUJunXr1udcLld2amrq2JJZy91u91fvvffedUIIc2me7OzsB9PT0/cAwP79+9dv3779TAAoKiq6fOPGjVafz3eHz+c7BODQo48++uHmzZvvrc32U1JSblJK5QL46Pfff39ny5Yt51bRNLKgoAAFBQXHikWfz3fZmjVrnEqpK7OystaWzD7uYiSn07kpMTHxEwCYNm3auwsWLHj98OHDT3u93v0A9v/xxx8HEhISzii7jNVqzSksLKzx0tbc3Fw4HA5Oc7rS6cFxoZhdTR/K8+d6K3+ihD3YfxFN1whgT8nttPu0Ethej6vGh3YS6B8rcPge/yHTcAvgVcCprUy46pvqr40rfU2AcfYtpznN6cqn4+LiGn1bgabGglLTtN/KPNwupXwQwEop5VhN0yobKv59AFM0TTt4okJWJTw8/MNrr7223++//35HZmbmQ7GxsVkhISHPJSYm/jczM7Orz+czh4SEuO32f3rGBwUFqeLi4mNHQ3NycraUTpvN5sSoqCgUFxd3A4DbbrvtldWrV9995MiR0MLCQgHUf3T8nJycOJfLFWm32487dCGE8AFoU/rY6/Ue22/BwcH5xcXFFgA4evRo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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.beeswarm(shap_values)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 237 | |
}, | |
"id": "uy26MdaIHqVk", | |
"outputId": "028b0d3e-4492-4902-bf71-d42c16024666" | |
}, | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 576x223.2 with 2 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.bar(shap_values)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 255 | |
}, | |
"id": "OV2zeVLzIp2X", | |
"outputId": "44d810d0-4d0b-4d79-8572-61f4e1c6b96d" | |
}, | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 576x252 with 1 Axes>" | |
], | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAkYAAADuCAYAAADcDcjGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3deVxU190/8M+ZGWZlBwERBkEERR41BokiGNkEGejT9GmbpUma1aRJkydpf23SJk+aZmlN21+TPL82eZq1bZaaJs3ysLjv0cQlxrgRN1RAFBVkkWFmmJnz+2Pu6IisAgLm83695uWde84993sGbvjmnDP3CikliIiIiAhQDXcARERERCMFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIoVmuAOg4VdYWCiXLl063GEQERFdTqKrnRwxIpw+fXq4QyAiIhoRmBgRERERKZgYERERESmYGBEREREpmBgRERERKZgYERERESmYGBEREREpeB8jApwuoK5xuKMgIqIrgVYDhAcOdxSXjIkRAVIC4+4a7iiIiOhKcOy14Y5gQDiVRkRERKRgYkRERESkYGJEREREpGBiRERERKRgYkRERESkYGJEREREpGBiRERERKRgYkRERESkYGJEREREpGBiRERERKQY0YlRTk7OQ2q1WnZXPmfOnNfCwsIclzOmroSGhjozMzNf6s8xxcXFQeHh4Y6CgoLCoYhp3rx5j5nN5qahaJuIiGhINLYC1y0CTDcCcQuBd9d3X3fNLiD7CSDoZmD8PV3XebEMiL/X097kB4D9db2GcNkSo5GSxAyUEELm5ub+aKDtnDx58h8RERE1y5YtWzoYcXW2du3aZ91ut3ru3Lm/H4r2iYiILtmTiz2vzu5/1fMQ2vo3gHceBn70CrCnuus2THrgjhzg97d2Xf7aCuD1VUD5Y8DZd4Gyx4DwgF5DG9EjRleqkpISv/37988fO3bsH4fyPGaz+aMjR47cPZTnICIiGhRtNuBfnwNP3wT4G4DMycC3ZgJvreu6fvpE4JZ5QELkxWVuN/DrfwLP3w6kxAJCABOigNBBTIxCQ0OdaWlpq8xmc7NOp5PR0dFteXl5P/Stk5GR8ffIyEibwWCQY8eOtWZnZz8KALm5uXdv2bLlzjNnzvjpdDqp0+lkTk7OQxaLJSwpKelYYGCgS6/Xy+joaGt2dvYjfY2ps+LiYt3MmTOXhYeHO4xGo4yNjW3Jy8u7xVuekpJycPLkyVWpqalfG41GGRQU5MrIyHjbt405c+a8GRYW1qHX6+XkyZOrJk+eXJWSknIQAKKiotoBYMOGDS/pdDo5ZcqUr73H2e32CePHj2/U6XQyMjLSlpubu7C7ONvb229pb29XG43GV3z35+TkPGg2m5tNJpPb39/f7T2vd0oxKyvrT2FhYR06nU6mpKQcslgs45S+uENCQpxz5859zre9wMDAV2pra4OKiooSL/UzJSIiuiz21wEaFZAUfX7ftDhgT03/26pt8Lx2VwOxd3um03612JMw9aJfI0YHDhyYl5ycfF9+fr5/TEzM+s8///xNi8UyDvAkRfv27bth6tSpt+Tl5WmSk5MXbdq06bcFBQU5q1atejU9Pf31kJCQDrvdLux2u1i9evULADQRERGfZGVlxeTl5RljYmJWf/bZZ4uKioom9f9TAOrq6lYdP358TlpaWn5ubq7WbDb/6/PPP/9bUVHReG+dQ4cOxYeFhX2Qm5urmTZt2h82b978g8LCwgwAyMnJ+fHWrVtvmzZt2iN5eXn68PDw8gMHDsR7jz1x4oQBALKysu6z2+1iz5495+KsqqrKTkpKum3+/PnaqKiovV999dWfuouzra0tLywsrL20tLTDuy8/P/8/NmzY8GJsbOz72dnZQfPmzQuLioo614bb7caZM2dyZ82aFZWdnT27pqYmfuvWrVXh4eGLc3Nz/SZPnvzetm3bfm6xWMK8xyxduvRTrVaL9vb26y7l8yQiIrpsztqAQOOF+4JMQGt7/9uqbfD8u3wHsOsFYM1TwD82eKbWeqHpz3kSExM3rlix4h0AKCkpKTpw4EBHS0vLLwD8+NChQ9+fPHnymytWrHhfqf5UYmLifY2Njb8AsLqr9srLy+sB3Oezq9jf399ttVq/D+Cp/sRWUlIi9u7dOycjI+OBpUuXesfdbo+MjLyxpaXl597zxMbGnlq3bt3jSvkj/v7+P2tvb7cA2FRfX//jxMTEqtWrV3unuB4wm83dTF5eaMKECcuXL1/+vwAwf/78J3fu3PmJxWKJLS8vvyjVdTqdYX5+fhestzpx4sSvExISajdu3HiXz+4XfOuYzebrysvLGwA0JCcnH3M6nbq1a9c+CQAWi+XB9vb2mxwORw4A788AOp3O7XK5otED2e3ydiIiov5xulznkovq6mqYzWYAQHvu4zB8cQQAIG0OCAjghTK4pRuqrCnA0zfC3dx2bsSmuroa5hYrEGC4oJ2Ltrs41/GmRowFgJ9fh+qWBpjHm4F75sP6r09hvDu/x/j7lRjp9fpD3u3S0lJpNpvb7HZ7PAA0NTXptm3bttBoNJ6bQnK5XDAYDKe7a6+4uDikurp6XW1t7WSr1apRqVSw2WxwOp0x/YlLOVey3W7HZ5999v+MRuP/843B4XCcG/XR6/WNvsdptVq3y+UKAYD29vawkJCQSt9yk8nU0Jfza7Xac6vDVCpVIwC43e5IABclRhqNpqGjo0Pru89qtUYEBQXt7659lUqFioqKc1N3arXartFo2rzvy8vLG4QQcLvd4b7H2e12lVqt7nEZvhA9lRIREfWdRq0+t+1NVADAsOqZc9vCu/D6yRvOT1212aBySeBAHTAx2nPsVx8BU2IvaOei7f1nLto/dt7VnkXcwme/EDAaDL3G36+pNJvNNsG7XVJSIlpbW006ne4wAAQFBTnS09P/aLVahfdlt9vFrl27Uj3xCFfn9urr6987efLkxPT09Jz8/HyV1WoVRqNRSin7vShcrVbv02q1mDNnzm2dY9iyZcuCvrRhMBga2tvbx/nua2trC/V9LwYhizCZTKsaGhoMJSUlft59RqPxZFtbW9yAG/dRWFiY4XA4YDAYPhnMdomIiAadSQ985xrgicWehdgbK4FPtgK3XNt1fbcbsDmADpdn6sPmABzKChWjDrh+DvC7jz1TcbWngVdWAMVpvYbRrwTk4MGDc/Lz828qLi421NfXl3V0dKgCAwOfA4DExMT39u3bd39+fv71JSUlori4OCQ3N/dHBQUFCwDAz8/vcFtbm593TRIAOJ3OQLVa7Var1VVSSv+0tLRV7e3tl5R5lJaWyilTpmw8cODAiwUFBXkAYLFYIrOzs3+5YMGCq/rSRmRk5EsHDx5MyMnJebikpMQvKyvrhbq6uiDfOgEBAW6bzdb7J9sDg8Hwd4PB4LJareemzaKion5dVVUVk5mZ+T/FxcUBxcXFITk5OQ8N5DwtLS0LY2JiWioqKrodiSIiIhoxXloItDuAiNuBG58HXl4ITFFGfDbsBfxvOl93/V7AcANQ9AxQfdqzPd9nFc6f7gb89UD0ncDsXwA3ZQF35PYaQr+m0iZOnLhu3759L9fX178TFhZmnTVr1l3eNTSbNm26NTMz07Z79+43m5ubF6tUKhkREdGYmJi4EABMJtOLZrP5gbVr19YYjUYxa9as/4yKirqzqalp/cqVK2sNBoMrOTl5SXBwcEfPUXQvOjo618/P759ffvlluV6v12q1WndkZGR9YmLi8r4cv3r16v/OyMhI27Fjx++sVusf4+PjD0+YMKFWpVKdWw+Umpr61z179vzQaDTenpCQ8PXu3btT+htnaWlpR3p6+orjx4//FMDLALBixYr3c3JyfnrgwIEnt2/ffo9KpZJxcXEH0GmdUX/U1NR8Jz4+/pXeaxIREV1GT97Q9f7QAODjR7suy0rx3I/Ia14qID/s/hyBRmDxT/sdmpB9XHkbGhrqTElJeeXTTz+9r/faV46YmJjWsWPHbtq6dWvBYLZbXFwc8vnnn9dfffXV3xqKmzxmZ2f/8tChQ49UV1cH9VY3bdp0uW1nwmCHQERE30THXgOiQ3uvN/y6nKHq14jRN8HcuXP/EBAQ8HshxNnGxsb/OX78uP+UKVMG/e7RZWVlZwBoe614idasWfMbAL8ZqvaJiIiuREyMOjl58uT3tm3b9lO3242QkJD2rKysp5YtW7ZyuOMiIiKiodfnxKixsfEbkUR9/fXXg/rNMCIiIho9+Kw0IiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIsU34t5E1AshPLdwJyIiGijt6E4tRnf0NDg06tHyXBsiIqIhxak0IiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBR8iS4DTBdQ1DncUREQ02mk1QHjgcEcxIEyMCJASGHfXcEdBRESj3bHXhjuCAeNUGhEREZGCiRERERGRgokRERERkYKJEREREZGCiRERERGRgokRERERkYKJEREREZGCiRERERGRgokRERERkYKJEREREQ2/xlbgukWA6UYgbiHw7vru667ZBWQ/AQTdDIy/p+s6L5YB8fd62pv8ALC/rk9hjOjEKC4urmnmzJkruisPDQ11ZmZmvnQ5Y+pszpw5r4WFhTn6e1xGRsY7kydPrhqKmAAgJiamNTs7+/8MVftERESX5MnFnldn97/qedZa/RvAOw8DP3oF2FPddRsmPXBHDvD7W7suf20F8PoqoPwx4Oy7QNljQHhAn8Ib0YnRSJOWlrY2Pj6+YaDtWCyWMbt27brRbDbfORhxdWXixIm/raysfHqo2iciIho0bTbgX58DT98E+BuAzMnAt2YCb63run76ROCWeUBC5MVlbjfw638Cz98OpMQCQgATooBQJkYj1pkzZ54PCwtrWrZs2ZqhOoe/v/9zNpvNLycn5ydDdQ4iIqJBsb8O0KiApOjz+6bFAXtq+t9WbYPntbsaiL3bM532q8WehKkPek2MZs2a9UFoaGiHXq+XQUFBrhkzZmz0lhUWFs5KSkqqDQwMdAUGBrpSU1MrLRbLWG+5EELOmjXro7Fjx7br9XoZFxd3pqCgIMdbnpWV9WJUVFS7Xq+XyvF7LRbLmH5+BOfMnz//2wkJCaf9/f3dISEhzhkzZmwqLi42KLFmCiFkZmbm/0RERNj1er2Mj48/vWDBgmne4xcsWPBviYmJJwwGgwwPD3fMmTPnTSGELCwszMzKynphx44d11ZXV4fqdDqp0+lkYWHhtb6fU3BwsNNoNLpTU1P3lpSU+HUX54kTJwoiIiI2++6zWCyR06dP3+r9rCMiIuy5ubn3A54pxenTp38xceLEOr1eL8PCwjqys7P/T3Z29s8iIyNter1eTpw4sc73sy8tLXVFR0cfOX36dDfjjERERCPEWRsQaLxwX5AJaG3vf1u1ysTO8h3ArheANU8B/9jgmVrrgx4To4KCgvnbt2//j7S0tP+w2WwiMzMzITQ09A0AKC4uDtq6dev6gICAQ3Pnzg3PzMyc0N7eHnbkyJELxr2qqqqKpk6dasnLywsNCgqq+fLLL5d4kwa1Wn166tSp1+fn52tmz56df/LkyQnHjx//pP+fAlBUVJSycePGD6OiopbOmzcvYNasWdecOHFi2okTJ8p86504ceK6tLS0f8vNzY1xOp3ampqa97xllZWV61QqlSsnJycmPT19em1t7XXesg0bNjw0ffr0dWazudFutwu73S6WLl26DgCampr8HA5HVGZmZkhWVlbe4cOHJ505c+aF7mI9depUqMFg+MJ338GDB7c2NjYmpaen5+Tn56uuuuqqBRqNptKn/Kq4uLjH8/PztXFxcVu2b9/+XF1d3YNXX311Sk5OzoTm5uawkydP/s23zYCAgL1NTU3xvX12UvZWg4iIqG+qq6sv3i5+Fu6gm4Dgm4FFH0Eu+tCzHXwz2nMfB/z1QIv1gmPPHK0DAgzdtwmg/uTJi/cbtJ5/f34dEGxCtcoG3DMfqPjigmO7o+mpUAhhBwCbzZZtsVg2l5eXHwXwOgC0tLT8FwDxxRdfeEdNzuTn5z+8du3at0tKSvxKS0s7AGDixInvLlu2bDUAWCyW7MrKytNWq/V2AK+sXbvWdw3M6tmzZ39SXV1d1GvUXWhoaHhuzJgxTZs2bbpZ2fXF3LlzX9qzZ89/+tYbP378zysqKvYDwOzZs5ccOXKkBAAWLFiQdvTo0ZCCgoLrysvLjwE4lp2d/Ux1dfXvezu3n58fxo0bl630eXVycvKx1tbW2d3Vb29vV6nV6tPe90VFRSn79++Pzc/P//elS5duUHav9j0mISFhz8qVK98AgPnz5y/68ssv/3fmzJmPV1RUVAHAVVddtaOpqSnV9xi1Wt1ks9n0vcUvRG81iIiI+sZsNl+8XfbY+ZGYJxdDAMCTNwAADIBnjZHTDbP9fFoSUt0ETIntvk0AkRERF+9PHudZxC189osdFx3bnR4To6VLl66bO3fu72pqau46fvz4Q2azuWXChAm/XbNmzSKbzTapqalJYzQaLxpvcDqdUwF8AQBarXaPd395eXlDcHCwq6OjYzIAZGdnP3Lo0KFfNjY2BjidTiGlhMlkcvYadRfa29vHHzt2LMQ3Hikl3J3mFP38/M7Fo1KpWh0OhwYAOjo6pgKARqP53Fuu1Wq39+XcJpOpw5sIAoBarbY7nU5jd/UNBoPb5XKFe987HI505XzdfgNPp9Od8In7TOe+qNXqdqfTqfM9xuVyBev1eltf+kBERDRsTHrgO9cATywGXrsP2HEY+GQrsOk3Xdd3uwGHE+hweaY9bA5AJQCtH2DUAdfPAX73MXBVAtDcBryyAvjZv/cplF7XGK1fv/6Rw4cPh+Xl5flHR0ev2Lhx428tFkuYXq8/EB4ebrdarcL31dHRIZYsWXJumsjhcEzxblsslrC2tja1n59fZXFxsWnTpk2Lxo0bt3TevHlhNptNzJgx432cy/H6R6/XV5vN5lO+sbS3twu73d6n9vz8/HYCgNPpnOXd19HRMb1TNdelxNbZmDFjGtvb26/2vtdqtVsAwOFw5A1G+15nz56dHBwcfGQw2yQiIhoSLy0E2h1AxO3Ajc8DLy8EpigjPBv2Av43na+7fi9guAEoegaoPu3Znv/U+fI/3e2Znou+E5j9C+CmLOCO3D6F0eOIUUFBQaHdbr/aZDL9j0qlatRoNI0AIIRwBgQEPONyue6fOXPmsoiIiNtUKtUJp9M5w2q1fm/dunWPets4ePDgjQUFBX/38/PbXlNTsyokJMRhNBrfdLvdoU6nExqN5lRZWdmZ+fPnlxw8eLBv6VwXwsLCHq2srNwxZ86cN0JCQh4WQpzt6OjItNlsmWvXrn22t+OXLFmyLS4urunw4cNvWyyWdCllUFVV1eO+dbRabV1ra2tWcXGxqaysrO1SY42Kilp+/PjxQu/7ioqKvcnJybX79u17q7CwsNjPz2+jw+HIBgDvNGR/lZSUqOvq6uKnT5/+aO+1iYiILhNlCu0ioQHAx938ycpK8dyPyGteKiA/7P4cgUZg8U8vKbweEyMppfHQoUOPnD59+hkACAkJsWZkZDxRVlbWDHi+6XX06NHF+/fvr7Xb7aqAgACH2Wz+zLeN+Pj4JV999VVFU1OTPjIysvmqq64qUaad6jMyMt7atWvXvTqd7v6oqKimuLi4T6uqqq7tIpReLVmyZNf8+fO/XVVV9equXbt+2NHRoQoKCrLFx8f3eTF3SkrKvAMHDixfvXp1nclk6pg4ceIHR48evVEI0QoAwcHB/+Xv729Zs2ZNq9FoFHPnzp17KbGGhIQ8tHPnzvrCwsJrvQu4ExMT02trays2b9681mq1qoODg+2pqakPo9Nao746e/bsz7RarXPNmjV/uJTjiYiIvomEHMKvJAkhZE5Ozn2rVq16echOMoSys7N/+emnnz5bWFioKi0tHdQPKiMj450zZ87MrqysTBjMdr1iY2NbEhMTn16zZk2vi8fTpk2X23YOSRhERPRNcuw1IDp0uKPoqy6X2vQ4YvRNk5+ffz0Ap16v/7Cjo2Pu/v37H5s4ceKhwU6KAGDTpk0/GOw2fdXU1AQOZftERERXIiZGPlwuV/RXX3313NmzZ/30er07Jibm4Pjx4+cPd1xERER0eQxpYiSlHFV3yFm9evXzAJ4f7jiIiIhoePBZaUREREQKJkZERERECiZGRERERAomRkREREQKJkZERERECiZGRERERAomRkREREQK3uCRACE8t3EnIiIaCO3oTytGfw9o4DTq0fRsGyIioiHDqTQiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFHyJLgNMF1DUOdxRERFcOrQYIDxzuKOgSMDEiQEpg3F3DHQUR0ZXj2GvDHQFdIk6lERERESmYGBEREREpmBgRERERKZgYERERESmYGBEREREpmBgRERERKZgYERERESmYGBEREREpmBgRERERKZgYERERjSSNrcB1iwDTjUDcQuDd9d3XXbMLyH4CCLoZGH/PxeXZTwBjbgMCfwBMexj4ZMuQhX2l4CNBRoiUlJSDQgjnnj17Jg13LEREdBk8uVj594YL99//qudZa/VvADuOAJZngWnjgSnmi9sw6YE7coAbM4Hf/Ovi8hfvAFJiAY0a2LwfyHsS2P8nYGzo4PblCsIRIyIiopGizQb863Pg6ZsAfwOQORn41kzgrXVd10+fCNwyD0iI7Lp86nhPUgQAQgAdLqCmYSgiv2JwxIiIiGik2F8HaFRAUvT5fdPigHV7L73N4meBlTsBewdQMB1ImzDwOK9gHDG6zCwWS+T06dO3hoaGduj1ehkREWHPzc29v3O9GTNmbAwNDe3Q6XQyLCysY9asWR95y4qLiwNSU1MrAwIC3Hq9XoaHhzvmzp37fwGgsLAwMyEh4bTRaJRGo9EdHR1tLSgoKLycfSQiokt01gYEGi/cF2QCWtsvvc2yx4DWd4CKx4H50wEV//T3hJ/OZXbw4MGtjY2NSenp6Tn5+fmqq666aoFGo6nsXM9oNH51zTXXpM+fP181bdq0R7Zv3/7t7OzsXwJAY2PjSw0NDXFZWVlJNptNpKWlZer1+rUAcOTIkbeNRuPpnJycwNzcXN2UKVNuUavV1T3FJOWQdJWI6BvL6XKd266uPv+f4Pbcx4Hgm4HgmyEXfQgs+ggIvhnuoJs8Izv+erib2y48tsUKBBguaKff28frgAUzgOU7cOr1iktv5wra7o6Q/Kt42RQVFaUsWbJkT35+/r8vX778f33Lelt8nZSUVGsymY59+eWX18yZM+e1ffv23Tpt2rSHDQbDa2VlZXbfdhwOh39CQsKdy5cvL+9LXGnTpsttOxMG1jkiIjrv2GtAdC8LnLtafN1mA0JuBfa8AExUptNufdHT1qJbum9r5VfAXS8BR/7S8znzngQsVwMPl/TWg28C0dVOjhhdRg6HIx0AtFrtit7qzpo164PIyEib0Wh0G41Gefjw4XEOhyMUAEJCQu5PSEhYWVlZ+btVq1bZkpKSjhUUFOQAwPjx44uNRuOJL7744qPAwEDX1KlTv7JYLN2syiMiohHFpAe+cw3wxGJPkrSxEvhkK3DLtV3Xd7sBm8OzqFpKz7ajw1P2dS2wZDvQbgc6nMDb64D1e4FrUy5ff0YhJkaXkVar3QIADocjr6d6ubm5927fvv0/UlNTH8zNzdVZrVYRHx9/TEopAKCsrMy+ZcuWorq6OlNOTs54tVptr6ys/BAAKioqvt65c+f0hoYGbUZGRk59fX3yiRMn/jn0vSMiokHx0kKg3QFE3A7c+Dzw8sLzX9XfsBfwv+l83fV7AcMNQNEzQPVpz/b8pzxlEsCT73naGXMb8GIZ8N5PgBlcfN0TfivtMqqoqNibnJxcu2/fvrcKCwuL/fz8NjocjuzO9Vwu1xghBDQaTRUA97x58548evTouAkTJhwCgJycnJ+o1ep6nU73oRCiUa1W24QQEgCysrJeMJlM//Lz8/tUpVIdU6vVLiGEq/M5iIhomHW+f5FXaADw8aNdl2WlAGffPf9+XiogP+y67uQYYPNzA4vxG4iJ0WWWmJiYXltbW7F58+a1VqtVHRwcbE9NTX3Yt05AQMBvkpKSrt+wYcNyIQTGjx9/KCEh4bC3vKOjI3737t2/bW5ufluj0cjIyMiGSZMmfQ8Azp49e83u3bt/bLVa1Tqdzm02mw9ERkZ+73L3k4iIaDTi4mvi4msiosHWl8XXNNy4+JqIiIioJ0yMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUfCQIAUJ47tJKRESDQ8s/r6MVf3IEaNS8dT0RERE4lUZERER0DhMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFEyMiIiIiBRMjIiIiIgUTIyIiIiIFHyJLgNMF1DUOdxRERENPqwHCA4c7ChrBmBgRICUw7q7hjoKIaOgde224I6ARjlNpRERERAomRkREREQKJkZERERECiZGRERERAomRkREREQKJkZERERECiZGRERERAomRkREREQKJkZERERECiZGRERERIpRlxjl5OQ8pFar5WC0lZCQcCo9Pb28u/LMzMyXQkNDnT21kZKScnDKlClf9/fckyZNOjpnzpw3+3tcXxQVFU0KCQlxFhUVJQ1F+0RE30iNrcB1iwDTjUDcQuDd9d3XXbMLyH4CCLoZGH/PhWUnm4Ab/whE3+kpn/MLYPP+oY2d+mxYE6M5c+a8FhYW5hiu81dVVY3ZsmWLpa/14+LimmbOnLlioOfNy8u78+TJk9GhoaELB9pWVyoqKr6Oj4/fUtX0RNEAABTVSURBVFtb+/5QtE9EdEV7crHn1dn9r3oeQlv/BvDOw8CPXgH2VHfdhkkP3JED/P7Wi8vO2oCZicAXvwca/wb8MBuwPAucbR/cftAlGXUjRleC2traJxISEtaVlpZ2DNU5xowZ88S+ffumWiyWcUN1DiKib4w2G/Cvz4GnbwL8DUDmZOBbM4G31nVdP30icMs8ICHy4rKEKOAn3wLGhgJqNbBwPuBwAvvqhrQL1DcDSoxCQ0OdaWlpq8xmc7NOp5PR0dFteXl5P/Stk5GR8ffIyEibwWCQY8eOtWZnZz8KALm5uXdv2bLlzjNnzvjpdDqp0+lkTk7OQxaLJSwpKelYYGCgS6/Xy+joaGt2dvYjfYmnpKREbTQa3bm5uQsBoLCw8FohhLz66qvP/eZGRETY586d+zxw8QhQXl7ebdHR0W06nU6azeZmm82W7C2bOnXqzpqamqAdO3bk6XQ6OWbMmHMjXW63W5uamvq10WiUQUFBroyMjLe7i7G4uFh35MgRc3Bw8D989xcWFmYmJyfXBAYGuoxGo4yNjW0pKipKBAAhhJw9e/Y/vbHFxsa2LFiwIO2aa675ODg42GkymdwzZsz41Le9ZcuWrTSZTK7W1tYH+/LZERFRD/bXARoVkBR9ft+0OGBPzcDb3nHYkxglRg28LRqwAY8YHThwYF5ycvJ9+fn5/jExMes///zzN72jFBkZGX/ft2/fDVOnTr0lLy9Pk5ycvGjTpk2/LSgoyFm1atWr6enpr4eEhHTY7XZht9vF6tWrXwCgiYiI+CQrKysmLy/PGBMTs/qzzz5bVFRUNKm3WEpLS10xMTHHm5ubrweAlpaWu8PCwjpOnjx5FQAsWLDg6tOnT2v9/f3/3PlYi8US+9lnn70RExOzPj8/3z8pKenB/fv3z/OW79y5c2psbGzz9OnTV9rtdnHq1Cmtt+zQoUPxYWFhH+Tm5mqmTZv2h82bN/+gsLAwo6sYHQ5Hnt1uh06nW+pz7rAtW7as0el0TVlZWeNzcnL0ycnJDwsh2rx1ampqFkybNu3avLy8cLVa7dy6desmp9MZkpmZGZSRkXH9rl275uTm5t7re67Q0NDTZ8+e7TIOIiLqh7M2INB44b4gE9A6wOmvFitwy4vAr77vaY+G3YATo8TExI0rVqx4p6ysrC0yMrLIz8/P3dLS8gsAOHTo0PcnT5785ooVK94vLS11rV279qnY2Nj6xsbGX3TXXnl5ef2nn356X3l5+fGysrL2LVu2FGs0Gmm1Wr/fl3jCwsI2nDx58moAaGhouDY5OfmdhoYGf4vFEtva2npPVFRUe0VFxcHOxzU3Nz+q1WrdkZGRRWVlZW0rV678W2Ji4md9OWdsbOypdevWPV5aWupav379IwaDQba3t3e5dsnlco0DAJVKdW7MtLW19XGn06kym81p5eXlNWVlZfaVK1e+Xl5eftxbJyEh4ZUlS5ZsKy8vbxg7duzys2fP+kVHR+eUlZW1rVix4v2IiIi2tra2fN9z+fn5tXd0dIT0Fr8clKXsRESjR3V19YXbxc8CwTfDHXQTsOgjYNFHnu3gm4HiZ3G8tcmTxPge22JFu6aHNhVOl7PL/TX7DwIlvwFmJaH6BzN7bYfbg7vdHU2vNXqh1+sPebdLS0ul2Wxus9vt8QDQ1NSk27Zt20Kj0XhukbHL5YLBYDjdXXvFxcUh1dXV62praydbrVaNSqWCzWaD0+mM6Us8gYGBb2zduvV6i8Uy9tixY+MSEhL+e+zYsZazZ8/e19DQkBcZGbmrq+McDkd8QEBAW2lp6bk0Qa/XHwQwqw+fQaPve61W63a5XF0mJGq1+hgAuN3uaADHAMBmsyUFBQW1lZWV2bs7h5+f37lkTqVSnTWZTB2lpaUu7z6NRuN0uVyBvsd0dHQYDAZDbW/xC9FbDSKiK4vZbL5wu+wxAMpogbLwWvXkDefqjG2zAU43cKAO5onKsV8dgSEt6cJ2utjWqDUX77d3IPaBd4GYMOAv98KsUvXaDrcHd7s7Ax4xstlsE7zbJSUlorW11aTT6Q4DQFBQkCM9Pf2PVqtVeF92u13s2rUrFQCEEK7O7dXX17938uTJienp6Tn5+fkqq9UqjEajlFL2KdZly5YtDwgIcNXX179lMpkcS5Ys+TI8PHzTmTNniuvq6uKCg4M/6uo4rVZ7pLW11VRSUnIuTfDtmxKvu2+fSve0Wu1KnU4Hu91e6N2n1+v3t7S0mEpKSvwG2r6vxsbGMH9//88Hs00iom8kkx74zjXAE4s9C7E3VgKfbAVuubbr+m43YHMAHS7PsLzNATiU79t0OIHv/h4waIG/PQioBvynmAbRgEeMDh48OCc/P/8mnU730cmTJz/o6OhQBQYGPgcAiYmJ7+3bt+/+/Pz8LXq9/p9SyuD29vYbNBrNkWXLli3x8/M73NbW5mexWMaVl5cfAwCn0xmoVqvdarW6Skrpn5aW9nF7e3u/xjSio6Or9uzZk5uUlPQlAAQGBr61c+fOD5xOJ0wm01+6OiYoKOg5h8Nxb319fVlxcfF37Xb7dQcPHszQaDS+I0gtbW1t8Zf+aQFlZWX2SZMmVTc3N98A4HUACAgI+I1arX7g6NGjWy0WS4kQ4qTNZrtZp9NV+E6n9UdBQUFOW1ubJiAg4L8HEi8RESleWgjc8Wcg4nYgLAB4eSEwRRmB2LAXWPAMcPZdz/v1ez33MfIy3ABcOwVY+zSwaR9Qts2TGAXfcr7OkseBrJTL1x/q0oATo4kTJ67bt2/fy/X19e+EhYVZZ82adVd5eXkNAGzatOnWzMxM2+7du99sbm5erFKpZERERGNiYuJCADCZTC+azeYH1q5dW2M0GsWsWbP+Myoq6s6mpqb1K1eurDUYDK7k5OQlwcHB/fpae2ho6PK9e/dODAkJ+RgA9Hr9hxqNxh0ZGdlcVlZ2pqtjysvLj+bm5t5TWVn5wldffWWNjIxsSUpKWltVVXXufwdiYmJ+tWvXrr8YjUYZEBBgr6+v11/KZzZu3LhnduzY8eeSkhK/0tLSjvLy8lOFhYW5hw4d+sf69euPulwuER4e3pKamrrmUtoHgFOnTj2dnJy8y/uzICKiPvKZQrtAaADw8aNdl2WlnE+KAGBeKiA/7LrutVO6L6NhJ+QAVt6GhoY6U1JSXvn000/vG8SYvhEmTZp0NCwsbPXGjRtvH+y2i4qKJn322We7Z8+enVpRUdHrXbnTpk2X23YmDHYYREQjz7HXgOjQ4Y6CRoYuZ6MGPGJEl+brr7+OG6q2lWSIP1siIqJ+4oovIiIiIsWARhUaGxs5KkFERERXDI4YERERESmYGBEREREpmBgRERERKZgYERERESmYGBEREREpmBgRERERKZgYERERESl4HyIChPDcJp+I6Eqn5Z896hl/QwjQqPnsICIiInAqjYiIiOgcJkZERERECiZGRERERAomRkREREQKJkZERERECiZGRERERAomRkREREQKIaUc7hhomAkhWgHsG+44Bkk4gNPDHcQgYV9GriupP+zLyMS+DL3TUsrCzjt5g0cCgH1SyrThDmIwCCG2sS8jz5XUF+DK6g/7MjKxL8OHU2lERERECiZGRERERAomRgQArwx3AIOIfRmZrqS+AFdWf9iXkYl9GSZcfE1ERESk4IgRERERkYKJ0RVMCJEkhPhMCLFf+XdiF3XUQog/CyEOCSEOCiHu6kvZ5TYIffkvIcQeIcROIcQXQoiCy9uDC+IcUF986iQLIaxCiD9cnsgvNhh9EUJ8XwixSwixW/k38vL14II4Bvo7FiGEKFd+xyqFEC8JIYblm7997Mt8IcQ2IYS98+/QKLz2e+rLaLv2u+2LT53Rcu332JeRcu1fRErJ1xX6ArAawM3K9s0AVndR51YAy+BJkscAqAUwvreyUdiXAgBGZXsagCYAhtHYF6VcDWAtgHcB/GEU/46lAdgLIEp5HwRAP0r78oL3ZwHAD8BmAN8fwX1JBDAdwDOdf4dG4bXfU19G27XfbV+U8tF07ff0cxkx137nF0eMrlBCiAgAMwD8Q9n1DwAzhBBjOlW9HsCrUkq3lPIUgI8BfK8PZZfNYPRFSrlMSmlV6u0EIACEDXnwnQzSzwUAHgVQBmD/EIfcrUHqy8Pw/AfzBABIKZullLahj/5Cg9QXCSBACKECoAOgBXBsyIPvpK99kVIelFLuAODsoplRde331JfRdu338nMBRtG130tfRsS13xUmRleuWADHpJQuAFD+rVP2+zIDOOrzvtqnTk9ll9Ng9MXXrQAOSSlrhyDW3gy4L0KIafD8X/DzQx5tzwbj55ICIEEIsV4IsV0I8bgQQgxx3F0ZjL48DSAJwHEAJwAsk1JuHMqgu9HXvvRktF37fTUarv1ujcJrvycj5dq/CBMj+kYRQlwLzx+wG4c7lkshhPCD56uv93r/ozTKqQFMBZAP4FoACwDcMqwRXbrvwTMiMRbAOABzhRDfHd6QyIvX/ogzYq99JkZXrhoA44QQasCzmBJAtLLfVzWAOJ/3Zp86PZVdToPRFwghZgN4G8C3pZTD9Wy4gfZlLIAJACqEEEcAPATgbiHEcNwnZLB+xz6QUtqllK0APgGQPqRRd20w+vIAgHeU6admePqSPaRRd62vfenJaLv2ezTKrv3ujMZrvycj5dq/CBOjK5SU8iSAHTj/f0c3AvhSWS/g6314Li6VMj/8bQAf9KHsshmMvgghZgJ4D8B3pZTbL0/kFxtoX6SU1VLKcCnleCnleHgW/L4qpVx4mbpwziD9jr0LYL7w8AOQC+CroY/+QoPUl8MACgFACKEFkAdg91DH3lk/+tKT0Xbtd2sUXvvdHT8ar/2ejIhrv0vDvfqbr6F7AZgEzzdj9iv/Jiv7KwCkKdtqAC8DOKS8Fvoc323ZKOzLVgCn4LmYva9/G4196dTWkxjeb6YM9OeiAvBHAJUA9ijbqlHalwkAVgDYBc+3bf4MQDOC+5IJz7fNWgC0KtsF/fn9GyV9GW3Xfrd96dTWaLj2e/q5jJhrv/OLd74mIiIiUnAqjYiIiEjBxIiIiIhIwcSIiIiISMHEiIiIiEjBxIiIiIhIwcSIiIiISMHEiIioEyFEgRBig8/7ecrdhq94Qoi/CiFeG8T2xgshpM/7MUKIo0KI8ME6B9FgYmJERORDeZDl8wB+1Uu9HwkhdgshWoQQZ4QQ24QQ1/uUHxFC3NzFcRftV+7+u19py79T2TwhhBRCnFVedUKIN4UQoQPr6fCQnrsjv4tePl+i4cLEiIjoQvMBaAGs6a6CEOJGeP6w3wkgCJ7nRD0M4MwlnjMbQAIAN7p+yKlLSukvpfSH527Cs+F5JMRo9QaA24UQgcMdCFFnTIyIaNgooyePCyHWKKMhu4QQU4UQNwohDgohmoUQrwkhND7HmIUQHwghTgghjgshXhFCBPiU/0YIUaW0d0gI8ZBP2Xhl9OUWIcReIUSrEGK5EGKsT1jfBrBS9vxYgAwA66WUm6VHu5Ryg5Ry+SV+FPcAWArgLWW7W1LKKgBlAK7qXCaE0Cifybc77f+rEOJNZTtXCLFZGeU6JYRYLISI6O58yueV6fN+nhDC2emcv1RGvJqEEBuFEGm99OEAgNPwPE+OaERhYkREw+2HAO4DEALPQyQ/gmcEZRqAfwPwLQDXA4AQQg9gNTzPIosHkAIgBsCLPu3thWdUJQDA3QB+K4Qo6HTO6wHMBTAOgAnAUz5lM5Q2erIewLeEEM8oiUZwP/p7AZ+HtL6hvK4WQlzdQ/1EACXwPAPsAlJKJzzJ1W0+9f0BfFdpGwDsAH4MYAw8n280Lvz8+uvXAP4dngfohinnWSqECOnluF3wfNZEIwoTIyIabq9IKSullB3wrD1JAPCYlLJNSlkNYC0A7whEMQAhpXxCGaU5A+C/APxACKEGACnl21LKOmUkZzWAcnie3O3r11LK01LKFuWcviMcIfA89LJbUsr34Uk2UpTjG5RRr9ROVf+ijKKcewEwd6pzO4BmAKVSyi8BfAmg8xPT1crxZ+B5UO0aAD/pJrw3ART5jAJ9H0CdlHKDEvunUsqtUkqnlPIEgN/h4s+nT5T1WA8C+JmUskpK6ZJSvg7gOABLL4e3ABiV66ToysbEiIiG23GfbSs862lOddrnnSqLB2DulGisAiABRAGAEOJBZUrujFJeAs/oSHfnbPNpH/CsE+p17YuUskxK+R0pZSSAKUoMZUqy4HWPlDLY9wWg2luo1L0bwNtKYggArwO4yXd6UPlMgqWUIVLKeCnlvVLKpm7iqgSwHYB3gfft8CRL3nNeLYRYpkxFtgD4By7+fPoqHIA/gNJOP5MEeEbyehIIoPESz0s0ZJgYEdFochTA/s7JhpRSL6U8JoSYA+A5eNbphCuJSCkA0VOjnXwJz0hQn0kpv4bnm2xx8Iw49VUOgEQAdyiJygl4pqb8AdzUnxg6eRPAbcq02ywAf/cpWwxP4pQkpQxE14u9fZ2FZ7rRK9pn+zQ8iWVep5+HSUq5qJd2U+H5rIlGFCZGRDSalAHQKot9A5SvuY8TQlynlAcCcAE4BUAKISwAFvTzHB+jl6klIcQdQojvCeVePEKIGAD3AtgrpezPKMg98KxXmgRguvJKhSex6Tyd1h+L4Um4/hvACinlMZ+yQHim7lqFEGYAj/bS1hcAfiiE0AohxsNnCk9ZoP4igD8IISYCnjVNwnMfqOiuGlPqJMIzSrWyvx0jGmpMjIho1JBSWuEZZUkB8DU8f+BXwZNQAMAyeEZHtsAzmvFdeBZz98cyAE4hxLwe6pwB8CMAlUKINgCbATTBswaqT5Q1QN8G8Acp5QnfFzyjXlf19u2u7kgpm+Hp9wKcX3TttRDAXQBaAXwI4P1emvsxPElWI4B/Avhrp/JfAfgEwCfK1NwBeJLEnv6+3AHgr0qcRCOK6PkbqURE3zxCiEIAv5RSzlXez4PnD/n44YxrNFJGmQ5LKYXyfgyAbQDSOq0lIxoRNL1XISL6ZpFSLoXnvkI0yJRkKG644yDqDqfSiIh6dwSj+07Tw6kJngXlRKMCp9KIiIiIFBwxIiIiIlIwMSIiIiJSMDEiIiIiUjAxIiIiIlIwMSIiIiJS/H9byfqsa4SrdgAAAABJRU5ErkJggg==\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "o9rVdLtCNRBv", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "4953305e-751a-4d32-b1da-efc4ef2f0c35" | |
}, | |
"source": [ | |
"from sklearn.metrics import median_absolute_error\n", | |
"\n", | |
"print(\"train error: %0.3f, test error: %0.3f\" %\n", | |
" (median_absolute_error(y_train, lm.predict(X_train)),\n", | |
" median_absolute_error(y_test, lm.predict(X_test))))" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"train error: 0.163, test error: 0.193\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "53e0p0D8NRBz", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 391 | |
}, | |
"outputId": "7324f019-9ab4-4b2e-9cd7-672bc445f643" | |
}, | |
"source": [ | |
"scatter_predictions(lm.predict(X_test), y_test)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 432x432 with 1 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"boxplot_pi(lm, X_test, y_test)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 441 | |
}, | |
"id": "X8bwlzZDcu2G", | |
"outputId": "70181b44-e26a-499c-c5ff-c08c45cc042d" | |
}, | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "U-WxMmdxNRB_", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "b5fc0af6-4ae5-4054-c4df-e83aa7227fbf" | |
}, | |
"source": [ | |
"print(\"The hyper-parameters for a linear model are:\")\n", | |
"for param_name in LinearRegression().get_params().keys():\n", | |
" print(param_name)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"The hyper-parameters for a linear model are:\n", | |
"copy_X\n", | |
"fit_intercept\n", | |
"n_jobs\n", | |
"normalize\n", | |
"positive\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "2xkjKorMNRCT" | |
}, | |
"source": [ | |
"from sklearn.ensemble import RandomForestRegressor\n", | |
"\n", | |
"rf = Pipeline([\n", | |
" ('preprocess', preprocessing),\n", | |
" ('regressor', RandomForestRegressor(n_estimators=100, n_jobs=-1, random_state=42))\n", | |
"])" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"scrolled": false, | |
"id": "pAckw-G4NRCf", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 192 | |
}, | |
"outputId": "89a37b81-709d-4c1c-9f78-0a05de5131c9" | |
}, | |
"source": [ | |
"rf.fit(X_train, y_train)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1, random_state=42))])" | |
], | |
"text/html": [ | |
"<style>#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 {color: black;background-color: white;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 pre{padding: 0;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-toggleable {background-color: white;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-estimator:hover {background-color: #d4ebff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-item {z-index: 1;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel-item {display: flex;flex-direction: column;position: relative;background-color: white;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-parallel-item:only-child::after {width: 0;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;position: relative;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-label label {font-family: monospace;font-weight: bold;background-color: white;display: inline-block;line-height: 1.2em;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-label-container {position: relative;z-index: 2;text-align: center;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-6e6a82bc-5b2a-459b-87c1-a4ea86d8a213\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1, random_state=42))])</pre><b>Please rerun this cell to show the HTML repr or trust the notebook.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"c633e83b-a0b1-4563-8ca9-0b9db2cf05aa\" type=\"checkbox\" ><label for=\"c633e83b-a0b1-4563-8ca9-0b9db2cf05aa\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">Pipeline</label><div class=\"sk-toggleable__content\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1, random_state=42))])</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"4ae69dd9-1ed8-41ca-b2e8-418b94941707\" type=\"checkbox\" ><label for=\"4ae69dd9-1ed8-41ca-b2e8-418b94941707\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">preprocess: ColumnTransformer</label><div class=\"sk-toggleable__content\"><pre>ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot', OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler', StandardScaler())]),\n", | |
" ['sepal length (cm)', 'petal length (cm)',\n", | |
" 'petal width (cm)'])])</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"a8318421-2b62-411d-a869-9883341f5277\" type=\"checkbox\" ><label for=\"a8318421-2b62-411d-a869-9883341f5277\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">cat</label><div class=\"sk-toggleable__content\"><pre>['class']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"8438c20c-e881-4905-a358-e34e71257049\" type=\"checkbox\" ><label for=\"8438c20c-e881-4905-a358-e34e71257049\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">OneHotEncoder</label><div class=\"sk-toggleable__content\"><pre>OneHotEncoder()</pre></div></div></div></div></div></div></div></div><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"dd0a9c83-cce7-4a85-93e4-e6e1b0403009\" type=\"checkbox\" ><label for=\"dd0a9c83-cce7-4a85-93e4-e6e1b0403009\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">num</label><div class=\"sk-toggleable__content\"><pre>['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"09a1dbce-f69b-4922-868f-261ab19aa8c8\" type=\"checkbox\" ><label for=\"09a1dbce-f69b-4922-868f-261ab19aa8c8\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">StandardScaler</label><div class=\"sk-toggleable__content\"><pre>StandardScaler()</pre></div></div></div></div></div></div></div></div></div></div><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"2b0db141-667a-4c1a-8ea9-18f72d14e5b3\" type=\"checkbox\" ><label for=\"2b0db141-667a-4c1a-8ea9-18f72d14e5b3\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">RandomForestRegressor</label><div class=\"sk-toggleable__content\"><pre>RandomForestRegressor(n_jobs=-1, random_state=42)</pre></div></div></div></div></div></div></div>" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 52 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "6onlZOMeNRCj", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "ee3d5a1c-7797-428f-a76c-74e9b909b5e6" | |
}, | |
"source": [ | |
"from sklearn.metrics import median_absolute_error\n", | |
"\n", | |
"print(\"train error: %0.3f, test error: %0.3f\" %\n", | |
" (median_absolute_error(y_train, rf.predict(X_train)),\n", | |
" median_absolute_error(y_test, rf.predict(X_test))))" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"train error: 0.060, test error: 0.275\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"scrolled": false, | |
"id": "xLGOVM3TNRCs", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 391 | |
}, | |
"outputId": "d25268a9-2662-46aa-f44c-19d6ba541e82" | |
}, | |
"source": [ | |
"scatter_predictions(rf.predict(X_test), y_test)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 432x432 with 1 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "EqZqJRZmNRC1", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "63b466ef-65e5-46ee-b1c9-e6cf4d41d1a9" | |
}, | |
"source": [ | |
"print(\"The hyper-parameters for a random forest model are:\")\n", | |
"for param_name in rf.get_params().keys():\n", | |
" print(param_name)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"The hyper-parameters for a random forest model are:\n", | |
"memory\n", | |
"steps\n", | |
"verbose\n", | |
"preprocess\n", | |
"regressor\n", | |
"preprocess__n_jobs\n", | |
"preprocess__remainder\n", | |
"preprocess__sparse_threshold\n", | |
"preprocess__transformer_weights\n", | |
"preprocess__transformers\n", | |
"preprocess__verbose\n", | |
"preprocess__verbose_feature_names_out\n", | |
"preprocess__cat\n", | |
"preprocess__num\n", | |
"preprocess__cat__memory\n", | |
"preprocess__cat__steps\n", | |
"preprocess__cat__verbose\n", | |
"preprocess__cat__onehot\n", | |
"preprocess__cat__onehot__categories\n", | |
"preprocess__cat__onehot__drop\n", | |
"preprocess__cat__onehot__dtype\n", | |
"preprocess__cat__onehot__handle_unknown\n", | |
"preprocess__cat__onehot__sparse\n", | |
"preprocess__num__memory\n", | |
"preprocess__num__steps\n", | |
"preprocess__num__verbose\n", | |
"preprocess__num__scaler\n", | |
"preprocess__num__scaler__copy\n", | |
"preprocess__num__scaler__with_mean\n", | |
"preprocess__num__scaler__with_std\n", | |
"regressor__bootstrap\n", | |
"regressor__ccp_alpha\n", | |
"regressor__criterion\n", | |
"regressor__max_depth\n", | |
"regressor__max_features\n", | |
"regressor__max_leaf_nodes\n", | |
"regressor__max_samples\n", | |
"regressor__min_impurity_decrease\n", | |
"regressor__min_samples_leaf\n", | |
"regressor__min_samples_split\n", | |
"regressor__min_weight_fraction_leaf\n", | |
"regressor__n_estimators\n", | |
"regressor__n_jobs\n", | |
"regressor__oob_score\n", | |
"regressor__random_state\n", | |
"regressor__verbose\n", | |
"regressor__warm_start\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Xeklg8zNNRDA", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 193 | |
}, | |
"outputId": "8f27e800-8030-4525-8553-5e8aae37c8c8" | |
}, | |
"source": [ | |
"from sklearn.model_selection import GridSearchCV\n", | |
"\n", | |
"param_grid = {\n", | |
" 'regressor__max_features': (2, 3, 4),\n", | |
" 'regressor__max_depth': (2, 3, 5),\n", | |
" 'regressor__min_samples_leaf': (1, 3, 5),\n", | |
"}\n", | |
"\n", | |
"model_grid_search = GridSearchCV(rf, param_grid=param_grid,\n", | |
" n_jobs=-1, cv=3)\n", | |
"model_grid_search.fit(X_train, y_train)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"GridSearchCV(cv=3,\n", | |
" estimator=Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'width '\n", | |
" '(cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1,\n", | |
" random_state=42))]),\n", | |
" n_jobs=-1,\n", | |
" param_grid={'regressor__max_depth': (2, 3, 5),\n", | |
" 'regressor__max_features': (2, 3, 4),\n", | |
" 'regressor__min_samples_leaf': (1, 3, 5)})" | |
], | |
"text/html": [ | |
"<style>#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d {color: black;background-color: white;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d pre{padding: 0;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-toggleable {background-color: white;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-estimator:hover {background-color: #d4ebff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-item {z-index: 1;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel-item {display: flex;flex-direction: column;position: relative;background-color: white;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-parallel-item:only-child::after {width: 0;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;position: relative;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-label label {font-family: monospace;font-weight: bold;background-color: white;display: inline-block;line-height: 1.2em;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-label-container {position: relative;z-index: 2;text-align: center;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-dccfe0c3-2ebb-4508-a6b6-a1741249642d\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>GridSearchCV(cv=3,\n", | |
" estimator=Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'width '\n", | |
" '(cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1,\n", | |
" random_state=42))]),\n", | |
" n_jobs=-1,\n", | |
" param_grid={'regressor__max_depth': (2, 3, 5),\n", | |
" 'regressor__max_features': (2, 3, 4),\n", | |
" 'regressor__min_samples_leaf': (1, 3, 5)})</pre><b>Please rerun this cell to show the HTML repr or trust the notebook.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"6c075c67-d6dc-40c4-8bf7-de8a9d2c220f\" type=\"checkbox\" ><label for=\"6c075c67-d6dc-40c4-8bf7-de8a9d2c220f\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">GridSearchCV</label><div class=\"sk-toggleable__content\"><pre>GridSearchCV(cv=3,\n", | |
" estimator=Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'length '\n", | |
" '(cm)',\n", | |
" 'petal '\n", | |
" 'width '\n", | |
" '(cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(n_jobs=-1,\n", | |
" random_state=42))]),\n", | |
" n_jobs=-1,\n", | |
" param_grid={'regressor__max_depth': (2, 3, 5),\n", | |
" 'regressor__max_features': (2, 3, 4),\n", | |
" 'regressor__min_samples_leaf': (1, 3, 5)})</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"816267fb-1988-467c-afb4-f45ae0b73c1b\" type=\"checkbox\" ><label for=\"816267fb-1988-467c-afb4-f45ae0b73c1b\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">preprocess: ColumnTransformer</label><div class=\"sk-toggleable__content\"><pre>ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot', OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler', StandardScaler())]),\n", | |
" ['sepal length (cm)', 'petal length (cm)',\n", | |
" 'petal width (cm)'])])</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"54d01f43-9062-456c-a7a9-02b45b6fad6d\" type=\"checkbox\" ><label for=\"54d01f43-9062-456c-a7a9-02b45b6fad6d\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">cat</label><div class=\"sk-toggleable__content\"><pre>['class']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"d21a9f13-e085-4de0-ba2c-b6eb1b2f6012\" type=\"checkbox\" ><label for=\"d21a9f13-e085-4de0-ba2c-b6eb1b2f6012\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">OneHotEncoder</label><div class=\"sk-toggleable__content\"><pre>OneHotEncoder()</pre></div></div></div></div></div></div></div></div><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"92f07b94-ae84-4f3d-8b98-b02fd3e76dcc\" type=\"checkbox\" ><label for=\"92f07b94-ae84-4f3d-8b98-b02fd3e76dcc\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">num</label><div class=\"sk-toggleable__content\"><pre>['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"f3be7a87-9255-43b8-99e8-ba325b6b5f98\" type=\"checkbox\" ><label for=\"f3be7a87-9255-43b8-99e8-ba325b6b5f98\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">StandardScaler</label><div class=\"sk-toggleable__content\"><pre>StandardScaler()</pre></div></div></div></div></div></div></div></div></div></div><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"59b1b5d8-d034-4453-b2c0-d01db98b9f88\" type=\"checkbox\" ><label for=\"59b1b5d8-d034-4453-b2c0-d01db98b9f88\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">RandomForestRegressor</label><div class=\"sk-toggleable__content\"><pre>RandomForestRegressor(n_jobs=-1, random_state=42)</pre></div></div></div></div></div></div></div></div></div></div></div></div>" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 56 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "T_pgWdWVNRDG", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "3c8eff42-1db3-49e5-f438-3a0d51e4369f" | |
}, | |
"source": [ | |
"print(\"train error: %0.3f, test error: %0.3f\" %\n", | |
" (median_absolute_error(y_train, model_grid_search.predict(X_train)),\n", | |
" median_absolute_error(y_test, model_grid_search.predict(X_test))))" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"train error: 0.120, test error: 0.201\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Fmxbr-noNRDL", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "085498bf-40b1-49a9-8249-27c759c90e7b" | |
}, | |
"source": [ | |
"print(f\"The best set of hyperparameters is: \"\n", | |
" f\"{model_grid_search.best_params_}\")" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"The best set of hyperparameters is: {'regressor__max_depth': 5, 'regressor__max_features': 3, 'regressor__min_samples_leaf': 3}\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "28wkVwv2NRDU" | |
}, | |
"source": [ | |
"rf_best = Pipeline([\n", | |
" ('preprocess', preprocessing),\n", | |
" ('regressor', RandomForestRegressor(\n", | |
" n_estimators=100, max_depth=5, max_features=3, min_samples_leaf=3, n_jobs=-1, random_state=42))\n", | |
"])" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "uvSX8FmHNRDZ", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 192 | |
}, | |
"outputId": "13ded2fb-db7f-45cc-fbdc-d305a2a587a6" | |
}, | |
"source": [ | |
"rf_best.fit(X_train, y_train)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(max_depth=5, max_features=3,\n", | |
" min_samples_leaf=3, n_jobs=-1,\n", | |
" random_state=42))])" | |
], | |
"text/html": [ | |
"<style>#sk-28126540-c632-420e-a8f5-7a3690bd7822 {color: black;background-color: white;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 pre{padding: 0;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-toggleable {background-color: white;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-estimator:hover {background-color: #d4ebff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-item {z-index: 1;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel-item {display: flex;flex-direction: column;position: relative;background-color: white;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-parallel-item:only-child::after {width: 0;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;position: relative;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-label label {font-family: monospace;font-weight: bold;background-color: white;display: inline-block;line-height: 1.2em;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-label-container {position: relative;z-index: 2;text-align: center;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-28126540-c632-420e-a8f5-7a3690bd7822 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-28126540-c632-420e-a8f5-7a3690bd7822\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(max_depth=5, max_features=3,\n", | |
" min_samples_leaf=3, n_jobs=-1,\n", | |
" random_state=42))])</pre><b>Please rerun this cell to show the HTML repr or trust the notebook.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"47a0de4f-104f-43c2-b2e3-2fc40484c8cf\" type=\"checkbox\" ><label for=\"47a0de4f-104f-43c2-b2e3-2fc40484c8cf\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">Pipeline</label><div class=\"sk-toggleable__content\"><pre>Pipeline(steps=[('preprocess',\n", | |
" ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot',\n", | |
" OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler',\n", | |
" StandardScaler())]),\n", | |
" ['sepal length (cm)',\n", | |
" 'petal length (cm)',\n", | |
" 'petal width (cm)'])])),\n", | |
" ('regressor',\n", | |
" RandomForestRegressor(max_depth=5, max_features=3,\n", | |
" min_samples_leaf=3, n_jobs=-1,\n", | |
" random_state=42))])</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"68debd82-1f1a-4c5e-b30d-b0697be4f2ed\" type=\"checkbox\" ><label for=\"68debd82-1f1a-4c5e-b30d-b0697be4f2ed\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">preprocess: ColumnTransformer</label><div class=\"sk-toggleable__content\"><pre>ColumnTransformer(transformers=[('cat',\n", | |
" Pipeline(steps=[('onehot', OneHotEncoder())]),\n", | |
" ['class']),\n", | |
" ('num',\n", | |
" Pipeline(steps=[('scaler', StandardScaler())]),\n", | |
" ['sepal length (cm)', 'petal length (cm)',\n", | |
" 'petal width (cm)'])])</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"73cfdbb8-8855-4068-9878-1e164f3cfc4e\" type=\"checkbox\" ><label for=\"73cfdbb8-8855-4068-9878-1e164f3cfc4e\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">cat</label><div class=\"sk-toggleable__content\"><pre>['class']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"4ce30119-fcc1-409f-b3dc-2478709da57e\" type=\"checkbox\" ><label for=\"4ce30119-fcc1-409f-b3dc-2478709da57e\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">OneHotEncoder</label><div class=\"sk-toggleable__content\"><pre>OneHotEncoder()</pre></div></div></div></div></div></div></div></div><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"e74a3cc8-c602-4c9e-8126-ede33edfd876\" type=\"checkbox\" ><label for=\"e74a3cc8-c602-4c9e-8126-ede33edfd876\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">num</label><div class=\"sk-toggleable__content\"><pre>['sepal length (cm)', 'petal length (cm)', 'petal width (cm)']</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"6a932f69-dc77-49cb-8cdc-8322919f761b\" type=\"checkbox\" ><label for=\"6a932f69-dc77-49cb-8cdc-8322919f761b\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">StandardScaler</label><div class=\"sk-toggleable__content\"><pre>StandardScaler()</pre></div></div></div></div></div></div></div></div></div></div><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"a8fca666-57a5-464a-ab01-ae535f2719b5\" type=\"checkbox\" ><label for=\"a8fca666-57a5-464a-ab01-ae535f2719b5\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">RandomForestRegressor</label><div class=\"sk-toggleable__content\"><pre>RandomForestRegressor(max_depth=5, max_features=3, min_samples_leaf=3,\n", | |
" n_jobs=-1, random_state=42)</pre></div></div></div></div></div></div></div>" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 60 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "5Xryqy6lNRDh", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "75870e34-e3dd-4dd1-f57e-ceea9c4fd52d" | |
}, | |
"source": [ | |
"print(\"train error: %0.3f, test error: %0.3f\" %\n", | |
" (median_absolute_error(y_train, rf_best.predict(X_train)),\n", | |
" median_absolute_error(y_test, rf_best.predict(X_test))))" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"train error: 0.120, test error: 0.201\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "qNNb1Y20NRDp", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 441 | |
}, | |
"outputId": "679e4a78-d7d5-4d2b-8636-23e306b180e0" | |
}, | |
"source": [ | |
"boxplot_pi(rf_best, X_test, y_test)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [], | |
"metadata": { | |
"id": "NOux8KgNaFvu" | |
}, | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"!pip install -q shap" | |
], | |
"metadata": { | |
"id": "GQ_CIt4pEKSK", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "45286a48-e62c-486a-80e5-1014d30e1bf5" | |
}, | |
"execution_count": 28, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/572.6 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K \u001b[91m━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m92.2/572.6 kB\u001b[0m \u001b[31m2.6 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K \u001b[91m━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m225.3/572.6 kB\u001b[0m \u001b[31m3.8 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m \u001b[32m563.2/572.6 kB\u001b[0m \u001b[31m5.9 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m572.6/572.6 kB\u001b[0m \u001b[31m5.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", | |
"\u001b[?25h" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"import shap" | |
], | |
"metadata": { | |
"id": "48_o0D-fEIEz" | |
}, | |
"execution_count": 29, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"X_train.shape" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "tcUndYYWZU1l", | |
"outputId": "1835ee52-6093-4e0e-e880-e05cdc8eb499" | |
}, | |
"execution_count": 30, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"(112, 4)" | |
] | |
}, | |
"metadata": {}, | |
"execution_count": 30 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"X100 = shap.utils.sample(X_train, 100)" | |
], | |
"metadata": { | |
"id": "o4s6zh4xEzye" | |
}, | |
"execution_count": 31, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.partial_dependence(\n", | |
" \"sepal length (cm)\", knn.predict, X_train, ice=False,\n", | |
" model_expected_value=True, feature_expected_value=True\n", | |
")" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 474 | |
}, | |
"id": "T3-Mbq-gEZTG", | |
"outputId": "077c6eb4-577e-4f8a-e2c8-4b06837a5b4c" | |
}, | |
"execution_count": 32, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 640x480 with 4 Axes>" | |
], | |
"image/png": "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36rGXN/fqqhJkyZFbitq/Kzc9/ffY6hduXIFVlZWJl0Npc/9VgZpaWnYvHkzBg0aBEtLy2L3rSyf39LcszmLiIhAYGCg1rpatWrB3d0dN2/eLPK4yvI+G0KVTuQCAwOxf/9+rcd///tfAMCSJUuwePHiQo977rnn4OjoiA0bNmjWZWVlYePGjejVq1eFxK4Pfe+3MA8ePMDhw4fRunXr8gq33KxduxZyuRxBQUGFbjfX97coJd1vYczl/X3ppZcQGxurVdoYGxuL8PBwtGzZstBj/Pz80KBBA633FwDWrVuHbt26wcrKqjxDLhN97rcwz549w9atW03+/c31119/ISUlBcOGDStx38ry+S3NPRfGXD7DderUQXh4uNa627dvIyYmpthxDivL+2wQxq7bNTWFtRnr2rWrqFu3rtZ+c+fOFQqFQixatEjs3btXDBgwQDg4OIibN29WdMhlosv9rlmzRgwbNkz89ttvYt++feLnn38WdevWFS4uLuLWrVvGCFtn3bt3F/PmzRPbtm0T27ZtE2+88YaQJElMnjxZs09len/1uV9zfn+VSqVo3bq1qFu3rli7dq3YsmWLaNu2rXBzc9O0gRs7dqyQy+Vax61Zs0ZIkiQ+++wzsX//fjFhwgRhYWEhjh49aozb0Jk+93vw4EHRp08fsXz5crFv3z7x22+/iaCgIGFlZSVOnDhhrFsplb59+wpvb2+tscZyVabPb36luWdz/gwvWrRIABBvv/222L17t1i7dq1o2rSpqFatmoiJidHsV1nfZ0NgIvcvhSU2ISEhok6dOlr7qVQqMWfOHFGrVi2hUChEcHCwyf8RKIwu93vs2DHRuXNn4e7uLiwsLIS7u7sYPHiwuHLlihEiLp23335b1K9fX9jY2AiFQiGaNWsmvv32W60vx8r0/upzv+b8/gohxNOnT8WIESOEk5OTsLGxEd27dxeXL1/WbB89erQo7Dfrzz//LOrVqyesrKxEs2bN9GpQbgylvd/r16+LHj16iOrVqwtLS0vh7OwsevXqZTZJXFxcnLCyshIffvhhodsr0+c3V2nv2Zw/wyqVSvzwww8iICBA2NnZierVq4uXX35ZREZGau1XGd9nQ5GEKGbEPSIiIiIyWVW6jRwRERGROWMiR0RERGSmmMgRERERmSkmckRERERmiokcERERkZliIkdERERkppjI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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"# compute the SHAP values for the linear model\n", | |
"explainer = shap.Explainer(knn.predict, X_train)\n", | |
"shap_values = explainer(X_train)" | |
], | |
"metadata": { | |
"id": "ksgts-UgFlLL" | |
}, | |
"execution_count": 33, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.beeswarm(shap_values)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 346 | |
}, | |
"id": "281B69ZbGYbJ", | |
"outputId": "518a8000-6773-42b9-ada9-94c13cafd677" | |
}, | |
"execution_count": 34, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stderr", | |
"text": [ | |
"No data for colormapping provided via 'c'. Parameters 'vmin', 'vmax' will be ignored\n" | |
] | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 800x310 with 2 Axes>" | |
], | |
"image/png": "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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.bar(shap_values)" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 354 | |
}, | |
"id": "HdRqxDO2ntoe", | |
"outputId": "35e4cdd5-6d58-498a-f43e-b507c12ab46d" | |
}, | |
"execution_count": 35, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 800x350 with 1 Axes>" | |
], | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAygAAAFRCAYAAACfRonRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABU/klEQVR4nO3dd3gU1dvG8e+mEtJDAoSW0IsUlV6UIr1KFRQJIqIIvipFBZEiSBQFRRQbVTDIj6rSNYAovYjSQZogLYGQAIkEyLx/rFlZNp2EDHB/rmuvZM+cOfOckzDskzNnxmIYhoGIiIiIiIgJOOV2ACIiIiIiIsmUoIiIiIiIiGkoQREREREREdNQgiIiIiIiIqahBEVERERERExDCYqIiIiIiJiGEhQRERERETENJShy1zMMg7i4OPRIHxEREZG7nxIUuetdunQJX19fLl26lNuhiIiIiMhtUoIiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIipqEERURERERETEMJioiIiIiImIZLbgcgkm1OX4DL13M7ChEREZHM83QHX8/cjsIUlKDIvaP/V3AiLrejEBEREcmc4vlhaj8lKP9SgiL3jmPR8GdUbkchIiIiIrdBa1BERERERMQ0lKCIiIiIiIhpKEERERERERHTUIIiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIipqEERURERERETMMltwMQEREREZEccvEKvPY1LNoM8VehRmkYHwYPl0x/3y2HYMZq2HwI/jgO12+AsTD1+mcvwvA5sGQ7nL8EBf3gscowtV+mQr5nZ1D69OmDxWJh9+7d6dZt3rw5FovlDkSVvSpVqkRQUFC2tDV8+HA8PDz4+++/s6W9zFqzZg1OTk4sWLAgV44vIiIics9JSoJWYyDiF+jfAsb1gHOx0GA4HDqV/v7LtsOUSLBYoESBtOueiIbqr8Hy3+CFpjC5D/RuDFGxmQ7bdDMo4eHhxMTEMG7cuNwOxRTuxHhERUXx0Ucf0b17dwoXLpxjx0lLw4YNqVOnDq+//jrt27fHyemezZ1FRERE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wNsnt6MQERERyTxP99yOwDSUoMi9IzgAfJSgiIiIiNzNtAZFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIipqEERURERERETEMJioiIiIiImIYSFBERERERMQ0lKCIiIiIiYhpKUERERERExDSUoIiIiIiIiGkoQREREREREdNQgiIiIiIiIqahBEVERERERExDCYqIiIiIiJiGS24HIJJtTl+Ay9dzOwoRERGRjPN0B1/P3I7CVJSgyL2j/1dwIi63oxARERHJmOL5YWo/JSi3UIIi945j0fBnVG5HISIiIiK3QWtQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIipqEERURERERETEMJioiIiIiImIYSFBERERERMQ0lKCIiIiIiYhpKUERERERExDSUoIiIiIiIiGkoQREREREREdNQgiIiIiIiIqahBEVEREREREzDJbcDEBERERGRbHbxCrz2NSzaDPFXoUZpGB8GD5dMf98th2DGath8CP44DtdvgLEw9fpnL8LwObBkO5y/BAX94LHKMLVflkK/Z2dQdu/ejcVioU+fPunWnT9/PhaLhfDw8DsQWfYJDw/HYrEwf/78227r+PHj5M2bl7fffjsbIsu8pKQkSpQoQYsWLXLl+CIiIiL3jKQkaDUGIn6B/i1gXA84FwsNhsOhU+nvv2w7TIkEiwVKFEi77oloqP4aLP8NXmgKk/tA78YQFZvl8O/ZBOVesWbNGvr06cPu3btz9Dj9+/fHx8eHN954I0ePkxonJyeGDBnCypUrWbNmTa7EICIiInJXaPAW9JyU+vb5G2HDAZjRH0Y8Af1awNq3wdkJRsxNv/2+zSF2Fmx7H5pUSbvu85+DizP8Nh7e6gK9HoNhneH7oZnr002UoJjcpk2b+Oqrr9i/f3+OHePAgQMsW7aMsLAw3Nzccuw46XnuuecICgpixIgRuRaDiIiIyF1v/kYo4Acdav1XFuQLXerAd1vg6rW09y/gBx7u6R9n/0lYvgMGt4N83vBPIly7fjuRA0pQBBg3bhwAL774Yi5HAm3btmXDhg0cOXIkt0MRERERuTv9dhQeLgFOt3zUr1Hauh7lYAYu88qIn/6wfi3gB4+NAI+u1leL0XDsXJab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lC9fnsaNGxMUFMSJEyfYvn27bcF8Zrm5ufHWW28xcOBAHnroITp37oyLiwvz58/Hx8eHqKgou1mThg0bYrFY+OCDDzh//jxeXl6ULVuWFi1aZFtfW7RowZQpUzh8+LDd3bz69+/PggULWLVqFQ888ABNmzYlICCAAwcOsH79+gwtws+shQsX4uzsTFhYWLa3LSIiInJPWDs6/Tr+XjCln/WVlmMpLGdoUBGMhRmPp2s96yubZDhB8fHxoVu3bmzYsIFt27Zx9epV/Pz8qFevHu+8847t0i6AoUOHUrFiRd577z3mzZtHfHw83t7eFC1alP79+zssPA8KCuKbb75hwIAB/PTTT7i4uPDYY4/x5Zdf4ufnZ6s3fvx4DMNg3rx5jB07Fl9fX5o3b07//v2pXbv2bQ/GrZYvX864ceOYOXOm7e5kfn5+lC1blmHDhmW53QEDBuDm5sb777/PZ599hq+vLx07duShhx6ib9++dpe6lS9fnvDwcCZNmsTIkSO5ceMGzZo1y9YEZfDgwUyZMoXJkyczfvx4u20//fQTI0aMICIigi+++AKLxUKBAgWy9fg3+/7776lTpw4lSpTIkfZFRERExNwsRk6u3s6AoKAgChYsyK5du3IzDFMYOHAgEyZMYOnSpbZbJ98p7dq1Y+PGjZw4ccLhOTN3ypdffskLL7xAZGQkDRs2zPB+cXFx+Pr6EluqDz5/5sylcCIiIiLZrmxh62VX/972V6xydgW2pCghIYFr167ZlcXExDBr1iy8vLwy9eE8u3z88cdcvnyZd999944fG6xrWsLDw2nWrFmu9F9EREREzCHTd/GS27dr1y5at25NixYtKFGiBKdOnWLRokVERUUxfPhwh2fC3AkhISEONy+4k5ycnLJ84wERERERuXcoQckFhQsXpmLFiixdupTY2FicnZ0JCQlh2LBh/N///V9uhyciIiIikmtyPUHJqdvnmlnhwoVZvXp1bochIiIiImI6WoMiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIippHrT5IXyTahgeDslttRiIiIiGRM8fy5HYEpKUGRe8cnz4G3T25HISIiIpJxnu65HYHpKEGRe0dwAPgoQRERERG5m2kNioiI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4+PJmzdvpvZdsGABQUFBbNmyxXZ9IsCsWbNSrO/v78+LL77Iiy++CFhnX8aMGcP777/Phx9+aKvXvHlz2xqU/fv3U716dd555x1eeOGFzHZPRERE7hadakOtMvDMJ7D3JAR6w+QVcCMJRnW1r/vYCOvXY1/8V3b8HMz62fr9tj+tX8fMs34NCYKnG1i/n/0zfL4KHq9hfeL8pQRYuRN+/N2aCDWqlFM9lCxQgnIfevzxx/noo4946aWXmDp1qt22pKQknG69F/lNkpOSpKQk2/eJiYmMGzfOoe7JkycpUqSIXVnt2rUBuHDhQqp1ypQpg4+PD5cuXcpkz0REROSu4uxsXX8yeCZ8vNR6167qpaxPni9bOP39j56Dt+bYlyW/r//AfwlKvfLWxfpzfoGzsdbbCpctBBOegZd0x1CzUYJyHxo7diyrVq1i2rRp7Ny5k4YNG+Lh4cGePXs4cuQIO3fuTHXfli1bMmnSJGrWrEmbNm2IjY3lu+++s5tNSVahQgXKly9P1apVKVy4MKdOnWLu3Lm4uLjQq1cvAAYMGMCGDRto0KABJUqUwDAMli9fzqlTp+jevXtODYGIiIjcCWtHp1/H3wum9LO+0nLzzEmyBhUztii+Win436D064kpKEG5D3l4eLB582Zef/11vv/+eyZOnIirqyuFChWiW7duae47fvx4DMNg3rx5jB07Fl9fX5o3b07//v1tsyPJevbsSWRkJLNnzyYhIQEfHx8eeOABRowYQf369QHo0qUL586dY+XKlcTGxuLm5kahQoV4++23efPNN3NsDERERETEnHSbYbnr6TbDIiIiOSwjtxkWySa6i5eIiIiIiJiGEhQRERERETENJSgiIiIiImIaSlBERERERMQ0lKCIiIiIiIhpKEERERERERHTUIIiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIabjkdgAi2SY0EJzdcjsKERGRe0/x/LkdgdxHlKDIveOT58DbJ7ejEBERuTd5uud2BHKfUIIi947gAPBRgiIiIiJyN9MaFBERERERMQ0lKCIiIiIiYhpKUERERERExDSUoIiIiIiIiGkoQREREREREdNQgiIiIiIiIqahBEVERERERExDCYqIiIiIiJiGEhQRERERETENJSgiIiIiImIaSlBERERERMQ0lKCIiIiIiIhpKEERERERERHTUIIiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGi65HYBItjl9AS5fz+0oREREsoenO/h65nYUInecEhS5d/T/Ck7E5XYUIiIit694fpjaTwmK3JeUoMi941g0/BmV21GIiIiIyG3QGhQRERERETENJSgiIiIiImIaSlBERERERMQ0lKCIiIiIiIhpKEERERERERHTUIIiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER03DJ7QBERERE5A66eAVe+xoWbYb4q1CjNIwPg4dLpr/vlkMwYzVsPgR/HIfrN8BY6FjvRDRMi4Sl2+HQaXB2gorFYFgnaFwl+/sk95T7dgalT58+WCwWdu/enaPHCQoKolKlShmqGx4ejsViYf78+Rmqn519WL9+Pc7OzkRERNx2W1lx6dIl/P39ef7553Pl+CIiIveFpCRoNQYifoH+LWBcDzgXCw2Gw6FT6e+/bDtMiQSLBUoUSL3ed1vgvUVQKhjGPAlvdYZLCdBkFEyPzL7+yD3prktQwsPDee2113I7jDtm/vz59OnTh7Nnz+bocV566SXKly/Pk08+maPHSY23tzcvvPACM2fO5PDhw7kSg4iIyF2vwVvQc1Lq2+dvhA0HYEZ/GPEE9GsBa9+2znCMmJt++32bQ+ws2PY+NEljJqRhRfjrS4h41XqMl1vDhnAoVxiGf5v5fsl95a5LUCIiIpg+fXpuh5Fhx48fZ8uWLVnef9WqVXz11VdERUVlY1T2li5dym+//cb//d//5dgxMuL1118HYPjw4bkah4iIyD1r/kYo4Acdav1XFuQLXepYZz2uXkt7/wJ+4OGe/nEeKAaBPvZl7q7Q8mE4ed46myKSirsuQbnb5M2bFw8Pj9wOI00fffQR3t7ehIWF5Wocfn5+1K9fnx9++IH4+PhcjUVEROSe9NtReLgEON3yEbBGaet6lIMZuMzrdpy5CHndIa9bzh5H7mo5kqAkr6WYM2cOffr0ITAwEFdXV0JCQvjoo49S3OfHH3+kbt26eHt74+rqSqFChejXrx+JiYm2OkFBQezevZvo6GgsFovtlbxmY8WK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+YbY2FiCg4MZP368w/NIunfvTvHixRkxYgRLly4lLi4OT09PgoOD6dGjh92MRXh4OMeOHSMyMpLFixdjGAZFihShU6dOLF++nL59+7JkyRIWLFhAsWLF+PDDD9mxY8dtJyht2rRh3LhxuLm52T3npE2bNjg7O3Pjxg3atm2bobbGjx+Pt7c3X375JRMnTiRfvnz07t0bPz8/hxsFtG3blpdffpmIiAiGDRtGUlISzz33XLYlKGC9+9aKFSuYMWOG7ZkuYJ2t2rx5M6+//jrff/89EydOtD1EMyOX42XWxYsXWbduHR07drxjl5SJiIiIiLlYjIyspM6k8PBwhg4dyrx58zJ0e2DJfVWrVuWff/5hz549uRbD66+/zsSJE9mzZw8lS5bM8H5xcXH4+voSW6oPPn9m7I5vIiIipla2sPWyq5tu+ytyv8jRNShy95g0aRL79++3Xa52p126dIkvvviCsLCwTCUnIiIiInJvyfXbDIs51KlTJ8u3Yc4O3t7eXLx4MdeOLyIiIiLmoBkUERERERExjRxJUIYMGYJhGFp/IiIiIiIimaIZFBERERERMQ0lKCIiIiIiYhpKUERERERExDSUoIiIiIiIiGkoQREREREREdNQgiIiIiIiIqahBEVERERERExDCYqIiIiIiJiGEhQRERERETENl9wOQCTbhAaCs1tuRyEiInL7iufP7QhEco0SFLl3fPIcePvkdhQiIiLZw9M9tyMQyRVKUOTeERwAPkpQRERERO5mWoMiIiIiIiKmoQRFRERERERMQwmKiIiIiIiYhhIUERERERExDSUoIiIiIiJiGkpQRERERETENJSgiIiIiIiIaShBERERERER01CCIiIiIiIipqEERURERERETMMltwMQuV2GYQAQFxeXy5GIiIiISFq8vb2xWCxp1lGCIne98+fPA1C0aNFcjkRERERE0hIbG4uPj0+adZSgyF0vICAAgL/++gtfX99cjsZc4uLiKFq0KCdOnEj3ZHC/0dikTmOTOo1N6jQ2qdPYpE5jk7p7dWy8vb3TraMERe56Tk7WpVS+vr731D/g7OTj46OxSYXGJnUam9RpbFKnsUmdxiZ1GpvU3Y9jo0XyIiIiIiJiGkpQRERERETENJSgyF3P3d2dESNG4O7untuhmI7GJnUam9RpbFKnsUmdxiZ1GpvUaWxSdz+PjcVI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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"shap.plots.waterfall(shap_values[5])" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 386 | |
}, | |
"id": "JVJpQANrFz56", | |
"outputId": "3e4ba5af-29eb-4046-f148-f8f1bb65c27a" | |
}, | |
"execution_count": 36, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": [ | |
"<Figure size 800x350 with 3 Axes>" | |
], | |
"image/png": "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b4HRr+3bt9OlSxdWrlzJDTfcUO7Xsnz5crKysqhbty7e3t6kpaURFRXFuXPn6NGjhy2RjImJ4ddff6VTp0506dLFdvypU6fYsWOH7VlfsbGxRERE0KBBAwYOHFiiqY7l6eqIQkRERERESiQ8PLzQqYVjx47ll19+IT09HYATJ05wyy230LFjR7788ktbu3r16jF27FhmzpzJkSNH7M4xZ84cgoOD6devX/lexN9CQkIwmUzs37+f9evXs2fPHry9vRkwYECh13gpb29vTCYT4eHhbNy4kdOnT9O1a1cGDBhw1SReoJEvEREREZEqJSkpiZCQECZOnMiDDz5Y4uMzMzNp3LgxL730Es8880w5ROi8rp40UERERERErpi/vz8vvPACkyZNIi8vr8THT58+HXd3dx577LFyiM65aeRLRERERESkAmjkS0REREREpAIo+RIREREREakASr5EREREREQqgJIvERERERGRCqDkS0REREREpAIo+RIRERERqeKSk5O57rrrSE5ONjoUp6bkS0RERESkiktOTmbt2rVKvgym5EtERERERKQCKPkSERERERGpAEq+REREREREKoCSLxERERGRKs7Pz4+wsDD8/PyMDsWpmSwWi8XoIEREREREpHz99ddftGrVyugwnJqSLxERERERJ5CTk4Obm5vRYTg1TTsUEREREXECe/fuNToEp6fkS0REREREpAIo+RIRERERcQJ16tQxOgSnp+RLRERERMQJuLu7Gx2C01PyJSIiIiLiBI4fP250CE5PyZeIiIiIiEgFUKl5EREREREnkJ6ejqenp9FhODWNfImIiIiIOIFTp04ZHYLT01PWREREpOqIjIGTCUZHIWKMRrWgSe3L7k5OTq7AYKQwSr5ERESkajidCO3HQ0a20ZGIGGNwJ1j86mV3e3h4VGAwUhhNOxQREZGqISVdiZc4txW7ITX9srtbtmxZgcFIYZR8iYiIiIhUBdm5sHz3ZXeHh4dXYDBSGCVfIiIiIiJVgZsLLNhsdBRSBCVfIiIiIiJVQU4e/LwNcnIL3R0UFFTBAcmllHyJiIiIiFQVyWmw4UChu/SML+Mp+RIRERERqSrcXGHhn4XuOnbsWAUHI5dS8iUiIiIiUlXk5MK8zWCxGB2JFELJl4iIiIhIVXLiLIQfLbC5efPmFR+L2FHyJSIiIiJSlbi6wKKt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hg0bsnbtWh5++GG7hLq41yPf+vXrWbhwIbfffju33347q1atYtasWZjNZr7++usir/PUqVMcPHgQPz8/WrRoYbcvMzOTN954gw8//BBPT0+GDx9OgwYNOH78OFu3bmXv3r00bdrULo5FixZx1113UaNGDX7++Wdef/11UlJSmDNnDiEhITz11FPs3LmTZcuWcc8997BmzRq7PoOCgggJCWHr1q2kpqbi4+Pj2A0TkbLn5mqtXHgxdzfwcLeONl0sIdU62uVZDTJzKCAjy/rds5pjfd/0NpjdoXUDa/VD78tMA1q9F/r/n3Wa4Q3toENj6wibXF5OLizYDF88Ai6qKSZyqUvfD0nFMzz5On78OMuWLbP97OnpSY8ePRz+5Vi2bBmnTjk2BaNTp0506dLF4djatWvHokWLMJlM5Obm8vHHH/PCCy8wfvx4VqxYAcD06dP59ddfeeGFF3j//fdtxx45coTbbruNl156iQceeIAWLVpw66238vHHHxMaGsrzzz9v11fz5s3Ztm0b3t4X5vJbLBa++OILnnnmGT766CO++OILh2MvysaNG/n888/p0qUL69evtyWkKSkpPPLII/z444+sWbOG6667znZMcnIy//rXv3jpJesi8PPnzzN69Gjmzp3LypUrGThwIAkJCXz66ackJiby3Xffce+99wKQkJDAyJEjWb58ue18xb0e+Y4dO8amTZtslQoPHz7M0KFDmTlzJp988kmRCUxiYiKnTp2iUaNGBUbU1q9fz2effYafnx/h4eHUr1/fts9isWC5ZFpRdHS0XRy33HILt9xyCx988AGPP/44n332GQBnz55lxIgRrFq1yjZqmM/Pz49atWqRk5NDREQEnTt3vmzsIlLOerWCNW8Vvn3kJdVhGz9qLQWfngUehfxv0/x30pWe5Vjfa/Zav/+20/pg4L2TITUDPltq3y42CVb9PfNh3ib41x2w4g1o/qQKbhQlLhnCj8E1TYyOROSqc/r0aUJCQowOw6kZ/rFQ7dq1GTx4MAMHDqRbt254eXmRmZnp8GhWjx49GDx4sENfJc32X375ZdubdldXV4YNG0br1q1ZvXo1qampJCQksGLFCkwmE6NGjeLEiRO2Lzc3Nzp27Mj58+fZtGlTsX25u7vbEq/s7GxiY2M5efIkrVq1onbt2g6dwxEWi4VFixaRnJzMmDFjOH36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1cPHx4fs7GyOHz9OTEwMQUFBBabbbdmyxTZ6VK9ePcCa0BRm8+bNuLu7F1hXczllvebro48+Ytq0afTv35/mzZtTrVo1Nm3axIYNG+jYsaNtDdO//vUvtm7dyn//+182bdrEDTfcgJ+fH9HR0Wzbto1z585x/Phxu3M3atSIvn37cs899+Dv78+SJUvYv38/d911l60EemhoKG3atGH27NlkZ2fTrl07IiIiWLx4MUFBQRw5cqTMrtXHx4eJEydy++23M3LkSL7++mtbYnjkyBE2bNhA3759C1Q7dMSdd97J//73P9asWUO3bt0YMGAAR48e5ZdffqFhw4ZER0fb1juZzWZCQ0NZs2YNo0aN4oYbbsDDw4MhQ4ZQs2bZVJ/r3LkzLVq04JdffuHjjz+2ew3effddbr/9dh577DHmzp1L9+7dyczMZPv27dSsWZOffvqpTGLId+rUKXbv3k3Lli0rR5n53DwY1r30x695q/g2NXzgqyetX0U5Oq3w7aHBBcvIX2pk7+JL5YuIiDiBSwdKpOKVKPmqV68e586d4+DBg2RmZmIymfD396dr1660a9fONnpTGeWPaP3xxx8sXryYvLw8ateuzdNPP83//d//2drVrFmTxYsX8/777zN37lymTp1KTk4ONWrUIDQ0tEDJdICRI0diMpmYMWMGp0+fpnr16jz77LO89957tjZ16tRh5syZvPDCC6xcuZJFixbRoEED3n77bfbu3Vvow4yvRJcuXVizZg0TJkzg999/Z82aNbi6ulKzZk26d+9uV0a/JKpXr87s2bN59tln+e2335g0aRLBwcF8+umnzJo1i+joaDw9PW3tX331VU6cOMG6detYtmwZFosFX19f24jglapXrx6DBw9m8uTJdqOPYH3218qVK3n99dfZsGEDq1evxtPTkyZNmjB27Ngy6f9i69ev59ChQ/znP/8p83OXizrVoZNjH4aIiIjI1e/i6n5iDJOlvKslOLEff/yRkSNH8sYbb9glcM4oLi6OG264gcjISFJTU0tUpOJKRURE0K9fP3r16lXmo1mOSktLY+jQoYSHh3PkyBGHptYWyevuoh9CfKXcXOGRG+GzR8qvDxEREalQu3bt0povg5XtohYR7B+QDNZ1bAsWLGDfvn306dOnQhMvsJa9f/DBB5k3bx4HDhyo0L7zrVy5krVr1/Lee+9deeJVEXJyYVg3o6MQERERqVIq7zxBuWqNHz+ezZs3069fP/z9/QkPD2fZsmW4u7vbTbWsSG+++SZvvvmmIX0D3HrrrYUWmrlq+Zihb+keii0iIiJXp/znzIpxlHxJmQsLC2Pr1q3MmDGD8+fPYzab6d69Ox988AEdO3Y0OjwpjpsLDOkM1dyLbysiIiKVRmRkZOUo+lWFac2XSGVU3mu+fnwWRlxbfucXERGRCqc1X8bTmi8RsefmAjd1MjoKERERKWO+vr5Gh+D0lHyJyAUuJriuLfhVgqIgIiIiUiL169c3OgSnp+RLRC6wWOCOMKOjEBERkXLw119/GR2C01PyJSIXWIBbuxodhYiIiEiVpORLRC7oFAL1AoyOQkRERMpBgwYNjA7B6Sn5EhErFxe4o4fRUYiIiEg5yc3NNToEp6fkS0Ss8vJgWHejoxAREZFycurUKaNDcHpKvkTEqlEtaK3pCCIiIiLlRcmXiFif7TU8DEwmoyMRERGRchIaGmp0CE5PyZeIQI6mHIqIiFR1R44cMToEp6fkS0SghjeEtTA6ChERESlHaWlpRofg9JR8iTg7NxfrqJerq9GRiIiISDny9vY2OgSnp+RLxNnl5MGwbkZHISIiIuWsUaNGRofg9JR8iVRGzeqW3bk8q8GNHcrufCIiInJV2r9/v9EhOD03owMQkVL44132r95EmzZtrvxc1dzA0+PKzyMiIiIiRVLyJVIZ+XhSs3tbCAoyOhIRERGpJOrVq2d0CE5P0w5FKimTnsklIiIiJaD3DsZT8iVSSZ08edLoEERERKQS0XsH4yn5EhERERERqQAmi8ViMToIESm5zMxMPDxUKENEREQco/cOxtPIl0gldfz4caNDEBERkUpE7x2Mp+RLpJJKTU01OgQRERGpRPTewXhKvkQqKbPZbHQIIiIiUonovYPxtOZLpJLKycnBzU2P6hMRERHH6L2D8TTyJVJJ7d271+gQREREpBLRewfjKfUVuYrl5uZy8ODBQvcdPnxYFYtERETEYXrvUL5atGiBq6trkW2UfIlcxQ4ePEibNm2MDkNEREREirF//35at25dZBut+RK5il1u5Ov06dP069eP33//nTp16lz2+NTUVLp168aWLVvw8fEpz1ClnOleVg26j1WH7mXVoXtZdRh9Lx0Z+VLyJVIJnThxgoYNG3L8+HEaNGhw2XbJycn4+/uTlJSEn59fBUYoZU33smrQfaw6dC+rDt3LqqMy3EsV3BAREREREakASr5EREREREQqgJIvkUrIz8+Pvn37Fjuk7uHhwRtvvKHKRlWA7mXVoPtYdeheVh26l1VHZbiXWvMlIiIiIiJSATTyJSIiIiIiUgGUfImIiIiIiFQAJV8iIiIiIiIVQMmXiIiIiIhIBVDyJVKJREREMGrUKFq3bo2/vz9eXl60atWKZ599llOnTjl8niVLltCzZ0+8vb0JCAjgzjvv5MiRI+UYuVzsSu9jYmIin3zyCQMGDKBhw4Z4enrSsmVLHnnkEY4fP14BVyD5yupv8mIjRozAZDLRtm3bMo5WilJW9zInJ4f//Oc/dOrUCW9vb/z9/enUqRPTpk0rx+jlYmVxLy0WC7NmzaJnz57UrFkTX19fQkNDefPNN0lOTi7nK5CipKWlERISgslkYty4cQ4fd7W893Gr8B5FpNROnDjBqVOnuO2222jQoAFubm7s2bOH//73v/z444/s2rWLoKCgIs8xf/58hg8fTocOHZg0aRJJSUlMnjyZXr16sW3bNurVq1dBV+O8rvQ+/vnnnzz33HPccMMNjBs3jpo1a7J3716mTZvGTz/9xB9//EGbNm0q8IqcV1n8TV7s119/Ze7cuXh6epZj1FKYsriXWVlZ3HrrraxevZpRo0bx2GOPkZOTQ2RkJMeOHaugK5GyuJevvvoq7777Lv369eONN97A3d2dNWvW8MYbb7BkyRI2bdqEyWSqoCuSi73++uvExcWV6Jir6r2PRUQqvZ9++skCWN5///0i22VlZVnq1atnCQ4OtqSkpNi279y50+Li4mJ5+OGHyztUKYKj9/HIkSOWqKioAttXrFhhASx33HFHeYUoDnL0Xl4sJSXF0rBhQ8tTTz1ladSokSU0NLQcIxRHleRevvrqqxZXV1fL77//XgGRSUk5ei+zs7MtXl5elk6dOllyc3Pt9o0aNcoCWHbu3FmOkcrlbN++3eLq6mr58MMPLYDlySefLPaYq+29j6YdilQBjRo1AqzT0Yqydu1aYmJieOihh/Dx8bFtv+aaa7juuuuYPXs22dnZ5RqrXJ6j97Fx48Y0bdq0wPb+/fsTEBDA3r17yyU+cZyj9/Jir7zyCrm5ubz99tvlFZaUgqP38vz583zyyScMHTqU66+/HovFQkpKSkWEKA5y9F5mZ2eTnp5OnTp1cHGxf6ucP0Li7e1dPkHKZeXm5vLwww8zaNAgbr/9doePu9re+yj5EqmEMjIyiI+P58SJEyxfvpxHH30UgMGDBxd53NatWwEICwsrsK9Hjx4kJydz8ODBsg9YClXa+3g5SUlJpKSkULt27bIMUxxwpfdyy5YtTJkyhY8//hg/P7/yDFWKUdp7uX79elJSUujcuTPPPPMMfn5++Pn5UatWLV5++WVycnIqIny5SGnvpaenJ3369OG3337j/fffJyoqiqNHj/Ltt9/y+eefc++999K8efOKuAS5yMcff8xff/3FlClTSnTc1fbeR8mXSCX01VdfUatWLRo2bMjAgQM5d+4c33//Pb179y7yuJiYGADq169fYF/+tpMnT5Z9wFKo0t7Hy3nnnXfIzs7mgQceKONIpThXci9zcnJ46KGHGDBgAHfddVcFRCtFKe29jIiIAGDy5MnMmzePiRMnMnv2bHr27Mm///1vHnzwwYoIXy5yJX+X//vf/+jXrx8vvfQSzZs3p0mTJowdO5bx48czc+bMCoheLnbkyBHeeOMNXn/9dRo3blyiY6+29z4quCFSCQ0bNoxWrVqRmprKzp07+fnnn4mPjy/2uLS0NAA8PDwK7DObzXZtpPyV9j4WZu7cuXzwwQcMGjSIMWPGlHGkUpwruZeTJk0iKiqKhQsXlm+Q4pDS3sv8KYYJCQns27ePli1bAnDXXXdx/fXXM3PmTF566SVat25drvHLBVfyd+nh4UGTJk24//77uemmmwCYN28eb7/9NmazmVdeeaU8Q5dLPPbYY4SEhPDss8+W+Nir7b2Pki+RSqhBgwY0aNAAsP7P5Y477qBr166kpaXxr3/967LHeXl5AZCZmVlgX0ZGhl0bKX+lvY+XWrJkCaNGjaJz587Mnj1bFbgMUNp7GRUVxZtvvsmrr75KSEhIRYUrRSjtvcyvUNmjRw9b4pXv/vvvZ82aNaxZs0bJVwUq7b1MS0ujZ8+edOrUiR9//NG2/e677+buu+/m9ddfZ/jw4QXus5SP77//nhUrVrBu3Trc3d1LfPzV9t5H0w5FqoD27dvTsWNHPv/88yLb5S8ULmx4PX9bYcPyUjEcvY8X++2337j99tsJDQ1l+fLlWi90lXD0Xj733HMEBARw2223ERUVZfvKyckhKyuLqKioUj8vTMqGo/cy/01+nTp1CuyrW7cuULICLFL2HL2Xc+fOJTIykjvvvLPAvjvvvJO8vDw2bNhQXmHKRTIzM3n22WcZPHgwderUsf0bmf/ohqSkJKKiojh37txlz3G1vfdR8iVSRaSnp5OQkFBkm65duwKwadOmAvs2b96Mn58fLVq0KJf4xDGO3Md8v/32m21azcqVK6lRo0Y5Rycl4ci9PHbsGDExMYSGhtK8eXPb18mTJ4mMjKR58+Y8/PDDFRSxXI4j97Jbt26A9RlTl8rfVpJnvkn5cORe5r8hz83NLbAvv3CKCqhUjPT0dOLi4li8eLHdv5HXXXcdYB0Va968OV999dVlz3G1vffRtEORSuT06dOFfqq6evVq9u7da/vHCODUqVMkJSURHBxsG07v27cvdevW5auvvmL8+PG2kqu7d+9mzZo1jBkzplRD+lIyV3ofAZYvX85tt91Gy5YtWbVqFQEBARURulziSu/lBx98UOgntk888QRms5mPPvrINmoi5etK72WTJk3o1asXf/zxBzt27KBTp06A9Q38l19+iZubGwMGDKiQa3F2V3ov8x9SP2PGjAJFcGbMmAFceEMv5cvb25s5c+YU2B4XF8cTTzzBoEGDePDBB2nfvj1QOd77mCwWi6XCehORK3Lbbbdx6tQp+vXrR6NGjcjIyGD79u38+OOPeHl5sWbNGq655hoARo8ezYwZM1i9erXd/2jmzJnDiBEj6NChAw8//DDJycl8/PHHmEwmtm/frmmHFeBK7+O2bdvo3bs3FouF9957j5o1axbo4957763AK3JeZfE3WZjGjRvj4+OjZ7ZVoLK4lzt37qR3795Uq1aNp59+msDAQGbPns3GjRt5/fXXmTBhgjEX52Su9F7m5ubSs2dPtmzZQu/evW3PlJo/fz7r16/nzjvv5KeffjLo6gTg6NGjNGnShCeffNKu9HyleO9ToY90FpErMnv2bMvNN99sadCggcXDw8NiNpstLVu2tIwbN85y7Ngxu7YPPPCABbCsXr26wHl++eUXS/fu3S2enp6W6tWrW+644w5LVFRUBV2FXOl9nD59ugUo8ksqRln9TV6qUaNGltDQ0HKKWgpTVvdy9+7dlltuucXi7+9v8fDwsFxzzTWW6dOnV8xFiMViKZt7mZycbPnXv/5ladmypaVatWoWDw8PS9u2bS3vv/++JTs7uwKvRgpz5MgRC2B58skn7bZXhvc+GvkSERERERGpACq4ISIiIiIiUgGUfImIiIiIiFQAJV8iIiIiIiIVQMmXiIiIiIhIBVDyJSIiIiIiUgGUfImIiIiIiFQAJV8iIiIiIiIVQMmXiIiIiIhIBXAzOgARZzV69GhmzJgBQGhoKHv37rXbn5eXx7vvvsv06dOJjo4mODiYQ4cOMXHiRL755hv279+Pi0vJPz+ZOnUq7777LpGRkXh4eNjtmzx5MuPHj7f9HBcXR82aNUtxdSUXGxvLwYMHOXXqFCkpKXh4eFC7dm26dOlC9erVHTpHXFwcW7du5cyZMwAEBQXRvXv3AteQlJRka5eRkYGPjw/NmjWjQ4cOuLld+GcxISGB7du3Ex8fT1paGm5ubtSoUYMOHTrQqFGjMrt2ERERcQ4a+RIpB8uWLcNkMl32a+bMmQDUrFmT7777jvfee6/AOT7//HNef/11br/9dr755humTZtGcnIy77//Pi+++GKBxGvChAm4uLhw4MCBAucaO3Ysrq6uLF68mNGjR5OVlcW0adMKtBs0aBDfffcdt912Wxm9Eo7bvXs3R44coV69evTs2ZPWrVtz6tQp5s+fT0JCQrHHx8fH8/PPP5OSkkLnzp3p1KkTycnJ/PLLL5w7d87WLjU1lQULFhAbG0toaCg9e/akdu3abN++nVWrVtmdMzU1lezsbFq0aEHPnj3p1KkTYL2/hb3OIiIiIkXRyJdIOdi9ezcA//nPf6hRo0aB/QMHDuT333/H29ube++9t9BzTJ8+nRtvvJFJkybZtk2ePJmcnBxGjhxZoP3jjz/Oe++9x+TJk+0Sq08//ZTp06fz9ttvc/PNNwPwwAMP8NFHH/HUU09hMplsbVu1akWrVq2IiopiwYIFpbv4UmrXrh39+vXD1dXVtq1p06bMnTuXXbt20a9fvyKP37p1K25ubgwdOhSz2QxA8+bNmT17Nlu2bGHAgAEAREZGkpWVxa233kpAQAAArVu3xmKxEBkZSWZmpm1EMDg4mODgYLt+QkNDWbBgAeHh4bRu3brMrl9ERESqPiVfIuUgPDwcf39/xo0bZ5fcOCojI4Pdu3czYcIEu+3Tp0/n1ltvtSUXFwsKCmLUqFF89913vPPOO9SsWZO1a9fy7LPPcscdd/DKK6/Y2t51111MnDiR1atXF5vUVJQ6deoU2Obv70+NGjXsRq4u5/Tp0zRs2NDutfHy8qJu3bpER0eTnZ2Nu7s7WVlZtn0X8/LywmQyFTuV08XFBW9vb+Li4hy4KhEREZELNO1QpBzs3r2bjh07lirxevDBB/H09CQ3N5dXX30Vk8lEWFgYR44cITw8nP79+1/22PHjx5Oens7UqVM5fvw4d911F61ateLbb7+1a9e5c2cCAgJYtGhRieMrTF5eHhkZGQ59WSwWh89rsVhIT08vNNm8VG5urt2oWT43Nzfy8vJsUxfr1asHwNq1a4mPjyc1NZVDhw6xf/9+QkNDcXd3L3CO7OxsMjIySE5OJjw8nOPHj1O/fn2Hr0NEREQENPIlUuaysrKIiIjg2muvJT4+vsB+f3//Qt/g5xs1ahTu7u5MmzaNTz75hICAABo1asQff/wBYFt3VJjQ0FAGDBjAZ599xsKFC8nOzmbhwoX4+PgUaNupUyc2btxYiiss6PTp0/z6668OtR05ciS+vr4OtY2KiuL8+fN07ty52LbVq1cnNjaWvLw82+hVbm4usbGxAJw/fx6Ahg0b0qVLF3bu3MmxY8dsx3fs2JGuXbsWeu7Nmzfb1niZTCYaN25Mr169HLoGERERkXxKvkTK2P79+8nOzmbq1KlMnTq1wP6IiAhatGhx2eP79evHqlWr8Pb2Zty4cbZE4rXXXgOgSZMmRfb/7LPPMmjQIGJjY1myZAlNmzYttF1ISAjfffedo5dVpMDAQAYPHuxQW09PT4fanTt3jg0bNlC7du0iX698bdq0YcOGDaxbt44OHTpgsVjYsWMHaWlpgDURy+fr60vdunVp0qQJZrOZ6Ohodu7ciaenJ23bti1w7nbt2tGkSRPS0tI4fPgwFovF7nwiIiIijlDyJVLGwsPDAfj2228LnZrWvHlzh84RGhpqt/7o7NmzuLm5FTqKdbH8EZqQkBAGDhx42XY1atQgPT2dtLS0AuufSsrDw4MGDRpc0TkulpaWxtKlS6lWrRr9+/d3qKR+mzZtSE1NJTw8nIMHDwJQq1YtOnTowM6dO22jjVFRUaxbt44RI0bYXssmTZpgsVjYsmULzZo1KzDNsXr16rZy9y1atGDx4sUsW7aMYcOGlWpqqYiIiDgnJV8iZWz37t24ubkxcuRIqlWrVupzFJU4Xc7KlSt5/vnnad68OZGRkSxfvtxW5e9S+WuvyiJ5yM3NJTMz06G2ZrO5yGQqKyuLpUuX2ioSent7OxxHt27d6NChA4mJiVSrVo2AgAC2bNkCWKd7gnVksmbNmgWS2EaNGnHw4EHi4+OLTSRDQkJYv349SUlJDj+DTERERETJl0gZCw8Pp0mTJqVOvM6dO8fx48dp166d3fbAwEBycnJISUkpdM3U4cOHGTFiBB07dmTlypW0aNGCjz/++LLJV2JiIl5eXg5PAyzKmTNnymTNV05ODr/99htJSUncfPPNhZbpL46Hh4dd5cSTJ0/i7e1tS5LS09MLPFwarEVDAIcKguTk5ADYKieKiIiIOELJl0gZCw8Pp0ePHld0PED79u3ttrdq1QqAI0eOFNiXmprK0KFDcXd3Z8GCBfj7+/PEE08wYcIEDhw4UOjzqI4cOVJmz6kqizVfeXl5rFq1ijNnzjBw4EBq165daLucnBxSU1Mxm83FVkE8dOgQcXFx9OjRwzbC5+/vz4kTJzh37pzdqNWhQ4cwmUy2Z3+BNVG7NN68vDwiIyNxdXUtVXIoIiIizkvJl0gZOn36NLGxsbZEqTTyH9B8aYIVFhYGwLZt2+z2WSwW7rvvPiIiIli9erVtytwTTzxR6EOX8+3YsYNRo0aVOs6LlcWar82bN3Ps2DGCg4PJzMwkMjLSbn/+WrnY2Fh+/fVXOnXqRJcuXWz7T506xY4dO6hfvz5ms5nY2FgiIiJo2LChXRGNDh06cPz4cX755RdCQ0Px8PAgOjqa48eP06pVK7tpjuvXrycrK4u6devi7e1NWloaUVFRnDt3jh49ehRZtVJERETkUkq+RMpQfuIUFxfH999/X2B/hw4dCkwnvFR4eDj169e3G4EB6zqjtm3bsnLlSsaOHWvb/n//938sXLiQadOm2ZU/r1WrFvfeey/fffcd7777LoGBgbZ927dvJyEhgaFDh5bqOsvD2bNnAYiOjiY6OrrA/uIKlXh7e2MymQgPDyc7OxtfX1+6du1Ku3bt7NaY1a1bl6FDh7J9+3b27dtHZmamrW2HDh3szhkSEkJERAT79+8nIyODatWqUbNmTbp160bjxo2v/KJFRETEqSj5EilD+VMGp0+fzvTp0wvsnzlzpkPJ16WjXvnGjh3L66+/bpsOt2DBAt566y0ee+wxHnnkkQLtx48fz9dff83UqVN55ZVXbNvnzJlDcHAw/fr1K8nllatbbrnFoXb16tUr9Fr9/PwcnvoYFBTETTfdVGy7Zs2a0axZM4fOKSIiIlIck8WR1eUiUuZGjx7N77//zo4dO3Bzc3Ooal5SUhIhISFMnDiRBx98sFT9ZmZm0rhxY1566SWeeeYZu30ZGRmkpqYyceJEJk2aRFxcHDVr1ixVPyIiIiJir/iH54hIuTl+/Di1atXi2muvdai9v78/L7zwApMmTbJV5yup6dOn4+7uzmOPPVZg39SpU6lVqxaTJk0q1blFRERE5PI08iVikP379xMTEwOAj4/PFVVILCvHjx8nIiLC9nPfvn1VVEJERESkjCj5EhERERERqQCadigiIiIiIlIBlHyJiIiIiIhUACVfIiIiIiIiFUDJl4iIiIiISAVQ8iUiIiIiIlIBlHyJiIiIiIhUACVfIiIiIiIiFUDJl4iIiIiISAVQ8iUiIiIiIlIB/h+ksDTItrLowAAAAABJRU5ErkJggg==\n" | |
}, | |
"metadata": {} | |
} | |
] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment