{ "cells": [ { "cell_type": "markdown", "id": "1bc65724", "metadata": {}, "source": [ "# 5 septembre 2023 : Fonctions multivariées (1)\n", "## Introduction : régression simple\n", "Vous avez terminé votre (re)découverte de l'analyse univariée par une petite séance d'optimisation durant laquelle vous avez réalisé une régression de données au moyen d'une fonction constante $f(x) = k$. Reprenons cet exemple, en guise d'introduction (voir exercice 5.5)." ] }, { "cell_type": "code", "execution_count": 5, "id": "c5acb86d", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "id": "eadae5cb", "metadata": {}, "source": [ "#### Exercice 0.1 : un peu de théorie\n", "Dans un premier temps, on va considérer un jeu de données simple constitué de points dont les coordonnées sont $(x_i, y_i)$. Ces points devront être approchés par une fonction constante $f(x) = k$. Pour ce faire, on va essayer de minimiser la somme des carrés des distances entre les points du jeu de données et la fonction constante.\n", "\n", "Avant toute chose, énoncez la fonction $D(\\cdot)$ représentant cette distance qu'il faudra minimiser:\n", "1. Quelle est la variable de cette fonction ? Quel est son domaine ?\n", "2. Comment énoncer cette fonction si on a deux points ? Trois points ? $n$ points ?\n", "\n", "#### Exercice 0.2 : observons le problème de plus près\n", "Dans un second temps, considérez les points suivants, représentés sur le graphe ci-dessous." ] }, { "cell_type": "code", "execution_count": 6, "id": "1a57648b", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.array([1.0,2.0,3.0])\n", "y = np.array([1.0,0.8,1.2])\n", "\n", "fig, ax = plt.subplots()\n", "ax.plot(x,y,'*b')\n", "plt.ylim([0.0,2.0])\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "2754feb2", "metadata": {}, "source": [ "1. Dessinez la fonction $D(\\cdot)$ sur un graphe avec `matplotlib.pyplot`.\n", "2. Estimez la valeur de sa variable pour laquelle cette fonction sera minimale." ] }, { "cell_type": "code", "execution_count": 7, "id": "68221ff4", "metadata": {}, "outputs": [], "source": [ "# Insert here your code to draw D(.)\n", "\n", "# Plot the result\n", "# fig,ax = plt.subplots()\n", "# ax = plt.plot(...,...)" ] }, { "cell_type": "markdown", "id": "413680c4", "metadata": {}, "source": [ "#### Exercice 0.3 : résoudre le problème\n", "Résolvons maintenant le problème:\n", "1. Dérivez la fonction $D(\\cdot)$ selon sa variable\n", "2. Annulez cette dérivée et déterminez la valeur optimale de la constante $k$\n", "3. Dessinez la fonction de régressions sur le dessin ci-dessous." ] }, { "cell_type": "code", "execution_count": 8, "id": "c3d5bafd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.0, 2.0)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiwAAAGiCAYAAADEJZ3cAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAqD0lEQVR4nO3df0zUd57H8dcoMni5zihaAQNS67komvUQrYCFjVXxRzWSvRQu2U61Z9flYlctac7Fdru1lz3qpe36s7rmaIlrRNoOKJfqVcwK1JOa4A32rmc9vWoh3BDXrjLKnVj1e39QZzvyQ2ZU+Aw+H8k34/cz7++Xz7vDJ7z6nV82y7IsAQAAGGxQf08AAADgbggsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4QQWWoqIiTZ8+XY888ohGjRqlnJwcnT59+q7H1dTUKDU1VVFRUXr88ce1Y8eOTjVut1vJycmy2+1KTk5WRUVFMFMDAAADWFCBpaamRitXrtRnn32mqqoq3bhxQ9nZ2Wpra+v2mHPnzmnhwoXKzMyUx+PRunXrtGrVKrndbn9NXV2d8vLy5HK5dPLkSblcLuXm5ur48eOhdwYAAAYM2718+eEf/vAHjRo1SjU1NcrKyuqyZu3ataqsrNSpU6f8Y/n5+Tp58qTq6uokSXl5efL5fDp48KC/Zv78+Ro+fLhKS0tDnR4AABggIu7l4NbWVklSdHR0tzV1dXXKzs4OGJs3b56Ki4v17bffasiQIaqrq9NLL73UqWbjxo3dnre9vV3t7e3+/Vu3bumPf/yjRowYIZvNFkI3AACgr1mWpStXrmj06NEaNKj7J35CDiyWZamgoEBPPvmkJk+e3G1dS0uLYmJiAsZiYmJ048YNXbx4UXFxcd3WtLS0dHveoqIirV+/PtTpAwAAgzQ1NSk+Pr7b+0MOLC+++KI+//xzHT169K61d17xuP0s1PfHu6rp6UpJYWGhCgoK/Putra0aM2aMmpqa5HA4etUDAADoXz6fTwkJCXrkkUd6rAspsPz85z9XZWWlamtre0xDkhQbG9vpSsmFCxcUERGhESNG9Fhz51WX77Pb7bLb7Z3GHQ4HgQUAgDBzt5dzBPUuIcuy9OKLL6q8vFy///3vNXbs2Lsek56erqqqqoCxQ4cOadq0aRoyZEiPNRkZGcFMDwAADFBBBZaVK1dq9+7d2rNnjx555BG1tLSopaVF//d//+evKSws1HPPPeffz8/P19dff62CggKdOnVK7733noqLi/Xyyy/7a1avXq1Dhw5pw4YN+vLLL7VhwwYdPnxYa9asufcOAQBA2Avqbc3dXa55//33tWzZMknSsmXLdP78eVVXV/vvr6mp0UsvvaQvvvhCo0eP1tq1a5Wfnx9wjo8++kivvvqqvvrqK40bN06//vWv9eMf/7jXjfh8PjmdTrW2tvKUEAAAYaK3f7/v6XNYTEJgAQAg/PT27zffJQQAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4wUdWGpra7V48WKNHj1aNptN+/bt67F+2bJlstlsnbZJkyb5a0pKSrqsuXbtWtANAQCAgSfowNLW1qYpU6Zo69atvarftGmTvF6vf2tqalJ0dLSeeeaZgDqHwxFQ5/V6FRUVFez0AADAABQR7AELFizQggULel3vdDrldDr9+/v27dOlS5f0/PPPB9TZbDbFxsYGOx0AAPAQ6PPXsBQXF2vOnDlKTEwMGL969aoSExMVHx+vRYsWyePx9Hie9vZ2+Xy+gA0AAAxMfRpYvF6vDh48qBdeeCFgfMKECSopKVFlZaVKS0sVFRWlmTNn6syZM92eq6ioyH/1xul0KiEh4UFPHwAA9BObZVlWyAfbbKqoqFBOTk6v6ouKivT222/rf/7nfxQZGdlt3a1btzR16lRlZWVp8+bNXda0t7ervb3dv+/z+ZSQkKDW1lY5HI6g+gAAAP3D5/PJ6XTe9e930K9hCZVlWXrvvffkcrl6DCuSNGjQIE2fPr3HKyx2u112u/1+TxMAABioz54Sqqmp0dmzZ7V8+fK71lqWpYaGBsXFxfXBzAAAgOmCvsJy9epVnT171r9/7tw5NTQ0KDo6WmPGjFFhYaGam5u1a9eugOOKi4s1Y8YMTZ48udM5169fr7S0NI0fP14+n0+bN29WQ0ODtm3bFkJLAABgoAk6sNTX12vWrFn+/YKCAknS0qVLVVJSIq/Xq8bGxoBjWltb5Xa7tWnTpi7PefnyZa1YsUItLS1yOp1KSUlRbW2tnnjiiWCnBwAABqB7etGtSXr7oh0AAGCO3v795ruEAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGC8oANLbW2tFi9erNGjR8tms2nfvn091ldXV8tms3Xavvzyy4A6t9ut5ORk2e12JScnq6KiItipAQCAASrowNLW1qYpU6Zo69atQR13+vRpeb1e/zZ+/Hj/fXV1dcrLy5PL5dLJkyflcrmUm5ur48ePBzs9AAAwANksy7JCPthmU0VFhXJycrqtqa6u1qxZs3Tp0iUNGzasy5q8vDz5fD4dPHjQPzZ//nwNHz5cpaWlvZqLz+eT0+lUa2urHA5HMG0AAIB+0tu/3332GpaUlBTFxcVp9uzZOnLkSMB9dXV1ys7ODhibN2+ejh071u352tvb5fP5AjYAADAwPfDAEhcXp507d8rtdqu8vFxJSUmaPXu2amtr/TUtLS2KiYkJOC4mJkYtLS3dnreoqEhOp9O/JSQkPLAeAABA/4p40D8gKSlJSUlJ/v309HQ1NTXprbfeUlZWln/cZrMFHGdZVqex7yssLFRBQYF/3+fzEVoAABig+uVtzWlpaTpz5ox/PzY2ttPVlAsXLnS66vJ9drtdDocjYAMAAANTvwQWj8ejuLg4/356erqqqqoCag4dOqSMjIy+nhoAADBQ0E8JXb16VWfPnvXvnzt3Tg0NDYqOjtaYMWNUWFio5uZm7dq1S5K0ceNGPfbYY5o0aZKuX7+u3bt3y+12y+12+8+xevVqZWVlacOGDVqyZIn279+vw4cP6+jRo/ehRQAAEO6CDiz19fWaNWuWf//260iWLl2qkpISeb1eNTY2+u+/fv26Xn75ZTU3N2vo0KGaNGmSPv74Yy1cuNBfk5GRob179+rVV1/VL3/5S40bN05lZWWaMWPGvfQGAAAGiHv6HBaT8DksAACEH+M+hwUAACBUBBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGC/owFJbW6vFixdr9OjRstls2rdvX4/15eXlmjt3rh599FE5HA6lp6frk08+CagpKSmRzWbrtF27di3Y6QEAgAEo6MDS1tamKVOmaOvWrb2qr62t1dy5c3XgwAGdOHFCs2bN0uLFi+XxeALqHA6HvF5vwBYVFRXs9AAAwAAUEewBCxYs0IIFC3pdv3HjxoD9f/iHf9D+/fv1z//8z0pJSfGP22w2xcbG9vq87e3tam9v9+/7fL5eHwsAAMJLn7+G5datW7py5Yqio6MDxq9evarExETFx8dr0aJFna7A3KmoqEhOp9O/JSQkPMhpAwCAftTngeXtt99WW1ubcnNz/WMTJkxQSUmJKisrVVpaqqioKM2cOVNnzpzp9jyFhYVqbW31b01NTX0xfQAA0A+CfkroXpSWlur111/X/v37NWrUKP94Wlqa0tLS/PszZ87U1KlTtWXLFm3evLnLc9ntdtnt9gc+ZwAA0P/6LLCUlZVp+fLl+vDDDzVnzpweawcNGqTp06f3eIUFAAA8PPrkKaHS0lItW7ZMe/bs0dNPP33Xesuy1NDQoLi4uD6YHQAAMF3QV1iuXr2qs2fP+vfPnTunhoYGRUdHa8yYMSosLFRzc7N27dolqSOsPPfcc9q0aZPS0tLU0tIiSRo6dKicTqckaf369UpLS9P48ePl8/m0efNmNTQ0aNu2bfejRwAAEOaCvsJSX1+vlJQU/1uSCwoKlJKSotdee02S5PV61djY6K//7W9/qxs3bmjlypWKi4vzb6tXr/bXXL58WStWrNDEiROVnZ2t5uZm1dbW6oknnrjX/gAAwD2qr5eeeqrjtr/YLMuy+u/H3z8+n09Op1Otra1yOBz9PR0AAAaMVaukLVs6bjdtur/n7u3f7z59lxAAAAgPX38tXbwo2WxSWVnH2N690tKlkmVJI0dKiYl9Nx8CCwAA6OSxx/70b5ut4/YPf5BSU/803pfP0fBtzQAAoJPdu6WI7y5r3A4mt28jIjru70tcYQEAAJ385CfSxImBV1RuO35cmjq1b+fDFRYAANCjQYMCb/tlDv33owEAgMlGjZJiYzuusuzY0XEbG9sx3td4SggAAHQpPl46f16KjOx44e2KFdL161J/fJUfgQUAAHTr++HEZuufsCLxlBAAAAgDBBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8Astd1NdLTz3VcQsAAPpH0IGltrZWixcv1ujRo2Wz2bRv3767HlNTU6PU1FRFRUXp8ccf144dOzrVuN1uJScny263Kzk5WRUVFcFO7YHYtUs6ckT63e/6eyYAADy8gg4sbW1tmjJlirZu3dqr+nPnzmnhwoXKzMyUx+PRunXrtGrVKrndbn9NXV2d8vLy5HK5dPLkSblcLuXm5ur48ePBTu+++Ppr6cQJ6d/+TSor6xjbu7dj/8SJjvsBAEDfsVmWZYV8sM2miooK5eTkdFuzdu1aVVZW6tSpU/6x/Px8nTx5UnV1dZKkvLw8+Xw+HTx40F8zf/58DR8+XKWlpV2et729Xe3t7f59n8+nhIQEtba2yuFwhNrSd30F/tuy/nR7W+j/1QAAwG0+n09Op/Ouf78f+GtY6urqlJ2dHTA2b9481dfX69tvv+2x5tixY92et6ioSE6n078lJCTctznv3i1FRHT8+3YwuX0bEdFxPwAA6DsPPLC0tLQoJiYmYCwmJkY3btzQxYsXe6xpaWnp9ryFhYVqbW31b01NTfdtzj/5idTds1HHj3fcDwAA+k5EX/wQ2/efY5F0+1mo7493VXPn2PfZ7XbZ7fb7OMuuDRok3br1p1sAAND3HvgVltjY2E5XSi5cuKCIiAiNGDGix5o7r7r0pVGjpNhYKTVV2rGj4zY2tmMcAAD0rQceWNLT01VVVRUwdujQIU2bNk1DhgzpsSYjI+NBT69b8fHS+fMdTwH97Gcdt+fPd4wDAIC+FfRTQlevXtXZs2f9++fOnVNDQ4Oio6M1ZswYFRYWqrm5Wbt27ZLU8Y6grVu3qqCgQD/96U9VV1en4uLigHf/rF69WllZWdqwYYOWLFmi/fv36/Dhwzp69Oh9aDF033/GyWYL3AcAAH0n6Css9fX1SklJUUpKiiSpoKBAKSkpeu211yRJXq9XjY2N/vqxY8fqwIEDqq6u1l/+5V/q7//+77V582b91V/9lb8mIyNDe/fu1fvvv68f/vCHKikpUVlZmWbMmHGv/QEAgAHgnj6HxSS9fR83AAAwhzGfwwIAAHCvCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAjFdfLz31VMctgIcTgQWA8Xbtko4ckX73u/6eCYD+EtHfEwCArnz9tXTxomSzSWVlHWN790pLl0qWJY0cKSUm9u8cAfQdAgsAIz322J/+bbN13P7hD1Jq6p/GLatPpwSgH/GUEAAj7d4tRXz3v1S3g8nt24iIjvsBPDy4wgLASD/5iTRxYuAVlduOH5emTu37OQHoP1xhAWC8QYMCbwE8fFj+AIw1apQUG9txlWXHjo7b2NiOcQAPF54SAmCs+Hjp/HkpMrLjhbcrVkjXr0t2e3/PDEBfI7AAMNr3w4nNRlgBHlYhPSX07rvvauzYsYqKilJqaqo+/fTTbmuXLVsmm83WaZs0aZK/pqSkpMuaa9euhTI9AAAwwAQdWMrKyrRmzRq98sor8ng8yszM1IIFC9TY2Nhl/aZNm+T1ev1bU1OToqOj9cwzzwTUORyOgDqv16uoqKjQugIAAANK0IHlnXfe0fLly/XCCy9o4sSJ2rhxoxISErR9+/Yu651Op2JjY/1bfX29Ll26pOeffz6gzmazBdTFxsaG1hEAABhwggos169f14kTJ5SdnR0wnp2drWPHjvXqHMXFxZozZ44S7/hM7atXryoxMVHx8fFatGiRPB5Pj+dpb2+Xz+cL2AAAwMAUVGC5ePGibt68qZiYmIDxmJgYtbS03PV4r9ergwcP6oUXXggYnzBhgkpKSlRZWanS0lJFRUVp5syZOnPmTLfnKioqktPp9G8JCQnBtAIAAMJISC+6td3+Yo/vWJbVaawrJSUlGjZsmHJycgLG09LS9Oyzz2rKlCnKzMzUBx98oB/84AfasmVLt+cqLCxUa2urf2tqagqlFQAAEAaCelvzyJEjNXjw4E5XUy5cuNDpqsudLMvSe++9J5fLpcjIyB5rBw0apOnTp/d4hcVut8vO+xsBAHgoBHWFJTIyUqmpqaqqqgoYr6qqUkZGRo/H1tTU6OzZs1q+fPldf45lWWpoaFBcXFww0wMAAANU0B8cV1BQIJfLpWnTpik9PV07d+5UY2Oj8vPzJXU8VdPc3Kxdu3YFHFdcXKwZM2Zo8uTJnc65fv16paWlafz48fL5fNq8ebMaGhq0bdu2ENsCAAADSdCBJS8vT998843eeOMNeb1eTZ48WQcOHPC/68fr9Xb6TJbW1la53W5t2rSpy3NevnxZK1asUEtLi5xOp1JSUlRbW6snnngihJYAAMBAY7Msy+rvSdwPPp9PTqdTra2tcjgc/T0dAADQC739+823NQMAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeCEFlnfffVdjx45VVFSUUlNT9emnn3ZbW11dLZvN1mn78ssvA+rcbreSk5Nlt9uVnJysioqKUKYGAAAGoKADS1lZmdasWaNXXnlFHo9HmZmZWrBggRobG3s87vTp0/J6vf5t/Pjx/vvq6uqUl5cnl8ulkydPyuVyKTc3V8ePHw++IwAAMODYLMuygjlgxowZmjp1qrZv3+4fmzhxonJyclRUVNSpvrq6WrNmzdKlS5c0bNiwLs+Zl5cnn8+ngwcP+sfmz5+v4cOHq7S0tFfz8vl8cjqdam1tlcPhCKYlAADQT3r79zuoKyzXr1/XiRMnlJ2dHTCenZ2tY8eO9XhsSkqK4uLiNHv2bB05ciTgvrq6uk7nnDdvXo/nbG9vl8/nC9gAAMDAFFRguXjxom7evKmYmJiA8ZiYGLW0tHR5TFxcnHbu3Cm3263y8nIlJSVp9uzZqq2t9de0tLQEdU5JKioqktPp9G8JCQnBtAIAAMJIRCgH2Wy2gH3LsjqN3ZaUlKSkpCT/fnp6upqamvTWW28pKysrpHNKUmFhoQoKCvz7Pp+P0AIAwAAV1BWWkSNHavDgwZ2ufFy4cKHTFZKepKWl6cyZM/792NjYoM9pt9vlcDgCNgAAMDAFFVgiIyOVmpqqqqqqgPGqqiplZGT0+jwej0dxcXH+/fT09E7nPHToUFDnBAAAA1fQTwkVFBTI5XJp2rRpSk9P186dO9XY2Kj8/HxJHU/VNDc3a9euXZKkjRs36rHHHtOkSZN0/fp17d69W263W26323/O1atXKysrSxs2bNCSJUu0f/9+HT58WEePHr1PbQIAgHAWdGDJy8vTN998ozfeeENer1eTJ0/WgQMHlJiYKEnyer0Bn8ly/fp1vfzyy2pubtbQoUM1adIkffzxx1q4cKG/JiMjQ3v37tWrr76qX/7ylxo3bpzKyso0Y8aM+9AiAAAId0F/Doup+BwWAADCzwP5HBYAAID+QGABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOOFFFjeffddjR07VlFRUUpNTdWnn37abW15ebnmzp2rRx99VA6HQ+np6frkk08CakpKSmSz2Tpt165dC2V6AABggAk6sJSVlWnNmjV65ZVX5PF4lJmZqQULFqixsbHL+traWs2dO1cHDhzQiRMnNGvWLC1evFgejyegzuFwyOv1BmxRUVGhdQUAAAYUm2VZVjAHzJgxQ1OnTtX27dv9YxMnTlROTo6Kiop6dY5JkyYpLy9Pr732mqSOKyxr1qzR5cuXg5lKAJ/PJ6fTqdbWVjkcjpDPAwAA+k5v/34HdYXl+vXrOnHihLKzswPGs7OzdezYsV6d49atW7py5Yqio6MDxq9evarExETFx8dr0aJFna7A3Km9vV0+ny9gAwAAA1NQgeXixYu6efOmYmJiAsZjYmLU0tLSq3O8/fbbamtrU25urn9swoQJKikpUWVlpUpLSxUVFaWZM2fqzJkz3Z6nqKhITqfTvyUkJATTCgAACCMhvejWZrMF7FuW1WmsK6WlpXr99ddVVlamUaNG+cfT0tL07LPPasqUKcrMzNQHH3ygH/zgB9qyZUu35yosLFRra6t/a2pqCqUVAAAQBiKCKR45cqQGDx7c6WrKhQsXOl11uVNZWZmWL1+uDz/8UHPmzOmxdtCgQZo+fXqPV1jsdrvsdnvvJw8AAMJWUFdYIiMjlZqaqqqqqoDxqqoqZWRkdHtcaWmpli1bpj179ujpp5++68+xLEsNDQ2Ki4sLZnoAAGCACuoKiyQVFBTI5XJp2rRpSk9P186dO9XY2Kj8/HxJHU/VNDc3a9euXZI6wspzzz2nTZs2KS0tzX91ZujQoXI6nZKk9evXKy0tTePHj5fP59PmzZvV0NCgbdu23a8+AQBAGAs6sOTl5embb77RG2+8Ia/Xq8mTJ+vAgQNKTEyUJHm93oDPZPntb3+rGzduaOXKlVq5cqV/fOnSpSopKZEkXb58WStWrFBLS4ucTqdSUlJUW1urJ5544h7bAwAAA0HQn8NiKj6HBQCA8PNAPocFAACgPxBYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxiOwAAAA4xFYAACA8QgsAADAeAQWAABgPAILAAAwHoEFAAAYj8ACAACMR2ABAADGI7AAAADjEVgAAIDxCCwAAMB4BBYAAGC8kALLu+++q7FjxyoqKkqpqan69NNPe6yvqalRamqqoqKi9Pjjj2vHjh2datxut5KTk2W325WcnKyKiopQpgYAAAagoANLWVmZ1qxZo1deeUUej0eZmZlasGCBGhsbu6w/d+6cFi5cqMzMTHk8Hq1bt06rVq2S2+3219TV1SkvL08ul0snT56Uy+VSbm6ujh8/HnpnAABgwLBZlmUFc8CMGTM0depUbd++3T82ceJE5eTkqKioqFP92rVrVVlZqVOnTvnH8vPzdfLkSdXV1UmS8vLy5PP5dPDgQX/N/PnzNXz4cJWWlnY5j/b2drW3t/v3W1tbNWbMGDU1NcnhcATTEgAA6Cc+n08JCQm6fPmynE5n94VWENrb263Bgwdb5eXlAeOrVq2ysrKyujwmMzPTWrVqVcBYeXm5FRERYV2/ft2yLMtKSEiw3nnnnYCad955xxozZky3c/nVr35lSWJjY2NjY2MbAFtTU1OPGSRCQbh48aJu3rypmJiYgPGYmBi1tLR0eUxLS0uX9Tdu3NDFixcVFxfXbU1355SkwsJCFRQU+Pdv3bqlP/7xjxoxYoRsNlswbfXodvIbyFduBnqP9Bf+BnqP9Bf+BnqPD7I/y7J05coVjR49use6oALLbXcGAsuyegwJXdXfOR7sOe12u+x2e8DYsGHDepz3vXA4HAPyl/D7BnqP9Bf+BnqP9Bf+BnqPD6q/Hp8K+k5QL7odOXKkBg8e3OnKx4ULFzpdIbktNja2y/qIiAiNGDGix5ruzgkAAB4uQQWWyMhIpaamqqqqKmC8qqpKGRkZXR6Tnp7eqf7QoUOaNm2ahgwZ0mNNd+cEAAAPl6CfEiooKJDL5dK0adOUnp6unTt3qrGxUfn5+ZI6XlvS3NysXbt2Sep4R9DWrVtVUFCgn/70p6qrq1NxcXHAu39Wr16trKwsbdiwQUuWLNH+/ft1+PBhHT169D61GTq73a5f/epXnZ5+GkgGeo/0F/4Geo/0F/4Geo8m9Bf025qljg+O+8d//Ed5vV5NnjxZv/nNb5SVlSVJWrZsmc6fP6/q6mp/fU1NjV566SV98cUXGj16tNauXesPOLd99NFHevXVV/XVV19p3Lhx+vWvf60f//jH99YdAAAYEEIKLAAAAH2J7xICAADGI7AAAADjEVgAAIDxCCwAAMB4D1Vgqa2t1eLFizV69GjZbDbt27fvrsfU1NQoNTVVUVFRevzxx7Vjx45ONW63W8nJybLb7UpOTlZFRcUDmH3vBNtjeXm55s6dq0cffVQOh0Pp6en65JNPAmpKSkpks9k6bdeuXXuAnXQt2P6qq6u7nPuXX34ZUGfKYxhsf8uWLeuyv0mTJvlrTHr8ioqKNH36dD3yyCMaNWqUcnJydPr06bseF07rMJQew2kdhtJfOK3DUPoLt3W4fft2/fCHP/R/am16enrAlw93xYQ1+FAFlra2Nk2ZMkVbt27tVf25c+e0cOFCZWZmyuPxaN26dVq1apXcbre/pq6uTnl5eXK5XDp58qRcLpdyc3N1/PjxB9VGj4Ltsba2VnPnztWBAwd04sQJzZo1S4sXL5bH4wmoczgc8nq9AVtUVNSDaKFHwfZ32+nTpwPmPn78eP99Jj2Gwfa3adOmgL6ampoUHR2tZ555JqDOlMevpqZGK1eu1GeffaaqqirduHFD2dnZamtr6/aYcFuHofQYTuswlP5uC4d1GEp/4bYO4+Pj9eabb6q+vl719fV66qmntGTJEn3xxRdd1huzBnv8asQBTJJVUVHRY83f/d3fWRMmTAgY+9nPfmalpaX593Nzc6358+cH1MybN8/667/+6/s211D1pseuJCcnW+vXr/fvv//++5bT6bx/E7tPetPfkSNHLEnWpUuXuq0x9TEM5fGrqKiwbDabdf78ef+YqY+fZVnWhQsXLElWTU1NtzXhvg5702NXwmUd9qa/cF6HoTx+4bYOLcuyhg8fbv3TP/1Tl/eZsgYfqisswaqrq1N2dnbA2Lx581RfX69vv/22x5pjx4712Tzvp1u3bunKlSuKjo4OGL969aoSExMVHx+vRYsWdfo/P9OlpKQoLi5Os2fP1pEjRwLuG0iPYXFxsebMmaPExMSAcVMfv9bWVknq9Pv2feG+DnvT453CaR0G0184rsNQHr9wWoc3b97U3r171dbWpvT09C5rTFmDBJYetLS0dPoCxpiYGN24cUMXL17ssebOL3MMF2+//bba2tqUm5vrH5swYYJKSkpUWVmp0tJSRUVFaebMmTpz5kw/zrR34uLitHPnTrndbpWXlyspKUmzZ89WbW2tv2agPIZer1cHDx7UCy+8EDBu6uNnWZYKCgr05JNPavLkyd3WhfM67G2PdwqXddjb/sJ1HYby+IXLOvz3f/93/fmf/7nsdrvy8/NVUVGh5OTkLmtNWYNBf5fQw8ZmswXsW999MPD3x7uquXMsHJSWlur111/X/v37NWrUKP94Wlqa0tLS/PszZ87U1KlTtWXLFm3evLk/ptprSUlJSkpK8u+np6erqalJb731lv/rJKSB8RiWlJRo2LBhysnJCRg39fF78cUX9fnnn/fqO8PCdR0G0+Nt4bQOe9tfuK7DUB6/cFmHSUlJamho0OXLl+V2u7V06VLV1NR0G1pMWINcYelBbGxsp3R44cIFRUREaMSIET3W3Jk0TVdWVqbly5frgw8+0Jw5c3qsHTRokKZPn97v/4ceqrS0tIC5D4TH0LIsvffee3K5XIqMjOyx1oTH7+c//7kqKyt15MgRxcfH91gbruswmB5vC6d1GEp/32f6Ogylv3Bah5GRkfqLv/gLTZs2TUVFRZoyZYo2bdrUZa0pa5DA0oP09HRVVVUFjB06dEjTpk3TkCFDeqzJyMjos3neq9LSUi1btkx79uzR008/fdd6y7LU0NCguLi4Ppjd/efxeALmPhAew5qaGp09e1bLly+/a21/Pn6WZenFF19UeXm5fv/732vs2LF3PSbc1mEoPUrhsw5D7e9Opq7De+kvXNZhVyzLUnt7e5f3GbMG79vLd8PAlStXLI/HY3k8HkuS9c4771gej8f6+uuvLcuyrF/84heWy+Xy13/11VfWn/3Zn1kvvfSS9Z//+Z9WcXGxNWTIEOujjz7y1/zrv/6rNXjwYOvNN9+0Tp06Zb355ptWRESE9dlnn/V5f5YVfI979uyxIiIirG3btller9e/Xb582V/z+uuvW//yL/9i/fd//7fl8Xis559/3oqIiLCOHz9ufH+/+c1vrIqKCuu//uu/rP/4j/+wfvGLX1iSLLfb7a8x6TEMtr/bnn32WWvGjBldntOkx+9v//ZvLafTaVVXVwf8vv3v//6vvybc12EoPYbTOgylv3Bah6H0d1u4rMPCwkKrtrbWOnfunPX5559b69atswYNGmQdOnTIsixz1+BDFVhuv7Xuzm3p0qWWZVnW0qVLrR/96EcBx1RXV1spKSlWZGSk9dhjj1nbt2/vdN4PP/zQSkpKsoYMGWJNmDAhYBH2tWB7/NGPftRjvWVZ1po1a6wxY8ZYkZGR1qOPPmplZ2dbx44d69vGvhNsfxs2bLDGjRtnRUVFWcOHD7eefPJJ6+OPP+50XlMew1B+Ry9fvmwNHTrU2rlzZ5fnNOnx66o3Sdb777/vrwn3dRhKj+G0DkPpL5zWYai/o+G0Dv/mb/7GSkxM9M9l9uzZ/rBiWeauQZtlfffKGQAAAEPxGhYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGO//Abbu+rOgT/6KAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Compute here the optimal value of f(x) = k\n", "# ...\n", "\n", "# Plot of the points\n", "fig, ax = plt.subplots()\n", "ax = plt.plot(x,y,'*b')\n", "plt.ylim([0.0,2.0])\n", "\n", "# Plot of the regression value\n", "# t = np.linspace(x[0],x[-1],100)\n", "# f = ...\n", "# plt.plot(t,f,'r')" ] }, { "cell_type": "markdown", "id": "36adffdc", "metadata": {}, "source": [ "## Analyse multivariée : une régression à plusieurs paramètres\n", "Choisir comme modèle une fonction constante est rarement une bonne idée. La plupart des modèles simples sont des modèles linéaires. On essaye d'attacher aux données une fonction affine de forme $f(x) = ax+b$. C'était typiquement le cas avec la lien température-Ozone.\n", "\n", "#### Exercice 1.1 : d'abord, de la théorie...\n", "Comme précédemment, commençons par un peu de théorie. Soit un jeu de données $(x_i,y_i)$ qu'on veut approcher avec une fonction de type $f(x) = ax+b$. Identiquement, on veut minimiser les moindres carrés entre les données et le modèle.\n", "\n", "1. Quelles sont les variables du problème ? Quelle est le domaine de recherche ?\n", "2. Enoncez l'expression de la fonction distance $D(\\cdot)$ qu'on voudra minimiser. Commencez avec deux points, puis trois, puis $n$.\n", "\n", "#### Exercice 1.2 : visualisation 2D\n", "Comme précédemment, il est toujours utile de visualiser le problème. Pour cela, considérez le petit jeu de données suivant:" ] }, { "cell_type": "code", "execution_count": 9, "id": "42db68cb", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.array([1.0,2.0,3.0,4.0,5.0])\n", "y = np.array([4.5,5.7,5.8,7.1,7.9])\n", "\n", "fig, ax = plt.subplots()\n", "ax.plot(x,y,'*b')\n", "plt.ylim([4.0,8.5])\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "bd605e8e", "metadata": {}, "source": [ "1. Dessinez la function $D(\\cdot)$ sur un graphe avec `matplotlib.pyplot`. De quoi avez-vous besoin pour y parvenir ?\n", "2. Représentez les courbes de niveau de cette fonction avec `matplotlib.pyplot`. La fonction `contours` peut vous aider.\n", "2. Estimez visuellement la valeur de sa variable pour laquelle cette fonction sera minimale." ] }, { "cell_type": "code", "execution_count": 10, "id": "866ff2ee", "metadata": {}, "outputs": [], "source": [ "# Insert here your code to draw D(.)\n", "\n", "# Plot the result\n", "#fig, ax = plt.subplots(subplot_kw={\"projection\": \"3d\"})\n", "\n", "# fig,ax = plt.subplots()\n", "# surf = ax.plot_surface(...,...,...)" ] }, { "cell_type": "markdown", "id": "d92292e0", "metadata": {}, "source": [ "#### Exercice 1.3 : résoudre le problème\n", "Résolvons maintenant le problème : dérivez la fonction $D(\\cdot)$, annulez-la et trouvez la valeur optimale de la fonction de régression. Que vous manque-t-il ? S'il ne manque rien, résolvez le problème." ] }, { "cell_type": "code", "execution_count": 11, "id": "12ad147c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(4.0, 8.5)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Compute here the optimal value for f(x) = ax+b\n", "\n", "# Print the regression\n", "fig, ax = plt.subplots()\n", "ax = plt.plot(x,y,'*b')\n", "plt.ylim([4.0,8.5])\n", "\n", "# Plot of the regression value\n", "# t = np.linspace(x[0],x[-1],100)\n", "# f = ...\n", "# plt.plot(t,f,'r')" ] }, { "cell_type": "code", "execution_count": null, "id": "66bc06f4", "metadata": {}, "outputs": [], "source": [] } ], "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.10.4" }, "vscode": { "interpreter": { "hash": "4a2701644a567983fe4c710d2a706eee629c52060847d7c704aa57db76d57a44" } } }, "nbformat": 4, "nbformat_minor": 5 }