diff --git a/doc/pub/week46/ipynb/DataFiles/cancer.dot b/doc/pub/week46/ipynb/DataFiles/cancer.dot index 40010a184..acbd6f407 100644 --- a/doc/pub/week46/ipynb/DataFiles/cancer.dot +++ b/doc/pub/week46/ipynb/DataFiles/cancer.dot @@ -6,17 +6,17 @@ edge [fontname="helvetica"] ; 0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ; 2 [label="worst concave points <= 0.135\ngini = 0.031\nsamples = 253\nvalue = [[249, 4]\n[4, 249]]", fillcolor="#e78946"] ; 1 -> 2 ; -3 [label="area error <= 48.975\ngini = 0.008\nsamples = 242\nvalue = [[241, 1]\n[1, 241]]", fillcolor="#e5833c"] ; +3 [label="radius error <= 0.643\ngini = 0.008\nsamples = 242\nvalue = [[241, 1]\n[1, 241]]", fillcolor="#e5833c"] ; 2 -> 3 ; 4 [label="gini = 0.0\nsamples = 239\nvalue = [[239, 0]\n[0, 239]]", fillcolor="#e58139"] ; 3 -> 4 ; -5 [label="concave points error <= 0.016\ngini = 0.444\nsamples = 3\nvalue = [[2, 1]\n[1, 2]]", fillcolor="#fdf6f0"] ; +5 [label="mean perimeter <= 78.51\ngini = 0.444\nsamples = 3\nvalue = [[2, 1]\n[1, 2]]", fillcolor="#fdf6f0"] ; 3 -> 5 ; 6 [label="gini = 0.0\nsamples = 1\nvalue = [[0, 1]\n[1, 0]]", fillcolor="#e58139"] ; 5 -> 6 ; 7 [label="gini = 0.0\nsamples = 2\nvalue = [[2, 0]\n[0, 2]]", fillcolor="#e58139"] ; 5 -> 7 ; -8 [label="worst texture <= 29.455\ngini = 0.397\nsamples = 11\nvalue = [[8, 3]\n[3, 8]]", fillcolor="#fae9dd"] ; +8 [label="mean texture <= 20.84\ngini = 0.397\nsamples = 11\nvalue = [[8, 3]\n[3, 8]]", fillcolor="#fae9dd"] ; 2 -> 8 ; 9 [label="gini = 0.0\nsamples = 8\nvalue = [[8, 0]\n[0, 8]]", fillcolor="#e58139"] ; 8 -> 9 ; @@ -30,11 +30,11 @@ edge [fontname="helvetica"] ; 11 -> 13 ; 14 [label="worst texture <= 20.645\ngini = 0.202\nsamples = 167\nvalue = [[19, 148]\n[148, 19]]", fillcolor="#f0b68c"] ; 0 -> 14 [labeldistance=2.5, labelangle=-45, headlabel="False"] ; -15 [label="worst concavity <= 0.318\ngini = 0.375\nsamples = 16\nvalue = [[12, 4]\n[4, 12]]", fillcolor="#f9e3d4"] ; +15 [label="worst area <= 964.4\ngini = 0.375\nsamples = 16\nvalue = [[12, 4]\n[4, 12]]", fillcolor="#f9e3d4"] ; 14 -> 15 ; 16 [label="gini = 0.0\nsamples = 11\nvalue = [[11, 0]\n[0, 11]]", fillcolor="#e58139"] ; 15 -> 16 ; -17 [label="worst perimeter <= 115.95\ngini = 0.32\nsamples = 5\nvalue = [[1, 4]\n[4, 1]]", fillcolor="#f6d5bd"] ; +17 [label="concave points error <= 0.008\ngini = 0.32\nsamples = 5\nvalue = [[1, 4]\n[4, 1]]", fillcolor="#f6d5bd"] ; 15 -> 17 ; 18 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139"] ; 17 -> 18 ; @@ -48,7 +48,7 @@ edge [fontname="helvetica"] ; 21 -> 22 ; 23 [label="gini = 0.0\nsamples = 6\nvalue = [[6, 0]\n[0, 6]]", fillcolor="#e58139"] ; 21 -> 23 ; -24 [label="mean smoothness <= 0.079\ngini = 0.015\nsamples = 136\nvalue = [[1, 135]\n[135, 1]]", fillcolor="#e6853f"] ; +24 [label="worst smoothness <= 0.096\ngini = 0.015\nsamples = 136\nvalue = [[1, 135]\n[135, 1]]", fillcolor="#e6853f"] ; 20 -> 24 ; 25 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139"] ; 24 -> 25 ; diff --git a/doc/pub/week46/ipynb/DataFiles/cancer.png b/doc/pub/week46/ipynb/DataFiles/cancer.png index 2ceb5e1f8..f925d28d1 100644 Binary files a/doc/pub/week46/ipynb/DataFiles/cancer.png and b/doc/pub/week46/ipynb/DataFiles/cancer.png differ diff --git a/doc/pub/week46/ipynb/week46.ipynb b/doc/pub/week46/ipynb/week46.ipynb index 3a29f7c61..0b23538ed 100644 --- a/doc/pub/week46/ipynb/week46.ipynb +++ b/doc/pub/week46/ipynb/week46.ipynb @@ -3,9 +3,7 @@ { "cell_type": "markdown", "id": "f4d3b2c9", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "\n", @@ -15,9 +13,7 @@ { "cell_type": "markdown", "id": "57cda95f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "# Week 46: Decision Trees, Ensemble methods and Random Forests\n", "**Morten Hjorth-Jensen**, Department of Physics, University of Oslo and Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University\n", @@ -28,9 +24,7 @@ { "cell_type": "markdown", "id": "0ab525ed", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Plan for week 46\n", "\n", @@ -60,9 +54,7 @@ { "cell_type": "markdown", "id": "3c8e0d42", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Decision trees, overarching aims\n", "\n", @@ -91,9 +83,7 @@ { "cell_type": "markdown", "id": "893c9b6f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Basics of a tree\n", "\n", @@ -111,9 +101,7 @@ { "cell_type": "markdown", "id": "89b0fc63", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## A typical Decision Tree with its pertinent Jargon, Classification Problem\n", "\n", @@ -129,9 +117,7 @@ { "cell_type": "markdown", "id": "d4354730", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## General Features\n", "\n", @@ -152,9 +138,7 @@ { "cell_type": "markdown", "id": "9db7330a", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## How do we set it up?\n", "\n", @@ -175,9 +159,7 @@ { "cell_type": "markdown", "id": "331ebf1d", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Decision trees and Regression" ] @@ -186,11 +168,39 @@ "cell_type": "code", "execution_count": 1, "id": "122986df", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2nd degree coefficients:\n", + "zero power: 0.7163225806451621\n", + "first power: 0.17047319577389736\n", + "second power: -0.0006648714674365666\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjMAAAHFCAYAAAAHcXhbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACXZ0lEQVR4nOzdd3wT9f/A8deldAGlpIW2KbMFBCmzRWWogKiIoiKKExA3zi+49etefH84vrhQFL8WBEVQcYOIDBWZLbMMsWxIKSOltNCZ+/1Rcr20aZu2SbPeTx59kLv73N0nl8vdO591iqqqKkIIIYQQPsrg6QwIIYQQQtSHBDNCCCGE8GkSzAghhBDCp0kwI4QQQgifJsGMEEIIIXyaBDNCCCGE8GkSzAghhBDCp0kwI4QQQgifJsGMEEIIIXyaBDNCOCE1NRVFUbS/sLAw4uLiGDx4MJMmTSI7O9ut+9+zZw+KopCamlqr9caNG0f79u3dkqfq9qk/VlX9jRs3rkHzVVHF/DRr1oz+/fvzxRdfeDRfDamu55UQ3kaRxxkIUbPU1FRuu+02Pv30U7p06UJxcTHZ2dn8+eeffPrppwQFBfHll19y8cUXu2X/hYWFrF+/ng4dOtCyZUun18vMzCQ3N5fevXu7JV9V7fPIkSPadHp6Ovfffz+vvfYagwcP1ua3bNmSDh06NFi+KlIUheuuu45HHnkEVVXZvXs3r732GhkZGcyePZubb77ZY3lrKHU9r4TwNhLMCOEEWzCzdu1a+vTpY7ds3759nH/++eTk5LBz505iY2M9lEvvtGzZMgYPHsy8efO47rrrqkx3+vRpwsLCUBSlQfKlKAr3338/7733njZv7969tG/fngsvvJDly5c3SD5sTp06RePGjRt0n0L4C6lmEqKe2rZty5tvvsnJkyeZNm2a3bJ169Zx1VVXERUVRVhYGL1792bu3LmVtnHw4EHuvvtu2rRpQ0hICPHx8Vx33XUcPnwYcFwdcOTIEW2d0NBQWrZsyYABA1i8eLGWxlE1U0FBAU899RQJCQmEhITQqlUr7r//fnJycuzStW/fnuHDh7Nw4UKSk5MJDw+nS5cu/O9//6vfAaO82m7RokXcfvvttGzZksaNG1NYWAjAl19+Sb9+/WjSpAlNmzZl6NChrF+/vtJ2nD2+zmrXrh0tW7bUjrtNbm4ujz76qN0xmzBhAvn5+XbpcnJyuOOOO4iKiqJp06ZcccUV7Nq1C0VReOGFF7R0L7zwAoqikJ6eznXXXYfRaNRKqVRVZerUqfTq1Yvw8HCMRiPXXXcdu3btstvX+vXrGT58ODExMYSGhhIfH88VV1zBgQMHtDTz5s3jvPPOIzIyksaNG5OYmMjtt9+uLa+qmunPP/9kyJAhRERE0LhxY/r3789PP/1kl8b2GS5dupR7772XFi1aEB0dzciRIzl06FCtj70Q9SHBjBAucPnllxMUFMTvv/+uzVu6dCkDBgwgJyeHDz/8kO+++45evXpxww032N08Dh48yDnnnMP8+fN5+OGHWbBgAVOmTCEyMhKLxVLlPseMGcO3337Lc889x6JFi5g+fToXX3wxx44dq3IdVVUZMWIEb7zxBmPGjOGnn37i4YcfZsaMGVx00UVaMGGzceNGHnnkESZOnMh3331Hjx49uOOOO+zeZ33cfvvtBAcH89lnn/HVV18RHBzMa6+9xk033UTXrl2ZO3cun332GSdPnuSCCy5g69at2rrOHt/aOHHiBMePH+ess87S5p06dYqBAwcyY8YMHnroIRYsWMATTzxBamoqV111FbbCbavVypVXXsnnn3/OE088wfz58znvvPO47LLLqtzfyJEj6dixI/PmzePDDz8E4J577mHChAlcfPHFfPvtt0ydOpWMjAz69++vBVn5+flccsklHD58mPfff59ff/2VKVOm0LZtW06ePAnAypUrueGGG0hMTGTOnDn89NNPPPfcc5SUlFR7DJYvX85FF13EiRMn+OSTT/jiiy+IiIjgyiuv5Msvv6yU/s477yQ4OJjPP/+cyZMns2zZMkaPHl27Ay9EfalCiBp9+umnKqCuXbu2yjSxsbHq2WefrU136dJF7d27t1pcXGyXbvjw4arJZFJLS0tVVVXV22+/XQ0ODla3bt1a5bZ3796tAuqnn36qzWvatKk6YcKEavN96623qu3atdOmFy5cqALq5MmT7dJ9+eWXKqB+9NFH2rx27dqpYWFh6t69e7V5p0+fVqOiotR77rmn2v3qLV26VAXUefPmafNsx3Ps2LF2afft26c2atRIffDBB+3mnzx5Uo2Li1Ovv/56bZ6zx7cqgHrfffepxcXFalFRkfr333+rV111lRoREaGuW7dOSzdp0iTVYDBU+uy/+uorFVB//vlnVVVV9aefflIB9YMPPrBLN2nSJBVQn3/+eW3e888/rwLqc889Z5d25cqVKqC++eabdvP379+vhoeHq48//riqqqq6bt06FVC//fbbKt/fG2+8oQJqTk5OlWkcnVd9+/ZVY2Ji1JMnT2rzSkpK1G7duqmtW7dWrVarqqrln+F9991nt83JkyergGo2m6vcrxCuJiUzQriIqmt+9s8//7B9+3ZuueUWAEpKSrS/yy+/HLPZzI4dOwBYsGABgwcP5uyzz67V/s4991xSU1N55ZVXWLVqFcXFxTWus2TJEoBKPYlGjRpFkyZN+O233+zm9+rVi7Zt22rTYWFhnHXWWezdu7dWea3Ktddeazf9yy+/UFJSwtixY+2OWVhYGAMHDmTZsmVA7Y5vdaZOnUpwcDAhISGcddZZLFiwgC+++IKUlBQtzY8//ki3bt3o1auX3X6GDh2KoihanmxtbK6//nq7fdx0001Ov/8ff/wRRVEYPXq03b7i4uLo2bOntq+OHTtiNBp54okn+PDDD+1KrGzOOeccLT9z587l4MGDNR6P/Px8Vq9ezXXXXUfTpk21+UFBQYwZM4YDBw5UOq5XXXWV3XSPHj0AXHaOCOEMCWaEcIH8/HyOHTtGfHw8gFYd8OijjxIcHGz3d9999wFw9OhRoKztS+vWrWu9zy+//JJbb72V6dOn069fP6Kiohg7dixZWVlVrnPs2DEaNWpUqeeKoijExcVVqqKKjo6utI3Q0FBOnz5d6/w6YjKZ7KZtx+2cc86pdNy+/PJL7ZjV5vhW5/rrr2ft2rX89ddfTJs2jYiICG688UZ27txpl6dNmzZV2k9ERASqqmr7sR3bqKgou31U1yDc0ftXVZXY2NhK+1u1apW2r8jISJYvX06vXr14+umnSUpKIj4+nueff14Lai+88EK+/fZbLThs3bo13bp1q7brucViQVXVSvkCtHO7pnMkNDQUwGXniBDOaOTpDAjhD3766SdKS0sZNGgQAC1atADgqaeeYuTIkQ7X6dy5M1DWRVnfaNNZLVq0YMqUKUyZMoV9+/bx/fff8+STT5Kdnc3ChQsdrhMdHU1JSQlHjhyxC2hUVSUrK0v7Nd9QKvZcsh23r776inbt2lW5Xm2Ob3Vatmyp9U7r168fZ599NgMHDmTixIn8+OOP2r7Cw8OrbPhsy4vt2B4/ftwuoKkuuHT0/hVF4Y8//tCCAj39vO7duzNnzhxUVWXTpk2kpqby0ksvER4ezpNPPgnA1VdfzdVXX01hYSGrVq1i0qRJ3HzzzbRv355+/fpV2r7RaMRgMGA2mystszXqtb1fIbyJBDNC1NO+fft49NFHiYyM5J577gHKbqSdOnVi48aNvPbaa9WuP2zYMD777DN27Njh1A3YkbZt2/LAAw/w22+/sWLFiirTDRkyhMmTJzNr1iwmTpyozf/666/Jz89nyJAhddq/qwwdOpRGjRqRmZlZqQpGrzbHtzYuuOACxo4dy4wZM1i5ciX9+vVj+PDhvPbaa0RHR5OQkFDlugMHDmTy5Ml8+eWX3Hvvvdr8OXPmOL3/4cOH85///IeDBw9Wqq6qiqIo9OzZk//+97+kpqaSnp5eKU1oaCgDBw6kefPm/PLLL6xfv95hMNOkSRPOO+88vvnmG9544w3Cw8OBssbNs2bNonXr1naNo4XwFhLMCFELW7Zs0doxZGdn88cff2iD5s2fP9+utGPatGkMGzaMoUOHMm7cOFq1asXx48fZtm0b6enpzJs3D4CXXnqJBQsWcOGFF/L000/TvXt3cnJyWLhwIQ8//DBdunSplI8TJ04wePBgbr75Zrp06UJERARr165l4cKFVZZUAFxyySUMHTqUJ554gtzcXAYMGMCmTZt4/vnn6d27N2PGjHH9QauF9u3b89JLL/Hvf/+bXbt2cdlll2E0Gjl8+DBr1qyhSZMmvPjii4Dzx7e2Xn75Zb788kueffZZFi9ezIQJE/j666+58MILmThxIj169MBqtbJv3z4WLVrEI488ovVaGjBgAI888gi5ubmkpKSwcuVKZs6cCYDBUHOt/oABA7j77ru57bbbWLduHRdeeCFNmjTBbDbz559/0r17d+69915+/PFHpk6dyogRI0hMTERVVb755htycnK45JJLAHjuuec4cOAAQ4YMoXXr1uTk5PD2228THBzMwIEDq8zDpEmTuOSSSxg8eDCPPvooISEhTJ06lS1btvDFF1802DhAQtSKBxsfC+EzbD03bH8hISFqTEyMOnDgQPW1115Ts7OzHa63ceNG9frrr1djYmLU4OBgNS4uTr3ooovUDz/80C7d/v371dtvv12Ni4tTg4OD1fj4ePX6669XDx8+rKpq5V4nBQUF6vjx49UePXqozZo1U8PDw9XOnTur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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "%matplotlib inline\n", "\n", @@ -287,9 +297,7 @@ { "cell_type": "markdown", "id": "967f86f4", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Building a tree, regression\n", "\n", @@ -309,9 +317,7 @@ { "cell_type": "markdown", "id": "58c89f85", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\sum_{j=1}^J\\sum_{i\\in R_j}(y_i-\\overline{y}_{R_j})^2,\n", @@ -321,9 +327,7 @@ { "cell_type": "markdown", "id": "8d28defb", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where $\\overline{y}_{R_j}$ is the mean response for the training observations \n", "within box $j$." @@ -332,9 +336,7 @@ { "cell_type": "markdown", "id": "3f6c36d6", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## A top-down approach, recursive binary splitting\n", "\n", @@ -354,9 +356,7 @@ { "cell_type": "markdown", "id": "a89a52db", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Making a tree\n", "\n", @@ -367,9 +367,7 @@ { "cell_type": "markdown", "id": "5feb6c75", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\left\\{X\\vert x_j < s\\right\\},\n", @@ -379,9 +377,7 @@ { "cell_type": "markdown", "id": "8de30cae", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "and" ] @@ -389,9 +385,7 @@ { "cell_type": "markdown", "id": "95d5c167", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\left\\{X\\vert x_j \\geq s\\right\\},\n", @@ -401,9 +395,7 @@ { "cell_type": "markdown", "id": "c5f10599", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "so that we obtain the lowest MSE, that is" ] @@ -411,9 +403,7 @@ { "cell_type": "markdown", "id": "ff6f03cb", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\sum_{i:x_i\\in R_j}(y_i-\\overline{y}_{R_1})^2+\\sum_{i:x_i\\in R_2}(y_i-\\overline{y}_{R_2})^2,\n", @@ -423,9 +413,7 @@ { "cell_type": "markdown", "id": "9f031abb", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which we want to minimize by considering all predictors\n", "$x_1,x_2,\\dots,x_p$. We consider also all possible values of $s$ for\n", @@ -456,9 +444,7 @@ { "cell_type": "markdown", "id": "83f9c272", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Pruning the tree\n", "\n", @@ -480,9 +466,7 @@ { "cell_type": "markdown", "id": "9f23f5ac", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Cost complexity pruning\n", "\n", @@ -492,9 +476,7 @@ { "cell_type": "markdown", "id": "a9b2646e", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\sum_{m=1}^{\\overline{T}}\\sum_{i:x_i\\in R_m}(y_i-\\overline{y}_{R_m})^2+\\alpha\\overline{T},\n", @@ -504,9 +486,7 @@ { "cell_type": "markdown", "id": "8c9f1038", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "is as small as possible. Here $\\overline{T}$ is \n", "the number of terminal nodes of the tree $T$ , $R_m$ is the\n", @@ -532,9 +512,7 @@ { "cell_type": "markdown", "id": "1e4cf9ca", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Schematic Regression Procedure\n", "\n", @@ -558,9 +536,7 @@ { "cell_type": "markdown", "id": "328198af", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## A Classification Tree\n", "\n", @@ -581,9 +557,7 @@ { "cell_type": "markdown", "id": "338052bc", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Growing a classification tree\n", "\n", @@ -608,9 +582,7 @@ { "cell_type": "markdown", "id": "c96ca06b", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Classification tree, how to split nodes\n", "\n", @@ -627,9 +599,7 @@ { "cell_type": "markdown", "id": "970d1672", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "p_{mk} = \\frac{1}{N_m}\\sum_{x_i\\in R_m}I(y_i=k).\n", @@ -639,9 +609,7 @@ { "cell_type": "markdown", "id": "e5a9ac3c", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "We let $p_{mk}$ represent the majority class of observations in region\n", "$m$. The three most common ways of splitting a node are given by\n", @@ -652,9 +620,7 @@ { "cell_type": "markdown", "id": "a0e10726", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "p_{mk} = \\frac{1}{N_m}\\sum_{x_i\\in R_m}I(y_i\\ne k) = 1-p_{mk}.\n", @@ -664,9 +630,7 @@ { "cell_type": "markdown", "id": "f73a5a66", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "* Gini index $g$" ] @@ -674,9 +638,7 @@ { "cell_type": "markdown", "id": "c6e5ec5f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "g = \\sum_{k=1}^K p_{mk}(1-p_{mk}).\n", @@ -686,9 +648,7 @@ { "cell_type": "markdown", "id": "c50e4c55", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "* Information entropy or just entropy $s$" ] @@ -696,9 +656,7 @@ { "cell_type": "markdown", "id": "34f4deed", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "s = -\\sum_{k=1}^K p_{mk}\\log{p_{mk}}.\n", @@ -708,9 +666,7 @@ { "cell_type": "markdown", "id": "b2f791b8", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Visualizing the Tree, Classification" ] @@ -719,11 +675,118 @@ "cell_type": "code", "execution_count": 2, "id": "b373a31c", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " mean radius mean texture mean perimeter mean area mean smoothness \\\n", + "0 17.99 10.38 122.80 1001.0 0.11840 \n", + "1 20.57 17.77 132.90 1326.0 0.08474 \n", + "2 19.69 21.25 130.00 1203.0 0.10960 \n", + "3 11.42 20.38 77.58 386.1 0.14250 \n", + "4 20.29 14.34 135.10 1297.0 0.10030 \n", + ".. ... ... ... ... ... \n", + "564 21.56 22.39 142.00 1479.0 0.11100 \n", + "565 20.13 28.25 131.20 1261.0 0.09780 \n", + "566 16.60 28.08 108.30 858.1 0.08455 \n", + "567 20.60 29.33 140.10 1265.0 0.11780 \n", + "568 7.76 24.54 47.92 181.0 0.05263 \n", + "\n", + " mean compactness mean concavity mean concave points mean symmetry \\\n", + "0 0.27760 0.30010 0.14710 0.2419 \n", + "1 0.07864 0.08690 0.07017 0.1812 \n", + "2 0.15990 0.19740 0.12790 0.2069 \n", + "3 0.28390 0.24140 0.10520 0.2597 \n", + "4 0.13280 0.19800 0.10430 0.1809 \n", + ".. ... ... ... ... \n", + "564 0.11590 0.24390 0.13890 0.1726 \n", + "565 0.10340 0.14400 0.09791 0.1752 \n", + "566 0.10230 0.09251 0.05302 0.1590 \n", + "567 0.27700 0.35140 0.15200 0.2397 \n", + "568 0.04362 0.00000 0.00000 0.1587 \n", + "\n", + " mean fractal dimension ... worst radius worst texture \\\n", + "0 0.07871 ... 25.380 17.33 \n", + "1 0.05667 ... 24.990 23.41 \n", + "2 0.05999 ... 23.570 25.53 \n", + "3 0.09744 ... 14.910 26.50 \n", + "4 0.05883 ... 22.540 16.67 \n", + ".. ... ... ... ... \n", + "564 0.05623 ... 25.450 26.40 \n", + "565 0.05533 ... 23.690 38.25 \n", + "566 0.05648 ... 18.980 34.12 \n", + "567 0.07016 ... 25.740 39.42 \n", + "568 0.05884 ... 9.456 30.37 \n", + "\n", + " worst perimeter worst area worst smoothness worst compactness \\\n", + "0 184.60 2019.0 0.16220 0.66560 \n", + "1 158.80 1956.0 0.12380 0.18660 \n", + "2 152.50 1709.0 0.14440 0.42450 \n", + "3 98.87 567.7 0.20980 0.86630 \n", + "4 152.20 1575.0 0.13740 0.20500 \n", + ".. ... ... ... ... \n", + "564 166.10 2027.0 0.14100 0.21130 \n", + "565 155.00 1731.0 0.11660 0.19220 \n", + "566 126.70 1124.0 0.11390 0.30940 \n", + "567 184.60 1821.0 0.16500 0.86810 \n", + "568 59.16 268.6 0.08996 0.06444 \n", + "\n", + " worst concavity worst concave points worst symmetry \\\n", + "0 0.7119 0.2654 0.4601 \n", + "1 0.2416 0.1860 0.2750 \n", + "2 0.4504 0.2430 0.3613 \n", + "3 0.6869 0.2575 0.6638 \n", + "4 0.4000 0.1625 0.2364 \n", + ".. ... ... ... \n", + "564 0.4107 0.2216 0.2060 \n", + "565 0.3215 0.1628 0.2572 \n", + "566 0.3403 0.1418 0.2218 \n", + "567 0.9387 0.2650 0.4087 \n", + "568 0.0000 0.0000 0.2871 \n", + "\n", + " worst fractal dimension \n", + "0 0.11890 \n", + "1 0.08902 \n", + "2 0.08758 \n", + "3 0.17300 \n", + "4 0.07678 \n", + ".. ... \n", + "564 0.07115 \n", + "565 0.06637 \n", + "566 0.07820 \n", + "567 0.12400 \n", + "568 0.07039 \n", + "\n", + "[569 rows x 30 columns]\n", + " malignant benign\n", + "0 1 0\n", + "1 1 0\n", + "2 1 0\n", + "3 1 0\n", + "4 1 0\n", + ".. ... ...\n", + "564 1 0\n", + "565 1 0\n", + "566 1 0\n", + "567 1 0\n", + "568 0 1\n", + "\n", + "[569 rows x 2 columns]\n" + ] + }, + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "import os\n", "from sklearn.datasets import load_breast_cancer\n", @@ -763,9 +826,7 @@ { "cell_type": "markdown", "id": "f1649fd9", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Visualizing the Tree, The Moons" ] @@ -774,11 +835,19 @@ "cell_type": "code", "execution_count": 3, "id": "63e625c0", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Common imports\n", "import numpy as np\n", @@ -809,9 +878,7 @@ { "cell_type": "markdown", "id": "119ea0ae", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Other ways of visualizing the trees\n", "\n", @@ -822,11 +889,45 @@ "cell_type": "code", "execution_count": 4, "id": "711bdf8d", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[Text(0.5, 0.9166666666666666, 'X[2] <= 2.45\\ngini = 0.667\\nsamples = 150\\nvalue = [50, 50, 50]'),\n", + " Text(0.4230769230769231, 0.75, 'gini = 0.0\\nsamples = 50\\nvalue = [50, 0, 0]'),\n", + " Text(0.5769230769230769, 0.75, 'X[3] <= 1.75\\ngini = 0.5\\nsamples = 100\\nvalue = [0, 50, 50]'),\n", + " Text(0.3076923076923077, 0.5833333333333334, 'X[2] <= 4.95\\ngini = 0.168\\nsamples = 54\\nvalue = [0, 49, 5]'),\n", + " Text(0.15384615384615385, 0.4166666666666667, 'X[3] <= 1.65\\ngini = 0.041\\nsamples = 48\\nvalue = [0, 47, 1]'),\n", + " Text(0.07692307692307693, 0.25, 'gini = 0.0\\nsamples = 47\\nvalue = [0, 47, 0]'),\n", + " Text(0.23076923076923078, 0.25, 'gini = 0.0\\nsamples = 1\\nvalue = [0, 0, 1]'),\n", + " Text(0.46153846153846156, 0.4166666666666667, 'X[3] <= 1.55\\ngini = 0.444\\nsamples = 6\\nvalue = [0, 2, 4]'),\n", + " Text(0.38461538461538464, 0.25, 'gini = 0.0\\nsamples = 3\\nvalue = [0, 0, 3]'),\n", + " Text(0.5384615384615384, 0.25, 'X[2] <= 5.45\\ngini = 0.444\\nsamples = 3\\nvalue = [0, 2, 1]'),\n", + " Text(0.46153846153846156, 0.08333333333333333, 'gini = 0.0\\nsamples = 2\\nvalue = [0, 2, 0]'),\n", + " Text(0.6153846153846154, 0.08333333333333333, 'gini = 0.0\\nsamples = 1\\nvalue = [0, 0, 1]'),\n", + " Text(0.8461538461538461, 0.5833333333333334, 'X[2] <= 4.85\\ngini = 0.043\\nsamples = 46\\nvalue = [0, 1, 45]'),\n", + " Text(0.7692307692307693, 0.4166666666666667, 'X[1] <= 3.1\\ngini = 0.444\\nsamples = 3\\nvalue = [0, 1, 2]'),\n", + " Text(0.6923076923076923, 0.25, 'gini = 0.0\\nsamples = 2\\nvalue = [0, 0, 2]'),\n", + " Text(0.8461538461538461, 0.25, 'gini = 0.0\\nsamples = 1\\nvalue = [0, 1, 0]'),\n", + " Text(0.9230769230769231, 0.4166666666666667, 'gini = 0.0\\nsamples = 43\\nvalue = [0, 0, 43]')]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "from sklearn.datasets import load_iris\n", "from sklearn import tree\n", @@ -840,9 +941,7 @@ { "cell_type": "markdown", "id": "a80a7f27", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Printing out as text\n", "\n", @@ -854,11 +953,23 @@ "cell_type": "code", "execution_count": 5, "id": "3aa4b27b", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "|--- petal width (cm) <= 0.80\n", + "| |--- class: 0\n", + "|--- petal width (cm) > 0.80\n", + "| |--- petal width (cm) <= 1.75\n", + "| | |--- class: 1\n", + "| |--- petal width (cm) > 1.75\n", + "| | |--- class: 2\n", + "\n" + ] + } + ], "source": [ "from sklearn.datasets import load_iris\n", "from sklearn.tree import DecisionTreeClassifier\n", @@ -873,9 +984,7 @@ { "cell_type": "markdown", "id": "e155d65a", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Algorithms for Setting up Decision Trees\n", "\n", @@ -893,9 +1002,7 @@ { "cell_type": "markdown", "id": "9f64d255", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## The CART algorithm for Classification\n", "\n", @@ -910,9 +1017,7 @@ { "cell_type": "markdown", "id": "c67ea6bd", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "C(k,t_k) = \\frac{m_{\\mathrm{left}}}{m}G_{\\mathrm{left}}+ \\frac{m_{\\mathrm{right}}}{m}G_{\\mathrm{right}},\n", @@ -922,9 +1027,7 @@ { "cell_type": "markdown", "id": "60be0c2f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where $G_{\\mathrm{left/right}}$ measures the impurity of the left/right subset and $m_{\\mathrm{left/right}}$\n", " is the number of instances in the left/right subset\n", @@ -939,9 +1042,7 @@ { "cell_type": "markdown", "id": "68adc691", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## The CART algorithm for Regression\n", "\n", @@ -952,9 +1053,7 @@ { "cell_type": "markdown", "id": "3aa84faa", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "C(k,t_k) = \\frac{m_{\\mathrm{left}}}{m}\\mathrm{MSE}_{\\mathrm{left}}+ \\frac{m_{\\mathrm{right}}}{m}\\mathrm{MSE}_{\\mathrm{right}}.\n", @@ -964,9 +1063,7 @@ { "cell_type": "markdown", "id": "05821fe6", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "Here the MSE for a specific node is defined as" ] @@ -974,9 +1071,7 @@ { "cell_type": "markdown", "id": "321fb878", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\mathrm{MSE}_{\\mathrm{node}}=\\frac{1}{m_\\mathrm{node}}\\sum_{i\\in \\mathrm{node}}(\\overline{y}_{\\mathrm{node}}-y_i)^2,\n", @@ -986,9 +1081,7 @@ { "cell_type": "markdown", "id": "5703ea44", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "with" ] @@ -996,9 +1089,7 @@ { "cell_type": "markdown", "id": "6b6cf145", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\overline{y}_{\\mathrm{node}}=\\frac{1}{m_\\mathrm{node}}\\sum_{i\\in \\mathrm{node}}y_i,\n", @@ -1008,9 +1099,7 @@ { "cell_type": "markdown", "id": "57f159ee", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "the mean value of all observations in a specific node.\n", "\n", @@ -1021,9 +1110,7 @@ { "cell_type": "markdown", "id": "8dba6c9f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Why binary splits?\n", "\n", @@ -1036,9 +1123,7 @@ { "cell_type": "markdown", "id": "54686dd2", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Computing a Tree using the Gini Index\n", "\n", @@ -1062,9 +1147,7 @@ { "cell_type": "markdown", "id": "226714bc", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## The Table\n", "\n", @@ -1090,9 +1173,7 @@ { "cell_type": "markdown", "id": "132a6df7", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Computing the various Gini Indices\n", "\n", @@ -1107,9 +1188,7 @@ { "cell_type": "markdown", "id": "75ab3e53", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Computing the various Gini Indices, Hours slept\n", "\n", @@ -1121,9 +1200,7 @@ { "cell_type": "markdown", "id": "be9d82ec", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Computing the various Gini Indices, Hours studied\n", "\n", @@ -1137,22 +1214,164 @@ { "cell_type": "markdown", "id": "b502bb89", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## A possible code using Scikit-Learn" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "id": "2e5fc857", - "metadata": { - "collapsed": false, - "editable": true - }, - "outputs": [], + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Grade TrendHours sleptHours StudiedGrade
01011
10100
21011
31111
40010
51000
60110
70010
81000
91111
\n", + "
" + ], + "text/plain": [ + " Grade Trend Hours slept Hours Studied Grade\n", + "0 1 0 1 1\n", + "1 0 1 0 0\n", + "2 1 0 1 1\n", + "3 1 1 1 1\n", + "4 0 0 1 0\n", + "5 1 0 0 0\n", + "6 0 1 1 0\n", + "7 0 0 1 0\n", + "8 1 0 0 0\n", + "9 1 1 1 1" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[1 0 1]\n", + " [0 1 0]\n", + " [1 0 1]\n", + " [1 1 1]\n", + " [0 0 1]\n", + " [1 0 0]\n", + " [0 1 1]\n", + " [0 0 1]\n", + " [1 0 0]\n", + " [1 1 1]]\n", + "Train set accuracy with Decision Tree: 1.00\n" + ] + }, + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Common imports\n", "import numpy as np\n", @@ -1219,9 +1438,7 @@ { "cell_type": "markdown", "id": "fe2aa246", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Further example: Computing the Gini index\n", "\n", @@ -1263,9 +1480,7 @@ { "cell_type": "markdown", "id": "46f289da", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Simple Python Code to read in Data and perform Classification" ] @@ -1274,10 +1489,7 @@ "cell_type": "code", "execution_count": 7, "id": "38aedbca", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "# Common imports\n", @@ -1352,9 +1564,7 @@ { "cell_type": "markdown", "id": "a6f5da59", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Computing the Gini Factor\n", "\n", @@ -1370,10 +1580,7 @@ "cell_type": "code", "execution_count": 8, "id": "e51855f9", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "# Split a dataset based on an attribute and an attribute value\n", @@ -1441,9 +1648,7 @@ { "cell_type": "markdown", "id": "f6add3e5", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Regression trees" ] @@ -1452,10 +1657,7 @@ "cell_type": "code", "execution_count": 9, "id": "74ecc649", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "# Quadratic training set + noise\n", @@ -1470,10 +1672,7 @@ "cell_type": "code", "execution_count": 10, "id": "04024d89", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", @@ -1485,9 +1684,7 @@ { "cell_type": "markdown", "id": "878b4d23", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Final regressor code" ] @@ -1496,10 +1693,7 @@ "cell_type": "code", "execution_count": 11, "id": "3c96bff5", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", @@ -1546,10 +1740,7 @@ "cell_type": "code", "execution_count": 12, "id": "527b27ca", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "tree_reg1 = DecisionTreeRegressor(random_state=42)\n", @@ -1585,9 +1776,7 @@ { "cell_type": "markdown", "id": "f2a0dd48", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Pros and cons of trees, pros\n", "\n", @@ -1609,9 +1798,7 @@ { "cell_type": "markdown", "id": "9f896560", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Disadvantages\n", "\n", @@ -1637,9 +1824,7 @@ { "cell_type": "markdown", "id": "3f6f50e2", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods\n", "\n", @@ -1668,9 +1853,7 @@ { "cell_type": "markdown", "id": "24509012", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## An Overview of Ensemble Methods\n", "\n", @@ -1684,9 +1867,7 @@ { "cell_type": "markdown", "id": "15a871bc", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Why Voting?\n", "\n", @@ -1708,9 +1889,7 @@ { "cell_type": "markdown", "id": "e6d75533", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Tossing coins\n", "\n", @@ -1739,9 +1918,7 @@ { "cell_type": "markdown", "id": "8ecb23d0", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Standard imports first" ] @@ -1750,10 +1927,7 @@ "cell_type": "code", "execution_count": 13, "id": "b42d0a08", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "# Common imports\n", @@ -1798,9 +1972,7 @@ { "cell_type": "markdown", "id": "e3060cfd", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Simple Voting Example, head or tail" ] @@ -1809,10 +1981,7 @@ "cell_type": "code", "execution_count": 14, "id": "59d25264", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "\n", @@ -1843,9 +2012,7 @@ { "cell_type": "markdown", "id": "f8cf0e6e", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Using the Voting Classifier\n", "\n", @@ -1856,10 +2023,7 @@ "cell_type": "code", "execution_count": 15, "id": "76fd4c2d", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", @@ -1909,9 +2073,7 @@ { "cell_type": "markdown", "id": "eacefe6c", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Voting and Bagging" ] @@ -1920,10 +2082,7 @@ "cell_type": "code", "execution_count": 16, "id": "796dfa6b", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", @@ -1950,10 +2109,7 @@ "cell_type": "code", "execution_count": 17, "id": "90ec162f", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", @@ -1968,10 +2124,7 @@ "cell_type": "code", "execution_count": 18, "id": "e46dcb77", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "log_clf = LogisticRegression(random_state=42)\n", @@ -1988,10 +2141,7 @@ "cell_type": "code", "execution_count": 19, "id": "67a3b080", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", @@ -2005,9 +2155,7 @@ { "cell_type": "markdown", "id": "f0d51672", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Bagging\n", "\n", @@ -2027,9 +2175,7 @@ { "cell_type": "markdown", "id": "ab182ea8", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## More bagging\n", "\n", @@ -2059,9 +2205,7 @@ { "cell_type": "markdown", "id": "998512be", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Making your own Bootstrap: Changing the Level of the Decision Tree\n", "\n", @@ -2073,10 +2217,7 @@ "cell_type": "code", "execution_count": 20, "id": "6ac20f8b", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "\n", @@ -2142,9 +2283,7 @@ { "cell_type": "markdown", "id": "c9a44ff4", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Random forests\n", "\n", @@ -2165,9 +2304,7 @@ { "cell_type": "markdown", "id": "74f9056f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "m\\approx \\sqrt{p}.\n", @@ -2177,9 +2314,7 @@ { "cell_type": "markdown", "id": "9a0166e1", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "In building a random forest, at\n", "each split in the tree, the algorithm is not even allowed to consider\n", @@ -2202,9 +2337,7 @@ { "cell_type": "markdown", "id": "7e5dd3c9", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Random Forest Algorithm\n", "The algorithm described here can be applied to both classification and regression problems.\n", @@ -2228,9 +2361,7 @@ { "cell_type": "markdown", "id": "b2476d94", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Random Forests Compared with other Methods on the Cancer Data" ] @@ -2239,10 +2370,7 @@ "cell_type": "code", "execution_count": 21, "id": "0a56d5de", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -2311,9 +2439,7 @@ { "cell_type": "markdown", "id": "ef32420e", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "Recall that the cumulative gains curve shows the percentage of the\n", "overall number of cases in a given category *gained* by targeting a\n", @@ -2327,9 +2453,7 @@ { "cell_type": "markdown", "id": "5820ebfd", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Compare Bagging on Trees with Random Forests" ] @@ -2338,10 +2462,7 @@ "cell_type": "code", "execution_count": 22, "id": "bb5bea62", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "bag_clf = BaggingClassifier(\n", @@ -2353,10 +2474,7 @@ "cell_type": "code", "execution_count": 23, "id": "b879f3ce", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "bag_clf.fit(X_train, y_train)\n", @@ -2371,9 +2489,7 @@ { "cell_type": "markdown", "id": "60160f97", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Boosting, a Bird's Eye View\n", "\n", @@ -2391,9 +2507,7 @@ { "cell_type": "markdown", "id": "b351b1bd", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## What is boosting? Additive Modelling/Iterative Fitting\n", "\n", @@ -2405,9 +2519,7 @@ { "cell_type": "markdown", "id": "6e9174ef", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "f_M(x) = \\sum_{i=1}^M \\beta_m b(x;\\gamma_m),\n", @@ -2417,9 +2529,7 @@ { "cell_type": "markdown", "id": "fc319721", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where $\\beta_m$ are the expansion parameters to be determined in a\n", "minimization process and $b(x;\\gamma_m)$ are some simple functions of\n", @@ -2434,9 +2544,7 @@ { "cell_type": "markdown", "id": "da4ba861", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\sigma(t) = \\frac{1}{1+\\exp{(-t)}},\n", @@ -2446,9 +2554,7 @@ { "cell_type": "markdown", "id": "f444a5a4", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where $t=\\gamma_0+\\gamma_1 x$ and the parameters $\\gamma_0$ and\n", "$\\gamma_1$ were determined by the Logistic Regression fitting\n", @@ -2460,9 +2566,7 @@ { "cell_type": "markdown", "id": "8a4d8175", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "C(\\boldsymbol{y},\\boldsymbol{f}) = \\frac{1}{n} \\sum_{i=0}^{n-1}(y_i-f(x_i))^2.\n", @@ -2472,9 +2576,7 @@ { "cell_type": "markdown", "id": "de12bc14", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "In this case the function $f(x)$ was replaced by the design matrix\n", "$\\boldsymbol{X}$ and the unknown linear regression parameters $\\boldsymbol{\\beta}$,\n", @@ -2485,9 +2587,7 @@ { "cell_type": "markdown", "id": "735bf417", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\boldsymbol{\\beta}=\\left(\\boldsymbol{X}^T\\boldsymbol{X}\\right)^{-1}\\boldsymbol{X}^T\\boldsymbol{y}.\n", @@ -2497,9 +2597,7 @@ { "cell_type": "markdown", "id": "22b8d82f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters $\\beta_m$ and $\\gamma_m$." ] @@ -2507,9 +2605,7 @@ { "cell_type": "markdown", "id": "661db2e1", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Iterative Fitting, Regression and Squared-error Cost Function\n", "\n", @@ -2535,9 +2631,7 @@ { "cell_type": "markdown", "id": "2b14c81e", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Squared-Error Example and Iterative Fitting\n", "\n", @@ -2551,9 +2645,7 @@ { "cell_type": "markdown", "id": "64c44231", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "(\\beta_m,\\gamma_m) = \\mathrm{argmin}_{\\beta,\\lambda}\\hspace{0.1cm} \\sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\\beta b(x;\\gamma))^2=\\sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\\beta(1+\\gamma x_i))^2.\n", @@ -2563,9 +2655,7 @@ { "cell_type": "markdown", "id": "1040bdaf", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "We start our iteration by simply setting $f_0(x)=0$. \n", "Taking the derivatives with respect to $\\beta$ and $\\gamma$ we obtain" @@ -2574,9 +2664,7 @@ { "cell_type": "markdown", "id": "de59d269", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\frac{\\partial {\\cal C}}{\\partial \\beta} = -2\\sum_{i}(1+\\gamma x_i)(y_i-\\beta(1+\\gamma x_i))=0,\n", @@ -2586,9 +2674,7 @@ { "cell_type": "markdown", "id": "5f87e844", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "and" ] @@ -2596,9 +2682,7 @@ { "cell_type": "markdown", "id": "a2f9215c", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\frac{\\partial {\\cal C}}{\\partial \\gamma} =-2\\sum_{i}\\beta x_i(y_i-\\beta(1+\\gamma x_i))=0.\n", @@ -2608,9 +2692,7 @@ { "cell_type": "markdown", "id": "67f71f90", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "We can then rewrite these equations as (defining $\\boldsymbol{w}=\\boldsymbol{e}+\\gamma \\boldsymbol{x})$ with $\\boldsymbol{e}$ being the unit vector)" ] @@ -2618,9 +2700,7 @@ { "cell_type": "markdown", "id": "5410f260", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\gamma \\boldsymbol{w}^T(\\boldsymbol{y}-\\beta\\gamma \\boldsymbol{w})=0,\n", @@ -2630,9 +2710,7 @@ { "cell_type": "markdown", "id": "0485a1f5", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which gives us $\\beta = \\boldsymbol{w}^T\\boldsymbol{y}/(\\boldsymbol{w}^T\\boldsymbol{w})$. Similarly we have" ] @@ -2640,9 +2718,7 @@ { "cell_type": "markdown", "id": "3a256711", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\beta\\gamma \\boldsymbol{x}^T(\\boldsymbol{y}-\\beta(1+\\gamma \\boldsymbol{x}))=0,\n", @@ -2652,9 +2728,7 @@ { "cell_type": "markdown", "id": "fc8cd2ae", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which leads to $\\gamma =(\\boldsymbol{x}^T\\boldsymbol{y}-\\beta\\boldsymbol{x}^T\\boldsymbol{e})/(\\beta\\boldsymbol{x}^T\\boldsymbol{x})$. Inserting\n", "for $\\beta$ gives us an equation for $\\gamma$. This is a non-linear equation in the unknown $\\gamma$ and has to be solved numerically. \n", @@ -2666,9 +2740,7 @@ { "cell_type": "markdown", "id": "0a9ecf4b", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Iterative Fitting, Classification and AdaBoost\n", "\n", @@ -2682,9 +2754,7 @@ { "cell_type": "markdown", "id": "ac605ae7", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\mathrm{\\overline{err}}=\\frac{1}{n} \\sum_{i=0}^{n-1} I(y_i\\ne G(x_i)).\n", @@ -2694,9 +2764,7 @@ { "cell_type": "markdown", "id": "b4d530db", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "The iterative procedure starts with defining a weak classifier whose\n", "error rate is barely better than random guessing. The iterative\n", @@ -2710,9 +2778,7 @@ { "cell_type": "markdown", "id": "0f9fce0f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "f_M(x) = \\sum_{i=1}^M \\beta_m b(x;\\gamma_m),\n", @@ -2722,9 +2788,7 @@ { "cell_type": "markdown", "id": "73471c17", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "will be a function of" ] @@ -2732,9 +2796,7 @@ { "cell_type": "markdown", "id": "d8244842", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "G_M(x) = \\mathrm{sign} \\sum_{i=1}^M \\alpha_m G_m(x).\n", @@ -2744,9 +2806,7 @@ { "cell_type": "markdown", "id": "be09fe99", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Adaptive Boosting, AdaBoost\n", "\n", @@ -2756,9 +2816,7 @@ { "cell_type": "markdown", "id": "a547cf77", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "f_m(x) = f_{m-1}(x)+\\beta_mG_m(x).\n", @@ -2768,9 +2826,7 @@ { "cell_type": "markdown", "id": "67b1198a", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the\n", "exponential cost/loss function defined as" @@ -2779,9 +2835,7 @@ { "cell_type": "markdown", "id": "f0a75e83", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "C(\\boldsymbol{y},\\boldsymbol{f}) = \\sum_{i=0}^{n-1}\\exp{(-y_i(f_{m-1}(x_i)+\\beta G(x_i))}.\n", @@ -2791,9 +2845,7 @@ { "cell_type": "markdown", "id": "9d2d96dc", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "We optimize $\\beta$ and $G$ for each value of $m=1:M$ as we did in the regression case.\n", "This is normally done in two steps. Let us however first rewrite the cost function as" @@ -2802,9 +2854,7 @@ { "cell_type": "markdown", "id": "a6c2a558", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "C(\\boldsymbol{y},\\boldsymbol{f}) = \\sum_{i=0}^{n-1}w_i^{m}\\exp{(-y_i\\beta G(x_i))},\n", @@ -2814,9 +2864,7 @@ { "cell_type": "markdown", "id": "5a582df6", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where we have defined $w_i^m= \\exp{(-y_if_{m-1}(x_i))}$." ] @@ -2824,9 +2872,7 @@ { "cell_type": "markdown", "id": "654c5f13", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Building up AdaBoost\n", "\n", @@ -2836,9 +2882,7 @@ { "cell_type": "markdown", "id": "efecb2bc", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "G_m(x) = \\mathrm{sign} \\sum_{i=0}^{n-1} w_i^m I(y_i \\ne G_(x_i)),\n", @@ -2848,9 +2892,7 @@ { "cell_type": "markdown", "id": "da78bb27", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which is the classifier that minimizes the weighted error rate in predicting $y$.\n", "\n", @@ -2860,9 +2902,7 @@ { "cell_type": "markdown", "id": "dc1c118f", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\exp{-(\\beta)}\\sum_{y_i=G(x_i)}w_i^m+\\exp{(\\beta)}\\sum_{y_i\\ne G(x_i)}w_i^m,\n", @@ -2872,9 +2912,7 @@ { "cell_type": "markdown", "id": "1b77640d", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which can be rewritten as" ] @@ -2882,9 +2920,7 @@ { "cell_type": "markdown", "id": "d7944742", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "(\\exp{(\\beta)}-\\exp{-(\\beta)})\\sum_{i=0}^{n-1}w_i^mI(y_i\\ne G(x_i))+\\exp{(-\\beta)}\\sum_{i=0}^{n-1}w_i^m=0,\n", @@ -2894,9 +2930,7 @@ { "cell_type": "markdown", "id": "94ffa0c4", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which leads to" ] @@ -2904,9 +2938,7 @@ { "cell_type": "markdown", "id": "eae46622", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\beta_m = \\frac{1}{2}\\log{\\frac{1-\\mathrm{\\overline{err}}}{\\mathrm{\\overline{err}}}},\n", @@ -2916,9 +2948,7 @@ { "cell_type": "markdown", "id": "099f71b5", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where we have redefined the error as" ] @@ -2926,9 +2956,7 @@ { "cell_type": "markdown", "id": "11e5f200", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\mathrm{\\overline{err}}_m=\\frac{1}{n}\\frac{\\sum_{i=0}^{n-1}w_i^mI(y_i\\ne G(x_i)}{\\sum_{i=0}^{n-1}w_i^m},\n", @@ -2938,9 +2966,7 @@ { "cell_type": "markdown", "id": "77b52ed2", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "which leads to an update of" ] @@ -2948,9 +2974,7 @@ { "cell_type": "markdown", "id": "e8fe5df6", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "f_m(x) = f_{m-1}(x) +\\beta_m G_m(x).\n", @@ -2960,9 +2984,7 @@ { "cell_type": "markdown", "id": "4c1ea9b7", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "This leads to the new weights" ] @@ -2970,9 +2992,7 @@ { "cell_type": "markdown", "id": "a61b875a", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "w_i^{m+1} = w_i^m \\exp{(-y_i\\beta_m G_m(x_i))}\n", @@ -2982,9 +3002,7 @@ { "cell_type": "markdown", "id": "a0df6e36", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Adaptive boosting: AdaBoost, Basic Algorithm\n", "\n", @@ -3002,9 +3020,7 @@ { "cell_type": "markdown", "id": "862806de", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\mathrm{err}=\\frac{1}{n}\\sum_{i=0}^{n-1}I(y_i\\ne G(x_i)),\n", @@ -3014,9 +3030,7 @@ { "cell_type": "markdown", "id": "60c6b96e", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "where the function $I()$ is one if we misclassify and zero if we classify correctly." ] @@ -3024,9 +3038,7 @@ { "cell_type": "markdown", "id": "d4cf16bb", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## Basic Steps of AdaBoost\n", "\n", @@ -3040,9 +3052,7 @@ { "cell_type": "markdown", "id": "91e907b9", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "$$\n", "\\mathrm{\\overline{err}}_m=\\frac{\\sum_{i=0}^{n-1}w_i^m I(y_i\\ne G(x_i))}{\\sum_{i=0}^{n-1}w_i},\n", @@ -3052,9 +3062,7 @@ { "cell_type": "markdown", "id": "cc913a38", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "1. Then we start looping over all attempts at classifying, namely we start an iterative process for $m=1:M$, where $M$ is the final number of classifications. Our given classifier could for example be a plain decision tree.\n", "\n", @@ -3080,9 +3088,7 @@ { "cell_type": "markdown", "id": "87e49535", - "metadata": { - "editable": true - }, + "metadata": {}, "source": [ "## AdaBoost Examples\n", "\n", @@ -3093,10 +3099,7 @@ "cell_type": "code", "execution_count": 24, "id": "a48ac6a2", - "metadata": { - "collapsed": false, - "editable": true - }, + "metadata": {}, "outputs": [], "source": [ "from sklearn.ensemble import AdaBoostClassifier\n", @@ -3123,7 +3126,25 @@ ] } ], - "metadata": {}, + "metadata": { + "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.10" + } + }, "nbformat": 4, "nbformat_minor": 5 } diff --git a/doc/src/week46/DataFiles/grades.csv b/doc/src/week46/DataFiles/grades.csv new file mode 100644 index 000000000..eda2ed442 --- /dev/null +++ b/doc/src/week46/DataFiles/grades.csv @@ -0,0 +1,11 @@ +Grade Trend,Hours slept,Hours Studied,Grade +1,0,1,1 +0,1,0,0 +1,0,1,1 +1,1,1,1 +0,0,1,0 +1,0,0,0 +0,1,1,0 +0,0,1,0 +1,0,0,0 +1,1,1,1