diff --git a/doc/pub/week38/ipynb/w38KHBiasVariance.ipynb b/doc/pub/week38/ipynb/w38KHBiasVariance.ipynb deleted file mode 100644 index 43efc5e41..000000000 --- a/doc/pub/week38/ipynb/w38KHBiasVariance.ipynb +++ /dev/null @@ -1,196 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "\n", - "from sklearn.preprocessing import PolynomialFeatures\n", - "from sklearn.linear_model import LinearRegression\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.utils import resample\n", - "from sklearn.metrics import mean_squared_error" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "n = 50 # increase, var goes down\n", - "x = np.random.rand(n) * 10\n", - "y = 5 + x**2 + np.random.randn(n) * 3 # decrease,\n", - "poly = PolynomialFeatures(10) # increase, var goes up" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "X = poly.fit_transform(x.reshape(n, 1))\n", - "\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)\n", - "x_test = X_test[:, 1]" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "models = []\n", - "for i in range(10):\n", - " X_sample, y_sample = resample(X_train, y_train)\n", - " mdl = LinearRegression().fit(X_sample, y_sample)\n", - " models.append(mdl)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "92.13165463148223\n", - "92.13165463148225\n" - ] - }, - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjMAAAGdCAYAAADnrPLBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA6QUlEQVR4nO3de3RU5b3/8c9cMnsmYRIDgQyRIBepFoOK4KGALVhuWkQtZ3kp6oEjZWkBNUWqRXsqciSpN/QUVqn0uIBKEdf5Ka3VWoja4uF4QxTLxUKt3JQMUYgzk2Rumdm/P4aMDvdoJsMO79dae83M3s/s/d3R5Xx89rOfbTNN0xQAAIBF2XNdAAAAwNdBmAEAAJZGmAEAAJZGmAEAAJZGmAEAAJZGmAEAAJZGmAEAAJZGmAEAAJbmzHUB7SGZTGrfvn3yer2y2Wy5LgcAAJwE0zQVCoVUVlYmu/3Y/S+nRZjZt2+fysvLc10GAAD4Cvbu3asePXocc/tpEWa8Xq+k1B+jsLAwx9UAAICTEQwGVV5env4dP5bTIsy0XFoqLCwkzAAAYDEnGiLCAGAAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAGBphBkAAPCVNMWa1eunL6rXT19UU6w5Z3UQZgAAgKURZgAAgKURZgAAgKURZgAAgKVlNcw0NzfrZz/7mXr37i2Px6M+ffpo3rx5SiaT6TamaWru3LkqKyuTx+PRyJEjtXXr1oz9RKNR3XbbbSopKVFBQYGuvPJKffzxx9ksHQAAWERWw8yDDz6oX//611q0aJE++OADPfTQQ3r44Ye1cOHCdJuHHnpICxYs0KJFi7Rhwwb5fD6NGTNGoVAo3aayslKrV6/WqlWrtH79ejU0NOiKK65QIpHIZvkAAMACnNnc+RtvvKGrrrpK48ePlyT16tVLTz/9tN555x1JqV6Zxx9/XPfee68mTpwoSVq+fLlKS0u1cuVK3XLLLQoEAnryySf11FNPafTo0ZKkFStWqLy8XC+//LLGjRuXzVMAAACnuKz2zFxyySV65ZVXtGPHDknS+++/r/Xr1+t73/ueJGnnzp3y+/0aO3Zs+juGYWjEiBF6/fXXJUkbN25UPB7PaFNWVqaKiop0m8NFo1EFg8GMBQAAdExZ7Zm5++67FQgEdO6558rhcCiRSGj+/Pn6wQ9+IEny+/2SpNLS0ozvlZaWavfu3ek2LpdLxcXFR7Rp+f7hqqurdf/997f16QAAgFNQVntmnnnmGa1YsUIrV67Uu+++q+XLl+uRRx7R8uXLM9rZbLaMz6ZpHrHucMdrM2fOHAUCgfSyd+/er3ciAADglJXVnpmf/OQn+ulPf6rrr79ekjRgwADt3r1b1dXVmjx5snw+n6RU70v37t3T36urq0v31vh8PsViMdXX12f0ztTV1WnYsGFHPa5hGDIMI1unBQAATiFZ7ZlpamqS3Z55CIfDkb41u3fv3vL5fKqpqUlvj8ViWrduXTqoDBo0SHl5eRltamtrtWXLlmOGGQAAcPrIas/MhAkTNH/+fPXs2VPnnXee3nvvPS1YsEA333yzpNTlpcrKSlVVValfv37q16+fqqqqlJ+fr0mTJkmSioqKNHXqVN15553q0qWLOnfurNmzZ2vAgAHpu5sAAMDpK6thZuHChfqP//gPTZ8+XXV1dSorK9Mtt9yin//85+k2d911l8LhsKZPn676+noNGTJEa9euldfrTbd57LHH5HQ6de211yocDmvUqFFatmyZHA5HNssHAAAWYDNN08x1EdkWDAZVVFSkQCCgwsLCXJcDAECH0BRrVv+fr5EkbZs3Tvmutu0jOdnfb57NBAAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALC3rYeaTTz7RjTfeqC5duig/P18XXnihNm7cmN5umqbmzp2rsrIyeTwejRw5Ulu3bs3YRzQa1W233aaSkhIVFBToyiuv1Mcff5zt0gEAgAVkNczU19dr+PDhysvL00svvaRt27bp0Ucf1RlnnJFu89BDD2nBggVatGiRNmzYIJ/PpzFjxigUCqXbVFZWavXq1Vq1apXWr1+vhoYGXXHFFUokEtksHwAAWIAzmzt/8MEHVV5erqVLl6bX9erVK/3eNE09/vjjuvfeezVx4kRJ0vLly1VaWqqVK1fqlltuUSAQ0JNPPqmnnnpKo0ePliStWLFC5eXlevnllzVu3LhsngIAADjFZbVn5vnnn9fgwYN1zTXXqFu3bho4cKB+85vfpLfv3LlTfr9fY8eOTa8zDEMjRozQ66+/LknauHGj4vF4RpuysjJVVFSk2xwuGo0qGAxmLAAAoGPKapj56KOPtHjxYvXr109r1qzRrbfeqttvv12//e1vJUl+v1+SVFpamvG90tLS9Da/3y+Xy6Xi4uJjtjlcdXW1ioqK0kt5eXlbnxoAADhFZDXMJJNJXXTRRaqqqtLAgQN1yy23aNq0aVq8eHFGO5vNlvHZNM0j1h3ueG3mzJmjQCCQXvbu3fv1TgQAAJyyshpmunfvrv79+2es++Y3v6k9e/ZIknw+nyQd0cNSV1eX7q3x+XyKxWKqr68/ZpvDGYahwsLCjAUAAHRMWQ0zw4cP1/bt2zPW7dixQ2eddZYkqXfv3vL5fKqpqUlvj8ViWrdunYYNGyZJGjRokPLy8jLa1NbWasuWLek2AADg9JXVu5l+/OMfa9iwYaqqqtK1116rt99+W0uWLNGSJUskpS4vVVZWqqqqSv369VO/fv1UVVWl/Px8TZo0SZJUVFSkqVOn6s4771SXLl3UuXNnzZ49WwMGDEjf3QQAAE5fWQ0zF198sVavXq05c+Zo3rx56t27tx5//HHdcMMN6TZ33XWXwuGwpk+frvr6eg0ZMkRr166V1+tNt3nsscfkdDp17bXXKhwOa9SoUVq2bJkcDkc2ywcAABZgM03TzHUR2RYMBlVUVKRAIMD4GQAA2khTrFn9f75GkrRt3jjlu9q2j+Rkf795NhMAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALC0dgsz1dXVstlsqqysTK8zTVNz585VWVmZPB6PRo4cqa1bt2Z8LxqN6rbbblNJSYkKCgp05ZVX6uOPP26vsgEAwCmuXcLMhg0btGTJEp1//vkZ6x966CEtWLBAixYt0oYNG+Tz+TRmzBiFQqF0m8rKSq1evVqrVq3S+vXr1dDQoCuuuEKJRKI9SgcAAKe4rIeZhoYG3XDDDfrNb36j4uLi9HrTNPX444/r3nvv1cSJE1VRUaHly5erqalJK1eulCQFAgE9+eSTevTRRzV69GgNHDhQK1as0ObNm/Xyyy9nu3QAAGABWQ8zM2bM0Pjx4zV69OiM9Tt37pTf79fYsWPT6wzD0IgRI/T6669LkjZu3Kh4PJ7RpqysTBUVFek2RxONRhUMBjMWAADQMTmzufNVq1bp3Xff1YYNG47Y5vf7JUmlpaUZ60tLS7V79+50G5fLldGj09Km5ftHU11drfvvv//rlg8AACwgaz0ze/fu1R133KEVK1bI7XYfs53NZsv4bJrmEesOd6I2c+bMUSAQSC979+5tXfEAAMAyshZmNm7cqLq6Og0aNEhOp1NOp1Pr1q3TL3/5SzmdznSPzOE9LHV1deltPp9PsVhM9fX1x2xzNIZhqLCwMGMBAAAdU9bCzKhRo7R582Zt2rQpvQwePFg33HCDNm3apD59+sjn86mmpib9nVgspnXr1mnYsGGSpEGDBikvLy+jTW1trbZs2ZJuAwAATm9ZGzPj9XpVUVGRsa6goEBdunRJr6+srFRVVZX69eunfv36qaqqSvn5+Zo0aZIkqaioSFOnTtWdd96pLl26qHPnzpo9e7YGDBhwxIBiAABwesrqAOATueuuuxQOhzV9+nTV19dryJAhWrt2rbxeb7rNY489JqfTqWuvvVbhcFijRo3SsmXL5HA4clg5AAA4VdhM0zRzXUS2BYNBFRUVKRAIMH4GAIA20hRrVv+fr5EkbZs3Tvmutu0jOdnfb57NBAAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALC2rYaa6uloXX3yxvF6vunXrpquvvlrbt2/PaGOapubOnauysjJ5PB6NHDlSW7duzWgTjUZ12223qaSkRAUFBbryyiv18ccfZ7N0AABgEVkNM+vWrdOMGTP05ptvqqamRs3NzRo7dqwaGxvTbR566CEtWLBAixYt0oYNG+Tz+TRmzBiFQqF0m8rKSq1evVqrVq3S+vXr1dDQoCuuuEKJRCKb5QMAAAuwmaZpttfBPv30U3Xr1k3r1q3Td77zHZmmqbKyMlVWVuruu++WlOqFKS0t1YMPPqhbbrlFgUBAXbt21VNPPaXrrrtOkrRv3z6Vl5frT3/6k8aNG3fC4waDQRUVFSkQCKiwsDCr5wgAwOmiKdas/j9fI0naNm+c8l3ONt3/yf5+t+uYmUAgIEnq3LmzJGnnzp3y+/0aO3Zsuo1hGBoxYoRef/11SdLGjRsVj8cz2pSVlamioiLd5nDRaFTBYDBjAQAAHVO7hRnTNDVr1ixdcsklqqiokCT5/X5JUmlpaUbb0tLS9Da/3y+Xy6Xi4uJjtjlcdXW1ioqK0kt5eXlbnw4AADhFtFuYmTlzpv72t7/p6aefPmKbzWbL+Gya5hHrDne8NnPmzFEgEEgve/fu/eqFAwCAU1q7hJnbbrtNzz//vP7yl7+oR48e6fU+n0+SjuhhqaurS/fW+Hw+xWIx1dfXH7PN4QzDUGFhYcYCAADaSH299NRT0o035boSSVkOM6ZpaubMmXruuef06quvqnfv3hnbe/fuLZ/Pp5qamvS6WCymdevWadiwYZKkQYMGKS8vL6NNbW2ttmzZkm4DAACyzO+XnnhCuvpq6ZZbUusWLsxpSS3adtjxYWbMmKGVK1fqD3/4g7xeb7oHpqioSB6PRzabTZWVlaqqqlK/fv3Ur18/VVVVKT8/X5MmTUq3nTp1qu6880516dJFnTt31uzZszVgwACNHj06m+UDAHB6271bWr1aevll6YwzUkFmxQqpU6fU9lhzLqtLy2qYWbx4sSRp5MiRGeuXLl2qKVOmSJLuuusuhcNhTZ8+XfX19RoyZIjWrl0rr9ebbv/YY4/J6XTq2muvVTgc1qhRo7Rs2TI5HI5slg8AwOln+3bpueekdeukM8+UJk6Ubr1VcrtzXdkxtes8M7nCPDMAAByDaUrvv58KMG++KX3jG9K//qv07W9LzuP3eZwq88xktWcGAACcgpJJ6a23pGefTQWZCy9MBZi5cyW79R7bSJgBAOB00NycunT03HPShx9K3/qWdNNN0sMPSyeYDuVUR5gBAKCjikRSg3efe06qrZVGjJBuv10655xcV9amCDMAAHQkDQ3SSy9Jv/+9FAxKo0enLh/17JnryrKGMAMAgNXV10t//GNqicel731PWrBAOsbksh0NYQYAACvy+1O9Ly+9JBmGdOWV0pIl0mHPMjwdEGYAALCKXbu+mMSuuFj6/vellSulgoJcV5ZThBkAAE5lf/97agDva69JPXqkJrGbPj3VGwNJhBkAAE4tpilt2pQKMG+9lbrzaOJE6a67TjiJ3emKvwoAALmWTKZm3332Welvf5MGDkwFmPvvt+Qkdu2NMAMAQC7E45mT2A0dKv3bv0nnn2/5SezaG2EGAID2EolINTWpQby1tdLIkVJlZep5SBaUSH7xeMe3Pjqo73yjqxz29g9ihBkAALIpFMqcxG7sWGtNYhcOS3v2SHv2yNy1W6E9n2j/vs+0/dNGbYy5pQvHS5L+fdkGdS9y674J/XVZRfd2LZGnZgMA0NYOHvxiErtEIjWJ3ZVXnnqT2Jmm9Nln0u7diu7ao7pd+7R/32fyH2zQftOl/XkF2m8Uyt+pWHXOAvnNPIWTx+55admy+MaL2iTQ8NRsAADaU21tqvflz3/+YhK7//5v6YwzcldTLKbk3r068I/d2r9rn/bXHpD/QEj7w0ntd+Zrv7NAfneh9ucVqF6GpN6Sq7fkO8q+El+8tdlSOehwplKB5v4/btOY/r52u+REmAEA4KvatSs1gPeVV6TOnaWrr26/SexMU6H9n2n/P3Zr/8592l97UP4DIdWFovLbDPmdBarLK1CdM1/NNruk4tTSSanlKFxOu3yFbpUWGiotdKu00C1foVvdCg35Ct3yKabP/99q7X5ypc79bJfyoxFdMnN5ZlmSagMRvb3zoIb27ZLlP0IKYQYAgNb44INUgPnf/5XKy1O3UM+Y0aaT2MWak6qrb9T+nR9r/y6//LWfaf+BBu1viGl/3Kb9zgLtd+ar0eE69A2HpK6SvatUdOT+bDappFMqkJR6XSp1JlUaCcr30Qcq3fqeSj/6u3y1u1QUOCBbInH0bpdDeko6X6nQ0pDnPma7ulDka/wFWocwAwDo8BJJU2/vPKi6UETdvG79S+/OJ38JxDSl995LBZi335bOPTcVYO6+u9WT2CWTpg42xbQ/GNF+f7327/HLX3tAdQca5G+IaX9M2m/36IDTc9g381OLS6nlS7wOqdQWk6/hgLp9tk++z/bJV79f3QJ18gU/U2nDAXVtqJfTTB67MJstNZ+NYUiFhanByd/6lnTVVdLw4RlB7c1/HtAPfvPmCc+1m/fYQaetEWYAAB3an7fU6v4/blNt4IueghPedZNMSm+8kZrEbvNm6aKLUgFm3rxjTmLXGG2WPxhJBZXPw6mBtLUHVXewJajYVGdzKW5zHOXbh677fCmouBJxdWusV2nogHyhAyoNfabShoPyhQ6oW8NB+RoOqLThgPLj0cxd2e2SwyF5PFKXLtJ5A6V/+RdpwgRp8OCvPYvwv/TurO5FbvkDER2t/8YmyVeUCozthbuZAAAd1p+31OpHK9494kf3qHfdxOPSX/+a6oH56KPUJHYTJyre/zx92hCTPxhRXTAifyAi/8EG1fnrU3f9hKLaH7erwXbyIaGkJaQ0HFS3hkNhpeGgShsOqDSUCirF4aBsdruUl5cag9O1q9S3byqYXHGFdMEFOXu8Qav+rl/Dyf5+E2YAAB1SImnqkgdfzeiROVwPj01PnB1X3V/+L9Wj0vNs+bv2UF3UTPWmJJ064HDLtJ3cIwU6RZsOhZNUIMkIKo31Ko01qJtiyutWkgomQ4ZIl12WmvXXYs9d+vOWWt33/FbtD37RM9TW88wQZr6EMAMAHVdzOKKGzz5X6MDnCtYHFfq8QaFgk/6x5zP935aP5Uim7ilO2u2K251qMPJV7ynUpwXFijvzTuoYzkTzFz0nDQdTSyQoX6JJpYZU2q1YpRedp06XficVTNztN14kl0KRuAbMXStJWjrl4jafAZh5ZgAAp7ZoVM31n6eCyMGAgp+HFAo0KhQKK9QYSb02RBSKxBWMJxVK2BS05ylkcynkcCmU51YoL19NrqMFB5ukrlLvricso0vj5+rW9Ll8kaBKFVVpQZ5Ke5bKd14/dRvwDfl8ndU53yV7DqbpP9V9ObgM6dOKQdVtjDADACfpa90R00bHaI8ajss0U88XCgaV+DyghoMBBQ8EFAykekNCDRGFGqMKhWMKheOpINJsKiRnanG4FHIYCjndCrqOFkQcypgI5Sh37xyLOx6VN9YkbywsbzImj5lQQyyhqNOlRpdbQaOTmgyPkvbMAbiLKi9rt/lQkB2EGQA4CV/pjpg2PsbXqsE0paam1LOBgkElAgE1HAx+0RsSbFKoMaJgU0yhSLNC0YRC8aSCpkMhOTKDSJ5HIZdHja4v3z6cp9QEJ4cmObEpfTfxyTDiURW2BJFEVIX2pLxup7yFBfKWnCFvaYm8xV55z/DK28mjQrdTXndeqs2h9y5n5riWljEzp9JdN8gOwgwAnMCx7tzwByL60Yp32+TOjeMe46mNmnlxqVa/slmdwyH1jjTIE4/IaI4rL9msmvUv6ECPQuW7nApF4grFTQVNRyqI2JwK2fJSQcTpTl2aceV/KYi0dH0Upz7a1aoQIqWCiDfWpMJYWN7miArVLG+eXd4CQ97iQnm7nCFv1zNSr8VeFXbynDCItAWH3ab7JvTXj1a8K5uU8bdt6cu6b0L/nF0aQdshzADAcSSSpu7/47aj/p99q59DY5qpJygfPKjYpwcU+vSggp99rsCBoP76f//Q98MxOZPNciYTijryFM5zK5xnqNHl0ct1H0lGgfac4VPIfeRc9M+2vGnlLPoZQSQeljcZV6EjKa/hTIWRok7ydi1O9Yx07azCzoXyevOzHkTaymUV3bX4xouO6NHy5ejpzsgOwgwAHMfbOw8ecWuvLZmQN9okb6xJBdGwPPui+t2DH8ubjCl4IKBQsEnBaLNCzVLQnqegw1DIYSjo8ijkylfQla9oXsuMqoe6Qc4+2pP9js9ojsobaVKnWGopTMRUZEvI65C8LrsK8w15izulgsiZpSr0dU1dsunksUQQaSuXVXTXmP6+3I41QlYRZgB0GKZpKp4wFY4nFIknFI4lFGlOKBxtVjjQoEioUZGGJoUbwgo3NikSbFQkEEp9boooHIkrGk8onDAVNu0K2xwK25062+FS1OlSxOlK95QEPV4FPd70sd8PHHrjKpNKTr7mTtEmeaON8kYbVRCLKD8Wlrs5JlciLpuZVMLmUKPLrXpPkfZ7Oyvg7qS4MzUiNuo0FO1k6LNDl4j+6/oLddWFZ7bVn7NDcdhtDPLtwAgzwCks53eutBHTNBVtTqYCxqGQ0RI4IvFk+nM4nlA0llA4HFU41KhwsCEVOBqaFG4MK9wUVSTWrEizqbBsCsuhiN2piCNPYaehsNN1xJ0qx+eSdOgHznNoaQUjHpU3eqhXJB5WUSKWGi/ilLz5hgoLPakxI906q/BMn7xl3VR4hldet1OF7jx1cjvlsNv0xkk+6+ZE2vNZOMCphDADnKLa4+6ZZNJM9Vykw0Vm4Gh5H4k1p4JEU1ThcFSRSCz1Gk69hhvDijRFFYnFFW6WwrIpYmsJGakejZOdQfXo3KklT6nlJDiSCXniUbmbY/IkUos7mZDbbJbHlpTHLrmddnkMp9weQ55O+XIXeeXpfIbcXTvLU9RJbpdThtOuu5/9mw42xo84RjTPUCzPUF5Rd62++7tfOWie6Fk3kmS3pYbccFcOcCTCDI7QUXoDrMo0Tb3wt3267elNR2yrDUR062/f0a3fKtO5hU6FQ02ppTGsSENYkaawwuGYwtF4KpgkTIWTUlh2hW1ORW0OhR0uhZ2pJeY8yQk8juvQvCCOTifVs+FqjstIxORpjsmTjMtjJuS2melg4XG75O7kkdtbIE+nfHnyDXk8hgxP6tXjcsiT55D70PLFZ3vq9dDnPEfbjQVJJE39aMW7krJzR8zJ3HUz7du9teS1ndyVAxwFYeZryMaPfnsHicOPV98Y03++mN3eAKtIJE1FmxOKxpOKHHptuVQSjScUCUcVDUdTr5GYIo1hRRuaFAk2KNrQpGhTRNFITNFoTJFYIvXdpBQ1bYrIrqjNoajNoYgjT1FHniJOl6KOvC8NDD0Gu12/ftt/2MrDJvUwDi2tYDRH5WmOyZ2Iy5OIy63Eod4Lhzwel9z5bnk6eVI9GJ088njccucb8uQbcruc6YDhcTlSweQoocPttMvZhiGjvbTHHTEnc4yBPYu5Kwc4Cp7N9BVl4xJAe1xWONHxjqatn4LaWvFIVNFASJFAKBUWQk2KNqZ6IaKNEUUjUUUicUWjcUVjzYrGmw+Fh4QiidRYjWhzqpcimjAVMe0ZgSJidyhqz1PU4VT0UKCIOF2KO07yekYW2cyk3PGY3M1RuZujMprjMg4NDu1klwrybPLkOVI9GgWp3gx35zPk6XKGPEVeuQs8chupoHG8Hg2308FU7SeBGYCBTE2xZvX/+RpJ0rZ545Tvats+Eh40+SVtHWay8ejz9nqceos17+3WXcvflOfQ3RPeWJMKYmF1ioWVHwurIBZJTcqVOPTj2RyTN8+u8ed1U+xQz0S0OaFI86GAkDAVTUoR06ZoUorKngoLsitidypqd37xeqgnIuN9S+/E4b0UTpcSrRrQmR3ORLPczTEZibjciZiMRLOMZLMMMyFDSbltpgyHTW6nXYbLIbeRJ8NtyO0xZBwKGUaRV0aRV+5OHhlGnow8hwynXe7DXv+6vU4/+/3WE9bEnSsAcu1UCTOWucz0q1/9Sg8//LBqa2t13nnn6fHHH9e3v/3tdq/j8Am0fvzaChWHA0rKdih52PTZqw6t79pJSVNqNqV40lRzUmo2TTWbNjVLh15tiiv12pCQbrHZFXG4tOziqyRJ17/3JzlMU0mbXX/Z9Ge9ludUUjYlbXYlbDaZNpsSNrsSNnv6fXq7/dB7u/1Qe/uh9zYlbA4lJPWwORR3OLSjay9J0ln1+5SUTc12h2qLukmSvJFGxZypUCFJ97bnH/soXM0xGc2xLwWLeCpYmM1ymwkZNlNuh+2LcOB2ye12ych3y+iUL6OwkwxvJ7mLOsnId8tdkAoWbqddxqFeCsP5xavhtMto50sjfbt6T9xI3LkCAC0sEWaeeeYZVVZW6le/+pWGDx+uJ554Qpdffrm2bdumnj17tmsth0+g9dh3bszasVYN/F7W9n00u4vLjlgXch99OlF3PJIKFIcGc7a8dydiMpLNciebZZhJGTZTxqG7RgwjT4Y7L9Vr4TnUa5HvkdubnwoYZ3hlFBfJ3aU4FT4O67VwOeynxaWQE93Zwp0rAJDJEmFmwYIFmjp1qn74wx9Kkh5//HGtWbNGixcvVnV1dbvWUhc6+viSkoZ65SXjyksk5Egm5EwmlJdMyGmm3n95yTMTcpim8syEnGZSSiaVjDfLbiZlyqbnKy6VJF215RU5k0m1TJre2WuoyJ0nu8Muu8Mhh9Mhm8MhR15e6r3TIUeeU3Z76kffYVP6vd1mk8Nuk12m9hxo1Jv//EwypaTNpr+e/S+SpJH/3CBbMqlmu0P/23ewJGnAJ9sVdhlqcBUokufSoqnDNbyih2yO3F/66ah4ngwAtM4pH2ZisZg2btyon/70pxnrx44dq9dff/2o34lGo4pGo+nPwWCwzeo5vGvfE4so7nDqs4IzJNsXPy5PT/vWSc82eawJs/5QMSrjc2v2eaLjVR3leH/te/ER6zafeY6kL3oDhg7oKRs/olnH82QA4OSd8mHms88+UyKRUGlpacb60tJS+f2H356aUl1drfvvvz8r9Rx+CSDsygw3X+USQHtfVjiZCboOP75Eb0B743kyAHByLDPhg82W+R9w0zSPWNdizpw5CgQC6WXv3r1tVkfLJQDpix/5dI2HXlv7o5+NfX7V4x2Nr8ids9uyT3ctz5O56sIzNbRvF4IMABzFKd8zU1JSIofDcUQvTF1d3RG9NS0Mw5BhtHLGsFbIxiWA9r6scKzjdS9y6z/Gf1PFBQa9AQAASzjlw4zL5dKgQYNUU1Oj73//++n1NTU1uuqqq3JWVzYuAbT3ZQUuYwAAOoJTPsxI0qxZs3TTTTdp8ODBGjp0qJYsWaI9e/bo1ltvzWld2XikfHs/pr69jwcAQFuzRJi57rrrdODAAc2bN0+1tbWqqKjQn/70J5111lm5Lg0AAOSYJcKMJE2fPl3Tp0/PdRkAAOAUY5m7mQAAAI6GMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACwta2Fm165dmjp1qnr37i2Px6O+ffvqvvvuUywWy2i3Z88eTZgwQQUFBSopKdHtt99+RJvNmzdrxIgR8ng8OvPMMzVv3jyZppmt0gEAgIU4s7Xjv//970omk3riiSd09tlna8uWLZo2bZoaGxv1yCOPSJISiYTGjx+vrl27av369Tpw4IAmT54s0zS1cOFCSVIwGNSYMWN06aWXasOGDdqxY4emTJmigoIC3XnnndkqHwAAWETWwsxll12myy67LP25T58+2r59uxYvXpwOM2vXrtW2bdu0d+9elZWVSZIeffRRTZkyRfPnz1dhYaF+97vfKRKJaNmyZTIMQxUVFdqxY4cWLFigWbNmyWazZesUAACABbTrmJlAIKDOnTunP7/xxhuqqKhIBxlJGjdunKLRqDZu3JhuM2LECBmGkdFm37592rVrV7vVDgAATk3tFmb++c9/auHChbr11lvT6/x+v0pLSzPaFRcXy+Vyye/3H7NNy+eWNoeLRqMKBoMZCwAA6JhaHWbmzp0rm8123OWdd97J+M6+fft02WWX6ZprrtEPf/jDjG1Hu0xkmmbG+sPbtAz+PdYlpurqahUVFaWX8vLy1p4mAACwiFaPmZk5c6auv/7647bp1atX+v2+fft06aWXaujQoVqyZElGO5/Pp7feeitjXX19veLxeLr3xefzHdEDU1dXJ0lH9Ni0mDNnjmbNmpX+HAwGCTQAAHRQrQ4zJSUlKikpOam2n3zyiS699FINGjRIS5culd2e2RE0dOhQzZ8/X7W1terevbuk1KBgwzA0aNCgdJt77rlHsVhMLpcr3aasrCwjNH2ZYRgZY2wAAEDHlbUxM/v27dPIkSNVXl6uRx55RJ9++qn8fn9GL8vYsWPVv39/3XTTTXrvvff0yiuvaPbs2Zo2bZoKCwslSZMmTZJhGJoyZYq2bNmi1atXq6qqijuZAACApCzemr127Vp9+OGH+vDDD9WjR4+MbS1jXhwOh1588UVNnz5dw4cPl8fj0aRJk9K3bktSUVGRampqNGPGDA0ePFjFxcWaNWtWxmUkAABw+rKZp8FUusFgUEVFRQoEAukeHwAA8PU0xZrV/+drJEnb5o1Tvqtt+0hO9vebZzMBAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLI8wAAABLa5cwE41GdeGFF8pms2nTpk0Z2/bs2aMJEyaooKBAJSUluv322xWLxTLabN68WSNGjJDH49GZZ56pefPmyTTN9igdAACc4pztcZC77rpLZWVlev/99zPWJxIJjR8/Xl27dtX69et14MABTZ48WaZpauHChZKkYDCoMWPG6NJLL9WGDRu0Y8cOTZkyRQUFBbrzzjvbo3wAAHAKy3qYeemll7R27Vo9++yzeumllzK2rV27Vtu2bdPevXtVVlYmSXr00Uc1ZcoUzZ8/X4WFhfrd736nSCSiZcuWyTAMVVRUaMeOHVqwYIFmzZolm82W7VMAAACnsKxeZtq/f7+mTZump556Svn5+Udsf+ONN1RRUZEOMpI0btw4RaNRbdy4Md1mxIgRMgwjo82+ffu0a9euox43Go0qGAxmLAAAoGPKWpgxTVNTpkzRrbfeqsGDBx+1jd/vV2lpaca64uJiuVwu+f3+Y7Zp+dzS5nDV1dUqKipKL+Xl5V/3dAAAwCmq1WFm7ty5stlsx13eeecdLVy4UMFgUHPmzDnu/o52mcg0zYz1h7dpGfx7rEtMc+bMUSAQSC979+5t7WkCAACLaPWYmZkzZ+r6668/bptevXrpgQce0JtvvplxeUiSBg8erBtuuEHLly+Xz+fTW2+9lbG9vr5e8Xg83fvi8/mO6IGpq6uTpCN6bFoYhnHEcQEAQMfU6jBTUlKikpKSE7b75S9/qQceeCD9ed++fRo3bpyeeeYZDRkyRJI0dOhQzZ8/X7W1terevbuk1KBgwzA0aNCgdJt77rlHsVhMLpcr3aasrEy9evVqbfkAAKCDydqYmZ49e6qioiK9fOMb35Ak9e3bVz169JAkjR07Vv3799dNN92k9957T6+88opmz56tadOmqbCwUJI0adIkGYahKVOmaMuWLVq9erWqqqq4kwkAAEjK8QzADodDL774otxut4YPH65rr71WV199tR555JF0m6KiItXU1Ojjjz/W4MGDNX36dM2aNUuzZs3KYeUAAOBU0S6T5kmpcTRHm7W3Z8+eeuGFF4773QEDBui1117LVmkAAMDCeDYTAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwNMIMAACwtKyHmRdffFFDhgyRx+NRSUmJJk6cmLF9z549mjBhggoKClRSUqLbb79dsVgso83mzZs1YsQIeTwenXnmmZo3b55M08x26QAAwAKc2dz5s88+q2nTpqmqqkrf/e53ZZqmNm/enN6eSCQ0fvx4de3aVevXr9eBAwc0efJkmaaphQsXSpKCwaDGjBmjSy+9VBs2bNCOHTs0ZcoUFRQU6M4778xm+QAAwAKyFmaam5t1xx136OGHH9bUqVPT688555z0+7Vr12rbtm3au3evysrKJEmPPvqopkyZovnz56uwsFC/+93vFIlEtGzZMhmGoYqKCu3YsUMLFizQrFmzZLPZsnUKAADAArJ2mendd9/VJ598IrvdroEDB6p79+66/PLLtXXr1nSbN954QxUVFekgI0njxo1TNBrVxo0b021GjBghwzAy2uzbt0+7du066rGj0aiCwWDGAgAAOqashZmPPvpIkjR37lz97Gc/0wsvvKDi4mKNGDFCBw8elCT5/X6VlpZmfK+4uFgul0t+v/+YbVo+t7Q5XHV1tYqKitJLeXl5m54bAAA4dbQ6zMydO1c2m+24yzvvvKNkMilJuvfee/Wv//qvGjRokJYuXSqbzab/+Z//Se/vaJeJTNPMWH94m5bBv8e6xDRnzhwFAoH0snfv3taeJgAAsIhWj5mZOXOmrr/++uO26dWrl0KhkCSpf//+6fWGYahPnz7as2ePJMnn8+mtt97K+G59fb3i8Xi698Xn8x3RA1NXVydJR/TYfPk4X74sBQAAOq5Wh5mSkhKVlJScsN2gQYNkGIa2b9+uSy65RJIUj8e1a9cunXXWWZKkoUOHav78+aqtrVX37t0lpQYFG4ahQYMGpdvcc889isVicrlc6TZlZWXq1atXa8sHAABtJN/l1K5fjM91GdkbM1NYWKhbb71V9913n9auXavt27frRz/6kSTpmmuukSSNHTtW/fv310033aT33ntPr7zyimbPnq1p06apsLBQkjRp0iQZhqEpU6Zoy5YtWr16taqqqriTCQAASMryPDMPP/ywnE6nbrrpJoXDYQ0ZMkSvvvqqiouLJUkOh0Mvvviipk+fruHDh8vj8WjSpEl65JFH0vsoKipSTU2NZsyYocGDB6u4uFizZs3SrFmzslk6AACwCJt5GkylGwwGVVRUpEAgkO7xAQAAp7aT/f3m2UwAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSCDMAAMDSsvrU7FNFy7M0g8FgjisBAAAnq+V3+0TPxD4twkwoFJIklZeX57gSAADQWqFQSEVFRcfcbjNPFHc6gGQyqX379snr9cpms33l/QSDQZWXl2vv3r3HfRS51Z0u5ymdPud6upyndPqc6+lynhLn2hGd7HmapqlQKKSysjLZ7cceGXNa9MzY7Xb16NGjzfZXWFjYof8la3G6nKd0+pzr6XKe0ulzrqfLeUqca0d0Mud5vB6ZFgwABgAAlkaYAQAAlkaYaQXDMHTffffJMIxcl5JVp8t5SqfPuZ4u5ymdPud6upynxLl2RG19nqfFAGAAANBx0TMDAAAsjTADAAAsjTADAAAsjTADAAAsjTBzAtXV1br44ovl9XrVrVs3XX311dq+fXuuy8qKxYsX6/zzz09PYjR06FC99NJLuS4r66qrq2Wz2VRZWZnrUtrc3LlzZbPZMhafz5frsrLik08+0Y033qguXbooPz9fF154oTZu3Jjrstpcr169jvhnarPZNGPGjFyX1uaam5v1s5/9TL1795bH41GfPn00b948JZPJXJfW5kKhkCorK3XWWWfJ4/Fo2LBh2rBhQ67L+tpee+01TZgwQWVlZbLZbPr973+fsd00Tc2dO1dlZWXyeDwaOXKktm7d2urjEGZOYN26dZoxY4befPNN1dTUqLm5WWPHjlVjY2OuS2tzPXr00C9+8Qu98847euedd/Td735XV1111Vf6F8sqNmzYoCVLluj888/PdSlZc95556m2tja9bN68Odcltbn6+noNHz5ceXl5eumll7Rt2zY9+uijOuOMM3JdWpvbsGFDxj/PmpoaSdI111yT48ra3oMPPqhf//rXWrRokT744AM99NBDevjhh7Vw4cJcl9bmfvjDH6qmpkZPPfWUNm/erLFjx2r06NH65JNPcl3a19LY2KgLLrhAixYtOur2hx56SAsWLNCiRYu0YcMG+Xw+jRkzJv1MxZNmolXq6upMSea6detyXUq7KC4uNv/7v/8712VkRSgUMvv162fW1NSYI0aMMO+4445cl9Tm7rvvPvOCCy7IdRlZd/fdd5uXXHJJrsvIiTvuuMPs27evmUwmc11Kmxs/frx58803Z6ybOHGieeONN+aoouxoamoyHQ6H+cILL2Ssv+CCC8x77703R1W1PUnm6tWr05+TyaTp8/nMX/ziF+l1kUjELCoqMn/961+3at/0zLRSIBCQJHXu3DnHlWRXIpHQqlWr1NjYqKFD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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def sort_both(x, y):\n", - " sort_inds = np.argsort(x)\n", - " return x[sort_inds], y[sort_inds]\n", - "\n", - "\n", - "preds = np.zeros((10, y_test.size))\n", - "for i in range(10):\n", - " y_pred = models[i].predict(X_test)\n", - " preds[i, :] = y_pred\n", - "\n", - "means = np.mean(preds, axis=0)\n", - "vars = np.var(preds, axis=0)\n", - "\n", - "bias = np.mean((y_test - means) ** 2)\n", - "variance = np.mean(vars)\n", - "mse = np.mean((preds - y_test) ** 2)\n", - "print(bias + variance)\n", - "print(mse)\n", - "\n", - "for i in range(10):\n", - " y_pred = models[i].predict(X_test)\n", - " plt.plot(*sort_both(x_test, y_pred), lw=0.5, color=\"red\")\n", - "plt.scatter(*sort_both(X_test[:, 1], y_test))\n", - "# plt.scatter(*sort_both(X_train[:, 1], y_train))\n", - "sort_inds = np.argsort(x_test)\n", - "plt.errorbar(*sort_both(x_test, means), yerr=vars[sort_inds])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "15.94085519235225\n" - ] - } - ], - "source": [ - "print(bias)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "76.19079943912999\n" - ] - } - ], - "source": [ - "print(variance)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "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.18" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -}