{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "\n", "\n", "# In-Depth: Decision Trees and Random Forests\n", "\n", "\n", "\n", "![image.png](images/author.png)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "notes" } }, "source": [ "\n", "\n", "*This notebook contains an excerpt from the [Python Data Science Handbook](http://shop.oreilly.com/product/0636920034919.do) by Jake VanderPlas; the content is available [on GitHub](https://github.com/jakevdp/PythonDataScienceHandbook).*\n", "\n", "*The text is released under the [CC-BY-NC-ND license](https://creativecommons.org/licenses/by-nc-nd/3.0/us/legalcode), and code is released under the [MIT license](https://opensource.org/licenses/MIT). If you find this content useful, please consider supporting the work by [buying the book](http://shop.oreilly.com/product/0636920034919.do)!*" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Previously\n", "\n", "- simple generative classifier (naive Bayes; see **In Depth: Naive Bayes Classification**) \n", "- powerful discriminative classifier (support vector machines; see **In-Depth: Support Vector Machines**).\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "\n", "\n", "\n", "## *Random Forests*\n", "- Another powerful & non-parametric algorithm \n", "- Random forests are an example of an **ensemble method**, \n", " - meaning that it relies on aggregating the results of an ensemble of simpler estimators.\n", "\n", "The sum can be greater than the parts: \n", "- a majority vote among a number of estimators can end up being better than any of the individual estimators doing the voting!\n", "\n", "We will see examples of this in the following sections." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Motivating Random Forests: Decision Trees" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:48:09.851888Z", "start_time": "2021-05-21T08:48:08.134416Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns; sns.set()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Random forests are an example of an *ensemble learner* built on decision trees.\n", "- For this reason we'll start by discussing decision trees.\n", "\n", "Decision trees are extremely intuitive ways to classify or label objects: \n", "- you simply ask a series of questions designed to zero-in on the classification.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "For example, if you wanted to build a decision tree to classify an animal you come across while on a hike, you might construct the one shown here:\n", "\n", "![](./img/figures/05.08-decision-tree.png)\n", "\n", "[figure source in Appendix](06.00-Figure-Code.ipynb#Decision-Tree-Example)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "![image.png](images/tree2.png)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "![image.png](images/tree3.png)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The binary splitting makes this extremely efficient: in a well-constructed tree, \n", "- each question will cut the number of options by approximately half, \n", "- very quickly narrowing the options even among a large number of classes.\n", "\n", "The trick comes in deciding which questions to ask at each step.\n", "\n", "Using axis-aligned splits in the data: \n", "- each node in the tree splits the data into two groups using a cutoff value within one of the features.\n", "\n", "Let's now look at an example of this." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## 案例分析:今天是否打球⛹?\n", "- 一组14天天气数据(指标包括outlook,temperature,humidity,windy),并已知这些天气是否打球(play)。\n", "- 如果给出新一天的气象指标数据:sunny,cool,high,TRUE,判断一下会不会去打球。" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:52:57.042254Z", "start_time": "2021-05-21T08:52:56.634924Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/opt/anaconda3/lib/python3.9/site-packages/openpyxl/worksheet/_reader.py:312: UserWarning: Unknown extension is not supported and will be removed\n", " warn(msg)\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outlooktemperaturehumiditywindyplayy
0SunnyhothighFalseno0
1SunnyhothighTrueno0
2OvercasthothighFalseyes1
3RainymildhighFalseyes1
4RainycoolnormalFalseyes1
5RainycoolnormalTrueno0
6OvercastcoolnormalTrueyes1
7SunnymildhighFalseno0
8SunnycoolnormalFalseyes1
9RainymildnormalFalseyes1
10SunnymildnormalTrueyes1
11OvercastmildhighTrueyes1
12OvercasthotnormalFalseyes1
13RainymildhighTrueno0
\n", "
" ], "text/plain": [ " Outlook temperature humidity windy play y\n", "0 Sunny hot high False no 0\n", "1 Sunny hot high True no 0\n", "2 Overcast hot high False yes 1\n", "3 Rainy mild high False yes 1\n", "4 Rainy cool normal False yes 1\n", "5 Rainy cool normal True no 0\n", "6 Overcast cool normal True yes 1\n", "7 Sunny mild high False no 0\n", "8 Sunny cool normal False yes 1\n", "9 Rainy mild normal False yes 1\n", "10 Sunny mild normal True yes 1\n", "11 Overcast mild high True yes 1\n", "12 Overcast hot normal False yes 1\n", "13 Rainy mild high True no 0" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "df = pd.read_excel('./data/play.xlsx')\n", "df['y'] = [1 if i=='yes' else 0 for i in df['play']]\n", "df" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Entropy\n", "\n", "样本集合总样本数为$D$,其中共有$K$类样本,其中第$k$类样本所占比例为$p_k (k = 1, 2, ...K)$,则$D$个样本的信息熵$E(D)$为:\n", "\n", "$$E(D) = \\sum_{k=1}^{K} -P_k log_2{P_k}$$\n", "\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:55:00.607010Z", "start_time": "2021-05-21T08:55:00.601904Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "yes 9\n", "no 5\n", "Name: play, dtype: int64" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[\"play\"].value_counts()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "E0 = -9/14 * np.log2(9/14) - 5/14 * np.log2(5/14) = 0.9402859586706311" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Information Gains\n", "\n", "假定离散属性$a$有$V$个可能的取值$(a_1, a_2,...a_V)$。\n", "- 如果使用属性$a$对$D$个样本进行划分,则会产生$V$个分支节点。\n", "- 假设其中第$v$个分支节点包含$D_v$个样本,\n", "- 我们可以计算出$D_v$个样本的信息熵\n", "- 考虑到样本数越多的分支节点影响力越大,给分支节点赋予权重$D_v/D$\n", "- 可以计算使用属性$a$对$D$个样本进行划分可以获得的信息增益(information gain): $Gain(D, a) = Ent(D) - \\sum_{v=1}^{V} \\frac{D_v}{D} Ent(D_v) $" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:55:10.817303Z", "start_time": "2021-05-21T08:55:10.803887Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "windy y\n", "False 0 2\n", " 1 6\n", "True 0 3\n", " 1 3\n", "Name: play, dtype: int64" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.groupby(['windy', 'y']).count()['play']" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- E1 = -6/8 * np.log2(6/8) - 2/8 * np.log2(2/8) = 0.8112781244591328\n", "- E2 = -3/6 * np.log2(3/6) - 3/6 * np.log2(3/6) = 1.0 \n", "- Gain (wind) = 0.940 - (8/14) * 0.811 - (6/14) * 1.0 = 0.048" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2020-05-28T09:35:45.970695Z", "start_time": "2020-05-28T09:35:45.962255Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "humidity y\n", "high 0 4\n", " 1 3\n", "normal 0 1\n", " 1 6\n", "Name: play, dtype: int64" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.groupby(['humidity', 'y']).count()['play']" ] }, { "cell_type": "markdown", "metadata": { "ExecuteTime": { "end_time": "2020-05-28T09:35:57.456017Z", "start_time": "2020-05-28T09:35:57.450908Z" }, "slideshow": { "slide_type": "fragment" } }, "source": [ "- E1 = -3/7 * np.log2(3/7) - 4/7 * np.log2(4/7) = 0.9852281360342515\n", "- E2 = -6/7 * np.log2(6/7) - 1/7 * np.log2(1/7) = 0.5916727785823275\n", "- Gain (humidity) = 0.940 - (7/14) * 0.985 - (7/14) * 0.592 = 0.151" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:56:49.017994Z", "start_time": "2021-05-21T08:56:49.014999Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def entropy(freq_list):\n", " e = 0\n", " for i in freq_list:\n", " p = i/np.sum(freq_list)\n", " e += -p*np.log2(p) \n", " return e" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:56:57.768448Z", "start_time": "2021-05-21T08:56:57.761353Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "0.9709505944546686" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "freq_list = df[df['Outlook']=='Sunny']['play'].value_counts()\n", "entropy(freq_list)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:57:02.172791Z", "start_time": "2021-05-21T08:57:02.168207Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def information_gain(feature_name, y_name):\n", " freq_list0 = df[y_name].value_counts()\n", " n = np.sum(freq_list0)\n", " e0 = entropy(freq_list0)\n", " info_gain = e0\n", " for i in df[feature_name].unique():\n", " freq_list_i = df[df[feature_name]==i][y_name].value_counts()\n", " e_i = np.sum(freq_list_i)/n * entropy(freq_list_i)\n", " info_gain -= e_i\n", " return info_gain" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:57:07.407460Z", "start_time": "2021-05-21T08:57:07.376594Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "{'Outlook': 0.24674981977443933,\n", " 'temperature': 0.02922256565895487,\n", " 'humidity': 0.15183550136234164,\n", " 'windy': 0.048127030408269544}" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "features = ['Outlook', 'temperature', 'humidity', 'windy']\n", "{i:information_gain(i, 'play') for i in features}" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "![image.png](images/tree4.png)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Creating a decision tree\n", "\n", "Consider the following two-dimensional data, which has one of four class labels:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2021-05-21T08:58:06.801613Z", "start_time": "2021-05-21T08:58:06.429728Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.datasets import make_blobs\n", "\n", "X, y = make_blobs(n_samples=300, centers=4,\n", " random_state=0, cluster_std=1.0)\n", "plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap='rainbow');" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "A simple decision tree built on this data will iteratively split the data along one or the other axis \n", "- according to some quantitative criterion, and \n", "- at each level assign the label of the new region according to a majority vote of points within it.\n", "\n", "This figure presents a visualization of **the first four levels** of a decision tree classifier for this data:" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "![](./img/figures/05.08-decision-tree-levels.png)\n", "[figure source in Appendix](06.00-Figure-Code.ipynb#Decision-Tree-Levels)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Notice\n", "\n", "after the each split\n", "\n", "- Nodes that contain all of one color will not be splitted again. \n", "- At each level *every* region is again split along one of the two features." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "This process of fitting a decision tree to our data can be done in Scikit-Learn with the ``DecisionTreeClassifier`` estimator:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:28:33.131962Z", "start_time": "2021-05-22T01:28:33.127990Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeClassifier\n", "tree = DecisionTreeClassifier().fit(X, y)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Let's write a quick utility function to help us visualize the output of the classifier:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:29:00.667638Z", "start_time": "2021-05-22T01:29:00.659981Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "def visualize_classifier(model, X, y, ax=None, cmap='rainbow'):\n", " ax = ax or plt.gca()\n", " \n", " # Plot the training points\n", " ax.scatter(X[:, 0], X[:, 1], c=y, s=30, cmap=cmap,\n", " clim=(y.min(), y.max()), zorder=3)\n", " ax.axis('tight')\n", " ax.axis('off')\n", " xlim = ax.get_xlim()\n", " ylim = ax.get_ylim()\n", " \n", " # fit the estimator\n", " model.fit(X, y)\n", " xx, yy = np.meshgrid(np.linspace(*xlim, num=200),\n", " np.linspace(*ylim, num=200))\n", " Z = model.predict(np.c_[xx.ravel(), yy.ravel()]).reshape(xx.shape)\n", "\n", " # Create a color plot with the results\n", " n_classes = len(np.unique(y))\n", " contours = ax.contourf(xx, yy, Z, alpha=0.3,\n", " levels=np.arange(n_classes + 1) - 0.5,\n", " cmap=cmap, vmin = y.min(), vmax = y.max(),\n", " zorder=1)\n", "\n", " ax.set(xlim=xlim, ylim=ylim)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Now we can examine what the decision tree classification looks like:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:29:07.220468Z", "start_time": "2021-05-22T01:29:07.050118Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "visualize_classifier(DecisionTreeClassifier(), X, y)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "If you're running this notebook live, you can use the helpers script included in [The Online Appendix](06.00-Figure-Code.ipynb#Helper-Code) to bring up an interactive visualization of the decision tree building process:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:33:26.745981Z", "start_time": "2021-05-22T01:33:26.544713Z" }, "code_folding": [], "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "65212c312bdc4ca4958150a85f495911", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(Dropdown(description='depth', index=4, options=(1, 2, 3, 4, 5), value=5), Output()), _do…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# helpers_05_08 is found in the online appendix\n", "import helpers_05_08\n", "helpers_05_08.plot_tree_interactive(X, y);" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Notice that as the depth increases, we tend to get very strangely shaped classification regions; \n", "- for example, at a depth of five, there is a tall and skinny purple region between the yellow and blue regions.\n", "- It's clear that this is less a result of the true, intrinsic data distribution\n", "- It's more a result of the particular sampling or noise properties of the data.\n", "\n", "That is, this decision tree, even at only five levels deep, is clearly **over-fitting** our data." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Decision trees and over-fitting\n", "\n", "Such over-fitting turns out to be a general property of decision trees: \n", "- it is very easy to go too deep in the tree\n", " - to fit details of the particular data rather than the overall properties of the distributions they are drawn from.\n", "\n", "Another way to see this over-fitting is \n", "- to look at models trained on different subsets of the data\n", "\n", "for example, in this figure we train two different trees, each on half of the original data:" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "![](./img/figures/05.08-decision-tree-overfitting.png)\n", "[figure source in Appendix](06.00-Figure-Code.ipynb#Decision-Tree-Overfitting)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "It is clear that \n", "- in some places, the two trees produce consistent results \n", " - e.g., in the four corners\n", "- while in other places, the two trees give very different classifications \n", " - e.g., in the regions between any two clusters\n", " \n", "The key observation is that the inconsistencies tend to happen where the classification is less certain, \n", "> ### by using information from *both* of these trees, we might come up with a better result!" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "If you are running this notebook live, the following function will allow you to interactively display the fits of trees trained on a random subset of the data:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:38:59.306664Z", "start_time": "2021-05-22T01:38:59.107775Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "d7e53c9e83764bf78049eb80e7c2bfa1", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(Dropdown(description='random_state', options=(0, 100), value=0), Output()), _dom_classes…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# helpers_05_08 is found in the online appendix\n", "import helpers_05_08\n", "helpers_05_08.randomized_tree_interactive(X, y)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Just as using information from two trees improves our results, we might expect that using information from many trees would improve our results even further." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Ensembles of Estimators: Random Forests\n", "\n", "Multiple overfitting estimators can be combined to reduce the effect of this overfitting.\n", "This notion is called **bagging**.\n", "- an ensemble method (集成学习)\n", "\n", "- Bagging makes use of an ensemble (a grab bag, perhaps) of parallel estimators, \n", " - each of which over-fits the data, and \n", " - averages the results to find a better classification.\n", "\n", "An ensemble of randomized decision trees is known as a **random forest**.\n", "\n", "This type of bagging classification can be done manually using Scikit-Learn's ``BaggingClassifier`` meta-estimator, as shown here:" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:41:48.026527Z", "start_time": "2021-05-22T01:41:47.372175Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.tree import DecisionTreeClassifier\n", "from sklearn.ensemble import BaggingClassifier\n", "\n", "tree = DecisionTreeClassifier()\n", "bag = BaggingClassifier(tree, n_estimators=100, max_samples=0.8,\n", " random_state=1)\n", "\n", "bag.fit(X, y)\n", "visualize_classifier(bag, X, y)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "In this example, we have randomized the data by fitting each estimator with a random subset of 80% of the training points.\n", "\n", "In practice, decision trees are more effectively randomized by **injecting some stochasticity in how the splits are chosen**: \n", "- this way **all the data contributes to the fit each time**\n", "- but the results of the fit still have the desired randomness.\n", "- when determining which feature to split on, the randomized tree might select from among the **top several features**." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "You can read more technical details about these randomization strategies in the [Scikit-Learn documentation](http://scikit-learn.org/stable/modules/ensemble.html#forest) and references within.\n", "\n", "In Scikit-Learn, such an optimized ensemble of randomized decision trees is implemented in the ``RandomForestClassifier`` estimator, which takes care of all the randomization automatically.\n", "\n", "All you need to do is select a number of estimators, and it will very quickly (in parallel, if desired) fit the ensemble of trees:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:44:09.000192Z", "start_time": "2021-05-22T01:44:08.531819Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "\n", "model = RandomForestClassifier(n_estimators=100, random_state=0)\n", "visualize_classifier(model, X, y);" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We see that by averaging over 100 randomly perturbed models, we end up with an overall model that is much closer to our intuition about how the parameter space should be split." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Random Forest Regression\n", "\n", "In the previous section we considered random forests within the context of classification.\n", "\n", "Random forests can also be made to work in the case of regression (that is, continuous rather than categorical variables). \n", "- The estimator to use for this is the ``RandomForestRegressor``, and \n", "- the syntax is very similar to what we saw earlier.\n", "\n", "Consider the following data, drawn from the combination of a fast and slow oscillation:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:47:54.395486Z", "start_time": "2021-05-22T01:47:54.176752Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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p82yjA8++EBcvny52N7eLh4+fFhMJpNiR0eHeOjQITGdTos//OEPDf/u3Efmu3fvxqWXXorGxkZMmTIFS5cuxbZt25w2y3JaWlpw3333oa6uDn6/H21tbejv73faLFs4ceIENm3ahJ/85CdOm2Ibb7/9NpYtW4ZwOAy/349Nmzbh4osvdtosy8lms8jlckgmk8hkMshkMggEAk6bZRmvvPIKHnjgAbS2tgIA9u3bh7PPPhtz5syBz+fDihUrDPs3x1QT9XLs2DG0tLQU/t3a2op9+/Y5aJE9nHfeeYX///TTT9Hd3Y2XXnrJQYvs4+c//znuvvtuHDlyxGlTbOOzzz6D3+/HT37yExw5cgSXX3457rrrLqfNspypU6fizjvvRGdnJ+rr63HJJZdg4cKFTptlGQ8//HDRv9X829GjRw29N/eReS6XgyCcln4URbHo37XOwYMH8cMf/hD33nsvzjnnHKfNsZxXX30VX/rSlxCJRJw2xVay2Syi0Sg2bNiAl19+Gfv27cMf/vAHp82ynP379+P3v/893nvvPbz//vvweDx45plnnDbLNsz0b9w783A4jIGBgcK/BwYGCrcotc6ePXtw00034V//9V/xne98x2lzbOGNN97Arl278O1vfxu//OUv8e6772LDhg1Om2U5zc3NiEQimDlzJoLBIK688spJcQe6c+dORCIRNDU1oa6uDitXrsRf/vIXp82yDTP9G/fO/LLLLkM0GsXQ0BCSySTeeustLFmyxGmzLOfIkSO47bbb8Pjjj+Oaa65x2hzbePbZZ9HV1YXXX38dd9xxB77xjW9g/fr1TptlOVdccQV27tyJkZERZLNZvP/++2hvb3faLMuZN28edu/ejVOnTkEURbz77ru46KKLnDbLNi6++GJ88skn+Oyzz5DNZtHV1WXYv3GfM581axbuvvturFmzBul0Gtdddx3mz5/vtFmW88wzzyCVSuHRRx8tPHb99ddj1apVDlpFWMXFF1+MW265BTfccAPS6TQWLVqE7373u06bZTmLFy9Gb28vVq5cCb/fj4suughr16512izbCAQCePTRR3H77bcjlUqho6MD3/zmNw29F00aIgiCqAG4T7MQBEEQ5SFnThAEUQOQMycIgqgByJkTBEHUAOTMCYIgagBy5gRBEDUAOXOCIIgagJw5QRBEDfD/Afn1uZ+toy/hAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rng = np.random.RandomState(42)\n", "x = 10 * rng.rand(200)\n", "\n", "def model(x, sigma=0.3):\n", " fast_oscillation = np.sin(5 * x)\n", " slow_oscillation = np.sin(0.5 * x)\n", " noise = sigma * rng.randn(len(x))\n", "\n", " return slow_oscillation + fast_oscillation + noise\n", "\n", "y = model(x)\n", "plt.errorbar(x, y, 0.3, fmt='o');" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Using the random forest regressor, we can find the best fit curve as follows:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:48:26.253333Z", "start_time": "2021-05-22T01:48:25.769842Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.ensemble import RandomForestRegressor\n", "forest = RandomForestRegressor(200)\n", "forest.fit(x[:, None], y)\n", "\n", "xfit = np.linspace(0, 10, 1000)\n", "yfit = forest.predict(xfit[:, None])\n", "ytrue = model(xfit, sigma=0)\n", "\n", "plt.errorbar(x, y, 0.3, fmt='o', alpha=0.5)\n", "plt.plot(xfit, yfit, '-r');\n", "plt.plot(xfit, ytrue, '-y', alpha=1);" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Here the true model is shown in the smooth gray curve, while the random forest model is shown by the jagged red curve.\n", "\n", "As you can see, the non-parametric random forest model is flexible enough to fit the multi-period data, without us needing to specifying a multi-period model!" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example: Random Forest for Classifying Digits\n", "\n", "Earlier we took a quick look at the hand-written digits data (see **Introducing Scikit-Learn**).\n", "\n", "Let's use that again here to see how the random forest classifier can be used in this context." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:48:52.352586Z", "start_time": "2021-05-22T01:48:52.281085Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "dict_keys(['data', 'target', 'frame', 'feature_names', 'target_names', 'images', 'DESCR'])" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.datasets import load_digits\n", "digits = load_digits()\n", "digits.keys()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To remind us what we're looking at, we'll visualize the first few data points:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:48:58.910491Z", "start_time": "2021-05-22T01:48:57.016285Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# set up the figure\n", "fig = plt.figure(figsize=(6, 6)) # figure size in inches\n", "fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.05)\n", "\n", "# plot the digits: each image is 8x8 pixels\n", "for i in range(64):\n", " ax = fig.add_subplot(8, 8, i + 1, xticks=[], yticks=[])\n", " ax.imshow(digits.images[i], cmap=plt.cm.binary, interpolation='nearest')\n", " \n", " # label the image with the target value\n", " ax.text(0, 7, str(digits.target[i]))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We can quickly classify the digits using a random forest as follows:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:49:08.894525Z", "start_time": "2021-05-22T01:49:06.127304Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "Xtrain, Xtest, ytrain, ytest = train_test_split(digits.data, digits.target,\n", " random_state=0)\n", "model = RandomForestClassifier(n_estimators=1000)\n", "model.fit(Xtrain, ytrain)\n", "ypred = model.predict(Xtest)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We can take a look at the classification report for this classifier:" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:49:27.591794Z", "start_time": "2021-05-22T01:49:27.584149Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 1.00 0.97 0.99 38\n", " 1 0.98 0.98 0.98 43\n", " 2 0.95 1.00 0.98 42\n", " 3 0.98 0.96 0.97 46\n", " 4 0.97 1.00 0.99 37\n", " 5 0.98 0.96 0.97 49\n", " 6 1.00 1.00 1.00 52\n", " 7 1.00 0.96 0.98 50\n", " 8 0.94 0.98 0.96 46\n", " 9 0.98 0.98 0.98 47\n", "\n", " accuracy 0.98 450\n", " macro avg 0.98 0.98 0.98 450\n", "weighted avg 0.98 0.98 0.98 450\n", "\n" ] } ], "source": [ "from sklearn import metrics\n", "print(metrics.classification_report(ypred, ytest))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "And for good measure, plot the confusion matrix:" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "ExecuteTime": { "end_time": "2021-05-22T01:50:32.470606Z", "start_time": "2021-05-22T01:50:32.068896Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.metrics import confusion_matrix\n", "mat = confusion_matrix(ytest, ypred)\n", "sns.heatmap(mat.T, square=True, annot=True, fmt='d', cbar=False)\n", "plt.xlabel('true label')\n", "plt.ylabel('predicted label');" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We find that a simple, untuned random forest results in a very accurate classification of the digits data." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Summary of Random Forests\n", "\n", "This section contained a brief introduction to the concept of *ensemble estimators*, and in particular the random forest – an ensemble of randomized decision trees.\n", "Random forests are a powerful method with several advantages:\n", "\n", "- Both training and prediction are very fast, because of the simplicity of the underlying decision trees. \n", " - In addition, both tasks can be straightforwardly parallelized, because the individual trees are entirely independent entities.\n", "- The multiple trees allow for a probabilistic classification: \n", " - a majority vote among estimators gives an estimate of the probability (accessed in Scikit-Learn with the ``predict_proba()`` method).\n", "- The nonparametric model is extremely flexible, and can thus perform well on tasks that are under-fit by other estimators.\n", "\n", "A primary disadvantage of random forests is that the results are not easily interpretable: \n", "- if you would like to draw conclusions about the *meaning* of the classification model, random forests may not be the best choice." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "![image.png](images/end.png)\n", "\n" ] } ], "metadata": { "anaconda-cloud": {}, "celltoolbar": "Slideshow", "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.7" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 1, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 4 }