{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Import python files from another directory\n",
    "In order to reuse code written in .py files you need to import them.\n",
    "If they are from a distant folder, rather than copy-paste it into the current folder, you can write:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import sys\n",
    "\n",
    "sys.path.append(\n",
    "    \"../../ex02/template\"\n",
    ")  # This goes up twice in the directories tree (hence in labs)\n",
    "# then goes down to ex02/template where your files from lab 2 are."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "you can now import your desired files, for example, we can import grid_search.py with:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[-100.  -25.   50.  125.  200.] [-150.  -75.    0.   75.  150.]\n"
     ]
    }
   ],
   "source": [
    "import grid_search  # You then need to call your functions using grid_search.function_name()\n",
    "import grid_search as gs  # You then need to call your functions using gs.function_name()\n",
    "from grid_search import *  # You can call any functions of the file with function_name()\n",
    "\n",
    "# Let's try to call generate_w from grid_search.py:\n",
    "w0, w1 = generate_w(5)\n",
    "print(w0, w1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see we are now able to call functions from the grid_search.py file."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Useful starting lines\n",
    "%matplotlib inline\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from helpers import *\n",
    "\n",
    "### SOLUTION\n",
    "from solution_gradient_descent import *\n",
    "\n",
    "### TEMPLATE\n",
    "from test_utils import test\n",
    "\n",
    "### END SOLUTION\n",
    "%load_ext autoreload\n",
    "%autoreload 2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 1 Least squares and linear basis functions models\n",
    "## 1.1 Least squares"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "### SOLUTION\n",
    "def compute_mse(e):\n",
    "    \"\"\"Calculate the mse for vector e.\n",
    "    Args:\n",
    "        e: numpy array of shape (N,), N is the number of samples.\n",
    "\n",
    "    Returns:\n",
    "        scalar\n",
    "\n",
    "    >>> compute_mse(np.array([1.5, -.5]))\n",
    "    0.625\n",
    "    \"\"\"\n",
    "    return 1 / 2 * np.mean(e**2)\n",
    "\n",
    "\n",
    "def compute_loss(y, tx, w):\n",
    "    \"\"\"Calculate the mse loss.\n",
    "\n",
    "    Args:\n",
    "        y: numpy array of shape (N,), N is the number of samples.\n",
    "        tx: numpy array of shape (N,D), D is the number of features.\n",
    "        w: numpy array of shape(D,)\n",
    "\n",
    "    Returns:\n",
    "        Scalar\n",
    "\n",
    "    >>> compute_loss(np.array([0.1,0.2]), np.array([[2.3, 3.2], [1., 0.1]]), np.array([3., 2.1]))\n",
    "    47.96262500000001\n",
    "    \"\"\"\n",
    "    e = y - tx.dot(w)\n",
    "    return compute_mse(e)\n",
    "\n",
    "\n",
    "### TEMPLATE\n",
    "### END SOLUTION\n",
    "def least_squares(y, tx):\n",
    "    \"\"\"Calculate the least squares solution.\n",
    "       returns mse, and optimal weights.\n",
    "\n",
    "    Args:\n",
    "        y: numpy array of shape (N,), N is the number of samples.\n",
    "        tx: numpy array of shape (N,D), D is the number of features.\n",
    "\n",
    "    Returns:\n",
    "        w: optimal weights, numpy array of shape(D,), D is the number of features.\n",
    "        mse: scalar.\n",
    "\n",
    "    >>> least_squares(np.array([0.1,0.2]), np.array([[2.3, 3.2], [1., 0.1]]))\n",
    "    (array([ 0.21212121, -0.12121212]), 8.666684749742561e-33)\n",
    "    \"\"\"\n",
    "    ### SOLUTION\n",
    "    a = tx.T.dot(tx)\n",
    "    b = tx.T.dot(y)\n",
    "    w = np.linalg.solve(a, b)\n",
    "    mse = compute_loss(y, tx, w)\n",
    "    return w, mse\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## least squares: TODO\n",
    "    ## returns mse, and optimal weights\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION\n",
    "\n",
    "\n",
    "### SOLUTION\n",
    "def least_squares_BAD_IMPLEMENTATION(y, tx):\n",
    "    \"\"\"This implementation of least_squares\n",
    "    will result in numerical inaccuracies\n",
    "    due to the matrix inverse operation\n",
    "    \"\"\"\n",
    "    w = np.linalg.inv(tx.T @ tx) @ tx.T @ y\n",
    "    mse = compute_loss(y, tx, w)\n",
    "    return w, mse\n",
    "\n",
    "\n",
    "### TEMPLATE\n",
    "### END SOLUTION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### You can test your implementation here"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "✅ Your `least_squares` passed 1 tests.\n"
     ]
    }
   ],
   "source": [
    "test(least_squares)\n",
    "# NB:\n",
    "#\n",
    "# Due to precision issues,\n",
    "# the output might not be exactly the same\n",
    "# even if you have implemented the right code.\n",
    "#\n",
    "# For example, the mse output expected to be\n",
    "# 8.666684749742561e-33,\n",
    "# but you might get some other small number\n",
    "# close to zero.\n",
    "#\n",
    "# In this case,\n",
    "# Failing the test doesn't necessarily mean\n",
    "# your implementation is wrong.:)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Load the data\n",
    "Here we will reuse the dataset `height_weight_genders.csv` from previous exercise section to check the correctness of your implementation. Please compare it with your previous result."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "def test_your_least_squares():\n",
    "    \"\"\"\n",
    "    # this code should compare the optimal weights obtained\n",
    "    # by least squares vs. grid search\n",
    "    \"\"\"\n",
    "    height, weight, gender = load_data_from_ex02(sub_sample=False, add_outlier=False)\n",
    "    x, mean_x, std_x = standardize(height)\n",
    "    y, tx = build_model_data(x, weight)\n",
    "    ### SOLUTION\n",
    "    w, mse = least_squares(y, tx)\n",
    "    w_gd, mse_gd = gradient_descent(\n",
    "        y, tx, initial_w=np.array([0, 0]), max_iters=10, gamma=0.7\n",
    "    )\n",
    "    print(\"Solution LS: \", w, \"MSE: \", mse)\n",
    "    print(\"Solution GD: \", w_gd[-1], \"MSE: \", mse_gd[-1])\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## least square or grid search: TODO\n",
    "    ## this code should compare the optimal weights obtained\n",
    "    ## by least squares vs. grid search\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Test it here"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Solution LS:  [73.293922   13.47971243] MSE:  15.385887868829398\n",
      "Solution GD:  [73.29348921 13.47963284] MSE:  15.385888944638305\n"
     ]
    }
   ],
   "source": [
    "test_your_least_squares()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.2 Least squares with a linear basis function model\n",
    "Start from this section, we will use the dataset `dataEx3.csv`.\n",
    "\n",
    "### Implement polynomial basis functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "shape of x (50,)\n",
      "shape of y (50,)\n"
     ]
    }
   ],
   "source": [
    "# load dataset\n",
    "x, y = load_data()\n",
    "print(\"shape of x {}\".format(x.shape))\n",
    "print(\"shape of y {}\".format(y.shape))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "def build_poly(x, degree):\n",
    "    \"\"\"polynomial basis functions for input data x, for j=0 up to j=degree.\n",
    "\n",
    "    Args:\n",
    "        x: numpy array of shape (N,), N is the number of samples.\n",
    "        degree: integer.\n",
    "\n",
    "    Returns:\n",
    "        poly: numpy array of shape (N,d+1)\n",
    "\n",
    "    >>> build_poly(np.array([0.0, 1.5]), 2)\n",
    "    array([[1.  , 0.  , 0.  ],\n",
    "           [1.  , 1.5 , 2.25]])\n",
    "    \"\"\"\n",
    "    ### SOLUTION\n",
    "    poly = np.ones((len(x), 1))\n",
    "    for deg in range(1, degree + 1):\n",
    "        poly = np.c_[poly, np.power(x, deg)]\n",
    "    return poly\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## polynomial basis function: TODO\n",
    "    ## this function should return the matrix formed\n",
    "    ## by applying the polynomial basis to the input data\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "✅ Your `build_poly` passed 1 tests.\n"
     ]
    }
   ],
   "source": [
    "test(build_poly)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Once your implementation of `build_poly` passes the test, copy it to `build_polynomial.py`\n",
    "Let us play with polynomial regression. Note that we will use your implemented function `compute_mse`. Please copy and paste your implementation from exercise02."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "from plots import *\n",
    "\n",
    "\n",
    "def polynomial_regression():\n",
    "    \"\"\"Constructing the polynomial basis function expansion of the data,\n",
    "    and then running least squares regression.\"\"\"\n",
    "    # define parameters\n",
    "    degrees = [1, 3, 7, 12]\n",
    "\n",
    "    # define the structure of the figure\n",
    "    num_row = 2\n",
    "    num_col = 2\n",
    "    f, axs = plt.subplots(num_row, num_col)\n",
    "\n",
    "    for ind, degree in enumerate(degrees):\n",
    "        ### SOLUTION\n",
    "        # form dataset to do polynomial regression.\n",
    "        tx = build_poly(x, degree)\n",
    "\n",
    "        # least squares\n",
    "        weights, mse = least_squares(y, tx)\n",
    "\n",
    "        # compute RMSE\n",
    "        rmse = np.sqrt(2 * mse)\n",
    "\n",
    "        ### TEMPLATE\n",
    "        ## ***************************************************\n",
    "        ## INSERT YOUR CODE HERE\n",
    "        ## form the data to do polynomial regression.: TODO\n",
    "        ## ***************************************************\n",
    "        # raise NotImplementedError\n",
    "        ## ***************************************************\n",
    "        ## INSERT YOUR CODE HERE\n",
    "        ## least square and calculate RMSE: TODO\n",
    "        ## ***************************************************\n",
    "        # raise NotImplementedError\n",
    "        ### END SOLUTION\n",
    "\n",
    "        print(\n",
    "            \"Processing {i}th experiment, degree={d}, rmse={loss}\".format(\n",
    "                i=ind + 1, d=degree, loss=rmse\n",
    "            )\n",
    "        )\n",
    "        # plot fit\n",
    "        plot_fitted_curve(y, x, weights, degree, axs[ind // num_col][ind % num_col])\n",
    "    plt.tight_layout()\n",
    "    ### SOLUTION\n",
    "    plt.savefig(\"visualize_polynomial_regression\")\n",
    "    ### TEMPLATE\n",
    "    ### END SOLUTION\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Run polynomial regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Processing 1th experiment, degree=1, rmse=0.47187607963421874\n",
      "Processing 2th experiment, degree=3, rmse=0.2585827766773748\n",
      "Processing 3th experiment, degree=7, rmse=0.2496587036090708\n",
      "Processing 4th experiment, degree=12, rmse=0.2408378998007286\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 4 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "polynomial_regression()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Your results should look like this:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![alt text](visualize_polynomial_regression.png)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 2 Evaluating model predication performance\n",
    "\n",
    "Let us show the train and test splits for various polynomial degrees. First of all, please fill in the function `split_data()`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "def split_data(x, y, ratio, seed=1):\n",
    "    \"\"\"\n",
    "    split the dataset based on the split ratio. If ratio is 0.8\n",
    "    you will have 80% of your data set dedicated to training\n",
    "    and the rest dedicated to testing. If ratio times the number of samples is not round\n",
    "    you can use np.floor. Also check the documentation for np.random.permutation,\n",
    "    it could be useful.\n",
    "\n",
    "    Args:\n",
    "        x: numpy array of shape (N,), N is the number of samples.\n",
    "        y: numpy array of shape (N,).\n",
    "        ratio: scalar in [0,1]\n",
    "        seed: integer.\n",
    "\n",
    "    Returns:\n",
    "        x_tr: numpy array containing the train data.\n",
    "        x_te: numpy array containing the test data.\n",
    "        y_tr: numpy array containing the train labels.\n",
    "        y_te: numpy array containing the test labels.\n",
    "\n",
    "    >>> split_data(np.arange(13), np.arange(13), 0.8, 1)\n",
    "    (array([ 2,  3,  4, 10,  1,  6,  0,  7, 12,  9]), array([ 8, 11,  5]), array([ 2,  3,  4, 10,  1,  6,  0,  7, 12,  9]), array([ 8, 11,  5]))\n",
    "    \"\"\"\n",
    "    # set seed\n",
    "    np.random.seed(seed)\n",
    "    ### SOLUTION\n",
    "    # generate random indices\n",
    "    num_row = len(y)\n",
    "    indices = np.random.permutation(num_row)\n",
    "    index_split = int(np.floor(ratio * num_row))\n",
    "    index_tr = indices[:index_split]\n",
    "    index_te = indices[index_split:]\n",
    "    # create split\n",
    "    x_tr = x[index_tr]\n",
    "    x_te = x[index_te]\n",
    "    y_tr = y[index_tr]\n",
    "    y_te = y[index_te]\n",
    "    return x_tr, x_te, y_tr, y_te\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## split the data based on the given ratio: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "✅ Your `split_data` passed 1 tests.\n"
     ]
    }
   ],
   "source": [
    "test(split_data)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Then, test your `split_data` function below."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "def train_test_split_demo(x, y, degree, ratio, seed):\n",
    "    \"\"\"polynomial regression with different split ratios and different degrees.\n",
    "\n",
    "    Returns:\n",
    "      x_tr: numpy array\n",
    "      x_te: numpy array\n",
    "      y_tr: numpy array\n",
    "      y_te: numpy array\n",
    "      weights: weights from the least squares optimization\"\"\"\n",
    "    ### SOLUTION\n",
    "    x_tr, x_te, y_tr, y_te = split_data(x, y, ratio, seed)\n",
    "    # form tx\n",
    "    tx_tr = build_poly(x_tr, degree)\n",
    "    tx_te = build_poly(x_te, degree)\n",
    "\n",
    "    w, mse_tr = least_squares(y_tr, tx_tr)\n",
    "\n",
    "    # calculate RMSE for train and test data.\n",
    "    rmse_tr = np.sqrt(2 * mse_tr)\n",
    "    rmse_te = np.sqrt(2 * compute_loss(y_te, tx_te, w))\n",
    "\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## split the data, and return train and test data: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## form train and test data with polynomial basis function: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## calculate weight through least square: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## calculate RMSE for train and test data,\n",
    "    ## and store them in rmse_tr and rmse_te respectively: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION\n",
    "    print(\n",
    "        \"proportion={p}, degree={d}, Training RMSE={tr:.3f}, Testing RMSE={te:.3f}\".format(\n",
    "            p=ratio, d=degree, tr=rmse_tr, te=rmse_te\n",
    "        )\n",
    "    )\n",
    "    ### SOLUTION\n",
    "    return x_tr, x_te, y_tr, y_te, w\n",
    "    ### TEMPLATE\n",
    "    ### END SOLUTION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Demo time"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "proportion=0.9, degree=1, Training RMSE=0.494, Testing RMSE=0.181\n",
      "proportion=0.9, degree=3, Training RMSE=0.264, Testing RMSE=0.206\n",
      "proportion=0.9, degree=7, Training RMSE=0.254, Testing RMSE=0.220\n",
      "proportion=0.9, degree=12, Training RMSE=0.244, Testing RMSE=0.260\n",
      "proportion=0.7, degree=1, Training RMSE=0.516, Testing RMSE=0.352\n",
      "proportion=0.7, degree=3, Training RMSE=0.249, Testing RMSE=0.308\n",
      "proportion=0.7, degree=7, Training RMSE=0.227, Testing RMSE=0.333\n",
      "proportion=0.7, degree=12, Training RMSE=0.223, Testing RMSE=0.327\n",
      "proportion=0.5, degree=1, Training RMSE=0.455, Testing RMSE=0.531\n",
      "proportion=0.5, degree=3, Training RMSE=0.239, Testing RMSE=0.296\n",
      "proportion=0.5, degree=7, Training RMSE=0.232, Testing RMSE=0.284\n",
      "proportion=0.5, degree=12, Training RMSE=0.205, Testing RMSE=1.498\n",
      "proportion=0.1, degree=1, Training RMSE=0.428, Testing RMSE=0.534\n",
      "proportion=0.1, degree=3, Training RMSE=0.085, Testing RMSE=0.460\n",
      "proportion=0.1, degree=7, Training RMSE=0.000, Testing RMSE=2.187\n",
      "proportion=0.1, degree=12, Training RMSE=0.000, Testing RMSE=3.192\n"
     ]
    }
   ],
   "source": [
    "seed = 6\n",
    "degrees = [1, 3, 7, 12]\n",
    "split_ratios = [0.9, 0.7, 0.5, 0.1]\n",
    "\n",
    "# define the structure of the figure\n",
    "num_row = 4\n",
    "num_col = 4\n",
    "axs = plt.subplots(num_row, num_col, figsize=(20, 8))[1]\n",
    "\n",
    "for ind, split_ratio in enumerate(split_ratios):\n",
    "    for ind_d, degree in enumerate(degrees):\n",
    "        x_tr, x_te, y_tr, y_te, w = train_test_split_demo(\n",
    "            x, y, degree, split_ratio, seed\n",
    "        )\n",
    "        plot_fitted_curve(y_tr, x_tr, w, degree, axs[ind_d][ind % num_col])\n",
    "        axs[ind_d][ind].set_title(f\"Degree: {degree}, Split {split_ratio}\")\n",
    "plt.tight_layout()\n",
    "### SOLUTION\n",
    "plt.savefig(\"split_demo.png\".format(ind))\n",
    "plt.close()\n",
    "### TEMPLATE\n",
    "### END SOLUTION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Your graph should look like this:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![alt text](split_demo.png)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Ridge Regression\n",
    "Please fill in the function below."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "def ridge_regression(y, tx, lambda_):\n",
    "    \"\"\"implement ridge regression.\n",
    "\n",
    "    Args:\n",
    "        y: numpy array of shape (N,), N is the number of samples.\n",
    "        tx: numpy array of shape (N,D), D is the number of features.\n",
    "        lambda_: scalar.\n",
    "\n",
    "    Returns:\n",
    "        w: optimal weights, numpy array of shape(D,), D is the number of features.\n",
    "\n",
    "    >>> ridge_regression(np.array([0.1,0.2]), np.array([[2.3, 3.2], [1., 0.1]]), 0)\n",
    "    array([ 0.21212121, -0.12121212])\n",
    "    >>> ridge_regression(np.array([0.1,0.2]), np.array([[2.3, 3.2], [1., 0.1]]), 1)\n",
    "    array([0.03947092, 0.00319628])\n",
    "    \"\"\"\n",
    "    ### SOLUTION\n",
    "    aI = 2 * tx.shape[0] * lambda_ * np.identity(tx.shape[1])\n",
    "    a = tx.T.dot(tx) + aI\n",
    "    b = tx.T.dot(y)\n",
    "    return np.linalg.solve(a, b)\n",
    "    ### TEMPLATE\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "✅ Your `ridge_regression` passed 2 tests.\n"
     ]
    }
   ],
   "source": [
    "test(ridge_regression)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "def ridge_regression_demo(x, y, degree, ratio, seed):\n",
    "    \"\"\"ridge regression demo.\"\"\"\n",
    "    # define parameter\n",
    "    lambdas = np.logspace(-5, 0, 15)\n",
    "\n",
    "    ### SOLUTION\n",
    "    # split data\n",
    "    x_tr, x_te, y_tr, y_te = split_data(x, y, ratio, seed)\n",
    "    # form tx\n",
    "    tx_tr = build_poly(x_tr, degree)\n",
    "    tx_te = build_poly(x_te, degree)\n",
    "    ### TEMPLATE\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## split the data, and return train and test data: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ## ***************************************************\n",
    "    ## INSERT YOUR CODE HERE\n",
    "    ## form train and test data with polynomial basis function: TODO\n",
    "    ## ***************************************************\n",
    "    # raise NotImplementedError\n",
    "    ### END SOLUTION\n",
    "\n",
    "    rmse_tr = []\n",
    "    rmse_te = []\n",
    "    for ind, lambda_ in enumerate(lambdas):\n",
    "        ### SOLUTION\n",
    "        # ridge regression\n",
    "        weight = ridge_regression(y_tr, tx_tr, lambda_)\n",
    "        rmse_tr.append(np.sqrt(2 * compute_loss(y_tr, tx_tr, weight)))\n",
    "        rmse_te.append(np.sqrt(2 * compute_loss(y_te, tx_te, weight)))\n",
    "        ### TEMPLATE\n",
    "        ## ***************************************************\n",
    "        ## INSERT YOUR CODE HERE\n",
    "        ## ridge regression with a given lambda\n",
    "        ## ***************************************************\n",
    "        # raise NotImplementedError\n",
    "        ### END SOLUTION\n",
    "        print(\n",
    "            \"proportion={p}, degree={d}, lambda={l:.3f}, Training RMSE={tr:.3f}, Testing RMSE={te:.3f}\".format(\n",
    "                p=ratio, d=degree, l=lambda_, tr=rmse_tr[ind], te=rmse_te[ind]\n",
    "            )\n",
    "        )\n",
    "    plot_train_test(rmse_tr, rmse_te, lambdas, degree)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "jupyter": {
     "outputs_hidden": true
    }
   },
   "source": [
    "Demo time"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "proportion=0.5, degree=7, lambda=0.000, Training RMSE=0.227, Testing RMSE=0.338\n",
      "proportion=0.5, degree=7, lambda=0.000, Training RMSE=0.227, Testing RMSE=0.337\n",
      "proportion=0.5, degree=7, lambda=0.000, Training RMSE=0.227, Testing RMSE=0.336\n",
      "proportion=0.5, degree=7, lambda=0.000, Training RMSE=0.227, Testing RMSE=0.335\n",
      "proportion=0.5, degree=7, lambda=0.000, Training RMSE=0.228, Testing RMSE=0.334\n",
      "proportion=0.5, degree=7, lambda=0.001, Training RMSE=0.228, Testing RMSE=0.333\n",
      "proportion=0.5, degree=7, lambda=0.001, Training RMSE=0.229, Testing RMSE=0.329\n",
      "proportion=0.5, degree=7, lambda=0.003, Training RMSE=0.230, Testing RMSE=0.319\n",
      "proportion=0.5, degree=7, lambda=0.007, Training RMSE=0.232, Testing RMSE=0.302\n",
      "proportion=0.5, degree=7, lambda=0.016, Training RMSE=0.237, Testing RMSE=0.283\n",
      "proportion=0.5, degree=7, lambda=0.037, Training RMSE=0.246, Testing RMSE=0.276\n",
      "proportion=0.5, degree=7, lambda=0.085, Training RMSE=0.264, Testing RMSE=0.298\n",
      "proportion=0.5, degree=7, lambda=0.193, Training RMSE=0.291, Testing RMSE=0.348\n",
      "proportion=0.5, degree=7, lambda=0.439, Training RMSE=0.317, Testing RMSE=0.401\n",
      "proportion=0.5, degree=7, lambda=1.000, Training RMSE=0.336, Testing RMSE=0.441\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHJCAYAAABtzYa7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAABuUElEQVR4nO3dd3hT5dsH8G+60kFbZlugpew9W1ZBtrIEQTYiUIaAgojIT0EQKKAVX4aCTJFRZlmiLKHI3hQoLkREltAy7WC1tH3ePx6TkiYtKU1yMr6f68qVkycn59w5TZu7z1QJIQSIiIiIHIiT0gEQERERWRoTICIiInI4TICIiIjI4TABIiIiIofDBIiIiIgcDhMgIiIicjhMgIiIiMjhMAEiIiIih8MEiIiIiBwOEyAymeXLl0OlUmlvLi4uKF68OHr16oWLFy/q7d+8eXM0b978uce9cuUKVCoVli9fbvqgySCVSoXJkycrcu7o6GhUq1YNHh4eUKlUiIuLUySOFzV58mSoVCqlwzCZ/HwW8vNaR/m9b968uc7fzey3hIQEpUO0Wy5KB0D2Z9myZahcuTKePHmCI0eO4NNPP8W+ffvwxx9/oFChQtr95s+fr2CUlJtjx44hMDDQ4ue9c+cO+vbti7Zt22L+/PlQq9WoWLGixeOgLEp9FhzF/PnzkZycrFP26NEjtG3bFqGhoQgICFAoMvvHBIhMrnr16qhbty4A+d9NRkYGJk2ahC1btmDAgAHa/apWrapUiPny6NEjeHp6WuRcjx8/hru7u8VrFBo2bGjR82n8+eefePr0Kd588000a9bMJMe05M/LHin1WVDS48eP4eHhYZFzGfo7uGLFCjx9+hSDBw+2SAyOik1gZHaaZOjWrVs65YaawG7evIkePXrA29sbvr6+6NmzZ45VwN988w0qVqwItVqNqlWrYs2aNQgPD0fp0qV19ktLS8O0adNQuXJlqNVqFCtWDAMGDMCdO3eeG3t4eDgKFCiAX375Ba1bt4a3tzdatWqVp+Ompqbigw8+QEBAADw9PdG0aVOcPn0apUuXRnh4uHY/TRPi7t27MXDgQBQrVgyenp5ITU0FIJuGwsLC4OXlhQIFCqBNmzY4e/aszrn+/vtv9OrVCyVKlIBarYa/vz9atWql04y0d+9eNG/eHEWKFIGHhwdKlSqFrl274tGjR9p9DDVd/Prrr+jUqRMKFSoEd3d31K5dGytWrNDZZ//+/VCpVFi7di3Gjx+PEiVKwMfHBy+//DIuXLjw3Gv90ksvAQB69uwJlUql8/n44YcfEBYWBk9PT3h7e+OVV17BsWPHdI6haX46c+YMunXrhkKFCqFcuXI5nlNzzWNiYjBgwAAULlwYXl5e6NixI/7++2+9/ZcuXYpatWrB3d0dhQsXxuuvv47z58/n+r4GDRqEwoUL61xfjZYtW6JatWraxyqVCiNGjMDKlStRpUoVeHp6olatWti2bZveaw8fPoxWrVrB29sbnp6eaNSoEbZv327w/e3duxdvvfUWihQpAh8fH/Tr1w8PHz5EQkICevTogYIFC6J48eIYM2YMnj59qnOM7J+FO3fu4J133kHVqlVRoEAB+Pn5oWXLljh06FCu1yE3efm9j42NxWuvvYbChQvD3d0dderUwfr16w1en7CwMLi7u6NkyZL45JNPsGTJEqhUKly5ckW7X+nSpdGhQwds3rwZderUgbu7OyIiIgAACQkJGDp0KAIDA+Hm5oYyZcogIiIC6enpOufKz98YQ7799lsUKFAAPXv2fKHXk5EEkYksW7ZMABCnTp3SKf/6668FALFp0yad8mbNmolmzZppHz969EhUqVJF+Pr6irlz54pdu3aJkSNHilKlSgkAYtmyZdp9Fy1aJACIrl27im3btonVq1eLihUriuDgYBEcHKzdLyMjQ7Rt21Z4eXmJiIgIERMTI5YsWSJKliwpqlatKh49epTre+rfv79wdXUVpUuXFpGRkeKnn34Su3btytNxe/fuLZycnMTYsWPF7t27xZdffimCgoKEr6+v6N+/v971K1mypBgyZIjYuXOn2Lhxo0hPTxeffvqpUKlUYuDAgWLbtm1i8+bNIiwsTHh5eYnffvtNe4xKlSqJ8uXLi5UrV4oDBw6ITZs2iQ8++EDs27dPCCHE5cuXhbu7u3jllVfEli1bxP79+8Xq1atF3759xb///qs9DgAxadIk7eM//vhDeHt7i3LlyomoqCixfft20bt3bwFATJ8+Xbvfvn37BABRunRp0adPH7F9+3axdu1aUapUKVGhQgWRnp6e47X+66+/xLx58wQA8dlnn4ljx45p39vq1asFANG6dWuxZcsWER0dLUJDQ4Wbm5s4dOiQ9hiTJk0SAERwcLD46KOPRExMjNiy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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "seed = 56\n",
    "degree = 7\n",
    "split_ratio = 0.5\n",
    "ridge_regression_demo(x, y, degree, split_ratio, seed)\n",
    "### SOLUTION\n",
    "plt.savefig(\"ridge_regression\")\n",
    "### TEMPLATE\n",
    "### END SOLUTION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Your plot should look like:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![alt text](ridge_regression.png)"
   ]
  }
 ],
 "metadata": {
  "language_info": {
   "name": "python"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
