{ "metadata": { "name": "", "signature": "sha256:197c88b816a50f250cd1c1050ccabc8d521be09849a6ebbd2d6034efe9408529" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Parameter estimates for correlated regressors" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By JB Poline and Matthew Brett." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Compatibility with Python 3\n", "from __future__ import print_function # print('me') instead of print 'me'\n", "from __future__ import division # 1/2 == 0.5, not 0" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "# Array and plotting libraries\n", "import numpy as np\n", "import numpy.linalg as npl\n", "import matplotlib.pyplot as plt" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "# Display plots inside the notebook\n", "%matplotlib inline" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "# Make numpy print 4 significant digits for prettiness\n", "np.set_printoptions(precision=4, suppress=True)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "# Set random number seed to make random numbers reproducible\n", "np.random.seed(42)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The linear model again" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We have some vector of data $\\vec{y}$ with values $y_1, y_2, ..., y_N$.\n", "\n", "We have one or more vectors of regressors $\\vec{x_1}, \\vec{x_2}, ..., \\vec{x_P}$, where $\\vec{x_1}$ has values $x_{1,1}, x_{1,2}, ..., x_{1,N}$, and $\\vec{x_p}$ has values $x_{p,1}, x_{p,2}, ..., x_{p,N}$.\n", "\n", "Our linear model says that:\n", "\n", "$$\n", "\\vec{y} = \\beta_1 \\vec{x_1} + \\beta_2 \\vec{x_2} + ... + \\beta_P \\vec{x_P} + \\vec{\\varepsilon}\n", "$$\n", "\n", "Here:\n", "\n", "* $\\beta_1, \\beta_2, ... \\beta_P$ are scaling coefficients for vectors $\\vec{x_1}, \\vec{x_2}, ..., \\vec{x_P}$ respectively;\n", "* $\\vec{\\varepsilon} = \\varepsilon_1, \\varepsilon_2, ... \\varepsilon_N$ are the remaining unexplained errors for each observation.\n", "\n", "Usually one of vectors $\\vec{x}$ is a vector of constant value 1. This models the intercept of the regression model. We will write this special vector as $\\vec{1}$.\n", "\n", "As we saw in the [introduction to the general linear model](http://perrin.dynevor.org/glm_intro.html), we can express this same linear model as matrices. We:\n", "\n", "* assemble the $\\vec{x_p}$ vectors as columns in a design matrix $\\mathbf{X} = [\\vec{x_1}, \\vec{x_2}, ... \\vec{x_P}]$;\n", "* assemble the $\\beta_p$ coefficients into a vector $\\vec{\\beta} = \\beta_1, \\beta_2, ..., \\beta_P$.\n", "\n", "Then matrix multiplication does the rest:\n", "\n", "$$\n", "\\vec{y} = \\mathbf{X} \\cdot \\vec{\\beta} + \\vec{\\varepsilon}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Models with correlated regressors" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Some correlated regressors" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Imagine we have a TR (image) every 2 seconds, for 30 seconds. Here are the times of the TR onsets, in seconds:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "times = np.arange(0, 30, 2)\n", "times" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "array([ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28])" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we make a hemodynamic response function (HRF) shape for an event starting at time 0. Call this `hrf1`:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Gamma distribution from scipy\n", "from scipy.stats import gamma\n", "\n", "# Make SPM-like HRF shape with gamma for peak and undershoot\n", "hrf1 = gamma.pdf(times, 6) - 0.35 * gamma.pdf(times, 12)\n", "# Scale area under curve to 1\n", "hrf1 = hrf1 / np.sum(hrf1)\n", "# Plot\n", "plt.plot(times, hrf1)\n", "plt.title('HRF at t=0 (not mean-centered)')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we make another HRF starting at t=2 (at the beginning of the second TR):" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# HRF starting at t=2\n", "hrf2 = np.zeros(hrf1.shape)\n", "hrf2[1:] = hrf1[0:-1]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "For simplicity, we remove the mean from these regressors. We do this to make the HRF regressors independent of the mean ($\\vec{1}$) regressor, but it may not be clear yet why that is a good idea." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Remove the mean from both HRF regressors\n", "hrf1 = (hrf1 - hrf1.mean())\n", "hrf2 = (hrf2 - hrf2.mean())\n", "plt.plot(times, hrf1, label='hrf1 start t=0')\n", "plt.plot(times, hrf2, label='hrf2 start t=2')\n", "plt.legend()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAEACAYAAABfxaZOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl8FeX1+PHPyQZkI0EwCWvCogICLmxVwbBUQLRa60ZA\nq62Ke+tXW6rtV7DaBVS0v1ZQKyoVKdW6FEXqV5CIOyBBWQWEIPsatiRAlvP7YxIMMQlJZia5y3m/\nXveVu8w9M5erJ5Mzz/McUVWMMcaEh4jGPgBjjDENx5K+McaEEUv6xhgTRizpG2NMGLGkb4wxYcSS\nvjHGhBHXSV9EhovIGhFZJyLjqng9U0QOiEhO2e13bvdpjDGmfqLcvFlEIoG/AUOBrcBiEZmtqqsr\nbfqBqv7Izb6MMca45/ZMvy+wXlVzVbUImAVcVsV24nI/xhhjPOA26bcBNld4vKXsuYoUOE9EvhSR\nd0Skm8t9GmOMqSdX5R2chH4yS4F2qlogIiOAN4HTXO7XGGNMPbhN+luBdhUet8M52z9OVQ9VuD9X\nRKaISAtV3VdxOxGxRYCMMaaOVLVO5XO35Z0lQBcRSReRGOAaYHbFDUQkRUSk7H5fQCon/HKqGpK3\n8ePHN/ox2Oezz2efL/Ru9eHqTF9Vi0XkTuBdIBKYpqqrRWRs2evPAFcCt4lIMVAAXOtmn8YYY+rP\nbXkHVZ0LzK303DMV7j8FPOV2P8YYY9yzGbkNIDMzs7EPwVf2+YKbfb7wIvWtC3lNRDRQjsUYY4KB\niKB1vJDrurxjjGlYZeMiTJjx6qTYkr4xQcj+Kg4vXv6it5q+McaEEUv6xhgTRizpG2NMGLGkb4zx\nTHp6OvPnz6/Te6ZOnUpKSgqJiYnk5eX5dGSmnCV9Y4xnRKROFx2Lioq49957mT9/PgcPHiQ5OZn/\n/d//pUePHkRHR/PQQw/V6zhyc3OJiIigtLS0Xu8vl56ezvvvv1/t69nZ2bRr167a10/miSeeIC0t\njebNm/Pzn/+cY8eO1TtWbVnSN8Y0ipKSEnbs2MGRI0fo2rXr8ee7dOnCo48+ysiRI12PWqnvKKfi\n4mLg+Dh4V8dQnXfffZeJEyfy/vvvs2nTJjZs2MD48eN92VdFlvSNMZ7KycmhV69eJCUlce2113L0\n6FHAOStu27YtkyZNIi0tjeuuu+54sk9KSmLo0KEAXH/99QwfPpyEhISTJtxFixbRu3dvmjdvTmpq\nKvfddx8AAwcOPB43ISGBzz//nG+++YbBgwfTsmVLWrVqxZgxYzhw4MDxWOnp6UyaNIlevXoRHx9P\nVlYW3377LZdeeikJCQk89thjJ+w7Pz+fESNGsG3bNhISEkhMTGTHjh21/neaPn06N910E127diUp\nKYkHH3yQF198sdbvr7fGXiWuwmpxaow5uUD+f6VDhw7ar18/3b59u+7bt0+7du2qTz/9tKqqLliw\nQKOiovQ3v/mNHjt2TI8cOaK5ubkqIlpSUvK9WGPGjNEJEybUuL/+/fvrjBkzVFU1Pz9fP/vsM1XV\nKuOuX79e582bp8eOHdPdu3frwIED9Ze//OUJx3722Wfrli1b9MiRI6qqmp6ervPnz692/9nZ2dq2\nbdsTnnv55Zc1KSmp2tvmzZtVVbVXr176yiuvHH/fnj17VER0375939tPdd952fN1yrU2OcuYEOPV\nPJ76VDVEhLvvvpvU1FQALr30UpYtW3b89YiICB566CGio6PL9uGudBITE8O6devYs2cPLVu2pF+/\nftXG7dSpE506dQKgZcuW3HPPPfz+97//3rG3aVO5+V/1qtpPVlYWWVlZJ33v4cOHad68+fHHiYmJ\nABw6dIjk5ORaH0NdWXnHmBCj6s2tvsoTPkCzZs04fPjw8cetWrUiJibGzcc7wbRp01i7di1du3al\nb9++zJkzp9ptd+7cybXXXkvbtm1p3rw51113HXv37j1hGzcXZesqPj6egwcPHn9cXmpKSEjwdb+W\n9I0xDaauF2ZPtn3nzp2ZOXMmu3fvZty4cVx55ZUUFhZW+b4HHniAyMhIVqxYwYEDB3jppZe+N7qn\n8vtOtv+qXn/55ZdJSEio8paYmMiWLU5zwe7du5/wV9CXX35JSkqKr2f5YEnfGBNgiouLOXLkCCUl\nJRQVFXHkyJFqh17OmDGD3bt3A9C8eXNEhIiICFq1akVERATffPPN8W0PHz5MXFwciYmJbN26lUcf\nffSkx5KSknJCjKpe37t37wln7KNHj+bQoUNV3g4ePEjbtm0B54L1tGnTWL16NXl5eTz88MPceOON\ntfo3csOSvjHGN5XH7Vd1Zlz5uZtuuonY2FhmzZrFH/7wB2JjY5kxY0aV8d99913OPPNMEhISuOee\ne5g1axZNmjQhNjaW3/72t5x//vm0aNGCRYsWMX78eJYuXUrz5s259NJL+clPfnLSM/n777+fRx55\n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\nbdyZy2ey8/BOftn/l94GDmNW4jEmOAVU0l+xwllfx0t7C/Zy33v38fdL/050ZLS3wcOYlXiMCU4B\nlfSfecYpHXjpV+/9iqu7XU2fNn28DRzmrMRjTHAKqPX0P9/yuacx1+5dywPzH2Dl7StJaJLgaWwD\n//mP09DGZcvO7ykoKiDt8TTW37WeVnGtvA1uTAWlpVBc/N2ttNRZ1Ve1+vsne1xaCqWlSnFpCcWl\nxRSVFJPSKor2rb2f/V+f9fQDKun3edbbs3ER4ZFBj/DDTj/0NK5xHDkCaWmwerX3w2uv/fe1DEof\nZE3TQ0hJiTPTvqAA8vOdn5Xv1/Ra+f3CwhMTdXGJUlR6lGNaQBEFFJFPsRRQJAUUi3O/JKLsFplP\naUQBJZEFaFQ+RBcgMQVIk3wkpgAiiiCiGIkoQSOKy+4XO/elBMqeI6IYlWKIKAEpf/27n0SUQmkk\nolFQGsXFiffz9q9/6/m/adAn/UA5FlN7o0fDeedZR61wU1ICu3fD9u3V3/btOzFhHzsGzZpBXBzE\nxjq3ivdjYyE2TomKO4jGbackdjvHYrZzNHo7hVHbOSzbOajbOVSyi6Ol+RwtLeBIaQFHSwqIioim\naWQszaJiaRYVR7OoWGKjYomNjiU2Jo64aOd+XEwsCU3iiGsSS3yM8zguJo7Y6FiaRTUjJjKGqIio\n790iIyK//5xU8VzZdpES2SBDwy3pmwa3cCFce63zs3Nn7+IWFBXQfUp3xl84nhvOusG7wKZGRUXO\nxfmakvn27bBrFyQlOX/pVXc75ZSKSV3J173sOLyd7Ye3s/1QpZ8V7kdIBGnxaaQlpDk/K95PSCMl\nLoX4mHgnoUfH0iy6GVERHq+7HiQs6ZtG8eyzMHEifPIJpKR4F3fNnjVkvpjJC5e9wIguI7wLHOaK\nipylTpYsgS++gNzc75L5/v1w6qk1J/O0NOd7jok5Ma6qsunAJhZvXcySbUtYu28t2w5tY/uh7ezM\n30lcdNwJybtiQm+d0Pr4/fgYj1dYDGGW9E2jeeghmD3buaib4OE18083f8qPZv2IOVlz6Numr3eB\nw0RpKXz9NSxe/N1t+XKn7WifPtC7N3Ts6CTy1q2hZUtnRnxt7Di8gyXblrB462IWb3NuURFR9Gnd\nhz6t+9CtVTcnmSekkRqfasuY+8CSvmk05X2MN26Et9/+/lmgG2+vfZub37qZD274gNNOOc27wCFG\n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\n", "text": [ "" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "These `hrf1` and `hrf2` regressors are correlated. The Pearson correlation coefficient between the HRFs is:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "np.corrcoef(hrf1, hrf2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 10, "text": [ "array([[ 1. , 0.7023],\n", " [ 0.7023, 1. ]])" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Some simulated data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we are going to make some simulated data from the *signal* formed from the correlated regressors, plus some random *noise*.\n", "\n", "The *signal* comes from the sum of `hrf1` and `hrf2`. This simulates the occurence of two events, one starting at t=0, one at t=2, both causing an HRF response:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "signal = hrf1 + hrf2\n", "plt.plot(hrf1, label='hrf1')\n", "plt.plot(hrf2, label='hrf2')\n", "plt.plot(signal, label='signal (combined hrfs)')\n", "plt.legend()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 11, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 11 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The simulated data is this signal combined with some random noise:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "noise = np.random.normal(size=times.shape)\n", "Y = signal + noise\n", "plt.plot(times, signal, label='signal')\n", "plt.plot(times, Y, '+', label='signal + noise')\n", "plt.legend()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 12, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 12 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We are going apply several linear models to these simulated data.\n", "\n", "All our models include a regressor of a vector of ones, $\\vec{1}$, modeling the mean.\n", "\n", "We will call our `hrf1` vector $\\vec{h_1}$. Call `hrf2` : $\\vec{h_2}$.\n", "\n", "Our models are:\n", "\n", "* A model with $\\vec{x}$ vectors $\\vec{h_1}, \\vec{1}$ - single HRF model);\n", "* A model with $\\vec{h_1}, \\vec{h_2}, \\vec{1}$ - both HRFs model;\n", "* A model with $\\vec{h_1}, \\vec{w}, \\vec{1}$, where $\\vec{w}$ is $\\vec{h_2}$ (`hrf2`) *orthogonalized with respect to* $\\vec{h_1}$ (`hrf1`). We explain what we mean by this further down the page.\n", "\n", "First, the model with $\\vec{h_1}, \\vec{1}$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Design matrix for single HRF model\n", "X_s = np.vstack((hrf1, np.ones_like(hrf1))).T\n", "plt.imshow(X_s, interpolation='nearest', cmap='gray')\n", "plt.title('Model with hrf1 regressor')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 13, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nWtYcUMva/wP7D4ck8Ctl1QAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 13 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulating the effect of noise on parameter estimates" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Remember that the students-t statistic is:\n", "\n", "$$\n", "t = \\frac{c^T \\hat\\beta}{\\sqrt{\\mathrm{var}(c^T \\hat\\beta)}}\n", "$$\n", "\n", "where $c^T$ is a row vector of contrast weights, $\\hat{\\beta}$ is our vector of estimated parameters, and $\\mathrm{var}(c^T \\hat\\beta)$ is the variance of $c^T \\hat\\beta$.\n", "\n", "On the assumption of zero mean normally distributed independent noise:\n", "\n", "$$\n", "\\mathrm{var}(c^T \\hat\\beta) = \\hat{\\sigma}^2 c^T (X^T X)^+ c\n", "$$\n", "\n", "where $\\hat{\\sigma}^2$ is our estimate of variance in the residuals, and $(X^T X)^+$ is the [pseudo-inverse](https://en.wikipedia.org/wiki/Moore%E2%80%93Penrose_pseudoinverse) of $X^T X$.\n", "\n", "Therefore:\n", "\n", "$$\n", "t = \\frac{c^T \\hat\\beta}{\\sqrt{\\hat{\\sigma}^2 c^T (X^T X)^+ c}}\n", "$$\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will see that this expection of variance correctly predicts that parameter estimates for correlated regressors will have higher variance for a given level of noise (where the level of noise can be captured by $\\hat{\\sigma}^2$)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Put another way, the parameter estimates of correlated regressors are more susceptible to the effect of noise." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can look at the variability of the parameter estimates, by estimating our models on many different simulated data vectors.\n", "\n", "Each of the data vectors are made of the *signal* (the sum of `hrf1` and `hrf2`) and some *noise*. We take a new sample of noise for each data vector:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Create array of simulated data vectors in columns\n", "n_times = len(times) # number of elements in single data vector\n", "n_data_vectors = 100000\n", "# Make many noise vectors (new noise for each column)\n", "noise_vectors = np.random.normal(size=(n_times, n_data_vectors))\n", "# add signal to make data vectors\n", "# Use numpy broadcasting to add vector elementwise to 2D array\n", "Ys = noise_vectors + signal.reshape(n_times, 1)\n", "Ys.shape" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 14, "text": [ "(15, 100000)" ] } ], "prompt_number": 14 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We first fit the model with only the first HRF regressor to every (signal + noise) sample vector.\n", "\n", "We will fit our model for each data vector, to make a estimated parameter vector for each data vector. We can stack these estimated parameter vectors into a 2 by `n_data_vectors` array.\n", "\n", "Call this array $\\beta^s$ (where the $s$ superscript is for the *single* HRF model)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Fit X_one to signals + noise\n", "n_regressors = X_s.shape[1]\n", "# beta (parameter estimate) matrix, one column per data vector\n", "B_s = np.zeros((n_regressors, n_data_vectors))\n", "# Estimate the parameters of the model for each data vector\n", "X_pinv = npl.pinv(X_s)\n", "for i in range(n_data_vectors):\n", " B_s[:, i] = X_pinv.dot(Ys[:, i])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 15 }, { "cell_type": "markdown", "metadata": {}, "source": [ "In fact, because of the way that matrix multiplications works, we can do exactly the same calculation as we did in the loop above, in one matrix multiplication:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "B_again = X_pinv.dot(Ys)\n", "assert np.allclose(B_s, B_again)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 16 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use this trick to estimate the parameter matrices for the rest of our models." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us look at the variance of the first parameter estimate (the parameter for the `hrf1` regressor).\n", "\n", "Here is the variance we observe:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.hist(B_s[0], bins=100)\n", "print('Observed B[0] variance for single hrf model:', np.var(B_s[0]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[0] variance for single hrf model: 2.2014181026\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nyt7FZAAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 17 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can compare the observed variance of the first parameter estimate with that expected from the formula above:\n", "\n", "$$\n", "\\mathrm{var}(c^T \\hat\\beta) = \\hat{\\sigma}^2 c^T (X^T X)^+ c\n", "$$\n", "\n", "To select only the first regressor, we use a contrast vector of\n", "\n", "$$\n", "c = \\left[\n", "\\begin{array}{\\cvec}\n", "1 \\\\\n", "0 \\\\\n", "\\end{array}\n", "\\right]\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our $\\hat{\\sigma}^2$ will be close to 1, because we added noise with variance 1:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Estimate sigma^2 for every data vector\n", "predicted = X_s.dot(B_s)\n", "residuals = Ys - predicted\n", "# Residuals have N-P degrees of freedom\n", "N = n_times\n", "P = npl.matrix_rank(X_s) # number of independent columns in design\n", "sigma_hat_squared = (residuals ** 2).sum(axis=0) / (N - P)\n", "print('Mean sigma^2 estimate:', np.mean(sigma_hat_squared))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Mean sigma^2 estimate: 1.01981361247\n" ] } ], "prompt_number": 18 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because $\\hat{\\sigma}^2 \\approx 1$, $\\mathrm{var}(c^T \\hat\\beta) \\approx c^T (X^T X)^+ c$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "C_s = np.array([[1], [0]]) # column vector\n", "# c.T{X.T X}+ c\n", "C_s.T.dot(npl.pinv(X_s.T.dot(X_s)).dot(C_s))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 19, "text": [ "array([[ 2.2051]])" ] } ], "prompt_number": 19 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice that the mean of the parameter estimates for $\\vec{h_1} (`hrf1`), is somewhere above one, even though we only added 1 times the first HRF as the signal:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print('Observed B[0] mean for single hrf model:', np.mean(B_s[0]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[0] mean for single hrf model: 1.70147967742\n" ] } ], "prompt_number": 20 }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is because the single first regresssor has to fit *both* $\\vec{h_1}$ in the signal, and as much as possible of $\\vec{h_2}$ in the signal, because there is nothing else in the model to fit $\\vec{h_2}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let us construct the model with both HRFs as regressors:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Design matrix for both HRFs model\n", "X_b = np.vstack((hrf1, hrf2, np.ones_like(hrf1))).T\n", "plt.imshow(X_b, interpolation='nearest', cmap='gray')\n", "plt.title('Model with hrf1, hrf2 regressors')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 21, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAM4AAAEKCAYAAABaEWrSAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAFABJREFUeJzt3X+8VHWdx/HXG7hg+AvIFhFRkvLXLttam2uxFmtplC36\n8LHlmqWIbY8t7efmr8yWNfthbmbb79oyTNPKzKUetoEGaJRupiAKigooCKJeTLFLgN7P/nG+A8dx\n5s7c7x3vXOD9fDzm8Thnvud7vt87M+/5fufcmXMUEZhZ7wxqdwfMtkcOjlkGB8csg4NjlsHBMcvg\n4JhlaEtwJI2X1C2pYfuSpkm6pY/tHSnp3lb0J23/fUmf7mUfJkm6X9IGSVN7U7fGvmZI+kEv6xwk\naaGkpyWd2Zf2rYngSFopaZOkl1bdf2d6se334nWvNSLilog4uLKe/qaj+rLLdOuNC4H/iojdI2KW\npHdK+q2kP0mam9F+b50N3BQRe0TEVyWdJWlxCtJySR/P2OdOq5l32ACWAydV7pA0EXgJeU/gQBCA\n+qMhSUPS4n7AklJRJ3Ap8Pmc3Wa0v39V+wDvAUYAU4AzJZ3Yy322hKTBrdxfRvu9/nuanapdCZxS\nWj8VuILSEyhpT0lXSHosvaOfL0mpbJCk/5T0uKQHgWOrOr6npO9KWiNptaRPNzmNmynpY2l5bBoB\nP5DWJ0jqTMuTJa1Kyz+geBH/PE2byu+075b0UOrnJxo0P0rSL9I79q2SDij1q1vSByQtA5ZJegA4\nILX5tKSOiLgpIq4F1jb6O2sIYGj6+5+WdLek15TaXynpbEmLgGck3QRMBr6atn9FRFwSEQsjojsi\nlgH/A0yq1VhpKjtd0kPAjen+6ZKWSFov6X/Lsw9Jx0i6T9IfJX1N0nxJp6eyaZIWSLpU0hPAv0sa\nml4jD0l6VNI3JO2Stt8rPdZPSuqUdHOpnXPSa+ZpSfdWZhKShkm6TNIj6fYlSUNT2eRU52xJa4Hv\nSnppdRuV12/tZyCixxuwAngTcC9wMDAYWEXx4usG9kvbXQH8DNiV4t3tPmB6KvtXYCkwFhgJzAWe\nAwal8p8B36AYxV4G3Aa8L5VNA26p07fTgFlp+V3AA8A1aX068LO0PBlYVfU3HVVaH5/+lm8Bw4C/\nBv4MHFyn3e8DTwB/mx6PK4GrS+XdwK8o3s2H1WqztO17gbmNnoeqOjOAjRQjhYDPAr8rla8E7kiP\nd6X9uZXno8b+BNxZecxrlFcen++n52gX4DjgfuAgijfg84EFafu9gKeA41PZh4DNpdfDNGALcEYq\n3wX4EnB9esx2A2YBn03bfy69Pgan26R0/0HAw8DeaX0/4IC0fCHw29SXvYAFwIWl18OWtN+O1H7N\nNuo+B70IzvnpCZqSXhSD04O5X1reVH6hAe+rvCCAX5efFODoVHcQMJriRbpLqfwk4NdNBGcCsD49\n8d9Iba5KZTOBj/QyOPuU7rsNOLFOu5cD3y6tvxVYWhWcyTUex1YGZ3Zp/VCgq6qtaVV15gKn19nf\nf1AEp6NBcMaX7vslpSCm5/JP6fVwCilEpfKHeX5wHqoK7jOkF32673XA8lL/rgcmVO3zFcC69Prs\nqCp7AJhSWj8GWFF6PWwChlY9Bi9oo96t2alaAD8ATqbGNI0i0R3AQ6X7HqZ4xwMYQzFKlcsq9k91\n16Zh8kngmxQjT8+diniQ4sn6G+BI4BfAGkkHAm8A5jf591U8Wlruohg961lXWt5I8S5ZtooXV7n9\nLmCXqultrfZf8JlUxRG2dwPHRsSWBm2W97k/8OXSc9aZ7h9L8XyvrqpbvV7e18uA4cAfSvv7JcXr\nCuASiiDMlvSgpHMAIuIB4CMUbyTrJF0taUyqsw8vfD3uU1p/PCI2l9ZrtlFP04ejI+JhioMEbwWu\nqyp+gmLoG1+6bz+2PVhr03q5rGIVRfpfGhEj023PiJjYZNfmA++geMdZk9anUUwJF9b7c5rcd180\n20ZOX5qp03AbSdMpjra9KT12vdnnwxSziJGl264R8TuK53vfUjsqr9fY1xMUbz6HlvY1IiL2AIiI\nZyLi4xExAZgKfKzyWSYiro6IIymCHMDFaZ9reOHrsfw3Pu/x6amNWnr7f5zTKaYbG6safQ74MfAZ\nSbtJ2h/4KMXcn1T2ofQBfiRwbqnuWmA2cKmk3dOBhAmS3tBkn+YDZwKVD4zz0votkcbgGtZRTPMa\nqffhsM9H5NLfuQvFaDsofZjtKJWvlHRKveq5zZb2fzLwGeCYiFiZsa9vAp+QdGja356S3pHKbgAm\nSjpOxRGrM4C96+0oIrqB7wCXSXpZ2t9YScek5WMlvSIF8GmKz8fPSTpQ0lGShlG8+f45lQFcDXwy\nHVjYC/gUxayppnpt1Nu+V8GJiOURcUf5rtLyBymmTcuBW4CrKD4LQPGg/ApYBNwO/LSq7inAUIrD\npeuBn7DtgW70P5ObKaZJleAsoPgAe3PVduV9fI7iQX1S6ahcnTbqtVurT1FnuZ5TKKZYX6eYZm6k\nODhBOvozCrg1s/16ytt8OrXxexVHFzdI+nqTdYmI6yne3a+R9BSwGHhLKnuCYhbwBYrR5BCK531T\nD/0/h2KqdGva3xzgwFT2yrS+geID/9ciYj7FgZzPAY9TjHJ7AeelOhelNu9Kt9vTfTX/nh7aqEn1\n35StXSRNAj4QESe3uy+tkD57rQLe1dOLcXvi4NiLIk2z/o9iJD0LeD/FUbNNPVbcTvhLnvZieR3F\n1Otxin94H7+jhAY84phl8YhjlqGlX9bbWUnaLoftiOiXL7ruiBycFhk1alTdsq6uLoYPH97Sskr5\nxo0ba5bNmDGDGTNm1K3b0/cXrTFP1cwyODhNkDQlfWX9/kbfYbKdg4PTgIofWX2V4lvhhwInSTqk\nN/vo6OhoeVmj8smTJzfsl+VzcBo7HHggIlambw9fQ/FblKY5ODseB6exsTz/K/Cr2fZzCdtJ+aha\nY00dau7q6tq63NHR0XC06G/z5s1j3rx57e7GDsPfHGhA0hHAjIiYktbPA7oj4uLSNtHT4egXU2dn\nZ+ONapDk/+P0gadqjd0OvFLFCSuGAidS/B7edmKeqjUQEc+mnxdXzrPw3YhY2uZuWZt5qtYCnqrt\nfDxVM8vg4Jhl8GecFhkzZkzjjWpYuzbnRJ7Wbh5xzDI4OGYZHByzDA6OWQYHxyyDg2OWwcExy+Dg\nmGVwcMwyODhmGRwcswwOjlkGB8csg4NjlsE/K2iRE044IavedddVX4fYtgceccwyODhmGRycBiSN\nkzRX0j2S7pb0oXb3ydrPn3Ea2wJ8NCIWStoN+IOkOT5F1M7NI04DEfFoRCxMy88AS4F92tsrazcH\npxckjQcOA25rb0+s3RycJqVp2rXAh9PIYzsxf8ZpgqQO4KfAlRFxfa1t5s+fv3V5//33Z/z48f3T\nuSb5agWt5VPgNqDiKrMzgc6I+GidbeKCCy7I2n9f/wF69913Z9XzKXD7xlO1xiYB7wb+QdKd6Tal\n3Z2y9vJUrYGI+A1+g7EqfkGYZXBwzDI4OGYZ/BmnRbq7u7Pq5f4cwdrLI45ZBgfHLIODY5bBwTHL\n4OCYZXBwzDI4OGYZHByzDA6OWQYHxyyDg2OWwcExy+DgmGVwcMwy+GcFLbJgwYKsepMmTWpxT6w/\neMQxy+DgmGVwcJokaXA6NdTP290Xaz8Hp3kfBpYAPoOjOTjNkLQv8DbgvwGf/dIcnCZ9CTgLyDsj\nh+1wHJwGJL0deCwi7sSjjSX+P05jrwemSnobsAuwh6QrIuKU8kYrVqzYujxixAhGjhzZv71swFcr\naC1fraAXJL0R+HhE/GPV/TF58uSsffb1H6AXXXRRVj1fraBvPFXrPb/TmKdqvRER84H5DTe0HZ5H\nHLMMDo5ZBgfHLIM/47TIokWL2t0F60ceccwyODhmGRwcswwOjlkGB8csg4NjlsHBMcvg4JhlcHDM\nMjg4ZhkcHLMMDo5ZBgfHLIODY5bBJ+toAUnZD2Jfz4azfv36rHo+WUffeMQxy+DgmGVwcJogaYSk\nayUtlbRE0hHt7pO1l3863ZwvAzdExD9JGgLs2u4OWXs5OA1I2hM4MiJOBYiIZ4Gn2tsrazdP1Rp7\nOfC4pMsl3SHpO5KGt7tT1l4ecRobArwaODMifi/pMuBc4FPt7Vbv+KTrreX/4zQgaW/gdxHx8rT+\n98C5EfH20jb+P85OxlO1BiLiUWCVpAPTXW8G7mljl2wA8FStOR8ErpI0FHgQOK3N/bE2c3CaEBGL\ngNe2ux82cHiqZpbBwTHL4OCYZfDh6BaQFFLekd2+Pv659X04um884phlcHDMMjg4ZhkcHLMMDo5Z\nBgfHLIODY5bBwTHL4OCYZXBwzDI4OGYZHByzDA6OWQb/ArRFhg4dmlVv8+bNLe6J9QePOGYZHByz\nDA6OWQYHpwmSzpN0j6TFkn4oaVi7+2Tt5eA0IGk88C/AqyNiIjAY+Od29snaz0fVGnsa2AIMl/Qc\nMBx4pL1dsnbziNNARKwHvgg8DKwB/hgRN7a3V9ZuHnEakDQB+AgwnuK6OD+RdHJEXFXe7tlnn926\nPGjQIAYNGljvSb5aQWv59FANSDoRODoi3pvW3wMcERFnlLaJYcPyjhf09R+g3d3dWfV8eqi+GVhv\niwPTvcARkl6i4uRpbwaWtLlP1mYOTgPphOtXALcDd6W7v92+HtlA4KlaC3iqtvPxiGOWwcExy+DD\n0S3S0dHR7i5YP/KIY5bBwTHL4OCYZXBwzDI4OGYZHByzDA6OWQYHxyyDg2OWwcExy+DgmGVwcMwy\nODhmGRwcswz+WUGLDBnih3Jn4hHHLIODY5bBwUkkfU/SOkmLS/eNkjRH0jJJsyWNaGcfbeBwcLa5\nHJhSdd+5wJyIOBC4Ka2bOTgVEXEL8GTV3VOBmWl5JnB8v3bKBiwHp2ejI2JdWl4HjG5nZ2zgcHCa\nFMWZG332RgP8f5xG1knaOyIelTQGeKzehhs3bty6PGTIkAF3uihfraC1fArcknT1tZ+nK68h6QtA\nZ0RcLOlcYEREvOAAgaQYMSLvgFv58iA5NmzYkFXPp8DtG0/VEklXA78FDpK0StJpwOeBoyUtA45K\n62YecVrBI87OxyOOWQYHxyyDg2OWwYejW6S4ymHv+ecI2yePOGYZHByzDA6OWQYHxyyDg2OWwcEx\ny+DgmGVwcMwyODhmGRwcswwOjlkGB8csg4NjlsHBMcvg77S3SO7PCmz75BHHLIODY5bBwUnqXK3g\nEklLJS2SdJ2kPdvZRxs4HJxtal2tYDbwlxHxKmAZcF6/98oGJAcnqXW1goiYExHdafU2YN9+75gN\nSA5O86YDN7S7EzYwODhNkHQ+sDkiftjuvtjA4P/jNCBpGvA24E09bdfV1bV1uaOjw1cr2MH53NEl\nNa5WMAX4IvDGiHiih3oxatSorDb7+vivX78+q57PHd03nqolNa5WMB34CrAbMEfSnZK+3tZO2oDh\nEacFPOLsfDzimGVwcMwyODhmGXw4us38c4Ttk0ccswwOjlkGB8csg4NjlsHBMcvg4JhlcHDMMjg4\nZhkcHLMMDo5ZBgfHLIODY5bBwTHL4OCYZXBwzDI4OGYZHByzDA5OUutqBaWyf5PULSnvVDa2w3Fw\ntql1tQIkjQOOBh7q9x7ZgOXgJLWuVpBcCpzdz92xAc7B6YGk44DVEXFXu/tiA4vPclOHpOHAJyim\naVvvrre9T7q+c/EpcEvKJ12XNBG4EagkYl/gEeDwiHisql72KXD7qrOzM6ueT4HbNx5x6oiIxcDo\nyrqkFcBrIiLvZM22Q/FnnKR0tYID09UKTqvaxEOzbeXgJBFxUkTsExHDImJcRFxeVX5A7mizZcuW\nlpc1KvfnmReXg9MPHJwdj4NjlsHBMcvgw9EtIGm7fBB9ODqfg2OWwVM1swwOjlkGByeDpFGS5kha\nJmm2pBGSpki6V9L9ks5J262UdFe61Pt9ktZL2ixpjaTD0jaV3wEtl/RU2vZOSZ8slXdJ2iRpUaVe\nKhuXtn1O0kZJqyv1SuVzJXWm+o+U66dtJtdq1xqICN96eQO+AJydls8BLgYeAMYDHcBC4BBgBTAK\nGAysAeam8mXAwlT/SOAwYDkwq0ZbZwG/ARYDfwfcWirbG3gvMAvYDbgPOKSq/EzghlT+UKXd0jaT\na7XrW883jzh5pgIz0/JM4ETggYhYGRFbgGuA41K5gMOBZ4FvpvLvAftIGh3P/x1QraNcE9L+iIjb\ngBGSRqf1RykCq4h4BlgK7FOpmMr/CpiZyu8ERlXql/joWi85OHlGR8S6tLwO2AtYVSpfDYyl+H7b\njcCVwK6lbVYDmyi+cV32+jQdu0HSoem+sRSjVXnf5XqR6i0B3gI8VbXPscCq9M3vw4AH69Svbtd6\n4ODUkT7DLK5xm1reLor5Tr1j+pMi4jDgImB34FVV5eV6G4FxEfEq4CvA9eXu9FDvDuBgip8/XAL8\nsEY/hgPXAh8GnqtRv167VoeDU0dEHB0RE2vcZgHrJO0NIGkM0AmMK1UfR/HL0bVpfSlFMF5fKh9G\n8fueiu6I6Ept/xLoSCcHeYTS9Ittvwuq+DPFiHZlRHyqVK9iLfDFVH59df2I2FCnXeuBg5NnFnBq\nWj4V+BHwSknjJQ2l+MwzW9LuaZslwEuAian8NGBNaboHMESSACQdTvG5ZX1q64R0/xHAHyv10vZX\nAUsi4rKqepXyCcAeqfx59dM2o+u0az3wNwcypHfkHwP7ASuBdwKvo5jqjKGYmv0ImJ+qPAX8Hjie\n4rNOJ3As8FrgdIpR4C8oplBrgS3ATyLi3PQ7oakU060twGfTNgD3ADdTfF4KoBu4gG2/Wq2UdwJ7\npPKz0n6IiG9JOgN4P8XBiy7gYxFxaysepx2Zg2OWwVM1swwOjlkGB8csg4NjlsHBMcvg4JhlcHDM\nMjg4Zhn+H2wnTA864ONJAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 21 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will call the resulting 3 by `n_data_vectors` parameter array : $\\beta^b$ (where the $b$ superscript is for *both* HRF regressors).\n", "\n", "We will use the matrix multiplication trick above to fit all the data vectors at the same time:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Fit X_both to signals + noise\n", "B_b = npl.pinv(X_b).dot(Ys)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 22 }, { "cell_type": "markdown", "metadata": {}, "source": [ "What estimates do we get for the first regressor, when we have both regressors in the model?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.hist(B_b[0], bins=100)\n", "print('Observed B[0] mean for two hrf model', np.mean(B_b[0]))\n", "print('Observed B[0] variance for two hrf model', np.var(B_b[0]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[0] mean for two hrf model 1.00299905499\n", "Observed B[0] variance for two hrf model 4.35228828591\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 23 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Two things have happened now we added the second (correlated) $\\vec{h_2}$ regressor. First, the mean of the parameter for the $\\vec{h_1}$ regressor has dropped to 1, because $\\beta^b_1 \\vec{h_1}$ is no longer having to model the signal due to $\\vec{h_2}$. Second, the variability of the estimate has increased. This is what the bottom half of the t-statistic predicts:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Predicted variance for hrf1 parameter in both HRF model\n", "C_b = np.array([[1], [0], [0]]) # column vector\n", "C_b.T.dot(npl.pinv(X_b.T.dot(X_b)).dot(C_b))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 24, "text": [ "array([[ 4.3517]])" ] } ], "prompt_number": 24 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The estimate of the parameter for $\\vec{h_2}$ has a mean of around 1, like the parameter estimates for $\\vec{h_1}$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.hist(B_b[1], bins=100)\n", "print('Observed B[1] mean for two hrf model', np.mean(B_b[1]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[1] mean for two hrf model 0.994534456872\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 25 }, { "cell_type": "markdown", "metadata": {}, "source": [ "This mean of 1 is what we expect because we have $\\vec{h_1} + \\vec{h_2}$ in the signal. Not surprisingly, the $\\vec{h_2}$ parameter estimate has a similar variability to that for the $\\vec{h_1}$ parameter estimate:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print('Observed B[1] variance for two hrf model', np.var(B_b[1]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[1] variance for two hrf model 4.37230501038\n" ] } ], "prompt_number": 26 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The observed variance is very similar to the predicted variance:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "C_b_1 = np.array([0, 1, 0])[:, None] # column vector\n", "C_b_1.T.dot(npl.pinv(X_b.T.dot(X_b)).dot(C_b_1))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 27, "text": [ "array([[ 4.3519]])" ] } ], "prompt_number": 27 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The parameter estimates for $\\vec{h_1}$ and $\\vec{h_2}$ are anti-correlated:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Relationship of estimated parameter of hrf1 and hrf2\n", "plt.plot(B_b[0], B_b[1], '.')\n", "np.corrcoef(B_b[0], B_b[1])" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 28, "text": [ "array([[ 1. , -0.703],\n", " [-0.703, 1. ]])" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nCnlCCIkx/x8d/SgvbIb1ewAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 28 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Orthogonalizing hrf2 with respect to hrf1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\vec{h_2}$ is correlated with $\\vec{h_1}.\n", "\n", "We can therefore think of $\\vec{h_2}$ as the sum of some scaling of $\\vec{h_1}$ plus an extra part that cannot be explained by $\\vec{h_1}$.\n", "\n", "$$\n", "\\vec{h_2} = p (\\vec{h_1}) + \\vec{w}\n", "$$\n", "\n", "where $p$ is some scalar, and\n", "\n", "$$\n", "\\vec{w} = \\vec{h_2} - p (\\vec{h_1})\n", "$$\n", "\n", "To restate, we can think of $\\vec{h_2}$ as the sum of some scalar amount of $\\vec{h_1}$ plus $\\vec{w}$.\n", "\n", "We want to chose $p$ such that $\\vec{w} = \\vec{h_2} - p (\\vec{h_1})$ is orthogonal to $\\vec{h_1}$. In this case $\\vec{w}$ is the part of $\\vec{h_2}$ that cannot be explained by $\\vec{h_1}$.\n", "\n", "If $\\vec{w}$ is orthogonal to $\\vec{h_1}$ then we call $\\vec{w}$ : $\\vec{h_2}$ *orthogonalized with respect to* $\\vec{h_1}$.\n", "\n", "Following the same logic as for [projection](http://practical-neuroimaging.github.io/day7.html#key-video-on-projecting-vectors), given $\\vec{w} - p (\\vec{h_1})$ is orthogonal to $\\vec{h_1}$:\n", "\n", "$$\n", "(\\vec{w} - p (\\vec{h_1})) \\cdot \\vec{h_1} = 0 \\implies \\\\\n", "\\vec{w} \\cdot \\vec{h_1} - p (\\vec{h_1}) \\cdot \\vec{h_1} = 0 \\implies \\\\\n", "\\frac{\\vec{w} \\cdot \\vec{h_1}}{\\vec{h_1} \\cdot \\vec{h_1}} = p\n", "$$\n", "\n", "Put another way, $p (\\vec{h_1})$ such that $\\vec{w} = \\vec{h_2} - p (\\vec{h_1})$ is orthogonal to $\\vec{h_1}$ - is also the projection of $\\vec{h_2}$ onto $\\vec{h_1}$." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Project hrf2 onto hrf1\n", "p = hrf2.dot(hrf1) / hrf1.dot(hrf1)\n", "projection = p * hrf1\n", "# Get \\vec{w} \n", "w = hrf2 - projection\n", "# w and hrf1 are now orthogonal\n", "assert np.allclose(w.dot(hrf1), 0)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 29 }, { "cell_type": "code", "collapsed": false, "input": [ "# Plot the vector parts\n", "plt.plot(times, hrf1, label=r'$\\vec{h_1}$')\n", "plt.plot(times, hrf2, label=r'$\\vec{h_2}$')\n", "plt.plot(times, projection, label=r'$p (\\vec{h_1})$')\n", "plt.plot(times, w, label=r'$\\vec{w}$')\n", "plt.legend()\n", "# hrf1 part of hrf2, plus unique part, equals original hrf2\n", "assert np.allclose(hrf2, projection + w)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 30 }, { "cell_type": "markdown", "metadata": {}, "source": [ "How much of the first regressor did we find in the second regressor?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "p" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 31, "text": [ "0.70231917818451162" ] } ], "prompt_number": 31 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us rewrite our original model containing `hrf1, hrf2`:\n", "\n", "$$\n", "\\vec{y} = \\beta^b_1 \\vec{h_1} + \\beta^b_2 \\vec{h_2} + \\beta^b_3 1\n", "$$\n", "\n", "where $\\vec{y}$ is our data vector.\n", "\n", "Now we know we can also write this as:\n", "\n", "$$\n", "\\vec{y} = \\beta^b_1 \\vec{h_1} + \n", " \\beta^b_2 (p (\\vec{h_1}) + \\vec{w}) + \\beta^b_3 1 \\\\\n", "= \\beta^b_1 \\vec{h_1} + \n", " \\beta^b_2 p (\\vec{h_1}) + \\beta^b_2 \\vec{w} + \\beta^b_3 1 \\\\\n", "= (\\beta^b_1 + p \\beta^b_2) \\vec{h_1} + \\beta^b_2 \\vec{w} + \\beta^b_3 1\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So, what will happen if we drop $\\vec{h_2}$ from our model and leave only $\\vec{w}$?\n", "\n", "We have called the parameters from the model with $\\vec{h_1}, \\vec{h_2}$ : $\\beta^b$. Call the parameters from the model with $\\vec{h_1}, \\vec{w}$ : $\\beta^w$. \n", "\n", "We can see that we are going to get the exact same fit to the data with these two models if $\\beta^w_2 = \\beta^b_2$ and $\\beta^w_1 = p \\beta^b_2 + \\beta^b_1$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us try this new model and see:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "X_w = np.vstack((hrf1, w, np.ones_like(hrf1))).T\n", "plt.imshow(X_w, interpolation='nearest', cmap='gray')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 32, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nF7tHAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 32 }, { "cell_type": "code", "collapsed": false, "input": [ "# Fit the model\n", "B_w = npl.pinv(X_w).dot(Ys)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 33 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us first look at the distribution of $\\beta^w_1$ `== B_w[0]`." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Distribution of parameter for hrf1 in orth model\n", "plt.hist(B_w[0], bins=100)\n", "print('Observed B[0] mean for two hrf orth model',\n", " np.mean(B_w[0]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[0] mean for two hrf orth model 1.70147967742\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nyt7FZAAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 34 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice that $\\beta^w_1$ now has the same values as for the single HRF model : $\\beta^s_1$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "assert np.allclose(B_s[0, :], B_w[0, :])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 35 }, { "cell_type": "markdown", "metadata": {}, "source": [ "It therefore has the same variance, and the predicted variance matches:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print('Observed B[0] variance for two hrf orth model', np.var(B_w[0]))\n", "pred_var = C_b.T.dot(npl.pinv(X_w.T.dot(X_w)).dot(C_b))\n", "print('Predicted B[0] variance for two hrf orth model', pred_var)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Observed B[0] variance for two hrf orth model 2.2014181026\n", "Predicted B[0] variance for two hrf orth model [[ 2.2051]]\n" ] } ], "prompt_number": 36 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The fact that the single hrf and orthogonalized model parameters match may make sense when we remember that adding the $\\vec{w}$ regressor to the model cannot change the parameter for the $\\vec{h_1}$ regressor as $\\vec{w}$ is orthogonal to $\\vec{h_1}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We predicted above that $\\beta^w_2$ would stay the same as $\\beta^b_2$ from the not-orthogonalized model:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "assert np.allclose(B_b[1, :], B_w[1, :])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 37 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We predicted that $\\beta^w_1$ would become $\\beta^b_1 + p \\beta^b_2$ from the not-orthogonalized model:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "predicted_beta1 = B_b[0, :] + p * B_b[1, :]\n", "assert np.allclose(predicted_beta1, B_w[0, :])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 38 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our predictions were correct. So let us revise what happened:\n", "\n", "* We estimated our original model with correlated $\\vec{h_1}, \\vec{h_2}$ to get corresponding estimated parameters $\\beta^b_1, \\beta^b_2$;\n", "* we orthogonalized $\\vec{h_2}$ with respect to $\\vec{h_1}$ to give $p$ and $\\vec{w}$;\n", "* we replaced $\\vec{h_2}$ with $\\vec{w}$ in the model, and re-estimated, giving new parameters $\\beta^w_1$ for $\\vec{h_1}$, $\\beta^w_2$ for $\\vec{w}$;\n", "* $\\beta^w_2 = \\beta^b_2$ - the parameter for the new orthogonalized regressor is unchanged from the non-orthogonalized case;\n", "* $\\beta^w_1 = \\beta^b_1 + p \\beta^b_2$ - the parameter for the *unchanged* regressor has increased by $\\beta^b_2$ times the amount of $\\vec{h_2}$ present in $\\vec{h_1}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we show some example parameters from the three model fits:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Example parameters from the single hrf model\n", "B_s[:,:5]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 39, "text": [ "array([[ 0.0032, 1.2188, 2.289 , 0.2179, 3.45 ],\n", " [-0.0969, 0.0488, 0.006 , -0.1493, -0.4889]])" ] } ], "prompt_number": 39 }, { "cell_type": "code", "collapsed": false, "input": [ "# Example parameters from the non-orth two-hrf model\n", "B_b[:,:5]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 40, "text": [ "array([[-1.3014, 1.676 , 0.3588, -0.6153, 0.8819],\n", " [ 1.8574, -0.6509, 2.7482, 1.1865, 3.6566],\n", " [-0.0969, 0.0488, 0.006 , -0.1493, -0.4889]])" ] } ], "prompt_number": 40 }, { "cell_type": "code", "collapsed": false, "input": [ "# Example parameters from the orth model\n", "B_w[:,:5]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 41, "text": [ "array([[ 0.0032, 1.2188, 2.289 , 0.2179, 3.45 ],\n", " [ 1.8574, -0.6509, 2.7482, 1.1865, 3.6566],\n", " [-0.0969, 0.0488, 0.006 , -0.1493, -0.4889]])" ] } ], "prompt_number": 41 }, { "cell_type": "code", "collapsed": false, "input": [ "# The parameter for the hrf1 regressor in the non-orth model\n", "# is correlated with the parameter for the hrf1 regressor\n", "# in the orth model.\n", "plt.plot(B_b[0], B_w[0], '.')\n", "plt.title('Orth and non-orth hrf1 parameters correlate')\n", "np.corrcoef(B_b[0], B_w[0])" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 42, "text": [ "array([[ 1. , 0.7103],\n", " [ 0.7103, 1. ]])" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nvhiesAfq0LoAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 42 }, { "cell_type": "code", "collapsed": false, "input": [ "# Relationship of estimated parameters for hrf1 and orthogonalized hrf2\n", "# (they should be independent)\n", "plt.plot(B_w[0], B_w[1], '+')\n", "plt.title('hrf1 and orth hrf2 parameters are independent')\n", "np.corrcoef(B_w[0], B_w[1])" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 43, "text": [ "array([[ 1. , 0.0013],\n", " [ 0.0013, 1. ]])" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\niqIoNcz/D59/lFmX6YBNAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 43 } ], "metadata": {} } ] }