{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 2.5 非参数方法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "之前我们的方法都是预先假设数据服从一个特定的概率分布,然后对对这个分布的参数进行估计。这种方法叫做参数估计。\n", "\n", "但是这种方法的缺陷在于,我们选择的分布可能与实际的分布相差很大:如果数据是个多峰的分布,那么我们用一个高斯分布很难得到一个较好的结果。\n", "\n", "非参数方法与参数估计不同,非参数方法对于数据分布的假设通常是很少的。\n", "\n", "我们先从直方图来入手。考虑一个连续变量 $x$,直方图方法将 $x$ 划分为 $n$ 个长度为 $\\Delta_i$ 的区间,每个区间内观察到的数据点数为 $n_i$,总的数据点为 N,那么我们可以认为,在第 $i$ 个区间的概率密度可以近似为:\n", "\n", "$$\n", "p_i = \\frac{n_i}{N\\Delta_i}\n", "$$\n", "\n", "即我们认为在每个区间它的概率密度是相同的。然后我们显然有 $\\int p(x) dx = 1$。在实际应用中,我们通常让这些区间等长即 $\\Delta_i = \\Delta$。" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nxhhjPOf/DLnyzBUzlqgAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import scipy as sp\n", "import matplotlib.pyplot as plt\n", "from scipy.stats import norm\n", "\n", "%matplotlib inline\n", "\n", "_, axes = plt.subplots(3, 1, figsize=(7,6))\n", "\n", "xx = np.zeros(50)\n", "\n", "n = 15\n", "xx[:n] = norm.rvs(size=(n,), loc=0.25, scale=0.1)\n", "xx[n:] = norm.rvs(size=(50-n,), loc=0.75, scale=0.1)\n", "\n", "dlt = [0.04, 0.08, 0.25]\n", "tt = np.linspace(0, 1, 300)\n", "tp = 0.3 * norm.pdf(tt, loc=0.25, scale=0.1) + 0.7 * norm.pdf(tt, loc=0.75, scale=0.1)\n", "\n", "for i in range(3):\n", " axes[i].hist(xx, bins=np.arange(0,1.01,dlt[i]), normed=True, color='r')\n", " axes[i].plot(tt, tp, 'g')\n", " axes[i].set_ylim(0, 5)\n", " axes[i].set_yticks([0, 5])\n", " axes[i].set_xticks([0, .5, 1])\n", " axes[i].text(0.1, 3, '$\\Delta={}$'.format(dlt[i]), fontsize='x-large')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "上图是两个高斯分布的混合,绿色为实际的概率分布,我们看到,当我们将 $\\Delta$ 设的很小时,很多区域的信息被丢失了,当 $\\Delta$ 设的很大时,又不能很好的反映出多峰的性质。\n", "\n", "在实际应用中,直方图方法只能用在一维或者二维的情况,当维数多的时候并不适合。\n", "\n", "我们使用直方图方法的原因基于两个考虑,第一,对于某个位置的概率密度,我们通常会考虑该点附近某个区域内的数据点的情况,直方图的区间宽度控制了这个区域的大小;第二,直方图的区间宽度选择事实上控制了我们模型的复杂度。考虑这两个因素,我们引入两种广泛使用的非参数估计方法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2.5.1 核密度估计量" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "考虑估计 $D$ 维空间的一个未知概率分布 $p(\\mathbf x)$ 的问题,我们考虑 $\\bf x$ 附近包含它的一个小区域 $\\mathcal R$,这个小区域内的概率质量为:\n", "\n", "$$\n", "P=\\int_{\\mathcal R} p(\\mathbf x) d\\mathbf x\n", "$$\n", "\n", "假设现在我们有 $N$ 个观测点;对于这 N 个点来说,它有 $P$ 的概率落在区域 $\\mathbf R$ 中,所以有 $K$ 个数据点落在 $\\mathbf R$ 中的概率是一个二项分布,概率为\n", "\n", "$$\n", "\\mathrm{Bin}(K| N, P)=\\frac{N!}{K!(N-K)!}P^{K}(1-P)^{N-K}\n", "$$\n", "\n", "利用二项分布的性质,我们知道\n", "$\\mathbb E[K/N] = P$\n", "和\n", "$\\mathrm{var}[K/N]=P(1-P)/N$,当 $N$ 足够大时,我们有:\n", "\n", "$$K\\simeq NP$$\n", "\n", "当区域 $\\mathcal R$ 足够小时,我们有:\n", "\n", "$$P\\simeq p(\\mathbf x)V$$\n", "\n", "其中 $V$ 是区域的体积,这样我们就得到估计值:\n", "\n", "$$\n", "p(\\mathbf x) = \\frac{K}{NV}\n", "$$\n", "\n", "对于 $\\mathcal R$ 的选择,我们要让它足够小,从而 $p(\\mathbf x)$ 可以认为是一个常数;但是要足够大,使得落在这个区域的次数 $K$ 能在均值附近出现峰值。\n", "\n", "当我们固定 $K$,然后决定适合的 $V$ 时,对应的是 $K$ 近邻的方法,当我们固定 $V$ 找 $K$ 的时候,对应的是核方法。\n", "\n", "当 $N\\to\\infty$ 的时候,这两种方法在 $V, K$ 随 $N$ 增大而分别减小和增大的情况下都会收敛到真实分布。\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 核函数方法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "我们将区域 $\\mathcal R$ 限制为以 $\\bf x$ 为中心的一个小立方体。为了计算落在这个区域的数据点数 $K$ 我们定义这样的函数:\n", "\n", "$$\n", "k(\\mathbf u) = \\left\\{\n", "\\begin{aligned}\n", "1, &~|u_i| \\leq 1/2, i=1,\\dots,D \\\\\n", "0, &~{\\rm otherwise}\n", "\\end{aligned}\n", "\\right.\n", "$$\n", "\n", "它表示数据点是否落在以原点为中心的单位立方体。\n", "\n", "$k(\\mathbf u)$ 就是一个核函数的例子,在这个问题上,更确切的说法应该是 Parzen 窗函数。\n", "\n", "从上面的式子可以看出落在,$k(\\frac{\\mathbf{x-x}_n}{h})$ 表示数据点 ${\\bf x}_n$ 是否以 $\\mathbf x$ 为中心,边长为 $h$ 的区域。因此,落在这个区域的数据点总数为:\n", "\n", "$$\n", "K = \\sum_{n=1}^N k(\\frac{\\mathbf{x-x}_n}{h})\n", "$$\n", "\n", "从而概率密度的估计值为\n", "\n", "$$\n", "p({\\bf x})=\\frac{1}{N} \\sum_{n=1}^N \\frac{1}{h^D} k(\\frac{\\mathbf{x-x}_n}{h})\n", "$$\n", "\n", "与直方图法一样,这种方法面临的一个问题是在边界上的不连续性。我们可以考虑一个更加光滑的核函数,比如说最常见的高斯核函数,考虑上式的形式,我们给出一个类似的表达式:\n", "\n", "$$\n", "p({\\bf x})=\\frac{1}{N} \\sum_{n=1}^N \\frac{1}{(2\\pi h^2)^{1/2}} \\exp(-\\frac{\\|\\mathbf{x-x}_n\\|}{2h^2})\n", "$$\n", "\n", "这里 $h$ 对应的是高斯成分的标准差。\n", "\n", "当我们更换了核函数的时候,为了保证概率密度是归一的,求和的部分通常也要满足概率密度的归一性。\n", "\n", "通常,核函数满足的条件为\n", "\n", "$$\n", "\\begin{align}\n", "k(\\mathbf u) & \\geq 0 \\\\\n", "\\int k(\\mathbf u)d\\mathbf u & = 1\n", "\\end{align}\n", "$$\n", "\n", "如图所示为高斯核函数在不同 $h$ 下的拟合结果。" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "_, axes = plt.subplots(3, 1, figsize=(7,6))\n", "\n", "h = 0.005, 0.07, 0.2\n", "\n", "for i in range(3):\n", " tq = np.zeros_like(tp)\n", " for x in xx:\n", " tq += norm.pdf(tt, loc=x, scale=h[i]) / len(tt)\n", " axes[i].plot(tt, tp, 'g')\n", " axes[i].plot(tt, tq, 'b')\n", " axes[i].set_ylim(0, 4)\n", " axes[i].set_yticks([0, 4])\n", " axes[i].set_xticks([0, .5, 1])\n", " axes[i].text(0.1, 3, '$h={}$'.format(h[i]), fontsize='x-large')\n", " \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2.5.2 近邻方法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "在核方法中,一旦我们选定了 $h$,我们就相当于固定了体积 $V$(分别对应于上一节的 $h^D, (2\\pi h^2)^{1/2}$)。\n", "\n", "现在我们考虑固定 $K$ 的情况,此时我们需要找到一个合适的 $V$ 使得落在体积 $V$ 中的点正好为 $K$ 个。\n", "\n", "为了方便,我们考虑点 $\\bf x$ 的一个球域,这个球域正好包含 $K$ 个数据点。此时,球的体积由离 $\\bf x$ 第 $K$ 近的点决定。\n", "\n", "该点的密度近似为:\n", "\n", "$$\n", "p(\\mathbf x)=\\frac{K}{NV}\n", "$$" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "_, axes = plt.subplots(3, 1, figsize=(7,6))\n", "\n", "K = 1, 5, 30\n", "N = 50.0\n", "\n", "for i in range(3):\n", " tq = np.zeros_like(tt)\n", " for j, t in enumerate(tt):\n", " dd = np.abs(xx - t)\n", " dd.sort()\n", " tq[j] = K[i] / N / (2 * dd[K[i]-1]) \n", " axes[i].plot(tt, tp, 'g')\n", " axes[i].plot(tt, tq, 'b')\n", " axes[i].set_ylim([0, 5])\n", " axes[i].set_yticks([0, 5])\n", " axes[i].set_xticks([0, .5, 1])\n", " axes[i].text(0.1, 3, '$K={}$'.format(K[i]), fontsize='x-large')\n", " \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "不同 $K$ 的拟合结果如上图所示。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 拓展到分类问题" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "假设我们有 N 个数据点,第 $\\mathcal C_k$ 类有 $N_k$ 个,从而 $\\sum_{k} N_k = N$。\n", "\n", "对于一个新数据点 $\\bf x$,我们找到包含 K 个点的体积为 $V$ 的区域,从而总的概率密度近似为:\n", "\n", "$$\n", "p(\\mathbf x)=\\frac{K}{NV}\n", "$$\n", "\n", "在这个区域中,第 $\\mathcal C_k$ 类有 $K_k$ 个,条件概率密度近似为:\n", "\n", "$$\n", "p(\\mathbf x|\\mathcal C_k)=\\frac{K_k}{N_kV}\n", "$$\n", "\n", "而类别的先验为:\n", "\n", "$$\n", "p(\\mathcal C_k) = \\frac{N_k}{N}\n", "$$\n", "\n", "于是贝叶斯定理给出:\n", "\n", "$$\n", "p(\\mathcal C_k|\\mathbf x) = \\frac{p(\\mathbf x|\\mathcal C_k)p(\\mathcal C_k)}{p(\\mathbf x)} = \\frac{K_k}{K}\n", "$$\n", "\n", "最小错误率决策给出,我们要将 $\\bf x$ 标记为 $p(\\mathcal C_k|\\mathbf x)$ 即 $K_k / K$ 最大的那个类。\n", "\n", "所以为了对新数据点进行决策,我们首先找到离它最近的 $K$ 个点,然后将数据点划分为 $K$ 个点中最多的那个类;数目相同则随机选取一类。\n", "\n", "当 $K = 1$ 时,这对应于最近邻规则,即新数据点的标签为离它最近的数据点的类别。\n", "\n", "对于最近邻规则,当 $N\\to\\infty$ 时,它的错误里不会超过使用真实分布进行判断的最小错误率的两倍。\n", "\n", "当然,核方法和近邻法的一个缺点在于我们需要存储所有的训练数据。" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.6" } }, "nbformat": 4, "nbformat_minor": 0 }