Files
FYS-STK4155/doc/Programs/JupyterFiles/Examples/My Own Examples/Regression With Random Linear Variables.ipynb
T
2018-05-06 22:19:59 -04:00

178 lines
31 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 85,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"X_train: (37, 1)\n",
"y_train: (37,)\n",
"X_test: (13, 1)\n",
"y_test: (13,)\n",
"------------------------------------\n",
"Ordinary Least Squares\n",
"Prediction Shape: (13,)\n",
"Coefficients: \n",
" [ 0.5192848]\n",
"Mean squared error: 1.69\n",
"Variance score: 0.70\n"
]
},
{
"data": {
"image/png": "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\nsH79el555ZUz7icioSukAj3QSzpdcsklXH311aVfv/baa3Ts2JGOHTuyefPmMgO9Xr16/PrXvwb+\nv1VuWXr37v2TfVauXEm/fv0ASvu7+OvkqTOPx1P6F0JOTg7bt28v8zX+7icioSGo2ueWJ9BLOp1/\n/vmln2/dupUxY8awevVqYmJiGDBgAPn5+T95zXnnnVf6ea1atSgsLCzzvU+01D15n8pezygsLOSL\nL76gTZs2vP/++6xYsYJVq1ZRr149unXrVmad/u4nIqEjpEboTizpdMKPP/5IgwYNaNiwIbt372bJ\nkiVVfoxu3boxZ84cALKyssr8C+B0BQUF/OlPf6J169ZceeWV5ObmcuGFF1KvXj02btzImjVrgOJp\nGaD0H48z7ScioSukAj0tMY2oyKhTtlX3kk4ndOzYkSuvvJJ27doxZMgQunbtWuXHePjhh/nmm2+I\ni4vjhRdeoF27dkRHR5e57z333ENcXBzt27enoKCA+fPnA9CzZ0/y8vLo0KEDTz75JNdcc03pawYP\nHkxcXBz33nvvWfcTkdAUcrct+rJ8AV3SKZAKCwspLCykbt26bN26lR49erB169bS0bUTdNuiiPP8\nvW0xpObQIfBLOgXSoUOHSExMpLCwEGstkydPdjTMRSS0KC2CSExMDGvXrnW6DBEJUUExhx7IaR/x\nn34uIqHF8UCvW7cu+/btU3gEGWst+/bto27duk6XIiJ+cnzK5cSiynv27HG6FDlN3bp1iY2NdboM\nEfGT44EeGRlJq1atnC5DRCTkOT7lIiIiVUOBLiISJhToIiJhQoEuIhImFOgiImFCgS4iEiYU6CIi\nYUKBLiJSzQoKCgJynHID3RhT1xiz2hizwRiz0RjzRMn2VsaYT40xW40xs40x55X3XiIiNckXX3zB\nAw88QKtWrcjLyyv/BefInxH6UeAma20HIB64xRhzLfAPwGOtvRTYDwyuvjJFREJDUVERb7/9Nj16\n9KB9+/bMmjWL22+/PTgC3RY7VPJlZMmHBW4C3ijZPgO4s1oqFBG/+LJ8uLwuIp6IwOV14cvyOV1S\njZKXl8fkyZNp27Ytt956Kxs3buR///d/2bVrFxMnTqRx48bVXoNfvVyMMbWAtUBrYDywHThgrT2x\nAnIO0OwMr00GkgFatKj+tT9FaiJflo/kBcnkHSseBWbnZpO8IBkgbBeECRbffvst48ePZ9KkSfz3\n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\nxP8BGfXElslPbuMAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a142793c8>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"------------------------------------\n",
"Ridge Regression\n",
"Ridge Coefficient: [ 0.51927249]\n",
"Ridge Intercept: 4.67629565898\n",
"------------------------------------\n",
"Lasso\n",
"Lasso Coefficient: [ 0.51840761]\n",
"Lasso Intercept: 4.69186353707\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD8CAYAAABn919SAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3Xl8VOW9x/HPLxAICARFVEpMorWi\nQNiMiIW6gOKKWq1WG7QqGmuVRdsKbdpb9Davi0UhiLhE0IpG3KtFbb1KVfS6QIJgZBNUghGUpRKW\nyBJ47h/PgICBTEIyJ3Pm+3698urMkzNzfqfj/HjyO89izjlERCT+JQUdgIiI1A8ldBGRkFBCFxEJ\nCSV0EZGQUEIXEQkJJXQRkZBQQhcRCQkldBGRkFBCFxEJiaaxPNmhhx7qMjMzY3lKEZG4V1JSssY5\n176m42Ka0DMzMykuLo7lKUVE4p6ZlUVznEouIiIhoYQuIhISSugiIiFRYw3dzFKAmUDzyPHPOuf+\nbGZFQDawDZgF3OCc21bbALZt20Z5eTmbN2+u7UulgaWkpJCWlkZycnLQoYhIFKK5KboF6O+c22hm\nycA7ZvZPoAgYHDnmCeA64P7aBlBeXk7r1q3JzMzEzGr7cmkgzjnWrl1LeXk5Rx11VNDhiEgUaiy5\nOG9j5Gly5Mc5516J/M7he+hpdQlg8+bNtGvXTsm8kTEz2rVrp7+cROJIVDV0M2tiZnOBVcBrzrkP\ndvtdMnAl8K99vDbXzIrNrHj16tX7ev9aBy4NT5+LyIEpKi0isyCTpNuTyCzIpKi0qEHPF1VCd85t\nd871wPfCe5tZ191+fR8w0zn39j5eW+icy3bOZbdvX+O4eBGRUCgqLSJ3ei5lFWU4HGUVZeROz23Q\npF6rUS7OuXXAm8DZAGb2Z6A9cGu9RxZDrVq1CjoEEQmZvBl5VG6r3KOtclsleTPyGuycNSZ0M2tv\nZm0jj1sAZwCLzOw64CzgCufcjgaLUEQkDi2vWF6r9voQTQ+9A/CGmX0EzMbX0F8CHgAOB94zs7lm\n9l8NFmUApk+fzkknnUTPnj0544wz+PrrrwF466236NGjBz169KBnz55s2LCBlStXcsopp9CjRw+6\ndu3K22/76tO0adPIysqia9eujBw5MsjLEZEYS09Nr1V7fahx2KJz7iOgZzXt9b4OzIgRMHdu/b5n\njx5QUFD71/Xr14/3338fM2Py5Mn89a9/5e677+auu+5i0qRJ9O3bl40bN5KSkkJhYSFnnXUWeXl5\nbN++ncrKSlasWMHIkSMpKSnh4IMPZuDAgbzwwgtcdNFF9XuBItIo5Q/IJ3d67h5ll5bJLckfkN9g\n59RM0X0oLy/nrLPOIisri7FjxzJ//nwA+vbty6233so999zDunXraNq0KSeeeCKPPPIIo0ePprS0\nlNatWzN79mxOO+002rdvT9OmTcnJyWHmzJkBX5WIxEpOVg6FgwrJSM3AMDJSMygcVEhOVk6DnTOm\nqy3WpC496YYydOhQbr31Vi644ALefPNNRo8eDcCoUaM477zzeOWVV+jTpw+vv/46p5xyCjNnzuTl\nl1/myiuv5He/+x1t2rQJ9gJEJHA5WTkNmsD31qgSemNSUVFBx44dAXj00Ud3tX/66adkZWWRlZXF\ne++9x6JFi2jRogUdO3bk+uuvZ9OmTcyZM4eRI0cyfPhw1qxZw8EHH8y0adMYOnRoUJcjIglACR2o\nrKwkLe27ia633noro0eP5tJLL6Vjx4706dOHzz//HICCggLeeOMNmjRpQufOnTnnnHN48sknGTt2\nLMnJybRq1YqpU6fSoUMH/ud//ofTTz8d5xznnnsuF154YVCXKCIJwPzM/djIzs52e29wsXDhQo4/\n/viYxSC1o89HJHhmVuKcy67pON0UFREJCSV0EZGQUEIXEQkJJXQRkZBQQhcRCQkldBGRkEj4hL52\n7dpdi20dccQRdOzYcdfzrVu3RvUe11xzDYsXL97vMZMmTaKoqH7WQe7Xrx+dOnWiW7duHHfccQwb\nNoyKior9vmbHjh2MGTOmXs4vIo2TxqHvZvTo0bRq1Yrf/va3e7Q753DOkZTUOP7969evH/fee++u\nf3Ruu+02SktLmTFjxj5fU1VVxaGHHsq6detqda7G9PmIJKrQjkOP1ZZOS5cupWvXrvzqV7+iV69e\nrFy5ktzcXLKzs+nSpQt33HHHrmP79evH3Llzqaqqom3btowaNYru3btz8skns2rVKgD++Mc/UhBZ\nrKZfv36MGjWK3r1706lTJ959910ANm3axCWXXEL37t254ooryM7OZm4Ny082a9aMu+66iyVLluxa\nQGzQoEGccMIJdOnShcmTJwN+DZoNGzbQo0cPrrrqqn0eJyLxK64Seqy3dFqwYAFDhgzhww8/pGPH\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a13e83668>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"from sklearn import linear_model\n",
"from sklearn.linear_model import LinearRegression\n",
"from sklearn.metrics import mean_squared_error, r2_score\n",
"\n",
"#creating data with random noise\n",
"x=np.arange(50)\n",
"\n",
"delta=np.random.uniform(-2.5,2.5, size=(50))\n",
"np.random.shuffle(delta)\n",
"y =0.5*x+5+delta\n",
"\n",
"#arranging data into 2x50 matrix\n",
"a=np.array(x) #inputs\n",
"b=np.array(y) #outputs\n",
"\n",
"#Split into training and test\n",
"X_train=a[:37, np.newaxis]\n",
"X_test=a[37:, np.newaxis]\n",
"y_train=b[:37]\n",
"y_test=b[37:]\n",
"\n",
"print (\"X_train: \", X_train.shape)\n",
"print (\"y_train: \", y_train.shape)\n",
"print (\"X_test: \", X_test.shape)\n",
"print (\"y_test: \", y_test.shape)\n",
"\n",
"print (\"------------------------------------\")\n",
"\n",
"print (\"Ordinary Least Squares\")\n",
"#Add Ordinary Least Squares fit\n",
"reg=LinearRegression()\n",
"reg.fit(X_train, y_train)\n",
"pred=reg.predict(X_test)\n",
"print (\"Prediction Shape: \", pred.shape)\n",
"\n",
"print('Coefficients: \\n', reg.coef_)\n",
"# The mean squared error\n",
"print(\"Mean squared error: %.2f\"\n",
" % mean_squared_error(y_test, pred))\n",
"# Explained variance score: 1 is perfect prediction\n",
"print('Variance score: %.2f' % r2_score(y_test, pred))\n",
"\n",
"#plot\n",
"plt.scatter(X_test,y_test,color='green', label=\"Training Data\")\n",
"plt.plot(X_test, pred, color='black', label=\"Fit Line\")\n",
"plt.legend()\n",
"plt.show()\n",
"\n",
"print (\"------------------------------------\")\n",
"\n",
"print (\"Ridge Regression\")\n",
"\n",
"ridge=linear_model.RidgeCV(alphas=[0.1,1.0,10.0])\n",
"ridge.fit(X_train,y_train)\n",
"print (\"Ridge Coefficient: \",ridge.coef_)\n",
"print (\"Ridge Intercept: \", ridge.intercept_)\n",
"#Look into graphing with Ridge fit\n",
"\n",
"print (\"------------------------------------\")\n",
"\n",
"print (\"Lasso\")\n",
"lasso=linear_model.Lasso(alpha=0.1)\n",
"lasso.fit(X_train,y_train)\n",
"predl=lasso.predict(X_test)\n",
"print(\"Lasso Coefficient: \", lasso.coef_)\n",
"print(\"Lasso Intercept: \", lasso.intercept_)\n",
"plt.scatter(X_test,y_test,color='green', label=\"Training Data\")\n",
"plt.plot(X_test, predl, color='blue', label=\"Lasso\")\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}