{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "fb4c6d7c-bc75-44e2-9151-d697f912b518", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from numpy.linalg import norm\n", "from math import gamma" ] }, { "cell_type": "markdown", "id": "9ecd3f71-f700-40f1-85a5-02a843357218", "metadata": {}, "source": [ "# Malédiction de la dimension" ] }, { "cell_type": "markdown", "id": "ec0782d2-830e-4011-a79e-0ffc90481afc", "metadata": { "tags": [] }, "source": [ "## Biais de distance" ] }, { "cell_type": "markdown", "id": "261fe315-1d1a-4971-a9e7-3c2a81a50bbb", "metadata": {}, "source": [ "Comment évolue la distance entre 2 points dans une boule en fonction de la dimension ?" ] }, { "cell_type": "markdown", "id": "8a0d53a2-02cc-4079-990b-e545ee97e6f1", "metadata": { "tags": [] }, "source": [ "### Solution" ] }, { "cell_type": "code", "execution_count": 2, "id": "e2de8292-e11f-426c-90ad-2bcd4e77bef6", "metadata": {}, "outputs": [], "source": [ "npts= 1000\n", "dim = 900 # À faire bouger !!" ] }, { "cell_type": "code", "execution_count": 3, "id": "be770cfc-34ea-4612-b094-6c786ce6f6bc", "metadata": {}, "outputs": [], "source": [ "x = np.random.uniform(low=-1,high=1, size=(npts, dim))\n", "y = np.random.uniform(low=-1,high=1, size=(npts, dim))\n", "distance_vector = np.linalg.norm(x-y, axis=0)\n", "# distance_vector = [norm(x-y) for i,x in enumerate(pts) for j,y in enumerate(pts) if i != j ]" ] }, { "cell_type": "code", "execution_count": 4, "id": "8b641fa3-52a3-4861-b946-659f94920213", "metadata": {}, "outputs": [ { "data": { "image/png": "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7NjR30NPprc568msWbMiIno9/jde/mptbe22vLW1Na+Xxk51/TlnPRlJj7NJkyZFRMS0adO6rT916tReX0IoKSmJ0aNHj9jHWV/mrCfjx4+P97znPSPicfZW3//+9+Pw4cMxf/784+5rODyfiZFBlmVZLF68OB5++OF48sknY8qUKd1+vmTJknj++edj69atXbeIiLvvvju+/e1vn/D9/O///m/87Gc/63oyGMrebs568sa89Xb8U6ZMiYkTJ0ZTU1PXsvb29nj22Wejurq6X8ad0kDMWU9G0uOsoqIiJk+efMxbV1988cU455xzetxnYWFhzJgxo9vjrLOzM5qamkbE46wvc9aTX/7yl/HSSy+NiMfZW913333xsY99LM4666zj7nNYPJ+lPC0zEt14441ZcXFxtnHjxmzv3r1dt8OHD/e6TfTwMs173/ve7Ac/+EGWZVl28ODB7HOf+1zW3Nyc7dy5M3viiSeyiy++ODv//POzX/3qVwN5OIPi7eZsx44d2Ze//OXsueeey3bu3Jk9+uij2bnnnptddtll3fbz1jnLsixbsWJFNn78+K5rID7+8Y9nU6ZMyV577bVBPb6BMBBzNtIfZ1mWZXfffXdWVFSUPfTQQ9n27duzpUuXZmPHju320tZHPvKR7J577un694MPPpjlcrnsO9/5TvZf//Vf2fXXX5+NHz8+a2lpGdTjGwgDNWd/9Vd/lW3cuDHbuXNn9pOf/CSrqanJSkpKsn379g3q8Q2EE/0bsH379qygoCD753/+5x73M9yez8TIIIuIHm/f/va3j7vNb8fIW7c5fPhwNnv27Oyss87KTjvttOycc87JFi1aNCye7LLs7eds9+7d2WWXXZadeeaZWS6Xy84777zslltuydra2o7Zz1vnubOzM7v11luz0tLSLJfLZX/wB3+QvfDCC4N4ZANnIOZspD/O3tDY2JidffbZ2bhx47Lq6ursX//1X7v9/JxzzskaGhq6Lbvnnnuyd7/73VlhYWFWVVWVPfPMMwN8NINjoOZs3rx52aRJk7LCwsKsrKwsmzdvXl7XMp3KTnTO6uvrs/Ly8qyjo6PX/Qyn57OCLMuygTrrAgDwdlwzAgAkJUYAgKTECACQlBgBAJISIwBAUmIEAEhKjAAASYkRACApMQIAJCVGAICkxAgAkJQYAQCS+n+0Y3/yidrhBgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.hist(distance_vector, density=1, bins = int(np.sqrt(npts)))\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "a0cab8b2-aa50-4af2-8225-709de43401c3", "metadata": {}, "source": [ "## Volume d'une boule" ] }, { "cell_type": "markdown", "id": "23181849-1ca9-40ae-b8a3-c174a08486a3", "metadata": {}, "source": [ "Comment évolue le volume de la boule unité en fonction de la dimension ?" ] }, { "cell_type": "markdown", "id": "2366f5ba-883c-4fc1-a09c-1debd9c54f56", "metadata": { "tags": [] }, "source": [ "### Solution" ] }, { "cell_type": "markdown", "id": "74a4b18a-c8cf-4f6b-a43c-e5a60fde8543", "metadata": {}, "source": [ "Rmq : Il faut regarder le nb \"curse of dimensionality\" pour la théorie." ] }, { "cell_type": "code", "execution_count": 10, "id": "d45c900b-06f3-45a0-994a-443a12c496e4", "metadata": {}, "outputs": [], "source": [ "def volume_boule_estimé(dim, npts=1_000_000):\n", " pts = np.random.uniform(low=-1, high=1, size=(npts, dim))\n", " npts_danslaboule = np.mean(norm(pts,axis=1) <=1)\n", " return (npts_danslaboule)*(2**dim)\n", "def volume_boule_exact(dim):\n", " return np.pi**(dim/2) / gamma(dim/2+1)" ] }, { "cell_type": "code", "execution_count": 11, "id": "9337d398-ad12-41a4-ba4f-6932af6acacb", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAHHCAYAAACRAnNyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB62ElEQVR4nO3dd3gU1dvG8e/sZrPpDVIghCQEQgkQem/SQRGRLgoo6k/FgooFC0VULK+KAnYFRbFQrCAiSO+E3gJEOgmhJoSQtnveP1ZWQgIkpMxu8nyuay92z87O3DuZSR5mzpzRlFIKIYQQQggHZNA7gBBCCCHEtUihIoQQQgiHJYWKEEIIIRyWFCpCCCGEcFhSqAghhBDCYUmhIoQQQgiHJYWKEEIIIRyWFCpCCCGEcFhSqAghhBDCYUmhUkYdOnQITdOYMWOG3lGKzYwZM9A0jUOHDhXL/JYtW4amaSxbtqxY5nc536ZNm4plfoXhzD/vtLQ07r//fkJCQtA0jVGjRukdKV8REREMHz5c7xh248ePR9M0vWMUWX77dYcOHejQoYNumYpLcf/OKq+kUHEAt99+Ox4eHly4cOGa0wwZMgRXV1fOnDlTismEKHmvv/46M2bM4OGHH2bmzJncc889umVZs2YN48eP5/z587plEELkJoWKAxgyZAiXLl3ip59+yvf99PR0fvnlF7p3706FChVKOZ0QJevvv/+mRYsWjBs3jrvvvpvGjRvrlmXNmjVMmDAh30IlPj6ezz77rPRDlUOLFi1i0aJFescosnvuuYdLly4RHh6udxSnJoWKA7j99tvx9vZm1qxZ+b7/yy+/cPHiRYYMGVLKyYQoecnJyfj5+ekd44bMZjMmk0nvGOWCq6srrq6uescoMqPRiJubW5k4RacnKVQcgLu7O3feeSdLliwhOTk5z/uzZs3C29ub22+/HYB//vmH/v37ExAQgIeHBy1atGD+/Pk3XM61zvsOHz6ciIgI++vL/R3+7//+j2nTplGtWjU8PDzo2rUrR48eRSnFxIkTqVKlCu7u7vTu3ZuzZ8/mme8ff/xB27Zt8fT0xNvbm1tvvZVdu3YVaJ3s2rWLjh074u7uTpUqVXj11VexWq35TluU5Vxt5cqV9O/fn6pVq2I2mwkLC+PJJ5/k0qVLBZ5Heno6//vf/6hQoQI+Pj4MHTqUc+fO5Znuww8/JCYmBrPZTOXKlRk5cmSe/8lfq19EQc/h7927l379+hEQEICbmxtNmjTh119/LdD3sFqtTJ48mZiYGNzc3AgODuZ///tfnu8SERHBbbfdxqpVq2jWrBlubm5Uq1aNr7/++rrzv9xH6ODBg8yfPx9N03Kdz09OTmbEiBEEBwfj5uZGbGwsX331Va55XLmtfvrpp0RFRWE2m2natCkbN27Md30MGDCAwMBA3N3dqVmzJi+++CJg6/PxzDPPABAZGZknT34/i4Lsi5e/548//shrr71GlSpVcHNzo1OnThw4cOC66+iyVatW0bRpU9zc3IiKiuKTTz655rTffPMNjRs3xt3dnYCAAAYNGsTRo0dvuIwLFy4watQoIiIiMJvNBAUF0aVLFzZv3myfpqj7R0H366u37yvX4YQJEwgNDcXb25t+/fqRkpJCZmYmo0aNIigoCC8vL+69914yMzNvat106NCBunXrsnv3bm655RY8PDwIDQ3lrbfeyjO/KVOmEBMTg4eHB/7+/jRp0iTXfziv1UelIPt+YXKUeUo4hEWLFilATZkyJVf7mTNnlMlkUkOHDlVKKZWUlKSCg4OVt7e3evHFF9W7776rYmNjlcFgUPPmzbN/7uDBgwpQ06dPt7e1b99etW/fPs+yhw0bpsLDw/N8tkGDBqpOnTrq3XffVS+99JJydXVVLVq0UC+88IJq1aqV+uCDD9Tjjz+uNE1T9957b655fv3110rTNNW9e3c1ZcoU9eabb6qIiAjl5+enDh48eN11kZiYqAIDA5W/v78aP368evvtt1WNGjVU/fr1FZDr80VZztKlSxWgli5dam977LHHVM+ePdXrr7+uPvnkEzVixAhlNBpVv379rjsvpZSaPn26AlS9evVU27Zt1QcffKBGjhypDAaDateunbJarfZpx40bpwDVuXNnNWXKFPXoo48qo9GomjZtqrKysuzThYeHq2HDhuVZ1tU/y/x+3jt37lS+vr6qTp066s0331RTp05V7dq1U5qm5dpWruX+++9XLi4u6oEHHlAff/yxeu6555Snp2e+GWvWrKmCg4PVCy+8oKZOnaoaNWqkNE1TO3fuvOb8k5KS1MyZM1XFihVVgwYN1MyZM9XMmTNVWlqaSk9PV7Vr11Ymk0k9+eST6oMPPlBt27ZVgJo8eXKe792wYUNVvXp19eabb6q33npLVaxYUVWpUiVXzm3btikfHx9VoUIFNWbMGPXJJ5+oZ599VtWrV8/+/uDBgxWg3nvvvVx58vtZFHRfvLydNWzYUDVu3Fi99957avz48crDw0M1a9bshj+H7du3K3d3d1W1alU1adIkNXHiRBUcHGzfH6706quvKk3T1MCBA9WHH36oJkyYoCpWrKgiIiLUuXPnrrucu+66S7m6uqqnnnpKff755+rNN99UvXr1Ut988419mqLsH4XZr6/evi+vwwYNGqiWLVvm+t0zaNAgddddd6kePXqoadOmqXvuuUcBasKECTe1btq3b68qV66swsLC1BNPPKE+/PBD1bFjRwWoBQsW2Kf79NNPFaD69eunPvnkE/X++++rESNGqMcff9w+zeXfCVd+t4Lu+wXNUR5IoeIgcnJyVKVKlVTLli1ztX/88ccKUH/++adSSqlRo0YpQK1cudI+zYULF1RkZKSKiIhQFotFKVU8hUpgYKA6f/68vX3MmDEKULGxsSo7O9vePnjwYOXq6qoyMjLsefz8/NQDDzyQazlJSUnK19c3T/vVLn/H9evX29uSk5OVr69vrp2+qMvJr1BJT0/PM92kSZOUpmnq8OHD153f5V9KjRs3zvUL56233lKA+uWXX+zfxdXVVXXt2tX+81JKqalTpypAffnll/a2ohQqnTp1UvXq1bP/XJRSymq1qlatWqkaNWpc97usXLlSAerbb7/N1b5w4cI87eHh4QpQK1assLclJycrs9msnn766esu5/Lnb7311lxtkydPVkCuP5JZWVmqZcuWysvLS6Wmpub63hUqVFBnz561T/vLL78oQP3222/2tnbt2ilvb+88P8crC8i33347zx+WK3Ne+bMo6L54eTurXbu2yszMtE/7/vvvK0Dt2LHjuuvnjjvuUG5ubrly7969WxmNxlyFyqFDh5TRaFSvvfZars/v2LFDubi45Gm/mq+vrxo5cuR1pynK/lHQ/VqpaxcqdevWzbVvDR48WGmapnr06JFrWS1btsz1O60w66Z9+/YKUF9//bW9LTMzU4WEhKi+ffva23r37q1iYmKu+52vLlQKs+8XNEd5IKd+HITRaGTQoEGsXbs212HCWbNmERwcTKdOnQBYsGABzZo1o02bNvZpvLy8ePDBBzl06BC7d+8utkz9+/fH19fX/rp58+YA3H333bi4uORqz8rK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jhxh/vz5tG7dmqlTp17z888++ywzZ86ke/fuPPHEE3h6evLpp5/a/5ddXMu5Wq1atYiKimL06NEcP34cHx8f5s6dW+jzwVlZWXTq1IkBAwYQHx/Phx9+SJs2bezj4AQGBjJmzBgmTJhA9+7duf322+3TNW3aNFfnufvvv585c+bQvXt3BgwYQEJCAt988439aNL1TJs2jTZt2lCvXj0eeOABqlWrxsmTJ1m7di3Hjh1j27Zt1/xs+/bt+d///sekSZPYunUrXbt2xWQysX//fmbPns37779Pv379CrVeCuPBBx/kk08+Yfjw4cTFxREREcGcOXNYvXo1kydPxtvbu9Dz/OCDD2jTpg2NGjXiwQcfJDIykkOHDjF//ny2bt0KYB8V98UXX2TQoEGYTCZ69eplL2CuVJR9sTAmTJjAwoULadu2LY888oi9YIuJicm1P0RFRfHqq68yZswYDh06xB133IG3tzcHDx7kp59+4sEHH2T06NH5LuPChQtUqVKFfv36ERsbi5eXF4sXL2bjxo288847QNH3j4Lu1yWhKOvmWrp27UpISAitW7cmODiYPXv2MHXqVG699dZrbp+F2ffFFUrl2iJRKNOmTVPANcdYSEhIUP369VN+fn7Kzc1NNWvWTP3++++5psnvclWllPrmm29UtWrVlKurq2rQoIH6888/r3l58ttvv53rs5cvEZw9e3au9suX4G3cuDHP9N26dVO+vr7Kzc1NRUVFqeHDh6tNmzbdcB1s375dtW/fXrm5uanQ0FA1ceJE9cUXX+R76ejNLie/y5N3796tOnfurLy8vFTFihXVAw88oLZt25bvurza5fWwfPly9eCDDyp/f3/l5eWlhgwZos6cOZNn+qlTp6patWopk8mkgoOD1cMPP5zvWBfvvPOOCg0NVWazWbVu3Vpt2rSpQJcnK2XbVoYOHapCQkKUyWRSoaGh6rbbblNz5sy57ne57NNPP1WNGzdW7u7uytvbW9WrV089++yz6sSJE/Zp8ru8WKlrXw5/tWt9/uTJk+ree+9VFStWVK6urqpevXp5vt+1tlWllALUuHHjcrXt3LlT9enTx77v1KxZU7388su5ppk4caIKDQ1VBoMh1/aW36XiBdkXr7XfXOtnlp/ly5erxo0bK1dXV1WtWjX18ccf28fjuNrcuXNVmzZtlKenp/L09FS1atVS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G8dLL73E5s2bcXFx4a677uLZZ5/l/fffZ+XKlRw4cICxY8fap//2228ZO3Ysr732Gnv27OH111/n5Zdf5quvvso13xdffJHRo0ezdetWoqOjGTx4sP3IzsiRI8nMzGTFihXs2LGDN998Ey8vr3zzxcXFMWDAAAYNGsSOHTsYP348L7/8sr34uuydd96hSZMmbNmyhUceeYSHH36Y+Pj4m1xzQogiKZVbHwohnMawYcNU7969831v4MCBqnbt2kop2x1Xf/rpJ6WUUgcPHlSA+vzzz+3TfvfddwpQS5YssbdNmjRJ1axZ0/46KipKzZo1K9cyJk6cqFq2bHnN+e7atUsBas+ePUopperVq6fGjx+fb97Ldzk+d+6cUkqpu+66S3Xp0iXXNM8884yqU6eO/XV4eLi6++677a+tVqsKCgpSH330Ub7LEEKULDmiIoQoMKXUdft71K9f3/48ODgYgHr16uVqS05OBuDixYskJCQwYsQIvLy87I9XX32VhISEa863UqVKAPb5PP7447z66qu0bt2acePGsX379mvm27NnD61bt87V1rp1a/bv34/FYsl3eZqmERISYl+eEKJ0SaEihCiwPXv2EBkZec33TSaT/fnlgubqtstXDqWlpQHw2WefsXXrVvtj586drFu37obzvTyf+++/n3/++Yd77rmHHTt20KRJE6ZMmVKUr5lreVfnFkKULilUhBAF8vfff7Njxw769u1bLPMLDg6mcuXK/PPPP1SvXj3X43rFUH7CwsJ46KGHmDdvHk8//TSfffZZvtPVrl2b1atX52pbvXo10dHRGI3Gm/4uQoiS46J3ACGE48nMzCQpKQmLxcLJkydZuHAhkyZN4rbbbmPo0KHFtpwJEybw+OOP4+vrS/fu3cnMzGTTpk2cO3eOp556qkDzGDVqFD169CA6Oppz586xdOlSateune+0Tz/9NE2bNmXixIkMHDiQtWvXMnXq1FxXGgkhHIsUKkKIPBYuXEilSpVwcXHB39+f2NhYPvjgA4YNG4bBUHwHYu+//348PDx4++23eeaZZ/D09KRevXqMGjWqwPOwWCyMHDmSY8eO4ePjQ/fu3XnvvffynbZRo0b8+OOPjB07lokTJ1KpUiVeeeUVhg8fXjxfSAhR7DSllNI7hBBCCCFEfqSPihBCCCEclhQqQgghhHBYUqgIIYQQwmFJoSKEEEIIhyWFihBCCCEclhQqQgghhHBYUqgIIYQQwmFJoSKEEEIIhyWFihBCCCEclhQqQgghhHBYUqgIIYQQwmFJoSKEEEIIh/X/bu9uihhcKy4AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(0,25,100)\n", "plt.plot(x, [volume_boule_exact(z) for z in x],label=\"Volume exact\")\n", "x=range(26)\n", "plt.plot(x, [volume_boule_estimé(z) for z in x],label=\"Volume estimé\")\n", "plt.xlabel(\"Dimension\")\n", "plt.ylabel(\"Volume\")\n", "plt.title(\"Volume de la boule en fonction de sa dimension\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "fecbf06b-1006-472c-979d-aa480b6b4bd0", "metadata": {}, "source": [ "## Volume dans la croute de la boule" ] }, { "cell_type": "markdown", "id": "a3b88420-9c47-4029-ba78-c2dea5db8c5e", "metadata": {}, "source": [ "Quelle proportion du volume de la boule est dans la croute de l'anneau, en fonction de la dimension ?\n", "\n", "On prendra la croute de la boule comme étant les gens $x$ de norme $0.99<\\Vert x \\Vert \\le 1$" ] }, { "cell_type": "markdown", "id": "436a77bd-3a6f-4ce7-94cc-38289b60b56f", "metadata": { "tags": [] }, "source": [ "### Solution" ] }, { "cell_type": "code", "execution_count": 7, "id": "5b721a83-cc1a-439e-8e06-3fbb6e046481", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Proportion dans la croute de la boule')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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WLx4MVJSUrBkyRLMnz8f33zzjdFxX3/9dbz00ktITk5Ghw4dMH78eEMP0vTp01FZWYn9+/fj9OnTeO+99+Ds7FxvfcePH8djjz2Gf/7znzh9+jTefPNNzJ8/3xDYan344YcIDw9HUlISnn/+eTz33HNITU1t5Jkjonti8nXGiajFiY2NFR588MF6t8XExAidO3cWBEEQAAg//fSTIAiCkJaWJgAQvvzyS8O+//3vfwUAQkJCgqEtPj5e6Nixo+F1+/bthe+++87oM95++20hMjLytsc9e/asAEBISUkRBEEQunfvLrz55pv11rtnzx4BgHDz5k1BEATh8ccfF4YPH260z8svvyx06dLF8DowMFB44oknDK/1er3g5eUlfP755/V+BhGZF3tuiMisBEG44/iVHj16GJ57e3sDALp3727UlpeXBwDQaDS4fPkypk6dCmdnZ8PjnXfeweXLl297XF9fXwAwHGfGjBl45513MGDAACxcuBCnTp26bX0pKSkYMGCAUduAAQNw8eJF6HS6ej9PJpPBx8fH8HlE1LQYbojIrFJSUhAcHHzb7XZ2dobntSHor221d1yVlpYCAFatWoXk5GTD48yZM/j999/vetza40ybNg1XrlzBk08+idOnTyM8PByffPLJvfyaRp/317qJqGkx3BCR2ezevRunT5/Gww8/bJLjeXt7w8/PD1euXEFISIjR404Bqj4BAQF49tlnsXHjRsyZMwerVq2qd7/OnTvj0KFDRm2HDh1Chw4dYGNj0+jfhYjMx1bqAojIOlRWViInJwc6nQ65ubnYsWMH4uPj8fe//x0TJ0402ecsWrQIM2bMgEqlwogRI1BZWYljx47h5s2biIuLa9AxZs2ahZEjR6JDhw64efMm9uzZg86dO9e775w5c9C3b1+8/fbbiImJQWJiIj799FOjO7SIyLIw3BCRSezYsQO+vr6wtbWFu7s7wsLC8PHHHyM2NhZyuek6iadNmwZHR0d88MEHePnll+Hk5ITu3btj1qxZDT6GTqfD9OnTce3aNbi6umLEiBH46KOP6t23d+/e+P7777FgwQK8/fbb8PX1xVtvvYVJkyaZ5hciIpOTCYIgSF0EERERkalwzA0RERFZFYYbIiIisioMN0RERGRVGG6IiIjIqjDcEBERkVVhuCEiIiKrwnBDREREVoXhhoiIiKwKww0RERFZFYYbIiIisioMN0RERGRV/h8l2d3h+m6pogAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = range(500)\n", "plt.plot(x, [1-0.99**t for t in x])\n", "plt.xlabel(\"Dimension\")\n", "plt.ylabel(\"Proportion dans la croute de la boule\")" ] }, { "cell_type": "markdown", "id": "9b6ac1d0-a827-4018-b188-ce43fee58f27", "metadata": {}, "source": [ "## Concentration Gaussienne" ] }, { "cell_type": "markdown", "id": "416ea95e-bc68-4ff7-8466-2f58d1a2377d", "metadata": {}, "source": [ "Comment évolue la concentration de la loi gaussienne en fonction de la dimension ?\n", "\n", "On pourra se convaincre avec un histogramme." ] }, { "cell_type": "markdown", "id": "c8b5aa97-97c6-41ac-9191-993ec735673c", "metadata": { "tags": [] }, "source": [ "### Solution" ] }, { "cell_type": "code", "execution_count": 12, "id": "c5481587-b31f-4bc5-981d-d045e7f0c9c4", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "npts = 5000\n", "dim = 24857\n", "x = np.random.normal(size = (npts, dim))\n", "plt.hist(norm(x, axis=1), bins = int(np.sqrt(npts)), density=1)\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"Concentration\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "77481aed-6675-404d-812f-26a76374c529", "metadata": {}, "source": [ "## Loi du maximum d'une gaussienne ?" ] }, { "cell_type": "code", "execution_count": 13, "id": "6d5e5b95-238d-49e3-b644-852e27a896ab", "metadata": {}, "outputs": [ { "data": { "image/png": "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V23bttXWrVutd5252sGDBxUREaHVq1fb3HI+adIk5efn6+WXX67ReoqLixUdHa1ly5ape/fu1vbHH39cJ06c0CuvvFLhtpf6PazK3+9a9SBEAADqutDQUL322mvKzs52WQ2fffaZPvroI+3du1fr16/XkCFDFBkZqZtuusmm3//93/+pWbNmNfLRE7+VnZ2tqVOn2oQfSQoODtbs2bNrpIZacRs8AAD1iatvujl//rymTp2qPXv2yMfHR926ddPbb79d5m4tf39/TZ06tcbra9GihVq0aFGmfeLEiTVWAwEIAIDfqMkPI3WWhIQEJSQkuLqMWo1TYAAAwHQIQAAAwHQIQAAAwHQIQAAAwHQIQAAAwHQIQAAAwHS4DR6opsgpK+3abt+c/g6uBEBFRo4cqaVLl+ovf/mLUlNTbdaNHTtWf//73zVixIh6cQs8KocjQAAAU4iIiFB6errOnj1rbTt37pyWLVumq6++2oWVwRUIQAAAU7juuusUERGh5cuXW9uWL1+uq6++Wp06dbK2lZaWKjk5WVFRUfL29lbHjh31/vvvW9eXlJRo9OjR1vUtW7bUggULbN5r5MiRGjRokJ5//nmFhYWpadOmGjt2rM6fP+/8iaJSOAUGAKiewsKafb9qfIjvfffdp9dff13Dhg2TJC1ZskSjRo1SVlaWtU9ycrLeeustpaamKjo6WmvWrNE999yjoKAg9ezZU6Wlpbrqqqv03nvvqWnTplq/fr0eeOABhYWF6a677rKO8/nnnyssLEyff/65du3apcGDBysmJkZjxoyxu344DgEIAFA9V1xRs+9nGHZves899ygpKUn79++XJK1bt07p6enWAFRUVKSnn35aq1evVlxcnCSpefPmWrt2rV5++WX17NlT7u7umjVrlnXMqKgobdiwQe+++65NAAoICNDChQvl5uamVq1aqX///srMzCQA1RIEIACAaQQFBal///5KS0uTYRjq37+/AgMDret37dqlM2fOqHfv3jbbFRcX25wmW7RokZYsWaLs7GydPXtWxcXFiomJsdmmbdu2cnNzs74OCwvT999/75yJocoIQACA6ikocHUFVXLfffdp3Lhxki4Emd8q+P9zWblypa688kqbdZ6enpKk9PR0PfbYY5o7d67i4uLk4+Oj5557Tps2bbLp//tPXrdYLCotLXXoXGA/AhAAoHqq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0qSJjh07pkaNGik4OJgABAAAajW7boOfMGGCBgwYoBMnTsjb21sbN27U/v371blzZz3//POOrhEAAMCh7ApA27Zt08SJE9WgQQO5ubmpqKhIERERevbZZzV16lRH1wgAAOBQdgUgd3d3NWhwYdPg4GBlZ2dLkvz8/HTgwAHHVQcAAOAEdl0D1KlTJ3311VeKjo5Wz549NX36dB07dkxvvvmm2rVr5+gaAQAAHMquI0BPP/20wsLCJElPPfWUAgIC9NBDD+no0aN65ZVXHFogAACAo1X5CJBhGAoODrYe6QkODlZGRobDCwMAAHCWKh8BMgxDLVq04FofAABQZ1U5ADVo0EDR0dE6fvy4M+oBAABwOruuAZozZ44mTZqk7du3O7oeAAAAp7PrLrDhw4frzJkz6tixozw8POTt7W2z/pdffnFIcQAAAM5gVwCaP3++LBaLo2sBAACoEXYFoJEjRzq4DAAAgJpj1zVAbm5uOnLkSJn248ePy83NrdpFAQAAOJNdAcgwjHLbi4qK5OHhUa2CAAAAnK1Kp8BeeOEFSZLFYtGrr76qK664wrqupKREa9asUatWrRxbIQAAgINVKQDNnz9f0oUjQKmpqTanuzw8PBQZGanU1FTHVggAAOBgVQpAe/fulSTdcsstWr58uQICApxSFAAAgDPZdRfY559/7ug6AAAAaoxdAaikpERpaWnKzMzUkSNHVFpaarP+s88+c0hxAAAAzmBXABo/frzS0tLUv39/tWvXjociAgCAOsWuAJSenq53331Xt912m6PrAQAAcDq7ngPk4eGhFi1aOLoWAACAGmHXEaCJEydqwYIFWrhwYbVOf61Zs0bPPfectmzZopycHH344YcaNGjQJbfJyspSYmKifvjhB0VERGjatGllPppj0aJFeu6555Sbm6uOHTvqxRdfVNeuXe2uEzUrcspKV5cAAKjn7ApAa9eu1eeff66PP/5Ybdu2lbu7u8365cuXV2qcwsJCdezYUffdd5/uuOOOy/bfu3ev+vfvrwcffFBvv/22MjMzdf/99yssLEwJCQmSpHfeeUeJiYlKTU1VbGysUlJSlJCQoJ9//lnBwcFVnywAAKh37ApA/v7+uv3226v95v369VO/fv0q3T81NVVRUVGaO3euJKl169Zau3at5s+fbw1A8+bN05gxYzRq1CjrNitXrtSSJUs0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AABMhwAEAABMhwAEAABMhwAEAABMp1YEoEWLFikyMlJeXl6KjY3V5s2bK+yblpYmi8Vis3h5edn0MQxD06dPV1hYmLy9vRUfH6+dO3c6exoAAKCOcHkAeuedd5SYmKgZM2Zo69at6tixoxISEnTkyJEKt/H19VVOTo512b9/v836Z599Vi+88IJSU1O1adMmNW7cWAkJCTp37pyzpwMAAOoAlwegefPmacyYMRo1apTatGmj1NRUNWrUSEuWLKlwG4vFotDQUOsSEhJiXWcYhlJSUjRt2jQNHDhQHTp00BtvvKHDhw9rxYoVNTAjAABQ27k0ABUXF2vLli2Kj4+3tjVo0EDx8fHasGFDhdsVFBSoWbNmioiI0MCBA/XDDz9Y1+3du1e5ubk2Y/r5+Sk2NrbCMYuKipSfn2+zAACA+sulAejYsWMqKSmxOYIjSSEhIcrNzS13m5YtW2rJkiX65z//qbfeekulpaXq1q2bDh48KEnW7aoyZnJysvz8/KxLREREdacGAABqMZefAququLg4DR8+XDExMerZs6eWL1+uoKAgvfzyy3aPmZSUpFOnTlmXAwcOOLBiAABQ27g0AAUGBsrNzU15eXk27Xl5eQoNDa3UGO7u7urUqZN27dolSdbtqjKmp6enfH19bRYAAFB/uTQAeXh4qHPnzsrMzLS2lZaWKjMzU3FxcZUao6SkRN9//73CwsIkSVFRUQoNDbUZMz8/X5s2bar0mAAAoH5r6OoCEhMTNWLECHXp0kVdu3ZVSkqKCgsLNWrUKEnS8OHDdeWVVyo5OVmS9Le//U033HCDWrRooZMnT+q5557T/v37df/990u6cIfYo48+qieffFLR0dGKiorSE088ofDwcA0aNMhV0wQAALWIywPQ4MGDdfToUU2fPl25ubmKiYlRRkaG9SLm7OxsNWjwvwNVJ06c0JgxY5Sbm6uAgAB17txZ69evV5s2bax9Jk+erMLCQj3wwAM6efKkevTooYyMjDIPTAQAAOZkMQzDcHURtU1+fr78/Px06tQprgeqhsgpK11dAn7Hu/icdsz/sySp9YT3ddaDfxQ40r45/Z06fmFxoa5IvkKSVJBUoMYejZ36fkBdU5W/33XuLjAAAIDqIgABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABAADTcfmToAGgvnD2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Kygo0O7duxUWFlbu+ri4OGVmZtq0ffrpp4qLi6uJ8hzicnOUpGeffVazZ89WRkaGunTpUoPVOcal5lgX9zfludzPsa7tb8pzuTnW9f1NuVydwOB4vz91cu+9917yX6B18ZD05eaYnZ1t+Pj4GOPGjTN+/vln49///rcRHBxsPPnkky6o1j6Xm+OMGTMMHx8f4x//+IexZ88e4z//+Y9xzTXXGHfddZcLqr28iRMnGllZWcbevXuNdevWGfHx8UZgYKBx5MgRwzDKzm/dunVGw4YNjeeff97YsWOHMWPGDMPd3d34/vvvXTWFy6rqHOfMmWN4eHgY77//vpGTk2NdTp8+7aopXFZV5/h7dWF/U9U51sX9TVXnWNf2N5XBRdAmkJ2dXSa51ze/n2NERIQ++eQTTZgwQR06dNCVV16p8ePH6/HHH3dhldXz+zlOmzZNFotF06ZN06FDhxQUFKQBAwboqaeecmGVFTt48KCGDh2q48ePKygoSD169NDGjRsVFBQkqez8unXrpmXLlmnatGmaOnWqoqOjtWLFilr9DKCqzvGll15ScXGx/vznP9uMM2PGDM2cObMmS6+0qs6xLqrqHOvi/qaqc6xr+5vKsBhGXT12BQAAYJ+6HdMBAADsQAACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACAACmQwACUO8dPXpUoaGhevrpp61t69evl4eHhzIzM11YGQBX4cNQAZjCqlWrNGjQIK1fv14tW7ZUTEyMBg4cqHnz5rm6NAAuQAACYBpjx47V6tWr1aVLF33//ff66quv5Onp6eqyALgAAQiAaZw9e1bt2rXTgQMHtGXLFrVv397VJQFwEa4BAmAau3fv1uHDh1VaWqp9+/a5uhwALsQRIACmUFxcrK5duyomJkYtW7ZUSkqKvv/+ewUHB7u6NAAuQAACYAqTJk3S+++/r2+//VZXXHGFevbsKT8/P/373/92dWkAXIBTYADqvaysLKWkpOjNN9+Ur6+vGjRooDfffFNffvmlXnrpJVeXB8AFOAIEAABMhyNAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdAhAAADAdP4fmZtN4q2MejQAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "npts = 1000\n", "dim = 1_000_857\n", "x = np.random.normal(size = (npts, dim))\n", "maxes = [np.max(z) for z in x]\n", "plt.hist(maxes, bins = int(np.sqrt(npts)), density=1)\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"Concentration\")\n", "plt.vlines([np.sqrt(2*np.log(dim))], [0], [2], color=\"g\", label=f\"sqrt(2*log(dim))\")\n", "plt.vlines( [np.mean(maxes)], [0], [2], color=\"r\", label=\"Mean\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "id": "18786e01", "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" }, "vscode": { "interpreter": { "hash": "e7370f93d1d0cde622a1f8e1c04877d8463912d04d973331ad4851f04de6915a" } } }, "nbformat": 4, "nbformat_minor": 5 }