{ "cells": [ { "cell_type": "markdown", "id": "fa341661", "metadata": {}, "source": [ "# Classification with the Perceptron, Logistic Regression and Softmax Regression models" ] }, { "cell_type": "markdown", "id": "3c04bc10", "metadata": {}, "source": [ "Author: Omar Al-Ghattas" ] }, { "cell_type": "markdown", "id": "22f9d5d6", "metadata": {}, "source": [ "## Introduction" ] }, { "cell_type": "markdown", "id": "22b9686f", "metadata": {}, "source": [ "In this lab we will take a closer look at some common classification models used in machine learning. Our focus will be primarily on binary classification (two class problem), but we will also see an example of a k-class problem using softmax regression. \n", "\n", "We begin with a recap of the perceptron classifier and we will work through an example of applying it to simulated data. We will then turn our attention to the logistic regression and softmax regression models and apply them to the famous MNIST dataset. Throughout, we will pay close attention to the `sklearn` implementation of the `LogisticRegression` class." ] }, { "cell_type": "markdown", "id": "38368d2b", "metadata": {}, "source": [ "## Recap: Perceptrons" ] }, { "cell_type": "markdown", "id": "8ed02f47", "metadata": {}, "source": [ "We begin by taking a look at a very simple model of computation, called the perceptron. Assume that we have $n$ inputs, which we denote by $x_1,x_2,\\dots,x_n$, and assume that each $x_i$ is a vector in $p$ dimensions, so that $x_i = [x_{i1}, \\dots,x_{ip}]^T$, in other words, we have $p$ features - another way of writing this is: $x_i \\in \\mathbb{R}^p$ We will always assume that the first feature is a dummy feature, that is $x_{i1} = 1$, to account for the bias term.\n", "\n", "Next, we let $w \\in \\mathbb{R}^p$ be the weight vector for our perceptron model. Note that the dimension of weight vector and the input vector need to be the same. This allows us to compute the dot product:\n", "\n", "$$\n", "h_w(x_i) =\\langle w, x_i\\rangle = \\sum_{j=1}^p w_j x_{ij}.\n", "$$\n", "\n", "This is known as the activation. Note that the bias (intercept term) here is hidden in $w$. We could have equivalently defined our weight vector by $\\tilde{w} \\in \\mathbb{R}^{p-1}$ and our bias term, $b\\in \\mathbb{R}$, and written \n", "$$\n", "h_{\\tilde{w},b}(x_i) = b +\\sum_{j=2}^p w_j x_{ij},\n", "$$\n", "in other words, $w = (b,\\tilde{w})^T$. It doesn't matter which setting you use, they are equivalent, and we will stick with the first one for the remainder.\n", "\n", "As discussed in the lecture, the perceptron computes the dot product, and then outputs the sign of this value. The sign (denoted sgn(x) usually) function is defined by \n", "$$\n", "\\text{sgn}(x) = \\begin{cases}\n", "+1 \\quad &\\text{if} \\quad x>0\\\\\n", "0 \\quad &\\text{if} \\quad x=0\\\\\n", "-1 \\quad &\\text{if} \\quad x<0.\n", "\\end{cases}\n", "$$\n", "We can visualise this function:" ] }, { "cell_type": "code", "execution_count": 1, "id": "74329bef", "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGxCAYAAABvIsx7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA0YUlEQVR4nO3de3xU1b3///dAyAQoGYE0F47hYotco4YEQsIXhSohKGC0hQA2Sg+NjfWWRs7BoC0X26ZoUSsCiqJRQeBQDOoBIoHKxRKUSwLqQYpWTQgJMQgzREpCwv79wYP5dUwCSWAyyeL1fDz2o+41a6/5rHkU5s3al7FZlmUJAADAIG18XQAAAMDlRsABAADGIeAAAADjEHAAAIBxCDgAAMA4BBwAAGAcAg4AADAOAQcAABiHgAMAAIxDwAGAepw4cUJBQUFauXJlo49NTk5WYmLi5S8KQIPY+KkGAKjbb37zG23evFn79u2TzWZr1LFffPGF+vbtq/fee08/+clPvFQhgPoQcACgDt9++62uvvpqPfPMM/rVr37VpDHGjRunyspKbdy48TJXB+BiOEUF4JJs375dNptNK1asqPXa66+/LpvNpl27djV5/Pz8fI0dO1bBwcGy2+3q1q2bbrvtNh0+fNjd58SJE5o2bZq6dOmiH/zgB7rtttv0z3/+UzabTbNnz3b3mz17tmw2mz799FNNnjxZDodDISEh+s///E85nU6P983KylJ1dbWSkpLcbeXl5QoPD1dcXJzOnDnjbv+///s/dezYUcnJyR5jJCcna9OmTfriiy+aPH8ATUPAAXBJhg8frsjISC1cuLDWa88//7wGDx6swYMHy7IsVVdXN2g777vvvtOoUaN09OhRLVy4ULm5uXr22WfVvXt3nTx5UpJ09uxZjRs3Tm+++aZmzJih7OxsxcTEKCEhod6af/rTn+raa6/VmjVr9Oijj+rNN9/Ub37zG48+69atU2RkpK666ip32/nrcXbt2qUZM2ZIkk6dOqUJEyaoe/fueuGFFzzGGDFihCzL0vr16xv9uQK4RBYAXKJXX33VkmTl5+e72z766CNLkvXaa6959GnIdt7u3bstSdbatWvrfe9169ZZkqzFixd7tGdmZlqSrFmzZrnbZs2aZUmynnzySY++v/71r62AgADr7Nmz7rYOHTpYqampdb7nvHnzLElWdna2dc8991jt27e39u/fX2ff//iP/7CSkpLqrR+Ad/g1e6ICYJzJkydrxowZWrhwoV566SVJ0oIFC/TDH/7QfYpn3LhxjT5V9eMf/1idO3fWjBkzVFJSohtvvFH9+/f36LN161ZJ0sSJE2vVlJGRUee448eP99i/7rrrdPr0aZWVlSkkJEQnTpzQqVOnFBwcXOfx//Vf/6Vt27Zp8uTJOn36tF5++WVFRETU2Tc4OFjFxcUNmi+Ay4eAA+CS2e12/epXv9L8+fP11FNP6cyZM/qf//kfpaeny263S5K6dOkih8PRqHEdDoe2bt2qP/zhD5o5c6aOHz+usLAwpaSk6PHHH1e7du107Ngx+fn5qUuXLh7HhoSE1Dtu165da9UvSf/61788/jcgIKDO4202m6ZOnap169YpNDS01rU3/y4gIMA9HoDmwzU4AC6L++67T2fOnNErr7yil156SdXV1UpNTXW//tprr6ldu3YN2v5dRESEVq5cqWPHjqmgoEBJSUmaO3eu5s+fL+lcWKmurta3337rcVxpaWmT53I+AH1/zPNKSkp0//3364YbbtCxY8c0ffr0esf69ttvFRQU1ORaADQNKzgALouwsDBNmDBBixYtUlVVlcaNG6fu3bu7X2/KKap/Z7PZdP311+uZZ55RVlaW9u7dK0m66aab9OSTT2rVqlW677773P2b8nC+8/z9/XXNNdfUefdTTU2NJk+eLJvNpg0bNmj58uWaPn26RowYoTvvvNOjb3V1tYqKinTrrbc2uRYATUPAAXDZPPzww4qJiZEkvfrqqx6vde3atdapoYv53//9Xy1atEiJiYm65pprZFmW3nrrLZ04cUKjRo2SJCUkJGjYsGF65JFH5HK5FBUVpby8PL3++uuSpDZtmrZQPWLECG3YsKFW+6xZs7R9+3Zt3LhRoaGheuSRR7R161ZNmzZNkZGR6tWrl7vv/v37derUKY0cObJJNQBoOk5RAbhshgwZop49e6pfv366+eabL3m83r1766qrrtKTTz6p8ePHa8KECdq7d6+ysrKUkpIi6VyAeffddzVp0iT96U9/0u23367t27dr2bJlkuRxm3dj3HXXXSopKfFYdcrNzVVmZqZ++9vfeswvKytLgYGBSkpKUlVVlbt97dq1CgoKUnx8fJNqANB0PMkYwGWzf/9+XX/99Vq4cKF+/etf+7SWN998U3fddZf+/ve/Ky4urkljXHfddRo2bJgWL17c6GNramr04x//WFOmTNEf/vCHJr0/gKYj4AC4ZF988YW+/vprzZw5U4WFhfr888/VoUOHZnv/FStWqLi4WBEREWrTpo127typp556SpGRke7byJsiJydHd9xxhw4dOqSrr766Uce+9tprmj59ug4dOtTkVSQATccpKgCX7IknntCoUaNUUVGh1atXN2u4kaROnTpp5cqVSkpK0q233qqXXnpJU6dO1bvvvntJ4yYkJOipp57Sl19+2ehjz549q+XLlxNuAB9hBQcAABiHFRwAAGAcAg4AADAOAQcAABjninzQ39mzZ3XkyBF16tRJNpvN1+UAAIAGsCxLJ0+eVLdu3S76EM8rMuAcOXJE4eHhvi4DAAA0QVFR0UUf3XBFBpxOnTpJOvcBBQYG+rgaAADQEC6XS+Hh4e7v8Qu5IgPO+dNSgYGBBBwAAFqZhlxewkXGAADAOAQcAABgHAIOAAAwDgEHAAAYh4ADAACMQ8ABAADGuSJvEwdgpoMHDyovL0+nTp1S165dFR8fr86dO/u6LAA+QMAB0Orl5uZq3rx52rx5syTJz89P1dXVat++vaZMmaLHH39cPXv29G2RAJoVp6gAtGrPP/+8Ro8erYqKCi1btkynTp1SVVWViouLNXPmTK1fv15DhgxRfn6+r0sF0IxslmVZvi6iublcLjkcDjmdTp5kDLRib7/9thITE5WWlqb58+fX+eN75eXlGjNmjA4fPqyCggKFhIT4oFIAl0Njvr+9uoKzbds2jRs3Tt26dZPNZtPatWsveszWrVsVFRWlgIAAXXPNNXrhhRdq9VmzZo369+8vu92u/v37Kzs72wvVA2jJLMvSrFmzNGrUKD399NP1/rJwUFCQ1q1bp4qKCi1evLiZqwTgK169Bue7777T9ddfr1/84hf66U9/etH+X375pW699ValpKRo2bJl+vvf/65f//rX+uEPf+g+Pi8vT0lJSXriiSd0xx13KDs7WxMnTtQHH3ygmJgYb04HQAuSl5enffv2KScn56K/SxMcHKyf//zneuGFF5SWlqZ27do1U5XAla1Dhw4N+t0ob2i2U1Q2m03Z2dlKTEyst8+MGTP0zjvv6MCBA+621NRU7du3T3l5eZKkpKQkuVwubdiwwd0nISFBnTt31ooVK+oct7Ky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zZo1GjBggPLz83XDDTf4uiyjPfXUU1q8eLH++c9/+rqUVi0mJkaDBg3S4sWL3W39+vVTYmKiMjMzfViZub755hsFBwdr69atuvHGG31djnEqKio0aNAgLVq0SL///e91ww036Nlnn/V1Wa0CKzjwcPToUaWkpOiNN95Qhw4dfF3OFcPpdKpLly6+LqNVq6qq0p49exQfH+/RHh8frx07dvioKvM5nU5J4v+/XnL//ffrtttu0y233OLrUlqdK/LXxFE3y7I0depUpaamKjo6Wl999ZWvS7oifPHFF1qwYIHmz5/v61JatfLyctXU1CgkJMSjPSQkRKWlpT6qymyWZSk9PV3/7//9Pw0cONDX5Rhn5cqV2rt3r3bt2uXrUlolVnCuALNnz5bNZrvgtnv3bi1YsEAul0sZGRm+LrlVaujn/O+OHDmihIQETZgwQb/85S99VLlZbDabx75lWbXacHk88MAD2r9/v1asWOHrUoxTVFSkhx9+WMuWLVNAQICvy2mVuAbnClBeXq7y8vIL9unZs6cmTZqkd9991+PLoKamRm3bttVdd92l1157zdultmoN/ZzP/2V15MgRjRw5UjExMcrKylKbNvx741JUVVWpQ4cOWr16te644w53+8MPP6yCggJt3brVh9WZ58EHH9TatWu1bds29erVy9flGGft2rW644471LZtW3dbTU2NbDab2rRpo8rKSo/XUBsBB26FhYVyuVzu/SNHjmj06NH661//qpiYGF199dU+rM4sxcXFGjlypKKiorRs2TL+orpMYmJiFBUVpUWLFrnb+vfvr9tvv52LjC8Ty7L04IMPKjs7W1u2bFHv3r19XZKRTp48qa+//tqj7Re/+IX69u2rGTNmcEqwAbgGB27du3f32P/BD34gSfrRj35EuLmMjhw5ohEjRqh79+7685//rG+++cb9WmhoqA8ra/3S09OVnJys6OhoxcbGasmSJSosLFRqaqqvSzPG/fffrzfffFNvv/22OnXq5L6+yeFwqH379j6uzhydOnWqFWI6duyorl27Em4aiIADNLONGzfq888/1+eff14rOLKgemmSkpJ07NgxzZ07VyUlJRo4cKDWr1+vHj16+Lo0Y5y/BX/EiBEe7a+++qqmTp3a/AUB9eAUFQAAMA5XNQIAAOMQcAAAgHEIOAAAwDgEHAAAYBwCDgAAMA4BBwAAGIeAAwAAjEPAAQAAxiHgAAAA4xBwAACAcQg4AADAOP8fZjWXHeuQiHsAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "xx_neg = np.linspace(-5,-0.15,1000)\n", "xx_pos = np.linspace(0.15,5,1000)\n", "plt.plot(xx_neg, np.sign(xx_neg), color='black')\n", "plt.plot(xx_pos, np.sign(xx_pos), color='black')\n", "plt.scatter(0,0, s=80, color='black')\n", "plt.scatter(0,1, s=80, facecolors='none', edgecolors='black')\n", "plt.scatter(0,-1, s=80, facecolors='none', edgecolors='black')\n", "plt.title(\"y=sgn(x)\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "61b470dc", "metadata": {}, "source": [ "In a binary classification problem, we only have two classes, and so we will usually treat $\\text{sgn}(0)=-1$, as in, anything with positive value is classied as $+1$, and anything with non-positive value is classified as $-1$. In other words, we will think of the sgn function as looking like:" ] }, { "cell_type": "code", "execution_count": 2, "id": "64fe6581", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGxCAYAAABvIsx7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAABATElEQVR4nO3dd3hUZf7//9eQkAktQ4kpSCTBQg0tgZCgAiIBBBVXAUEjuIiCoCL6UYFViiWydlBAXBQRBBYRLBQJSlEJgpiAoiK6SigJnRkQCSTcvz/4Zb4OkwoMQw7Px3Wdaz333Oc+7/tMyLz2lInNGGMEAABgIRX8XQAAAMC5RsABAACWQ8ABAACWQ8ABAACWQ8ABAACWQ8ABAACWQ8ABAACWQ8ABAACWQ8ABAACWQ8AByuDQoUMKDQ3VnDlzyrxtSkqKevToce6L+puVK1fKZrNp5cqV7rbFixdrzJgxhfa32WwaOnSoT2sqizFjxshms52z8f7zn/+oR48eio6OVqVKlXTFFVdo8ODBys7OPmf78IfCjlN0dLS6d+9e4rZ//PGHbDabpk+f7qPqzt6PP/6oMWPG6I8//vB3KSjHCDhAGYwdO1a1a9dW7969y7ztmDFjtGjRIn3xxRc+qOyUli1bKj09XS1btnS3LV68WGPHjvXZPi9ko0ePVtWqVfXcc89p6dKleuyxx/Tpp58qLi5Ou3fv9nd5Z+yee+5Renq6v8vwmR9//FFjx44l4OCsBPq7AKC8OHDggN5880298sorZ3SW4fLLL1eXLl30/PPP67rrrvNBhVJISIjatGnjk7HLo4yMDIWFhbnX27Vrp5YtW6pVq1Z666239K9//cuP1Z25OnXqqE6dOv4uA7igcQYH59SXX34pm82m2bNne702Y8YM2Ww2rV+//qz2kZGRoe7duyssLEx2u121a9dWt27dtGPHDnefQ4cOacCAAapZs6aqVq2qbt266X//+59sNpvH5ZqCU/2bN29Wnz595HA4FB4ern/+859yOp0e+50+fbry8vI8zt7s27dPUVFRSkpK0okTJ9ztP/74o6pUqaKUlBSPMVJSUrR8+XL99ttvxc6xZ8+eaty4sUfbjTfeKJvNpnnz5rnbvvvuO9lsNn3yySeSvC9R9e/fX2+88YakU5ejCpbT/5/xe++9p4YNG6py5cpq1qyZPv3002LrK5CVlaU777zT/V40bNhQL730kk6ePOnuU3BJ5MUXX9TLL7+smJgYVa1aVYmJiVq7dm2x4xe8h0ePHvV67brrrvM6Rqf7e7gpEBcXp4CAAG3fvr3E+RVc9lmwYIGaNm2q4OBg1atXTxMmTPDqW5pjIUmTJ09Ws2bNVLVqVVWrVk0NGjTQyJEj3a8fPXpUjz76qGJiYhQcHKyaNWsqPj7e499UcZfySlNrYbZu3aq+fft61F/ws1OSY8eOacSIEYqJiVFQUJAuvfRSDRkyRIcOHfLod/q/vwLR0dHq37+/pFP/znr27ClJ6tChg/tn9u+X1N5++201a9bMfXxuueUW/fTTTx5j9u/fX1WrVtXPP/+szp07q0qVKoqMjNTzzz8vSVq7dq2uvvpqValSRVdddZXeffddr7pycnJ03333qU6dOgoKClJMTIzGjh2rvLw8j34lvafwEwOcYy1atDBt27b1am/VqpVp1aqVe/3kyZPmxIkTpVoKHDlyxNSqVcvEx8eb//73v2bVqlVm7ty5ZtCgQebHH380xhiTn59vrr76ahMcHGyef/55s2zZMjN27Fhz5ZVXGklm9OjR7vFGjx5tJJn69eubp556yqSlpZmXX37Z2O12c/fdd3vUf91115nWrVt7zeurr74ygYGB5uGHHzbGGPPnn3+aRo0amQYNGpgjR4549N29e7eRZCZMmFDsMZwyZYqRZHbt2mWMMebEiROmWrVqplKlSmbgwIHufuPHjzeBgYHG5XIZY4xZsWKFkWRWrFhhjDHm119/NbfddpuRZNLT093LsWPHjDHGSDLR0dGmdevW5r///a9ZvHixad++vQkMDDS//fZbsTXu2bPHXHrppeaSSy4xU6ZMMUuXLjVDhw41kszgwYPd/X7//Xf3frp06WIWLlxoFi5caGJjY02NGjXMoUOHvN6PAhs3bjSSzFtvveWx782bNxtJ5o033ii2xsIUHKPXXnutxL5169Y1l156qbnsssvM22+/bRYvXmzuuOMOI8m88MILZT4Ws2fPNpLMAw88YJYtW2aWL19upkyZYh588EF3n/vuu89UrlzZvPzyy2bFihXm008/Nc8//7yZOHFikcepLLUWvB/vvPOOu23z5s3G4XCY2NhYM2PGDLNs2TLzyCOPmAoVKpgxY8YUe4xOnjxpOnfubAIDA82TTz5pli1bZl588UVTpUoV06JFC/fPmjHG69/f32vv16+f+1g+99xz7ve34Gd2z549xhjjfq1Pnz5m0aJFZsaMGaZevXrG4XCYX375xT1mv379TFBQkGnYsKF57bXXTFpamrn77ruNJDNixAhz1VVXmWnTppnPPvvMdO/e3Ugy3377rXv77OxsExUVZerWrWvefPNNs3z5cvP0008bu91u+vfvX6b3FP5BwME598477xhJJiMjw922bt06I8m8++67Xv1KsxT49ttvjSSzcOHCIve/aNEiI8lMnjzZoz01NbXIgPPvf//bo+/9999vgoODzcmTJ91tlStXNoMGDSp0n+PHjzeSzIIFC0y/fv1MpUqVzKZNmwrte+mll5revXsXWb8xp4KJJDNjxgxjzKkQJck89thjJiYmxt2vU6dOJikpyb1+esAxxpghQ4Z4fRgWkGTCw8PdAckYY3JyckyFChVMampqsTU+8cQTRpL55ptvPNoHDx5sbDab2bJlizHm/32gxsbGmry8PHe/gp+J2bNnu9sK++Bu166dad68udc+QkJCzOHDh4ut8XQul8s0bNjQREVFlWrbunXrGpvNZjIzMz3aO3XqZEJCQsyff/5pjCn9sRg6dKipXr16sfts0qSJ6dGjR7F9igo4pam1sIDTuXNnU6dOHeN0Oj22HTp0qAkODjYHDhwospalS5cW+m9o7ty5RpKZOnWqu600AccYY+bNm+f1c2yMMQcPHjSVKlUyN9xwg0d7VlaWsdvtpm/fvu62fv36GUlm/vz57rYTJ06YSy65xEgy3333nbt9//79JiAgwAwfPtzddt9995mqVauabdu2eezrxRdfNJLM5s2bjTGle0/hH1yiwjnXp08fhYWFeZzenjhxoi655BKPyzs33nij1q9fX6qlwBVXXKEaNWro8ccf15QpU/Tjjz967X/VqlWSpF69ennVVZSbbrrJY71p06Y6duyY9uzZI+nUJa+jR48WeslDkv7v//5P3bp1U58+ffTuu+9q4sSJio2NLbRvWFiYdu7cWWQt0qn7daKjo7V8+XJJUlpammJjY3XnnXfq999/12+//abc3Fx99dVXuv7664sdqyQdOnRQtWrV3Ovh4eEKCwvTtm3bit3uiy++UKNGjdS6dWuP9v79+8sY43Uzdbdu3RQQEOBeb9q0qSSVuJ+HHnpImZmZ+vrrryVJLpdL7733nvr166eqVauWPMH/37Fjx/SPf/xD27Zt07x580q9bePGjdWsWTOPtr59+8rlcum7776TVPpj0bp1ax06dEh9+vTRRx99pH379nntr3Xr1lqyZImeeOIJrVy5Un/99Vep51iaWk937Ngxff7557rllltUuXJl5eXluZcbbrhBx44dK/ZSYsHcCi4xFejZs6eqVKmizz//vNT1lyQ9PV1//fWX176ioqJ03XXXee3LZrPphhtucK8HBgbqiiuuUGRkpFq0aOFur1mzptfP/KeffqoOHTqodu3aHseka9eukv7f75nSvKfwDwIOzjm73a777rtP77//vg4dOqS9e/fqv//9r+655x7Z7XZ3v5o1a6p58+alWgo4HA6tWrVKzZs318iRI9W4cWPVrl1bo0ePdt8Ds3//fgUGBqpmzZoedYWHhxdZc61atbzmIMn94VLwv8HBwYVub7PZ1L9/fx07dkwRERFe9978XXBwcKk+tDp27Oj+hb18+XJ16tRJsbGxCg8P1/Lly/X111/rr7/+OuuAc/rcpVPzL6nG/fv3KzIy0qu9du3a7teL28/px7goN998s6Kjo92Befr06frzzz81ZMiQYrf7u9zcXN1yyy366quv9PHHHyshIaHU20ZERBTZVjDH0h6LlJQUvf3229q2bZtuvfVWhYWFKSEhQWlpae5tJkyYoMcff1wLFy5Uhw4dVLNmTfXo0UNbt249J7Webv/+/crLy9PEiRNVsWJFj6UgHBT3oV3w7+2SSy7xaLfZbIqIiChyv2eiYKyijvXp+6pcubLXv9mgoCCv3w0F7ceOHXOv7969W5988onXMSm476vgmJTmPYV/EHDgE4MHD9aJEyf09ttv66233lJeXp4GDRrk0efdd9/1+uVR1PJ3sbGxmjNnjvbv36/MzEz17t1b48aN00svvSTp1AdpXl6eDhw44LFdTk7OGc+n4MP59DELZGdna8iQIWrevLn279+vRx99tMixDhw4oNDQ0BL32bFjR+3cuVPr1q3TN998o06dOkk6dXNtWlqali9frqpVq/rtqalatWoV+n0yu3btkqRSzbE0KlSooCFDhuiDDz5Qdna2Jk2apI4dO6p+/fql2j43N1c9evTQihUrtHDhQnXs2LFM+y/s56agreDnoizH4u6779aaNWvkdDq1aNEiGWPUvXt399mDKlWqaOzY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AABAORDo6x28/PLLGjBggO655x5J0quvvqrPPvtMkydPVmpqqld/h8Mhh8PhXl+4cKEOHjyou+++26OfzWZTREREqWrIzc1Vbm6ue93lcp3JVAAAQDnh0zM4x48f14YNG5ScnOzRnpycrDVr1pRqjGnTpun6669X3bp1PdqPHDmiunXrqk6dOurevbsyMjKKHCM1NdUdnBwOh6Kioso+GQAAUG74NODs27dP+fn5Cg8P92gPDw9XTk5OidtnZ2dryZIl7rM/BRo0aKDp06fr448/1uzZsxUcHKy2bdtq69athY4zYsQIOZ1O97J9+/YznxQAALjg+fwSlXTqctLfGWO82gozffp0Va9eXT169PBob9Omjdq0aeNeb9u2rVq2bKmJEydqwoQJXuPY7XbZ7fYzKx4AAJQ7Pj2DExoaqoCAAK+zNXv27PE6q3M6Y4zefvttpaSkKCgoqNi+FSpUUKtWrYo8gwMAAC4uPg04QUFBiouLU1pamkd7WlqakpKSit121apV+vXXXzVgwIAS92OMUWZmpiIjI8+qXgAAYA0+v0Q1fPhwpaSkKD4+XomJiZo6daqysrI0aNAgSafuj9m5c6dmzJjhsd20adOUkJCgJk2aeI05duxYtWnTRldeeaVcLpcmTJigzMxMvfHGG76eDgAAKAd8HnB69+6t/fv3a9y4ccrOzlaTJk20ePFi91NR2dnZXt+J43Q6NX/+fL322muFjnno0CHde++9ysnJkcPhUIsWLbR69Wq1bt3a19MBAADlgM0YY/xdxPnmcrnkcDjkdDoVEhLi73IAAEAplOXzm79FBQAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALOe8BJxJkyYpJiZGwcHBiouL05dffllk35UrV8pms3ktP//8s0e/+fPnq1GjRrLb7WrUqJEWLFjg62kAAIBywucBZ+7cuRo2bJhGjRqljIwMXXPNNeratauysrKK3W7Lli3Kzs52L1deeaX7tfT0dPXu3VspKSnauHGjUlJS1KtXL33zzTe+ng4AACgHbMYY48sdJCQkqGXLlpo8ebK7rWHDhurRo4dSU1O9+q9cuVIdOnTQwYMHVb169ULH7N27t1wul5YsWeJu69Kli2rUqKHZs2d79c/NzVVubq573eVyKSoqSk6nUyEhIWcxOwAAcL64XC45HI5SfX779AzO8ePHtWHDBiUnJ3u0Jycna82aNcVu26JFC0VGRqpjx45asWKFx2vp6eleY3bu3LnIMVNTU+VwONxLVFTUGcwGAACUFz4NOPv27VN+fr7Cw8M92sPDw5WTk1PoNpGRkZo6darmz5+vDz/8UPXr11fHjh21evVqd5+cnJwyjTlixAg5nU73sn379rOcGQAAuJAFno+d2Gw2j3VjjFdbgfr166t+/fru9cTERG3fvl0vvviirr322jMa0263y263n2n5AACgnPHpGZzQ0FAFBAR4nVnZs2eP1xmY4rRp00Zbt251r0dERJz1mAAAwLp8GnCCgoIUFxentLQ0j/a0tDQlJSWVepyMjAxFRka61xMTE73GXLZsWZnGBAAA1uXzS1TDhw9XSkqK4uPjlZiYqKlTpyorK0uDBg2SdOr+mJ07d2rGjBmSpFdffVXR0dFq3Lixjh8/rpkzZ2r+/PmaP3++e8yHHnpI1157rcaPH6+bb75ZH330kZYvX66vvvrK19MBAADlgM8DTu/evbV//36NGzdO2dnZatKkiRYvXqy6detKkrKzsz2+E+f48eN69NFHtXPnTlWqVEmNGzfWokWLdMMNN7j7JCUlac6cOfrXv/6lJ598Updffrnmzp2rhIQEX08HAACUAz7/HpwLUVmeowcAABeGC+Z7cAAAAPyBgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACyHgAMAACznvAScSZMmKSYmRsHBwYqLi9OXX35ZZN8PP/xQnTp10iWXXKKQkBAlJibqs88+8+gzffp02Ww2r+XY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zZqV2Hfz5s06ceKEIiMjS54AAACwPJ/dZNywYUN16dJFAwcO1Nq1a7V27VoNHDhQ3bt393iCqkGDBlqwYIHHti6XS/PmzdM999zjNe5vv/2mcePG6dtvv9Uff/yhxYsXq2fPnmrRooXatm3rq+kAAIByxKdf9Ddr1izFxsYqOTlZycnJatq0qd577z2PPlu2bJHT6fRomzNnjowx6tOnj9eYQUFB+vzzz9W5c2fVr19fDz74oJKTk7V8+XIFBAT4cjoAAKCcsBljjL+LON9cLpccDoecTqdCQkL8XQ4AACiFsnx+87eoAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5RBwAACA5QT6uwAAOFd2796tlStX6vDhw6pWrZrat2+v8PBwf5cFwA8IOADKve+//17PPfecPvjgA+Xl5bnbAwMDddttt2nkyJGKjY31Y4UAzjcuUQEo1z777DO1bt3aK9xIUl5enj744AO1bt1an332mZ8qBOAPBBwA5db333+vHj16KDc31yvcFMjLy1Nubq569Oih77///jxXCMBffBpwnn32WSUlJaly5cqqXr16qbYxxmjMmDGqXbu2KlWqpPbt22vz5s0efXJzc/XAAw8oNDRUVapU0U033aQdO3b4YAYALmTPPfec8vLyZIwptp8xRnl5eUpNTT1PlQHwN5sp6TfDWRg9erSqV6+uHTt2aNq0aTp06FCJ24wfP17PPvuspk+frquuukrPPPOMVq9erS1btqhatWqSpMGDB+uTTz7R9OnTVatWLT3yyCM6cOCANmzYoICAgBL34XK55HA45HQ6FRIScrbTdDPG6OjRo+dsPABF2717t6666irl5+eXepvAwEDt3LlTYWFhPqwMgK+U6fPbnAfvvPOOcTgcJfY7efKkiYiIMM8//7y77dixY8bhcJgpU6YYY4w5dOiQqVixopkzZ467z86dO02FChXM0qVLCx332LFjxul0upft27cbScbpdJ7dxE5z5MgRI4mFheUCXubOnXtO/90DOH+c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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(xx_neg, np.sign(xx_neg), color='black')\n", "plt.plot(xx_pos, np.sign(xx_pos), color='black')\n", "plt.scatter(0,-1, s=80, color='black')\n", "plt.scatter(0,1, s=80, facecolors='none', edgecolors='black')\n", "plt.title(\"y=sgn(x) with only 2 possible outomes\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "e2b8ce0c", "metadata": {}, "source": [ "Now, denote the output of the perceptron on input $x_i$ to be $o(x_i) = \\text{sign}(h_w(x_i))$. The idea is to tweak the weight vector $w$ so that $h_w(x_i)$ is positive when $x_i$ has corresponding label $y_i=+1$, and $h_w(x_i)\\le 0$ whenever $y_i = -1$. In the next section, we show a simple example for the binary OR function.\n", "\n", "Recall that the binary OR function takes in two binary inputs, and returns TRUE if at least one of the two inputs is equal to $1$, and otherwise returns FALSE. For example, if $x = (1,0)$, then \n", "\n", "$$\n", "\\text{OR}(x) = \\text{TRUE} = +1 = y\n", "$$\n", "\n", "and if $x=(0,0)$, then \n", "\n", "$$\n", "\\text{OR}(x) = \\text{FALSE} = -1 = y.\n", "$$\n", "\n", "Note that here we are choosing to encode $\\{TRUE, FALSE\\} = \\{+1,-1\\}$. Sometimes we will choose to use the encoding $\\{TRUE, FALSE\\} = \\{+1,0\\}$, it doesn't matter, as long as we remember to be consistent." ] }, { "cell_type": "markdown", "id": "dbecc8e7", "metadata": {}, "source": [ "## Representing simple Boolean functions as a linear classifier" ] }, { "cell_type": "markdown", "id": "895b7ab5", "metadata": {}, "source": [ "We will first look at modelling a simple two-input Boolean function as linear classifier. We can think of this as a Perceptron WITHOUT any learning! To get started we will use the OR function, for which the truth table will be familiar to you all. Note that you will need to pick some weights for the function to output the correct values given the input. There are many possible values that could do the job. Also, remember to take care with the dimension of the weight vector." ] }, { "cell_type": "code", "execution_count": 3, "id": "78eb939d", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "OR Function: \n", "For Input [1 0 0] with Class -1 Predict -1\n", "For Input [1 0 1] with Class 1 Predict 1\n", "For Input [1 1 0] with Class 1 Predict 1\n", "For Input [1 1 1] with Class 1 Predict 1\n" ] } ], "source": [ "def sgn(x):\n", " return 1 if x>0 else -1\n", "\n", "# set up\n", "X = np.array([[1,0,0], # all possible inputs, note that first\n", " [1,0,1], # element is always equal to 1 (bias term)\n", " [1,1,0], \n", " [1,1,1]]) \n", "y = np.array([-1,1,1,1]) # labels for the OR function OR(x1,x2)\n", "n = X.shape[0] # number of data points\n", "m = X[0].shape[0] # input dimension\n", " \n", "w = np.array([-0.03, 0.04, 0.04]) # example weight vector\n", "\n", "# what predictions will our current model (w) make?\n", "print(\"OR Function: \")\n", "for i in range(n):\n", " h = np.dot(w, X[i]) # activation\n", " o = sgn(h) # output\n", " print('For Input', X[i], 'with Class', y[i], 'Predict ', o)" ] }, { "cell_type": "markdown", "id": "4c3954de", "metadata": {}, "source": [ "\n", " \n", "#### Exercise: \n", "Repeat the above analysis but for the AND function, choose an appropriate weight vector by trial and error" ] }, { "cell_type": "markdown", "id": "cc55acad", "metadata": {}, "source": [ "## Perceptron Learning" ] }, { "cell_type": "markdown", "id": "1c0f4983", "metadata": {}, "source": [ "So far, we haven't done any actual learning, we just picked a weight vector, $w$, that works. We now look at an approach to learning $w$ from data. We first recall the (Batch) Perceptron Algorithm from lectures:\n", "\n", "\\begin{align*}\n", "&\\text{input: } (x_1,y_1),\\dots, (x_n, y_n)\\\\\n", "&\\text{initialise: } w^{(0)} = (0,0,\\dots, 0) \\in \\mathbb{R}^p\\\\\n", "&\\text{for } t=1,\\dots, \\texttt{max\\_iter}\\\\\n", "&\\qquad \\text{if there is an index $i$ such that } y_i \\langle w^{(t)}, x_i \\rangle \\le 0:\\\\\n", "&\\qquad \\qquad w^{(t+1)} = w^{(t)} + y_i x_i\\\\\n", "&\\qquad \\text{else:}\\\\\n", "&\\qquad \\qquad \\text{ output } w^{(t)}, t\\\\\n", "\\end{align*}" ] }, { "cell_type": "markdown", "id": "c44daab7", "metadata": {}, "source": [ "The perceptron is known as a mistake driven algorithm, since it updates $w$ only when a mistake is made (i.e. when $y_i \\langle w, x_i \\rangle \\le 0$). It is also important to note that the perceptron only converges when it makes no mistakes on the data, so in other words, this algorithm can only terminate if the data set is linearly separable. We can implement the above in code and try to visualise the learning process." ] }, { "cell_type": "markdown", "id": "986df7de", "metadata": {}, "source": [ "First, some helper functions to generate toy data and plot the perceptron at each iteration." ] }, { "cell_type": "code", "execution_count": 4, "id": "5e72de45", "metadata": {}, "outputs": [], "source": [ "def generate_data(n=20, means=[[3,3],[-1,1]], seed=1):\n", " '''\n", " generate data from two gaussians\n", " '''\n", " np.random.seed(seed)\n", " m1 = np.array(means[0])\n", " m2 = np.array(means[1])\n", " S1 = np.random.rand(2,2)\n", " S2 = np.random.rand(2,2)\n", " dist_01 = np.random.multivariate_normal(m1, S1.T @ S1, n)\n", " dist_02 = np.random.multivariate_normal(m2, S2.T @ S2, n)\n", " X = np.concatenate((np.ones(2*n).reshape(-1,1), \n", " np.concatenate((dist_01, dist_02))), axis=1)\n", " y = np.concatenate((np.ones(n), -1*np.ones(n))).reshape(-1,1)\n", " shuffle_idx = np.random.choice(2*n, size=2*n, replace=False)\n", " X = X[shuffle_idx]\n", " y = y[shuffle_idx]\n", " return X, y\n", "\n", "def plot_perceptron(ax, X, y, w):\n", " pos_points = X[np.where(y==1)[0]]\n", " neg_points = X[np.where(y==-1)[0]]\n", " ax.scatter(pos_points[:, 1], pos_points[:, 2], color='blue')\n", " ax.scatter(neg_points[:, 1], neg_points[:, 2], color='red')\n", " xx = np.linspace(-6,6)\n", " yy = -w[0]/w[2] - w[1]/w[2] * xx\n", " ax.plot(xx, yy, color='orange')\n", " \n", " ratio = (w[2]/w[1] + w[1]/w[2])\n", " xpt = (-1*w[0] / w[2]) * 1/ratio\n", " ypt = (-1*w[0] / w[1]) * 1/ratio\n", " \n", " ax.arrow(xpt, ypt, w[1], w[2], head_width=0.2, color='orange')\n", " ax.axis('equal')" ] }, { "cell_type": "markdown", "id": "6a1d2f87", "metadata": {}, "source": [ "Next, we implement the perceptron learning algorithm. Note here that we will randomly initiliase the weight vector rather than taking the weight vector to be $(0,0,\\dots,0)$, this is done to make it easier to visualise the algorithm. Note we also restrict attention to the two dimensional case, so $w \\in \\mathbb{R}^3$ to account for the two dimensions and the bias (intercept) term." ] }, { "cell_type": "code", "execution_count": 5, "id": "b27bad2b", "metadata": {}, "outputs": [], "source": [ "def train_perceptron_for_vis(X, y, max_iter=100):\n", " np.random.seed(20) # for consistency in weight init\n", " w = np.random.random(3) # init weights randomly\n", " ctr = 0 # keep track of number of iterations\n", " for _ in range(max_iter):\n", " \n", " yXw = (y * X) @ w.T # compute all predictions made by model\n", " mistake_idxs = np.where(yXw <= 0)[0] # find indexes where mistake is made\n", " if mistake_idxs.size > 0:\n", " ctr += 1\n", " i = np.random.choice(mistake_idxs) # pick idx randomly\n", " w = w + y[i] * X[i] # update w\n", " \n", " # visualisation\n", " fig, ax = plt.subplots()\n", " plot_perceptron(ax, X, y, w)\n", " plt.show()\n", " print(f\"Iteration {ctr}: w = {w}\")\n", " \n", " # plot final weight vector\n", " fig, ax = plt.subplots()\n", " plot_perceptron(ax, X, y, w)\n", " plt.show()\n", " print(f\"Iteration {ctr}: w = {w}\")\n", "\n", " return " ] }, { "cell_type": "code", "execution_count": 6, "id": "48e99cf4", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA/zklEQVR4nO3deXxU9b3/8ddkAiFAEpYIhCSQgKyyhUXqkgrVolYpGrFYl/60VssVLZuKuAFeJAooUFutaK/X6lVpNXXnKl4NUlsrEjbZZJWQhB0S1iyT8/vjazAh20ySmXNm5v18PHjE882ZmY9T63n7XV2WZVmIiIiI2CDC7gJEREQkfCmIiIiIiG0URERERMQ2CiIiIiJiGwURERERsY2CiIiIiNhGQURERERsoyAiIiIitom0u4C6lJeXk5+fT0xMDC6Xy+5yRERExAuWZXHs2DE6d+5MRETdfR6ODiL5+fkkJyfbXYaIiIg0QG5uLklJSXXe4+ggEhMTA5i/kdjYWJurEREREW8UFRWRnJx85jleF0cHkYrhmNjYWAURERGRIOPNtApNVhURERHbKIiIiIiIbRRERERExDYKIiIiImIbBRERERGxjYKIiIiI2EZBRERERGyjICIiIiK2cfSGZiIiIlV4PLBiBRQUQEICpKeD2213VdIICiIiIhIcsrJg4kTYs+eHtqQkWLQIMjLsq0saRUMzIiLifFlZMHZs1RACkJdn2rOy7KlLGk1BREREnM3jMT0hllX9dxVtkyaZ+yToKIiIiIizrVhRvSekMsuC3FxznwQdBREREXG2goKmvU8cRUFEREScLSGhae8TR1EQERERZ0tPN6tjXK6af+9yQXKyuU+CjoKIiIg4m9ttluhC9TBScb1wofYTCVIKIiIi4nwZGfDmm5CYWLU9Kcm0ax+RoKUNzUREJDhkZMCYMdpZNcQoiIiISPBwu2HECLurkCakoRkRERGxjYKIiIiI2EZBRERERGyjICIiIiK2URARERER2yiIiIiIiG0URERERMQ2CiIiIiJiGwURERERsY2CiIiIiNhGQURERERsoyAiIiIitlEQEREREdsoiIiIiIhtFERERETENgoiIiIiYhsFEREREbGNgoiIiIjYRkFEREREbKMgIiIiIrZREBERERHbBCyIZGZm4nK5mDRpUqA+UkRERBwuIEFk5cqVLF68mAEDBgTi40RERCRI+D2IHD9+nJtuuokXXniBtm3b+vvjREREJIj4PYhMmDCBq666issuu6zee4uLiykqKqryR0REREJXpD/f/I033iAnJ4eVK1d6dX9mZiazZs3yZ0kiIiLiIH7rEcnNzWXixIm8+uqrtGjRwqvXTJ8+ncLCwjN/cnNz/VWeiIiIOIDLsizLH2/89ttvc+211+J2u8+0eTweXC4XERERFBcXV/ldTYqKioiLi6OwsJDY2Fh/lCkiIiJNzJfnt9+GZi699FLWr19fpe22226jd+/eTJs2rd4QIiIiIqHPb0EkJiaGfv36VWlr1aoV7du3r9YuIiIi4Uk7q4qIiIht/Lpq5mzZ2dmB/DgRERFxOPWIiIiIiG0URERERMQ2CiIiIiJiGwURERERsY2CiIiIiNhGQURERERsoyAiIiIitlEQEREREdsoiIiIiIhtFERERETENgoiIiIiYhsFEREREbGNgoiIiIjYJqCn74qIiIN4PLBiBRQUQEICpKeD2213VRJmFERERMJRVhZMnAh79vzQlpQEixZBRoZ9dUnY0dCMiEi4ycqCsWOrhhCAvDzTnpVlT10SlhRERETCicdjekIsq/rvKtomTTL3iQSAgoiISKjweCA7G15/3fysKUysWFG9J6Qyy4LcXHOfSABojoiISCjwds5HQYF37+ftfSKNpB4REZFg58ucj4QE797T2/tEGklBREQkmPk65yM93fSU1MblguRkc59IACiIiIgEM1/nfLjd8Mtf1v2eCxdqPxEJGM0REREJJmdvQpaX593rKuZ8ZGXB/Pm133fvvdpHRAJKQUREJFjUNCE1Pt671yYk1D2MA2ZY5o03IDNTPSISMBqaEREJBllZcN111YdhDh6s+3WV53xo6a44kIKIiIjTeTxw55313+dy1XxdMedDS3fFgRRERESc7vHH4dCh+u87e5gmKQnefPOHOR9auisOpDkiIiJO5vGYTcm8sWABJCbWfppuxdLdvLya54m4XOb3WrorAaQgIiLiZCtWwOHD3t2bmAgjRtT+e7fbhJqxY03oqBxGzh7GEQkQDc2IiDiZt/M12rXzricjI8MM1yQmVm0/exhHJEDUIyIi4kQV+4Vs3Ojd/RMnet+TkZEBY8ZU3Y/k7GEckQBREBERcZqa9gupS/v28NBDvn2G2133MI5IgCiIiIg4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vPzyy/V+VlFREXFxcRQWFhIbG+tLmSIiImITX57fPgcRb+3evbvKHI/8/Hwuv/xy3nzzTYYPH05SUlK976EgIiIiEnx8eX77bbJqly5dqly3bt0agO7du3sVQkRERCT0hc/OqiIiIuI4ATtrJiUlBT+NAomIiEiQUo+IiIiI2EZBRERERGyjICIiIiK2URARERER2yiIiIiIiG0URERERMQ2AVu+2xAVy32b5BReERERCYiK57Y323Y4OogcO3YMQKfwioiIBKFjx44RFxdX5z1+O2umKZSXl5Ofn09MTEyVw/N8VVRURHJyMrm5uTqzxkv6znyj78t3+s58p+/Md/rOfNcU35llWRw7dozOnTsTEVH3LBBH94hEREQ06bk0sbGx+gfRR/rOfKPvy3f6znyn78x3+s5819jvrL6ekAqarCoiIiK2URARERER24RFEImKimLGjBlERUXZXUrQ0HfmG31fvtN35jt9Z77Td+a7QH9njp6sKiIiIqEtLHpERERExJkURERERMQ2CiIiIiJiGwURERERsU1YBpEPPviA4cOHEx0dTXx8PBkZGXaXFBSKi4sZNGgQLpeLNWvW2F2OY+3atYvbb7+d1NRUoqOj6d69OzNmzKCkpMTu0hzl2WefJTU1lRYtWjBkyBBWrFhhd0mOlZmZybBhw4iJiaFDhw5cc801bNmyxe6ygkZmZiYul4tJkybZXYqj5eXlcfPNN9O+fXtatmzJoEGDWLVqld8/N+yCyFtvvcUtt9zCbbfdxtq1a/niiy+48cYb7S4rKNx///107tzZ7jIcb/PmzZSXl/P888+zYcMGFixYwJ/+9CcefPBBu0tzjCVLljBp0iQeeughVq9eTXp6OldeeSW7d++2uzRHWr58ORMmTODLL79k2bJllJWVMWrUKE6cOGF3aY63cuVKFi9ezIABA+wuxdGOHDnCRRddRLNmzVi6dCkbN27kqaeeok2bNv7/cCuMlJaWWomJidaLL75odylB58MPP7R69+5tbdiwwQKs1atX211SUJk7d66VmppqdxmOcf7551vjx4+v0ta7d2/rgQcesKmi4LJ//34LsJYvX253KY527Ngxq0ePHtayZcusSy65xJo4caLdJTnWtGnTrIsvvtiWzw6rHpGcnBzy8vKIiIggLS2NhIQErrzySjZs2GB3aY62b98+7rjjDl555RVatmxpdzlBqbCwkHbt2tldhiOUlJSwatUqRo0aVaV91KhR/POf/7SpquBSWFgIoH+m6jFhwgSuuuoqLrvsMrtLcbx3332XoUOHcv3119OhQwfS0tJ44YUXAvLZYRVEduzYAcDMmTN5+OGHef/992nbti2XXHIJhw8ftrk6Z7Isi1tvvZXx48czdOhQu8sJStu3b+eZZ55h/PjxdpfiCAcPHsTj8dCxY8cq7R07dmTv3r02VRU8LMtiypQpXHzxxfTr18/uchzrjTfeICcnh8zMTLtLCQo7duzgueeeo0ePHnz00UeMHz+e3/3ud/zlL3/x+2eHRBCZOXMmLperzj9ff/015eXlADz00ENcd911DBkyhJdeegmXy8Xf/vY3m/8uAsvb7+yZZ56hqKiI6dOn212y7bz9zirLz8/niiuu4Prrr+c3v/mNTZU7k8vlqnJtWVa1Nqnu7rvvZt26dbz++ut2l+JYubm5TJw4kVdffZUWLVrYXU5QKC8vZ/DgwcyZM4e0tDR++9vfcscdd/Dcc8/5/bMj/f4JAXD33Xdzww031HlPSkoKx44dA6Bv375n2qOioujWrVvYTZLz9jubPXs2X375ZbUzB4YOHcpNN93Eyy+/7M8yHcXb76xCfn4+I0eO5IILLmDx4sV+ri54xMfH43a7q/V+7N+/v1oviVR1zz338O677/L555+TlJRkdzmOtWrVKvbv38+QIUPOtHk8Hj7//HP+8Ic/UFxcjNvttrFC50lISKjybATo06cPb731lt8/OySCSHx8PPHx8fXeN2TIEKKiotiyZQsXX3wxAKWlpezatYuuXbv6u0xH8fY7+/3vf8/s2bPPXOfn53P55ZezZMkShg8f7s8SHcfb7wzMMriRI0ee6XWLiAiJzscm0bx5c4YMGcKyZcu49tprz7QvW7aMMWPG2FiZc1mWxT333MPf//53srOzSU1NtbskR7v00ktZv359lbbbbruN3r17M23aNIWQGlx00UXVloR/++23AXk2hkQQ8VZsbCzjx49nxowZJCcn07VrV+bNmwfA9ddfb3N1ztSlS5cq161btwage/fu+i+yWuTn5zNixAi6dOnC/PnzOXDgwJnfderUycbKnGPKlCnccsstDB069EyP0e7duzWPphYTJkzgtdde45133iEmJuZMb1JcXBzR0dE2V+c8MTEx1ebPtGrVivbt22teTS0mT57MhRdeyJw5c/jFL37BV199xeLFiwPSmxtWQQRg3rx5REZGcsstt3Dq1CmGDx/Op59+Stu2be0uTULExx9/zLZt29i2bVu1sGbpsGsAxo0bx6FDh3jssccoKCigX79+fPjhh2HXM+mtinH6ESNGVGl/6aWXuPXWWwNfkIScYcOG8fe//53p06fz2GOPkZqaysKFC7npppv8/tkuS/9mFBEREZto4FpERERsoyAiIiIitlEQEREREdsoiIiIiIhtFERERETENgoiIiIiYhsFEREREbGNgoiIiIjYRkFEREREbKMgIiIiIrZREBERERHbKIiIiIiIbf4/rUzugsnLtEoAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 1: w = [-0.4118692 0.45148601 -0.79584122]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 2: w = [ 0.5881308 -2.59682971 -2.12119882]\n" ] }, { "data": { "image/png": "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JqBYEmntnUVERMSeqPqQMtV2FRoREREREXsURERERMQaBRERERGxRkFERERErFEQEREREWsURERERMSagL591+12A5Cbm2u5EhEREfFU0ed20ed4WQI6iBw+fBiAhIQEy5WIiIiItw4fPkxcXFyZ1zjcnsQVSwoLC8nKyiImJgaHw1GlPzs3N5eEhAQyMjKIjY2t0p8davS78px+V57T78pz+l15R78vz/nqd+V2uzl8+DDNmjUjIqLsVSABPSISERFBfHy8T98jNjZW/0f1kH5XntPvynP6XXlOvyvv6PflOV/8rsobCSmixaoiIiJijYKIiIiIWBO2QSQqKoqHH36YqKgo26UEPP2uPKfflef0u/Kcflfe0e/Lc4HwuwroxaoiIiIS2sJ2RERERETsUxARERERaxRERERExBoFEREREbFGQeRnX3zxBd27d6dGjRo0aNCAtLQ02yUFtLy8PJKSknA4HKxbt852OQFn+/bt/P73v6dVq1bUqFGD1q1b8/DDD3Py5EnbpQWMF198kVatWhEdHU1ycjKLFi2yXVLAGTduHF27diUmJoZGjRpxxRVXsGnTJttlBYVx48bhcDgYM2aM7VICUmZmJjfccAP169enZs2aJCUlsXr1aiu1KIgAU6dO5cYbb+Tmm29m/fr1LFmyhJEjR9ouK6Ddf//9NGvWzHYZAev777+nsLCQV155hY0bN/Lss8/y8ssv89e//tV2aQHhgw8+YMyYMTz44IOsXbuWlJQUhg4dyo4dO2yXFlAWLFjA7bffzrJly5g9ezYFBQUMGjSIo0eP2i4toK1cuZKJEyfSoUMH26UEpIMHD9KrVy+qVavG9OnT+fbbb/nXv/5FnTp17BTkDnP5+fnu5s2bu1977TXbpQSNadOmudu1a+feuHGjG3CvXbvWdklB4amnnnK3atXKdhkBoVu3bu5Ro0YVO9euXTv3X/7yF0sVBYc9e/a4AfeCBQtslxKwDh8+7G7Tpo179uzZ7r59+7pHjx5tu6SA88ADD7h79+5tu4xTwn5EZM2aNWRmZhIREUGnTp1o2rQpQ4cOZePGjbZLC0i7d+/m1ltv5Z133qFmzZq2ywkqOTk51KtXz3YZ1p08eZLVq1czaNCgYucHDRrE0qVLLVUVHHJycgD0/6My3H777Vx66aVccskltksJWJ9++ildunTh6quvplGjRnTq1IlXX33VWj1hH0S2bt0KwCOPPMJDDz3E559/Tt26denbty8HDhywXF1gcbvd3HTTTYwaNYouXbrYLieobNmyheeee45Ro0bZLsW6ffv24XK5aNy4cbHzjRs3ZteuXZaqCnxut5t77rmH3r170759e9vlBKT333+fNWvWMG7cONulBLStW7fy0ksv0aZNG2bOnMmoUaO46667ePvtt63UE7JB5JFHHsHhcJT5tWrVKgoLCwF48MEHueqqq0hOTuaNN97A4XDw0UcfWf5T+Ienv6vnnnuO3Nxcxo4da7tkazz9XZ0uKyuLIUOGcPXVV3PLLbdYqjzwOByOYsdut/usc/KLO+64gw0bNjB58mTbpQSkjIwMRo8ezbvvvkt0dLTtcgJaYWEhnTt35sknn6RTp0788Y9/5NZbb+Wll16yUk+klXf1gzvuuIPrrruuzGsSExM5fPgwABdccMGp81FRUZxzzjlhs3DO09/V448/zrJly87ak6BLly5cf/31vPXWW74sMyB4+rsqkpWVRWpqKj169GDixIk+ri44NGjQAKfTedbox549e84aJRHjzjvv5NNPP2XhwoXEx8fbLicgrV69mj179pCcnHzqnMvlYuHChTz//PPk5eXhdDotVhg4mjZtWuwzD+D8889n6tSpVuoJ2SDSoEEDGjRoUO51ycnJREVFsWnTJnr37g1Afn4+27dvp2XLlr4uMyB4+rv6z3/+w+OPP37qOCsri8GDB/PBBx/QvXt3X5YYMDz9XYG5PS41NfXUKFtERMgOQHqlevXqJCcnM3v2bK688spT52fPns3ll19usbLA43a7ufPOO/n444+ZP38+rVq1sl1SwBowYABff/11sXM333wz7dq144EHHlAIOU2vXr3Oug38hx9+sPaZF7JBxFOxsbGMGjWKhx9+mISEBFq2bMnTTz8NwNVXX225usDSokWLYse1a9cGoHXr1vpX2hmysrLo168fLVq04JlnnmHv3r2nvtekSROLlQWGe+65hxtvvJEuXbqcGi3asWOH1tCc4fbbb2fSpEl88sknxMTEnBpFiouLo0aNGparCywxMTFnrZ2pVasW9evX15qaM9x999307NmTJ598kmuuuYYVK1YwceJEa6O2YR9EAJ5++mkiIyO58cYbOX78ON27d2fu3LnUrVvXdmkSpGbNmsXmzZvZvHnzWSHNrQ2vufbaa9m/fz+PPvoo2dnZtG/fnmnTpoXNKKSniubs+/XrV+z8G2+8wU033eT/giQkdO3alY8//pixY8fy6KOP0qpVK8aPH8/1119vpR6HW38rioiIiCWatBYRERFrFERERETEGgURERERsUZBRERERKxREBERERFrFERERETEGgURERERsUZBRERERKxREBERERFrFERERETEGgURERERsUZBRERERKz5f7ATPtyv0BrCAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 3: w = [-0.4118692 -2.00249179 -2.76919429]\n" ] }, { "data": { "image/png": "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DISSw2b8yNpJUOqyXZnfKYiIiIgEg3rNIG0OdPqdOf7677DoZ1C0z25dfqYgIiIiEiwiIuGSJ6DPdHBGw465kNkN9ofvXm0KIiIiIsEm6XoY+hk0aAeHt8Dc3rB1hu2q/EJBREREJBg1vtiMGzlrKLiOwrLRZrpvaYntynxKQURERCRYRTWB1I/gvB+3S9nwT1g4DI7ttluXDymIiIiIBLMIJ3R5FPr9DyIbwM4FZtzIvtW2K/MJBREREZFQ0OZqGPo5xHSEI9tgXl/Y/Krtqs6YgoiIiEioaHQ+DFsBrS4D1zFY/kvIvhNKi21XVmMKIiIiIqGkbiMY8J7ZKA/MXjULBpuN9EKQgoiIiEiocUTARX+B/u9CZAzsWgLr7rNdVY0oiIiIiISqhCtg+EpofTlc8g/b1dRIpO0CRERE5AzEnmu6akKUWkRERETEGgURERERsUZBRERERKxREBERERFrFERERETEGgURERERsUZBRERERKxREBERERFrFERERETEGgURERERsUZBRERERKxREBERERFrFERERETEmqDefdftdgNQWFhouRIRERHxVNn3dtn3eFWCOogcPHgQgMTERMuViIiIiLcOHjxIXFxcldc43J7EFUtKS0vJy8sjJiYGh8NhuxzApLzExERycnKIjY21XU7Q0OdSOX02FdPnUjl9NhXT51KxYPxc3G43Bw8epFWrVkREVD0KJKhbRCIiIkhISLBdRoViY2OD5n/wYKLPpXL6bCqmz6Vy+mwqps+lYsH2uVTXElJGg1VFRETEGgURERERsUZBxEtRUVE8+OCDREVF2S4lqOhzqZw+m4rpc6mcPpuK6XOpWKh/LkE9WFVERETCm1pERERExBoFEREREbFGQURERESsURARERERaxREztCHH35Iz549iY6OpmnTpqSnp9suKagUFRXRpUsXHA4Ha9eutV2OVVu3buWWW26hXbt2REdH06FDBx588EGOHz9uuzQrnn76adq1a0e9evVITk4mKyvLdklWTZ48me7duxMTE0Pz5s256qqr2Lhxo+2ygs7kyZNxOBxMnDjRdilBITc3lxtvvJH4+Hjq169Ply5dWLVqle2yvKIgcgZmzZrFTTfdxM0338y6detYunQpo0ePtl1WULnnnnto1aqV7TKCwoYNGygtLeW5555j/fr1PPnkkzz77LPcd999tksLuLfeeouJEydy//33s2bNGlJSUrj00kvZtm2b7dKsWbx4MePGjWP58uXMmzePkpIShg4dyuHDh22XFjRWrlzJtGnTuOiii2yXEhT2799P3759qVOnDh9//DFff/01//jHP2jUqJHt0rzjlhopLi52t27d2v3CCy/YLiVoffTRR+5OnTq5169f7wbca9assV1S0Hnsscfc7dq1s11GwPXo0cM9duzYcuc6derk/uMf/2ipouCza9cuN+BevHix7VKCwsGDB90dO3Z0z5s3zz1gwAD3hAkTbJdk3b333uvu16+f7TLOmFpEamj16tXk5uYSERFB165dadmyJZdeeinr16+3XVpQ2LlzJ7feeiuvvfYa9evXt11O0CooKKBJkya2ywio48ePs2rVKoYOHVru/NChQ1m2bJmlqoJPQUEBQK3776My48aN47LLLmPw4MG2Swka7733Ht26deOaa66hefPmdO3aleeff952WV5TEKmhzZs3A/DQQw/xpz/9iQ8++IDGjRszYMAA9u3bZ7k6u9xuN2PGjGHs2LF069bNdjlB6/vvv+epp55i7NixtksJqD179uByuWjRokW58y1atGDHjh2Wqgoubrebu+++m379+nHBBRfYLse6N998k9WrVzN58mTbpQSVzZs388wzz9CxY0fmzJnD2LFjufPOO3n11Vdtl+YVBZFTPPTQQzgcjipv2dnZlJaWAnD//fczcuRIkpOTeemll3A4HPzvf/+z/K/wD08/m6eeeorCwkImTZpku+SA8PRzOVleXh7Dhw/nmmuu4de//rWlyu1yOBzljt1u92nnaqs77riDL774ghkzZtguxbqcnBwmTJjA66+/Tr169WyXE1RKS0u55JJLePTRR+natSu33347t956K88884zt0rwSabuAYHPHHXdw3XXXVXlNUlISBw8eBOC88847cT4qKor27duH7YA7Tz+bRx55hOXLl5+270G3bt244YYbeOWVV/xZZsB5+rmUycvLIy0tjd69ezNt2jQ/Vxd8mjZtitPpPK31Y9euXae1ktRG48eP57333mPJkiUkJCTYLse6VatWsWvXLpKTk0+cc7lcLFmyhH//+98UFRXhdDotVmhPy5Yty30HAXTu3JlZs2ZZqqhmFERO0bRpU5o2bVrtdcnJyURFRbFx40b69esHQHFxMVu3bqVt27b+LtMKTz+bf/3rXzzyyCMnjvPy8hg2bBhvvfUWPXv29GeJVnj6uYCZapeWlnaiBS0iovY1StatW5fk5GTmzZvHiBEjTpyfN28eV155pcXK7HK73YwfP57Zs2ezaNEi2rVrZ7ukoDBo0CC+/PLLcuduvvlmOnXqxL333ltrQwhA3759T5vi/e2334bcd5CCSA3FxsYyduxYHnzwQRITE2nbti2PP/44ANdcc43l6uxq06ZNueOGDRsC0KFDh1r9F15eXh6pqam0adOGJ554gt27d5/42VlnnWWxssC7++67uemmm+jWrduJlqFt27bVuvEyJxs3bhzTp0/n3XffJSYm5kSLUVxcHNHR0ZarsycmJua0cTINGjQgPj6+1o+fueuuu+jTpw+PPvoo1157LStWrGDatGkh19KqIHIGHn/8cSIjI7nppps4evQoPXv2ZMGCBTRu3Nh2aRKE5s6dy6ZNm9i0adNpgcxdyzbBHjVqFHv37uXhhx8mPz+fCy64gI8++ijk/pLzpbJ+/dTU1HLnX3rpJcaMGRP4giTode/endmzZzNp0iQefvhh2rVrx5QpU7jhhhtsl+YVh7u2/QYUERGRoFH7OqhFREQkaCiIiIiIiDUKIiIiImKNgoiIiIhYoyAiIiIi1iiIiIiIiDUKIiIiImKNgoiIiIhYoyAiIiIi1iiIiIiIiDUKIiIiImKNgoiIiIhY8/8fZmux6suTsgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 4: w = [ 0.5881308 -1.74183941 -2.18951439]\n" ] }, { "data": { "image/png": "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AchriYjL5eKGG25gwoQJ9O7dm7S0tHKfk5ubS25u7unHOTk53gpPRERE/ECFp2amTp2KZVllfv3www+89NJL5OTkMGXKFLdfOykpiaioqNNfsbGxFQ1PREREAojlcpW0hVnp9u/fz/79+8u8Ji4ujquvvpo5c+ZgndFwwul04nA4uPbaa3nnnXeKPa+kEZHY2Fiys7OJjIysSJgiIiJik5ycHKKioty6f1c4EXHXL7/8UmRqJTMzk0suuYRZs2bRt29fYmJiyn2NivwiIiIi4h8qcv/22hqR5s2bF3lcp04dAFq3bu1WEiIiIiLBT51VRURExDY+aWgGZt2Il2aBREREJED5LBGpjMLERWW8IiIigaPwvu3OAIRfJyJHjhwBUBmviIhIADpy5AhRUVFlXuO1qhlPyM/PJzMzk7p16xYpAy5PYdlvenq6qm0qQJ9b5ehzqxx9bpWjz63y9NlVTmU+N5fLxZEjR2jatClhYWUvR/XrEZGwsLAqVdhERkbqP7ZK0OdWOfrcKkefW+Xoc6s8fXaVU9HPrbyRkEKqmhERERHbKBERERER2wRlIlKjRg0efvhhatSoYXcoAUWfW+Xoc6scfW6Vo8+t8vTZVY63Pze/XqwqIiIiwS0oR0REREQkMCgREREREdsoERERERHbKBERERER24REIjJv3jz69u1LREQEjRo1IjEx0e6QAkZubi7du3fHsizWrFljdzh+LS0tjZtuuomWLVsSERFB69atefjhhzl58qTdofmlV199lZYtW1KzZk169epFamqq3SH5taSkJPr06UPdunVp3Lgxl19+OVu2bLE7rICTlJSEZVlMmjTJ7lD8XkZGBtdddx0NGzakVq1adO/enZUrV3r8fYI+Efnoo4+4/vrrufHGG1m7di3ffPMN48ePtzusgHHPPffQtGlTu8MICJs3byY/P5833niDjRs38sILL/D6669z33332R2a3/nggw+YNGkS999/P6tXryY+Pp4RI0bwyy+/2B2a31q6dCm33347y5YtY9GiReTl5TFs2DCOHTtmd2gBY8WKFUyfPp2uXbvaHYrfO3ToEP3796datWosWLCATZs28fzzz1OvXj3Pv5kriJ06dcrVrFkz11tvvWV3KAFp/vz5rg4dOrg2btzoAlyrV6+2O6SA88wzz7hatmxpdxh+5/zzz3dNmDChyLkOHTq47r33XpsiCjx79+51Aa6lS5faHUpAOHLkiKtt27auRYsWuQYNGuSaOHGi3SH5tcmTJ7sGDBjgk/cK6hGRVatWkZGRQVhYGD169CA6OpoRI0awceNGu0Pze3v27OGWW27h3XffpVatWnaHE7Cys7Np0KCB3WH4lZMnT7Jy5UqGDRtW5PywYcP49ttvbYoq8GRnZwPovy833X777Vx66aUMHTrU7lACwuzZs+nduzfjxo2jcePG9OjRgzfffNMr7xXUiciOHTsAmDp1Kg888ABz586lfv36DBo0iIMHD9ocnf9yuVzccMMNTJgwgd69e9sdTsDavn07L730EhMmTLA7FL+yf/9+nE4nTZo0KXK+SZMm7N6926aoAovL5eLuu+9mwIABdOnSxe5w/N7777/PqlWrSEpKsjuUgLFjxw5ee+012rZty+eff86ECRO46667+M9//uPx9wrIRGTq1KlYllXm1w8//EB+fj4A999/P1deeSW9evXi7bffxrIsPvzwQ5t/C99z93N76aWXyMnJYcqUKXaH7Bfc/dzOlJmZyfDhwxk3bhw333yzTZH7N8uyijx2uVzFzknJ7rjjDtatW8fMmTPtDsXvpaenM3HiRN577z1q1qxpdzgBIz8/n549e/Lkk0/So0cP/vSnP3HLLbfw2muvefy9wj3+ij5wxx13cPXVV5d5TVxcHEeOHAGgU6dOp8/XqFGDVq1aheSiOHc/t8cff5xly5YV21egd+/eXHvttbzzzjveDNPvuPu5FcrMzCQhIYELL7yQ6dOnezm6wNOoUSMcDkex0Y+9e/cWGyWR4u68805mz57NV199RUxMjN3h+L2VK1eyd+9eevXqdfqc0+nkq6++4uWXXyY3NxeHw2FjhP4pOjq6yL0ToGPHjnz00Ucef6+ATEQaNWpEo0aNyr2uV69e1KhRgy1btjBgwAAATp06RVpaGi1atPB2mH7H3c/tn//8J48//vjpx5mZmVxyySV88MEH9O3b15sh+iV3Pzcw5W4JCQmnR9/CwgJy0NGrqlevTq9evVi0aBFXXHHF6fOLFi3isssuszEy/+Zyubjzzjv5+OOPSUlJoWXLlnaHFBCGDBnC+vXri5y78cYb6dChA5MnT1YSUor+/fsXKw/funWrV+6dAZmIuCsyMpIJEybw8MMPExsbS4sWLXj22WcBGDdunM3R+a/mzZsXeVynTh0AWrdurb/AypCZmcngwYNp3rw5zz33HPv27Tv9s3PPPdfGyPzP3XffzfXXX0/v3r1Pjxz98ssvWk9Thttvv50ZM2bw6aefUrdu3dMjSlFRUURERNgcnf+qW7dusXU0tWvXpmHDhlpfU4a//OUv9OvXjyeffJKrrrqK5cuXM336dK+M8gZ1IgLw7LPPEh4ezvXXX8+JEyfo27cvixcvpn79+naHJkFm4cKFbNu2jW3bthVL2Fza5LqI3/3udxw4cIBHH32UrKwsunTpwvz580NypNJdhXPzgwcPLnL+7bff5oYbbvB9QBLU+vTpw8cff8yUKVN49NFHadmyJdOmTePaa6/1+HtZLv0LKSIiIjbRBLaIiIjYRomIiIiI2EaJiIiIiNhGiYiIiIjYRomIiIiI2EaJiIiIiNhGiYiIiIjYRomIiIiI2EaJiIiIiNhGiYiIiIjYRomIiIiI2EaJiIiIiNjm/wFR7kxIPOHMqQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 5: w = [-0.4118692 -1.42242212 -2.63810207]\n" ] }, { "data": { "image/png": "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2lzzLxsREZtREBFbys6u/fRZMGEkL89cJzU4ugc8x7bhDXwFOo2wth4RkVooiIgtBezgt0jhPeDurKnQ7VZLSxERqYsWq4ot+e3gt0h15oPQ4WI4/fdWVyIiUicFEbGltDSzO6a+g9/S0oJfW0g49SLzISJic5qaEVvy28FvIiJiawoiYltNPvhNRERsT1MzYmsZGTBypDqrioiEKwURCSh/tGd3OmHo0ICUJyIiFlMQkYBRe3YREamP1ohIQKg9u4iI+EJBRPxO7dlFRMRXCiLid2rPLiIivlIQEb9Te3YREfGVgoj4ndqzi4iIrxRExO+87dlP7ojq5XBAcrLas4uIiIKIBIDas4uIiK8URCQg1J5dRER8oYZmEjBqzy4iIvVREJGAUnt2ERGpi6ZmRERExDIKIiIiImIZBRERERGxjIKIiIiIWEZBRERERCyjICIiIiKWURARERERyyiIiIiIiGUURERERMQyCiIiIiJiGQURERERsYyCiIiIiFhGQUREREQsoyAiIiIillEQEREREcsoiIiIiIhlFERERETEMgoiIiIiYhkFEREREbGMgoiIiIhYRkFERERELKMgIiIiIpZREBERERHLKIiIiIiIZRRERERExDIKIiIiImIZBRERERGxjIKIiIiIWCba6gIkNLndkJ0NhYWQmAhpaeB0Wl2ViIiEGgURabDMTJg0CXbsqBxzueCZZyAjw7q6REQk9GhqRhokMxNGj64aQgDy8814ZqY1dYmISGhSEBGfud3mTojHU/173rHJk811IiIivlAQEZ9lZ1e/E3Iijwfy8sx1IiIivlAQEZ8VFvr3OhEREQUR8Vlion+vExERURARn6Wlmd0xDkfN33c4IDnZXCciIuILBRHxmdNptuhC9TDi/Xr6dPUTERER3ymISINkZMCcOZCUVHXc5TLj6iMiIiINEZQgUlJSwrnnnovD4eDbb78NxktKAGVkQG4uLF0Ks2aZx23bFEJERKThgtJZ9f7776dTp0589913wXg5CQKnE4YOtboKEREJdQG/I/LRRx+xePFi/vKXvwT6pURERCTEBPSOyK5du7jjjjuYN28eLVq0CORLiYiISAgKWBDxeDyMGzeO8ePH079/f3Jzc+v9mZKSEkpKSo5/XVxcHKjyRERExAYaPDUzdepUHA5HnR8rV65kxowZFBcXM2XKFJ+fe9q0aSQkJBz/SE5Obmh5IiIiEkIcHk9NR5jVbu/evezdu7fOa1JSUrjxxhtZuHAhjhMaTrjdbpxOJzfffDNvvPFGtZ+r6Y5IcnIyRUVFxMfHN6RMERERsUhxcTEJCQk+vX83OIj4avv27VWmVgoKCrjsssuYM2cOAwcOxOVy1fscDfmDiIiIiD005P07YGtEOnfuXOXrVq1aAdCtWzefQoiIiIiEP3VWFREREcsEpaEZmHUjAZoFEhERkRAVtCDSGN7gom28IiIiocP7vu3LDQhbB5EDBw4AaBuviIhICDpw4AAJCQl1XhOwXTP+UFFRQUFBAa1bt66yDbg+3m2/eXl52m3TAPq9NY5+b42j31vj6PfWePrdNU5jfm8ej4cDBw7QqVMnoqLqXo5q6zsiUVFRTdphEx8fr/+zNYJ+b42j31vj6PfWOPq9NZ5+d43T0N9bfXdCvLRrRkRERCyjICIiIiKWCcsgEhsby6OPPkpsbKzVpYQU/d4aR7+3xtHvrXH0e2s8/e4aJ9C/N1svVhUREZHwFpZ3RERERCQ0KIiIiIiIZRRERERExDIKIiIiImKZiAgiixYtYuDAgTRv3pz27duTkZFhdUkho6SkhHPPPReHw8G3335rdTm2lpuby2233UZqairNmzenW7duPProo5SWllpdmi09//zzpKamEhcXR79+/cjOzra6JFubNm0aAwYMoHXr1nTo0IFRo0axceNGq8sKOdOmTcPhcDB58mSrS7G9/Px8fvnLX9KuXTtatGjBueeey6pVq/z+OmEfRN5//31uueUWbr31Vr777ju+/vprxo4da3VZIeP++++nU6dOVpcREjZs2EBFRQUvvfQS69at4+mnn+bFF1/koYcesro023n33XeZPHkyDz/8MGvWrCEtLY3LL7+c7du3W12abX3xxRdMmDCB5cuXs2TJEsrLyxk+fDiHDh2yurSQsWLFCmbOnMnZZ59tdSm299NPP3HRRRcRExPDRx99xPr16/nrX//KKaec4v8X84SxsrIyT1JSkueVV16xupSQ9OGHH3p69+7tWbdunQfwrFmzxuqSQs6f//xnT2pqqtVl2M7555/vGT9+fJWx3r17ex588EGLKgo9u3fv9gCeL774wupSQsKBAwc8PXr08CxZssQzZMgQz6RJk6wuydYeeOABz+DBg4PyWmF9R2T16tXk5+cTFRVF3759SUxM5PLLL2fdunVWl2Z7u3bt4o477uCtt96iRYsWVpcTsoqKimjbtq3VZdhKaWkpq1atYvjw4VXGhw8fzrJlyyyqKvQUFRUB6P9fPpowYQJXXnklw4YNs7qUkLBgwQL69+/PmDFj6NChA3379uXll18OyGuFdRDZunUrAFOnTuWRRx7hgw8+oE2bNgwZMoT9+/dbXJ19eTwexo0bx/jx4+nfv7/V5YSsLVu2MGPGDMaPH291Kbayd+9e3G43HTt2rDLesWNHdu7caVFVocXj8XDfffcxePBg+vTpY3U5tvfOO++wevVqpk2bZnUpIWPr1q288MIL9OjRg08++YTx48dzzz338Oabb/r9tUIyiEydOhWHw1Hnx8qVK6moqADg4Ycf5rrrrqNfv3689tprOBwO3nvvPYv/FMHn6+9txowZFBcXM2XKFKtLtgVff28nKigoYMSIEYwZM4bbb7/dosrtzeFwVPna4/FUG5Oa3X333Xz//ffMnj3b6lJsLy8vj0mTJvH2228TFxdndTkho6KigvPOO48nn3ySvn37cuedd3LHHXfwwgsv+P21ov3+jEFw9913c+ONN9Z5TUpKCgcOHADgjDPOOD4eGxtL165dI3JRnK+/tz/96U8sX7682rkC/fv35+abb+aNN94IZJm24+vvzaugoID09HQuvPBCZs6cGeDqQk/79u1xOp3V7n7s3r272l0SqW7ixIksWLCAL7/8EpfLZXU5trdq1Sp2795Nv379jo+53W6+/PJLnn32WUpKSnA6nRZWaE+JiYlV3jsBTj/9dN5//32/v1ZIBpH27dvTvn37eq/r168fsbGxbNy4kcGDBwNQVlZGbm4uXbp0CXSZtuPr7+1vf/sbf/rTn45/XVBQwGWXXca7777LwIEDA1miLfn6ewOz3S09Pf343beoqJC86RhQzZo1o1+/fixZsoRrr732+PiSJUsYOXKkhZXZm8fjYeLEicydO5esrCxSU1OtLikkXHrppaxdu7bK2K233krv3r154IEHFEJqcdFFF1XbHr5p06aAvHeGZBDxVXx8POPHj+fRRx8lOTmZLl268NRTTwEwZswYi6uzr86dO1f5ulWrVgB069ZN/wKrQ0FBAUOHDqVz58785S9/Yc+ePce/d9ppp1lYmf3cd9993HLLLfTv3//4naPt27drPU0dJkyYwKxZs5g/fz6tW7c+fkcpISGB5s2bW1ydfbVu3braOpqWLVvSrl07ra+pw7333sugQYN48sknuf766/nmm2+YOXNmQO7yhnUQAXjqqaeIjo7mlltu4ciRIwwcOJDPP/+cNm3aWF2ahJnFixeTk5NDTk5OtcDm0SHXVdxwww3s27ePxx9/nMLCQvr06cOHH34YkXcqfeWdmx86dGiV8ddee41x48YFvyAJawMGDGDu3LlMmTKFxx9/nNTUVKZPn87NN9/s99dyePQ3pIiIiFhEE9giIiJiGQURERERsYyCiIiIiFhGQUREREQsoyAiIiIillEQEREREcsoiIiIiIhlFERERETEMgoiIiIiYhkFEREREbGMgoiIiIhYRkFERERELPP/ATyW00cRYkgZAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 6: w = [ 0.5881308 -1.02625027 -2.41014956]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA+6ElEQVR4nO3deXjU1dn/8fdkwg6JLLIkE0gIIChVEBAVg4ko4gpEqIjSYhWlooK2j5bqU6yPNb9WW7EqCFqXFkFbDJu4gAoYtwq4ISoQIBCSsEvCmpDJ/P44hBCyzSQz8/3OzOd1XXMNc+abmZupZe6cc5/7ODwejwcRERERC0RZHYCIiIhELiUiIiIiYhklIiIiImIZJSIiIiJiGSUiIiIiYhklIiIiImIZJSIiIiJiGSUiIiIiYploqwOoTVlZGfn5+bRq1QqHw2F1OCIiIuIFj8fDwYMHiYuLIyqq9jkPWyci+fn5JCQkWB2GiIiI1ENubi4ul6vWa2ydiLRq1Qowf5GYmBiLoxERERFvFBUVkZCQcPJ7vDa2TkTKl2NiYmKUiIiIiIQYb8oqVKwqIiIillEiIiIiIpZRIiIiIiKWUSIiIiIillEiIiIiIpZRIiIiIiKWUSIiIiIillEiIiIiIpaxdUMzERGRarndkJUFBQXQqROkpIDTaXVUUg9KREREJLRkZsLkybBjR8WYywVPPw3p6dbFJfWipRkREQkdmZkwalTlJAQgL8+MZ2ZaE5fUmxIREREJDW63mQnxeKo+Vz42ZYq5TkKGEhEREQkNWVlVZ0JO5fFAbq65TkKGEhEREQkNBQX+vU5sQYmIiIiEhk6d/Hud2IISERERCQ0pKWZ3jMNR/fMOByQkmOskZCgRERGR0OB0mi26UDUZKX88fbr6iYQYJSIiIhI60tNh/nyIj6887nKZcfURCTlqaCYiIqElPR2GD1dn1TChREREREKP0wmpqVZHIX6gpRkRERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxTNASkYyMDBwOB1OmTAnWW4qIiIjNBSURWb16NbNnz+bcc88NxtuJiIhIiAh4InLo0CFuvvlmXnjhBVq3bh3otxMREZEQEvBEZNKkSVxzzTVcfvnldV5bXFxMUVFRpZuIiIiEr+hAvvjrr7/Ol19+yerVq726PiMjgz/+8Y+BDElERERsJGAzIrm5uUyePJk5c+bQtGlTr35m6tSpFBYWnrzl5uYGKjwRERGxAYfH4/EE4oUXLlzIyJEjcTqdJ8fcbjcOh4OoqCiKi4srPVedoqIiYmNjKSwsJCYmJhBhioiIiJ/58v0dsKWZIUOGsG7dukpjt956Kz179uTBBx+sMwkRERGR8BewRKRVq1b07t270liLFi1o27ZtlXERERGJTOqsKiIiIpYJ6K6Z061cuTKYbyciIiI2pxkRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsYwSEREREbGMEhERERGxjBIRERERsUxQT98VEREbcrshKwsKCqBTJ0hJAafT6qgkQigRERGJZJmZMHky7NhRMeZywdNPQ3q6dXFJxAjPpZmy41ZHICJif5mZMGpU5SQEIC/PjGdmWhOXRJTwS0SKNsKCOPjqATi01epoRETsye02MyEeT9XnysemTDHXiQRQ+CUiOXOgeC/88AQsToaV10L+u+ApszoyEZHAc7th5UqYN8/c15RIZGVVnQk5lccDubnmOpEACr9EpPc0GLwQOl4BeCB/Kay8CpacBT/8DUp+sjpCEZHAyMyExERIS4OxY819YmL1SywFBd69prfXidRT+CUiUU5wDYfLlsG1G+CsydAoFg5lw1e/gQXx8N/bYf9XVkcqIuI/vtZ7dOrk3et6e51IPTk8nuoWCO2hqKiI2NhYCgsLiYmJqf8LlR6GnNdg43Nw4NuK8XYXQfdJ0HkUOJs0PGARESu43Wbmo6alFofD7ITZurViW259fkbES758f4ffjEh1oltAtzvgqq/h8izoMgYc0bD3M/jsFljUGb55CA7nWh2piIjv6lPv4XTCTTfV/rrTpysJkYCLjESknMMB7S+BQfNgRC787FFoFg/HdsP6x2FxInw0Ena+X30luYiIXZxalPrBB979zKn1HpmZ8OSTNV/729+qj4gERWQszdSm7DjsWAybnoNdKyrGY86C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2rOLiIi3lIhIQKg9u4iIeEMNzSRg1J5dRETqokREAkrt2UVEpDZamhERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLRFsdgIQmtxuysqCgADp1gpQUcDqtjkpEREKNEhHxWWYmTJ4MO3ZUjLlc8PTTkJ5uXVwiIhJ6tDQjPsnMhFGjKichAHl5Zjwz05q4REQkNCkREa+53WYmxOOp+lz52JQp5joRERFvKBERr2VlVZ0JOZXHA7m55joRERFvKBERrxUU+Pc6ERERJSLitU6d/HudiIiIEhHxWkqK2R3jcFT/vMMBCQnmOhEREW8oERGvOZ1miy5UTUbKH0+frn4iIiLiPSUi4pP0dJg/H+LjK4+7XGZcfURERMQXQUlEiouL6dOnDw6Hg6+//joYbykBlJ4OOTmwYgXMnWvut25VEiIiIr4LSmfVBx54gLi4OL755ptgvJ0EgdMJqalWRyEiIqEu4DMi77zzDsuWLePJJ58M9FuJiIhIiAnojMiuXbuYMGECCxcupHnz5oF8KxEREQlBAUtEPB4P48ePZ+LEifTv35+cnJw6f6a4uJji4uKTj4uKigIVnoiIiNiAz0szjzzyCA6Ho9bbmjVreOaZZygqKmLq1Klev3ZGRgaxsbEnbwkJCb6GJyIiIiHE4fFUd4RZzfbu3cvevXtrvSYxMZExY8awZMkSHKc0nHC73TidTm6++WZeffXVKj9X3YxIQkIChYWFxMTE+BKmiIiIWKSoqIjY2Fivvr99TkS8tX379kpLK/n5+Vx55ZXMnz+fgQMH4nK56nwNX/4iIiIiYg++fH8HrEakc+fOlR63bNkSgOTkZK+SEBEREQl/6qwqIiIilglKQzMwdSMBWgUSERGREBW0RKQ+yhMXbeMVEREJHeXf295MQNg6ETl48CCAtvGKiIiEoIMHDxIbG1vrNQHbNeMPZWVl5Ofn06pVq0rbgOtSvu03NzdXu218oM+tfvS51Y8+t/rR51Z/+uzqpz6fm8fj4eDBg8TFxREVVXs5qq1nRKKiohq0wyYmJkb/sdWDPrf60edWP/rc6kefW/3ps6sfXz+3umZCymnXjIiIiFhGiYiIiIhYJiwTkSZNmjBt2jSaNGlidSghRZ9b/ehzqx99bvWjz63+9NnVT6A/N1sXq4qIiEh4C8sZEREREQkNSkRERETEMkpERERExDJKRERERMQyEZGILF26lIEDB9KsWTPatWtHenq61SGFjOLiYvr06YPD4eDrr7+2Ohxby8nJ4bbbbiMpKYlmzZqRnJzMtGnTKCkpsTo0W5oxYwZJSUk0bdqUfv36kZWVZXVItpaRkcGAAQNo1aoV7du3Z8SIEWzYsMHqsEJORkYGDoeDKVOmWB2K7eXl5XHLLbfQtm1bmjdvTp8+fVi7dq3f3yfsE5E333yTcePGceutt/LNN9/wySefMHbsWKvDChkPPPAAcXFxVocREn788UfKysqYNWsW69ev56mnnuL555/n97//vdWh2c4bb7zBlClTeOihh/jqq69ISUnhqquuYvv27VaHZlurVq1i0qRJfP755yxfvpzS0lKGDh3K4cOHrQ4tZKxevZrZs2dz7rnnWh2K7f30008MGjSIRo0a8c477/D999/z17/+lTPOOMP/b+YJY8ePH/fEx8d7XnzxRatDCUlvv/22p2fPnp7169d7AM9XX31ldUgh5y9/+YsnKSnJ6jBs54ILLvBMnDix0ljPnj09v/vd7yyKKPTs3r3bA3hWrVpldSgh4eDBg57u3bt7li9f7rn00ks9kydPtjokW3vwwQc9l1xySVDeK6xnRL788kvy8vKIioqib9++dOrUiauuuor169dbHZrt7dq1iwkTJvCvf/2L5s2bWx1OyCosLKRNmzZWh2ErJSUlrF27lqFDh1YaHzp0KJ9++qlFUYWewsJCAP335aVJkyZxzTXXcPnll1sdSkhYvHgx/fv3Z/To0bRv356+ffvywgsvBOS9wjoR2bJlCwCPPPIIDz/8MG+99RatW7fm0ksvZf/+/RZHZ18ej4fx48czceJE+vfvb3U4IWvz5s0888wzTJw40epQbGXv3r243W46dOhQabxDhw7s3LnToqhCi8fj4f777+eSSy6hd+/eVodje6+//jpffvklGRkZVocSMrZs2cLMmTPp3r077733HhMnTuTee+/ln//8p9/fKyQTkUceeQSHw1Hrbc2aNZSVlQHw0EMPccMNN9CvXz9efvllHA4H//nPfyz+WwSft5/bM888Q1FREVOnTrU6ZFvw9nM7VX5+PsOGDWP06NHcfvvtFkVubw6Ho9Jjj8dTZUyqd/fdd/Ptt98yb948q0OxvdzcXCZPnsycOXNo2rSp1eGEjLKyMs4//3wef/xx+vbty5133smECROYOXOm398r2u+vGAR33303Y8aMqfWaxMREDh48CMDZZ599crxJkyZ07do1IovivP3cHnvsMT7//PMq5wr079+fm2++mVdffTWQYdqOt59bufz8fNLS0rjooouYPXt2gKMLPe3atcPpdFaZ/di9e3eVWRKp6p577mHx4sV89NFHuFwuq8OxvbVr17J792769et3csztdvPRRx/x7LPPUlxcjNPptDBCe+rUqVOl706AXr168eabb/r9vUIyEWnXrh3t2rWr87p+/frRpEkTNmzYwCWXXALA8ePHycnJoUuXLoEO03a8/dz+/ve/89hjj518nJ+fz5VXXskbb7zBwIEDAxmiLXn7uYHZ7paWlnZy9i0qKiQnHQOqcePG9OvXj+XLlzNy5MiT48uXL2f48OEWRmZvHo+He+65hwULFrBy5UqSkpKsDikkDBkyhHXr1lUau/XWW+nZsycPPvigkpAaDBo0qMr28I0bNwbkuzMkExFvxcTEMHHiRKZNm0ZCQgJdunThiSeeAGD06NEWR2dfnTt3rvS4ZcuWACQnJ+s3sFrk5+eTmppK586defLJJ9mzZ8/J5zp27GhhZPZz//33M27cOPr3739y5mj79u2qp6nFpEmTmDt3LosWLaJVq1YnZ5RiY2Np1qyZxdHZV6tWrarU0bRo0YK2bduqvqYW9913HxdffDGPP/44P//5z/niiy+YPXt2QGZ5wzoRAXjiiSeIjo5m3LhxHD16lIEDB/Lhhx/SunVrq0OTMLNs2TKys7PJzs6ukrB5dMh1JTfeeCP79u3j0UcfpaCggN69e/P2229H5Eylt8rX5lNTUyuNv/zyy4wfPz74AUlYGzBgAAsWLGDq1Kk8+uijJCUlMX36dG6++Wa/v5fDo38hRURExCJawBYRERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcsoERERERHLKBERERERyygREREREcv8f2cWRfh0lc5BAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 7: w = [ 1.5881308 -0.76559789 -1.83046966]\n" ] }, { "data": { "image/png": "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sg8ijz/+uK6++mpdc801euutt/TnP/9Zy5YtM92t0Ljttts0Z84c090Ihffee09DQ0O6//779c477+hnP/uZfvnLX+r73/++6a4FzmOPPab29nbdcccdeuONN9Tc3KyLLrpIu3fvNt21wNq+fbtWrlypl19+WVu2bNGRI0e0ePFiHTx40HTXQuOVV17Rhg0bdPrpp5vuSuD985//1DnnnKOJEyfqueee07vvvquf/OQn+sIXvlD8D3PK2OHDh52GhgbnwQcfNN2VUHr22WedU045xXnnnXccSc4bb7xhukuh8+Mf/9hpamoy3Y3A+drXvuasWLEi5dopp5zifO973zPUo/DZu3evI8nZvn276a6EwoEDB5yTTz7Z2bJli3Peeec5bW1tprsUaLfffrtz7rnnluSzynpE5PXXX1dPT4+qqqp05plnqr6+XhdddJHeeecd010LvI8//ljXX3+9fvvb32rq1KmmuxNa/f39mj59uuluBMqhQ4f02muvafHixSnXFy9erJdeeslQr8Knv79fkvj3y6OVK1fq4osv1gUXXGC6K6Hw9NNPa8GCBbr88ss1a9YsnXnmmXrggQd8+ayyDiIffvihJGnNmjW688479Yc//EHTpk3Teeedp08//dRw74LLcRwtX75cK1as0IIFC0x3J7Q++OADrVu3TitWrDDdlUDZt2+fbNvW7NmzU67Pnj1be/bsMdSrcHEcR7feeqvOPfdczZs3z3R3Au/RRx/V66+/ro6ODtNdCY0PP/xQ69ev18knn6w//vGPWrFihW6++Wb95je/KfpnhTKIrFmzRpZl5Xy8+uqrGhoakiTdcccduuyyyzR//nw99NBDsixLv/vd7wz/KUrP6/e2bt06DQwMaNWqVaa7HAhev7eRent7tWTJEl1++eW67rrrDPU82CzLSnntOE7aNWR244036q9//as2bdpkuiuB193drba2Nj3yyCOaPHmy6e6ExtDQkL761a/qRz/6kc4880x95zvf0fXXX6/169cX/bMmFP03lsCNN96oK6+8MmebxsZGHThwQJJ02mmnDV+vrq7WSSedVJGT4rx+b3fffbdefvnltHMFFixYoKuuukoPP/ywn90MHK/fW1Jvb69aWlr09a9/XRs2bPC5d+Ezc+ZMRSKRtNGPvXv3po2SIN1NN92kp59+Wi+++KKi0ajp7gTea6+9pr1792r+/PnD12zb1osvvqhf/OIXGhwcVCQSMdjDYKqvr0+5d0rSqaeeqscff7zonxXKIDJz5kzNnDlzzHbz589XdXW13n//fZ177rmSpMOHD2vXrl068cQT/e5m4Hj93n7+85/r7rvvHn7d29urCy+8UI899pgWLlzoZxcDyev3JrnL3VpaWoZH36qqQjno6KtJkyZp/vz52rJliy699NLh61u2bNHSpUsN9izYHMfRTTfdpCeeeELbtm1TU1OT6S6Fwvnnn6+333475do111yjU045RbfffjshJItzzjknbXn4P/7xD1/unaEMIl7V1tZqxYoVWr16tWKxmE488UTdc889kqTLL7/ccO+C64QTTkh5ffzxx0uS5s6dy3+B5dDb26tFixbphBNO0Nq1a/XJJ58Mv/fFL37RYM+C59Zbb9XVV1+tBQsWDI8c7d69m/k0OaxcuVIbN27UU089pZqamuERpbq6Ok2ZMsVw74KrpqYmbR7NcccdpxkzZjC/JodbbrlFZ599tn70ox/pm9/8pv7yl79ow4YNvozylnUQkaR77rlHEyZM0NVXX63PP/9cCxcu1AsvvKBp06aZ7hrKzPPPP68dO3Zox44daYHN4ZDrFFdccYX279+vu+66S319fZo3b56effbZihyp9CpZm1+0aFHK9YceekjLly8vfYdQ1s466yw98cQTWrVqle666y41NTWps7NTV111VdE/y3L4GxIAABhCARsAABhDEAEAAMYQRAAAgDEEEQAAYAxBBAAAGEMQAQAAxhBEAACAMQQRAABgDEEEAAAYQxABAADGEEQAAIAxBBEAAGDM/wdhHvJASMa56QAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 8: w = [ 0.5881308 -0.04577813 -2.32033579]\n" ] }, { "data": { "image/png": "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6upq003xFT63wvC5FYbPrTB8boXjsyuM25+bpyerAgCA8laWPSIAAMAfCCIAAMAYgggAADCGIAIAAIypiCDy7LPPauXKlaqpqdG8efPU2tpqukm+MTIyogsvvFCBQEC///3vTTfH03p7e3XzzTerqalJNTU1WrJkibZs2aJTp06ZbponPfjgg2pqatL06dO1fPly9fT0mG6Sp3V2duqSSy5RbW2t5s+fr6uuukrvvvuu6Wb5TmdnpwKBgDo6Okw3xfP6+/v1ve99T3PnztWMGTN04YUX6tVXXy36+5R9EHnyySd144036qabbtIbb7yhf/3Xf9W6detMN8s37rzzTi1cuNB0M3zhnXfe0ejoqB5++GG99dZb+slPfqK/+7u/01/91V+ZbprnPPHEE+ro6NDdd9+t119/Xc3Nzbryyiu1f/9+003zrL1792rjxo166aWXtGfPHp05c0Zr1qzR8ePHTTfNN15++WXt3LlTF1xwgemmeN4nn3yiyy67TFOnTtWvf/1rvf322/qbv/kbnXPOOcV/M6uMnT592mpsbLQeeeQR003xpeeee85aunSp9dZbb1mSrNdff910k3znr//6r62mpibTzfCcr371q9aGDRuSji1dutT6wQ9+YKhF/nPo0CFLkrV3717TTfGFY8eOWeedd561Z88ea9WqVVZ7e7vpJnnaXXfdZV1++eUlea+y7hF57bXX1N/fr6qqKl100UVqaGjQlVdeqbfeest00zzvo48+0i233KJf/vKXmjFjhunm+NbQ0JDmzJljuhmecurUKb366qtas2ZN0vE1a9bod7/7naFW+c/Q0JAk8d+XQxs3btS3v/1tfeMb3zDdFF945plntGLFCl177bWaP3++LrroIv3sZz9z5b3KOoh88MEHkqStW7fqnnvu0T//8z9r9uzZWrVqlT7++GPDrfMuy7K0fv16bdiwQStWrDDdHN96//339cADD2jDhg2mm+IpR44cUSwW04IFC5KOL1iwQAcPHjTUKn+xLEubNm3S5ZdfrmXLlplujuc9/vjjeu2119TZ2Wm6Kb7xwQcf6KGHHtJ5552nf/mXf9GGDRt0++236x/+4R+K/l6+DCJbt25VIBCY8PHKK69odHRUknT33Xfrmmuu0fLly/Xoo48qEAjoH//xHw3/FqXn9HN74IEHNDw8rM2bN5tusic4/dwSDQwM6Fvf+pauvfZaff/73zfUcm8LBAJJ31uWlXYMmd1666168803tXv3btNN8by+vj61t7frscce0/Tp0003xzdGR0d18cUX68c//rEuuugi/fmf/7luueUWPfTQQ0V/rylFv2IJ3HrrrfrOd74z4TmRSETHjh2TJJ1//vnjx6urq/XFL36xIifFOf3c7rvvPr300ktp+wqsWLFCN9xwg37xi1+42UzPcfq5xQ0MDGj16tX62te+pp07d7rcOv+ZN2+egsFgWu/HoUOH0npJkO62227TM888oxdffFGhUMh0czzv1Vdf1aFDh7R8+fLxY7FYTC+++KL+9m//ViMjIwoGgwZb6E0NDQ1J905J+spXvqInn3yy6O/lyyAyb948zZs3L+d5y5cvV3V1td59911dfvnlkqTTp0+rt7dXixcvdruZnuP0c/vpT3+q++67b/z7gYEBffOb39QTTzyhlStXutlET3L6uUn2crfVq1eP975VVfmy09FV06ZN0/Lly7Vnzx5dffXV48f37NmjtWvXGmyZt1mWpdtuu01PPfWUuru71dTUZLpJvnDFFVfoD3/4Q9Kxm266SUuXLtVdd91FCMnisssuS1se/h//8R+u3Dt9GUScqqur04YNG7RlyxaFw2EtXrxY999/vyTp2muvNdw671q0aFHS97NmzZIkLVmyhP8Dm8DAwIBaWlq0aNEibdu2TYcPHx5/7dxzzzXYMu/ZtGmTbrzxRq1YsWK852j//v3Mp5nAxo0btWvXLj399NOqra0d71Gqr69XTU2N4dZ5V21tbdo8mpkzZ2ru3LnMr5nAHXfcoUsvvVQ//vGPdd111+nf/u3ftHPnTld6ecs6iEjS/fffrylTpujGG2/UyZMntXLlSv3mN7/R7NmzTTcNZeb555/Xe++9p/feey8tsFlscp3k+uuv19GjR3XvvfdqcHBQy5Yt03PPPVeRPZVOxcfmW1pako4/+uijWr9+fekbhLJ2ySWX6KmnntLmzZt17733qqmpSdu3b9cNN9xQ9PcKWPyFBAAAhjCADQAAjCGIAAAAYwgiAADAGIIIAAAwhiACAACMIYgAAABjCCIAAMAYgggAADCGIAIAAIwhiAAAAGMIIgAAwBiCCAAAMOb/AwqJPeMF5z11AAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 9: w = [ 1.5881308 0.21487424 -1.74065589]\n" ] }, { "data": { "image/png": "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10wm9PX1qampScXFxY5twCOJbPttaGhgt00K+NzSw+eWHj639PC5pY/PLj3pfG6WZenYsWOaMWOGCgqGX47q6RGRgoKC09phU1JSwr9saeBzSw+fW3r43NLD55Y+Prv0pPq5jTQSEsGuGQAAYAxBBAAAGJOTQaSwsFB33323CgsLTXfFV/jc0sPnlh4+t/TwuaWPzy49bn9unl6sCgAAcltOjogAAAB/IIgAAABjCCIAAMAYgggAADAmL4LIH//4Ry1ZskRjx47VlClTVFNTY7pLvtHd3a0LLrhAgUBAb7/9tunueNqBAwf0ve99T3PmzNHYsWM1d+5c3X333erp6THdNU965JFHNGfOHBUVFWnRokWqr6833SVPq62t1UUXXaTi4mKVl5frqquu0scff2y6W75TW1urQCCgDRs2mO6K5zU2Nuqv/uqvVFZWpnHjxumCCy7Q7t27M36fnA8izz33nG688UbdfPPNeuedd/Taa6/p+uuvN90t3/jRj36kGTNmmO6GL3z00Ufq6+vTY489pr179+of//Ef9c///M/6u7/7O9Nd85xnn31WGzZs0J133qm33npL1dXVuvLKK3Xw4EHTXfOsuro6rVu3Tjt37tTWrVvV29urK664Ql1dXaa75htvvvmmNm/erPPPP990VzzvyJEjWrp0qUaPHq2XXnpJH3zwgf7+7/9eEydOzPzNrBx26tQpa+bMmdavf/1r013xpRdffNGaN2+etXfvXkuS9dZbb5nuku/84he/sObMmWO6G55z8cUXW2vXrnVcmzdvnvXjH//YUI/8p6WlxZJk1dXVme6KLxw7dsw666yzrK1bt1orVqyw1q9fb7pLnnbHHXdYy5Yty8q9cnpEZM+ePWpsbFRBQYEWLlyo6dOn68orr9TevXtNd83zDh06pFtuuUX/8i//onHjxpnujm91dHRo8uTJprvhKT09Pdq9e7euuOIKx/UrrrhCO3bsMNQr/+no6JAk/v1K0rp16/Stb31LX//61013xRdeeOEFLV68WNdee63Ky8u1cOFC/epXv3LlXjkdRD777DNJ0j333KO77rpL//Zv/6ZJkyZpxYoVOnz4sOHeeZdlWbrpppu0du1aLV682HR3fOvTTz/Vww8/rLVr15ruiqe0tbUpHA5r2rRpjuvTpk3TF198YahX/mJZlm6//XYtW7ZMCxYsMN0dz3vmmWe0Z88e1dbWmu6Kb3z22Wd69NFHddZZZ+lPf/qT1q5dqx/+8If67W9/m/F7+TKI3HPPPQoEAsN+7dq1S319fZKkO++8U9dcc40WLVqkxx9/XIFAQL/73e8M/1NkX7Kf28MPP6zOzk5t3LjRdJc9IdnPLVZTU5O++c1v6tprr9X3v/99Qz33tkAg4Pjesqy4a0js1ltv1bvvvqunn37adFc8r6GhQevXr9eTTz6poqIi093xjb6+Pl144YX6+c9/roULF+pv/uZvdMstt+jRRx/N+L1GZfw3ZsGtt96q73znO8O2qaqq0rFjxyRJ8+fPH7heWFioM888My8XxSX7ud1///3auXNn3LkCixcv1g033KAnnnjCzW56TrKfW0RTU5NWrVqlSy+9VJs3b3a5d/4zZcoUBYPBuNGPlpaWuFESxLvtttv0wgsvaPv27aqoqDDdHc/bvXu3WlpatGjRooFr4XBY27dv1z/90z+pu7tbwWDQYA+9afr06Y5npySdc845eu655zJ+L18GkSlTpmjKlCkjtlu0aJEKCwv18ccfa9myZZKkU6dO6cCBA5o9e7bb3fScZD+3X/7yl7r//vsHvm9qatI3vvENPfvss1qyZImbXfSkZD83yd7utmrVqoHRt4ICXw46umrMmDFatGiRtm7dqquvvnrg+tatW7V69WqDPfM2y7J022236fe//722bdumOXPmmO6SL1x++eV67733HNduvvlmzZs3T3fccQchZAhLly6N2x7+ySefuPLs9GUQSVZJSYnWrl2ru+++W5WVlZo9e7YeeOABSdK1115ruHfeNWvWLMf3EyZMkCTNnTuXv4ENo6mpSStXrtSsWbP04IMPqrW1deC9M844w2DPvOf222/XjTfeqMWLFw+MHB08eJD1NMNYt26dnnrqKT3//PMqLi4eGFEqLS3V2LFjDffOu4qLi+PW0YwfP15lZWWsrxnG3/7t3+qyyy7Tz3/+c33729/WG2+8oc2bN7syypvTQUSSHnjgAY0aNUo33nijTpw4oSVLlujPf/6zJk2aZLpryDEvv/yy9u3bp3379sUFNotDrh2uu+46tbe367777lNzc7MWLFigF198MS9HKpMVmZtfuXKl4/rjjz+um266KfsdQk676KKL9Pvf/14bN27Ufffdpzlz5mjTpk264YYbMn6vgMWfkAAAwBAmsAEAgDEEEQAAYAxBBAAAGEMQAQAAxhBEAACAMQQRAABgDEEEAAAYQxABAADGEEQAAIAxBBEAAGAMQQQAABhDEAEAAMb8X1xn4+hODLaPAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 10: w = [ 0.5881308 0.53429153 -2.18924357]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA+4klEQVR4nO3deXiU1d3G8e9kgBCWhE0wkEDCDokWBUurpIJa1FpFI+61xVpbWlTQtlKEFqVqWsUWl4oi1dpalxbjK25VXBDUWhU3CPsekrBjwppl5nn/OAwkZJsJM3Oemdyf68oV5uSZmR8j8tyc1eM4joOIiIiIBQm2CxAREZHmS0FERERErFEQEREREWsURERERMQaBRERERGxRkFERERErFEQEREREWsURERERMSaFrYLaIjf76e4uJj27dvj8XhslyMiIiJBcByHvXv30r17dxISGu7zcHUQKS4uJj093XYZIiIi0gSFhYWkpaU1eI2rg0j79u0B8xtJTk62XI2IiIgEo6ysjPT09CP38Ya4OogEhmOSk5MVRERERGJMMNMqNFlVRERErFEQEREREWsURERERMQaBRERERGxRkFERERErFEQEREREWsURERERMQaBRERERGxxtUbmomIiNTJ54PFi6GkBFJTIScHvF7bVUkTKIiIiEhsyc+HiRNhy5ajbWlp8MADkJtrry5pEg3NiIhI7MjPh7Fja4YQgKIi056fb6cuaTIFERERiQ0+n+kJcZzaPwu0TZpkrpOYoSAiIiKxYfHi2j0h1TkOFBaa6yRmKIiIiEhsKCkJ73XiCgoiIiISG1JTw3uduIKCiIiIxIacHLM6xuOp++ceD6Snm+skZiiIiIhIbPB6zRJdqB1GAo9nzdJ+IjFGQURERGJHbi7Mmwc9etRsT0sz7dpHJOZoQzMREYktubkwZox2Vo0TCiIiIhJ7vF4YOdJ2FRIGGpoRERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExJqoBZG8vDw8Hg+TJk2K1luKiIiIy0UliHzyySfMmTOHk08+ORpvJyIiIjEi4kFk3759XHPNNTz++ON07Ngx0m8nIiIiMSTiQWTChAlccMEFnHPOOY1eW15eTllZWY0vERERiV8tIvnizz33HJ999hmffPJJUNfn5eVx5513RrIkERERCcWeLwEHOg6JyMtHrEeksLCQiRMn8vTTT9O6deugnjNlyhRKS0uPfBUWFkaqPBEREWnI7s9g0SXw+hBYMjFibxOxHpElS5awfft2hg4deqTN5/OxaNEiHn74YcrLy/F6vTWek5iYSGJiYqRKEhERkcbs+hSWzYCilw83eCCpO1QdhBZJYX+7iAWRs88+m6VLl9Zou+666xg4cCCTJ0+uFUJERETEop3/MwGk+DXz2JMAva6CrKmQMihibxuxINK+fXuys7NrtLVt25bOnTvXahcRERFLdnxoAkjJG+axJwEyfgBZt0PygIi/fUQnq4qIiIhLbX8flt0JW98yjz1eyPyhCSDt+0atjKgGkYULF0bz7URERORY2xaaHpBt75rHnhbQexxkTYF2vaNejnpERERE4p3jwLZ3TADZvsi0JbSE3tfB4CnQLsNaaQoiIiIi8cpxYOsCWHon7PzQtCW0gj4/gcG/gbbpdutDQURERCT+OA4Uv256QHb9z7QlJELfn8Lg26BNmt36qlEQERERiReOA0WvmACy+1PT5m0NfcfDoF9Dm+5266uDgoiIiEisc/ywZb4JIHs+N23eNtDv5zDoV5B0ot36GqAgIiIiEqscPxS+aALI11+ZthZtod8EGPRLaN3Vbn1BUBARERGJNX4fFL4Ay34PpctMW4v2MOAmGHALtO5it74QKIiIiIjECr8PNv/LBJCyFaatZTIMmAgDJkFiJ6vlNYWCiIiIiNv5q2DTs7DsLti72rS17AADJ8GAm6FVR5vVHRcFEREREbfyV8HGp2HZ3bBvrWlr1REG3gr9b4JWKXbrCwMFEREREbfxV8KGv0PBPbBvvWlL7AwDfwn9J5jhmDihICIiIuIWvgrY8DcoyIP9G01b4glmCW6/X0DLdjariwgFEREREdt85bD+CRNADhSattbdYNBt0O9nZklunFIQERFp7nw+WLwYSkogNRVycsDrtV1V8+A7BGvnwvI/wMEi05aUCoMmQ98boEUbu/VFgYKIiEhzlp8PEyfCli1H29LS4IEHIDfXXl3xruogrJ0DK/4IB0tM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iEiwFEQk7LQ9u4iIBEtBRCJC27OLiEgwtKGZRIy2ZxcRkcYoiEhEaXt2ERFpiIZmRERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERaxRERERExBoFEREREbFGQURERESsURARERERa1rYLkBik88HixdDSQmkpkJODni9tqsSEZFYoyAiIcvPh4kTYcuWo21pafDAA5Cba68uERGJPRqakZDk58PYsTVDCEBRkWnPz7dTl4iIxCYFEQmaz2d6Qhyn9s8CbZMmmetERESCoSAiQVu8uHZPSHWOA4WF5joREZFgKIhI0EpKwnudiIiIgogELTU1vNeJiIgoiEjQcnLM6hiPp+6fezyQnm6uExERCYaCiATN6zVLdKF2GAk8njVL+4mIiEjwFEQkJLm5MG8e9OhRsz0tzbRrHxEREQlFVIJIeXk5Q4YMwePx8MUXX0TjLSWCcnNh40Z491145hnzfcMGhRAREQldVHZWve222+jevTtffvllNN5OosDrhZEjbVchIiKxLuI9Iq+//jpvvvkmM2fOjPRbiYiISIyJaI/Itm3buOGGG/i///s/2rRpE8m3EhERkRgUsSDiOA7jxo1j/PjxDBs2jI0bNzb6nPLycsrLy488Lisri1R5IiIi4gIhD83ccccdeDyeBr8+/fRTHnroIcrKypgyZUrQr52Xl0dKSsqRr/T09FDLExERkRjicZy6jjCr386dO9m5c2eD12RkZHDllVfy8ssv46m24YTP58Pr9XLNNdfw1FNP1XpeXT0i6enplJaWkpycHEqZIiIiYklZWRkpKSlB3b9DDiLB2rx5c42hleLiYs4991zmzZvH8OHDSUtLa/Q1QvmNiIiIiDuEcv+O2ByRnj171njcrl07APr06RNUCBEREZH4p51VRURExJqobGgGZt5IhEaBREREJEZFLYg0RSC4aBmviIhI7Ajct4PpgHB1ENm7dy+AlvGKiIjEoL1795KSktLgNRFbNRMOfr+f4uJi2rdvX2MZcGMCy34LCwu12iYE+tyaRp9b0+hzaxp9bk2nz65pmvK5OY7D3r176d69OwkJDU9HdXWPSEJCwnGtsElOTtYftibQ59Y0+tyaRp9b0+hzazp9dk0T6ufWWE9IgFbNiIiIiDUKIiIiImJNXAaRxMREpk+fTmJiou1SYoo+t6bR59Y0+tyaRp9b0+mza5pIf26unqwqIiIi8S0ue0REREQkNiiIiIiIiDUKIiIiImKNgoiIiIhY0yyCyKuvvsrw4cNJSkqiS5cu5Obm2i4pZpSXlzNkyBA8Hg9ffPGF7XJcbePGjVx//fVkZmaSlJREnz59mD59OhUVFbZLc6VHHnmEzMxMWrduzdChQ1m8eLHtklwtLy+P0047jfbt29O1a1cuvvhiVq1aZbusmJOXl4fH42HSpEm2S3G9oqIifvCDH9C5c2fatGnDkCFDWLJkSdjfJ+6DyAsvvMC1117Lddddx5dffskHH3zA1VdfbbusmHHbbbfRvXt322XEhJUrV+L3+3nssccoKCjgz3/+M48++ii333677dJc5/nnn2fSpElMnTqVzz//nJycHM4//3w2b95suzTXeu+995gwYQIfffQRCxYsoKqqitGjR7N//37bpcWMTz75hDlz5nDyySfbLsX19uzZwxlnnEHLli15/fXXWb58Offffz8dOnQI/5s5cayystLp0aOHM3fuXNulxKTXXnvNGThwoFNQUOAAzueff267pJhz7733OpmZmbbLcJ1vfvObzvjx42u0DRw40PnNb35jqaLYs337dgdw3nvvPdulxIS9e/c6/fr1cxYsWOCceeaZzsSJE22X5GqTJ092RowYEZX3iusekc8++4yioiISEhI45ZRTSE1N5fzzz6egoMB2aa63bds2brjhBv7xj3/Qpk0b2+XErNLSUjp16mS7DFepqKhgyZIljB49ukb76NGj+fDDDy1VFXtKS0sB9OcrSBMmTOCCCy7gnHPOsV1KTJg/fz7Dhg3jsssuo2vXrpxyyik8/vjjEXmvuA4i69evB+COO+5g2rRpvPLKK3Ts2JEzzzyT3bt3W67OvRzHYdy4cYwfP55hw4bZLidmrVu3joceeojx48fbLsVVdu7cic/no1u3bjXau3XrxtatWy1VFVscx+HWW29lxIgRZGdn2y7H9Z577jk+++wz8vLybJcSM9avX8/s2bPp168fb7zxBuPHj+fmm2/m73//e9jfKyaDyB133IHH42nw69NPP8Xv9wMwdepULr30UoYOHcqTTz6Jx+Ph3//+t+XfRfQF+7k99NBDlJWVMWXKFNslu0Kwn1t1xcXFnHfeeVx22WX85Cc/sVS5u3k8nhqPHcep1SZ1u/HGG/nqq6949tlnbZfieoWFhUycOJGnn36a1q1b2y4nZvj9fk499VTuueceTjnlFH72s59xww03MHv27LC/V4uwv2IU3HjjjVx55ZUNXpORkcHevXsBGDx48JH2xMREevfu3SwnxQX7ud1111189NFHtc4VGDZsGNdccw1PPfVUJMt0nWA/t4Di4mJGjRrFt7/9bebMmRPh6mJPly5d8Hq9tXo/tm/fXquXRGq76aabmD9/PosWLSItLc12Oa63ZMkStm/fztChQ4+0+Xw+Fi1axMMPP0x5eTler9dihe6Umppa494JMGjQIF544YWwv1dMBpEuXbrQpUuXRq8bOnQoiYmJrFq1ihEjRgBQWVnJxo0b6dWrV6TLdJ1gP7cHH3yQu+6668jj4uJizj33XJ5//nmGDx8eyRJdKdjPDcxyt1GjRh3pfUtIiMlOx4hq1aoVQ4cOZcGCBVxyySVH2hcsWMCYMWMsVuZujuNw00038eKLL7Jw4UIyMzNtlxQTzj77bJYuXVqj7brrrmPgwIFMnjxZIaQeZ5xxRq3l4atXr47IvTMmg0iwkpOTGT9+PNOnTyc9PZ1evXpx3333AXDZZZdZrs69evbsWeNxu3btAOjTp4/+BdaA4uJiRo4cSc+ePZk5cyY7duw48rMTTzzRYmXuc+utt3LttdcybNiwIz1Hmzdv1nyaBkyYMIFnnnmGl156ifbt2x/pUUpJSSEpKclyde7Vvn37WvNo2rZtS+fOnTW/pgG33HILp59+Ovfccw+XX345H3/8MXPmzIlIL29cBxGA++67jxYtWnDttddy8OBBhg8fzjvvvEPHjh1tlyZx5s0332Tt2rWsXbu2VmBzdMh1DVdccQW7du1ixowZlJSUkJ2dzWuvvdYseyqDFRibHzlyZI32J598knHjxkW/IIlrp512Gi+++CJTpkxhxowZZGZmMmvWLK655pqwv5fH0d+QIiIiYokGsEVERMQaBRERERGxRkFERERErFEQEREREWsURERERMQaBRERERGxRkFERERErFEQEREREWsURERERMQaBRERERGxRkFERERErFEQEREREWv+H/M6kYQxy3DvAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 11: w = [ 1.5881308 0.79494391 -1.60956368]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA8fklEQVR4nO3deXRV9b3//9dJwDAIAQQUSTSpE4NfpoBoJTfhS4tSB2yIHVTWF1eLxiqC/hSKuL4iDum3isbKFYvW6fY63GK0XqK2tDKkV/wKKPPQL5AsA6EENDchVhI82b8/PjmQ4SQ55+Tss/c+5/lYixX2zk7O25Ry3nyG18dnWZYlAAAAByQ5XQAAAEhcNCIAAMAxNCIAAMAxNCIAAMAxNCIAAMAxNCIAAMAxNCIAAMAxNCIAAMAx3ZwuoCONjY2qrKxUnz595PP5nC4HAACEwLIsHT9+XOeee66Skjoe83B1I1JZWan09HSnywAAABGoqKhQWlpah8+4uhHp06ePJPMf0rdvX4erAQAAoaitrVV6evqp9/GOuLoRCUzH9O3bl0YEAACPCWVZBYtVAQCAY2hEAACAY2hEAACAY2hEAACAY2hEAACAY2hEAACAY2hEAACAY2hEAACAY1wdaAYAQFB+v1RaKh0+LA0ZImVnS8nJTleFCNCIAAC8pbhYmjtXOnjw9L20NOmZZ6S8POfqQkSYmgEAeEdxsZSf37IJkaRDh8z94mJn6kLEaEQAAN7g95uREMtq+7nAvXnzzHPwDBoRAIA3lJa2HQlpzrKkigrzHDyDRgQA4A2HD0f3ObgCjQgAwBuGDInuc3AFGhEAgDdkZ5vdMT5f8M/7fFJ6unkOnkEjAgDwhuRks0VXatuMBK6LisgT8RgaEQCAd+TlSStXSkOHtryflmbukyPiOQSaAQC8JS9Pmj6dZNU4QSMCAPCe5GQpN9fpKhAFTM0AAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADH0IgAAADHxKwRKSwslM/n07x582L1kgAAwOVi0ohs3LhRK1as0KhRo2LxcgAAwCNsb0Tq6up0880364UXXlD//v3tfjkAAOAhtjcid955p6655hp973vf6/TZ+vp61dbWtvgFAADiVzc7v/mbb76pzz77TBs3bgzp+cLCQj388MN2lgQAAEJlWdLBd6WeQ6SBl9vyEraNiFRUVGju3Ln6/e9/rx49eoT0NQsXLlRNTc2pXxUVFXaVBwAAOlJXLq27XirNk/7vbKnxpC0vY9uIyObNm1VVVaWsrKxT9/x+v9avX69ly5apvr5eycnJLb4mJSVFKSkpdpUEAAA642+Q9jwl7Vgi+b+RkrpLadMlq9GWl7OtEZkyZYq2b9/e4t6tt96qYcOGacGCBW2aEAAA4LCq9dLGO6SaXeZ6cK40YbmUOsy2l7StEenTp48uvfTSFvd69+6ts846q819AADgoBNHpS3zpQOvmOuUQdK4p6SMmyWfz9aXtnWxKgAAcDGrUdr/kmlCGqol+aQLb5fGPC6dEZvIjZg2ImvXro3lywEAgPZUb5M2FkjHNpjr/mOkCc9LAyfGtAxGRAAASCQn66Tti6W9RZLll7qdKY16RLr4Likp9m0BjQgAAIkgkAmy+W7pnwfNvfR8KatI6jXUsbJoRAAAiHd15dKmOVLlKnPdO1Oa8K/SudMcLUuiEQEAIH4FywQZPl8auUjq1tPp6iTRiAAAEJ+CZoI8J6UOd7Ss1mhEAACIJ0EzQZZKGbfYngkSCRoRAADigdUo7f+dtGVBs0yQ26QxhTHLBIkEjQgAAF7XOhOk32jpsudtOzE3mmhEAADwKpdlgkTCG1UCAIDTLEs6+I60eW6rTJCnpV5pztYWJhoRAAC8pK6sKROkxFz3zpTGL5OG/sDZuiJEIwIAgBf4G6Q9S6Udj7TKBHlA6tbL6eoiRiMCAIDbHVlnMkFqd5trl2aCRIJGBAASnd8vlZZKhw9LQ4ZI2dlScrLTVUEymSCf3y+VvWquXZ4JEgkaEQBIZMXF0ty50sGDp++lpUnPPCPl5TlXV6LzaCZIJGhEACBRFRdL+flmB0Zzhw6Z+ytX0ow4wcOZIJFIcroAAIAD/H4zEtK6CZFO35s3zzyH2DhZJ312n/ThONOEdDtTGve0dPWmuG1CJEZEACC+hLreo7S05XRMa5YlVVSY53JzbSsXasoEeVfafLfnM0EiQSMCAPEinPUehw+H9j1DfQ6RibNMkEgwNQMA8SCw3qP1KEdgvUdxccv7Q4aE9n1DfQ7h8TdIOwulkpGmCUnqbvJArtmRUE2IJPksK9gEoTvU1tYqNTVVNTU16tu3r9PlAIA7+f1SRkb7Uy0+nxkZKSs7PU0TydcgOqrWS58WxGUmSEA479+MiACA14Wz3iMgOVn66U87/r5FRTQh0XTiqPTJrdJfckwTkjJIuuI1acpHcdWEhIs1IgDgRc0Xpe7aFdrXNF/vUVwsPflk+8/edx9bd6PFapT2vyRtmR/3mSCRoBEBAK8Jtig1FIH1Hh1t3ZXMtMybb0qFhYyIdFX1NhPNfuxjcx3nmSCRoBEBAC8pLpZmzAjvawLrPbKzzTVbd+13sk7avljaWyRZfpMJMuoR6eK7pCTeepvjpwEAXuH3S7fdFt7XBM4jab7eg6279gmaCTJDyipKiEyQSNCIAIBXPPaY9OWX4X1NWpppQpqv92Drrj3qypsyQVaZ6wTMBIkEjQgAeIHfb4LJQvHgg9KIEe0nq2Znmwbl0KHg60RaT+WgY/4Gac9T0o4lkv8bkwkyfL7JBenWy+nqXI9GBAC8oLRU+uqr0J6dMqXjtR3Jyaapyc83TUfzZiTYVA7aV7XeLEatadq5FIeZIHYjRwQAvCDU9RoDBoQ2kpGXZ07XHTq05f20NE7dDUXzTJCaXWSCdAEjIgDgZoG8kFCzQubODX0kIy9Pmj49tEPyYFiN0v7fSVsWNGWCSLrwdjJBuoBGBADcKty8kLPOkhYtCu81kpPZohuq6m3SxgLp2AZzTSZIVNCIAIAbBQ6xC/U4MJ9PWrGC0Qw7kAliK36CAOA2nSWftpae3naLLrouaCZIvpT1NJkgUUQjAgBu01nyacCDD5odMqzriL66sqZMkBJzTSaIbWhEAMBtQt0hM2IE6zuizd8g7Vkq7XiETJAYoREBALch+dQZR9aZTJDa3eaaTJCYoBEBALch+TS2ThyVPr9fKnvVXKcMksYtlTJuOR3wBtsQaAYAbhNIPpXavhGSfBo9VqO07wVp1SVNTYjPZIJct1fKnEkTEiM0IgDgRiSf2qt6m7R6kvTpbSaYrN9oaerHJheEYLKYYmoGANyK5NPoIxPEdfipA4CbkXwaHWSCuBaNCAAgvgXLBJnwr9K505ytC5JoRAAA8SpoJsiCpkyQnk5XhyY0IgCA+BM0E2S5lDrM0bLQFo0IACB+BM0EeUrKuJntuC5FIwIAbuX3s2MmVFajtP930pYFZjtuIBNkzONsx3U5GhEAcKPiYnMCb/PD79LSTNAZGSItVW+TNhZIxzaY6/5jpAnPSwMnOloWQkOgGQC4TXGxlJ/f9gTeQ4fM/eJiZ+pym5N10mf3SR+OM01ItzOlcU9LV22kCfEQn2UFO8jAHWpra5Wamqqamhr17dvX6XIAIDLhTLH4/VJGRtsmJCBwzkxZWeJO07SbCVIk9Rra0VciRsJ5/2ZqBgDsFO4US2lp+02IZN6EKyrMc4kYdEYmSNxhagYA7BLJFMvhw6F971Cfixf+BmlnoVQy0jQhSd2lkYuka3bQhHgcIyIAYAe/34yEBJv9tiwzxTJvnjlLpvkUy5AhoX3/UJ+LB1XrpU8LWmWCPCelDne0LEQHIyIAYIdwpliay842UzftZV74fFJ6unku3p04Km2YJf0lxzQhKYOkK16TpnxEExJHaEQAwA6RTrEkJ5v1I1LbZiRwXVQU3wtVrUZp3wvSqktOB5NdeJt07R4pcybBZHGGRgQA7NCVKZa8PGnlSmloqx0gaWnmfjzniFRvk1ZPkj69zQST9RstTd0gXfZbKWWA09XBBmzfBQA7BLbhHjoUfJ1IKNtwEylZ9WSdtH2xtLdIsvwmE2TUEuniOVISyxm9hu27AOC0wBRLfr5pOpo3I6FOsSQnx/8W3aCZIDOaMkHSnKwMMcLUDADYJZGnWEJRVy6tu14qzTNNSO9MKadEyl5JE5JAGBEBADvl5ZktuokyxRIKf4O05ylpxxLJ/43JBBl+v8kF6dbL6eoQYzQiAGC3RJhiCVXVemnjHVLNLnNNJkjCoxEBANjvxFFpy3zpwCvmOmWQNG6plHEL23ETHI0IAMA+VqO0/yXThDRUS/KZTJAxhdIZ/Z2uDi5AIwIAsEf1NmljgXRsg7nuN1q67Hlp4OXO1gVXoREBAERX0EyQR6SL7yITBG3wJwIAWkukILFoCpoJki9lPc12XLSLRgQAmisuNqfmNj+wLi3NhJMleu5HR+rKpU1zpMpV5rp3pjR+mTT0B46WBfezNdCssLBQEyZMUJ8+fTR48GDdcMMN2rt3r50vCQCRKy42SaitT809dMjcLy52pi438zdIO38llYwwTUhSd5MHcs0OmhCExNZGZN26dbrzzjv1ySefaPXq1fr22281depUff3113a+LAC05PdLa9dKb7xhPvr9wZ+ZOzf4uTCBe/PmBf/aRFW1XvpwrLR1oQkmG5wrTdsqjX6UYDKELKaH3h09elSDBw/WunXr9C//8i+dPs+hdwC6LNSplrVrpcmTO/9+a9YQTkYmCDrh2kPvampqJEkDBgQ/yrm+vl719fWnrmtra2NSF4A4FZhqaf3vrcBUS/PzXg4fDu17hvpcPCITBDaI2aF3lmXp3nvv1aRJk3TppZcGfaawsFCpqamnfqWnp8eqPADxJtypliFDQvu+oT4Xb6q3SasnSZ/ONk1Iv9HS1I9NLghNCLogZlMzd955p0pKSvS3v/1NaWnBt3EFGxFJT09nagZA+MKdavH7pYwMM1oS7K9Fn89M6ZSVJdZW3qCZIEuki+eQCYJ2uW5qZs6cOXrvvfe0fv36dpsQSUpJSVFKSkosSgIQ78KdaklONutG8vNN09G8GQmseygqSpwmhEwQxIitUzOWZemuu+5ScXGxPvroI2VmZtr5cgBwWiRTLXl5Zt3I0KEtn0lLa7meJN7VlUnrrpNK80wT0jtTyimRsv9AE4Kos3Vq5he/+IVef/11/fGPf9Qll1xy6n5qaqp69uzZ6dezawZAxLoy1ZKoyar+BmnPUmnHI2Y7blJ3afh8aeQDbMdFWMJ5/7a1EfG1s43r5Zdf1qxZszr9ehoRACEL1jz88Y9mqkUKPtWSSKMcnTmyTtr0C6lml7kenCtNeE5KHe5oWfAm16wRiWFECYBE1lFWyMqVwT9XVEQTIplMkM/vl8peNddkgiDGWPIMwLv8fumxx6SHHmr7ueZZIeXliTnV0hGrUdr/O2nLgpaZIKMfl1KCZz0Bdohpsmq4mJoB0K7iYunuu03D0Z5E3XLbmept0sYC6dgGc91vtMkDGXi5s3UhbrhmagYAwhbKQtH2ElNbsyyposJ8v0SPZZfayQR5RLr4LjJB4Bj+5AFwj1DOhekoMbU9iRzLLrWTCTJDyipiOy4cRyMCwB1CPRemtLRloxKKRI1ll0wmyKY5UmWJue6dKY1fJg39gbN1AU1idtYMALQrnHNhwhnd8Pmk9HQzvZNo/A3SzkKpZKRpQpK6mzyQa3bQhMBVGBEB4LzORjmar/UId3QjkWLZA46skzbeIdXuNteDc6QJy8kEgSsxIgLAeeGcC5OdbdaNdJZxkWix7JLJBNkwS/prrmlCUgZJV7wmTVlDEwLXohEB4LxwzoUJHE4ntd+MPPywyQ5JlCbEapT2vSCtuuR0MNmFt0vX7pEyZxJMBlejEQHgvM5GOVqv9WjvcLr0dOntt6X//b8TZzqmepu0epL06W0mmKzfaGnqBpMLQjAZPIA1IgCcFxjlyM83TUewc2Far/XIy5OmT0/cxNSgmSBLpIvnkAkCT+FPKwB3CIxyhHMuTHJy4gWVBc0EyZOyniETBJ5EIwLAPRJ9lKMzdeVNmSCrzDWZIIgDNCIA3CXUUY5QouDjhb9B2vOUtGOJ5P/GZIIMv18auUjq1svp6oAuoREB4D2hRMHHi6r1JhOkZpe5HpwrTXiO7biIG+yaAeAtgSj41gFogSj44mJn6oq2E0elT26V/pJjmpBTmSAf0YQgrtCIAPCOcKLgvcpqlPa9KK0aJh14RZLPZIJct5dMEMQlpmYAeEc4UfBe3E1TvU3aWCAd22Cu+402eSADL3e2LsBGNCIAvCOcKHgvCZoJ8oh08V1kgiDu8SccgHeEEwXvBUEzQfKlrKfJBEHCoBEB4B2BKPhDh4KvE/H5zOcDUfBuRiYIIInFqgC8pKMD79qLgncbf4O081dSyQjThCR1N3kg1+ygCUFCohEB4C3tHXiXlmbuuzlHpGq99OFYaetCE0w2OFeatlUa/SjBZEhYTM0A8B6vRcGfOCptmd+0HVcmE2TcUinjFrbjIuHRiADwJi8ceGc1SvtfMk1IQ7W5d+Ht0ujHpZQBztYGuASNCADYgUwQICQ0IgAQTWSCAGHh/xUAEA1kggARoREBgK6qK2vKBCkx12SCACGjEQHQdX6/d3awRJO/QdrzlLRjidmOm9RdGn6/yQVhOy4QEhoRAF1TXCzdfbdJOw0YOlT6zW/cnenRVVXrpY13SDW7zPXgXGnCc1LqcEfLAryGQDMAkSsulmbMaNmESOZ6xgzz+Xhz4qj0ya3SX3JME5IySLriNWnKRzQhQARoRABExu+Xbrut42duu808Fw+sRmnfi9KqS5qCyXwmE+S6vVLmTILJgAgxNQMgMmvXSl9+2fEzX35pnpsyJRYV2YdMEMA2jIgAiMzatdF9zo1O1kmf3Sd9OM40Id3OlMY9LV29iSYEiBJGRACgtaCZIDOkrCIyQYAoY0QEQGRCPefF7efBtFZXLq27XirNM01I70wpp0TKXkkTAtiAEREAkcnNlc46q+N1Imed5Z1GJGgmyHxp5ANkggA2ohEBEJnkZGnFCrNNtz0rVngj2OzIOmnTL8gEARzA1AyAyOXlSW+/LaW1mrJISzP33R5oduKotGGW9NdcMkEAhzAiAqBr8vKk6dO9FfFuNUr7fydtWSA1VJt7F94ujSmUzujvbG1AgqERARBcOOfHJCd7Zy1IsEyQCculQVc4WxeQoGhEALRVXCzNnSsdPHj6Xlqa9Mwz7p9uac/JOmn7YmlvkWT5TSbIqCXSxXOkJP4qBJzC//sAtFRcLOXnmyyN5g4dMvdXrvRWM0ImCOBqPstq/beNe9TW1io1NVU1NTXq27ev0+UA8c/vlzIyWo6ENOfzmZGRsrKYrAEJZ3YoqLoyadMcqbLEXPfOlMYvk4b+wJZ6ARjhvH+zawbAaaWl7TchkhldqKgwz9msuNj0RJMnSzfdZD5mZIR4oK+/QdpZKJWMNE1IUneTB3LNDpoQwGWYmgFw2uHD0X0uQl2aHTqyTtp4h1S721wPzjGLUdmOC7gSIyIAzBzI2rXSrl2hPT9kiK2lzJ3btgmRTt+bN88810LzTJDa3SYT5PJXpSlraEIAF2NEBEh0wXbItCewRiQ727Zywpkdys1VUybIS9KW+S0zQUY/LqUMsK1OANFBIwIksvbmQILx+czHoqK2K0a7vKr0tLBmh4Jlglz2vDTw8oheG0DsMTUDJKqO5kCCSUsLvjijS6tK2wpl1qd3Sp0m9bpP+nCcaUK6nSmNe0q6ehNNCOAxNCJAoupsDiTgwQelNWvMlt1gTUh+ftvvE1hVGkEzkp1tep7AAExLln444R3tfWqE0r9eaoLJ0mdI1+6Wht1DMBngQTQiQKIKdQ5kxAizGCPYdExEq0o7lpxsAlylls3I+QPL9d7/d72K5+VpaL8KkwmSUyJlrySYDPAwGhEgUYW686W952zMHMnLM7NAQ4dK3ZMbtOC6X2nXr0founGr1CgyQYB4wjgmkKgCcyCHDgUf1ehsh4zNmSN5edL0K9brROkd6v2t2VZsDcpR0mVkggDxhBERIFG1NwfS/DrYDpmAro6odOTEUemTW5W8Jsc0ISmDpCtek+97ZIIA8YZGBEhkzedAmmtvh0xzHa8qNffT08PLHLEapX0vSqsukQ68IslnMkGu3SNlzmz/tQB4FlMzQKLLy5OmTw8/ByQwopKfbxqE5tM7oYyotFa9zUSzH/vYXHeQCRLF2BIADqMRAWDexXNzw/+6wIhK62TWtDTThHQ0ohJwsk7avljaW2S243Y7Uxr1iHTxXUG34wYLgk1LMz1RKC8HwF18lhVqmlHshXOMMAAHRTJEYVnSwXelzXdL/2zqKtJnSFlF7W7HbS8INjAA09lsEoDYCOf9m0YEQOzVlUub5kiVq8x170xp/LIOt+P6/Sawtb0dw4FNPmVlTNMATgvn/ZvFqgBix98g7fyVVDLCNCFJ3aWRi0LKBLExtgSAg1gjAiA2qtabxag1JhNEg3OlCc+FvB3X5tgSAA6hEQFgrxNHpS3zm7bjymSCjFsqZdwS1nZcO2NLADiHRgSAPaxGaf9LpglpqD59/+qNUu/zw/52XQ2CBeBOrBEBEH3V26TVk6RPZ5smpN9oadSj5nP/eVFE37KrQbAA3IlGBED0nKyTPrtP+nCcdGyDyQQZ97T839+ktccWmWcaT8p/8E8RffuuBMECcKeYNCLPPfecMjMz1aNHD2VlZamUZe1AfLEsqeIdqWS4tGepCSZLz5eu3a3iXfOU8Z1umjxZGlRQJUlKXn+1it+OLDkgL08qL5fWrJFef918LCujCQG8yvZG5K233tK8efO0aNEiff7558rOzta0adP0xRdf2P3SAGKhrlxad71UmmeCyXpnSjklUvYfVPxhmvLzT2+7PXZ8kJ7/6+2SJP/6H6m4OLKXDATB/vSn5iPTMYB32R5oNnHiRI0bN07Lly8/dW/48OG64YYbVFhY2OHXEmgGuJi/wYx+7HhE8n9jMkGGz5dGPiB169VBAJkl69/Nv4Eue7xCG7am0UgAccY1gWYNDQ3avHmzpk6d2uL+1KlT9fHHH7d5vr6+XrW1tS1+AXChI+ukD8ZIWx8wTcjgXGnaVmn0o1K3XpI6CiDz6cqH/yZJ+vSBdALIgARnayNy7Ngx+f1+nX322S3un3322frHP/7R5vnCwkKlpqae+pWenm5neQDCdeKotGGW9NdcqXa3yQS54jVpykdtgsk6Chb7+O9X6nD1OZKknpW/s69eAK4Xk8WqvlZ77SzLanNPkhYuXKiamppTvyoqKmJRHoDOWI3SvhekVZdIZa+aexfeLl23V8qcGTSYrLNgse/cc0CSNFE/lxpPRrtiAB5hayMycOBAJScntxn9qKqqajNKIkkpKSnq27dvi18AHHYqE+S205kgUzdIlz0vndG/3S8LBJC1F55a/21PPfb+r83Fh1k2FA7AC2xtRM444wxlZWVp9erVLe6vXr1a3/3ud+18aQBdFTQT5Cnp6k3SwMs7/fJQAsiG591vfvPf26XqrVEsHoBX2D41c++99+rFF1/USy+9pN27d+uee+7RF198oYKCArtfGkAkgmaCzJCu3S0Nu0dKCv1kiJACyK79u7n5wZio/ScA8A7bz5r58Y9/rC+//FJLlizR4cOHdemll+r999/X+eeHf9YEAJvVlUmb5kiVJea6d4Y0fpk09JqIv2VenjR9utlFc/iwWTuSnd0s+6PvRdLgHKlqnbR1kTT6sS7/ZwDwDttzRLqCHBEgRvwN0p6npB1LmmWC3C+NXHRqO66tGv3Sm03/LrqxRurO/98BL3NNjggAD6haL304Vtq6sCkTJKcpE+Sx2DQhkpSULE36D/P7twfG5jUBuAKNCJCoThyVPrlV+kuOVLOrWSbImjaZIDFx3o3mY+NJqTKyQ/EAeA+NCJBorEZp34smE+TAK+behbdL1+5pNxMkZvLMoXhae7VZNAsg7tGIAInkVCbI7LaZICkDnK5O6jHINEWS9LcfOVsLgJigEQESQbBMkLFLQ84EiSX/uKYDMitWasNfD8rvd7YeAPaiEQHiWUeZIMPvDSsTJBaKi6WMzNOH4l1xJF0ZGeY+gPhEIwLEq7pyad31Umme9M+DUu9MKadEyl4p9Upzuro2ioul/HxzYm/zQ/GuuvB3ys+nGQHiFTkiQLxxOhMkAn6/lJFhmpCAHt2/0TevmHrP+F8NOmdId5WVNQtCA+Ba5IgAiaqq1PlMkAiUlrZsQiTpxMmeuv91cyjepkeyVFFhngMQX2hEgHhwKhPkX9yRCRKmw4eD33+yxByKN+q87Rp13tZ2nwPgXTQigJedygQZ1pQJ4jPbX6/b63wmSBiGDGn/cxfdaw7F21o4psPnAHgTjQjgVS0yQb5qygT52GSCnNHf6erCkp1tTuQN1jftO3KR1u7OkST9S+qiGFcGwG40IoDXBMsEGfeUKzNBQpWcLD3zjPl962bE55O+9/hfJUlJux+XTtbGuDoAdqIRAbyio0yQYfe4LhMkXHl50sqV0tChLe+npUn/8QcOxQPilbf/5gISRV25tGmOVLnKXPfOlMYvk4b+wNGyoi0vT5o+3eyOOXzYrB3Jzg5s2W11KN65VzlZKoAooREB3MyDmSBdlZws5ea288m8Kql4sDkU76eNnlmMC6B9TM0AblW13pOZILbiUDwg7tCIAG5zKhMkx5OZILabcPpQPP3zYMfPAnA9GhHALU5lglzSlAki86//a/d4KhPEdj6f9H1zKJ7eTXe2FgBdxhoRwA2qt0kbC8x2XMlkglz2vGu24/r97S0gdaiWnVdqos5RT/1Djf/vd0q66GfOFAOgyxgRAZzUKhPkW9+Z+kxPaV3PTfL3d0cTUlxsDqSbPFm66SbzMSPDmdNwm9cyYNYBSVLSxp/rnbdPxr4YAFFBIwI4IUgmyKpt+cq4a7eybr5Huf+zm2Nv9s0VF0v5+W0PpDt0yNyPZX2tazlxsqfu+/cnJEkX/L8sx39WACLjsyzLcrqI9oRzjDDgGXVlTZkgJZKkr32Z+tGvl+n9LS0zQQJLQlauNPkaseb3m9GH1k1IgM9nwsbKyuyfpumoFuvfzQ/qqme26P2PRzs2ZQTgtHDevxkRAWLF3yDtLJRKRpomJKm7Gkcs0phFO9o0IZIZNJGkefPMG3GslZa234RITYM6FeY5J2sJHIr3p7ljYlILgOiiEQFi4cg66YMx0tYHmjJBcqVpW7X+vx/VvrL2M0FCebP3+6W1a6U33jAfo9W0HD4c3ee6oqPX2HfkIq3dZQ7FG1T5gP3FAIgqGhEkNLvexE85cVTaMEv6a65Uu7tZJshHUurwLr/Z27mQdMiQ6D7XFZ29xpSmQ/FGqpBD8QCPoRFBwrJ1N4jVKO17wWSClL0qyWcyQa7b2yITpCtv9nYvJM3ONmtA2osv8fmk9HTznN06q8VSsu74dw7FA7yIRgQJydY38ept0upJ0qe3SQ3VJhNk6scmF+SM/i0ejfTN3u+X5s49vY6kuWitLUlOlp555nQdreuSpKKi2OSJhFLL93/W6lA8AJ5AI4KEY9ubeKtMEHU7Uxr3lHT1pnaDyQJvsMFq6ejNPlYLSfPyzK6doUNb3k9Li/1unpBqyasyN9deHfyHCsB1SFZFwgnnTbzdU2Bbf8HBd6XNd58++yQ9X8p6WuqVFlJNZ50lfflly3sDBkgrVgR/s4/lQtK8PGn6dHckq3ZaS+BQvH2/NYfiZf8h9kUCCAuNCBJOVN/E68qbMkFWmevemdL4ZdLQtttxgwlMEQX7x/tXX7X/dbFeSJqcHGJTFgOd1jJhuWlEAofihdgMAnAGUzNIOFF5E/c3SDt/JZWMME1IUndp5CLpmh0hNyEdTREFtDdF5KaFpK7DoXiAp9CIIOF0+U28ar304Vhp68KmTJAcadpWafSjUrf2M0Fa68o6DzctJHWlQVdKPc4xv9/3orO1AOgQjQgSTsRv4ieOSp/cKv0lR6rZ1SwTZI2UOjzsOro6ReSmhaSudL05FE+fzjY7aQC4Eo0IElJYb+JWo/lX9apLpAOvmHsX3iZdu6dFJki4ojFFlJcnlZdLa9ZIr79uPpaV0YRIkrr1lMaaQ/H0YZaztQBoF4feIaH5/Z3sBqneJm0sMNtxJZMJctnz7W7HDfe1MzJMdkl723djdahcXHu9qVGctkXqP9rRUoBEEc77N7tmkNDa3YFxsk7avljaWyRZfpMJMmqJdPEcKSk6/7cJTBHl55umo3kzwjqPKLr279Kqi81ZPze59t9dQMJiagZozrKkinekkuHSnqWmCUmfIV27Wxp2T9SakADWecRA34vMgmJJ2sKheIDbMDUDBHQxE6QrOp0iQtc0+qU3m5rIG2uk7vx9AtiJqRkgHP4Gac9T0o4lZjtuUndp+P0mFySM7bhdEe3AMBqbVpKSpUn/YdJW3x4o/aTB6YoANKERgWvF5M20ar208Q6zHVcyQ/gTlke0HdctiotNUFrzjJK0NLMeJaGnes5rdSjeuVc5Ww8ASawRgUsVF5sdJZMnSzfdZD5mZHT9aPtTopwJ4ha2niocDzgUD3AdGhG4jq1vpkEzQW7vciaIG9h2qnA8CRyKJ5lpGgCOoxGBq9j6Zlq9TVo9ySRtNlSbTJCpG0wuSMqArpTtKL9fWrtWWrw48sj4hDJhufkYOBQPgKNoROAqXTl/pV0n66TP7pM+HGeCybqdKY1dKl29KSrBZE5qPoX16KOhfU2o0fJxi0PxAFdhsSpcpavnr7RgWdLBd6XNd5/+l2/6DCmrKC6Ohg9MYYW71CHUaPm4FjgU78Q/zFTdhT93uiIgYTEiAleJxvkrkkwmyLrrpdI804T0zpRySqTslXHRhHQ0hdWeTk8VTjQcige4Ao0IXCU722w1bW/NaKdvpv4GaeevpJIRJpgsqbs08gHpmh0xCSaLlc6msFqzIzI+sDbljTfMR88tgm1+KN4H45ytBUhgNCJwlcD5K1LbZqTTN9Oq9dKHY6WtC00w2eAcadpWafRjMQsmi5Vw13lEOzLe9u3VsTL8PvOxZodUvdXZWoAERSMC1wn7/BWPZIJEcwQh1CmsBx+U1qwxJ/hGswmJq6ySa/9uPn4wxtEygETFWTNwrU6TVa1Gaf9L0pb5ZjuuZDIiRj/uuu24kaSddvTf7/ebEYhDh4KvE/H5zPcvK4tuGm3gddubFrLrdW33l1ypap00YqE05nGnqwE8L5z3bxoReFP1NmljgdmOK5lMkMued+V23PZ2twSmmoKN8oTSuAS+r9Tye3f0fbtq7VozDdOZNWuie3aO7TgUD4iqcN6/mZqBtwTLBBn3tGszQSIJaAt16iPsKawoiOr2ajcJHIonmUPxAMQMjQi8wbKkinekkuHSnqWS5ZfS86Vrd0vD5klJ7ozECTegLdzGJS9PKi83IxCvvx799SCtRW17tRu1PhQPQEy4829voLm6cmnTHLMdVzKZIOOXeWI7brgjCOE0LoGpj+Tk2E2DBLZXd7Y2xbNZJXlVUvFgcyjeTxs9ffYQ4BWMiMC9gmaCLPJUJki4Iwhun/ro0vZqL+gxSLrwNvN7DsUDYoJGBO7UJhMktykT5FFPZYKEG9DmhakPJ9amxNSE581HDsUDYoJdM3CXE0fNdtwDr5jrlEHSuKVSxi2eHSYPZ3eLU9tyI9Hp9movO/qxtPpK8/ubXPtXJOBa7JqB91iN5vCxVZc0NSE+kwly3V4pc6ZnmxApvBEEL019BNam/PSn5qMbaoqaQd81h+JJ5s8lANswIgLneSgTpCvCGUEIliOSnm6aEM9PfXjFt99I/9E0DfiTBrNGCUBICDSDN5ysk7YvlvYWme243c6URj0iXXyXa7fjxlJcT314xe4npc/vl1Ivla7Z7nQ1gGfQiMDdLEs6+K60+e7TiwHT86Wsp6VeaY6WBrTxetOc2LQtUv/RjpYCeAVrROBedeXSuuul0jzThPTOlHJKpOw/0ITAnTgUD7AVjQhiI2gmyAOeygRBgup7kTQ4x/x+ywPO1gLEIRoR2K/dTJDHPJUJggT2P/9qPu4qlE7WOlsLEGdoRGCfE0elT26V/pIj1ewymSBXvCZN+UhKHe50dUDoOBQPsA1bExB9VqO0/yUTTNZQLZMJcps0plA6o7/T1QGRaX0o3rlXOVsPECdsGxEpLy/Xz372M2VmZqpnz5664IIL9NBDD6mhocGul4QbVG+TVk+SPp1tmpB+o6WpH5tcEJoQeF1elfm49urg0bcAwmbbiMiePXvU2Nio3/72t7rwwgu1Y8cOzZ49W19//bWefPJJu14WTjlZJ+14WNrzNJkgiF+BQ/H2rTCH4mX/wemKAM+LaY7IE088oeXLl+vAgQMhPU+OiAecygSZK/2zwtwjEwTxzLKkN5oGk2+o4M85EEQ4798x/adqTU2NBgwY0O7n6+vrVV9ff+q6tpbV6a5WVy5tmmO240omE2T8MrbjIr75fNL3/8scivduOofiAV0Us10z+/fv17PPPquCgoJ2nyksLFRqauqpX+np6bEqD+EImgmyiEwQG/j90tq10htvmI9+v9MVQVL7h+JVrZcqP2D9CBCGsKdmFi9erIcffrjDZzZu3Kjx48efuq6srFROTo5ycnL04ovtn2QZbEQkPT2dqRk3qVovbbzDbMeVTCbIhOfYjmuDYAffpaWZ03k5+M4Fmh+K98NKactCqexVcz29XOp9vmOlAU6z9ayZY8eO6dixYx0+k5GRoR49ekgyTcjkyZM1ceJEvfLKK0pKCn0QhjUiLnLiqNmOe+AVc50ySBq3VMq4pe159eiy4mIpP7/tP6wDP+qVK2lGXGHXr6UtC8zvfclmobYkXfF7KfNm5+oCHGbrGpGBAwdq4MDQAn0OHTqkyZMnKysrSy+//HJYTQhcok0miKQLb5dGPy6ltL/eB5Hz+81ISLB/IliWaUbmzZOmT+c0XkdVb5O+ePv0daAJ8XWTjv6NRgQIkW2LVSsrK5Wbm6vzzjtPTz75pI4ePXrqc+ecc45dL4toqt4mbSyQjm0w1/1GmzyQgZc7W1ecKy1tOR3TmmVJFRXmudzcmJWF5nb92kzFBBsNtL6VjqyJfU2AR9nWiPz5z3/Wvn37tG/fPqWltdzeFsMdw4jEyTpp+2Jpb1GzTJAl0sVzyASJgcOHo/scbFD5gaRGqb2/yo7vNSOIhPgBnbJtrmTWrFmyLCvoL7iUZUkV70olw6U9S00Tkj5Duna3NOwempAYGTIkus/BBpPeks66XB3+FXr045iVA3gZizZg1JVL666XSn8o/fOgyQTJKZGyVxLYFGPZ2WZ3THtrgH0+KT3dPAeH9BgsfW+tlHFT8M8H1okA6BSNSKLzN0i7/k+rTJAHyARxUHKy2aIrtW1GAtdFRSxUdVxyijlNenRh041m/2NZ30pH1jpRFeA5NCKJrGq99OFYacsvJf830uAcadpWafRjUrdeTleX0PLyzBbdoUNb3k9LY+uuq/h80shfStnFUlKK2cIb8NUmyX/CudoAj4jpWTPhIkfEJsEyQcY+KWXOJBPEZfx+szvm8GGzJiQ7m5EQ1/rqc2ntD6T6o6e38n7/b9KgK52tC3CAa8+agcNOZYIskBq+kuQzJ4mSCeJaycls0fWMAWOlaZ9Ja6+Vqj+XZJl1IjQiQIeYmkkU1duk1dnSp7NNE9JvtDT1Y5MLQhMCREfPIWYU5Lx8c1213tl6AA9gRCTeBc0EeUS6+C7PbMdlegKe0q2ndOVb0qBJ0tmTna4GcD1vvBMhfJYlHXxX2jxX+meFuZeeL2U97antuBz8Bk/y+aRL7na6CsATaETiUV25tGmO2Y4rmUyQ8cs8tx23vYPfDh0y99k9AgDexxqReOJvkHb+qlUmyCJPZoJ0dvCbZA5+8/tjWhYAIMoYEYkXVeuljXdINbvM9eBcacJzUupwR8uKFAe/AUBioBHxumCZIOOWShm3eDoThIPfACAx0Ih41alMkPnmlM9AJsiYwrg48ZOD3wAgMdCIeFH1NjMNc6zpdM9+o00eyMDLna0rigIHvx06FHydiM9nPs/BbwDgbSxW9ZKTddJn90kfjjNNSLfe0rinpKs3xVUTInHwGwAkChoRL7AsqeIdqWS4tGepCSZLnyFdu0cado9ngsnCxcFvABD/4vMdLJ7ESSZIpPLypOnTSVYFgHhFI+JW/gYz+rHjEcn/jckEGX6/yQXp1svp6kIWjXh2Dn4DgPhFI+JGR9aZxai1u8314BxpwnLPZYIQzw4A6AxrRNzkxFFpwyzpr7mmCUkZJF3xmjRljSebkPz8tqFkgXj24mJn6gIAuAuNiBtYjdK+F6VVl0hlr5p7F8w2i1EzZ3oumIx4dgBAqJiacVr1NmljgXRsg7nuN0qa8Lw06Apn6+oC4tkBAKGiEXHKyTpp+2Jpb5HZjtutt/Q/lpijwz2+HZd4dgBAqLz9judFliUdfFfafLf0z6Zhg/QZUlaR1CvNycqihnh2AECoaERiKUEyQYhnBwCEisWqseBvkHb+SioZYZqQpO7SyAeka3bEXRMiEc8OAAgdjYjdqtZLH46Vti40wWSDc6RpW6XRj3kqmCxcxLMDAELB1IxdThyVtsyXDrxirlMGSeOWShm3eG47bqSIZwcAdIZGJNqsRmn/S6YJaag29y68XRr9uJQywNnaHEA8OwCgIzQi0fTf26VPC6RjH5vrfqOly56XBl7ubF0AALgUjUg0nKyTdjws7Xm6KRPkTGnUEuniOZ7PBAEAwE68S3aFZUkH/9iUCVJh7sVZJggAAHaiEYlUm0yQDGn8v8bldlwAAOxCIxIuf4O092lp+8NmO25Sd2n4/dLIRXG9HRcAADvQiISjar208Q6pZpe5HpwjTVgupQ53ti4AADyKRiQUZIIAAGALGpGOnMoEWSA1fGXuJXAmCAAA0UYj0h4yQQAAsB2NSGvBMkH+x8PSJXeTCQIAQJTxzhpAJggAADFHIyIFyQTJlMYvIxMEAACbJXYjQiYIAACOStxGpKpU2lhAJggAAA5KvEYkWCbI2CelzJlkggAAEGOJ04gEzQS5TRpdSCYIAAAOSYxGJFgmyITl0qArnK0LAIAEF9+NSLBMkFFLpIvnkAkCAIALxOe7MZkgAAB4Qvw1ImSCAADgGfHXiJT9m2lCyAQBAMD14q8RGXG/VLdfGrGATBAAAFwu/hqR5B7SFa84XQUAAAhBktMFAACAxEUjAgAAHEMjAgAAHEMjAgAAHEMjAgAAHBN/u2YQE36/VFoqHT4sDRkiZWdLyclOVwUA8BoaEYStuFiaO1c6ePD0vbQ06ZlnpLw85+oCAHgPUzMIS3GxlJ/fsgmRpEOHzP3iYmfqAgB4E40IQub3m5EQy2r7ucC9efPMcwAAhIJGBCErLW07EtKcZUkVFeY5AABCQSOCkB0+HN3nAACgEUHIhgyJ7nMAANCIIGTZ2WZ3jM8X/PM+n5Sebp4DACAUNCIIWXKy2aIrtW1GAtdFReSJAABCRyOCsOTlSStXSkOHtryflmbukyMCAAhHTBqR+vp6jRkzRj6fT1u2bInFS8JGeXlSebm0Zo30+uvmY1kZTQgAIHwxSVadP3++zj33XG3dujUWL4cYSE6WcnOdrgIA4HW2j4h88MEH+vOf/6wnn3zS7pcCAAAeY+uIyJEjRzR79my9++676tWrl50vBQAAPMi2RsSyLM2aNUsFBQUaP368ysvLO/2a+vp61dfXn7qura21qzwAAOACYU/NLF68WD6fr8NfmzZt0rPPPqva2lotXLgw5O9dWFio1NTUU7/S09PDLQ8AAHiIz7KCHWHWvmPHjunYsWMdPpORkaGf/OQn+s///E/5mgVO+P1+JScn6+abb9arr77a5uuCjYikp6erpqZGffv2DadMAADgkNraWqWmpob0/h12IxKqL774osXUSmVlpa666iqtXLlSEydOVFpaWqffI5z/EAAA4A7hvH/btkbkvPPOa3F95plnSpIuuOCCkJoQAAAQ/0hWBQAAjolJoJlk1o3YNAsEAAA8KmaNSCQCjQvbeAEA8I7A+3YoAxCubkSOHz8uSWzjBQDAg44fP67U1NQOn7Ft10w0NDY2qrKyUn369GmxDbgzgW2/FRUV7LYJAz+3yPBziww/t8jwc4scP7vIRPJzsyxLx48f17nnnqukpI6Xo7p6RCQpKalLO2z69u3LH7YI8HOLDD+3yPBziww/t8jxs4tMuD+3zkZCAtg1AwAAHEMjAgAAHBOXjUhKSooeeughpaSkOF2Kp/Bziww/t8jwc4sMP7fI8bOLjN0/N1cvVgUAAPEtLkdEAACAN9CIAAAAx9CIAAAAx9CIAAAAxyREI1JSUqKJEyeqZ8+eGjhwoPLy8pwuyTPq6+s1ZswY+Xw+bdmyxelyXK28vFw/+9nPlJmZqZ49e+qCCy7QQw89pIaGBqdLc6XnnntOmZmZ6tGjh7KyslRaWup0Sa5WWFioCRMmqE+fPho8eLBuuOEG7d271+myPKewsFA+n0/z5s1zuhTXO3TokG655RadddZZ6tWrl8aMGaPNmzdH/XXivhF5++23NXPmTN16663aunWr/uu//ks33XST02V5xvz583Xuuec6XYYn7NmzR42Njfrtb3+rnTt36umnn9bzzz+vBx54wOnSXOett97SvHnztGjRIn3++efKzs7WtGnT9MUXXzhdmmutW7dOd955pz755BOtXr1a3377raZOnaqvv/7a6dI8Y+PGjVqxYoVGjRrldCmuV11drSuvvFLdu3fXBx98oF27dmnp0qXq169f9F/MimMnT560hg4dar344otOl+JJ77//vjVs2DBr586dliTr888/d7okz/n1r39tZWZmOl2G61x22WVWQUFBi3vDhg2zfvnLXzpUkfdUVVVZkqx169Y5XYonHD9+3Lrooous1atXWzk5OdbcuXOdLsnVFixYYE2aNCkmrxXXIyKfffaZDh06pKSkJI0dO1ZDhgzRtGnTtHPnTqdLc70jR45o9uzZ+rd/+zf16tXL6XI8q6amRgMGDHC6DFdpaGjQ5s2bNXXq1Bb3p06dqo8//tihqrynpqZGkvjzFaI777xT11xzjb73ve85XYonvPfeexo/frxuvPFGDR48WGPHjtULL7xgy2vFdSNy4MABSdLixYv14IMPatWqVerfv79ycnL01VdfOVyde1mWpVmzZqmgoEDjx493uhzP2r9/v5599lkVFBQ4XYqrHDt2TH6/X2effXaL+2effbb+8Y9/OFSVt1iWpXvvvVeTJk3SpZde6nQ5rvfmm2/qs88+U2FhodOleMaBAwe0fPlyXXTRRfrTn/6kgoIC3X333Xrttdei/lqebEQWL14sn8/X4a9NmzapsbFRkrRo0SLNmDFDWVlZevnll+Xz+fSHP/zB4f+K2Av15/bss8+qtrZWCxcudLpkVwj159ZcZWWlrr76at144436+c9/7lDl7ubz+VpcW5bV5h6Cu+uuu7Rt2za98cYbTpfiehUVFZo7d65+//vfq0ePHk6X4xmNjY0aN26cHn/8cY0dO1a33367Zs+ereXLl0f9tbpF/TvGwF133aWf/OQnHT6TkZGh48ePS5JGjBhx6n5KSoq+853vJOSiuFB/bo8++qg++eSTNucKjB8/XjfffLNeffVVO8t0nVB/bgGVlZWaPHmyrrjiCq1YscLm6rxn4MCBSk5ObjP6UVVV1WaUBG3NmTNH7733ntavX6+0tDSny3G9zZs3q6qqSllZWafu+f1+rV+/XsuWLVN9fb2Sk5MdrNCdhgwZ0uK9U5KGDx+ut99+O+qv5clGZODAgRo4cGCnz2VlZSklJUV79+7VpEmTJEknT55UeXm5zj//fLvLdJ1Qf26/+c1v9Oijj566rqys1FVXXaW33npLEydOtLNEVwr15yaZ7W6TJ08+NfqWlOTJQUdbnXHGGcrKytLq1av1wx/+8NT91atXa/r06Q5W5m6WZWnOnDl65513tHbtWmVmZjpdkidMmTJF27dvb3Hv1ltv1bBhw7RgwQKakHZceeWVbbaH//3vf7flvdOTjUio+vbtq4KCAj300ENKT0/X+eefryeeeEKSdOONNzpcnXudd955La7PPPNMSdIFF1zAv8A6UFlZqdzcXJ133nl68skndfTo0VOfO+eccxyszH3uvfdezZw5U+PHjz81cvTFF1+wnqYDd955p15//XX98Y9/VJ8+fU6NKKWmpqpnz54OV+deffr0abOOpnfv3jrrrLNYX9OBe+65R9/97nf1+OOP60c/+pE+/fRTrVixwpZR3rhuRCTpiSeeULdu3TRz5kx98803mjhxoj766CP179/f6dIQZ/785z9r37592rdvX5uGzeKQ6xZ+/OMf68svv9SSJUt0+PBhXXrppXr//fcTcqQyVIG5+dzc3Bb3X375Zc2aNSv2BSGuTZgwQe+8844WLlyoJUuWKDMzU0VFRbr55puj/lo+i78hAQCAQ5jABgAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjqERAQAAjvn/AdD1+faZgetzAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 12: w = [ 0.5881308 1.38928183 -2.25755914]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAABAO0lEQVR4nO3de1yUdd7/8dcwKooCnk+AYmZrZWWpaaukoGlmdypptWqntbburDTrV7nufXfYyu1st22WtdnBsjbDst1OnlDS3EyzzFLLQyKieQRDBRmu3x9fkDMMMNdcw8z7+Xjw4JprLub6zENl3n6PLsuyLEREREQcEOZ0ASIiIhK6FERERETEMQoiIiIi4hgFEREREXGMgoiIiIg4RkFEREREHKMgIiIiIo5REBERERHHNHC6gKoUFBSwZ88eIiMjcblcTpcjIiIiXrAsi6NHj9KxY0fCwqpu8wjoILJnzx7i4uKcLkNERERqIT09ndjY2CqvCeggEhkZCZg3EhUV5XA1IiIi4o3s7Gzi4uJOfY5XJaCDSFF3TFRUlIKIiIhIPePNsAoNVhURERHHKIiIiIiIYxRERERExDEKIiIiIuIYBRERERFxjIKIiIiIOEZBRERERByjICIiIiKOURARERERxyiIiIiIiGMURERERMQxCiIiIiLiGAURERGRqmx+DtZNActyupKgFNC774qIiDjqx6fhm3vMcfuhEHOZs/UEIbWIiIiIVOSHx4tDSI//gY7Dna0nSKlFREREpKzvH4Xv/mKOz3kIzvlfZ+sJYgoiIiIiRSwLvn8YNj5oHp/7CPSY7mhJwU5BREREBEwI+e5/YdMj5nHPx+Gse52tKQQoiIiIiFgWfPtn+OFv5vH5T8OZU52tKUQoiIiISGizLNhwL/z4lHnc6zn43Z3O1hRCFERERCR0WRasvwu2PGce934ezpjkbE0hRkFERERCk2XB13fAT383j/u8CN1ucbamEKQgIiIioccqgLWT4OcXARf0fQW6/tHpqkKSgoiIiIQWqwC+ugW2vQK4oN9cOO16p6sKWQoiIiISOgo88NVNsP01cIVBvzegy3inqwppCiIiIhIaCvJhzY2wcx643PD7t6Dz1U5XFfIUREREJPgV5MOX18Iv74CrAfSfD53GOF2VoCAiIiLBruAkrB4Pu94zIWTAPyFutNNVSSEFERERCV6ePFh1DexeCGGNYMACiP0vp6uSEhREREQkOHly4YurIGMRhIVDQgrEXOZ0VVKGgoiIiAQfzwlIuxL2fAzuxpDwAXQc5nRVUgEFERERCS75xyEtGTI/BXcTGLgI2g9xuiqphIKIiIgEj/xjsHIU7F0M7ggY9G9oN8jpqqQKYXbfICMjgwkTJtCqVSsiIiLo2bMn69ats/u2IiISavJzYMXlJoQ0aAqJnyqE1AO2togcPnyY/v37k5iYyCeffELbtm3Ztm0bzZs3t/O2IiISak7+BitGwK8roUEkJH4Cbfo7XZV4wdYg8vjjjxMXF8fcuXNPnYuPj7fzliIiEmpOZkPqZbB/FTSMgsTPoHU/p6sSL9naNbNo0SJ69+7N2LFjadu2Leeffz4vv/yynbcUEZFQkpcFy4YVhpDmkLREIaSesTWIbN++ndmzZ9OtWzc+++wzbr31Vu68807eeOONCq/Pzc0lOzu71JeIiEiF8o7Askvg4Bpo1AIGL4VWfZyuSmrIZVmWZdeLN2rUiN69e7N69epT5+68807Wrl3Ll19+We76Bx98kIceeqjc+aysLKKiouwqU0RE6pvcQ7B8KBxaB+GtTEtIi55OVyWFsrOziY6O9urz29YWkQ4dOnDWWWeVOnfmmWeya9euCq+fNm0aWVlZp77S09PtLE9EROqjEwdg2eDCENIGBi9XCKnHbB2s2r9/f7Zs2VLq3NatW+ncuXOF14eHhxMeHm5nSSIiUp+d2G9CyJGN0LgdDF4G0WdV/3MSsGxtEbnrrrtYs2YNjz32GD///DNvv/02c+bMYdKkSXbeVkREgtHxfbA00YSQJh1gcKpCSBCwNYj06dOHhQsXMn/+fHr06MFf//pXZs6cyfjx4+28rYiIBJvjmbB0EGRtgiYdC0NId4eLEl+wdbBqXdVksIuIiASpYxmwNAmOboWIONMdE3m601VJFWry+a29ZkREJHDlpJvumN+2QdPOZmBqsy5OVyU+ZPteMyIiIrWS8wssGVgYQrqY7hiFkKCjFhEREQk8v+0wLSE5v0CzrqYlpGmc01WJDRREREQksBz92YwJOZYOkd1MCImIcboqsYmCiIiIBI7srSaEHM+AqO5mYGqTDk5XJTZSEBERkcCQtRmWJZmputFnQdIyaNLO6arEZgoiIiLivCObzIqpJ/ZB83PM3jGN2zpdlfiBgoiIiDjryEZYOhhy95s9YxIXQ+PWTlclfqIgIiIizjm8AZYNgdyD0OICSFoM4S2drkr8SEFERESccWi9CSF5h6FlH0j6DBq1cLoq8TMtaCYiIv53cK3pjsk7DK36mZYQhZCQpBYRERHxrwNrYPkwOJkNbfrDoI+hofYTC1VqEREREf/ZvwqWDTUhpO3FMOhThZAQpyAiIiL+8etK0xKSfxTaJRa2hDRzuipxmIKIiIjYb99yWD4c8nOg/RAY+C9o0NTpqiQAKIiIiIi99i6B1BHgOQYdLoWLF0GDCKerkgChICIiIvbZ8xms+C/wHIeOI+DihdCgidNVSQBREBEREXtkfAwrrwDPCYgdCQnvg7ux01VJgFEQERER39v9EaSNgoI8iB0N/f8J7nCnq5IApCAiIiK+lb4QvrgSCk5Cp7Ew4F1wN3K6KglQCiIiIuI7uxbAF1eZENL5Gvj92xDW0OmqJIApiIiIiG/sfAdWXQNWPsRPgIvehDAt4C1V098QERGpmMcDaWmQmQkdOkBCArjdFV+74y1Ycx1YBXDaDXDhKxBWybUiJSiIiIhIeSkpMHky7N5dfC42Fp57DpKTS1+7/Q1YcwNgQdeb4MKXwKUGd/GO/qaIiEhpKSkwZkzpEAKQkWHOp6QUn9v2anEIOf0WhRCpMf1tERGRYh6PaQmxrPLPFZ2bMsVc9/Mc+M9EwIJuk6DPCwohUmPqmhERkWJpaeVbQkqyLEhPh0/vhqznzLnfTYYLngWXyz81SlBRdBURkWKZmdVfM4ziENL9boUQqRMFERERKdahQ9XPDweuKzw+6344/0mFEKkTBRERESmWkGBmx1QULi4HJhQen/VnOO8xhRCpMwUREREp5nabKbpQOmRcAfyh8LjB1dDzUYUQ8QkFERERKS05GRYsgJiYwsfA1YXPNfgDXPWOU5VJEFIQERGR8pKTYccO+PBauLLw3LmPwVVvO1qWBB9N3xURkfIsC77/H/jtTfP4/KfgzLudrUmCkoKIiIiUZlmw4V748Snz+IKZ0H2yoyVJ8FIQERGRYpYF6++CLYUDVns/D2dMcrYmCWoKIiIiYlgWfH0H/PR387jPi9DtFmdrkqCnICIiImAVwNpJ8POLgAv6vgxdJzpdlYQABRERkVBnFcBXt8C2VwAX9HsVTrvB6aokRCiIiIiEsgIPfHUTbH/N7Jzb73XoMqHaHxPxFQUREZFQVeCBNTfAznngcsNF8yD+GqerkhCjICIiEooK8uHL6+CX+eBqAP3fhk5jna5KQpCCiIhIqCk4CavHw673TAgZ8E+IG+10VRKiFEREREKJJw9WXQO7F0JYQxiwAGKvcLoqCWEKIiIiocKTC6uuht0fQlgjSEiBmBFOVyUhTkFERCQUeE5A2hjY828IC4eLP4COlzpdlYj/dt+dMWMGLpeLKVOm+OuWIiICkH8cVo42IcTdGAb9SyFEAoZfWkTWrl3LnDlzOPfcc/1xOxERKZJ/DFaOhL1LwB1hQki7RKerEjnF9haR3377jfHjx/Pyyy/TokULu28nIiJF8nNgxeUmhDRoComfKIRIwLE9iEyaNIkRI0YwZMgQu28lIiJFTh6F1Mtg33JoEAmJn0Hbi52uSqQcW7tm3nnnHdavX8/atWu9uj43N5fc3NxTj7Ozs+0qTUQkeJ3MNiFk/ypoGGVCSOt+TlclUiHbWkTS09OZPHky8+bNo3Hjxl79zIwZM4iOjj71FRcXZ1d5IiLBKS8Llg0rDCHNIWmJQogENJdlWZYdL/zBBx8wevRo3G73qXMejweXy0VYWBi5ubmlnoOKW0Ti4uLIysoiKirKjjJFRIJH3mETQg6thUYtIGkxtOzldFUSgrKzs4mOjvbq89u2rpnBgwezcePGUuduvPFGunfvzn333VcuhACEh4cTHh5uV0kiIsEr9xAsuwQOr4fwVqYlpEVPp6sSqZZtQSQyMpIePXqUOte0aVNatWpV7ryIiNTBiQOw/BI4vAHC28DgpdD8HKerEvGKVlYVEanPTvwKy4bAkY3QuB0kLYXmZztdlYjX/BpEUlNT/Xk7EZHgdnwfLEuCrB+gSQdIWgbR3Z2uSqRG1CIiIlIfHc+EpUmQvRmaxMDgZRB1htNVidSYgoiISH1zLMOEkKNbISIOBi+HyK5OVyVSKwoiIiL1SU46LE2E37ZBRCcYshyaneZ0VSK1piAiIlJf5PwCSxIhZwc07WJCSNPOTlclUicKIiIi9cFv2013TM4v0Kyr6Y5pqtWnpf5TEBERCXRHfzYh5Fg6RHYzISQixumqRHxCQUREJJBlbzUh5HgGRHU3s2OadHC6KhGfURAREQlEHg8sewv2TwaOQNRZhSGkndOVifiUbbvviohILaWkQN8Y+Ol64AjsAu45DJ+scrgwEd9TEBER8TePB1JTYf58893jKX4uJQWmXAkT90FzYCfwKLB1L4wZY54XCSIKIiIi/pSSAvHxkJgI48aZ7/Hx5rzHA3/7b5gORAM7gMeA3wDLMj8/ZUrp4CJSzymIiIj4S0qKadXYvbv0+YwMc/6pSTDxV4gEtmFCSE6J6ywL0tMhLc1/NYvYTINVRUT8weOByZOLWzZKsizoCrSaAxHAT8DjwPFKXisz07YyRfxNQURExE4ej2nBWLq0fEtIkdOB+4AIC7YAT1J5CAHooOm7EjwURERE7JKSYlpBKgsgAN0wIaQJ8CMmhORW8ZpxcZCQ4MsqRRylICIiYoeUFLjyyqqv+R3w/zAhZBPwNFWHEICnnwa32xcVigQEBREREV/zeOBPf6r6mjOBe4DGwEbgGSDPi9du06au1YkEFAURERFfe/RROHiw8ufPBu4GwoFvgZl4F0JAA1Ul6Gj6roiIL3k88NxzlT9/DqYlJBz4BngWaBcHDz3k3etroKoEGQURERFf8Xhg1iw4dKji588DpgKNgHVAk/vh8+WwYwdMnw6xseByVfyzLpcGqkpQUteMiIgvVDdD5nxgMtAQWAu81QIyHyk98PS558zCZi5X6fVGisLJzJkaqCpBRy0iIiJ1VdmKqUV6AVMwIeQ/wCzg9inlQ0VyMixYADExpc/Hxprzyck+LlzEeS7LqmiZv8CQnZ1NdHQ0WVlZREVFOV2OiEh5Ho/ZK6ayEHIhMAnT/rwamA20aAX79lXeulG0CFpmphkTkpCglhCpV2ry+a2uGRGRukhLqzyE9ANuA9zAF8BLgOWCOXOqDhZuNwwa5OtKRQKSumZEROqisum0v8e0hLiBlcCLQEyculhEylCLiIhIXVQ0nTYB+BPmv3rLgX8AzzwLd9yhLhaRMtQiIiJSFwkJpafdDqQ4hCwFXgVi4xRCRCqhICIiUhdud/ECZkkUh5DPgbmYMSGaditSKQUREZG6Sk6Gd26CiYWPPwFex7SEaEyISJU0RkREpK42Pwf5L5vjpmNh+CiY2FHTbkW8oCAiIlIXPz4D39xtjs+6D86bUfky7SJSjoKIiEht/fA4bLjfHJ89Hc5+EFas0EJkIjWgICIiUhvfPwrf/cUcn/MgbO0Bl3cpvbhZbKwZyKoxIiKVUhAREalO2SXXWyyHTQ+b5859BLaeCWPHlN6oDiAjw+xBowGrIpVSEBERqUrZXXXHAKMLn+v5N/jdPTA8vnwIAXPO5YIpU2DkSHXTiFRA03dFRCpTdlfdqykOIW8Bm7tVvdcMmDCSnm6uE5FyFERERCri8ZiWkKKWjnHAFYXPvQF8UtjSkZHh3etVtieNSIhT14yISEVKtnRMAIYXnn8NWAxQ2NKxf793r1fRnjQiohYREZEKFbVgXE9xCPkHhSGkhDZtSu81U5bLBXFxZiqviJSjICIiUpH27eCPwFCgAJgDLKvgupiY4r1myoaRosfaa0akUgoiIiJlWQXQ+C0YTHEIWVHmmpItHcnJZopuTEzpa2JjNXVXpBoaIyIiUlKBB766CXa8BoTBSwWwygWUmJ5bUUtHcrKZoltyvRGtrCpSLQUREZEiBfmw5kbYOQ9cbrhoHjRuBDsnl18xdebM8i0dbjcMGuTPikXqPQUREREwIeTLa+GXd0wI6T8fOo2FeNTSIWIjBRERkYKTsHo87HoPXA1gwD8hbnTx82rpELGNgoiIhIay+8UUtWp48mDVNbB7IYQ1hAELIPaK6l9PRHzC1lkzM2bMoE+fPkRGRtK2bVtGjRrFli1b7LyliEh5KSkQHw+JiTBunPkeHw/vvwtfjC0MIY0gYaFCiIif2RpEVqxYwaRJk1izZg2LFy8mPz+foUOHkpOTY+dtRSTUeDyQmgrz55vvHk/xc2X3iyny6274zzWQsQjCwuHiRRAzwp9ViwjgsqyKtoy0x/79+2nbti0rVqzg4osvrvb67OxsoqOjycrKIioqyg8Viki9U3Z3XDCzWp57zgwyjY8vH0IaAncB5wF5LrjkE4gZ5r+aRYJcTT6//TpGJCsrC4CWLVtW+Hxubi65ubmnHmdnZ/ulLhGpp4paO8r+fyojw5x/8MHyIaQRMBU4BzgBPG1BfDiUWYtMRPzDbyurWpbF1KlTGTBgAD169KjwmhkzZhAdHX3qKy4uzl/liUh9U3Z33JKKzhUtvV4kHLiH4hDyJPAD2hlXxEF+CyK333473333HfPnz6/0mmnTppGVlXXqKz093V/liUh9U3J33IpYFhw6VPw4HPh/wNnAceBxYHPhc9oZV8QxfumaueOOO1i0aBErV64kNja20uvCw8MJDw/3R0kiUt9524rRsiWcOGRaQn4HHMOEkJ8xS7XHxmpnXBEH2RpELMvijjvuYOHChaSmptKlSxc7bycioaBoPZAffvDu+rtuAc8M6AbkAH8DtqOdcUUChK1BZNKkSbz99tt8+OGHREZGsnfvXgCio6Np0qSJnbcWkWDj8cCjj5pxHyW7XCrjcsHpHaH3YjgEHHPBYxbsLHy+sv1iRMSvbJ2+6yr6H0cZc+fO5YYbbqj25zV9V0QAMzvmT3+Cgwe9u97lgqYWzOkK1jYIbwUDP4Pvj2q/GBE/CJjpu35cokRE6rvKlmBPSYErr6zZa53RAR4ILwwhbWDwUmh+DgyypXIRqQPtNSMizqtsUbJnnoGpU71/nb/8BQb1ghP/C1kboXE7SFoKzc/2fc0i4hMKIiLirKoWJbvqqpq91pkxcOIvkLUJmnSApGUQ3d13tYqIzymIiIhzvFmUzFvNgQYzIGsXNOkIg5dD1Bm+qFJEbKQgIiLOqW5RMm+1AB5oAPm7ICLWhJDI0+v+uiJiOwUREXGOL5ZWbwn8BWiTDxGdYMhyaHZa3V9XRPzCb0u8i4iUU5Ol1StaDqAV8EAYtAOadoEhKxRCROoZBRERcU5CgpkdU8maQ7hcEBcH770HMWW2x+0WDU83h9YF0KwrDEmFZvE2FywivqauGRFxjtttVkodM8aEjpIDVEsuwZ6cDFdcAS+8ANu2wRnREPsGHE+HyG4weJkZGyIi9Y5aRETEWcnJsGBB+RaP2FhzPjnZTPHt2hXuugveex5cj5oQ4oox3TEKISL1llpERMR5yckwcmTlK6sWrTPSAZiOmSWzG5iRAeFfar8YkXrM1r1m6kp7zYiEOI8H4uPNFN8Y4M+Y9UJ2ATOAoy7TcrJjh/aNEQkgNfn8VteMiASuonVG4jAtIc2BX4BHgWxMK0l6urlOROoldc2ISODKzIROmJaQSGAHpiUkp4LrRKReUhARkcDV6mhxCNkG/A04VsF1NVmPREQCioKIiASmg2sh6z4TQn4CHgeOl7nGVThGJCHB//WJiE9ojIiIBJ4Da2DZEDh5BFzd4QngRJlFz0quM6KBqiL1loKIiASW/atg2VA4mQ1tL4Yxa+HN96teZ0RE6i11zYhI4Ph1JaReBvk50C4RBn4EDZpWvc6IiNRrCiIiEhj2LYfUy8FzDNoPgYs/hAYRxc+73TBokGPliYg9FERExLfy8or3hOnaFW67DRo1qvpn9i6BFVeA5zh0GAYJC6FBE//UKyKOUhAREd+591545hmzImqRe+6BqVPhiScq/pk9n0HaKPCcgI6XQcL74G7sl3JFxHkKIiLiG/feC08+Wf68x1N8vmwYyfgY0kZDQR7EXAED/gnucPtrFZGAob1mRKTu8vIgIqJ0S0hZbjccO1bcTbP7I/jiSig4CbGjof874K6mC0dE6gXtNSMi/vXCC1WHEDDPv/CCOU5fWBxCOo2FAe8qhIiEKAUREam7bdu8v27XAvjiKhNCOl8Dv38bwhraW5+IBCwFERGpu65dvbvurCxYdQ1Y+RA/AS56E8I0VE0klCmIiEjd3XZb9YuLDXBB9FtgeeC0G6DfawohIqIgIiI15PFAairMn2++ezxmAOrUqZX/TAJwqwUUQNeJ0PcfEKZVUUVE03dFpCZSUmDyZNi9u/hcbCw891zx1Nyy64gkumCiBS7g9Fugzwvg0v+BRMTQ9F0R8U5KCowZA2V/ZRTtglu0AV3JlVXP3gdR75nnu02C3rOKr6+Cx6NtZUTqs5p8fiuIiEj1PB6Ijy/dElKSy2VaRnbsKE4MW/8OX99ujn83GS541qsQUlWjizbaFakftI6IiPhWamrlIQRMK0l6umnGANj8XHEI6X53jULImDHlb5WRYc6npNSufBEJXAoiIlK1lBS46irvrs3MhB+fgfVTzOOz7oPzn/S6O2by5PI9P1B8bsqU6tdNE5H6RUFERCpX1ERx6JB31zdLhW/uLnwwCg4Pg4ICr340La1mjS4iEhwURESkYlU1UZTlcsF10XB0jnn8PjD+A0hKMmNLvOhTycz0rixvrxOR+kFBREQqVl0TRUmjLRiWZY7fA0rmDi8HeHTo4N2tvL1OROoHBRERqZi3TQ/XNoErC4/fAT4o87yXAzwSEszsmMqGk7hcEBdnrhOR4KEgIiIV86bp4Wrg0uPFjyubXuvFAA+320zRhfJhpOjxzJlaT0Qk2CiIiEjFqmuiGAdcUfTgWsgDGgFzqnjNalpZkpPNumgxMaXPx8YWr5cmIsFFQUREKlZVE8UEYEThce/noeMf4cbCx02B5yt5TS9aWZKTYedOWL4c3n7bfP/5Z2jZsvT2NiISHBRERKRyFTVRXAcMLzzu8yKcMam49WRC4fkWwLMlXqeGAzzcbhg0CP7wBzNzuGtXSEyEcePMdy8n4ohIPaAgIiJVK2qiWLYU3hoMwwBccOHL0O0Wc82p1hNXcRhpCzxBnQZ4aKVVkeCnICIi1QtzQcR8YCnggn5z4fSbSl9zqvUkFsYXnosBnmhQqwEeWmlVJDQoiIhI1Qo88J+JsO0VcIXBRW/AaddXfG3JAR68Zc51PAlNn6zxbbXSqkhoUBARkcoVeGDNDbD9NXC54aK3oMuEqn+maIDHuHHwh8LmioNrYElijW6tlVZFQoOCiIhUrCAfvrwWds4DVwPoPx/ir6nZa7jC4Jp8c/xrKofeH+b1zBettCoSGvwSRF544QW6dOlC48aN6dWrF2lqSxUJbAUnYfV4+GW+CSED/gmdxtbutcLcLAw/CUDL3M+J+HqkVzNftNKqSGiwPYi8++67TJkyhenTp/PNN9+QkJDA8OHD2bVrl923FpHa8OTBF1fDrn9CWENIeB/iRtf65VJS4MqxDWh4XR4AI3st4t07rqp25otWWhUJDS7L8mZrzdrr27cvF1xwAbNnzz517swzz2TUqFHMmDGjyp/Nzs4mOjqarKwsoqKi7CxTRAA8ufDFVZCxCMIaQUIKxIyo/ucqezmPafkoGnTa0J1H3hvhALz5xQSuf/FNYmNhx47KA0VKipk9U3LgalycCSFaaVUkMNXk89vWFpG8vDzWrVvH0KFDS50fOnQoq1evLnd9bm4u2dnZpb5ExE88JyDtysIQEg4XL6pTCIHyM19OehoRfv0JAK4dMI+Xb5pY7cyXilZa3bFDIUQkWDSw88UPHDiAx+OhXbt2pc63a9eOvXv3lrt+xowZPPTQQ3aWJCIVyT8OacmQ+Sm4G8PAj6D9kDq/bEUzWvLyw2lywzGOvxbBxEGvcuJkYzIz/17l6xRNxBGR4OOXwaquMh28lmWVOwcwbdo0srKyTn2lp6f7ozyR0JZ/DFaOLAwhETDw3z4JIVD5jJYTJ5sQcWMOAJMueYEBEXf55H4iUv/YGkRat26N2+0u1/rx66+/lmslAQgPDycqKqrUl4jYKD8HVvwX7F0MDZpC4ifQPslnL1/VzJfjeRFETjwKQFzOTPjmPp/dV0TqD1uDSKNGjejVqxeLFy8udX7x4sX8/ve/t/PWIlKdk79B6gjYtwwaNIPEz6DtxT69RXUzX3Jym7EoPMuc+PEJ+PZ/fHp/EQl8tnfNTJ06lVdeeYVXX32VH3/8kbvuuotdu3Zx66232n1rEanMyaOQOhx+XQENoyDxc2jT35ZbVbSBL5iWkgUL4Ioro2DMYXNy0yPw/SO21CEigcnWwaoAV199NQcPHuThhx8mMzOTHj168PHHH9O5c2e7by0iFcnLMiHkwJfQsLlpCWl9oa23TE6GkSPN7JjMTDN2JCGhxJTdRs3hyoPwfiv47n/M1OGz7rW1JhEJDLavI1IXWkdExMfyjsDyYXDwK2jUApIWQ8teTldV7MQBSGljji94BrprEKtIfRQw64iISADJPQTLhpgQEt4KBi8LqBDi8UDqmtYspHBw+/qpsLXqab0iUv/Z3jUjIgEg96AJIYc3QHgbGLwUmp/jdFWnlF49tR3tm+8h8+8d4evbzTLzp//J6RJFxCZqEREJdif2w9JEE0Iat4PBywMuhIwZU3oF1r1HOhB3Z+E6Ql/dAttfc6Q2EbGfgohIMDu+z4SQIxuhSQcYnArNz3a6qlM8HtMSUtFItd0HY4mfvNM8WHMj7HjLr7WJiH8oiIgEq+OZsHQQZG2CJh1NCInu7nBRpZXdi6asXw505rQp28yDLyfAL//0T2Ei4jcKIiLB6FgGLBkE2ZshIg6GrISoM5yuqpyK9qIpa8f+0/iIrebBqqshfaG9RYmIXymIiASbnHRYMhCOboWmnWHICojs6nRVFapsL5qyIjt2gxE/mgdpybD7I/uKEhG/UhARCSY5v5gQ8ts2aNrFdMc06+J0VZWqai8aMOfj4sx1RHeHy743T6y8AvZ86rc6RcQ+CiIiweK37SaE5OyAZl1NS0izeKerqlJ1e9EAzJxZYgXW5mfD8A3mOHU47F3qhypFxE4KIiLB4OjPZkxIzi8Q2c2EkKZxTlfller2oklOLvMDLc6DS782x8uGwL4VfqlTROyhJd5F6rvsrbA0CY5nQFR3s2JqEy8HXwQQj6eKvWgqcuA/8Hk/c3zJF7Zt2iciNVeTz28FEZH6LGszLEsyU3Wjz4KkpdCkvV9uXePgYMd99q+CxQPM8dA10Lqv7wsQkRrTXjMioeDIJrNOyPFMaH4OnkHLSf1Pe+bPh9RU8wFul5QUiI+HxEQYN858j4835/16nzb9zYBcMK0jh9b5tgARsZ2CiEh9dGSjWTH1xD5ofh7/Or6M+O5tbQ8GUPGS7AAZGea8r+7p9X3aDYSkJeb4095w+FvfFCAifqGuGZH65vC3sGyw2ciuxQV8dGwxI8e2LLdMetGsk7IDPuvSpeLxmIBT2WqoLpcZZLpjR926aWp1nz2fmpk0AJdthOY9al+AiNSJumZEAozHY7pL6txtcmi9GZiaexBa9sEzaAm3TSkfQqB4/5YpU4rvV9culeqWZLcsSE8319VFre7T8VIYWLjQ2cfnmPEzIhLwFEREbOaz8RQH18LSwZB3CFr1g6TFpP2nhdcf2L7oUvFmSfaaXOfz+8RcDgnvm+N/nwnZP9WtEBGxnYKIiI18Np7iwH9g2SVw8ogZoJn0GTSK9voDOyOj8l1uK2o5qYy3S7J7e50t94lLhv7vmuN/nWEWehORgKUgImKTqra4r8mHP/tXFYaQLGiTAIM+gYamz9XbD+z9+33TpVKjJdnroM736XwVXDTPHC/qahZ6E5GApCAiYhOfjKf4dSUsHwb5R6FdIiR+Ag0jTz2dkACtWlVdR6tW0KaNdzVX18JS4yXZa8kn9+kyHvrNNccfxsOxKv4wRMQxCiIiNqnzeIp9qbB8OOTnQPshMPBf0KBprWpp7+UaZ960sNR4SfZa8sl9TrsBLnzJHH8QZ9ZcEZGA0sDpAkSCVZ3GOexdAiuuAM9x6DAMEhZCgyblLktLg4MHq379oudjY81YkYq6ioqmw3rbpZKcDCNH2r+yqk/uc/qfoOAkfH07LOwIo/dCk3a+LVREak1BRMQmReMcavzhv+czSBsFnhPQ8TIzC8TduMJ7eNvq8uuvpqtjzBhz35L11LZLxe2GQYO8v762fHKfMyaZMLL+LljYHpL3Q+PWvihPROpIXTMiNqnVOIeMj2HlSBNCYv4LElIqDSFQs1YXf3WpBKzuU6Dn4+Y4pQ3kHnK0HBExtLKqiM1SUszsmZIDV+PiTAgp9eG/+yP4YgwU5EHsKDMF1d2oytcuWoG0ulaXkiuQ+muzuoD1/SPw3f+Y4zFHoFG0o+WIBCPtvisSYKr98E9fCKuuNt0HcWOg/9sQ1tCr1y5aqwQq7nIJidaOmvruf+H7v5rjsVlw8Cv44mo48x44e5qztYkEAQURER/wW8vBrgWw6g9g5UPna+CiNyGsZsO3vG51qUDItpBsuB9+KOyqIQwoAHcTGLUbwls6WZlIvacgIlJHFX2wx8aaMR8+bV345V1YPR4sD8SPh36v1TiEFKlNoPDb+wxUn10EB9eUOBEGPabDuQ87VpJIMFAQEamDoq4Ob3ezrbUdb8Ga68AqgC7XQ99/QJj9TRFFgeXDD02LSVkh06WzexGkXWlCICX+sBs0g1Hp0Ki5U5WJ1HvafVeklny2LHt1tr8OX15rQkjXidDvVb+EkJIb8FUUQsDH7zOQbfk/0x1GmT/s/GOwZZYjJYmEIgURkRL8ss39tldhzY2ABaffAhfOAZf9/xQr24CvIj55n4Gu10wzRRrAVTIEFsDmp+DkUSeqEgk5CiIiJdi+zf3Pc+A/EwELuk2CPrP9EkKqaumpSk3ep8cDqakwf775HvCtKc17wMBFMGytWUIfigPJyaPw0wvO1SYSQhREREqwdZv7rS/AV7eY4zPuhN6zKt9etgq1+cCvrqWnMt6+z5JdPuPGme/x8eZ8wGvVGxI/hUtWQ9uLC09asOlvZp8fEbGVgohICbZtc7/l/+DrSea4+1TTLVCLEOLtB37ZsJKRUbP71OR9Vtblk5FhzteLMALQ5iIYvAyGrIA2A8z4neN7na5KJOhp1oxIGT5fIGzzs7B+qjk+6z44b0atQ4g3s3kqmpLbpg3s3+/dfWryPotWdq2staWilV3rBcuCk0egUQunKxGplzRrRqQOfLonyw9PFIeQs6fXOoR4O5tnwYKKWycOHPD+XjV5n34Z3OsEl0shRMRPtPuuSAV8sv38psfg2+nmuMcDcM4DtQoh4P0H/m23VR1WqjJlinnPNXmftg/uFZGgpyAiUok6bT+/8WHY+IA5Pvev0OMvdarF2w9yb7pfWrcu3ULi7VLwFbF1cK+IhAQFERFfsiwTQIo2VDtvBpx9f51f1pcf5DNnmm4nX+wtUzS4t7rdf2s8uFdEQoaCiIivWJbpivlhhnl8/pNmN1cf8OYDv3Vr71pEYmLq0NJThttt9qUZM8bUUNHg3pkz69lAVRHxKw1WFfEFy4IN9xWHkAue9VkIgeIPfCg/zKTo8d//btPU42r4dHCviIQctYiI1JVlwfq7Ycuz5nHv5+GMST6/TdEHfkW75RaN8XC7nWmd8MngXhEJSVpHRKQuLAvWTYathZuk9ZkN3W619ZZFu+dW9oFf0ToidRmQKiJSUzX5/FYQEaktqwC+vh1+mg24zOZ1p9/kdFVA9WFFRMRONfn8VteMSG1YBfDVrbDtZcAF/V6F025wuqpT6jT1WETEjxRERGqqwANf3Qzb55qdc/u9Dl0mOF2ViEi9ZNusmZ07dzJx4kS6dOlCkyZN6Nq1Kw888AB5eXl23VLEfgUeWHNjYQhxw0XzFEJEROrAthaRzZs3U1BQwEsvvcTpp5/O999/z80330xOTg5PPfWUXbcVsU9BPnx5Pfzytgkh/edDp7FOVyUiUq/5dbDqk08+yezZs9m+fbtX12uwqgSMgpOwegLs+ie4GsCAdyFOU1BERCoSsINVs7KyaNmyZaXP5+bmkpube+pxdna2P8oSqZonD1b/AdJTIKwhDHgPYkc6XVW1NHNGROoDv62sum3bNmbNmsWtt1a+xsKMGTOIjo4+9RUXF+ev8kQq5smFVVcVhpBGkLCwXoSQlBSIj4fERBg3znyPjzfnRUQCSY2DyIMPPojL5ary6+uvvy71M3v27OHSSy9l7Nix3HRT5essTJs2jaysrFNf6enpNX9HIr7iOQFpV8LuDyEsHC7+EGJGOF1VtVJSzOqqJRc0A7NPzZgxCiMiElhqPEbkwIEDHCi5h3gF4uPjady4MWBCSGJiIn379uW1114jLMz77KMxIuKY/OOQlgyZn4K7MVy8CDpc4nRV1fJ4TMtH2RBSpGg33B071E0jIvaxdYxI69atad26tVfXZmRkkJiYSK9evZg7d26NQoiIY/KPwcpRsHcxuCNg4EfQPsnpqrySllZ5CAGzIn16urlOC56JSCCwbbDqnj17GDRoEJ06deKpp55if4n9ydu3b2/XbUXqJj8HVlwB+5ZBg6Yw8N/QbqDTVXktM9O314mI2M22IPL555/z888/8/PPPxMbG1vquQDe3kZC2cnfYMUI+HUlNGgGgz6BtgOcrqpGOnTw7XUiInbTpnciACePQupw2L8KGkbBoE+hzUVOV1VjRWNEMjJMN0xZGiMiIv5Qk89vDdoQycuCZUMLQ0g0JC6ulyEETLh47jlz7HKVfq7o8cyZCiEiEjgURCS05R2BZZfAwTXQqAUkLYHWF5a6xOOB1FSYP99893icKNR7ycmwYAHExJQ+HxtrzidrQVgRCSDafVdCV+4hWD4UDq2D8FYmhLToWeqSlBSYPLn0TJTYWNPqEMgf6MnJMHKkVlYVkcCnMSISmk4cgOWXwOENEN4akpZCi3NLXVK0MFjZfyFFXRxqXRARqZjGiIhU5cR+WJZkQkjjtjA4tVwI8XhMS0hFMb3o3JQpgd9NIyIS6BREJLQc3wdLE+HIRmjc3oSQ5meXu6wmC4OJiEjtaYyIhI7jmbA0CbI3Q5OOMHgZRP2uwku1MJiIiH8oiEhoOJZhQsjRrRARC4OXQ+TplV6uhcFERPxDXTMS/HLSYcmgwhDSCYasqDKEgJlhEhtbfi2OIi4XxMWZ60REpPYURCS45fwCSwbCbz9D03gYsgJPk9OqXRdEC4OJiPiHgogEr992mBCSswOadYUhK0j5PJ74eEhMhHHjzPf4eDNVtywtDCYiYj+tIyLB6eg2MzvmWDpEdoPBy0n5NKZW64J4PFoYTESkJmry+a0gIsEne6sZmHo8A6K6w+BleBp1ID6+8im52gxORMR3tKCZhK6szbB0kAkh0WeZ2TFNOmhdEBGRAKXpuxI8sn4wLSEn9kHzc8zeMY3bAloXREQkUCmISHA4shGWDobc/dD8vMIQ0vrU01oXREQkMKlrRuq/w9+agam5+6HFBWbF1BIhBLQuiIhIoFIQkfrt0HrTHZN7EFr2hsFLILxlucu0LoiISGBSEJH66+Ba0x2Tdwha9YWkxdCoRaWXa10QEZHAozEiUj8dWAPLh8HJbGj9e0j8BBpWP8U7ORlGjtS6ICIigUJBROqf/ath+aWQfxTaJMCgf0PDSK9/3O2GQYPsK09ERLynrhmpX35NMy0h+Ueh7aDClhDvQ4iIiAQWBRGpP/alFraE/Abth5iWkAZNna5KRETqQEFE6oe9SyH1MvAcg/ZD4eJF0CDC6apERKSOFEQk8GV+DisuB89x6HgZDPwQGjRxuioREfEBBREJbBkfw4orwHMCYv4LElLA3djpqkRExEcURCRw7f4I0kZDQS7EjoIBC8Ad7nRVIiLiQwoiEpjSP4AvroSCPIgbAwP+Ce5GTlclIiI+piAigWfX+/DFWCg4CZ2vgf7zIayh01WJiIgNFEQksPzyLqy6Gqx8iB8PF70JYVp3T0QkWCmISODY+TasHgeWB7pcD/1eVwgREQlyCiISGLa/AV9eC1YBdJ0I/V6FMG0AIyIS7BRExHnbXoU1N5gQcvotcOEccOmvpohIKNBve3HWz3PgPxMBC7pNgj6zFUJEREKIfuOLc7a+AF/dYo5/Nxl6zwKXy9maRETErxRExBlbZsHXk8xx97vhgmcVQkREQpCCiPjfj8/AujvN8Vn3wflPKoSIiIQoBRHxrx+egG/uNsdn/xnOm6EQIiISwhRExH82PQYb7jPHPR6Acx9RCBERCXFaLUr8Y+PDsPEBc3zuX6HHX2y7lccDaWmQmQkdOkBCAri1JImISEBSEBF7WZYJIN//1Tw+bwacfb9tt0tJgcmTYffu4nOxsfDcc5CcbNttRUSkltQ1I/axLPh2enEIOf9J20PImDGlQwhARoY5n5Ji261FRKSWFETEHpZlxoP8MMM8vuBZOPMe227n8ZiWEMuquBSAKVPMdSIiEjgURMT3LAvWT4UfnzSPez8P3afYesu0tPItIWVLSk8314mISODQGBHxLcsya4Rsfd487jMbut1q+20zM317nYiI+IeCiPiOVQBf3w4/zQZcZvO602/yy607dPDtdSIi4h9+6ZrJzc2lZ8+euFwuNmzY4I9bir9ZBWbfmKIQ0u9Vv4UQMFN0Y2MrX5bE5YK4OHOdiIgEDr8EkXvvvZeOHTv641bihAKP2UF32ytm59yL3oDTbvBrCW63maIL5cNI0eOZM7WeiIhIoLE9iHzyySd8/vnnPPXUU3bfSpxQ4IE1N8L218DlhovmQZcJjpSSnAwLFkBMTOnzsbHmvNYREREJPLaOEdm3bx8333wzH3zwAREREdVen5ubS25u7qnH2dnZdpYndVWQD19eB7/MNyGk/3zoNNbRkpKTYeRIrawqIlJf2BZELMvihhtu4NZbb6V3797s3Lmz2p+ZMWMGDz30kF0liS8VnITV42HXe+BqAAPehbjAaHJwu2HQIKerEBERb9S4a+bBBx/E5XJV+fX1118za9YssrOzmTZtmtevPW3aNLKysk59paen17Q88QdPHqy6xoSQsIaQsCBgQoiIiNQvLsuqaC3Kyh04cIADBw5UeU18fDzXXHMNH330Ea4SIwc9Hg9ut5vx48fz+uuvV3uv7OxsoqOjycrKIioqqiZlil08ubDqatj9IYQ1goQUiBnhdFUiIhJAavL5XeMg4q1du3aVGuOxZ88ehg0bxoIFC+jbty+xsbHVvoaCSIDxnIC0MbDn3xAWDhd/AB0vdboqEREJMDX5/LZtjEinTp1KPW7WrBkAXbt29SqESIDxnICVoyHzU3A3hoEfQfshTlclIiL1nFZWlerlH4OVo2DvYnBHFIaQJKerEhGRIOC3IBIfH49NvUBip/wcWHEF7FsGDZrCoI+h7cVOVyUiIkFCLSJSuZO/wYoR8OtKaNAMBn0CbQc4XZWIiAQRBRGp2MmjkDoc9q+ChlEw6FNoc5HTVYmISJBREJHy8rJg+aVwcA00jIbEz6H1hU5XJSIiQUhBRErLOwLLhsKhtdCoBSQthpa9nK5KRESClIKIFMs9BMuHwqF1EN4KkpZAi55OVyUiIkFMQUSMEwdg+SVweAOEt4akpdDiXKerEhGRIKcgInBiPywbDEc2QuO2JoQ07+F0VSIiEgIURELd8X0mhGRtgsbtYfAyiD7T6apERCREKIiEsuOZsDQJsjdDk44mhET9zumqREQkhCiIhKpjGSaEHN0KEbEweDlEnu50VSIiEmIUREJRTjosTYTftkFEJxiyHJqd5nRVIiISghREQk3OL7AkEXJ2QNN40xLSLN7pqkREJEQpiISS33aalpCcndCsqxkT0rST01WJiEgIUxAJFUe3mRByLB0iu5kQEhHrdFUiIhLiFERCQfZPJoQczzCzYpKWQURHp6sSERFREAl62VsKQ0gmRJ9lFitr0t7pqkRERAAFkeCW9YOZontiH0T3gMFLzcqpIiIiAUJBJFgd+d6EkNz90Pw8s4Fd49ZOVyUiIlKKgkgwOvytWbY99yC0uACSFkN4S6erEhERKSfM6QLExw6tL2wJOQgt+8DgJQohIiISsBREgkmBB1aPh7xD0KqfaQlp1MLpqkRERCqlIBJMwtwwYAHEjoKkz6BRtNMViYiIVEljRIJN87Ph4oVOVyEiIuIVtYiIiIiIYxRERERExDEKIiIiIuIYBRERERFxjIKIiIiIOEZBRERERByjICIiIiKOURARERERxyiIiIiIiGMURERERMQxCiIiIiLiGAURERERcYyCiIiIiDgmoHfftSwLgOzsbIcrEREREW8VfW4XfY5XJaCDyNGjRwGIi4tzuBIRERGpqaNHjxIdHV3lNS7Lm7jikIKCAvbs2UNkZCQul6vOr5ednU1cXBzp6elERUX5oMLAo/cYHPQeg4PeY3DQe6w5y7I4evQoHTt2JCys6lEgAd0iEhYWRmxsrM9fNyoqKmj/MhXRewwOeo/BQe8xOOg91kx1LSFFNFhVREREHKMgIiIiIo4JqSASHh7OAw88QHh4uNOl2EbvMTjoPQYHvcfgoPdor4AerCoiIiLBLaRaRERERCSwKIiIiIiIYxRERERExDEKIiIiIuKYkA4iW7duZeTIkbRu3ZqoqCj69+/P8uXLnS7L5/7973/Tt29fmjRpQuvWrUlOTna6JFvk5ubSs2dPXC4XGzZscLocn9m5cycTJ06kS5cuNGnShK5du/LAAw+Ql5fndGl18sILL9ClSxcaN25Mr169SEtLc7okn5kxYwZ9+vQhMjKStm3bMmrUKLZs2eJ0WbaZMWMGLpeLKVOmOF2Kz2VkZDBhwgRatWpFREQEPXv2ZN26dU6X5TP5+fn85S9/OfX75bTTTuPhhx+moKDAbzWEdBAZMWIE+fn5LFu2jHXr1tGzZ08uv/xy9u7d63RpPvP+++9z7bXXcuONN/Ltt9+yatUqxo0b53RZtrj33nvp2LGj02X43ObNmykoKOCll15i06ZNPPvss7z44ov8+c9/drq0Wnv33XeZMmUK06dP55tvviEhIYHhw4eza9cup0vziRUrVjBp0iTWrFnD4sWLyc/PZ+jQoeTk5Dhdms+tXbuWOXPmcO655zpdis8dPnyY/v3707BhQz755BN++OEHnn76aZo3b+50aT7z+OOP8+KLL/L888/z448/8sQTT/Dkk08ya9Ys/xVhhaj9+/dbgLVy5cpT57Kzsy3AWrJkiYOV+c7JkyetmJgY65VXXnG6FNt9/PHHVvfu3a1NmzZZgPXNN984XZKtnnjiCatLly5Ol1FrF154oXXrrbeWOte9e3fr/vvvd6gie/36668WYK1YscLpUnzq6NGjVrdu3azFixdbAwcOtCZPnux0ST513333WQMGDHC6DFuNGDHC+uMf/1jqXHJysjVhwgS/1RCyLSKtWrXizDPP5I033iAnJ4f8/Hxeeukl2rVrR69evZwuzyfWr19PRkYGYWFhnH/++XTo0IHhw4ezadMmp0vzqX379nHzzTfz5ptvEhER4XQ5fpGVlUXLli2dLqNW8vLyWLduHUOHDi11fujQoaxevdqhquyVlZUFUG//zCozadIkRowYwZAhQ5wuxRaLFi2id+/ejB07lrZt23L++efz8ssvO12WTw0YMIClS5eydetWAL799lu++OILLrvsMr/VENCb3tnJ5XKxePFiRo4cSWRkJGFhYbRr145PP/00aJrdtm/fDsCDDz7IM888Q3x8PE8//TQDBw5k69atQfFL0bIsbrjhBm699VZ69+7Nzp07nS7Jdtu2bWPWrFk8/fTTTpdSKwcOHMDj8dCuXbtS59u1axdU3aJFLMti6tSpDBgwgB49ejhdjs+88847rF+/nrVr1zpdim22b9/O7NmzmTp1Kn/+85/56quvuPPOOwkPD+e6665zujyfuO+++8jKyqJ79+643W48Hg+PPvoof/jDH/xWQ9C1iDz44IO4XK4qv77++mssy+K2226jbdu2pKWl8dVXXzFy5Eguv/xyMjMznX4bVfL2PRYNNpo+fTpXXnklvXr1Yu7cubhcLt577z2H30XVvH2Ps2bNIjs7m2nTpjldco15+x5L2rNnD5deeiljx47lpptucqhy33C5XKUeW5ZV7lwwuP322/nuu++YP3++06X4THp6OpMnT2bevHk0btzY6XJsU1BQwAUXXMBjjz3G+eefzy233MLNN9/M7NmznS7NZ959913mzZvH22+/zfr163n99dd56qmneP311/1WQ9At8X7gwAEOHDhQ5TXx8fGsWrWKoUOHcvjw4VJbHnfr1o2JEydy//33211qrXn7Hr/88kuSkpJIS0tjwIABp57r27cvQ4YM4dFHH7W71Frz9j1ec801fPTRR6U+wDweD263m/Hjx/v1H1NNefsei37R79mzh8TERPr27ctrr71GWFj9/H9EXl4eERERvPfee4wePfrU+cmTJ7NhwwZWrFjhYHW+dccdd/DBBx+wcuVKunTp4nQ5PvPBBx8wevRo3G73qXMejweXy0VYWBi5ubmlnquvOnfuzCWXXMIrr7xy6tzs2bN55JFHyMjIcLAy34mLi+P+++9n0qRJp8498sgjzJs3j82bN/ulhqDrmmndujWtW7eu9rpjx44BlPtlHhYW5tdpS7Xh7Xvs1asX4eHhbNmy5VQQOXnyJDt37qRz5852l1kn3r7H//u//+ORRx459XjPnj0MGzaMd999l759+9pZYp15+x7BTCFMTEw81apVX0MIQKNGjejVqxeLFy8uFUSKukqDgWVZ3HHHHSxcuJDU1NSgCiEAgwcPZuPGjaXO3XjjjXTv3p377rsvKEIIQP/+/ctNu966dWvA//6siWPHjpX7feJ2u/37Oei3YbEBZv/+/VarVq2s5ORka8OGDdaWLVuse+65x2rYsKG1YcMGp8vzmcmTJ1sxMTHWZ599Zm3evNmaOHGi1bZtW+vQoUNOl2aLHTt2BN2smYyMDOv000+3kpKSrN27d1uZmZmnvuqrd955x2rYsKH1j3/8w/rhhx+sKVOmWE2bNrV27tzpdGk+8d///d9WdHS0lZqaWurP69ixY06XZptgnDXz1VdfWQ0aNLAeffRR66effrLeeustKyIiwpo3b57TpfnM9ddfb8XExFj/+te/rB07dlgpKSlW69atrXvvvddvNYRsELEsy1q7dq01dOhQq2XLllZkZKTVr18/6+OPP3a6LJ/Ky8uz7r77bqtt27ZWZGSkNWTIEOv77793uizbBGMQmTt3rgVU+FWf/f3vf7c6d+5sNWrUyLrggguCamprZX9ec+fOdbo02wRjELEsy/roo4+sHj16WOHh4Vb37t2tOXPmOF2ST2VnZ1uTJ0+2OnXqZDVu3Ng67bTTrOnTp1u5ubl+qyHoxoiIiIhI/VF/O5pFRESk3lMQEREREccoiIiIiIhjFERERETEMQoiIiIi4hgFEREREXGMgoiIiIg4RkFEREREHKMgIiIiIo5REBERERHHKIiIiIiIYxRERERExDH/H92wmI2jj6pKAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 13: w = [ 1.5881308 1.6499342 -1.67787925]\n" ] }, { "data": { "image/png": "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z1ZBQYFGjhypb3zjG3r//fdtN8tzqqur5fP5tGDBAttNcb36+np9+9vf1rBhwzRw4ECdccYZ2rhxY9rfJ+sLkWeeeUZXX321rrnmGr377rv63e9+pyuvvNJ2szzj5ptv1ujRo203wxPee+89tbW16ZFHHtHmzZt1//336yc/+Yluu+02201znaeffloLFizQ7bffrrffflvl5eWaNWuWPv74Y9tNc63169fr+uuv1xtvvKE1a9bo6NGjmjlzpg4dOmS7aZ6xYcMGLVu2TKeffrrtprje/v37de6556pv375avXq1tmzZoh/+8Ic65phj0v9mwSx25MiRYElJSfCxxx6z3RRPWrVqVXDChAnBzZs3ByUF3377bdtN8px77703OG7cONvNcJ0vfelLwXnz5kWdmzBhQvDWW2+11CLv2bVrV1BScP369bab4gkHDhwInnjiicE1a9YEp02bFpw/f77tJrnaLbfcEjzvvPMy8l5Z3SPy1ltvqb6+Xnl5eTrzzDNVXFysWbNmafPmzbab5no7d+7Uddddp5///OcaOHCg7eZ4VlNTk4YOHWq7Ga7S2tqqjRs3aubMmVHnZ86cqddff91Sq7ynqalJkvj/K0HXX3+9Zs+erQsuuMB2UzzhhRde0OTJk3XZZZdp5MiROvPMM/Xoo4868l5ZXYh89NFHkqTFixfrjjvu0K9//WsNGTJE06ZN0759+yy3zr2CwaDmzp2refPmafLkybab41kffvihHnzwQc2bN892U1xlz549CgQCGjVqVNT5UaNGaceOHZZa5S3BYFA33XSTzjvvPE2cONF2c1zvqaee0ltvvaXq6mrbTfGMjz76SA8//LBOPPFEvfjii5o3b56+853v6Gc/+1na38uThcjixYvl8/m6Pd588021tbVJkm6//XZdeumlmjRpkh5//HH5fD798pe/tPynyLxEP7cHH3xQzc3NWrhwoe0mu0Kin1ukhoYGXXTRRbrsssv0d3/3d5Za7m4+ny/q52Aw2OUcYrvhhhv0xz/+UU8++aTtprheXV2d5s+fryeeeEIDBgyw3RzPaGtr01lnnaV77rlHZ555pv7hH/5B1113nR5++OG0v1eftL9iBtxwww26/PLLu71n7NixOnDggCTplFNO6Tjfv39/HX/88Tk5KS7Rz+3uu+/WG2+80WVfgcmTJ+uqq67ST3/6Uyeb6TqJfm4hDQ0Nmj59us455xwtW7bM4dZ5z/Dhw+X3+7v0fuzatatLLwm6uvHGG/XCCy/o1VdfVWlpqe3muN7GjRu1a9cuTZo0qeNcIBDQq6++qh//+MdqaWmR3++32EJ3Ki4ujvrulKSTTz5ZzzzzTNrfy5OFyPDhwzV8+PAe75s0aZL69++v999/X+edd54k6ciRI9q+fbuOO+44p5vpOol+bj/60Y909913d/zc0NCgCy+8UE8//bSmTJniZBNdKdHPTTLL3aZPn97R+5aX58lOR0f169dPkyZN0po1a3TJJZd0nF+zZo3mzJljsWXuFgwGdeONN+rZZ5/VunXrNG7cONtN8oQZM2Zo06ZNUeeuueYaTZgwQbfccgtFSBznnntul+XhH3zwgSPfnZ4sRBJVWFioefPmadGiRSorK9Nxxx2n++67T5J02WWXWW6de40ZMybq58GDB0uSxo8fz7/AutHQ0KCKigqNGTNGS5Ys0e7duzuuHXvssRZb5j433XSTrr76ak2ePLmj5+jjjz9mPk03rr/+ei1fvlzPP/+8CgoKOnqUioqKlJ+fb7l17lVQUNBlHs2gQYM0bNgw5td047vf/a6mTp2qe+65R9/85jf1hz/8QcuWLXOklzerCxFJuu+++9SnTx9dffXVOnz4sKZMmaJXXnlFQ4YMsd00ZJmXXnpJW7du1datW7sUbEE2uY7yrW99S3v37tVdd92lxsZGTZw4UatWrcrJnspEhcbmKyoqos4//vjjmjt3buYbhKx29tln69lnn9XChQt11113ady4cVq6dKmuuuqqtL+XL8hvSAAAYAkD2AAAwBoKEQAAYA2FCAAAsIZCBAAAWEMhAgAArKEQAQAA1lCIAAAAayhEAACANRQiAADAGgoRAABgDYUIAACwhkIEAABY8/8Bj0pLnBlNbjYAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 14: w = [ 2.5881308 -0.75825596 -2.61905618]\n" ] }, { "data": { "image/png": "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11tvvaXFixdLko4fP669e/dq1qxZbjfTc5x+bz/4wQ90xx13JB739/fr85//vB566CEtWrTIzSZ6ktPvTbKXuy1dujTR+1ZX58tOR1eNGzdOCxYs0I4dO3TVVVclru/YsUMrVqww2DJvsyxLN910k375y1+qu7tbs2fPNt0kX1i2bJlee+21lGvXX3+9zjrrLN18882EkBwuueSSjOXhf/rTn1z57fRlEHGqqalJa9as0aZNmxQOhzVr1izdeeedkqRrrrnGcOu8a+bMmSmPTz/9dEnSnDlz+H9gefT392vJkiWaOXOm7rrrLr333nuJ56ZNm2awZd6zYcMGrVq1SgsXLkz0HO3bt4/5NHmsXbtWW7du1SOPPKLGxsZEj1Jzc7MaGhoMt867GhsbM+bRnHbaaZo8eTLza/L41re+pYsvvljf+9739MUvflH//d//rS1btrjSy1vVQUSS7rzzTp1yyilatWqVPv74Yy1atEhPPvmkJk6caLppqDJPPPGEdu3apV27dmUENotNrlN86Utf0uHDh3X77bdrYGBA8+fP12OPPVaTPZVOxcfmlyxZknL9gQce0OrVqyvfIFS1Cy+8UL/85S+1ceNG3X777Zo9e7a6urp03XXXlf2zAhb/QgIAAEMYwAYAAMYQRAAAgDEEEQAAYAxBBAAAGEMQAQAAxhBEAACAMQQRAABgDEEEAAAYQxABAADGEEQAAIAxBBEAAGAMQQQAABjz/wEc9EA7sG2eBwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 15: w = [ 1.5881308 -0.43883867 -3.06764386]\n" ] }, { "data": { "image/png": "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V17R5s2b9eqrr2rv3r0aGxvT2rVrderUKdND84zXXntNvb29uuyyy0wPxfU++eQTXX311TrvvPP0s5/9TO+9957+9m//Vp/73OdK/2JWBTtz5oy1ePFi6/vf/77poXjSiy++aC1fvtx69913LUnWW2+9ZXpInvOd73zHWrp0qelhuM6XvvQla9OmTUnXli9fbt1///2GRuQ9x44dsyRZr7zyiumheMLo6Kh10UUXWXv37rWuueYaq7Oz0/SQXO2+++6z1qxZU5bXqugZkTfffFMDAwOqqanRFVdcoebmZt1www169913TQ/N9T766CPddddd+tGPfqTZs2ebHo5njYyMaN68eaaH4SqnT5/WG2+8obVr1yZdX7t2rX71q18ZGpX3jIyMSBL//crT5s2b9dWvflXXXXed6aF4wgsvvKBVq1bplltu0YIFC3TFFVfoe9/7niOvVdFB5IMPPpAkbd++XQ8++KD++Z//WXPnztU111yjjz/+2PDo3MuyLG3cuFGbNm3SqlWrTA/Hs95//3099thj2rRpk+mhuMrw8LDi8bgWLlyYdH3hwoU6evSooVF5i2VZ2rJli9asWaMVK1aYHo7rPf3003rzzTfV3d1teiie8cEHH+iJJ57QRRddpH/5l3/Rpk2bdO+99+qHP/xhyV/Lk0Fk+/bt8vl8Wb9ef/11jY+PS5IeeOAB3XzzzVq5cqV27doln8+nf/zHfzT8tyi/fN+3xx57TNFoVFu3bjU9ZFfI932bbHBwUNdff71uueUWff3rXzc0cnfz+XxJ31uWlXIN6d1999369a9/rd27d5seiuv19/ers7NTP/7xjzVr1izTw/GM8fFxffGLX9S3v/1tXXHFFfrzP/9z3XXXXXriiSdK/lozSv4by+Duu+/WbbfdlvWelpYWjY6OSpIuvfTSieu1tbX6/Oc/X5WL4vJ93x555BG9+uqrKecKrFq1Srfffrt+8IMfODlM18n3fUsYHBxUe3u7rrrqKvX29jo8Ou9pamqS3+9Pmf04duxYyiwJUt1zzz164YUX9Itf/ELBYND0cFzvjTfe0LFjx7Ry5cqJa/F4XL/4xS/093//94rFYvL7/QZH6E7Nzc1Jn52SdMkll+jZZ58t+Wt5Mog0NTWpqakp530rV65UbW2tDhw4oDVr1kiSzpw5o8OHD+vCCy90epiuk+/79t3vflePPPLIxPeDg4P6yle+omeeeUarV692coiulO/7Jtnb3drb2ydm32pqPDnp6KiZM2dq5cqV2rt3r2666aaJ63v37tW6desMjszdLMvSPffco+eee0779u3T0qVLTQ/JE6699lr95je/Sbp2xx13aPny5brvvvsIIRlcffXVKdvD//3f/92Rz05PBpF8BQIBbdq0Sdu2bVMoFNKFF16oRx99VJJ0yy23GB6dey1ZsiTp+zlz5kiSli1bxv8Dy2JwcFBtbW1asmSJduzYoePHj088d8EFFxgcmfts2bJFGzZs0KpVqyZmjo4cOcJ6miw2b96sp556Ss8//7zq6+snZpQaGhpUV1dneHTuVV9fn7KO5vzzz1djYyPra7L4y7/8S/3RH/2Rvv3tb+tP//RP9W//9m/q7e11ZJa3ooOIJD366KOaMWOGNmzYoE8//VSrV6/Wz3/+c82dO9f00FBhXnrpJR08eFAHDx5MCWwWh1wnufXWW3XixAk9/PDDGhoa0ooVK/Tiiy9W5UxlvhK1+ba2tqTru3bt0saNG8s/IFS0K6+8Us8995y2bt2qhx9+WEuXLlVPT49uv/32kr+Wz+JfSAAAYAgFbAAAYAxBBAAAGEMQAQAAxhBEAACAMQQRAABgDEEEAAAYQxABAADGEEQAAIAxBBEAAGAMQQQAABhDEAEAAMYQRAAAgDH/Hz6Yn3vc3X3sAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 16: w = [ 0.5881308 0.28098109 -3.55750999]\n" ] }, { "data": { "image/png": "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s2aNFi5cqNbW1lF/p7e3V729vQPfd3d3OzU8AADgAhlPzWzatEmBQGDEr9dff1333nuvuru7tX79+rSfu6GhQWVlZQNf4XA40+EBAAAPCVhWsiPMUjt48KAOHjw44j2VlZW65ppr9M///M8KxDWciEajCgaDuvbaa/XII48M+71kFZFwOKyuri6VlpZmMkwAAGBId3e3ysrK0vr8zjiIpGvfvn0JUysdHR369re/raamJi1atEihUGjU58jkDwIAANwhk89vx9aIzJ49O+H7yZMnS5LmzJmTVggBAAD+R2dVAABgTF4amkn2uhGHZoEAAIBH5S2IZCMWXNjGCwCAd8Q+t9MpQLg6iPT09EgS23gBAPCgnp4elZWVjXiPY7tmcqGvr08dHR0qKSlJ2AY8mti237a2NnbbZID3LTu8b9nhfcsO71v2eO+yk837ZlmWenp6NGvWLBUVjbwc1dUVkaKiojHtsCktLeVftizwvmWH9y07vG/Z4X3LHu9ddjJ930arhMSwawYAABhDEAEAAMb4MogUFxdr48aNKi4uNj0UT+F9yw7vW3Z437LD+5Y93rvsOP2+uXqxKgAA8DdfVkQAAIA3EEQAAIAxBBEAAGAMQQQAABhTEEHkueee06JFizRhwgTNmDFDtbW1pofkGb29vTr33HMVCAT01ltvmR6Oq7W2tuqGG25QVVWVJkyYoDlz5mjjxo06fvy46aG50n333aeqqiqNHz9eCxYsUEtLi+khuVpDQ4MuuOAClZSU6KSTTtIVV1yhDz74wPSwPKehoUGBQED19fWmh+J67e3tuu666zR9+nRNnDhR5557rnbu3Jnz1/F9EHnyySe1atUqXX/99dq1a5d+/etfa+XKlaaH5Rk/+MEPNGvWLNPD8IT3339ffX19euCBB/Tuu+/qJz/5if7hH/5BP/rRj0wPzXWeeOIJ1dfX67bbbtObb76p6upqXXrppdq3b5/pobnWK6+8orVr1+rVV1/Vjh079NVXX2np0qU6duyY6aF5xmuvvaatW7dq/vz5pofieocPH9aFF16oE044QS+88ILee+89/d3f/Z2mTJmS+xezfOzLL7+0KioqrIceesj0UDzp+eeft+bOnWu9++67liTrzTffND0kz/nbv/1bq6qqyvQwXOcb3/iGtWbNmoRrc+fOtX74wx8aGpH3fPrpp5Yk65VXXjE9FE/o6emxTjvtNGvHjh3WxRdfbNXV1Zkekqvdeuut1kUXXZSX1/J1ReSNN95Qe3u7ioqKdN5556m8vFyXXnqp3n33XdNDc71PPvlEN954ox599FFNnDjR9HA8q6urS9OmTTM9DFc5fvy4du7cqaVLlyZcX7p0qX7zm98YGpX3dHV1SRL/fqVp7dq1uuyyy/Stb33L9FA84dlnn9XChQu1YsUKnXTSSTrvvPP04IMPOvJavg4iH3/8sSRp06ZN2rBhg/7lX/5FU6dO1cUXX6zPP//c8Ojcy7IsrV69WmvWrNHChQtND8ezPvroI917771as2aN6aG4ysGDBxWNRjVz5syE6zNnztSBAwcMjcpbLMvSunXrdNFFF2nevHmmh+N6jz/+uN544w01NDSYHopnfPzxx7r//vt12mmn6Re/+IXWrFmjW265RT/96U9z/lqeDCKbNm1SIBAY8ev1119XX1+fJOm2227TVVddpQULFujhhx9WIBDQz3/+c8N/ivxL932799571d3drfXr15sesiuk+77F6+jo0CWXXKIVK1boe9/7nqGRu1sgEEj43rKsYdeQ3E033aTdu3dr+/btpofiem1tbaqrq9Njjz2m8ePHmx6OZ/T19en888/XXXfdpfPOO09/8Rd/oRtvvFH3339/zl9rXM6fMQ9uuukmXXPNNSPeU1lZqZ6eHknSmWeeOXC9uLhYX/va1wpyUVy679udd96pV199ddi5AgsXLtS1116rRx55xMlhuk6671tMR0eHFi9erG9+85vaunWrw6PznhkzZigYDA6rfnz66afDqiQY7uabb9azzz6rX/7ylwqFQqaH43o7d+7Up59+qgULFgxci0aj+uUvf6m///u/V29vr4LBoMERulN5eXnCZ6cknXHGGXryySdz/lqeDCIzZszQjBkzRr1vwYIFKi4u1gcffKCLLrpIkvTll1+qtbVVp5xyitPDdJ1037d77rlHd95558D3HR0d+va3v60nnnhCixYtcnKIrpTu+ybZ290WL148UH0rKvJk0dFRJ554ohYsWKAdO3boyiuvHLi+Y8cOLVu2zODI3M2yLN1888166qmn1NzcrKqqKtND8oQlS5bo7bffTrh2/fXXa+7cubr11lsJISlceOGFw7aHf/jhh458dnoyiKSrtLRUa9as0caNGxUOh3XKKafo7rvvliStWLHC8Ojca/bs2QnfT548WZI0Z84c/gtsBB0dHaqpqdHs2bO1efNmffbZZwM/O/nkkw2OzH3WrVunVatWaeHChQOVo3379rGeZgRr167Vtm3b9Mwzz6ikpGSgolRWVqYJEyYYHp17lZSUDFtHM2nSJE2fPp31NSP4y7/8S/3hH/6h7rrrLn3nO9/Rb3/7W23dutWRKq+vg4gk3X333Ro3bpxWrVql3//+91q0aJFeeuklTZ061fTQ4DMvvvii9uzZoz179gwLbBaHXCe4+uqrdejQId1xxx3q7OzUvHnz9PzzzxdkpTJdsbn5mpqahOsPP/ywVq9enf8BwdcuuOACPfXUU1q/fr3uuOMOVVVVqbGxUddee23OXytg8TckAAAwhAlsAABgDEEEAAAYQxABAADGEEQAAIAxBBEAAGAMQQQAABhDEAEAAMYQRAAAgDEEEQAAYAxBBAAAGEMQAQAAxhBEAACAMf8flR6MUDbepJMAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 17: w = [ 1.5881308 0.54163347 -2.97783009]\n" ] }, { "data": { "image/png": "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qemy0saPfvQjTZkyxXQZaeHTTz9VT0+PnnrqKX388cf66U9/qn/6p3/S3/zN35guzXVefPFFrVq1Sg888IDee+89VVZW6qabbtL+/ftNl+ZaW7du1YoVK7R9+3Zt3rxZZ8+e1aJFi3TixAnTpaWNd955Rxs2bNCll15quhTXO3LkiObPn6+RI0fq97//vXbv3q1/+Id/0IQJE5L/YlYGO3PmjDV16lTr5z//uelS0tKrr75qXXjhhdbHH39sSbLee+890yWlnZ/85CfW9OnTTZfhOldddZW1fPnysHsXXnih9eMf/9hQRemnra3NkmRt3brVdClp4dixY9b5559vbd682Vq4cKG1cuVK0yW52v33328tWLAgJa+V0T0i7777rpqampSTk6MrrrhCpaWluummm/Txxx+bLs31Wltbddddd+lf/uVfNHbsWNPlpK3Ozk5NmjTJdBmucvr0ae3cuVOLFi0Ku79o0SK9+eabhqpKP52dnZLE368YrVixQt/85jd1ww03mC4lLbzyyiuaM2eObrvtNhUXF+uKK67Q008/7chrZXQQ+fLLLyVJa9eu1YMPPqjf/va3mjhxohYuXKjDhw8brs69LMvSsmXLtHz5cs2ZM8d0OWnriy++0OOPP67ly5ebLsVVOjo65Pf7VVJSEna/pKREBw8eNFRVerEsS/fdd58WLFigWbNmmS7H9V544QW9++67qq2tNV1K2vjyyy/15JNP6vzzz9e//uu/avny5br33nv1i1/8IumvlZZBZO3atfJ4PIN+7dixQz09PZKkBx54QLfeeqtmz56tZ555Rh6PR7/85S8N/ylSL9b37fHHH1dXV5dWr15tumRXiPV9C9Xc3KxvfOMbuu222/SDH/zAUOXu5vF4wr63LCviHqK7++679eGHH2rjxo2mS3G9xsZGrVy5Us8995xGjx5tupy00dPToyuvvFKPPPKIrrjiCv3whz/UXXfdpSeffDLprzUi6c+YAnfffbe+853vDNqmoqJCx44dkyTNnDmz735ubq6+9rWvZeWkuFjft4cffljbt2+POFdgzpw5uv322/Xss886WabrxPq+BTQ3N6u6ulrXXHONNmzY4HB16aeoqEherzei96OtrS2ilwSR7rnnHr3yyivatm2bysrKTJfjejt37lRbW5tmz57dd8/v92vbtm36x3/8R3V3d8vr9Rqs0J1KS0vDPjsl6aKLLtJLL72U9NdKyyBSVFSkoqKiIdvNnj1bubm5+uyzz7RgwQJJ0pkzZ7Rv3z6de+65TpfpOrG+bz/72c/08MMP933f3NysG2+8US+++KLmzZvnZImuFOv7JtnL3aqrq/t633Jy0rLT0VGjRo3S7NmztXnzZt1yyy199zdv3qzFixcbrMzdLMvSPffco1/96lfy+XyaPn266ZLSwvXXX69du3aF3bvzzjt14YUX6v777yeEDGD+/PkRy8M///xzRz470zKIxCo/P1/Lly/XmjVrVF5ernPPPVePPvqoJOm2224zXJ17TZs2Lez78ePHS5JmzJjBv8AG0dzcrKqqKk2bNk3r169Xe3t732PnnHOOwcrc57777tMdd9yhOXPm9PUc7d+/n/k0g1ixYoWef/55vfzyy8rLy+vrUSooKNCYMWMMV+deeXl5EfNoxo0bp8LCQubXDOKv/uqvdO211+qRRx7Rt771Lb399tvasGGDI728GR1EJOnRRx/ViBEjdMcdd+jUqVOaN2+e/vjHP2rixImmS0OGee2117Rnzx7t2bMnIrBZHHId5tvf/rYOHTqkhx56SC0tLZo1a5ZeffXVrOypjFVgbL6qqirs/jPPPKNly5alviBktLlz5+pXv/qVVq9erYceekjTp09XXV2dbr/99qS/lsfiNyQAADCEAWwAAGAMQQQAABhDEAEAAMYQRAAAgDEEEQAAYAxBBAAAGEMQAQAAxhBEAACAMQQRAABgDEEEAAAYQxABAADGEEQAAIAx/x/Ye2Jp66Je4gAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 18: w = [ 0.5881308 0.86105076 -3.42641778]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 19: w = [ 1.5881308 1.12170313 -2.84673788]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iteration 19: w = [ 1.5881308 1.12170313 -2.84673788]\n" ] } ], "source": [ "X, y = generate_data(n=20, means=[[-1,-1], [1,2]], seed=204)\n", "train_perceptron_for_vis(X, y)" ] }, { "cell_type": "markdown", "id": "b047f58f", "metadata": {}, "source": [ "Note that in the implementation we relied on matrix algebra to make life easier. Namely, instead of computing $y_i \\langle w, x_i \\rangle$ for each data point, we can compute this in one go by noting that the design matrix is\n", "$$\n", "X = \\begin{bmatrix}\n", " x_1^T\\\\ x_2^T\\\\\\vdots\\\\x_n^T\n", "\\end{bmatrix} \\in \\mathbb{R}^{n \\times 3},\n", "$$\n", "$y \\in \\mathbb{R}^n$ and $w \\in \\mathbb{R}^3$, so \n", "$$\n", "y \\odot Xw = \n", "y \\odot \\begin{bmatrix}\n", " \\langle x_1, w \\rangle\\\\ \\langle x_2, w \\rangle\\\\\\vdots\\\\ \\langle x_n, w \\rangle\n", "\\end{bmatrix}=\n", "\\begin{bmatrix}\n", " y_1 \\langle x_1, w \\rangle\\\\ y_2 \\langle x_2, w \\rangle\\\\\\vdots\\\\y_n \\langle x_n, w \\rangle\n", "\\end{bmatrix}\n", "$$\n", "\n", "where $\\odot$ is called the Hadamard, or pointwise product, and denotes the elementwise multiplication of two vectors. From here, we can simply check which indices we are making mistakes on by checking which elements of this vector are negative." ] }, { "cell_type": "markdown", "id": "94028b80", "metadata": {}, "source": [ "## Binary Classification with Logistic Regression\n", "The perceptron classifier is perhaps the most simple type of binary classifier. One of the most popular approaches to doing classification in practice however is the Logistic Regression model. In the tutorial this week, we will take a deep look at the theory behind logistic regression. Here, we will be more interested in how logistic regression can be applied to real data problems. We will specifically look at:\n", "\n", "1. The `sklearn` logistic regression implementation\n", "2. Applying logistic regression to MNIST data\n", "3. Common performance metrics used when performing classification\n", "\n", "Further, we will look at:\n", "\n", "4. Softmax Regression: An extension of logistic regression (used only for binary classification) to multi-label classification\n", "\n", "The discussion of logistic regression here is important for two reasons, first we are going to be continuing our exploration of the `sklearn` library, and second we will be working with logistic and softmax regressions, which can be thought of as the simplest type of neural network, and so having a deep understanding of the content here will be very helpful to you in later weeks." ] }, { "cell_type": "markdown", "id": "3eaae9f6", "metadata": {}, "source": [ "#### MNIST Dataset\n", "First we introduce one of the most famous datasets used in machine learning: MNIST. MNIST is often referred to as the `Hello, World!` of Machine Learning. The MNIST dataset is comprised of images of handwritten numbers (0-9), so it has a total of $10$ classes. When doing logistic regression we will only use two labels (any subset of 2 of the 10 available labels in MNIST). The MNIST digits are represented by a a $28 \\times 28$ array (images), and so we have $28 \\times 28 = 784$ features in total.\n", "\n", "We can load MNIST in a number of ways, but see we already have some experience with the `PyTorch` module from the previous lab, we will use it to load in the data. `PyTorch` gives us an easy way to apply transformations to the data and create a `DataLoader` object that makes training models more straight forward. We will discuss the `DataLoader` object in more detail a little later on in the course when we start working with neural nets." ] }, { "cell_type": "markdown", "id": "99718861", "metadata": {}, "source": [ "The following code loads in the MNIST data, here we have both a train data set and a test data set." ] }, { "cell_type": "code", "execution_count": 7, "id": "a1fb116e", "metadata": { "scrolled": true }, "outputs": [ { "ename": "ModuleNotFoundError", "evalue": "No module named 'torchvision'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[7], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mtorchvision\u001b[39;00m \u001b[38;5;66;03m#! pip3 install torchvision\u001b[39;00m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mtorchvision\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mtransforms\u001b[39;00m\n\u001b[1;32m 3\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mtorchvision\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mdatasets\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m MNIST\n", "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'torchvision'" ] } ], "source": [ "import torchvision #! pip3 install torchvision\n", "import torchvision.transforms as transforms\n", "from torchvision.datasets import MNIST\n", "\n", "transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (1.0,))])\n", "trainset = MNIST(root = './', train=True, download=True, transform=transform)\n", "testset = MNIST(root = './', train=False, download=True, transform=transform)" ] }, { "cell_type": "markdown", "id": "bfd40f6e", "metadata": {}, "source": [ "Let's take a minute to understand these objects:" ] }, { "cell_type": "code", "execution_count": null, "id": "c28a6b78", "metadata": {}, "outputs": [], "source": [ "# size of datasets\n", "print(f\"Number of observations in train set: {trainset.data.shape[0]}\")\n", "print(f\" Number of observations in test set: {testset.data.shape[0]}\")\n", "\n", "# plotting an image in the dataset using imshow()\n", "idx = 2489\n", "plt.imshow(trainset.data[idx], cmap='gray')\n", "plt.title(trainset.targets[idx])\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "ce2ab6e8", "metadata": {}, "source": [ "### Logistic Regression with Sklearn\n", "\n", "In the tutorial this week, we define the logistic regression problem as the problem of minimizing the cross entropy loss:\n", "\n", "\\begin{align*}\n", "\\hat{\\beta}, \\hat{\\beta}_0 &= \\arg \\min_{\\beta, \\beta_0} \\mathcal{L}(\\beta, \\beta_0)\\\\\n", "&= \\arg \\min_{\\beta, \\beta_0 \\in \\mathbb{R}^p} \n", "-\\left [ \n", " \\sum_{i=1}^n y_i \\ln \\left (\\frac{1}{1+e^{-\\beta^T x_i - \\beta_0}} \\right) + (1-y_i) \\ln \\left (1-\\frac{1}{1+e^{-\\beta^T x_i - \\beta_0}} \\right)\n", "\\right]\n", "\\end{align*}\n", "\n", "where $y_i \\in \\{0,1\\}$ is binary valued and represents the label associated with the input $x_i$. In pratice however, we usually work with the following regularized version:\n", "\n", "\\begin{align*}\n", "\\hat{\\beta}, \\hat{\\beta}_0 &= \\arg \\min_{\\beta, \\beta_0} C\\mathcal{L}(\\beta, \\beta_0) + \\text{Penalty}(\\beta),\n", "\\end{align*}\n", "\n", "where Penalty$(\\beta)$ is a penalty/regularization term applied to the weight vector $w$. For example, $\\text{Penalty}(\\beta) = \\|\\beta\\|_1$ when we want to apply $\\ell_1$ regularization to $w$ (this would be the logistic version of the LASSO). Note that we not usually penalize the intercept/bias term $w_0$. Note also the introduction of the hyper-parameter $C$, which does a similar job to $\\lambda$ in the lasso/ridge regression model formulations.." ] }, { "cell_type": "markdown", "id": "bde6e2a6", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "\n", "Consider the `sklearn` logistic regression implementation (Section 1.1.11) which claims to minimize the following objective:\n", " \\begin{align}\n", " \\hat{w}, \\hat{c} =\\arg \\min_{w, c} \\left[\\|w\\|_1 + C \\sum_{i=1}^n \\log (1+ \\exp (-\\tilde{y}_i(w^T x_i + c))) \\right ].\n", " \\end{align}\n", " It turns out that this objective is identical to our objective above, but only after re-coding the variables to be in $\\{-1,1\\}$ instead of binary values $\\{ 0,1\\}$. That is, $\\tilde{y}_i \\in \\{-1,1\\}$, whereas $y_i \\in \\{0,1 \\}$. Argue rigorously that the two objectives are identical, in that they give us the same solutions ($\\hat{\\beta}_0 = \\hat{c}$ and $\\hat{\\beta} = \\hat{w}$). Further, describe the role of $C$ in the objectives, how does it compare to the standard LASSO parameter $\\lambda$?" ] }, { "cell_type": "markdown", "id": "c9920eb3", "metadata": {}, "source": [ "We next create train, validation and test sets to run logistic regression on - these will be comprised of only the class1 and class2 images in MNIST (to be determined in the code). Logistic regression expects a vector input and so treats the $28 \\times 28$ image as a flattened 784 dimensional vector. Obviously in practice we would want to account for the spatial properties of the input images, but for here we will ignore those. \n", "\n", "We will take our train set to be 60\\% of the available images, whereas the validation and test sets will be 20\\% each. We will also convert the tensor datasets to numpy arrays.\n", "\n", "To make the problem more challenging for the model, we will work with a smaller sample of size `nSample` and we will also randomly choose a subset of $s$ features and omit the rest." ] }, { "cell_type": "code", "execution_count": null, "id": "f08c1ff1", "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "# sample size and features to work with\n", "s = 40 # reduced features to work with \n", "sFeatures = np.random.choice(np.arange(784), size=s, replace=False) # choose s features randomly from the 784\n", "sFeatures.sort()\n", "nSample = 1000\n", "\n", "\n", "# choose two class labels\n", "class1Label = 0\n", "class2Label = 1\n", "\n", "class1Images = trainset.data[trainset.targets==class1Label].reshape(-1,784).numpy() # images with class1\n", "class2Images = trainset.data[trainset.targets==class2Label].reshape(-1,784).numpy() # images with class2\n", "\n", "# work with a smaller sample size\n", "class1Images = class1Images[:nSample, sFeatures]\n", "class2Images = class2Images[:nSample, sFeatures]\n", "X = np.concatenate((class1Images, class2Images), axis=0)\n", "y = np.concatenate((np.zeros(class1Images.shape[0]), np.ones(class2Images.shape[0])))\n", "\n", "# create Xtrain, Xvalid, Xtest\n", "Xtrain, X_, ytrain, y_ = train_test_split(X, y, test_size=0.4, shuffle=True)\n", "Xvalid, Xtest, yvalid, ytest = train_test_split(X_, y_, test_size=0.5, shuffle=True)\n", "\n", "print(f'Xtrain shape = {Xtrain.shape}')\n", "print(f'Xvalid shape = {Xvalid.shape}')\n", "print(f'Xtest shape = {Xtest.shape}')" ] }, { "cell_type": "markdown", "id": "dbd8fb05", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "\n", "In order to choose the correct value of the hyper-parameter $C$, we will use K-fold cross validation. As always, we use the validation set to do any form of hyper-parameter tuning.\n", " \n", "Create a grid fo 100 $C$ values ranging from $C=0.0001$ to $C=1$ in equally sized increments. Use the `sklearn.model_selection.GridSearchCV` to do the grid search cross validation using your parameter grid. For the `estimator` argument, use the `sklearn.linear_model.LogisticRegression` model with `l1` penalty and `liblinear` solver and find the optimal value of $C$ when performing 10-fold cross validation using `neg_log_loss` scoring. Fit your logistic model with the chosen $C$ value. Report train and test accuracy.\n", " \n", "Further, explain why it is a bad idea to tune hyper-parameters using the test set." ] }, { "cell_type": "markdown", "id": "4da28c82", "metadata": {}, "source": [ "\n", "\n", "The test set is an independent clean dataset that we test our final model on. If we were to use it to tune the hyperparameters of our model then we would be using the test set to both tune our model and test our model, and is likely to result in overfitting." ] }, { "cell_type": "markdown", "id": "44df30fc", "metadata": {}, "source": [ "#### An important distinction: predict_proba vs. predict\n", "Many classification models in `sklearn` (not just logistic regression) have two methods that can be somewhat confusing to students, so let's make sure we understand what each of these methods does and when to use each one. In what follows, let's assume we called our logistic model `logistic_mod`. Then, recall that a logistic regression is a type of regression, meaning it outputs a probability that an input belongs to a particular class (the class coded as $y=1$). In order to turn this into a classifier, we use a threshold value $t$ (known as the discrimination threshold) and classify any probabilty that is $t$ or greater as belonging to class $y=1$, and $y=0$ otherwise. The choice of $t$ is up to the modeller, and the default value is $t=0.5$. \n", "\n", "With this in mind, the `predict_proba()` method returns the predicted probability that the model returns for a particular input, whereas `predict()` returns the predicted class. If we are solely interested in model accuracy, then two different models that have the same predicted labels will be of equal value to us. However, the accuracy can be a crude way of comparing models. \n", "\n", "For example, consider two models: m1 and m2. Let's say we have inputs `[x1,x2,x3,x4]` with labels $[1, 0, 0, 0]$ and the following holds:\n", "\n", "```\n", "m1.predict([x1,x2,x3,x4]) = [1,0,0,0]\n", "m2.predict([x1,x2,x3,x4]) = [1,0,0,0]\n", "```\n", "\n", "So both models have 100\\% accuracy. However, let's say we also get:\n", "\n", "```\n", "m1.predict_proba([x1,x2,x3,x4]) = [[0.1, 0.9],\n", " [0.99, 0.01]\n", " [0.9, 0.1],\n", " [0.92, 0.08]]\n", "m2.predict_proba([x1,x2,x3,x4]) = [[0.49, 0.51] ,\n", " [0.51, 0.49],\n", " [0.52, 0.48],\n", " [0.51, 0.49]]\n", "```\n", "The `predict_proba` method returns the predicted probability for each class, which is why there are two numbers for each `xi`.\n", "\n", "Now, clearly m1 is able to discriminate the positive and negative classes much more effectively than m2, but the two models would be equivalent in terms of accuracy score. If we are more interested in the ability of a model to discriminate between two classes, we would consider different metrics, such as the cross entropy loss (see tutorial this week), which is also called the log-loss, and is implemented in `sklearn.metrics.log_loss`. From tutorials, we know that the cross entropy measures the distance between a predicted probability and the truth, and is defined by\n", "\n", "$$\n", "\\mathcal{L}(w) = -\\sum_{i=1}^n (y_i \\ln \\hat{p}_i + (1-y_i) \\ln(1-\\hat{p}_i)).\n", "$$\n", "\n", "In our toy example,\n", "\n", "```\n", "ll_m1 = log_loss([1,0,0,0], m1.predict_proba([x1,x2,x3,x4])) = 0.0760\n", "ll_m2 = log_loss([1,0,0,0], m2.predict_proba([x1,x2,x3,x4])) = 0.6685\n", "```\n", "\n", "So the log-loss of m1 is much lower than that of m2, and we would prefer m1 if our criteria is log-loss and not accuracy." ] }, { "cell_type": "markdown", "id": "3227045b", "metadata": {}, "source": [ "#### The Trade-Off between TPR (Sensitivity) and TNR (Specificity)\n", "A binary classifier can have one of four possible outcomes:\n", "1. True Positive (TP): classifier predicts $\\hat{y}=1$ when true label is $y=1$\n", "2. False Positive (FN): classifier predicts $\\hat{y}=1$ when true label is $y=0$\n", "3. True Negative (TN): classifier predicts $\\hat{y}=0$ when true label is $y=0$\n", "4. False Negative (FN): classifier predicts $\\hat{y}=0$ when true label is $y=1$\n", "\n", "True positives and True negatives are clearly good, whereas false positives and false negatives are obviously not so good. Two good examples to keep in mind are:\n", "\n", "Example 1 (CANCER DETECTION): You build a classifier that looks at the output of some costly medical test and attempts to predict whether patient has a rare form of cancer and needs further testing ($y=1$) or no cancer ($y=0$). The goal here is to save as many lives as possible.\n", "\n", "Example 2 (MARKETING CAMPAIGN): You work for a bank and wish to identify new customers to send ads to about a new credit card. The classifier identifies a potential customer and sends them a targeted ad via email ($y=1$) or labels them as not a potential customer ($y=0$). The goal here is to increase the revenue stream of the bank." ] }, { "cell_type": "markdown", "id": "25157d0a", "metadata": {}, "source": [ "\n", "\n", "#### Exercise\n", " \n", "Discuss Examples 1 and 2, are false positives and false negatives equally as bad in both cases?" ] }, { "cell_type": "markdown", "id": "a543337b", "metadata": {}, "source": [ "We define the following terms, each of which (somewhat annoyingly) has many names in the literature:\n", "\n", "- True Positive Rate (TPR), Sensitivity, Recall: $\\text{TPR} = \\frac{\\text{TP}}{\\text{P}} = \\frac{\\text{TP}}{\\text{TP} + \\text{FN}}$ where $P$ is the actual number of positive values in the data.\n", "- True Negative Rate (TNR), Specificity, Selectivity: $\\text{TNR} = \\frac{\\text{TN}}{\\text{N}} = \\frac{\\text{TN}}{\\text{TN} + \\text{FP}}$ where $N$ is the actual number of negative values in the data.\n", "\n", "Any good classifier should ideally have a large TPR and a large TNR, but unfortunately, there is a trade-off between the two. To see this, consider the following exercise." ] }, { "cell_type": "markdown", "id": "f406db0c", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "Consider fitting logistic regression models to the cancer detection problem discussed earlier. Once you fit your model, you need to choose the discrimination parameter $t$. Explain what happens at the extremes $t=0$ and $t=1$. Explain the trade-off between TPR and TNR as $t$ increases." ] }, { "cell_type": "markdown", "id": "2338cb1d", "metadata": {}, "source": [ "The Receiver Operator Characteristic (ROC) curve is a graphical depiction of what happens to the TPR and FPR = 1-TNR as we vary the threshold $t$. It is a good way of comparing different classification models. Let's consider a couple of logistic regression models fit to the MNIST problem but with different $C$ values, and compare them by looking at their ROC curves. The Area Under the Curve (AUC) gives us a nice summary of how good a particular model is, it is the area under each of the ROC curves." ] }, { "cell_type": "code", "execution_count": null, "id": "46995bfe", "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import roc_curve, roc_auc_score\n", "\n", "# choosing C via cross validation then computing FPR and TPR at all thresholds\n", "logistic_mod_1 = LogisticRegression(penalty='l1', solver='liblinear', C=Cbest).fit(Xtrain, ytrain)\n", "mod_1_preds = logistic_mod_1.predict_proba(Xtest)[:,1] # note, predictions need to be just for one of the classes\n", "fpr_1, tpr_1, _ = roc_curve(ytest, mod_1_preds)\n", "auc_1 = roc_auc_score(ytest, mod_1_preds)\n", "\n", "# choosing C small\n", "logistic_mod_2 = LogisticRegression(penalty='l1', solver='liblinear', C=0.02).fit(Xtrain, ytrain)\n", "mod_2_preds = logistic_mod_2.predict_proba(Xtest)[:,1]\n", "fpr_2, tpr_2, _ = roc_curve(ytest, mod_2_preds)\n", "auc_2 = roc_auc_score(ytest, mod_2_preds)\n", "\n", "# choosing C to be very large (no regularization)\n", "logistic_mod_3 = LogisticRegression(solver='liblinear', C=1000).fit(Xtrain, ytrain)\n", "mod_3_preds = logistic_mod_3.predict_proba(Xtest)[:,1]\n", "fpr_3, tpr_3, _ = roc_curve(ytest, mod_3_preds)\n", "auc_3 = roc_auc_score(ytest, mod_3_preds)\n", "\n", "\n", "fig = plt.figure(figsize=(10,10))\n", "plt.plot(fpr_1, tpr_1, label=\"model 1, AUC=\"+str(auc_1))\n", "plt.plot(fpr_2, tpr_2, label=\"model 2, AUC=\"+str(auc_2))\n", "plt.plot(fpr_3, tpr_3, label=\"model 3, AUC=\"+str(auc_3))\n", "plt.ylabel(\"True Positive Rate (TPR)\")\n", "plt.xlabel(\"False Positive Rate (FPR)\")\n", "plt.title(\"ROC Curves for Three Logistic Models\")\n", "plt.legend()\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "f6628ac5", "metadata": {}, "source": [ "Some things to note:\n", "\n", "1. The ultimate model would have a TPR and a TNR set to 1, or equivalently the TPR set to 1 and the FPR set to 0, so the closer that the models are to the top-left corner of the plot, the better.\n", "2. All three models seem to be quite poor at this task. \n", "3. At a given threshold, there is no guarantee that one model is better than the other.\n", "4. The AUC provides a nice summary score that we can use to compare the models. You can think of the AUC as the average FPR/TPR trade-off over all possible discrimination thresholds.\n" ] }, { "cell_type": "markdown", "id": "b4d6ee5e", "metadata": {}, "source": [ "## Multi-class classification - Softmax Regression" ] }, { "cell_type": "markdown", "id": "c2f07d6b", "metadata": {}, "source": [ "In Softmax Regression, we allow the label to take on one of $K$ possible values, so given an input $x$, we would like to estimate $P(Y=k|x)$ for $k=1,\\dots, K$. The model must therefore output a $K$ dimensional vector of probabilities whose elements sum to $1$, i.e. \n", "\n", "\\begin{align*}\n", "h(x) = \n", "\\begin{bmatrix}\n", "P(y=1|x) \\\\ P(y=2|x)\\\\ \\vdots \\\\ P(y=K|x)\n", "\\end{bmatrix}\n", "\\end{align*}\n", "\n", "We will not go into the mathematical details of how softmax regression is derived (for those that are interested, it is similar to the logistic regression case, but using the multinomial distribution instead of the bernoulli). We will however give a short motivation for how the probabilities are estimated." ] }, { "cell_type": "markdown", "id": "6c0e9941", "metadata": {}, "source": [ "#### Short motivation for softmax regression \n", "Recall (from lectures and tutorial this week) that in the logistic regression problem (binary $y$), we wish to estimate a probability: $P(y=1|x)$. One approach is to use a linear model:\n", "\n", "$$\n", "P(y=1|x) = w^T x,\n", "$$\n", "\n", "where $w$ is a parameter vector that we estimate. The problem with this however is that a probability must be in the range $[0,1]$, whereas $w^T x \\in (-\\infty, \\infty)$. A solution is to then wrap the linear model in a logistic sigmoid:\n", "\n", "$$\n", "P(y=1|x) = \\sigma(w^T x) = \\frac{1}{1+e^{-w^T x}},\n", "$$\n", "\n", "which guarantees that our estimated probability is actually a probability, regardless of the choice of $w$. Let's extend this idea to the multi-class case: assume that for each class we have a $p$-dimensional vector $\\theta_1 \\in \\mathbb{R}^p, \\theta_2 \\in \\mathbb{R}^p, \\dots, \\theta_K \\in \\mathbb{R}^p$, so we have a total of $Kp$ unkown parameters to be estimated, and we will stack these unkown vectors into a single matrix for brevity:\n", "\n", "$$\n", "\\Theta = [\\theta_1,\\dots, \\theta_K] \\in \\mathbb{R}^{p \\times K}.\n", "$$\n", "\n", "Now, we want to estimate $K$ probabilities, so we could just do the linear model approach:\n", "\n", "\\begin{align*}\n", "P(y=1|x) &= \\theta_1^T x\\\\\n", "P(y=2|x) &= \\theta_2^T x\\\\\n", "& \\vdots\\\\\n", "P(y=K|x) &= \\theta_K^T x\n", "\\end{align*}\n", "\n", "in which case we run into the same issue that each term is not guaranteed to be a probability. We can use the same trick of using the logistic sigmoid:\n", "\n", "\\begin{align*}\n", "P(y=1|x) &= \\sigma(\\theta_1^T x)\\\\\n", "P(y=2|x) &= \\sigma(\\theta_2^T x)\\\\\n", "& \\vdots\\\\\n", "P(y=K|x) &= \\sigma(\\theta_K^T x).\n", "\\end{align*}\n", "\n", "Which seemingly fixes the problem - but we are faced with another problem now, there is no guarantee that the sum of the probabilities add up to one. An easy fix is to normalize the probabilities by their sum:\n", "\n", "\\begin{align*}\n", "P(y=1|x) &= \\frac{\\sigma(\\theta_1^T x)}{\\sum_{j=1}^k \\sigma(\\theta_j^T x)}\\\\\n", "P(y=2|x) &= \\frac{\\sigma(\\theta_2^T x)}{\\sum_{j=1}^k \\sigma(\\theta_j^T x)}\\\\\n", "& \\vdots\\\\\n", "P(y=K|x) &= \\frac{\\sigma(\\theta_K^T x)}{\\sum_{j=1}^k \\sigma(\\theta_j^T x)}.\n", "\\end{align*}\n", "\n", "This ensures two things:\n", "1. each element is a valid probability (it has to be between $0$ and $1$.\n", "2. the sum of the estimated probabilities is 1.\n", "\n", "Our softmax regression model therefore takes the form:\n", "\n", "\\begin{align*}\n", "h_\\Theta (x) = \n", "\\begin{bmatrix}\n", "P(y=1|x) \\\\ P(y=2|x)\\\\ \\vdots \\\\ P(y=K|x)\n", "\\end{bmatrix}\n", "=\n", "\\frac{1}{ \\sum_{j=1}^k \\sigma(\\theta_j^T x)}\n", "\\begin{bmatrix}\n", "\\sigma(\\theta_1^T x)\\\\\n", "\\sigma(\\theta_2^T x)\\\\\n", "\\vdots \\\\\n", "\\sigma(\\theta_K^T x)\n", "\\end{bmatrix}\n", "\\end{align*}\n", "\n", "and we now have a parameter matrix $\\Theta$ to estimate. What remains is to define the loss function we will use for the problem. Recall in the logistic case the loss function is:\n", "\n", "\\begin{align*}\n", "\\mathcal{L} (w)\n", "&= -\\sum_{i=1}^n (y_i \\ln \\hat{p}_i + (1-y_i) \\ln(1-\\hat{p}_i))\\\\\n", "&= -\\sum_{i=1}^n (y_i \\ln P(y_i = 1|x_i) + (1-y_i) \\ln P(y_i = 0|x_i),\n", "\\end{align*}\n", "\n", "and noting that $y_i = 0$ or $y_i = 1$, we can rewrite this as \n", "\\begin{align*}\n", "\\mathcal{L} (w)&= -\\sum_{i=1}^n \\sum_{j=0}^1 \\mathbf{1}\\{y_i = j \\} \\ln P(y_i = j|x_i),\n", "\\end{align*}\n", "\n", "where $ \\mathbf{1}\\{y_i = j \\}$ is an indicator variable, which simply takes the value $1$ if the term inside the brackets is true, and zero otherwise. For example $\\mathbf{1}\\{ 1+2=3\\} = 1$. Now, the reason we wrote the loss this way is that it allows us to generalize to the softmax regression problem in the following way:\n", "\n", "\\begin{align*}\n", "\\mathcal{L}(\\Theta) \n", "&= -\\sum_{i=1}^n \\sum_{j=0}^K \\mathbf{1}\\{y_i = j \\} \\ln P(y_i = j|x_i)\\\\\n", "&= -\\sum_{i=1}^n \\sum_{j=0}^K \\mathbf{1}\\{y_i = j \\} \\ln \\frac{\\sigma(\\theta^T_j x_i)}{\\sum_{k=1}^K \\sigma(\\theta^T_k x_i)}.\n", "\\end{align*}" ] }, { "cell_type": "markdown", "id": "b76f7b57", "metadata": {}, "source": [ "#### Softmax Regression in sklearn\n", "Luckily for us, the `sklearn` logistic regression implementation handles softmax regression automatically. In this section we will demonstrate its performance on the full MNIST dataset. We first create our dataset in the usual way:" ] }, { "cell_type": "code", "execution_count": null, "id": "981a8c93", "metadata": {}, "outputs": [], "source": [ "# subsample the data to make it more manageable\n", "nSample = 2000\n", "idxsTrain = np.random.choice(np.arange(trainset.data.shape[0]), size=nSample, replace=False)\n", "idxsTest = np.random.choice(np.arange(testset.data.shape[0]), size=nSample//5, replace=False)\n", "\n", "Xtrain = trainset.data.reshape(-1, 784).numpy()[idxsTrain, :]\n", "Xtest = testset.data.reshape(-1, 784).numpy()[idxsTest, :] \n", "ytrain = trainset.targets.numpy()[idxsTrain]\n", "ytest = testset.targets.numpy()[idxsTest]\n", "\n", "print(f'Xtrain shape = {Xtrain.shape}')\n", "print(f'Xtest shape = {Xtest.shape}')" ] }, { "cell_type": "markdown", "id": "0923b443", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "As mentioned earlier, `sklearn` handles softmax regression easily using the same `LogisticRegression` object as used for the binary regression problem, with an added argument `multi_class` which controls whether we fit a binary logistic or a softmax regression (also referred to as multinomial logistic regression). If we set `multi_class=ovr`, it fits a single logistic to every single label (i.e. $K$ standard logistic fits), whereas if we set `multi_class=multinomial`, we will get a softmax regression fit. Note that the `multi_class=multinomial` is not compatible with the `solver=liblinear` setting.\n", " \n", "Fit a multinomial regression to the entire MNIST dataset using the `sag` solver and `l2` regularization with `C=50` (you may need to increase the `max_iter` to 1000 here), additionally you can increase the `tol` argument to `0.001` for faster convergence. Use the `sklearn.metrics.confusion_matrix`, produce a confusion matrix (on the test set) to display your results." ] }, { "cell_type": "markdown", "id": "bfb15935", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "Recall that the softmax regression requires estimation of $Kp$ parameters, one $p$-dimensional vector for each of the $K$ classes. For the MNIST problem, that means we have $10 \\times 784$ parameters in total. Create a $2 \\times 5$ grid of plots (one for each of the 10 MNIST classes), and use `plt.imshow()` to plot the estimated coefficient vector $\\theta_k$. Note that you will have to reshape each coefficient vector into the $28 \\times 28$ original format of MNIST to see anything interesting. What do you observe?" ] }, { "cell_type": "markdown", "id": "3db32996", "metadata": {}, "source": [ "\n", " \n", "#### Exercise\n", "In some cases, we would like a single metric to summarize the performance of a model as opposed to having a confusion matrix. The most commonly used (and readily available in `sklearn.metrics`) metrics are the precision, recall and F1 scores. Read the following to gain an understanding of these metrics:\n", "\n", "https://towardsdatascience.com/accuracy-precision-recall-or-f1-331fb37c5cb9\n", " \n", "Further, read the following post to understand the difference between micro and macro versions of these metrics:\n", " \n", "https://datascience.stackexchange.com/questions/15989/micro-average-vs-macro-average-performance-in-a-multiclass-classification-settin" ] } ], "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.11.7" }, "vscode": { "interpreter": { "hash": "b26037b2f41de4d7c0242bea01a81f5dc5669a8dc35c3dd1270bda81729334a3" } } }, "nbformat": 4, "nbformat_minor": 5 }