163 lines
45 KiB
Plaintext
163 lines
45 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"id": "e0d4ef4c-0dc9-47e3-814d-43e0ceb90583",
|
|
"metadata": {
|
|
"tags": []
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"import numpy as np\n",
|
|
"import matplotlib.pyplot as plt"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 41,
|
|
"id": "07f35ceb-c355-4ca7-8af0-9e3e0c858500",
|
|
"metadata": {
|
|
"tags": []
|
|
},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"[<matplotlib.lines.Line2D at 0x1f64a0b3390>]"
|
|
]
|
|
},
|
|
"execution_count": 41,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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e822bR08eFC7du1StVpVIpHwfRzUWHSBJUuWaM2aNdq/f/+c6/v379d73vOekEYFBKtWq2nLli2yLEs//elPdckll4Q9pNir1WqqVqthDyM2rr76ah09elRHjhyZ/Vq7dq02btyoI0eOBBIqJGYsusbWrVt18803a+3atVq3bp12796tY8eOadOmTWEPLTZefvllPfPMM7PfT0xM6MiRI1q2bJn+6q/+KsSRxcPmzZt133336aGHHtLSpUtnZ/D6+vr0hje8IeTRdb8777xT119/vZLJpE6ePKk9e/ZofHxcjzzySNhDi42lS5fOqyk699xztXz58kBrjQgWXeJjH/uYTpw4oa985Suanp7WqlWr9KMf/UgXX3xx2EOLjcOHDyuTycx+v3XrVknSLbfcou9+97shjSo+6lutBwcH51z/zne+o09+8pPBDyhmjh8/rptvvlnT09Pq6+vT6tWr9cgjj+jaa68Ne2gIGH0sAACAZ6ixAAAAniFYAAAAzxAsAACAZwgWAADAMwQLAADgGYIFAADwDMECAAB4hmABAAA8Q7AAAACeIVgAAADPECwAAIBnCBYAAMAz/wdK5D9DLNwFSAAAAABJRU5ErkJggg==",
|
|
"text/plain": [
|
|
"<Figure size 640x480 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"n = 50\n",
|
|
"lb , ub = -1 , 4\n",
|
|
"delta = 0.3\n",
|
|
"dx = np . random . uniform ( low = -1 , high =4 , size =( n ,) )\n",
|
|
"dy = 2 -3* dx + dx **2+ np . random . uniform ( low = - delta , high = delta , size =( n ,) )\n",
|
|
"plt . plot ( dx , dy ,'ko')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 38,
|
|
"id": "cc3e1932-2337-4dce-b8d9-ac0825192202",
|
|
"metadata": {
|
|
"tags": []
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"def RegressionPolynomiale(x, y, m):\n",
|
|
" A = np.zeros((len(x), m+1))\n",
|
|
" \n",
|
|
" for i in range(len(x)):\n",
|
|
" for j in range(m+1):\n",
|
|
" A[i, j] = x[i]**j\n",
|
|
" x = np.linalg.solve(A.T@A, A.T@y)\n",
|
|
" \n",
|
|
" return x"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 53,
|
|
"id": "df4c6c2c-4fe6-40a0-9dc3-af4a9d208c8d",
|
|
"metadata": {
|
|
"tags": []
|
|
},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[ 1.99659294 -2.99847341 0.99997957]\n"
|
|
]
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"[<matplotlib.lines.Line2D at 0x1f64b41b8d0>]"
|
|
]
|
|
},
|
|
"execution_count": 53,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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",
|
|
"text/plain": [
|
|
"<Figure size 640x480 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"n = 50\n",
|
|
"lb , ub = -1 , 4\n",
|
|
"delta = 0.01\n",
|
|
"dx = np . random . uniform ( low = -1 , high =4 , size =( n ,) )\n",
|
|
"dy = 2 -3* dx + dx **2+ np . random . uniform ( low = - delta , high = delta , size =( n ,) )\n",
|
|
"plt . plot ( dx , dy ,'ko')\n",
|
|
"\n",
|
|
"m = 2\n",
|
|
"a = RegressionPolynomiale(dx, dy, m)\n",
|
|
"\n",
|
|
"x = np.linspace(lb, ub, 500)\n",
|
|
"y = np.zeros(len(x))\n",
|
|
"\n",
|
|
"print(a)\n",
|
|
"for i in range(m, -1, -1):\n",
|
|
" y += x**i * a[i]\n",
|
|
"\n",
|
|
"plt . plot ( dx , dy ,'ko')\n",
|
|
"plt.plot(x, y)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "3b432d7f-8e74-4629-bec4-84d7d8c20fb0",
|
|
"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.11.5"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|