{ "metadata": { "name": "", "signature": "sha256:5932fd5fb31f155b0a6dd3d88ecc11e6af56399d0c22997511b4c289ee32df9f" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "*Sebastian Raschka* \n", "last modified: 04/03/2014" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "I am really looking forward to your comments and suggestions to improve and extend this tutorial! Just send me a quick note \n", "via Twitter: [@rasbt](https://twitter.com/rasbt) \n", "or Email: [bluewoodtree@gmail.com](mailto:bluewoodtree@gmail.com)\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Problem Category\n", "- Statistical Pattern Recognition \n", "- Supervised Learning \n", "- Parametric Learning \n", "- Bayes Decision Theory \n", "- Multivariate data (2-dimensional)\n", "- 2-class problem\n", "- equal variances\n", "- equal prior probabilities\n", "- Gaussian model (2 parameters)\n", "- no conditional Risk (1-0 loss functions)\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "# Sections\n", "\n", "\n", "

Given information
\n", "• Deriving the decision boundary
\n", "• Classifying some random example data
\n", "• Calculating the Chernoff theoretical bounds for P(error)
\n", "• Calculating the empirical error rate
\n", "\n", " \n", "\n", " \n", " \n", "\n", "\n", "\n", "


" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Given information:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "[back to top]
\n", "\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "\n", "####model: continuous univariate normal (Gaussian) model for the class-conditional densities\n", "\n", "\n", "$p(\\vec{x} | \\omega_j) \\sim N(\\vec{\\mu}|\\Sigma)$ \n", "\n", "$p(\\vec{x} | \\omega_j) \\sim \\frac{1}{(2\\pi)^{d/2} |\\Sigma|^{1/2}} \\exp{ \\bigg[-\\frac{1}{2} (\\vec{x}-\\vec{\\mu})^t \\Sigma^{-1}(\\vec{x}-\\vec{\\mu}) \\bigg] }$\n", "\n", "\n", "\n", "\n", "####Prior probabilities:\n", "\n", "$P(\\omega_1) = P(\\omega_2) = 0.5$\n", "\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The samples are of 2-dimensional feature vectors:\n", "\n", "$\\vec{x} = \\bigg[ \n", "\\begin{array}{c}\n", "x_1 \\\\\n", "x_2 \\\\\n", "\\end{array} \\bigg]$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Means of the sample distributions for 2-dimensional features:\n", "\n", "$\\vec{\\mu}_{\\,1} = \\bigg[ \n", "\\begin{array}{c}\n", "0 \\\\\n", "0 \\\\\n", "\\end{array} \\bigg]$,\n", "$\\; \\vec{\\mu}_{\\,2} = \\bigg[ \n", "\\begin{array}{c}\n", "1 \\\\\n", "1 \\\\\n", "\\end{array} \\bigg]$\n", "\n", "#### Covariance matrices for the statistically independend and identically distributed ('i.i.d') features: \n", "\n", "$\\Sigma_i = \\bigg[ \n", "\\begin{array}{cc}\n", "\\sigma_{11}^2 & \\sigma_{12}^2\\\\\n", "\\sigma_{21}^2 & \\sigma_{22}^2 \\\\\n", "\\end{array} \\bigg], \\; \n", "\\Sigma_1 = \\Sigma_2 = I = \\bigg[ \n", "\\begin{array}{cc}\n", "1 & 0\\\\\n", "0 & 1 \\\\\n", "\\end{array} \\bigg], \\;$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "####Class conditional probabilities:\n", "\n", "$p(\\vec{x}\\;|\\;\\omega_1) \\sim N \\bigg( \\vec{\\mu_1} = \\; \\bigg[ \n", "\\begin{array}{c}\n", "0 \\\\\n", "0 \\\\\n", "\\end{array} \\bigg], \\Sigma = I \\bigg)$\n", "\n", "$p(\\vec{x}\\;|\\;\\omega_2) \\sim N \\bigg( \\vec{\\mu_2} = \\; \\bigg[ \n", "\\begin{array}{c}\n", "1 \\\\\n", "1 \\\\\n", "\\end{array} \\bigg], \\Sigma = I \\bigg)$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Deriving the decision boundary" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[back to top]
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "### Bayes' Rule:\n", "\n", "\n", "$P(\\omega_j|x) = \\frac{p(x|\\omega_j) * P(\\omega_j)}{p(x)}$ \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Discriminant Functions:\n", "\n", "The goal is to maximize the discriminant function, which we define as the posterior probability here to perform a **minimum-error classification** (Bayes classifier).\n", "\n", "$g_1(\\vec{x}) = P(\\omega_1 | \\; \\vec{x}), \\quad g_2(\\vec{x}) = P(\\omega_2 | \\; \\vec{x})$\n", "\n", "$\\Rightarrow g_1(\\vec{x}) = P(\\vec{x}|\\;\\omega_1) \\;\\cdot\\; P(\\omega_1) \\quad | \\; ln \\\\\n", "\\quad g_2(\\vec{x}) = P(\\vec{x}|\\;\\omega_2) \\;\\cdot\\; P(\\omega_2) \\quad | \\; ln$\n", "\n", "
\n", "We can drop the prior probabilities (since we have equal priors in this case): \n", "\n", "$\\Rightarrow g_1(\\vec{x}) = ln(P(\\vec{x}|\\;\\omega_1))\\\\\n", "\\quad g_2(\\vec{x}) = ln(P(\\vec{x}|\\;\\omega_2))$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\Rightarrow g_1(\\vec{x}) = \\frac{1}{2\\sigma^2} \\bigg[\\; \\vec{x}^{\\,t} - 2 \\vec{\\mu_1}^{\\,t} \\vec{x} + \\vec{\\mu_1}^{\\,t} \\bigg] \\mu_1 \\\\ \n", "= - \\frac{1}{2} \\bigg[ \\vec{x}^{\\,t} \\vec{x} -2 \\; [0 \\;\\; 0] \\;\\; \\vec{x} + [0 \\;\\; 0] \\;\\; \\bigg[ \n", "\\begin{array}{c}\n", "0 \\\\\n", "0 \\\\\n", "\\end{array} \\bigg] \\bigg] \\\\\n", "= -\\frac{1}{2} \\vec{x}^{\\,t} \\vec{x}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\Rightarrow g_2(\\vec{x}) = \\frac{1}{2\\sigma^2} \\bigg[\\; \\vec{x}^{\\,t} - 2 \\vec{\\mu_2}^{\\,t} \\vec{x} + \\vec{\\mu_2}^{\\,t} \\bigg] \\mu_2 \\\\ \n", "= - \\frac{1}{2} \\bigg[ \\vec{x}^{\\,t} \\vec{x} -2 \\; 2\\; [1 \\;\\; 1] \\;\\; \\vec{x} + [1 \\;\\; 1] \\;\\; \\bigg[ \n", "\\begin{array}{c}\n", "1 \\\\\n", "1 \\\\\n", "\\end{array} \\bigg] \\bigg] \\\\\n", "= -\\frac{1}{2} \\; \\bigg[ \\; \\vec{x}^{\\,t} \\vec{x} - 2\\; [1 \\;\\; 1] \\;\\; \\vec{x} + 2\\; \\bigg] \\;$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Decision Boundary\n", "\n", "$g_1(\\vec{x}) = g_2(\\vec{x})$ " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\Rightarrow -\\frac{1}{2} \\vec{x}^{\\,t} \\vec{x} = -\\frac{1}{2} \\; \\bigg[ \\; \\vec{x}^{\\,t} \\vec{x} - 2\\; [1 \\;\\; 1] \\;\\; \\vec{x} + 2\\; \\bigg] \\;$ " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\Rightarrow -2[1\\;\\; 1] \\vec{x} + 2 = 0$\n", "\n", "$\\Rightarrow [-2\\;\\; -2] \\;\\;\\vec{x} + 2 = 0$\n", "\n", "$\\Rightarrow -2x_1 - 2x_2 + 2 = 0$\n", "\n", "$\\Rightarrow -x_1 - x_2 + 1 = 0$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Classifying some random example data\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[back to top]
" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%pylab inline\n", "\n", "import numpy as np\n", "from matplotlib import pyplot as plt\n", "\n", "def decision_boundary(x_1):\n", " \"\"\" Calculates the x_2 value for plotting the decision boundary.\"\"\"\n", " return -x_1 + 1\n", "\n", "# Generate 100 random patterns for class1\n", "mu_vec1 = np.array([0,0])\n", "cov_mat1 = np.array([[1,0],[0,1]])\n", "x1_samples = np.random.multivariate_normal(mu_vec1, cov_mat1, 100)\n", "mu_vec1 = mu_vec1.reshape(1,2).T # to 1-col vector\n", "\n", "# Generate 100 random patterns for class2\n", "mu_vec2 = np.array([1,1])\n", "cov_mat2 = np.array([[1,0],[0,1]])\n", "x2_samples = np.random.multivariate_normal(mu_vec2, cov_mat2, 100)\n", "mu_vec2 = mu_vec2.reshape(1,2).T # to 1-col vector\n", "\n", "# Scatter plot\n", "f, ax = plt.subplots(figsize=(7, 7))\n", "ax.scatter(x1_samples[:,0], x1_samples[:,1], marker='o', color='green', s=40, alpha=0.5)\n", "ax.scatter(x2_samples[:,0], x2_samples[:,1], marker='^', color='blue', s=40, alpha=0.5)\n", "plt.legend(['Class1 (w1)', 'Class2 (w2)'], loc='upper right') \n", "plt.title('Densities of 2 classes with 100 bivariate random patterns each')\n", "plt.ylabel('x2')\n", "plt.xlabel('x1')\n", "ftext = 'p(x|w1) ~ N(mu1=(0,0)^t, cov1=I)\\np(x|w2) ~ N(mu2=(1,1)^t, cov2=I)'\n", "plt.figtext(.15,.8, ftext, fontsize=11, ha='left')\n", "plt.ylim([-3,4])\n", "plt.xlim([-3,4])\n", "\n", "\n", "\n", "# Plot decision boundary\n", "x_1 = np.arange(-5, 5, 0.1)\n", "bound = decision_boundary(x_1)\n", "plt.annotate('R1', xy=(-2, 2), xytext=(-2, 2), size=20)\n", "plt.annotate('R2', xy=(2.5, 2.5), xytext=(2.5, 2.5), size=20)\n", "plt.plot(x_1, bound, color='r', alpha=0.8, linestyle=':', linewidth=3)\n", "\n", "x_vec = np.linspace(*ax.get_xlim())\n", "x_1 = np.arange(0, 100, 0.05)\n", "\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "WARNING: pylab import has clobbered these variables: ['f']\n", "`%matplotlib` prevents importing * from pylab and numpy\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 16 }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Calculating the Chernoff theoretical bounds for P(error)\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[back to top]
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$P(error) \\le p^{\\beta}(\\omega_1) \\; p^{1-\\beta}(\\omega_2) \\; e^{-(\\beta(1-\\beta))}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\Rightarrow 0.5^\\beta \\cdot 0.5^{(1-\\beta)} \\; e^{-(\\beta(1-\\beta))}$\n", "\n", "$\\Rightarrow 0.5 \\cdot e^{-\\beta(1-\\beta)}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$min[P(\\omega_1), \\; P(\\omega_2)] \\le 0.5 \\; e^{-(\\beta(1-\\beta))} \\quad for \\; P(\\omega_1), \\; P(\\omega_2) \\ge \\; 0 \\; and \\; 0 \\; \\le \\; \\beta \\; \\le 1$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plotting the Chernoff Bound for $0 \\le \\beta \\le 1$" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def chernoff_bound(beta):\n", " return 0.5 * np.exp(-beta * (1-beta))\n", "\n", "betas = np.arange(0, 1, 0.01)\n", "c_bound = chernoff_bound(betas)\n", "\n", "plt.plot(betas, c_bound)\n", "plt.title('Chernoff Bound')\n", "plt.ylabel('P(error)')\n", "plt.xlabel('parameter beta')\n", "\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 19 }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Finding the global minimum: " ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.optimize import minimize\n", "\n", "x0 = [0.39] # initial guess (here: guessed based on the plot)\n", "res = minimize(chernoff_bound, x0, method='Nelder-Mead')\n", "print(res)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ " success: True\n", " nit: 12\n", " message: 'Optimization terminated successfully.'\n", " fun: 0.38940039155946954\n", " nfev: 24\n", " status: 0\n", " x: array([ 0.49999219])\n" ] } ], "prompt_number": 29 }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Calculating the empirical error rate\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[back to top]
" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def decision_rule(x_vec):\n", " \"\"\" Returns value for the decision rule of 2-d row vectors \"\"\"\n", " x_1 = x_vec[0]\n", " x_2 = x_vec[1]\n", " return -x_1 - x_2 + 1\n", "\n", "w1_as_w2, w2_as_w1 = 0, 0\n", "\n", "for x in x1_samples:\n", " if decision_rule(x) < 0:\n", " w1_as_w2 += 1\n", "for x in x2_samples:\n", " if decision_rule(x) > 0:\n", " w2_as_w1 += 1\n", "\n", "emp_err = (w1_as_w2 + w2_as_w1) / float(len(x1_samples) + len(x2_samples))\n", " \n", "print('Empirical Error: {}%'.format(emp_err * 100))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Empirical Error: 23.0%\n" ] } ], "prompt_number": 17 } ], "metadata": {} } ] }