{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "i_f5u2x9nn6I",
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"\n",
"\n",
"# Lecture 12: Tree-Based Algorithms\n",
"\n",
"### Applied Machine Learning\n",
"\n",
"__Volodymyr Kuleshov__ Cornell Tech"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Part 1: Decision Trees\n",
"\n",
"We are now going to see a different way of defining machine models called *decision trees*."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Review: Components of A Supervised Machine Learning Problem\n",
"\n",
"At a high level, a supervised machine learning problem has the following structure:\n",
"\n",
"$$ \\underbrace{\\text{Training Dataset}}_\\text{Attributes + Features} + \\underbrace{\\text{Learning Algorithm}}_\\text{Model Class + Objective + Optimizer } \\to \\text{Predictive Model} $$"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# The UCI Diabetes Dataset\n",
"\n",
"To explain what is a decision tree, we are going to use the UCI diabetes dataset that we have been working with earlier.\n",
"\n",
"Let's start by loading this dataset."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
".. _diabetes_dataset:\n",
"\n",
"Diabetes dataset\n",
"----------------\n",
"\n",
"Ten baseline variables, age, sex, body mass index, average blood\n",
"pressure, and six blood serum measurements were obtained for each of n =\n",
"442 diabetes patients, as well as the response of interest, a\n",
"quantitative measure of disease progression one year after baseline.\n",
"\n",
"**Data Set Characteristics:**\n",
"\n",
" :Number of Instances: 442\n",
"\n",
" :Number of Attributes: First 10 columns are numeric predictive values\n",
"\n",
" :Target: Column 11 is a quantitative measure of disease progression one year after baseline\n",
"\n",
" :Attribute Information:\n",
" - age age in years\n",
" - sex\n",
" - bmi body mass index\n",
" - bp average blood pressure\n",
" - s1 tc, T-Cells (a type of white blood cells)\n",
" - s2 ldl, low-density lipoproteins\n",
" - s3 hdl, high-density lipoproteins\n",
" - s4 tch, thyroid stimulating hormone\n",
" - s5 ltg, lamotrigine\n",
" - s6 glu, blood sugar level\n",
"\n",
"Note: Each of these 10 feature variables have been mean centered and scaled by the standard deviation times `n_samples` (i.e. the sum of squares of each column totals 1).\n",
"\n",
"Source URL:\n",
"https://www4.stat.ncsu.edu/~boos/var.select/diabetes.html\n",
"\n",
"For more information see:\n",
"Bradley Efron, Trevor Hastie, Iain Johnstone and Robert Tibshirani (2004) \"Least Angle Regression,\" Annals of Statistics (with discussion), 407-499.\n",
"(https://web.stanford.edu/~hastie/Papers/LARS/LeastAngle_2002.pdf)\n"
]
}
],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"%matplotlib inline\n",
"import matplotlib.pyplot as plt\n",
"plt.rcParams['figure.figsize'] = [12, 4]\n",
"from sklearn import datasets\n",
"\n",
"# Load the diabetes dataset\n",
"diabetes = datasets.load_diabetes(as_frame=True)\n",
"print(diabetes.DESCR)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We can also look at the data directly."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
age
\n",
"
sex
\n",
"
bmi
\n",
"
bp
\n",
"
s1
\n",
"
s2
\n",
"
s3
\n",
"
s4
\n",
"
s5
\n",
"
s6
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
0.038076
\n",
"
0.050680
\n",
"
0.061696
\n",
"
0.021872
\n",
"
-0.044223
\n",
"
-0.034821
\n",
"
-0.043401
\n",
"
-0.002592
\n",
"
0.019908
\n",
"
-0.017646
\n",
"
\n",
"
\n",
"
1
\n",
"
-0.001882
\n",
"
-0.044642
\n",
"
-0.051474
\n",
"
-0.026328
\n",
"
-0.008449
\n",
"
-0.019163
\n",
"
0.074412
\n",
"
-0.039493
\n",
"
-0.068330
\n",
"
-0.092204
\n",
"
\n",
"
\n",
"
2
\n",
"
0.085299
\n",
"
0.050680
\n",
"
0.044451
\n",
"
-0.005671
\n",
"
-0.045599
\n",
"
-0.034194
\n",
"
-0.032356
\n",
"
-0.002592
\n",
"
0.002864
\n",
"
-0.025930
\n",
"
\n",
"
\n",
"
3
\n",
"
-0.089063
\n",
"
-0.044642
\n",
"
-0.011595
\n",
"
-0.036656
\n",
"
0.012191
\n",
"
0.024991
\n",
"
-0.036038
\n",
"
0.034309
\n",
"
0.022692
\n",
"
-0.009362
\n",
"
\n",
"
\n",
"
4
\n",
"
0.005383
\n",
"
-0.044642
\n",
"
-0.036385
\n",
"
0.021872
\n",
"
0.003935
\n",
"
0.015596
\n",
"
0.008142
\n",
"
-0.002592
\n",
"
-0.031991
\n",
"
-0.046641
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" age sex bmi bp s1 s2 s3 \\\n",
"0 0.038076 0.050680 0.061696 0.021872 -0.044223 -0.034821 -0.043401 \n",
"1 -0.001882 -0.044642 -0.051474 -0.026328 -0.008449 -0.019163 0.074412 \n",
"2 0.085299 0.050680 0.044451 -0.005671 -0.045599 -0.034194 -0.032356 \n",
"3 -0.089063 -0.044642 -0.011595 -0.036656 0.012191 0.024991 -0.036038 \n",
"4 0.005383 -0.044642 -0.036385 0.021872 0.003935 0.015596 0.008142 \n",
"\n",
" s4 s5 s6 \n",
"0 -0.002592 0.019908 -0.017646 \n",
"1 -0.039493 -0.068330 -0.092204 \n",
"2 -0.002592 0.002864 -0.025930 \n",
"3 0.034309 0.022692 -0.009362 \n",
"4 -0.002592 -0.031991 -0.046641 "
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Load the diabetes dataset\n",
"diabetes_X, diabetes_y = diabetes.data, diabetes.target\n",
"\n",
"# create a binary risk feature\n",
"diabetes_y_risk = diabetes_y.copy()\n",
"diabetes_y_risk[:] = 0\n",
"diabetes_y_risk[diabetes_y > 150] = 1\n",
"\n",
"# Print part of the dataset\n",
"diabetes_X.head()"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Decision Trees: Intuition\n",
"\n",
"Decision tress are machine learning models that mimic how a human would approach this problem.\n",
"1. We start by picking a feature (e.g., age)\n",
"2. Then we *branch* on the feature based on its value (e.g, age > 65?)\n",
"3. We select and branch on one or more features (e.g., is it a man?)\n",
"4. Then we return an output that depends on all the features we've seen (e.g., a man over 65)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Decision Trees: Example\n",
"\n",
"Let's first see an example on the diabetes dataset."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We will train a decision tree using it's implementation in `sklearn`."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"from matplotlib import pyplot as plt\n",
"from sklearn.tree import DecisionTreeClassifier, plot_tree\n",
"\n",
"# create and fit the model\n",
"clf = DecisionTreeClassifier(max_depth=2)\n",
"clf.fit(diabetes_X.iloc[:,:4], diabetes_y_risk)\n",
"\n",
"# visualize the model\n",
"plot_tree(clf, feature_names=diabetes_X.columns[:4], impurity=False)\n",
"print('')"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Decision Rules\n",
"\n",
"Let's now define a decision tree a bit more formally. The first important concept is that of a rule.\n",
"* A decision rule $r : \\mathcal{X} \\to \\{\\text{true}, \\text{false}\\}$ is a partition of the feature space into two disjoint regions, e.g.:\n",
"$$ r(x) = \\begin{cases}\\text{true} & \\text{if } x_\\text{bmi} \\leq 0.009 \\\\ \\text{false} & \\text{if } x_\\text{bmi} > 0.009 \\end{cases} $$\n",
"* Normally, a rule applies to only one feature or attribute $x_j$ of $x$.\n",
"* If $x_j$ is continuous, the rule normally separates inputs $x_j$ into disjoint intervals $-\\infty, c], (c, \\infty)$."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Decision Regions\n",
"\n",
"The next important concept is that of a decision region.\n",
"* A decision region $R\\subseteq \\mathcal{X}$ is a subset of the feature space defined by the application of a set of rules $r_1, r_2, \\ldots, r_m$ and their values $v_1, v_2, \\ldots, v_m \\in \\{\\text{true}, \\text{false}\\}$, i.e.:\n",
"$$ R = \\{x \\in \\mathcal{X} \\mid r_1(x) = v_1 \\text{ and } \\ldots \\text{ and } r_m(x) = v_m \\} $$\n",
"* For example, a decision region in the diabetes problem is:\n",
"$$ R = \\{x \\in \\mathcal{X} \\mid x_\\text{bmi} \\leq 0.009 \\text{ and } x_\\text{bp} > 0.004 \\} $$"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Decision Trees: Definition\n",
"\n",
"A decision tree is a model $f : \\mathcal{X} \\to \\mathcal{Y}$ of the form\n",
"$$ f(x) = \\sum_{R \\in \\mathcal{R}} y_R \\mathbb{I}\\{x \\in R\\}. $$\n",
"* The $\\mathbb{I}\\{\\cdot\\}$ is an indicator function (one if $\\{\\cdot\\}$ is true, else zero) and values $y_R \\in \\mathcal{Y}$ are the outputs for that region.\n",
"* The set $\\mathcal{R}$ is a collection of decision regions. They are obtained by *recursive binary splitting*.\n",
"* The rules defining the regions $\\mathcal{R}$ can be organized into a tree, with one rule per internal node and regions being the leaves."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_tree(clf, feature_names=diabetes_X.columns[:4], impurity=False)\n",
"print('')"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We can also illustrate decision trees via this figure from Hastie et al.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"The illustrations are as follows:\n",
"* Top left: regions that cannot be represented by a tree\n",
"* Top right: regions that can be represented by a tree\n",
"* Bottom left: tree generating the top right regions\n",
"* Bottom right: function values assigned to the regions"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Pros and Cons of Decision Trees\n",
"\n",
"Decision trees are important models in machine learning\n",
"* They are highly interpretable.\n",
"* Require little data preparation (no rescaling, handle continuous and discrete features).\n",
"\n",
"Their main disadvantages are that:\n",
"* If they stay small and interpretable, they are not as powerful.\n",
"* If they are large, they easily overfit and are hard to regularize."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"\n",
"# Part 2: Learning Decision Trees\n",
"\n",
"We saw how decision trees are represented. How do we now learn them from data?\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "skip"
}
},
"source": [
"# The Components of A Supervised Machine Learning Algorithm\n",
"\n",
"We can also define the high-level structure of a supervised learning algorithm as consisting of three components:\n",
"* A __model class__: the set of possible models we consider.\n",
"* An __objective__ function, which defines how good a model is.\n",
"* An __optimizer__, which finds the best predictive model in the model class according to the objective function"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Recall: Decision Trees\n",
"\n",
"A decision tree is a model $f : \\mathcal{X} \\to \\mathcal{Y}$ of the form\n",
"$$ f(x) = \\sum_{R \\in \\mathcal{R}} y_R \\mathbb{I}\\{x \\in R\\}. $$\n",
"* The $\\mathbb{I}\\{\\cdot\\}$ is an indicator function (one if $\\{\\cdot\\}$ is true, else zero) and values $y_R \\in \\mathcal{Y}$ are the outputs for that region.\n",
"* The set $\\mathcal{R}$ is a collection of decision regions. They are obtained by *recursive binary splitting*.\n",
"* The rules defining the regions $\\mathcal{R}$ can be organized into a tree, with one rule per internal node and regions being the leaves."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_tree(clf, feature_names=diabetes_X.columns[:4], impurity=False)\n",
"print('')"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We can also illustrate decision trees via this figure from Hastie et al.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Learning Decision Trees\n",
"\n",
"At a high level, decision trees are grown by adding nodes one at a time.\n",
"\n",
"```python\n",
"def build_tree(tree, data):\n",
" whlie tree.is_complete() is False:\n",
" region, region_data = tree.get_region()\n",
" new_rule = split_region(region_data)\n",
" tree.add_rule(region, new_rule)\n",
"```\n",
"\n",
"Most often, we build the tree until it reaches a maximum number of nodes. The crux of the algorithm is in `split_region`."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "skip"
}
},
"source": [
"There is also a recursive formulation of this algorithm:\n",
"\n",
"```python\n",
"def build_tree(data, depth):\n",
" if depth < MAX_DEPTH:\n",
" # internal node\n",
" rule, data_left, data_right = get_new_rule(tree, data)\n",
" left_subtree = build_tree(data_left, depth+1)\n",
" right_subtree = build_tree(data_right, depth+1)\n",
" return create_node(new_rule, left_subtree, right_subtree)\n",
" else:\n",
" # leaf node\n",
" return create_terminal_node(data)\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Learning New Decision Rules\n",
"\n",
"How does the `split_region` function choose new rule $r$? Given a dataset $\\mathcal{D} = \\{(x^{(i)}, y^{(i)}\\mid i =1,2,\\ldots,n\\}$, we greedily choose the rule that achieves the dataset split with the lowest possible loss."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"This can be written as the following optimization problem:\n",
"$$ \\min_{r \\in \\mathcal{U}} \\left( \\underbrace{L(\\{(x, y) \\in \\mathcal{D} \\mid r(x) = \\text{T}\\})}_\\text{left subtree} + \\underbrace{L(\\{(x, y) \\in \\mathcal{D} \\mid r(x) = \\text{F}\\}}_\\text{right subtree})\\right) $$\n",
"\n",
"where $L$ is a loss function over a subset of the data flagged by the rule and $\\mathcal{U}$ is the set of possible rules."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"What is the set of possible rules? When $x$ has continuous features, the rules have the following form:\n",
"$$ r(x) = \\begin{cases}\\text{true} & \\text{if } x_j \\leq t \\\\ \\text{false} & \\text{if } x_j > t \\end{cases} $$\n",
"for a feature index $j$ and threshold $t \\in \\mathbb{R}$."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"When $x$ has categorial features, rules may have the following form:\n",
"$$ r(x) = \\begin{cases}\\text{true} & \\text{if } x_j = t_k \\\\ \\text{false} & \\text{if } x_j \\neq t_k \\end{cases} $$\n",
"for a feature index $j$ and possible value $t_k$ for $x_j$."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Objectives for Trees: Regression\n",
"\n",
"What loss functions might we want to use? In regression, it is common to minimize the L2 error between the data and the single best prediction we can make on this data:\n",
"$$ L(\\mathcal{D}) = \\sum_{(x, y) \\in \\mathcal{D}} \\left( y - \\texttt{average-y}(\\mathcal{D}) \\right)^2. $$\n",
"\n",
"If this was a leaf node, we would predict $\\texttt{average-y}(\\mathcal{D})$, the average $y$ in the data. The above loss measures the resulting squared error."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"This results in the following optimization problem for selecting a decision rule:\n",
"$$ \\min_{r \\in \\mathcal{U}} \\sum_{(x, y) \\in \\mathcal{D} \\,\\mid\\, r(x) = \\text{true}} \\left( y - p_\\text{true}(r) \\right)^2 + \\sum_{(x, y) \\in \\mathcal{D} \\,\\mid\\, r(x) = \\text{false}} \\left( y - p_\\text{false}(r) \\right)^2 $$\n",
"\n",
"where $p_\\text{true}(r) = \\texttt{average-y}(\\{(x, y) \\mid (x, y) \\in \\mathcal{D} \\text{ and } r(x) = \\text{true}\\})$ and $p_\\text{false}(r) = \\texttt{average-y}(\\{(x, y) \\mid (x, y) \\in \\mathcal{D} \\text{ and } r(x) = \\text{false}\\})$ are the average predictions on each part of the data split."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Objectives for Trees: Classification\n",
"\n",
"In classification, we may similarly use the misclassification rate\n",
"$$ L(\\mathcal{D}) = \\sum_{(x, y) \\in \\mathcal{D}} \\mathbb{I} \\left\\{ y = \\texttt{most-common-y}(\\mathcal{D}) \\right\\}. $$\n",
"\n",
"If this was a leaf node, we would predict $\\texttt{most-common-y}(\\mathcal{D})$, the most common class $y$ in the data. The above loss measures the resulting misclassification error."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Other losses that can be used include the entropy or the gini index. These all optimize for a split in which different classes do not mix."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Other Practical Considerations\n",
"\n",
"A few additional comments on the above training procedure;\n",
"* Nodes are added to until tree reaches a maximum depth or the leaves can't be split anymore.\n",
"* In practice trees are also often pruned in order to reduce overfitting.\n",
"* There exist alternative algorithms, including ID3, C4.5, C5.0. See Hastie et al. for details."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Algorithm: Classification and Regression Trees (CART)\n",
"\n",
"* __Type__: Supervised learning (regression and classification).\n",
"* __Model family__: Decision trees.\n",
"* __Objective function__: Squared error, mislcassification error, Gini index, etc.\n",
"* __Optimizer__: Greedy addition of rules, followed by pruning."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"\n",
"# Part 3: Bagging\n",
"\n",
"Next, we are going to see a general technique to improve the performance of machine learning algorithms.\n",
"\n",
"We will then apply it to decision trees to define an improved algorithm."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Review: Overfitting\n",
"\n",
"Overfitting is one of the most common failure modes of machine learning.\n",
"* A very expressive model (a high degree polynomial) fits the training dataset perfectly.\n",
"* The model also makes wildly incorrect prediction outside this dataset, and doesn't generalize."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"Recall this example, in which we take random samples around a true function."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"from sklearn.pipeline import Pipeline\n",
"from sklearn.preprocessing import PolynomialFeatures\n",
"from sklearn.linear_model import LinearRegression\n",
"\n",
"def true_fn(X):\n",
" return np.cos(1.5 * np.pi * X)\n",
"\n",
"np.random.seed(2)\n",
"n_samples = 40\n",
"X = np.sort(np.random.rand(n_samples))\n",
"y = true_fn(X) + np.random.randn(n_samples) * 0.1\n",
"\n",
"X_test = np.linspace(0, 1, 100)\n",
"plt.plot(X_test, true_fn(X_test), label=\"True function\")\n",
"plt.scatter(X, y, edgecolor='b', s=20, label=\"Samples\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Fitting High-Degree Polynomials\n",
"\n",
"Let's see what happens if we fit a high degree polynomial to random samples of 20 points from this dataset."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_plots, X_line = 3, np.linspace(0,1,20)\n",
"plt.figure(figsize=(14, 5))\n",
"for i in range(n_plots):\n",
" ax = plt.subplot(1, n_plots, i + 1)\n",
" random_idx = np.random.randint(0, 30, size=(30,))\n",
" X_random, y_random = X[random_idx], y[random_idx]\n",
"\n",
" polynomial_features = PolynomialFeatures(degree=6, include_bias=False)\n",
" linear_regression = LinearRegression()\n",
" pipeline = Pipeline([(\"pf\", polynomial_features), (\"lr\", linear_regression)])\n",
" pipeline.fit(X_random[:, np.newaxis], y_random)\n",
"\n",
" ax.plot(X_line, true_fn(X_line), label=\"True function\") \n",
" ax.plot(X_line, pipeline.predict(X_line[:, np.newaxis]), label=\"Model\")\n",
" ax.scatter(X_random, y_random, edgecolor='b', s=20, label=\"Samples\", alpha=0.2)\n",
" ax.set_xlim((0, 1))\n",
" ax.set_ylim((-2, 2))\n",
" ax.legend(loc=\"best\")\n",
" ax.set_title('Random sample %d' % i)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# High-Variance Models\n",
"\n",
"Each small subset of the data that we train on results is a very different model."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"An algorithm that has a tendency to overfit is also called *high-variance*, because it outputs a predictive model that varies a lot if we slightly perturb the dataset."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Bagging: Bootstrap Aggregation\n",
"\n",
"The idea of *bagging* is to reduce model variance by averaging many models trained on random subsets of the data.\n",
"\n",
"```python\n",
"for i in range(n_models):\n",
" # collect data samples and fit models\n",
" X_i, y_i = sample_with_replacement(X, y, n_samples)\n",
" model = Model().fit(X_i, y_i)\n",
" ensemble.append(model)\n",
"\n",
"# output average prediction at test time:\n",
"y_test = ensemble.average_prediction(x_test)\n",
"```\n",
"The data samples are taken with replacement and known as bootstrap samples."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Bagged Polynomial Regression\n",
"\n",
"Let's apply bagging to our polynomial regression problem.\n",
"\n",
"We are going to train a large number of polynomial regressions on random subsets of the dataset of points that we created earlier."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We start by training an ensemble of bagged models."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"n_models, n_subset = 10000, 30\n",
"ensemble, Xs, ys = [], [], []\n",
"for i in range(n_models):\n",
" # take a random subset of the data\n",
" random_idx = np.random.randint(0, 30, size=(n_subset,))\n",
" X_random, y_random = X[random_idx], y[random_idx]\n",
"\n",
" # train a polynomial regression model\n",
" polynomial_features = PolynomialFeatures(degree=6, include_bias=False)\n",
" linear_regression = LinearRegression()\n",
" pipeline = Pipeline([(\"pf\", polynomial_features), (\"lr\", linear_regression)])\n",
" pipeline.fit(X_random[:, np.newaxis], y_random)\n",
"\n",
" # add it to our set of bagged models\n",
" ensemble += [pipeline]\n",
" Xs += [X_random]\n",
" ys += [y_random]"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"Let's visualize the prediction of the bagged model on each random dataset sample and compare to predictions from an un-bagged models."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"image/png": "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hUfyoyhpJJ8UHsknBtIjlE+PP/44f/zxBwCLFy+mf//+Oa9FR0fTo0cPgoKCaNq0KYcPHwYgKiqKRx99lLp16/Lss8+SezPbn3/+mcaNGxMcHMyoUaPIzMx8qHgmT57M4MGDadGiBYMHD+bixYu0atWKkJAQQkJC2LlzJwAXL14kICAAMPzD7tmzJ506daJ69eqMHz8+53zr1q2jWbNmhISE0KdPHxITEwH466+/qFWrFiEhIaxYsSLPWHQ6HcOGDSMwMJD69evn7LR8r/ayJSQkkJGRgaenJwD29vbUrFkTgN9//50mTZpQv359OnTowI0bN3I++5AhQ2jVqhW+vr6sWLGC8ePHExgYSKdOnUhPTwcMd3uyn2/cuDFnz569o/1z587RqVMnGjRoQKtWrTh58iQAv/76a87O0a1bt36ov5tCpYszPEqPkOnFZhdChfiftJUV+LUyzBMy482wJT9KfhTCWCSfSD4pVEops/1q0KCB+q/jx4/f8VxRc3Z2VocOHVK9evVSKSkpql69emrz5s3qiSeeUEopNWbMGDV58mSllFIbN25U9erVU0op9eKLL6p3331XKaXUmjVrFKAiIyPV8ePHVZcuXVRaWppSSqnRo0erH374QSmllK+vr4qMjMwzju+//1698MILSimlJk2apEJCQlRycrJSSqmkpCSVkpKilFLq9OnTKvvP8sKFC6pu3bo57/f391exsbEqJSVFVa5cWV2+fFlFRkaqVq1aqcTERKWUUtOmTVPvvvuuSklJUT4+Pur06dNKr9erPn365Hzm3D755BM1bNgwpZRSJ06cUJUqVVIpKSl3be+/nnnmGeXl5aX69eunfv75Z5WZmamUUio6Olrp9XqllFLffvutGjduXM5nb9GihUpLS1NhYWHK0dFR/fnnn0oppXr06KFWrlyZ82c5depUpZRSP/zwQ07skyZNUh9//LFSSql27dqp06dPK6WU2r17t3rkkUeUUkoFBASoiIgIpZRSMTExd8Rsst/LG8eVmuSm1JFlRdIcEKrMIDc87FdeucTofntRqelVC7+dvd8a/s5vnb3jJcmP/5L8aD75Uam8fzcln5g3ySf/knxSfPOJZQ+NWzsBrh8x7jnLBULnafc9LCgoiIsXL7J48WIef/zx217bvn07y5cvB6Bdu3ZERUURHx/P1q1bc6r6J554glKl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",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_plots, X_line = 3, np.linspace(0,1,25)\n",
"plt.figure(figsize=(14, 5))\n",
"for i in range(n_plots):\n",
" ax = plt.subplot(1, n_plots, i + 1)\n",
"\n",
" # generate average predictions\n",
" y_lines = np.zeros((25, n_models))\n",
" for j, model in enumerate(ensemble):\n",
" y_lines[:, j] = model.predict(X_line[:, np.newaxis])\n",
" y_line = y_lines.mean(axis=1)\n",
"\n",
" # visualize them\n",
" ax.plot(X_line, true_fn(X_line), label=\"True function\") \n",
" ax.plot(X_line, y_lines[:,i], label=\"Model Trained on Samples\")\n",
" ax.plot(X_line, y_line, label=\"Bagged Model\")\n",
" ax.scatter(Xs[i], ys[i], edgecolor='b', s=20, label=\"Samples\", alpha=0.2)\n",
" ax.set_xlim((0, 1))\n",
" ax.set_ylim((-2, 2))\n",
" ax.legend(loc=\"best\")\n",
" ax.set_title('Random sample %d' % i)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Extensions of Bagging\n",
"\n",
"There exist a few closely related techniques to bagging.\n",
"* Pasting is when samples are taken without replacement.\n",
"* Random features are when we randomly sample the features.\n",
"* Random patching is when we do both of the above."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Summary: Bagging\n",
"\n",
"Bagging is a general technique that can be used with high-variance ML algorithms.\n",
"\n",
"It averages predictions from multiple models trained on random subset of the data."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"\n",
"# Part 4: Random Forests\n",
"\n",
"Next, let's see how bagging can be applied to decision trees. This will also provide us with a new algorithm.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Review: Bagging\n",
"\n",
"The idea of *bagging* is to reduce model variance by averaging many models trained on random subsets of the data.\n",
"\n",
"```python\n",
"for i in range(n_models):\n",
" # collect data samples and fit models\n",
" X_i, y_i = sample_with_replacement(X, y, n_samples)\n",
" model = Model().fit(X_i, y_i)\n",
" ensemble.append(model)\n",
"\n",
"# output average prediction at test time:\n",
"y_test = ensemble.average_prediction(y_test)\n",
"```\n",
"The data samples are taken with replacement and known as bootstrap samples."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Review: Decision Trees\n",
"\n",
"A decision tree is a model $f : \\mathcal{X} \\to \\mathcal{Y}$ of the form\n",
"$$ f(x) = \\sum_{R \\in \\mathcal{R}} y_R \\mathbb{I}\\{x \\in R\\}. $$\n",
"* The $\\mathbb{I}\\{\\cdot\\}$ is an indicator function (one if $\\{\\cdot\\}$ is true, else zero) and values $y_R \\in \\mathcal{Y}$ are the outputs for that region.\n",
"* The set $\\mathcal{R}$ is a collection of decision regions. They are obtained by *recursive binary splitting*.\n",
"* The rules defining the regions $\\mathcal{R}$ can be organized into a tree, with one rule per internal node and regions being the leaves."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"We can also illustrate decision trees via this figure from Hastie et al.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Classification Dataset: Iris Flowers\n",
"\n",
"Let's now look at the performance of decision trees on a new dataset, Iris flowers.\n",
"\n",
"It's a classical dataset originally published by [R. A. Fisher](https://en.wikipedia.org/wiki/Ronald_Fisher) in 1936. Nowadays, it's widely used for demonstrating machine learning algorithms."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"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%PLU@io.arc.nasa.gov)\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"
]
}
],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"from sklearn import datasets\n",
"\n",
"# Load the Iris dataset\n",
"iris = datasets.load_iris(as_frame=True)\n",
"\n",
"print(iris.DESCR)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"data": {
"text/html": [
"