{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Estimadores de densidad\n", "==" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Author: Jake Vanderplas \n", "#\n", "import numpy as np\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "from distutils.version import LooseVersion\n", "from scipy.stats import norm\n", "from sklearn.neighbors import KernelDensity\n", "\n", "# `normed` is being deprecated in favor of `density` in histograms\n", "if LooseVersion(matplotlib.__version__) >= '2.1':\n", " density_param = {'density': True}\n", "else:\n", " density_param = {'normed': True}\n", "\n", "#----------------------------------------------------------------------\n", "# Plot the progression of histograms to kernels\n", "np.random.seed(1)\n", "N = 20\n", "X = np.concatenate((np.random.normal(0, 1, int(0.3 * N)), np.random.normal(5, 1, int(0.7 * N))))[:, np.newaxis]\n", "X_plot = np.linspace(-5, 10, 1000)[:, np.newaxis]\n", "bins = np.linspace(-5, 10, 10)\n", "\n", "fig, ax = plt.subplots(2, 2, sharex=True, sharey=True)\n", "fig.subplots_adjust(hspace=0.05, wspace=0.05)\n", "\n", "# histogram 1\n", "ax[0, 0].hist(X[:, 0], bins=bins, fc='#AAAAFF', **density_param)\n", "ax[0, 0].text(-3.5, 0.31, \"Histogram\")\n", "\n", "# histogram 2\n", "ax[0, 1].hist(X[:, 0], bins=bins + 0.75, fc='#AAAAFF', **density_param)\n", "ax[0, 1].text(-3.5, 0.31, \"Histogram, bins shifted\")\n", "\n", "# tophat KDE\n", "kde = KernelDensity(kernel='tophat', bandwidth=0.75).fit(X)\n", "log_dens = kde.score_samples(X_plot)\n", "ax[1, 0].fill(X_plot[:, 0], np.exp(log_dens), fc='#AAAAFF')\n", "#ax[1, 0].text(-3.5, 0.31, \"Tophat Kernel Density\")\n", " \n", "# Gaussian KDE\n", "kde = KernelDensity(kernel='gaussian', bandwidth=0.75).fit(X)\n", "log_dens = kde.score_samples(X_plot)\n", "ax[1, 1].fill(X_plot[:, 0], np.exp(log_dens), fc='#AAAAFF')\n", "ax[1, 1].text(-3.5, 0.31, \"Gaussian Kernel Density\")\n", "\n", "for axi in ax.ravel():\n", " axi.plot(X[:, 0], np.full(X.shape[0], -0.01), '+k')\n", " axi.set_xlim(-4, 9)\n", " axi.set_ylim(-0.02, 0.34)\n", "\n", "for axi in ax[:, 0]:\n", " axi.set_ylabel('Normalized Density')\n", "\n", "for axi in ax[1, :]:\n", " axi.set_xlabel('x')\n", " \n", " \n", "#----------------------------------------------------------------------\n", "\n", " \n", "#----------------------------------------------------------------------\n", "# Plot a 1D density example\n", " \n", "N = 100\n", "np.random.seed(1)\n", "X = np.concatenate((np.random.normal(0, 1, int(0.3 * N)), np.random.normal(5, 1, int(0.7 * N))))[:, np.newaxis]\n", "\n", "X_plot = np.linspace(-5, 10, 1000)[:, np.newaxis]\n", "\n", "true_dens = (0.3 * norm(0, 1).pdf(X_plot[:, 0]) + 0.7 * norm(5, 1).pdf(X_plot[:, 0]))\n", "\n", "fig, ax = plt.subplots()\n", "ax.fill(X_plot[:, 0], true_dens, fc='black', alpha=0.2, label='input distribution')\n", "\n", "for kernel in ['gaussian', 'tophat', 'epanechnikov']:\n", " kde = KernelDensity(kernel=kernel, bandwidth=0.5).fit(X)\n", " log_dens = kde.score_samples(X_plot)\n", " ax.plot(X_plot[:, 0], np.exp(log_dens), '-', label=\"kernel = '{0}'\".format(kernel))\n", "\n", "ax.text(6, 0.38, \"N={0} points\".format(N))\n", "\n", "ax.legend(loc='upper left')\n", "ax.plot(X[:, 0], -0.005 - 0.01 * np.random.random(X.shape[0]), '+k')\n", "\n", "ax.set_xlim(-4, 9)\n", "ax.set_ylim(-0.02, 0.4)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "from scipy.stats import norm\n", "\n", "np.random.seed(1)\n", "#np.random.normal(valor_medio, desviación_standard, )\n", "X = np.concatenate((np.random.normal(2, 1, 6), np.random.normal(7, 1, 14)))\n", "X =X[:, np.newaxis] #Convierto los datos del array en un vector columna\n", "\n", "numero_intervalos = np.linspace(-5, 10, 10) #Número de intervalos\n", "plt.hist(X[:, 0], numero_intervalos, facecolor = 'red', **{'density': True})\n", "\n", " \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.hist(X[:, 0], numero_intervalos+1, facecolor = 'red', **{'density': True})\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.neighbors import KernelDensity\n", "\n", "kde = KernelDensity(kernel='tophat', bandwidth=0.75).fit(X)\n", "log_dens = kde.score_samples(X_plot)\n", "X_plot = np.linspace(-5, 10, 1000)[:, np.newaxis]\n", "plt.fill(X_plot[:, 0], np.exp(log_dens), fc='#AAAAFF')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.neighbors import KernelDensity\n", "\n", "kde = KernelDensity(kernel='gaussian', bandwidth=0.75).fit(X)\n", "log_dens = kde.score_samples(X_plot)\n", "X_plot = np.linspace(-5, 10, 1000)[:, np.newaxis]\n", "plt.fill(X_plot[:, 0], np.exp(log_dens), fc='#AAAAFF')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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ab033XQT/vGPf6CsrAx5eXn49re/HfEzXmJZYLn66qvxt7/9DXV1daipqcH7778PAKiursZFF12ExsZGvPHGG83Lp6WlIS8vDwDw17/+tbnfsaCgAH379sXs2bNx991344svvkBJSQkCgQBuvfVWLFiwAF988cVp624qeKmpqaipqWn3GR9krZ49e6K6uhqAOVB466234Pf7UVxcjLVr12LMmDEAgM8//xwHDhxAIBDAW2+9hauvvrrVdCsrK9G/v7nx4euvvx52feQ8OTk5WL58OU6cOAEAKCsrQ0FBAQKBQPNv9c9//nPz/o9UZ0Tyne98B6+++ipqamoAAEeOHMGJEyeQk5ODt99+G6Wlpc3rtYKI4NVXX8XOnTvx29/+FgBw5ZVXYtmyZQCAN954o/m7pKSkYMyYMfjpT3+KKVOmICkpyZI8OF27LpBsTVZWFm666SZkZGRg4MCBGD16NHr37o0FCxZg7NixGDhwIIYPH95cAcyePRtTp07FmDFjkJOTgx49zM3vcnNzsXDhQiQnJyMlJQVLlizBkSNH8OMf/7i5hfP000+ftu5zzjkHs2fPxvDhw5GWloasrCyrvhZ1wPnnn4+rrroK6enpuP7665sHT0UEzzzzDC688ELs3LkT48ePx2OPPYatW7c2D+S3Zv78+bjtttvQv39/jBs3DgcOmNuw3HjjjZg2bRr++te/4ve//z2uueaaeHxNitLQoUPx1FNPYfLkyQgEAkhOTsbzzz+PHj16YPv27Rg1ahR69+7d3GUUqc6IZPLkydixYwfGjzd3ak5JScHSpUsxbNgwzJ07FxMnTkRSUhKuuOIKLF682JLvlJSUhGXLluHGG29Er169sGjRItx1111YuHAh+vTpg9de+/q2Orfffjtuu+025ObmWrJuN2jXJJSjR4/W1q6urampQUpKCmprazFhwgS89NJLGDlypBX5JJuISJ6qjm75eltloS25ubl49tln8fe//71T+aP4srI8pKSkNLcyyJ0ilQfLWiwAcO+99yI/Px91dXWYOXMmgwoRUQKyNLD8+c/tucMtJbLs7GxkZ2fbnQ2yEVsr3uXqK++JiMh5GFiIiMhSDCxERGQpBhYiIrIUAwsREVmKgYWIiCzFwEJERJZiYCEiIksxsBARkaUYWIiIyFIMLEREZCkGFiIishQDCxERWYqBhYiILMXA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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Plot all available kernels\n", "X_plot = np.linspace(-6, 6, 1000)[:, None]\n", "X_src = np.zeros((1, 1))\n", "\n", "fig, ax = plt.subplots(2, 3, sharex=True, sharey=True)\n", "fig.subplots_adjust(left=0.05, right=0.95, hspace=0.05, wspace=0.05)\n", "\n", "\n", "def format_func(x, loc):\n", " if x == 0:\n", " return '0'\n", " elif x == 1:\n", " return 'h'\n", " elif x == -1:\n", " return '-h'\n", " else:\n", " return '%ih' % x\n", "\n", "for i, kernel in enumerate(['gaussian', 'tophat', 'epanechnikov', 'exponential', 'linear', 'cosine']):\n", " axi = ax.ravel()[i]\n", " log_dens = KernelDensity(kernel=kernel).fit(X_src).score_samples(X_plot)\n", " axi.fill(X_plot[:, 0], np.exp(log_dens), '-k', fc='#AAAAFF')\n", " axi.text(-2.6, 0.95, kernel)\n", "\n", " axi.xaxis.set_major_formatter(plt.FuncFormatter(format_func))\n", " axi.xaxis.set_major_locator(plt.MultipleLocator(1))\n", " axi.yaxis.set_major_locator(plt.NullLocator())\n", "\n", " axi.set_ylim(0, 1.05)\n", " axi.set_xlim(-2.9, 2.9)\n", "\n", "ax[0, 1].set_title('Funciones Kernel disponibles')\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.2" } }, "nbformat": 4, "nbformat_minor": 4 }