diff --git a/.ipynb_checkpoints/05_Regresja_wielomianowa-checkpoint.ipynb b/.ipynb_checkpoints/05_Regresja_wielomianowa-checkpoint.ipynb
new file mode 100644
index 0000000..6eee57e
--- /dev/null
+++ b/.ipynb_checkpoints/05_Regresja_wielomianowa-checkpoint.ipynb
@@ -0,0 +1,1053 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "slideshow": {
+ "slide_type": "slide"
+ }
+ },
+ "source": [
+ "# Regresja wielomianowa"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 88,
+ "metadata": {
+ "slideshow": {
+ "slide_type": "notes"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "import ipywidgets as widgets\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "import pandas\n",
+ "\n",
+ "%matplotlib inline"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "metadata": {
+ "slideshow": {
+ "slide_type": "notes"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "# Przydatne funkcje\n",
+ "\n",
+ "def cost(theta, X, y):\n",
+ " \"\"\"Wersja macierzowa funkcji kosztu\"\"\"\n",
+ " m = len(y)\n",
+ " J = 1.0 / (2.0 * m) * ((X * theta - y).T * (X * theta - y))\n",
+ " return J.item()\n",
+ "\n",
+ "def gradient(theta, X, y):\n",
+ " \"\"\"Wersja macierzowa gradientu funkcji kosztu\"\"\"\n",
+ " return 1.0 / len(y) * (X.T * (X * theta - y)) \n",
+ "\n",
+ "def gradient_descent(fJ, fdJ, theta, X, y, alpha=0.1, eps=10**-7):\n",
+ " \"\"\"Algorytm gradientu prostego (wersja macierzowa)\"\"\"\n",
+ " current_cost = fJ(theta, X, y)\n",
+ " logs = [[current_cost, theta]]\n",
+ " while True:\n",
+ " theta = theta - alpha * fdJ(theta, X, y)\n",
+ " current_cost, prev_cost = fJ(theta, X, y), current_cost\n",
+ " if abs(prev_cost - current_cost) > 10**15:\n",
+ " print('Algorithm does not converge!')\n",
+ " break\n",
+ " if abs(prev_cost - current_cost) <= eps:\n",
+ " break\n",
+ " logs.append([current_cost, theta]) \n",
+ " return theta, logs\n",
+ "\n",
+ "def plot_data(X, y, xlabel, ylabel):\n",
+ " \"\"\"Wykres danych (wersja macierzowa)\"\"\"\n",
+ " fig = plt.figure(figsize=(16*.6, 9*.6))\n",
+ " ax = fig.add_subplot(111)\n",
+ " fig.subplots_adjust(left=0.1, right=0.9, bottom=0.1, top=0.9)\n",
+ " ax.scatter([X[:, 1]], [y], c='r', s=50, label='Dane')\n",
+ " \n",
+ " ax.set_xlabel(xlabel)\n",
+ " ax.set_ylabel(ylabel)\n",
+ " ax.margins(.05, .05)\n",
+ " plt.ylim(y.min() - 1, y.max() + 1)\n",
+ " plt.xlim(np.min(X[:, 1]) - 1, np.max(X[:, 1]) + 1)\n",
+ " return fig\n",
+ "\n",
+ "def plot_fun(fig, fun, X):\n",
+ " \"\"\"Wykres funkcji `fun`\"\"\"\n",
+ " ax = fig.axes[0]\n",
+ " x0 = np.min(X[:, 1]) - 1.0\n",
+ " x1 = np.max(X[:, 1]) + 1.0\n",
+ " Arg = np.arange(x0, x1, 0.1)\n",
+ " Val = fun(Arg)\n",
+ " return ax.plot(Arg, Val, linewidth='2')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 90,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def MSE(Y_true, Y_pred):\n",
+ " return np.square(np.subtract(Y_true,Y_pred)).mean()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "metadata": {
+ "slideshow": {
+ "slide_type": "fragment"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "# Funkcja regresji wielomianowej\n",
+ "\n",
+ "def h_poly(Theta, x):\n",
+ " \"\"\"Funkcja wielomianowa\"\"\"\n",
+ " return sum(theta * np.power(x, i) for i, theta in enumerate(Theta.tolist()))\n",
+ "\n",
+ "def get_poly_data(data, deg):\n",
+ " m, n_plus_1 = data.shape\n",
+ " n = n_plus_1 - 1\n",
+ "\n",
+ " X1 = data[:, 0:n]\n",
+ " X1 /= np.amax(X1, axis=0)\n",
+ "\n",
+ " Xs = [np.ones((m, 1)), X1]\n",
+ "\n",
+ " for i in range(2, deg+1):\n",
+ " Xn = np.power(X1, i)\n",
+ " Xn /= np.amax(Xn, axis=0)\n",
+ " Xs.append(Xn)\n",
+ "\n",
+ " X = np.matrix(np.concatenate(Xs, axis=1)).reshape(m, deg * n + 1)\n",
+ "\n",
+ " y = np.matrix(data[:, -1]).reshape(m, 1)\n",
+ "\n",
+ " return X, y\n",
+ "\n",
+ "\n",
+ "def polynomial_regression(X, y, n):\n",
+ " \"\"\"Funkcja regresji wielomianowej\"\"\"\n",
+ " theta_start = np.matrix([0] * (n+1)).reshape(n+1, 1)\n",
+ " theta, logs = gradient_descent(cost, gradient, theta_start, X, y)\n",
+ " return lambda x: h_poly(theta, x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def predict_values(model, data, n):\n",
+ " x, y = get_poly_data(np.array(data), n)\n",
+ " preprocessed_x = []\n",
+ " for i in x:\n",
+ " preprocessed_x.append(i.item(1))\n",
+ " return y, model(preprocessed_x), MSE(y, model(preprocessed_x))\n",
+ "\n",
+ "def plot_and_mse(data, data_test, n):\n",
+ " x, y = get_poly_data(np.array(data), n)\n",
+ " model = polynomial_regression(x, y, n)\n",
+ " \n",
+ " fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ " plot_fun(fig, polynomial_regression(x, y, n), x)\n",
+ "\n",
+ " y_true, Y_pred, mse = predict_values(model, data_test, n)\n",
+ " print(f'Wielomian {n} stopnia, MSE = {mse}')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
+ "metadata": {
+ "slideshow": {
+ "slide_type": "notes"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " sqrMetres | \n",
+ " price | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 78 | \n",
+ " 476118.0 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 62 | \n",
+ " 459531.0 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 15 | \n",
+ " 411557.0 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 14 | \n",
+ " 496416.0 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 15 | \n",
+ " 406032.0 | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 1669 | \n",
+ " 51 | \n",
+ " 299000.0 | \n",
+ "
\n",
+ " \n",
+ " 1670 | \n",
+ " 53 | \n",
+ " 339000.0 | \n",
+ "
\n",
+ " \n",
+ " 1671 | \n",
+ " 65 | \n",
+ " 320000.0 | \n",
+ "
\n",
+ " \n",
+ " 1672 | \n",
+ " 67 | \n",
+ " 364000.0 | \n",
+ "
\n",
+ " \n",
+ " 1673 | \n",
+ " 50 | \n",
+ " 209000.0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1674 rows × 2 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " sqrMetres price\n",
+ "0 78 476118.0\n",
+ "1 62 459531.0\n",
+ "2 15 411557.0\n",
+ "3 14 496416.0\n",
+ "4 15 406032.0\n",
+ "... ... ...\n",
+ "1669 51 299000.0\n",
+ "1670 53 339000.0\n",
+ "1671 65 320000.0\n",
+ "1672 67 364000.0\n",
+ "1673 50 209000.0\n",
+ "\n",
+ "[1674 rows x 2 columns]"
+ ]
+ },
+ "execution_count": 101,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Wczytanie danych (mieszkania) przy pomocy biblioteki pandas\n",
+ "\n",
+ "alldata = pandas.read_csv('data_flats.tsv', header=0, sep='\\t',\n",
+ " usecols=['price', 'rooms', 'sqrMetres'])\n",
+ "alldata = alldata[['sqrMetres', 'price']]\n",
+ "alldata"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# alldata = np.matrix(alldata[['sqrMetres', 'price']])\n",
+ "data_train = alldata[0:1600]\n",
+ "data_test = alldata[1600:]\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[[3.97959184e-01 4.76118000e+05]\n",
+ " [3.16326531e-01 4.59531000e+05]\n",
+ " [7.65306122e-02 4.11557000e+05]\n",
+ " ...\n",
+ " [3.31632653e-01 3.20000000e+05]\n",
+ " [3.41836735e-01 3.64000000e+05]\n",
+ " [2.55102041e-01 2.09000000e+05]]\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "[]"
+ ]
+ },
+ "execution_count": 6,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plot_and_mse(data, data_marks_test, 1) "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[[3.97959184e-01 4.76118000e+05]\n",
+ " [3.16326531e-01 4.59531000e+05]\n",
+ " [7.65306122e-02 4.11557000e+05]\n",
+ " ...\n",
+ " [3.31632653e-01 3.20000000e+05]\n",
+ " [3.41836735e-01 3.64000000e+05]\n",
+ " [2.55102041e-01 2.09000000e+05]]\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "[]"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "n = 2\n",
+ "x, y = get_poly_data(data, n)\n",
+ "print(data)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Ilość nauki do oceny"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 67,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " number_courses | \n",
+ " time_study | \n",
+ " Marks | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 3 | \n",
+ " 4.508 | \n",
+ " 19.202 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 4 | \n",
+ " 0.096 | \n",
+ " 7.734 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 4 | \n",
+ " 3.133 | \n",
+ " 13.811 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 6 | \n",
+ " 7.909 | \n",
+ " 53.018 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 8 | \n",
+ " 7.811 | \n",
+ " 55.299 | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 95 | \n",
+ " 6 | \n",
+ " 3.561 | \n",
+ " 19.128 | \n",
+ "
\n",
+ " \n",
+ " 96 | \n",
+ " 3 | \n",
+ " 0.301 | \n",
+ " 5.609 | \n",
+ "
\n",
+ " \n",
+ " 97 | \n",
+ " 4 | \n",
+ " 7.163 | \n",
+ " 41.444 | \n",
+ "
\n",
+ " \n",
+ " 98 | \n",
+ " 7 | \n",
+ " 0.309 | \n",
+ " 12.027 | \n",
+ "
\n",
+ " \n",
+ " 99 | \n",
+ " 3 | \n",
+ " 6.335 | \n",
+ " 32.357 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
100 rows × 3 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " number_courses time_study Marks\n",
+ "0 3 4.508 19.202\n",
+ "1 4 0.096 7.734\n",
+ "2 4 3.133 13.811\n",
+ "3 6 7.909 53.018\n",
+ "4 8 7.811 55.299\n",
+ ".. ... ... ...\n",
+ "95 6 3.561 19.128\n",
+ "96 3 0.301 5.609\n",
+ "97 4 7.163 41.444\n",
+ "98 7 0.309 12.027\n",
+ "99 3 6.335 32.357\n",
+ "\n",
+ "[100 rows x 3 columns]"
+ ]
+ },
+ "execution_count": 67,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "data_marks_all = pandas.read_csv('archive(1)/Student_Marks.csv')\n",
+ "data_marks_all"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 77,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "[]"
+ ]
+ },
+ "execution_count": 77,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "data_marks_all = data_marks_all[['time_study', 'Marks']]\n",
+ "data_marks_all = data_marks_all.sample(frac=1)\n",
+ "data_marks = data_marks_all[0:70]\n",
+ "data_marks_test = data_marks_all[70:]\n",
+ "data_marks = np.matrix(data_marks).astype(float)\n",
+ "n = 1 # Wielomian pierwszego stopnia\n",
+ "\n",
+ "x, y = get_poly_data(np.array(data_marks), n)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 73,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "[]"
+ ]
+ },
+ "execution_count": 73,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "n = 2 # Wielomian drugiego stopnia\n",
+ "\n",
+ "x, y = get_poly_data(np.array(data_marks), n)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 74,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "40.024\n",
+ "[[1. 0.80130703 0.64209295]]\n",
+ "[0.8013070252607767]\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "array([37.16059534])"
+ ]
+ },
+ "execution_count": 74,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "\n",
+ "\n",
+ "n = 2 # Wielomaian pierwszego stopnia\n",
+ "x, y = get_poly_data(np.array(data_marks), n)\n",
+ "model = polynomial_regression(x, y, n)\n",
+ "\n",
+ "index = 2\n",
+ "print(data_marks[index].item(1))\n",
+ "print(x[index])\n",
+ "print([x[index].item(1)])\n",
+ "model([x[index].item(1)])\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 87,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Wielomian 1 stopnia, MSE = 465.8122515203192\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "\n",
+ "\n",
+ "# data_marks_test\n",
+ "plot_and_mse(data_marks, data_marks_test, 1) "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Archive: archive.zip\n",
+ "replace insurance.csv? [y]es, [n]o, [A]ll, [N]one, [r]ename: ^C\n"
+ ]
+ }
+ ],
+ "source": [
+ "!unzip archive.zip"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " age | \n",
+ " sex | \n",
+ " bmi | \n",
+ " children | \n",
+ " smoker | \n",
+ " region | \n",
+ " charges | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 309 | \n",
+ " 41 | \n",
+ " female | \n",
+ " 33.060 | \n",
+ " 2 | \n",
+ " no | \n",
+ " northwest | \n",
+ " 7749.15640 | \n",
+ "
\n",
+ " \n",
+ " 696 | \n",
+ " 53 | \n",
+ " female | \n",
+ " 32.300 | \n",
+ " 2 | \n",
+ " no | \n",
+ " northeast | \n",
+ " 29186.48236 | \n",
+ "
\n",
+ " \n",
+ " 261 | \n",
+ " 20 | \n",
+ " female | \n",
+ " 26.840 | \n",
+ " 1 | \n",
+ " yes | \n",
+ " southeast | \n",
+ " 17085.26760 | \n",
+ "
\n",
+ " \n",
+ " 937 | \n",
+ " 39 | \n",
+ " female | \n",
+ " 24.225 | \n",
+ " 5 | \n",
+ " no | \n",
+ " northwest | \n",
+ " 8965.79575 | \n",
+ "
\n",
+ " \n",
+ " 891 | \n",
+ " 36 | \n",
+ " female | \n",
+ " 29.040 | \n",
+ " 4 | \n",
+ " no | \n",
+ " southeast | \n",
+ " 7243.81360 | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 584 | \n",
+ " 19 | \n",
+ " male | \n",
+ " 20.700 | \n",
+ " 0 | \n",
+ " no | \n",
+ " southwest | \n",
+ " 1242.81600 | \n",
+ "
\n",
+ " \n",
+ " 1066 | \n",
+ " 48 | \n",
+ " male | \n",
+ " 37.290 | \n",
+ " 2 | \n",
+ " no | \n",
+ " southeast | \n",
+ " 8978.18510 | \n",
+ "
\n",
+ " \n",
+ " 1025 | \n",
+ " 21 | \n",
+ " female | \n",
+ " 34.600 | \n",
+ " 0 | \n",
+ " no | \n",
+ " southwest | \n",
+ " 2020.17700 | \n",
+ "
\n",
+ " \n",
+ " 831 | \n",
+ " 36 | \n",
+ " female | \n",
+ " 25.840 | \n",
+ " 0 | \n",
+ " no | \n",
+ " northwest | \n",
+ " 5266.36560 | \n",
+ "
\n",
+ " \n",
+ " 49 | \n",
+ " 36 | \n",
+ " male | \n",
+ " 35.200 | \n",
+ " 1 | \n",
+ " yes | \n",
+ " southeast | \n",
+ " 38709.17600 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1338 rows × 7 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " age sex bmi children smoker region charges\n",
+ "309 41 female 33.060 2 no northwest 7749.15640\n",
+ "696 53 female 32.300 2 no northeast 29186.48236\n",
+ "261 20 female 26.840 1 yes southeast 17085.26760\n",
+ "937 39 female 24.225 5 no northwest 8965.79575\n",
+ "891 36 female 29.040 4 no southeast 7243.81360\n",
+ "... ... ... ... ... ... ... ...\n",
+ "584 19 male 20.700 0 no southwest 1242.81600\n",
+ "1066 48 male 37.290 2 no southeast 8978.18510\n",
+ "1025 21 female 34.600 0 no southwest 2020.17700\n",
+ "831 36 female 25.840 0 no northwest 5266.36560\n",
+ "49 36 male 35.200 1 yes southeast 38709.17600\n",
+ "\n",
+ "[1338 rows x 7 columns]"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "data_ins = pandas.read_csv('insurance.csv')\n",
+ "data_ins = data_ins.sample(frac=1)\n",
+ "data_ins"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[[33.06 41. ]\n",
+ " [32.3 53. ]\n",
+ " [26.84 20. ]\n",
+ " ...\n",
+ " [34.6 21. ]\n",
+ " [25.84 36. ]\n",
+ " [35.2 36. ]]\n"
+ ]
+ }
+ ],
+ "source": [
+ "data_ins = data_ins[['bmi', 'age']]\n",
+ "data_ins = np.matrix(data_ins).astype(float)\n",
+ "print(data_ins)\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "[]"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "n = 1 # Wielomaian pierwszego stopnia\n",
+ "\n",
+ "x, y = get_poly_data(np.array(data_ins), n)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "29.735 1.0\n"
+ ]
+ },
+ {
+ "ename": "NameError",
+ "evalue": "name 'a' is not defined",
+ "output_type": "error",
+ "traceback": [
+ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+ "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
+ "\u001b[0;32m/tmp/ipykernel_6535/4031094360.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0mindex\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata_ins\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 8\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
+ "\u001b[0;31mNameError\u001b[0m: name 'a' is not defined"
+ ]
+ }
+ ],
+ "source": [
+ "n = 1 # Wielomaian pierwszego stopnia\n",
+ "\n",
+ "x, y = get_poly_data(np.array(data_ins), n)\n",
+ "model = polynomial_regression(x, y, n)\n",
+ "\n",
+ "index = 10\n",
+ "print(data_ins.item(index), x.item(index))\n",
+ "a([x.item(index)])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "n = 2 # Wielomian 2 stopnia\n",
+ "x, y = get_poly_data(np.array(data_ins), n)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "n = 3 # Wielomian 3 stopnia\n",
+ "x, y = get_poly_data(np.array(data_ins), n)\n",
+ "fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ "plot_fun(fig, polynomial_regression(x, y, n), x)"
+ ]
+ }
+ ],
+ "metadata": {
+ "author": "Paweł Skórzewski",
+ "celltoolbar": "Slideshow",
+ "email": "pawel.skorzewski@amu.edu.pl",
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "lang": "pl",
+ "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.8.12"
+ },
+ "livereveal": {
+ "start_slideshow_at": "selected",
+ "theme": "white"
+ },
+ "subtitle": "5.Regresja wielomianowa. Problem nadmiernego dopasowania[wykład]",
+ "title": "Uczenie maszynowe",
+ "year": "2021"
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/05_Regresja_wielomianowa.ipynb b/05_Regresja_wielomianowa.ipynb
index 19e922f..01f7001 100644
--- a/05_Regresja_wielomianowa.ipynb
+++ b/05_Regresja_wielomianowa.ipynb
@@ -13,7 +13,7 @@
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 88,
"metadata": {
"slideshow": {
"slide_type": "notes"
@@ -31,7 +31,7 @@
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 89,
"metadata": {
"slideshow": {
"slide_type": "notes"
@@ -92,24 +92,17 @@
},
{
"cell_type": "code",
- "execution_count": 8,
- "metadata": {
- "slideshow": {
- "slide_type": "notes"
- }
- },
+ "execution_count": 90,
+ "metadata": {},
"outputs": [],
"source": [
- "# Wczytanie danych (mieszkania) przy pomocy biblioteki pandas\n",
- "\n",
- "alldata = pandas.read_csv('data_flats.tsv', header=0, sep='\\t',\n",
- " usecols=['price', 'rooms', 'sqrMetres'])\n",
- "data = np.matrix(alldata[['sqrMetres', 'price']])"
+ "def MSE(Y_true, Y_pred):\n",
+ " return np.square(np.subtract(Y_true,Y_pred)).mean()"
]
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 91,
"metadata": {
"slideshow": {
"slide_type": "fragment"
@@ -153,38 +146,871 @@
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": 92,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def predict_values(model, data, n):\n",
+ " x, y = get_poly_data(np.array(data), n)\n",
+ " preprocessed_x = []\n",
+ " for i in x:\n",
+ " preprocessed_x.append(i.item(1))\n",
+ " return y, model(preprocessed_x), MSE(y, model(preprocessed_x))\n",
+ "\n",
+ "def plot_and_mse(data, data_test, n):\n",
+ " x, y = get_poly_data(np.array(data), n)\n",
+ " model = polynomial_regression(x, y, n)\n",
+ " \n",
+ " fig = plot_data(x, y, xlabel='x', ylabel='y')\n",
+ " plot_fun(fig, polynomial_regression(x, y, n), x)\n",
+ "\n",
+ " y_true, Y_pred, mse = predict_values(model, data_test, n)\n",
+ " print(f'Wielomian {n} stopnia, MSE = {mse}')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
"metadata": {
"slideshow": {
- "slide_type": "subslide"
+ "slide_type": "notes"
}
},
"outputs": [
{
- "output_type": "execute_result",
"data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " sqrMetres | \n",
+ " price | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 78 | \n",
+ " 476118.0 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 62 | \n",
+ " 459531.0 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 15 | \n",
+ " 411557.0 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 14 | \n",
+ " 496416.0 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 15 | \n",
+ " 406032.0 | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 1669 | \n",
+ " 51 | \n",
+ " 299000.0 | \n",
+ "
\n",
+ " \n",
+ " 1670 | \n",
+ " 53 | \n",
+ " 339000.0 | \n",
+ "
\n",
+ " \n",
+ " 1671 | \n",
+ " 65 | \n",
+ " 320000.0 | \n",
+ "
\n",
+ " \n",
+ " 1672 | \n",
+ " 67 | \n",
+ " 364000.0 | \n",
+ "
\n",
+ " \n",
+ " 1673 | \n",
+ " 50 | \n",
+ " 209000.0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1674 rows × 2 columns
\n",
+ "
"
+ ],
"text/plain": [
- "[]"
+ " sqrMetres price\n",
+ "0 78 476118.0\n",
+ "1 62 459531.0\n",
+ "2 15 411557.0\n",
+ "3 14 496416.0\n",
+ "4 15 406032.0\n",
+ "... ... ...\n",
+ "1669 51 299000.0\n",
+ "1670 53 339000.0\n",
+ "1671 65 320000.0\n",
+ "1672 67 364000.0\n",
+ "1673 50 209000.0\n",
+ "\n",
+ "[1674 rows x 2 columns]"
]
},
+ "execution_count": 101,
"metadata": {},
- "execution_count": 10
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Wczytanie danych (mieszkania) przy pomocy biblioteki pandas\n",
+ "\n",
+ "alldata = pandas.read_csv('data_flats.tsv', header=0, sep='\\t',\n",
+ " usecols=['price', 'rooms', 'sqrMetres'])\n",
+ "alldata = alldata[['sqrMetres', 'price']]\n",
+ "alldata"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 102,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# alldata = np.matrix(alldata[['sqrMetres', 'price']])\n",
+ "data_train = alldata[0:1600]\n",
+ "data_test = alldata[1600:]\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 105,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Wielomian 1 stopnia, MSE = 31777996749.774563\n",
+ "Wielomian 2 stopnia, MSE = 80047128653.54173\n"
+ ]
},
{
- "output_type": "display_data",
"data": {
- "text/plain": "