{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Ridge Regression\n", "\n", "## Rückblick Lineare Regression\n", "\n", "Lineare Regression: $\\mathbf{y}=𝑏+w_1\\mathbf{x}$\n", "\n", "$\\mathbf{x} \\in \\mathbb{R}^n$: Einflussgröße (Feature) \n", "$\\mathbf{y} \\in \\mathbb{R}^n$: Zielvariable (Target) \n", "$n$: Anzahl der Trainingsinstanzen \n", "$b,w_1 \\in \\mathbb{R}$: Gewichte/Parameter \n", "\n", "Linear Regression Straffunktion (Loss) ist definiert als: \n", "\n", "$\\mathcal{L}(\\mathbf{w})= \\sum_{i=1}^n \\left[y_i - (b - \\mathbf{w}^T \\mathbf{x}_i) \\right]^2$ \n", "\n", "Zum lernen der unbekannten Gewichte $\\mathbf{w}$ muss man die Straffunktion $\\mathcal{L}$ minimieren. \n", "\n", "### Simuliere und Plotte Daten" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "" ], "text/vnd.plotly.v1+html": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "(120, 1)\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "data": [ { "marker": { "color": "#4C72B0", "line": { "color": "#4C72B0", "width": 0 }, "opacity": 1, "size": 10, "symbol": "dot" }, "mode": "markers", "name": "_line0", "type": "scatter", "x": [ -3, -2.95, -2.9000000000000004, -2.8500000000000005, -2.8000000000000007, -2.750000000000001, -2.700000000000001, -2.6500000000000012, -2.6000000000000014, -2.5500000000000016, -2.5000000000000018, -2.450000000000002, -2.400000000000002, -2.3500000000000023, -2.3000000000000025, -2.2500000000000027, -2.200000000000003, -2.150000000000003, -2.100000000000003, -2.0500000000000034, -2.0000000000000036, -1.9500000000000037, -1.900000000000004, -1.850000000000004, -1.8000000000000043, -1.7500000000000044, -1.7000000000000046, -1.6500000000000048, -1.600000000000005, -1.5500000000000052, -1.5000000000000053, -1.4500000000000055, -1.4000000000000057, -1.3500000000000059, -1.300000000000006, -1.2500000000000062, -1.2000000000000064, -1.1500000000000066, -1.1000000000000068, -1.050000000000007, -1.000000000000007, -0.9500000000000073, -0.9000000000000075, -0.8500000000000076, -0.8000000000000078, -0.750000000000008, -0.7000000000000082, -0.6500000000000083, -0.6000000000000085, -0.5500000000000087, -0.5000000000000089, -0.45000000000000906, -0.40000000000000924, -0.3500000000000094, -0.3000000000000096, -0.25000000000000977, -0.20000000000000995, -0.15000000000001013, -0.1000000000000103, -0.05000000000001048, -1.0658141036401503e-14, 0.049999999999989164, 0.09999999999998899, 0.1499999999999888, 0.19999999999998863, 0.24999999999998845, 0.2999999999999883, 0.3499999999999881, 0.3999999999999879, 0.44999999999998774, 0.49999999999998757, 0.5499999999999874, 0.5999999999999872, 0.649999999999987, 0.6999999999999869, 0.7499999999999867, 0.7999999999999865, 0.8499999999999863, 0.8999999999999861, 0.949999999999986, 0.9999999999999858, 1.0499999999999856, 1.0999999999999854, 1.1499999999999853, 1.199999999999985, 1.249999999999985, 1.2999999999999847, 1.3499999999999845, 1.3999999999999844, 1.4499999999999842, 1.499999999999984, 1.5499999999999838, 1.5999999999999837, 1.6499999999999835, 1.6999999999999833, 1.7499999999999831, 1.799999999999983, 1.8499999999999828, 1.8999999999999826, 1.9499999999999824, 1.9999999999999822, 2.049999999999982, 2.099999999999982, 2.1499999999999817, 2.1999999999999815, 2.2499999999999813, 2.299999999999981, 2.349999999999981, 2.399999999999981, 2.4499999999999806, 2.4999999999999805, 2.5499999999999803, 2.59999999999998, 2.64999999999998, 2.6999999999999797, 2.7499999999999796, 2.7999999999999794, 2.849999999999979, 2.899999999999979, 2.949999999999979 ], "xaxis": "x1", "y": [ -0.9652265111212932, -0.9563445692585602, -0.9826483654899265, -0.9977154157742639, -0.9776307839822501, -0.9837552527028381, -0.9994797695273089, -0.9998468035352951, -0.9939803027335864, -0.9997391767614422, -0.9989264123633589, -0.9998851341346121, -0.996215446179222, -0.9952914128080986, -0.998903765943952, -0.9949188588654654, -0.9961994043923177, -0.968580970947965, -0.9871435045119046, -0.9900037385911287, -0.8957307810351677, -0.9482882221584775, -0.9272694266717505, -0.9648479228420022, -0.9266538868535982, -0.8859160338983258, -0.9258356786147242, -0.8410145476609432, -0.8749698382332967, -0.843122033336221, -0.8428989995469296, -0.6637594986976759, -0.7713728861574329, -0.815736365310866, -0.6702603874060817, -0.787956152021579, -0.6691734040918048, -0.7947122219655769, -0.733847792051068, -0.5972342088940323, -0.5264943711279393, -0.5478280021861752, -0.5455552530111611, -0.5347240204254576, -0.6055899612125125, -0.5168979845713587, -0.46699274874809465, -0.2980935926198499, -0.3359647114786903, -0.49851007178912815, -0.2780379057311548, -0.31575434553046433, -0.3136357908793998, -0.15807798247412014, -0.08529185484456667, -0.06390803802021004, -0.20805444751052474, -0.1248424300680887, -0.029701141348117494, 0.06609037824642926, -0.047899088853827314, 0.012849675232691428, -0.04778344197130973, -0.025370160448809395, 0.20544294818180814, 0.28854191903912796, 0.18030305501395497, 0.3148178839075318, 0.28354710788276355, 0.21650327467816155, 0.34317850104698394, 0.478880334462787, 0.3647911764894711, 0.5353072063996278, 0.17691238270159915, 0.5256075832147095, 0.48936331892293605, 0.48308089301108453, 0.5435517466062375, 0.3877097621197332, 0.5698730381808622, 0.6407277085086207, 0.7439350496744521, 0.6215652876269055, 0.6234385520934167, 0.6707521660000176, 0.7884926306961978, 0.7714425413112564, 0.7356798951564911, 0.8205591472722453, 0.8146848591489821, 0.8775642926813619, 0.8046610326047859, 0.8436036354420002, 0.8567479966313652, 0.8152761590118438, 0.9170367182477198, 0.9278084967267087, 0.9299646032175956, 0.9326762652396448, 0.8979547954289456, 0.9477120573697846, 0.9594931055228867, 0.9552953397104175, 0.9791374300684609, 0.9932012428888003, 0.9980189957004394, 0.9970530965904278, 0.9993127336687545, 0.9992450250829974, 0.98164799414028, 0.9995863291720576, 0.997630439553239, 0.9425637597491929, 0.9943419256498542, 0.9825227933217305, 0.9829317653086372, 0.9946956957192457, 0.9339059578090384, 0.9366216987229501 ], "yaxis": "y1" } ], "layout": { "autosize": false, "height": 432, "hovermode": "closest", "margin": { "b": 54, "l": 90, "pad": 0, "r": 71, "t": 51 }, "showlegend": false, "width": 720, "xaxis1": { "anchor": "y1", "domain": [ 0, 1 ], "dtick": 1, "mirror": "ticks", "range": [ -3.1, 3.1 ], "showgrid": true, "showline": true, "side": "bottom", "tick0": -3, "tickfont": { "size": 17 }, "tickmode": false, "ticks": "inside", "title": "x", "titlefont": { "color": "#262626", "size": 18.7 }, "type": "linear", "zeroline": false }, "yaxis1": { "anchor": "x1", "domain": [ 0, 1 ], "dtick": 0.5, "mirror": "ticks", "range": [ -1.1, 1.1 ], "showgrid": true, "showline": true, "side": "left", "tick0": -1, "tickfont": { "size": 17 }, "tickmode": false, "ticks": "inside", "title": "y", "titlefont": { "color": "#262626", "size": 18.7 }, "type": "linear", "zeroline": false } } }, "text/html": [ "
" ], "text/vnd.plotly.v1+html": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#Importiere Python Libraries\n", "%matplotlib inline\n", "import pylab as pl\n", "import seaborn as sns\n", "sns.set(font_scale=1.7)\n", "\n", "from plotly.offline import init_notebook_mode, iplot\n", "from plotly.graph_objs import *\n", "import plotly.tools as tls\n", "#Set to True\n", "init_notebook_mode(connected=True)\n", "\n", "import scipy as sp\n", "from sklearn.preprocessing import PolynomialFeatures, StandardScaler\n", "from sklearn.linear_model import LinearRegression, Ridge\n", "from sklearn.pipeline import Pipeline\n", "from ipywidgets import *\n", "from IPython.display import display\n", "\n", "#Funktion zum Plotten der Daten\n", "def plot_data(X,y,model=None,interactive=False):\n", " fig = pl.figure(figsize=(10,6))\n", " pl.plot(X,y,'o',markersize=10)\n", " pl.xlabel(\"x\")\n", " pl.ylabel(\"y\")\n", " pl.title(\"\")\n", " pl.ylim([-1.1,1.1])\n", " pl.xlim([-3.1,3.1])\n", " pl.xticks([-3,-2,-1,0,1,2,3],[\"50\",\"60\",\"70\",\"80\",\"90\",\"100\",\"110\"])\n", " pl.yticks([-1,-0.5,0,0.5,1],[\"200k\",\"400k\",\"600k\",\"800k\",\"1M\"])\n", " if not model==None:\n", " X_new=sp.linspace(-3, 3, 100).reshape(100, 1)\n", " y_new = model.predict(X_new)\n", " pl.plot(X_new,y_new,\"r-\",linewidth=4,label=\"Learned Regression Fit\")\n", " pl.legend()\n", " if interactive:\n", " plotly_fig = tls.mpl_to_plotly(fig)\n", " iplot(plotly_fig, show_link=False)\n", "\n", "\n", "#Funktion um Beispieldaten zu simulieren\n", "def generate_data():\n", " sp.random.seed(42)\n", " X = sp.arange(-3,3,1.0/20.0).reshape(-1,1)\n", " y = sp.sin(0.2*sp.pi*X+0.1*sp.random.randn(X.shape[0],1))\n", " return X,y\n", "\n", "def generate_polynomial_features(X,degree=1,return_transformer=True):\n", " transformer = PolynomialFeatures(degree=degree, include_bias=False)\n", " X_poly = transformer.fit_transform(X)\n", " if return_transformer:\n", " return X_poly, transformer\n", " else:\n", " return X_poly\n", "\n", "#Generiere Daten\n", "X,y = generate_data()\n", "print X.shape\n", "#Plotte Daten\n", "plot_data(X,y,interactive=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Lerne Lineare Regression auf Daten" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Anzahl der Trainingsinstanzen:\t120\n", "Anzahl der Features:\t\t1\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/Library/Python/2.7/site-packages/plotly/matplotlylib/renderer.py:384: UserWarning:\n", "\n", "Bummer! Plotly can currently only draw Line2D objects from matplotlib that are in 'data' coordinates!\n", "\n", "/Library/Python/2.7/site-packages/plotly/matplotlylib/renderer.py:481: UserWarning:\n", "\n", "I found a path object that I don't think is part of a bar chart. Ignoring.\n", "\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "data": [ { "marker": { "color": "#4C72B0", "line": { "color": "#4C72B0", "width": 0 }, "opacity": 1, "size": 10, "symbol": "dot" }, "mode": "markers", "name": "_line0", "type": "scatter", "x": [ -3, -2.95, -2.9000000000000004, -2.8500000000000005, -2.8000000000000007, -2.750000000000001, -2.700000000000001, -2.6500000000000012, -2.6000000000000014, -2.5500000000000016, -2.5000000000000018, -2.450000000000002, -2.400000000000002, -2.3500000000000023, -2.3000000000000025, -2.2500000000000027, -2.200000000000003, -2.150000000000003, -2.100000000000003, -2.0500000000000034, -2.0000000000000036, -1.9500000000000037, -1.900000000000004, -1.850000000000004, -1.8000000000000043, -1.7500000000000044, -1.7000000000000046, -1.6500000000000048, -1.600000000000005, -1.5500000000000052, -1.5000000000000053, -1.4500000000000055, -1.4000000000000057, -1.3500000000000059, -1.300000000000006, -1.2500000000000062, -1.2000000000000064, -1.1500000000000066, -1.1000000000000068, -1.050000000000007, -1.000000000000007, -0.9500000000000073, -0.9000000000000075, -0.8500000000000076, -0.8000000000000078, -0.750000000000008, -0.7000000000000082, -0.6500000000000083, -0.6000000000000085, -0.5500000000000087, -0.5000000000000089, -0.45000000000000906, -0.40000000000000924, -0.3500000000000094, -0.3000000000000096, -0.25000000000000977, -0.20000000000000995, -0.15000000000001013, -0.1000000000000103, -0.05000000000001048, -1.0658141036401503e-14, 0.049999999999989164, 0.09999999999998899, 0.1499999999999888, 0.19999999999998863, 0.24999999999998845, 0.2999999999999883, 0.3499999999999881, 0.3999999999999879, 0.44999999999998774, 0.49999999999998757, 0.5499999999999874, 0.5999999999999872, 0.649999999999987, 0.6999999999999869, 0.7499999999999867, 0.7999999999999865, 0.8499999999999863, 0.8999999999999861, 0.949999999999986, 0.9999999999999858, 1.0499999999999856, 1.0999999999999854, 1.1499999999999853, 1.199999999999985, 1.249999999999985, 1.2999999999999847, 1.3499999999999845, 1.3999999999999844, 1.4499999999999842, 1.499999999999984, 1.5499999999999838, 1.5999999999999837, 1.6499999999999835, 1.6999999999999833, 1.7499999999999831, 1.799999999999983, 1.8499999999999828, 1.8999999999999826, 1.9499999999999824, 1.9999999999999822, 2.049999999999982, 2.099999999999982, 2.1499999999999817, 2.1999999999999815, 2.2499999999999813, 2.299999999999981, 2.349999999999981, 2.399999999999981, 2.4499999999999806, 2.4999999999999805, 2.5499999999999803, 2.59999999999998, 2.64999999999998, 2.6999999999999797, 2.7499999999999796, 2.7999999999999794, 2.849999999999979, 2.899999999999979, 2.949999999999979 ], "xaxis": "x1", "y": [ -0.9652265111212932, -0.9563445692585602, -0.9826483654899265, -0.9977154157742639, -0.9776307839822501, -0.9837552527028381, -0.9994797695273089, -0.9998468035352951, -0.9939803027335864, -0.9997391767614422, -0.9989264123633589, -0.9998851341346121, -0.996215446179222, -0.9952914128080986, -0.998903765943952, -0.9949188588654654, -0.9961994043923177, -0.968580970947965, -0.9871435045119046, -0.9900037385911287, -0.8957307810351677, -0.9482882221584775, -0.9272694266717505, -0.9648479228420022, -0.9266538868535982, -0.8859160338983258, -0.9258356786147242, -0.8410145476609432, -0.8749698382332967, -0.843122033336221, -0.8428989995469296, -0.6637594986976759, -0.7713728861574329, -0.815736365310866, -0.6702603874060817, -0.787956152021579, -0.6691734040918048, -0.7947122219655769, -0.733847792051068, -0.5972342088940323, -0.5264943711279393, -0.5478280021861752, -0.5455552530111611, -0.5347240204254576, -0.6055899612125125, -0.5168979845713587, -0.46699274874809465, -0.2980935926198499, -0.3359647114786903, -0.49851007178912815, -0.2780379057311548, -0.31575434553046433, -0.3136357908793998, -0.15807798247412014, -0.08529185484456667, -0.06390803802021004, -0.20805444751052474, -0.1248424300680887, -0.029701141348117494, 0.06609037824642926, -0.047899088853827314, 0.012849675232691428, -0.04778344197130973, -0.025370160448809395, 0.20544294818180814, 0.28854191903912796, 0.18030305501395497, 0.3148178839075318, 0.28354710788276355, 0.21650327467816155, 0.34317850104698394, 0.478880334462787, 0.3647911764894711, 0.5353072063996278, 0.17691238270159915, 0.5256075832147095, 0.48936331892293605, 0.48308089301108453, 0.5435517466062375, 0.3877097621197332, 0.5698730381808622, 0.6407277085086207, 0.7439350496744521, 0.6215652876269055, 0.6234385520934167, 0.6707521660000176, 0.7884926306961978, 0.7714425413112564, 0.7356798951564911, 0.8205591472722453, 0.8146848591489821, 0.8775642926813619, 0.8046610326047859, 0.8436036354420002, 0.8567479966313652, 0.8152761590118438, 0.9170367182477198, 0.9278084967267087, 0.9299646032175956, 0.9326762652396448, 0.8979547954289456, 0.9477120573697846, 0.9594931055228867, 0.9552953397104175, 0.9791374300684609, 0.9932012428888003, 0.9980189957004394, 0.9970530965904278, 0.9993127336687545, 0.9992450250829974, 0.98164799414028, 0.9995863291720576, 0.997630439553239, 0.9425637597491929, 0.9943419256498542, 0.9825227933217305, 0.9829317653086372, 0.9946956957192457, 0.9339059578090384, 0.9366216987229501 ], "yaxis": "y1" }, { "line": { "color": "rgba (255, 0, 0, 1)", "dash": "solid", "width": 4 }, "mode": "lines", "name": "Learned Regression Fit", "type": "scatter", "x": [ -3, -2.9393939393939394, -2.878787878787879, -2.8181818181818183, -2.757575757575758, -2.696969696969697, -2.6363636363636362, -2.5757575757575757, -2.515151515151515, -2.4545454545454546, -2.393939393939394, -2.333333333333333, -2.2727272727272725, -2.212121212121212, -2.1515151515151514, -2.090909090909091, -2.0303030303030303, -1.9696969696969697, -1.9090909090909092, -1.8484848484848484, -1.7878787878787878, -1.7272727272727273, -1.6666666666666665, -1.606060606060606, -1.5454545454545454, -1.4848484848484849, -1.4242424242424243, -1.3636363636363635, -1.303030303030303, -1.2424242424242424, -1.1818181818181817, -1.121212121212121, -1.0606060606060606, -1, -0.9393939393939394, -0.8787878787878789, -0.8181818181818183, -0.7575757575757573, -0.6969696969696968, -0.6363636363636362, -0.5757575757575757, -0.5151515151515151, -0.4545454545454546, -0.39393939393939403, -0.33333333333333304, -0.2727272727272725, -0.21212121212121193, -0.15151515151515138, -0.09090909090909083, -0.030303030303030276, 0.030303030303030276, 0.09090909090909083, 0.15151515151515138, 0.21212121212121238, 0.27272727272727293, 0.3333333333333335, 0.39393939393939403, 0.4545454545454546, 0.5151515151515151, 0.5757575757575757, 0.6363636363636367, 0.6969696969696972, 0.7575757575757578, 0.8181818181818183, 0.8787878787878789, 0.9393939393939394, 1, 1.0606060606060606, 1.121212121212121, 1.1818181818181817, 1.2424242424242422, 1.3030303030303028, 1.3636363636363633, 1.4242424242424248, 1.4848484848484853, 1.5454545454545459, 1.6060606060606064, 1.666666666666667, 1.7272727272727275, 1.787878787878788, 1.8484848484848486, 1.9090909090909092, 1.9696969696969697, 2.0303030303030303, 2.090909090909091, 2.1515151515151514, 2.212121212121212, 2.2727272727272725, 2.333333333333334, 2.3939393939393945, 2.454545454545455, 2.5151515151515156, 2.575757575757576, 2.6363636363636367, 2.6969696969696972, 2.757575757575758, 2.8181818181818183, 2.878787878787879, 2.9393939393939394, 3 ], "xaxis": "x1", "y": [ -1.2983471807357594, -1.2721797145002656, -1.2460122482647717, -1.2198447820292777, -1.1936773157937839, -1.1675098495582898, -1.141342383322796, -1.1151749170873022, -1.0890074508518084, -1.0628399846163146, -1.0366725183808208, -1.0105050521453267, -0.9843375859098328, -0.958170119674339, -0.932002653438845, -0.9058351872033512, -0.8796677209678574, -0.8535002547323636, -0.8273327884968698, -0.8011653222613758, -0.7749978560258819, -0.7488303897903881, -0.7226629235548941, -0.6964954573194003, -0.6703279910839065, -0.6441605248484127, -0.6179930586129189, -0.5918255923774248, -0.565658126141931, -0.5394906599064372, -0.5133231936709433, -0.48715572743544944, -0.46098826119995556, -0.43482079496446174, -0.4086533287289679, -0.38248586249347405, -0.35631839625798023, -0.3301509300224862, -0.30398346378699237, -0.2778159975514985, -0.2516485313160047, -0.22548106508051083, -0.19931359884501698, -0.17314613260952316, -0.14697866637402912, -0.12081120013853529, -0.09464373390304144, -0.06847626766754761, -0.04230880143205376, -0.016141335196559928, 0.010026131038933914, 0.03619359727442775, 0.0623610635099216, 0.08852852974541563, 0.11469599598090946, 0.1408634622164033, 0.16703092845189715, 0.19319839468739097, 0.21936586092288482, 0.24553332715837867, 0.2717007933938727, 0.2978682596293665, 0.3240357258648604, 0.3502031921003542, 0.37637065833584804, 0.4025381245713419, 0.42870559080683573, 0.45487305704232955, 0.48104052327782343, 0.5072079895133172, 0.5333754557488111, 0.5595429219843049, 0.5857103882197988, 0.611877854455293, 0.6380453206907868, 0.6642127869262807, 0.6903802531617745, 0.7165477193972684, 0.7427151856327622, 0.768882651868256, 0.7950501181037499, 0.8212175843392437, 0.8473850505747376, 0.8735525168102314, 0.8997199830457252, 0.925887449281219, 0.952054915516713, 0.9782223817522068, 1.004389847987701, 1.0305573142231947, 1.0567247804586886, 1.0828922466941824, 1.1090597129296762, 1.13522717916517, 1.1613946454006638, 1.1875621116361577, 1.2137295778716515, 1.2398970441071455, 1.2660645103426393, 1.2922319765781332 ], "yaxis": "y1" } ], "layout": { "annotations": [ { "align": "left", "font": { "color": "#262626", "size": 17 }, "opacity": 1, "showarrow": false, "text": "Learned Regression Fit", "x": 0.11272401433691757, "xanchor": "left", "xref": "paper", "y": 0.9165074440960291, "yanchor": "bottom", "yref": "paper" } ], "autosize": false, "height": 432, "hovermode": "closest", "margin": { "b": 54, "l": 90, "pad": 0, "r": 71, "t": 51 }, "showlegend": false, "width": 720, "xaxis1": { "anchor": "y1", "domain": [ 0, 1 ], "dtick": 1, "mirror": "ticks", "range": [ -3.1, 3.1 ], "showgrid": true, "showline": true, "side": "bottom", "tick0": -3, "tickfont": { "size": 17 }, "tickmode": false, "ticks": "inside", "title": "x", "titlefont": { "color": "#262626", "size": 18.7 }, "type": "linear", "zeroline": false }, "yaxis1": { "anchor": "x1", "domain": [ 0, 1 ], "dtick": 0.5, "mirror": "ticks", "range": [ -1.1, 1.1 ], "showgrid": true, "showline": true, "side": "left", "tick0": -1, "tickfont": { "size": 17 }, "tickmode": false, "ticks": "inside", "title": "y", "titlefont": { "color": "#262626", "size": 18.7 }, "type": "linear", "zeroline": false } } }, "text/html": [ "" ], "text/vnd.plotly.v1+html": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#Lerne Lineare Regression\n", "print \"Anzahl der Trainingsinstanzen:\\t%d\"%(X.shape[0])\n", "print \"Anzahl der Features:\\t\\t%d\"%(X.shape[1])\n", "model = LinearRegression()\n", "model.fit(X,y)\n", "#Plotte Daten und die gelernte Funktion\n", "plot_data(X,y,model,interactive=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Model beschreibt die zugrundeliegenden Daten nur schlecht -> Model ist Unterangepasst!**\n", "\n", "### Polynomiale Regression\n", "\n", "Polynomiale Regression durch hinzufügen von Features höherer Ordnung, z.B. Polynom des 100. Grades: \n", "\n", "$\\mathbf{y} = b + w_1 \\mathbf{x}_1 + w_2 \\mathbf{x}_1^2 + w_3 \\mathbf{x}_1^3 + \\dots + + w_2 \\mathbf{x}_1^{100} $" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "