{ "cells": [ { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "# Random Signals\n", "\n", "*This jupyter notebook is part of a [collection of notebooks](../index.ipynb) on various topics of Digital Signal Processing. Please direct questions and suggestions to [Sascha.Spors@uni-rostock.de](mailto:Sascha.Spors@uni-rostock.de).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Important Distributions\n", "\n", "Analytic cumulative distribution functions (CDFs) and probability density functions (PDFs) are frequently used as models for practical random processes. They typically describe the statistical properties of a random process by a few parameters. These parameters may be fitted to an actual random process and used in algorithms for statistical signal processing. Alternatively the parameters may be used to generate sample functions with a given distribution. For the following, a real-valued wide-sense stationary (WSS) random process $x[k]$ is assumed.\n", "\n", "First a function is defined which plots the PDF and CDF of a given model." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import scipy.stats as stats\n", "\n", "def plot_pdf_cdf(x, distr):\n", " plt.figure(figsize = (10, 5))\n", "\n", " plt.subplot(121)\n", " plt.plot(x, distr.pdf(x))\n", " plt.xlabel(r'$\\theta$')\n", " plt.ylabel(r'$p_x(\\theta)$')\n", " plt.title('PDF')\n", " plt.grid()\n", "\n", " plt.subplot(122)\n", " plt.plot(x, distr.cdf(x))\n", " plt.xlabel(r'$\\theta$')\n", " plt.ylabel(r'$P_x(\\theta)$')\n", " plt.title('CDF')\n", " plt.grid()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Uniform Distribution" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Definition\n", "\n", "The PDF of the [uniform distribution](https://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29) is given as\n", "\n", "\\begin{equation}\n", "p_x(\\theta) = \\begin{cases} \\frac{1}{b - a} & \\text{for } a \\leq \\theta \\leq b \\\\ 0 & \\text{otherwise} \\end{cases}\n", "\\end{equation}\n", "\n", "where $a$ and $b$ with $a \\leq b$ denote the lower and upper bound for the amplitude of the random signal $x[k]$. The uniform distribution implies that all amplitudes between these bounds occur with the same probability $\\frac{1}{b - a}$. Its CDF can be derived from the PDF by integration over $\\theta$\n", "\n", "\\begin{equation}\n", "P_x(\\theta) = \\begin{cases} 0 & \\text{for } \\theta < a \\\\ \n", "\\frac{\\theta - a}{b - a} & \\text{for } a \\leq \\theta < b \\\\\n", "1 & \\text{for } \\theta \\geq b \\end{cases}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The PDF/CDF of a uniformly distributed random signal with $a=0$ and $b=1$ is plotted for illustration" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_pdf_cdf(np.linspace(-.5, 1.5, num=1000), stats.uniform(loc=0, scale=1))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The [linear mean](ensemble_averages.ipynb#Linear-mean) is derived from the PDF as\n", "\n", "\\begin{equation}\n", "\\mu_x = \\frac{a+b}{2}\n", "\\end{equation}\n", "\n", "and the variance as\n", "\n", "\\begin{equation}\n", "\\sigma_x^2 = \\frac{(b-a)^2}{12}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Derive the linear mean and the variance from the PDF.\n", "* What values does the linear mean and variance for the above plotted example PDF/CDF take?\n", "\n", "Solution: The linear mean and the variance can be derived by introducing the PDF into their definitions in terms of ensemble averages. This yields\n", "\n", "$$\\mu_x[k] = E\\{ x[k] \\} = \\int\\limits_{a}^{b} \\theta \\, \\frac{1}{b -a} \\; \\mathrm{d}\\theta = \\frac{a + b}{2}$$\n", "\n", "and\n", "\n", "$$\\sigma_x^2 = E\\{ x[k] \\} - \\mu_x^2 = \\int\\limits_{a}^{b} \\theta^2 \\, \\frac{1}{b -a} \\; \\mathrm{d}\\theta - \\frac{(a+b)^2}{4} = \\frac{(b-a)^2}{12}$$\n", "\n", "It can be concluded from the example PDF that $a=0$ and $b=1$. Introducing these values in above equations derives $\\mu_x = \\frac{1}{2}$ and $\\sigma_x^2 = \\frac{1}{12}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Example\n", "\n", "Most software frameworks for numerical mathematics provide functionality to draw samples from a random process for a given PDF. So does [`Numpy`](http://docs.scipy.org/doc/numpy/reference/routines.random.html) or [`scipy.stats`](http://docs.scipy.org/doc/scipy/reference/stats.html#continuous-distributions). \n", "\n", "In the following example a large but finite number of samples is drawn from a random process which generates uniformly distributed samples. First a function is defined that estimates the PDF by computing the histogram over the given random samples. The CDF is computed from the estimated PDF by cumulative summation. Both the estimated PDF and CDF are plotted for illustration." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def estimate_plot_pdf_cdf(x, nbins=100):\n", "\n", " plt.figure(figsize = (10, 6))\n", " plt.hist(x, nbins, density=True)\n", " plt.title('Estimated PDF')\n", " plt.xlabel(r'$\\theta$')\n", " plt.ylabel(r'$\\hat{p}_x(\\theta)$')\n", " plt.grid()\n", " \n", " plt.figure(figsize = (10, 6))\n", " plt.hist(x, nbins, cumulative=True, density=True)\n", " plt.title('Estimated CDF')\n", " plt.xlabel(r'$\\theta$')\n", " plt.ylabel(r'$\\hat{P}_x(\\theta)$')\n", " plt.grid()\n", " \n", " print('Estimated linear mean: %f' %np.mean(x))\n", " print('Estimated variance: %f' %np.var(x))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the standard uniform distribution ($a=0$, $b=1$) we get the following results" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Estimated linear mean: 0.499219\n", "Estimated variance: 0.083730\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "np.random.seed(1)\n", "estimate_plot_pdf_cdf(stats.uniform.rvs(size=100000, loc=0, scale=1), nbins=100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Why is the estimate of the CDF smoother that the estimate of the PDF?\n", "* Change the parameters `loc` and `scale` in above example. How are these parameters related to the upper $b$ and lower bound $a$?\n", "* What changes if you change the length `size` of the random signal?\n", "\n", "Solution: The estimate of the CDF is smoother as compared to the estimate of the PDF since the integration performed to compute the CDF from the PDF can be interpreted as low-pass filter. This attenuates the 'fine-structure' in the PDF. The lower bound $a$ is equal to `loc` the upper bound $b$ to `loc+scale`. Increasing the length of the random signal lowers the statistical uncertainty when estimating the PDF." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Normal Distribution" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Definition\n", "\n", "The PDF of the [normal distribution](https://en.wikipedia.org/wiki/Normal_distribution)/Gaussian distribution is given as\n", "\n", "\\begin{equation}\n", "p_x(\\theta) = \\frac{1}{\\sqrt{2 \\pi} \\sigma_x} \\mathrm{e}^{- \\frac{(\\theta - \\mu_x)^2}{2 \\sigma_x^2}}\n", "\\end{equation}\n", "\n", "where $\\mu_x$ and $\\sigma_x^2$ denote its linear mean and variance, respectively. The central limit theorem states that averages of random variables independently drawn from independent distributions become normally distributed when the number of random variables is sufficiently large. As a result, random signals that are expected to be a combination of many independent processes often have distributions that are approximately normal. Normal distributions are often used to model random processes whose internal structure is not exactly known but can be assumed to be a combination of various random processes. Note that a normal distributed random signals shows a small but finite probability that samples with very high amplitudes occur. This is in contrast to the facts that technical systems can only generate and process signals of finite amplitude. However, the normal distribution is often assumed to provide a reasonable approximation in such cases.\n", "\n", "The maximum value of the PDF is located at $\\theta = \\mu_x$ and is given as\n", "\n", "\\begin{equation}\n", "p_x(\\mu_x) = \\frac{1}{\\sqrt{2 \\pi} \\sigma_x}\n", "\\end{equation}\n", "\n", "The CDF of the normal distribution is derived by integrating the PDF over $\\theta$\n", "\n", "\\begin{align}\n", "P_x(\\theta) &= \\frac{1}{\\sqrt{2 \\pi} \\sigma_x} \\int\\limits_{—\\infty}^{\\theta} \\mathrm{e}^{- \\frac{(\\zeta - \\mu_x)^2}{2 \\sigma_x^2}} \\mathrm{d}\\zeta \\\\\n", "&= \\frac{1}{2} \\left( 1 + \\text{erf}\\left( \\frac{\\theta-\\mu_x}{\\sqrt{2} \\sigma_x} \\right)\\right)\n", "\\end{align}\n", "\n", "where $\\text{erf}(\\cdot)$ denotes the [error function](https://en.wikipedia.org/wiki/Error_function)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The PDF and CDF are illustrated for the standard zero-mean normal distribution ($\\mu_x=0$, $\\sigma_x^2=1$)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_pdf_cdf(np.linspace(-5, 5, num=100), stats.norm(loc=0, scale=1))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Example\n", "\n", "For the standard zero-mean uniform distribution we get the following numerical results when drawing a large number of random samples" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Estimated linear mean: 0.004897\n", "Estimated variance: 0.993752\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnEAAAGFCAYAAACSZqWqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvFvnyVgAAIABJREFUeJzt3X+U3XV95/Hny1AoK66LxY7HgAZr3C2YimWE7rHVsYLGRaE91YpgD2ytWVtZ7RrrQu3BLpaeqMWtrbiaKttftiktrY1rPCjVqe22aIKg2WDRCKkk648KiEYRHHjvH/ONexknMENm7vd+7jwf58zhfr/fz/fe982He+c1n8/3R6oKSZIkteVhfRcgSZKkxTPESZIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIECdpLCX5iSQ39V3HfJJMJdnbdx2S2maIkzRSkuxJcleS/QM/b1/AfpXkiQeWq+rvqurfLlONv5/kN5bjubvnryTf7N77viRvTbKq23bg3+cbSb6W5B+SvCLJwwb2//0k98z5N3zxctUrqR+H9V2AJM3jBVV1Td9F9OwpVbU7yb8DpoHPAu/str2gqq5J8kjgmcDbgFOB/ziw/5ur6teGWbCk4XIkTlIzkjwxyd8muTPJV5P8Wbf+Y12TTx0YdZo7ZdmNYP1Kkk93o1zvSTKR5IPdqNY1SY4eaP/nSb7UvdbHkpzYrd8AnAu8rnut93frH5vkqiT/kuSWJK8aeK4ju9GxO5LcCDxtoe+5qv4J+DvgyfNsu7OqtgIvBs5L8j1tJI0vQ5yklrwR+BBwNHAs8LsAVfWMbvtTquqoqvqzg+z/M8DpwJOAFwAfBH4VeDSz34evGmj7QWAt8IPAJ4H3dq+1uXv85u61XtBNZb4f+BSwGng28MtJnts91xuAH+p+nguct9A3nOQE4CeA6w/Wpqo+Aezt2klaIQxxkkbR+7rjvQ78vLxb/x3g8cBjq+rbVfX3i3ze362qL1fVPmZHtz5eVddX1beBvwKeeqBhVV1RVd+oqruBXwee0k1fzudpwKOr6pKquqeqbgZ+Dzi72/6zwKVVdXtV3Qr8zgJq/WSSO5gNh+8G/ueDtP+/wKMGll878O/31QW8nqTGeEycpFH0Uwc5Ju51zI7GfaILOJdV1RWLeN4vDzy+a57lowC6kwguBV7E7CjdfV2bY4A753nexwOPTfK1gXWrmA2KAI8Fbh3Y9s8LqPVHq2r3AtodsBq4fWD5tzwmThpvhjhJzaiqLwEvB0jy48A1ST62yLCzEOcAZwGnAXuARwJ3ADlQypz2twK3VNXagzzfF4HjgF3d8uOWstgkT2M2xC12ZFJSw5xOldSMJC9Kcmy3eAezYerAKNmXgScs0Us9ArgbuA34V8Bvztk+97U+AXwjyX/tTmJYleTJXbgCuBK4KMnRXf3/eSmKTPKvkzwf2AL8cVXtXIrnldQGQ5ykUfT+Odc4+6tu/dOAjyfZD2wFXt0dfwazx639QXcM2M8e4uv/IbNTnvuAG4Fr52x/D3BC91rvq6p7gecDJwG3AF9l9ji2A8fQ/bfu+W5h9sSMPzrE+t6f5BvMjgC+Hngr97+8iKQVIFVzZwUkSZI06hyJkyRJapAhTpIkqUGGOEmSpAYZ4iRJkhpkiJMkSWrQirjY7zHHHFNr1qzpu4zv+uY3v8nDH/7wvsvQMrBvx5P9Or7s2/HVct9ed911X62qRz9YuxUR4tasWcOOHTv6LuO7pqenmZqa6rsMLQP7djzZr+PLvh1fLfdtkoXcms/pVEmSpBYZ4iRJkhpkiJMkSWqQIU6SJKlBhjhJkqQGGeIkSZIaZIiTJElqkCFOkiSpQYY4SZKkBhniJEmSGmSIkyRJapAhTpIkqUGGOEmSpAYd1ncBkjRq1lz4gfstb1w3w1Q/pUjSQfUyEpdkfZKbkuxOcuEDtPuZJJVkcmDdRd1+NyV57nAqliRJGi1DH4lLsgq4HDgd2AtsT7K1qm6c0+4RwKuBjw+sOwE4GzgReCxwTZInVdW9w6pf0viYO+K22LZ7Np2xlOVI0qL0MRJ3CrC7qm6uqnuALcBZ87R7I/Am4NsD684CtlTV3VV1C7C7ez5JkqQVpY9j4lYDtw4s7wVOHWyQ5EeB46rqA0l+Zc6+187Zd/V8L5JkA7ABYGJigunp6UOvfIns379/pOrR0rFv27Jx3cyC2k0cOX9b+7p9fmbH10ro25E7sSHJw4C3AucfyvNU1WZgM8Dk5GRNTU0dcm1LZXp6mlGqR0vHvm3L+QucTt24bobLdn7v1+Wec6eWuCINm5/Z8bUS+raPELcPOG5g+dhu3QGPAJ4MTCcBeAywNcmZC9hXkiRpRejjmLjtwNokxyc5nNkTFbYe2FhVd1bVMVW1pqrWMDt9emZV7ejanZ3kiCTHA2uBTwz/LUiSJPVr6CNxVTWT5ALgamAVcEVV7UpyCbCjqrY+wL67klwJ3AjMAK/0zFRJkrQS9XJMXFVtA7bNWXfxQdpOzVm+FLh02YqTJElqgLfdkiRJapAhTpIkqUGGOEmSpAYZ4iRJkho0chf7laRWeD9VSX1yJE6SJKlBjsRJ0hJydE7SsBjiJDXN0CRppTLESVoR5gt7fb62QVPSofKYOEmSpAYZ4iRJkhpkiJMkSWqQx8RJ0ojw2DlJi+FInCRJUoMciZM0dvo8E1WShsWROEmSpAY5EidJPXC0UNKhciROkiSpQYY4SZKkBhniJEmSGmSIkyRJapAhTpIkqUGGOEmSpAYZ4iRJkhpkiJMkSWqQIU6SJKlBhjhJkqQGGeIkSZIaZIiTJElqUC8hLsn6JDcl2Z3kwnm2vyLJziQ3JPn7JCd069ckuatbf0OSdw6/ekmSpP4dNuwXTLIKuBw4HdgLbE+ytapuHGj2J1X1zq79mcBbgfXdts9X1UnDrFmSJGnUDD3EAacAu6vqZoAkW4CzgO+GuKr6+kD7hwM11AoljaQ1F36g7xIkaWT0MZ26Grh1YHlvt+5+krwyyeeBNwOvGth0fJLrk/xtkp9Y3lIlSZJGU6qGO8iV5IXA+qr6hW7554BTq+qCg7Q/B3huVZ2X5AjgqKq6LcnJwPuAE+eM3B3YbwOwAWBiYuLkLVu2LNM7Wrz9+/dz1FFH9V2GloF9u7x27ruzl9edOBK+fFcvL8261Y/s54VXCD+z46vlvn3Ws551XVVNPli7PqZT9wHHDSwf2607mC3A/wCoqruBu7vH13UjdU8Cdszdqao2A5sBJicna2pqailqXxLT09OMUj1aOvbt8jq/p+nUjetmuGxnH1+XsOfcqV5ed6XwMzu+VkLf9jGduh1Ym+T4JIcDZwNbBxskWTuweAbwuW79o7sTI0jyBGAtcPNQqpYkSRohQ//TsqpmklwAXA2sAq6oql1JLgF2VNVW4IIkpwHfAe4Azut2fwZwSZLvAPcBr6iq24f9HiRpWOY7mWPPpjN6qETSqOllfqCqtgHb5qy7eODxqw+y31XAVctbnSRJ0ujr5yAPSXoQXk5Ekh6Yt92SJElqkCFOkiSpQYY4SZKkBhniJEmSGmSIkyRJapAhTpIkqUGGOEmSpAYZ4iRJkhpkiJMkSWqQIU6SJKlBhjhJkqQGGeIkSZIadFjfBUiSN7uXpMVzJE6SJKlBhjhJkqQGGeIkSZIaZIiTJElqkCFOkiSpQYY4SZKkBhniJEmSGuR14iRpDMx3rb09m87ooRJJw+JInCRJUoMMcZIkSQ0yxEmSJDXIY+IkqTHea1YSOBInSZLUJEfiJA2Vo0iStDQciZMkSWqQIU6SJKlBvYS4JOuT3JRkd5IL59n+iiQ7k9yQ5O+TnDCw7aJuv5uSPHe4lUuSJI2GoYe4JKuAy4HnAScALxkMaZ0/qap1VXUS8Gbgrd2+JwBnAycC64F3dM8nSZK0ovQxEncKsLuqbq6qe4AtwFmDDarq6wOLDweqe3wWsKWq7q6qW4Dd3fNJkiStKH2cnboauHVgeS9w6txGSV4JvAY4HPjJgX2vnbPv6vleJMkGYAPAxMQE09PTh1r3ktm/f/9I1aOlY98+uI3rZvouYdEmjmyzbv9ffHB+ZsfXSujbkb3ESFVdDlye5Bzg14DzFrn/ZmAzwOTkZE1NTS15jQ/V9PQ0o1SPlo59++DOb/ASIxvXzXDZzpH9ujyoPedO9V3CyPMzO75WQt/2MZ26DzhuYPnYbt3BbAF+6iHuK0mSNJb6CHHbgbVJjk9yOLMnKmwdbJBk7cDiGcDnusdbgbOTHJHkeGAt8Ikh1CxJkjRShj4/UFUzSS4ArgZWAVdU1a4klwA7qmorcEGS04DvAHfQTaV27a4EbgRmgFdW1b3Dfg+SJEl96+Ugj6raBmybs+7igcevfoB9LwUuXb7qJEmSRp93bJAkSWpQe6dbSWqGN7uXpOXjSJwkSVKDDHGSJEkNMsRJkiQ1yBAnSZLUIE9skKQxNd+JJXs2ndFDJZKWgyNxkiRJDTLESZIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIECdJktQgQ5wkSVKDDHGSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDTLESZIkNeiwvguQNB7WXPiBvkuQpBXFkThJkqQGORInSSvIfCOmezad0UMlkg6VI3GSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDeolxCVZn+SmJLuTXDjP9tckuTHJp5P8TZLHD2y7N8kN3c/W4VYuSZI0GoZ+iZEkq4DLgdOBvcD2JFur6saBZtcDk1X1rSS/CLwZeHG37a6qOmmoRUuSJI2YPkbiTgF2V9XNVXUPsAU4a7BBVX20qr7VLV4LHDvkGiVJkkZaqmq4L5i8EFhfVb/QLf8ccGpVXXCQ9m8HvlRVv9EtzwA3ADPApqp630H22wBsAJiYmDh5y5YtS/5eHqr9+/dz1FFH9V2GlsFK7tud++7su4RlM3EkfPmuvqtYPutWP7LvEnqzkj+z467lvn3Ws551XVVNPli7kb5jQ5KXApPAMwdWP76q9iV5AvCRJDur6vNz962qzcBmgMnJyZqamhpGyQsyPT3NKNWjpbOS+/b8Mb536sZ1M1y2c6S/Lg/JnnOn+i6hNyv5MzvuVkLf9jGdug84bmD52G7d/SQ5DXg9cGZV3X1gfVXt6/57MzANPHU5i5UkSRpFfYS47cDaJMcnORw4G7jfWaZJngq8i9kA95WB9UcnOaJ7fAzwdGDwhAhJkqQVYejzA1U1k+QC4GpgFXBFVe1Kcgmwo6q2Am8BjgL+PAnAF6rqTOCHgXcluY/ZALppzlmtkiRJK0IvB3lU1TZg25x1Fw88Pu0g+/0DsG55q5P0YNaM8fFvktSK8T1SV5K0IAcL5Xs2nTHkSiQthrfdkiRJapAhTpIkqUGGOEmSpAYZ4iRJkhpkiJMkSWqQIU6SJKlBhjhJkqQGeZ04SQ/IC/tK0mhyJE6SJKlBhjhJkqQGGeIkSZIa9JCOiUvycODbVXXvEtcjSRoR8x0P6f1UpdGxoJG4JA9Lck6SDyT5CvBPwBeT3JjkLUmeuLxlSpIkadBCp1M/CvwQcBHwmKo6rqp+EPhx4FrgTUleukw1SpIkaY6FTqeeVlXfmbuyqm4HrgKuSvJ9S1qZJEmSDmqhIW51kl8CngjcDtwAvL+q/vlAg/lCniRJkpbHQqdT/xq4CbgcOB14CvCxJJcnOWK5ipMkSdL8FhriVlXVe6rqb4Dbq+rlzB4jtwfYvFzFSZIkaX4LDXHXJLmge1wAVTVTVW8B/v2yVCZJkqSDWugxca8BLkqyA3hskg3At5gNcLctV3GSJEma34JG4qrqvqq6FHgGsAF4DHAy8H+A5y1feZIkSZrPgkbikqRmfQvY2v3M22apC5QkSdL3Wuh06keTXAX8dVV94cDKJIcze8Hf85i9IPDvL3mFkqSR4a24pNGx0BC3Hvh54E+THA98DTiS2enYDwG/XVXXL0+JkiRJmmtBIa6qvg28A3hHd2eGY4C7gP1VNbOM9UmSJGkeC73EyHdV1Xeq6otV9TXgnUmOBEjyjCWvTpIkSfNa6HTqwbwBuCLJDLO34vrYoZckqS/zHe8kSRpNix6Jm+ONzN6Oq4ArD70cSZIkLcShhrjXVdWvA7/I7KjcgiRZn+SmJLuTXDjP9tckuTHJp5P8TZLHD2w7L8nnup/zDrF+SZKkJi0qxCV5XpKPdwHsSuCJAFX1TeA/LfA5VgGXM3uR4BOAlyQ5YU6z64HJqvoR4C+AN3f7PorZsHgqcArwhiRHL+Y9SJIkjYMHDHFJTkzy3oFV72D2Flw/xuyN738ryUsAqureBb7mKcDuqrq5qu4BtgBnDTaoqo92FxYGuBY4tnv8XODDVXV7Vd0BfJjZy59IkiStKA92YsM13P8G91+pqv99YFuSfwQ+DvzpIl5zNXDrwPJeZkfWDuZlwAcfYN/Vi3htSZKksfBgIe45wKXAud3yLUl+A7ikG0X7DrBs14lL8lJgEnjmQ9h3A7P3eWViYoLp6emlLe4Q7N+/f6Tq0dJpvW83rvOyj/OZONJ/mwfS8v/zrX9mdXAroW8fMMRV1U7+f4ADuA/4aeDlST4HPA74yyRrq+pzC3zNfcBxA8vHduvuJ8lpwOuBZ1bV3QP7Ts3Zd/ogtW9mdsqXycnJmpqamq9ZL6anpxmlerR0Wu/b873EyLw2rpvhsp2HekWm8bXn3Km+S3jIWv/M6uBWQt8u6lupqs4BSHIE8GTgKd3P7yV5QlU9bgFPsx1Y292+ax9wNnDOYIMkTwXeBayvqq8MbLoa+M2BkxmeA1y0mPcgSZI0Dh7Sn5bdyNh13c9i951JcgGzgWwVcEVV7UpyCbCjqrYCbwGOAv48CcAXqurMqro9yRuZDYIwO617+0N5D5IkSS3rZX6gqrYB2+asu3jg8WkPsO8VwBXLV50kSdLoO9SL/UqSJKkHhjhJkqQGGeIkSZIa5DnzkqRDsmaeS9Ps2XRGD5VIK4sjcZIkSQ0yxEmSJDXIECdJktQgQ5wkSVKDDHGSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDfKODdIKNd9V9iVJ7XAkTpIkqUGGOEmSpAY5nSpJWnLzTdfv2XRGD5VI48uROEmSpAYZ4iRJkhpkiJMkSWqQx8RJY85LiUjSeHIkTpIkqUGGOEmSpAYZ4iRJkhpkiJMkSWqQIU6SJKlBhjhJkqQGGeIkSZIaZIiTJElqUC8hLsn6JDcl2Z3kwnm2PyPJJ5PMJHnhnG33Jrmh+9k6vKolSZJGx9Dv2JBkFXA5cDqwF9ieZGtV3TjQ7AvA+cBr53mKu6rqpGUvVJIkaYT1cdutU4DdVXUzQJItwFnAd0NcVe3ptt3XQ32SJEkjr48Qtxq4dWB5L3DqIvb//iQ7gBlgU1W9bymLk1rmfVIlaeXoI8QdqsdX1b4kTwA+kmRnVX1+bqMkG4ANABMTE0xPTw+5zIPbv3//SNWjpdN3325cN9Pba4+ziSP9t10Ko/i91/dnVstnJfRtHyFuH3DcwPKx3boFqap93X9vTjINPBX4nhBXVZuBzQCTk5M1NTX10CteYtPT04xSPVo6ffft+Y7ELYuN62a4bGeLf/OOlj3nTvVdwvfo+zOr5bMS+raPs1O3A2uTHJ/kcOBsYEFnmSY5OskR3eNjgKczcCydJEnSSjH0EFdVM8AFwNXAZ4Arq2pXkkuSnAmQ5GlJ9gIvAt6VZFe3+w8DO5J8Cvgos8fEGeIkSdKK08v8QFVtA7bNWXfxwOPtzE6zzt3vH4B1y16gJEnSiPOODZIkSQ0yxEmSJDXIECdJktQgz5mXJA3FfBej3rPpjB4qkcaDI3GSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDTLESZIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIECdJktQg750qNWq++1BKrfF+qtJD50icJElSgwxxkiRJDTLESZIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ3yEiNSA7yciFYSLzsiLYwjcZIkSQ0yxEmSJDXIECdJktQgQ5wkSVKDDHGSJEkNMsRJkiQ1yBAnSZLUoF5CXJL1SW5KsjvJhfNsf0aSTyaZSfLCOdvOS/K57ue84VUtSZI0OoZ+sd8kq4DLgdOBvcD2JFur6saBZl8AzgdeO2ffRwFvACaBAq7r9r1jGLVLw+CFfSVJC9HHSNwpwO6qurmq7gG2AGcNNqiqPVX1aeC+Ofs+F/hwVd3eBbcPA+uHUbQkSdIo6eO2W6uBWweW9wKnHsK+q+drmGQDsAFgYmKC6enpRRe6XPbv3z9S9WjpLEXfblw3szTFaMlMHGm/9G25vjP9Ph5fK6Fvx/beqVW1GdgMMDk5WVNTU/0WNGB6eppRqkdLZyn69nynU0fOxnUzXLZzbL8um7Dn3KlleV6/j8fXSujbPqZT9wHHDSwf261b7n0lSZLGRh9/Wm4H1iY5ntkAdjZwzgL3vRr4zSRHd8vPAS5a+hIlSaNkvhN+9mw6o4dKpNEx9JG4qpoBLmA2kH0GuLKqdiW5JMmZAEmelmQv8CLgXUl2dfveDryR2SC4HbikWydJkrSi9HKQR1VtA7bNWXfxwOPtzE6VzrfvFcAVy1qgJEnSiPOODZIkSQ0yxEmSJDXIECdJktQgQ5wkSVKDvHql1CPvkyo9dF52RCudI3GSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDTLESZIkNcgQJ0mS1CCvEydJGhteO04riSNxkiRJDTLESZIkNcgQJ0mS1CBDnCRJUoM8sUEaEm92L0laSo7ESZIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIs1OlZeCZqJKk5eZInCRJUoMciZMkjbX5Rsb3bDqjh0qkpeVInCRJUoMciZMkrTgHRuc2rpvh/O6xo3NqjSNxkiRJDeplJC7JeuBtwCrg3VW1ac72I4A/BE4GbgNeXFV7kqwBPgPc1DW9tqpeMay6pfkMHm8z+Fe9JEnLaeghLskq4HLgdGAvsD3J1qq6caDZy4A7quqJSc4G3gS8uNv2+ao6aahFS5IkjZg+plNPAXZX1c1VdQ+wBThrTpuzgD/oHv8F8OwkGWKNkiRJI62P6dTVwK0Dy3uBUw/WpqpmktwJ/EC37fgk1wNfB36tqv5uvhdJsgHYADAxMcH09PSSvYFDtX///pGqR4dm47qZ7z6eOPL+yxoP9uv4Guxbv5fHy0r4Xdva2alfBB5XVbclORl4X5ITq+rrcxtW1WZgM8Dk5GRNTU0Nt9IHMD09zSjVo0Nz/pxj4i7b2drHSg/Gfh1fg32759ypfovRkloJv2v7mE7dBxw3sHxst27eNkkOAx4J3FZVd1fVbQBVdR3weeBJy16xJEnSiOkjxG0H1iY5PsnhwNnA1jlttgLndY9fCHykqirJo7sTI0jyBGAtcPOQ6pYkSRoZQ58f6I5xuwC4mtlLjFxRVbuSXALsqKqtwHuAP0qyG7id2aAH8AzgkiTfAe4DXlFVtw/7PUiSxo+351JrejnIo6q2AdvmrLt44PG3gRfNs99VwFXLXqB0EPN9yUuS1Afv2CBJktQgQ5wkSVKDDHGSJEkNMsRJkiQ1yKtXSpJ0EAc7mcmzVjUKDHHSQXgmqiRplDmdKkmS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIECdJktQgz06V8ExUSYsz33eGlx3RsDkSJ0mS1CBDnCRJUoOcTpUkaQk4xaphcyROkiSpQY7Eaax5woIkaVwZ4iRJWiZOsWo5OZ0qSZLUIEOcJElSg5xOlSRpiJxi1VJxJE6SJKlBjsSpOf4VK0mSIU5jwkuJSGqZf5zqoXA6VZIkqUGOxGmkOcImaaVydE4PxhCnkWFgk6QHZrDTIEOcemFgk6SlYbBbuQxxWnYGNkmSll4vIS7JeuBtwCrg3VW1ac72I4A/BE4GbgNeXFV7um0XAS8D7gVeVVVXD7F0SZJGnqNzK8PQQ1ySVcDlwOnAXmB7kq1VdeNAs5cBd1TVE5OcDbwJeHGSE4CzgROBxwLXJHlSVd073Hex8jiaJkltW+j3uGGvHX2MxJ0C7K6qmwGSbAHOAgZD3FnAr3eP/wJ4e5J067dU1d3ALUl2d8/3j0OqXZKkseYoXjv6CHGrgVsHlvcCpx6sTVXNJLkT+IFu/bVz9l29fKWOFkfDJEl9GNbvn/nCoqHy4Mb2xIYkG4AN3eL+JDf1Wc8cxwBf7bsILb1X2bdjyX4dX/btaMmblrRdy337+IU06iPE7QOOG1g+tls3X5u9SQ4DHsnsCQ4L2ReAqtoMbF6impdUkh1VNdl3HVp69u14sl/Hl307vlZC3/Zx263twNokxyc5nNkTFbbOabMVOK97/ELgI1VV3fqzkxyR5HhgLfCJIdUtSZI0MoY+Etcd43YBcDWzlxi5oqp2JbkE2FFVW4H3AH/UnbhwO7NBj67dlcyeBDEDvNIzUyVJ0kqU2QEuDVOSDd10r8aMfTue7NfxZd+Or5XQt4Y4SZKkBvVxTJwkSZIOkSGuZ0k2Jqkkx/Rdiw5dkrck+ackn07yV0n+Td816dAkWZ/kpiS7k1zYdz1aGkmOS/LRJDcm2ZXk1X3XpKWTZFWS65P8r75rWU6GuB4lOQ54DvCFvmvRkvkw8OSq+hHgs8BFPdejQzBwm8DnAScAL+lu/6f2zQAbq+oE4MeAV9q3Y+XVwGf6LmK5GeL69d+B1wEemDgmqupDVTXTLV7L7LUM1a7v3iawqu4BDtwmUI2rqi9W1Se7x99g9hf+irkD0DhLcixwBvDuvmtZboa4niQ5C9hXVZ/quxYtm58HPth3ETok890m0F/0YybJGuCpwMf7rURL5LeZHSC5r+9CltvY3nZrFCS5BnjMPJteD/wqs1OpaswD9WtV/XXX5vXMTte8d5i1SVqcJEcBVwG/XFVf77seHZokzwe+UlXXJZnqu57lZohbRlV12nzrk6wDjgc+lQRmp9w+meSUqvrSEEvUQ3Cwfj0gyfnA84Fnl9fwad2Cb/Wn9iT5PmYD3Hur6i/7rkdL4unAmUn+A/D9wL/CE4P8AAABq0lEQVRO8sdV9dKe61oWXiduBCTZA0xWVas36lUnyXrgrcAzq+pf+q5Hh6a7d/NngWczG962A+dU1a5eC9Mhy+xf0H8A3F5Vv9x3PVp63Ujca6vq+X3Xslw8Jk5aWm8HHgF8OMkNSd7Zd0F66LqTVA7cJvAzwJUGuLHxdODngJ/sPqs3dKM3UjMciZMkSWqQI3GSJEkNMsRJkiQ1yBAnSZLUIEOcJElSgwxxkiRJDTLESZIkNcgQJ0mS1CBDnCQtUpJVSd6WZFeSnUme0HdNklYeQ5wkLd5FwM1VdSLwO8Av9VyPpBXosL4LkKSWJHk48NNVdXK36hbgjB5LkrRCGeIkaXFOA45LckO3/Cjgmh7rkbRCOZ0qSYtzEnBxVZ1UVScBHwJueJB9JGnJGeIkaXGOBr4FkOQw4DnA+3utSNKKZIiTpMX5LPBj3eP/Anygqm7psR5JK1Sqqu8aJKkZSY4GPggcA/wjsKGq7uq3KkkrkSFOkiSpQU6nSpIkNcgQJ0mS1CBDnCRJUoMMcZIkSQ0yxEmSJDXIECdJktQgQ5wkSVKDDHGSJEkN+n+OcrkSHwrz0wAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "estimate_plot_pdf_cdf(stats.norm.rvs(size=100000, loc=0, scale=1), nbins=100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Change the linear mean $\\mu_x$ and the variance $\\sigma_x^2$ by changing the `loc` and `scale` parameter. How is the mean and variance related to these parameters?\n", "* Assume you want to model measurement noise with zero-mean and a given power $P$. How do you have to chose the parameters of the normal distribution?\n", "\n", "Solution: The linear mean $\\mu_x$ is equal to `loc` and the standard deviation $\\sigma_x$ is equal to `scale`. The quadratic mean $E\\{x^2[k]\\}$ quantifies the average power of a random process. For a zero-mean process the quadratic mean $E\\{x^2[k]\\}$ is equal to the variance $\\sigma_x^2$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Laplace Distribution" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Definition\n", "\n", "The PDF of the [Laplace distribution](https://en.wikipedia.org/wiki/Laplace_distribution) is given as\n", "\n", "\\begin{equation}\n", "p_x(\\theta) = \\frac{1}{\\sqrt{2} \\sigma_x} \\mathrm{e}^{- \\sqrt{2} \\frac{|\\theta - \\mu_x|}{\\sigma_x}}\n", "\\end{equation}\n", "\n", "where $\\mu_x$ and $\\sigma_x^2$ denote the linear mean and variance, respectively. Laplace distributions are often used to model the amplitude distribution of a speech or music signal. The maximum value of the PDF is located at $\\theta = \\mu_x$ and is given as\n", "\n", "\\begin{equation}\n", "p_x(\\mu_x) = \\frac{1}{\\sqrt{2} \\sigma_x}\n", "\\end{equation}\n", "\n", "\n", "The CDF can be derived by integrating the PDF over $\\theta$\n", "\n", "\\begin{equation}\n", "P_x(\\theta) = \\begin{cases}\n", "\\frac{1}{2} \\mathrm{e}^{\\sqrt{2} \\frac{\\theta - \\mu_x}{\\sigma_x}} & \\text{for } \\theta \\leq \\mu_x \\\\\n", "1 - \\frac{1}{2} \\mathrm{e}^{- \\sqrt{2} \\frac{\\theta - \\mu_x}{\\sigma_x}} & \\text{for } \\theta > \\mu_x\n", "\\end{cases}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the zero-mean, unit-variance Laplace distribution the PDF/CDF is illustrated. Note the scale parameter in [`scipy.stats.laplace`](http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.laplace.html#scipy.stats.laplace) is related to the variance by $\\lambda = \\frac{\\sigma_x}{\\sqrt{2}}$" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_pdf_cdf(np.linspace(-5, 5, num=100), stats.laplace(loc=0, scale=1/np.sqrt(2)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Example\n", "\n", "For the standard zero-mean Laplace distribution we get the following estimates when drawing a large number of random samples" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Estimated linear mean: -0.006542\n", "Estimated variance: 1.001713\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "estimate_plot_pdf_cdf(stats.laplace(scale=1/np.sqrt(2)).rvs(size=10000), nbins=100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example - Amplitude Distribution of a Speech Signal\n", "\n", "Lets estimate the PDF and CDF of a recorded speech signal in order to see if we can model it by one of the PDFs introduced above." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Estimated linear mean: -0.000067\n", "Estimated variance: 0.018548\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from scipy.io import wavfile\n", "\n", "fs, x = wavfile.read('../data/speech_8k.wav')\n", "x = np.asarray(x, dtype=float)/2**15\n", "estimate_plot_pdf_cdf(x, nbins=100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Which analytic PDF/CDF can be used to model a speech signal?\n", "* How would you chose the parameters of the distribution to fit the estimated PDF?\n", "\n", "Solution: The Laplace distribution fits very well to the estimated PDF. It is frequently used to model the amplitude distribution of a speech signal. For the given speech signal its mean and variance can be approximated as $\\mu_x = 0$ and $\\sigma_x^2 = 0.02$." ] }, { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "**Copyright**\n", "\n", "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources). Feel free to use the notebook for your own purposes. The text is licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/), the code of the IPython examples under the [MIT license](https://opensource.org/licenses/MIT). Please attribute the work as follows: *Sascha Spors, Digital Signal Processing - Lecture notes featuring computational examples, 2016-2018*." ] } ], "metadata": { "anaconda-cloud": {}, "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.6.4" } }, "nbformat": 4, "nbformat_minor": 1 }