{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import scipy.io as sio\n",
"import numpy as np\n",
"import os\n",
"import math\n",
"import matplotlib.pyplot as plt\n",
"import statsmodels.api as sm"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This notebook shows how to load and fit a GLM to data from the CRCNS-ret1 dataset, available here.\n",
"\n",
"Additional useful background information about the data can be found here."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Loading Data\n",
"First up, we'll load the data. For the retinal ganglion cell dataset, data is in two .mat files: the first (`20080516_R1.mat`) contains spike times and stimulus information. The second file (`stimulus.mat`) contains the actual visual stimulus that was presented to neurons.\n",
"\n",
"**Note**: `20080516_R1.mat` contains spiking data from **three** trials, but `stimulus.mat` only contains the stimulus used on the first of these three trials! So make sure you only use spiking data from trial zero when computing your cells' receptive field."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"data = sio.loadmat(os.path.join('../module 1/crcns_ret-1/Data','20080516_R1.mat'),struct_as_record=False,squeeze_me=True)\n",
"i = 0 # trial number (we'll only consider the first trial for now)\n",
"\n",
"# load the stimulus presented on trial 0:\n",
"stim = sio.loadmat(os.path.join('../module 1/crcns_ret-1','stimulus.mat'),struct_as_record=False,squeeze_me=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Contents of `stimulus.mat` file\n",
"The variable `stim` is a dict with one field of interest, named `r`. `r` is an 640 x 89899 matrix describing the stimulus presented on the first trial: in this case, a set of 640 stacked bars that are either black (=-1) or white (=1) are projected onto the retina; the color of each bar is randomly sampled on each of 89899 time steps, or \"frames\".\n",
"\n",
"
\n",
"\n",
"The 640 rows of `r` correspond to the 640 stacked bars, while the 89898 columns of `r` correspond to bar color on each frame. Information about the duration of stimulus time steps, the actual size of the bars, etc, is contained in `data['stimulus']`, see below.\n",
"\n",
"### Contents of the data `.mat` file\n",
"The `data` dict contains three variables:\n",
" - `stimulus` is a 3-dimensional matlab struct of metadata about the stimulus on each of the 3 trials. Metadata includes the framerate (`stimulus(1).frame`), stimulation start time in seconds relative to recorded neural spiking (`stimulus(1).onset`), number of stimuli (frames) presented (`stimulus(1).Nframes`), etc\n",
" - `spikes` is a 7 x 3 matlab cell array of vectors, giving the spike times of each of 7 neurons on each of 3 trials. So, eg, in Matlab `spikes{3,1}` gives the times (in seconds) that neuron 3 spiked on the first trial (keep in mind that Matlab uses 1-indexing while python uses 0-indexing)\n",
" - `datainfo` contains more general metadata about the experiment (neural types/animal lines used, experiment date, experimenter name, etc)\n",
" \n",
"Now that we've loaded the raw data, we need to get it into a usable format for GLM analysis. To start, we'll unpack our variables of interest from `data` and `r`, and keep only the data from trial `i`:"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"stimulus = data['stimulus'][i]\n",
"spikes = data['spikes'][:,i] # so eg spikes[0] is all spike times (in seconds) for neuron 1 on trial i, while \n",
" # spikes[2][9] is the time of the 10th spike from the 3rd neuron on trial i\n",
"datainfo = data['datainfo']\n",
"\n",
"r = stim['r']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Formatting Data\n",
"Let's take a look at the contents of `stimulus` for the first trial:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'_fieldnames': ['type', 'onset', 'frame', 'Nframes', 'pixelsize', 'param'],\n",
" 'type': 'binarywhitenoise',\n",
" 'onset': 1.2375,\n",
" 'frame': 0.016671788281371697,\n",
" 'Nframes': 89899,\n",
" 'pixelsize': 8.3,\n",
" 'param': }"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"{key: value for key, value in stimulus.__dict__.items()}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As you can see, frames are presented every `stimulus.frame` = 0.01667 seconds, and the first frame is presented at `stimulus.onset` = 1.2375 seconds after the start of neural recording, and each of the 640 rows is `stimulus.pixelsize` = 8.3 microns high.\n",
"\n",
"First, we need to address the fact that our spike times are in **seconds** but our stimulus matrix `r` is in units of frames. To get everything into a common set of units, we'll create a vector `time` giving the time at which each stimulus frame was presented:"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"time = np.arange(0,stimulus.Nframes) * stimulus.frame + stimulus.onset\n",
"N = len(time)-1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we use this vector `time` to get spikes and stimuli into the same time units. In our case, the easiest approach is to convert spike times into units of stimulus frames. What this means is rather than reporting the timing of each spike in seconds/ms, we'll report the **number** of spikes that each stimulus frame evoked.\n",
"\n",
"The only next step is realizing that the number of spikes occurring between the start of frame $t$ and the start of frame $t+1$ is exactly what we get if we use Numpy's `histogram` function to bin spikes with bin-edges defined by our vector `time`:"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"spikeCounts = np.zeros((7,len(time)-1))\n",
"for cellnum in range(0,7):\n",
" spikeCounts[cellnum,:],_ = np.histogram(spikes[cellnum],time) \n",
"# coding note: np.histogram returns a second tuple, which is just the bin edges. We already know what these are \n",
"# (because we specify them in the vector TIME) so we use \"_\" as a variable name to ignore this second term."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Fitting a GLM is similar in spirit to regression. We have one **dependent variable** (neuron spiking) which we would like to explain as a function of multiple **independent variables** (features of the stimulus that was presented to the retina). So in GLM fitting, we'll provide the model with a set of independent variables, and allow the GLM to assign **weights** to those variables that are good predictors of spiking activity.\n",
"\n",
"That is, we're looking for the values of $w$ that best satisfy:\n",
"\n",
"\\begin{equation} spikeCounts[t] = f(\\sum_{i=1}^N w_i \\cdot \\textrm{independent variable}_i[t])\\end{equation}\n",
"\n",
"where $f$ is a nonlinear linking function (see slides from 2/1).\n",
"\n",
"### Choosing our independent variables (aka regressors)\n",
"In principle, the independent variables could be anything! But we have a hunch of what good predictors of cell spiking should be: this is a cell in the retina, so it probably is spiking as a function of BOTH:\n",
" - stimulus intensity (probably only in a subset of the stimulus space)\n",
" - stimulus history (a lot of retinal neurons respond to ON/OFF events: eg a patch of space changing from dark to bright, or vice versa)\n",
" \n",
"Luckily we know what both of these are. Let's say we want to look at the stimulus that evoked a spike occurring at a given time $t$. We don't know much about which of the 640 stimulus bars this neuron \"sees\", but we think that the past 3 frames of the stimulus are what matter for predicting spiking. This assumption, written mathematically, is saying that\n",
"\\begin{eqnarray} spikeCounts[t] &=& f(w_1 \\cdot r[0,t] + w_2 \\cdot r[1,t] + ... + w_{640} \\cdot r[639,t] \\\\\n",
" && \\quad + w_{641} \\cdot r[0,t-1] + ... + w_{1280} \\cdot r[640,t-1] \\\\\n",
" && \\quad + w_{1281} \\cdot r[0,t-2] + ... + w_{1920} \\cdot r[640,t-2])\n",
"\\end{eqnarray}\n",
"or, in matrix notation:\n",
"\\begin{equation} spikeCounts[t] = f( w \\cdot \\left[ \\begin{array}{c}r[:,t]\\\\r[:,t-1]\\\\r[:,t-2]\\end{array} \\right] )\\end{equation}\n",
"\n",
"where $w$ is now a 1 x 1920 vector.\n",
"\n",
"### Fitting multiple observations\n",
"Taken alone this is obviously under-constrained (1 equation with 1920 unknowns!) but we are looking for a set of $w$'s that explains not only the spiking at time $t$, but the spiking at all times during the experiment (up to 89898 equations with 1920 unknowns- one equation for each *observation*, that is for each stimulus frame presented). Let's say we want to specifically use frames 100-50,100 to fit our $w$'s- then we are solving a set of 50,000 equations:\n",
"\n",
"\\begin{eqnarray}\n",
"spikeCounts[100] &=& f( w \\cdot \\left[ \\begin{array}{c}r[:,100]\\\\r[:,99]\\\\r[:,98]\\end{array} \\right]) \\\\\n",
"spikeCounts[101] &=& f( w \\cdot \\left[ \\begin{array}{c}r[:,101]\\\\r[:,100]\\\\r[:,99]\\end{array} \\right]) \\\\\n",
"&& ...\\\\\n",
"spikeCounts[50100] &=& f( w \\cdot \\left[ \\begin{array}{c}r[:,50100]\\\\r[:,50099]\\\\r[:,50098]\\end{array} \\right])\\\\\n",
"\\end{eqnarray}\n",
"\n",
"Again, this can be written in matrix notation as:\n",
"\\begin{equation}\n",
"spikeCounts[100:50100] = f( w \\cdot \\left[ \\begin{array}{c}r[:,100:50100]\\\\r[:,99:50099]\\\\r[:,98:50098]\\end{array} \\right])\n",
"\\end{equation}\n",
"\n",
"### Translating this to code\n",
"In practice, `sm.GLM.fit()` does the heavy lifting of finding the maximum-likelihood-estimate $w$'s for us: all we need to do is provide it with the **dependent** and **independent** variables-- here `spikeCounts` and corresponding frames of `r`. The only step left to do is to convert `r` into a format like the above equations- where for each frame $t$, `sm.GLM.fit()` is given `r` over some spatial range of interest (all 640 bars in the example above- or a subset of those bars in the code below, to reduce runtime) and some temporal history window of interest.\n",
"\n",
"Let's say we're fitting the response of the first neuron (`trainCell=0`), and for simplicity we only care about the past 10 frames of the stimulus, and we only care about bars 180-220 (we cheated and looked at the spike-triggered-average to see that this is roughly where this receptive field lies.) Then we can create `shiftedData`, a \"stacked\" version of `r`:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"trainCell = 0\n",
"offset = 100 # omit the first 100 frames so that shiftedData and spikeCounts can be aligned\n",
"winSize = 20\n",
"spaceRange = range(175,205)\n",
"shiftedData = r[spaceRange,offset:]\n",
"for w in range(1,winSize):\n",
" shiftedData = np.concatenate((shiftedData,r[spaceRange,(offset-w):-w]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now that we have `shiftedData`, our only remaining task is to pick which range of timepoints we'll use to fit our model, and to subsample our data down to this range. (We also had to transpose `shiftedData` to get it in the right format for `sm.GLM.fit()`). Also, we want to add a constant offset term to our model, something that's not included by default:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"trainInds = np.arange(100,10000)\n",
"shiftedData2 = np.transpose(shiftedData[:,trainInds])\n",
"shiftedData2 = sm.add_constant(shiftedData2)\n",
"spikeCounts2 = spikeCounts[trainCell,trainInds + offset]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We're all set! Now the only job is to initialize a GLM with a Poisson (or some other format) linking function, and then fit this model to our data. If you don't like the Poisson linking function, there are a couple others you can try- call `dir(sm.families)` to see a full list."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Results: Generalized linear model\n",
"================================================================\n",
"Model: GLM AIC: 15618.2004 \n",
"Link Function: log BIC: -78655.4242\n",
"Dependent Variable: y Log-Likelihood: -7208.1 \n",
"Date: 2019-02-13 10:30 LL-Null: -8476.7 \n",
"No. Observations: 9900 Deviance: 6898.1 \n",
"Df Model: 600 Pearson chi2: 7.53e+03 \n",
"Df Residuals: 9299 Scale: 1.0000 \n",
"Method: IRLS \n",
"------------------------------------------------------------------\n",
" Coef. Std.Err. z P>|z| [0.025 0.975]\n",
"------------------------------------------------------------------\n",
"const -1.1294 0.0197 -57.2871 0.0000 -1.1681 -1.0908\n",
"x1 -0.0028 0.0161 -0.1731 0.8626 -0.0344 0.0288\n",
"x2 0.0115 0.0160 0.7193 0.4720 -0.0199 0.0429\n",
"x3 -0.0062 0.0161 -0.3830 0.7017 -0.0377 0.0254\n",
"x4 0.0127 0.0161 0.7895 0.4298 -0.0188 0.0442\n",
"x5 -0.0223 0.0161 -1.3921 0.1639 -0.0538 0.0091\n",
"x6 -0.0107 0.0161 -0.6665 0.5051 -0.0423 0.0208\n",
"x7 0.0089 0.0161 0.5547 0.5791 -0.0226 0.0404\n",
"x8 -0.0134 0.0161 -0.8369 0.4027 -0.0449 0.0180\n",
"x9 0.0004 0.0161 0.0245 0.9804 -0.0312 0.0320\n",
"x10 -0.0065 0.0161 -0.4062 0.6846 -0.0380 0.0250\n",
"x11 -0.0109 0.0161 -0.6789 0.4972 -0.0425 0.0206\n",
"x12 -0.0158 0.0160 -0.9847 0.3248 -0.0472 0.0156\n",
"x13 0.0198 0.0161 1.2317 0.2181 -0.0117 0.0514\n",
"x14 -0.0187 0.0160 -1.1643 0.2443 -0.0501 0.0128\n",
"x15 0.0338 0.0161 2.0941 0.0363 0.0022 0.0654\n",
"x16 0.0124 0.0161 0.7706 0.4409 -0.0191 0.0438\n",
"x17 0.0219 0.0160 1.3654 0.1721 -0.0095 0.0533\n",
"x18 0.0142 0.0161 0.8811 0.3783 -0.0173 0.0457\n",
"x19 0.0090 0.0161 0.5609 0.5748 -0.0226 0.0407\n",
"x20 -0.0110 0.0160 -0.6845 0.4936 -0.0423 0.0204\n",
"x21 -0.0104 0.0161 -0.6486 0.5166 -0.0420 0.0211\n",
"x22 0.0246 0.0161 1.5269 0.1268 -0.0070 0.0563\n",
"x23 -0.0093 0.0160 -0.5817 0.5607 -0.0407 0.0220\n",
"x24 -0.0123 0.0160 -0.7695 0.4416 -0.0438 0.0191\n",
"x25 -0.0210 0.0160 -1.3123 0.1894 -0.0525 0.0104\n",
"x26 0.0069 0.0160 0.4316 0.6660 -0.0244 0.0382\n",
"x27 -0.0077 0.0160 -0.4828 0.6293 -0.0390 0.0236\n",
"x28 0.0175 0.0161 1.0909 0.2753 -0.0140 0.0490\n",
"x29 0.0274 0.0161 1.7076 0.0877 -0.0040 0.0589\n",
"x30 0.0007 0.0160 0.0433 0.9655 -0.0307 0.0321\n",
"x31 -0.0028 0.0161 -0.1740 0.8618 -0.0343 0.0287\n",
"x32 0.0137 0.0160 0.8506 0.3950 -0.0178 0.0451\n",
"x33 -0.0124 0.0161 -0.7695 0.4416 -0.0439 0.0191\n",
"x34 -0.0194 0.0160 -1.2115 0.2257 -0.0508 0.0120\n",
"x35 -0.0302 0.0161 -1.8781 0.0604 -0.0616 0.0013\n",
"x36 0.0104 0.0161 0.6466 0.5179 -0.0212 0.0420\n",
"x37 -0.0121 0.0160 -0.7532 0.4513 -0.0434 0.0193\n",
"x38 -0.0060 0.0161 -0.3764 0.7066 -0.0375 0.0254\n",
"x39 -0.0190 0.0161 -1.1804 0.2379 -0.0505 0.0125\n",
"x40 -0.0079 0.0160 -0.4939 0.6213 -0.0393 0.0235\n",
"x41 -0.0028 0.0161 -0.1766 0.8598 -0.0345 0.0288\n",
"x42 -0.0226 0.0160 -1.4076 0.1592 -0.0540 0.0089\n",
"x43 0.0069 0.0161 0.4289 0.6680 -0.0247 0.0385\n",
"x44 0.0099 0.0160 0.6167 0.5374 -0.0215 0.0413\n",
"x45 0.0056 0.0161 0.3492 0.7269 -0.0259 0.0371\n",
"x46 0.0030 0.0161 0.1896 0.8496 -0.0284 0.0345\n",
"x47 -0.0059 0.0160 -0.3674 0.7133 -0.0373 0.0255\n",
"x48 -0.0085 0.0160 -0.5326 0.5943 -0.0400 0.0229\n",
"x49 0.0228 0.0161 1.4134 0.1576 -0.0088 0.0543\n",
"x50 -0.0184 0.0160 -1.1471 0.2513 -0.0498 0.0130\n",
"x51 0.0101 0.0161 0.6296 0.5290 -0.0214 0.0417\n",
"x52 -0.0141 0.0161 -0.8756 0.3813 -0.0457 0.0175\n",
"x53 -0.0110 0.0160 -0.6879 0.4915 -0.0423 0.0203\n",
"x54 0.0002 0.0160 0.0105 0.9916 -0.0312 0.0316\n",
"x55 0.0082 0.0160 0.5120 0.6087 -0.0232 0.0397\n",
"x56 -0.0237 0.0160 -1.4790 0.1391 -0.0551 0.0077\n",
"x57 0.0078 0.0160 0.4890 0.6248 -0.0235 0.0392\n",
"x58 -0.0054 0.0160 -0.3387 0.7348 -0.0368 0.0260\n",
"x59 0.0111 0.0160 0.6916 0.4892 -0.0203 0.0425\n",
"x60 -0.0143 0.0160 -0.8930 0.3719 -0.0458 0.0171\n",
"x61 -0.0144 0.0162 -0.8936 0.3715 -0.0461 0.0172\n",
"x62 0.0070 0.0160 0.4369 0.6622 -0.0244 0.0385\n",
"x63 0.0235 0.0160 1.4633 0.1434 -0.0080 0.0549\n",
"x64 0.0085 0.0160 0.5286 0.5971 -0.0230 0.0399\n",
"x65 0.0108 0.0160 0.6719 0.5017 -0.0207 0.0422\n",
"x66 -0.0000 0.0161 -0.0030 0.9976 -0.0316 0.0315\n",
"x67 0.0113 0.0160 0.7083 0.4788 -0.0201 0.0428\n",
"x68 0.0004 0.0161 0.0227 0.9819 -0.0312 0.0319\n",
"x69 -0.0229 0.0161 -1.4190 0.1559 -0.0545 0.0087\n",
"x70 -0.0286 0.0161 -1.7823 0.0747 -0.0601 0.0029\n",
"x71 0.0023 0.0161 0.1460 0.8839 -0.0292 0.0339\n",
"x72 -0.0020 0.0161 -0.1269 0.8990 -0.0335 0.0294\n",
"x73 -0.0062 0.0161 -0.3868 0.6989 -0.0377 0.0253\n",
"x74 0.0033 0.0161 0.2083 0.8350 -0.0281 0.0348\n",
"x75 -0.0020 0.0160 -0.1260 0.8997 -0.0334 0.0294\n",
"x76 -0.0197 0.0160 -1.2284 0.2193 -0.0510 0.0117\n",
"x77 0.0204 0.0160 1.2748 0.2024 -0.0110 0.0517\n",
"x78 -0.0075 0.0160 -0.4707 0.6379 -0.0390 0.0239\n",
"x79 -0.0067 0.0161 -0.4146 0.6785 -0.0382 0.0248\n",
"x80 -0.0008 0.0161 -0.0514 0.9590 -0.0323 0.0306\n",
"x81 0.0193 0.0161 1.2021 0.2293 -0.0122 0.0508\n",
"x82 -0.0093 0.0161 -0.5784 0.5630 -0.0409 0.0223\n",
"x83 -0.0073 0.0161 -0.4535 0.6502 -0.0388 0.0242\n",
"x84 0.0046 0.0160 0.2890 0.7726 -0.0268 0.0360\n",
"x85 0.0072 0.0161 0.4504 0.6524 -0.0243 0.0387\n",
"x86 0.0275 0.0160 1.7155 0.0863 -0.0039 0.0590\n",
"x87 -0.0126 0.0160 -0.7856 0.4321 -0.0439 0.0188\n",
"x88 -0.0052 0.0160 -0.3269 0.7438 -0.0366 0.0262\n",
"x89 0.0072 0.0160 0.4514 0.6517 -0.0242 0.0386\n",
"x90 -0.0064 0.0161 -0.3991 0.6898 -0.0379 0.0251\n",
"x91 0.0221 0.0161 1.3737 0.1695 -0.0094 0.0536\n",
"x92 -0.0016 0.0161 -0.1021 0.9187 -0.0331 0.0298\n",
"x93 0.0066 0.0160 0.4151 0.6781 -0.0247 0.0379\n",
"x94 0.0031 0.0160 0.1949 0.8455 -0.0282 0.0345\n",
"x95 0.0038 0.0160 0.2382 0.8117 -0.0276 0.0352\n",
"x96 0.0193 0.0161 1.1972 0.2312 -0.0123 0.0509\n",
"x97 0.0083 0.0160 0.5184 0.6042 -0.0231 0.0397\n",
"x98 0.0260 0.0161 1.6187 0.1055 -0.0055 0.0575\n",
"x99 -0.0092 0.0161 -0.5688 0.5695 -0.0408 0.0225\n",
"x100 0.0047 0.0160 0.2930 0.7695 -0.0267 0.0361\n",
"x101 0.0037 0.0161 0.2273 0.8202 -0.0278 0.0351\n",
"x102 0.0093 0.0160 0.5773 0.5637 -0.0222 0.0407\n",
"x103 0.0026 0.0160 0.1603 0.8726 -0.0289 0.0340\n",
"x104 0.0027 0.0161 0.1654 0.8686 -0.0289 0.0342\n",
"x105 0.0291 0.0160 1.8148 0.0696 -0.0023 0.0605\n",
"x106 0.0056 0.0161 0.3462 0.7292 -0.0259 0.0370\n",
"x107 0.0443 0.0160 2.7633 0.0057 0.0129 0.0757\n",
"x108 0.0267 0.0160 1.6621 0.0965 -0.0048 0.0581\n",
"x109 0.0240 0.0161 1.4937 0.1353 -0.0075 0.0555\n",
"x110 -0.0044 0.0161 -0.2723 0.7854 -0.0358 0.0271\n",
"x111 -0.0119 0.0161 -0.7368 0.4613 -0.0435 0.0197\n",
"x112 0.0348 0.0161 2.1524 0.0314 0.0031 0.0664\n",
"x113 -0.0042 0.0161 -0.2598 0.7950 -0.0357 0.0273\n",
"x114 -0.0041 0.0160 -0.2545 0.7991 -0.0354 0.0273\n",
"x115 -0.0004 0.0160 -0.0243 0.9806 -0.0318 0.0311\n",
"x116 0.0175 0.0160 1.0924 0.2747 -0.0139 0.0490\n",
"x117 0.0227 0.0160 1.4218 0.1551 -0.0086 0.0540\n",
"x118 0.0153 0.0160 0.9591 0.3375 -0.0160 0.0466\n",
"x119 0.0481 0.0160 3.0043 0.0027 0.0167 0.0795\n",
"x120 -0.0036 0.0161 -0.2257 0.8214 -0.0352 0.0279\n",
"x121 -0.0100 0.0161 -0.6232 0.5331 -0.0416 0.0215\n",
"x122 -0.0103 0.0161 -0.6425 0.5205 -0.0419 0.0212\n",
"x123 0.0426 0.0160 2.6688 0.0076 0.0113 0.0740\n",
"x124 0.0002 0.0160 0.0152 0.9879 -0.0311 0.0316\n",
"x125 0.0476 0.0160 2.9792 0.0029 0.0163 0.0790\n",
"x126 0.0190 0.0160 1.1836 0.2366 -0.0125 0.0504\n",
"x127 0.0381 0.0161 2.3714 0.0177 0.0066 0.0696\n",
"x128 0.0139 0.0161 0.8630 0.3882 -0.0176 0.0453\n",
"x129 0.0206 0.0161 1.2812 0.2001 -0.0109 0.0522\n",
"x130 0.0300 0.0160 1.8729 0.0611 -0.0014 0.0615\n",
"x131 0.0549 0.0161 3.4119 0.0006 0.0234 0.0864\n",
"x132 0.0336 0.0161 2.0858 0.0370 0.0020 0.0651\n",
"x133 0.0356 0.0161 2.2141 0.0268 0.0041 0.0670\n",
"x134 0.0215 0.0161 1.3363 0.1815 -0.0100 0.0530\n",
"x135 0.0303 0.0160 1.8962 0.0579 -0.0010 0.0617\n",
"x136 0.0666 0.0161 4.1469 0.0000 0.0351 0.0981\n",
"x137 0.0512 0.0161 3.1895 0.0014 0.0197 0.0827\n",
"x138 0.0276 0.0160 1.7184 0.0857 -0.0039 0.0590\n",
"x139 0.0426 0.0161 2.6387 0.0083 0.0109 0.0742\n",
"x140 0.0431 0.0161 2.6759 0.0075 0.0115 0.0746\n",
"x141 0.0407 0.0161 2.5272 0.0115 0.0091 0.0723\n",
"x142 0.0467 0.0161 2.8959 0.0038 0.0151 0.0783\n",
"x143 0.0396 0.0161 2.4603 0.0139 0.0081 0.0712\n",
"x144 0.0085 0.0160 0.5335 0.5937 -0.0228 0.0398\n",
"x145 0.0201 0.0161 1.2502 0.2112 -0.0114 0.0516\n",
"x146 0.0228 0.0161 1.4181 0.1562 -0.0087 0.0543\n",
"x147 0.0209 0.0160 1.3055 0.1917 -0.0105 0.0522\n",
"x148 0.0207 0.0160 1.2948 0.1954 -0.0106 0.0519\n",
"x149 0.0208 0.0160 1.3032 0.1925 -0.0105 0.0522\n",
"x150 0.0270 0.0161 1.6764 0.0937 -0.0046 0.0586\n",
"x151 0.0312 0.0160 1.9470 0.0515 -0.0002 0.0626\n",
"x152 -0.0121 0.0161 -0.7499 0.4533 -0.0436 0.0195\n",
"x153 0.0251 0.0160 1.5642 0.1178 -0.0063 0.0565\n",
"x154 0.0223 0.0161 1.3847 0.1662 -0.0092 0.0538\n",
"x155 0.0191 0.0160 1.1923 0.2331 -0.0123 0.0505\n",
"x156 0.0512 0.0160 3.2000 0.0014 0.0198 0.0826\n",
"x157 0.0591 0.0160 3.6913 0.0002 0.0277 0.0905\n",
"x158 0.0250 0.0160 1.5605 0.1186 -0.0064 0.0565\n",
"x159 0.0494 0.0161 3.0768 0.0021 0.0179 0.0809\n",
"x160 0.0509 0.0161 3.1696 0.0015 0.0194 0.0824\n",
"x161 0.0515 0.0161 3.1935 0.0014 0.0199 0.0831\n",
"x162 0.0653 0.0161 4.0486 0.0001 0.0337 0.0969\n",
"x163 0.0688 0.0161 4.2642 0.0000 0.0372 0.1005\n",
"x164 0.0805 0.0161 4.9869 0.0000 0.0488 0.1121\n",
"x165 0.0603 0.0160 3.7604 0.0002 0.0289 0.0917\n",
"x166 0.0744 0.0161 4.6183 0.0000 0.0428 0.1060\n",
"x167 0.0817 0.0160 5.0983 0.0000 0.0503 0.1131\n",
"x168 0.1048 0.0161 6.5186 0.0000 0.0733 0.1363\n",
"x169 0.0902 0.0162 5.5763 0.0000 0.0585 0.1219\n",
"x170 0.0599 0.0161 3.7293 0.0002 0.0284 0.0914\n",
"x171 0.0803 0.0161 4.9783 0.0000 0.0487 0.1119\n",
"x172 0.0846 0.0161 5.2366 0.0000 0.0529 0.1162\n",
"x173 0.0460 0.0161 2.8574 0.0043 0.0145 0.0776\n",
"x174 0.0475 0.0159 2.9798 0.0029 0.0163 0.0787\n",
"x175 0.0332 0.0161 2.0627 0.0391 0.0017 0.0648\n",
"x176 0.0499 0.0161 3.0974 0.0020 0.0183 0.0816\n",
"x177 0.0415 0.0160 2.5933 0.0095 0.0101 0.0728\n",
"x178 0.0242 0.0159 1.5172 0.1292 -0.0071 0.0554\n",
"x179 0.0526 0.0160 3.2907 0.0010 0.0213 0.0839\n",
"x180 0.0404 0.0161 2.5158 0.0119 0.0089 0.0719\n",
"x181 0.0092 0.0160 0.5785 0.5629 -0.0221 0.0406\n",
"x182 0.0117 0.0161 0.7288 0.4661 -0.0198 0.0433\n",
"x183 0.0081 0.0160 0.5056 0.6132 -0.0233 0.0394\n",
"x184 0.0089 0.0160 0.5549 0.5790 -0.0226 0.0404\n",
"x185 0.0319 0.0160 1.9954 0.0460 0.0006 0.0633\n",
"x186 0.0290 0.0160 1.8123 0.0699 -0.0024 0.0603\n",
"x187 0.0531 0.0160 3.3153 0.0009 0.0217 0.0845\n",
"x188 0.0378 0.0161 2.3543 0.0186 0.0063 0.0694\n",
"x189 0.0565 0.0161 3.5191 0.0004 0.0250 0.0880\n",
"x190 0.0731 0.0161 4.5514 0.0000 0.0416 0.1046\n",
"x191 0.0912 0.0162 5.6267 0.0000 0.0594 0.1229\n",
"x192 0.0565 0.0161 3.5109 0.0004 0.0250 0.0881\n",
"x193 0.0817 0.0161 5.0665 0.0000 0.0501 0.1133\n",
"x194 0.0656 0.0161 4.0782 0.0000 0.0341 0.0972\n",
"x195 0.1196 0.0161 7.4143 0.0000 0.0880 0.1513\n",
"x196 0.0964 0.0162 5.9507 0.0000 0.0646 0.1281\n",
"x197 0.1152 0.0161 7.1531 0.0000 0.0836 0.1468\n",
"x198 0.1107 0.0161 6.8720 0.0000 0.0792 0.1423\n",
"x199 0.1047 0.0161 6.4857 0.0000 0.0731 0.1363\n",
"x200 0.0952 0.0161 5.9051 0.0000 0.0636 0.1268\n",
"x201 0.0594 0.0161 3.6876 0.0002 0.0278 0.0909\n",
"x202 0.0875 0.0161 5.4387 0.0000 0.0560 0.1191\n",
"x203 0.0393 0.0161 2.4400 0.0147 0.0077 0.0709\n",
"x204 0.0588 0.0160 3.6776 0.0002 0.0274 0.0901\n",
"x205 0.0524 0.0161 3.2574 0.0011 0.0209 0.0839\n",
"x206 0.0532 0.0162 3.2877 0.0010 0.0215 0.0849\n",
"x207 0.0355 0.0160 2.2154 0.0267 0.0041 0.0669\n",
"x208 0.0651 0.0160 4.0660 0.0000 0.0337 0.0964\n",
"x209 0.0586 0.0161 3.6487 0.0003 0.0271 0.0901\n",
"x210 0.0317 0.0160 1.9793 0.0478 0.0003 0.0631\n",
"x211 0.0021 0.0160 0.1317 0.8952 -0.0292 0.0334\n",
"x212 -0.0010 0.0161 -0.0617 0.9508 -0.0325 0.0306\n",
"x213 0.0315 0.0161 1.9599 0.0500 -0.0000 0.0630\n",
"x214 0.0296 0.0160 1.8468 0.0648 -0.0018 0.0610\n",
"x215 0.0215 0.0160 1.3464 0.1782 -0.0098 0.0529\n",
"x216 0.0389 0.0160 2.4285 0.0152 0.0075 0.0702\n",
"x217 0.0474 0.0160 2.9681 0.0030 0.0161 0.0787\n",
"x218 0.0246 0.0160 1.5357 0.1246 -0.0068 0.0560\n",
"x219 0.0520 0.0160 3.2429 0.0012 0.0206 0.0834\n",
"x220 0.0692 0.0160 4.3113 0.0000 0.0377 0.1006\n",
"x221 0.0504 0.0162 3.1117 0.0019 0.0186 0.0821\n",
"x222 0.0879 0.0161 5.4724 0.0000 0.0564 0.1194\n",
"x223 0.0526 0.0161 3.2640 0.0011 0.0210 0.0841\n",
"x224 0.0369 0.0161 2.2893 0.0221 0.0053 0.0685\n",
"x225 0.0498 0.0161 3.0997 0.0019 0.0183 0.0813\n",
"x226 0.0664 0.0162 4.1096 0.0000 0.0347 0.0980\n",
"x227 0.0905 0.0161 5.6121 0.0000 0.0589 0.1221\n",
"x228 0.0771 0.0160 4.8060 0.0000 0.0457 0.1085\n",
"x229 0.0854 0.0161 5.3150 0.0000 0.0539 0.1169\n",
"x230 0.0562 0.0161 3.4956 0.0005 0.0247 0.0877\n",
"x231 0.0646 0.0161 4.0110 0.0001 0.0330 0.0961\n",
"x232 0.0369 0.0161 2.2989 0.0215 0.0054 0.0684\n",
"x233 0.0543 0.0161 3.3792 0.0007 0.0228 0.0858\n",
"x234 0.0347 0.0160 2.1762 0.0295 0.0034 0.0660\n",
"x235 0.0359 0.0161 2.2332 0.0255 0.0044 0.0673\n",
"x236 0.0282 0.0161 1.7500 0.0801 -0.0034 0.0598\n",
"x237 0.0210 0.0160 1.3171 0.1878 -0.0103 0.0523\n",
"x238 0.0348 0.0159 2.1843 0.0289 0.0036 0.0661\n",
"x239 0.0303 0.0161 1.8847 0.0595 -0.0012 0.0618\n",
"x240 0.0157 0.0160 0.9832 0.3255 -0.0156 0.0469\n",
"x241 0.0048 0.0160 0.3024 0.7624 -0.0265 0.0361\n",
"x242 0.0057 0.0161 0.3546 0.7229 -0.0259 0.0373\n",
"x243 0.0027 0.0161 0.1657 0.8684 -0.0288 0.0342\n",
"x244 0.0112 0.0160 0.6991 0.4845 -0.0202 0.0426\n",
"x245 0.0203 0.0160 1.2690 0.2044 -0.0111 0.0517\n",
"x246 -0.0015 0.0161 -0.0960 0.9235 -0.0330 0.0299\n",
"x247 0.0113 0.0160 0.7067 0.4797 -0.0201 0.0427\n",
"x248 -0.0009 0.0160 -0.0591 0.9529 -0.0323 0.0304\n",
"x249 0.0183 0.0160 1.1380 0.2551 -0.0132 0.0497\n",
"x250 0.0285 0.0160 1.7791 0.0752 -0.0029 0.0599\n",
"x251 0.0587 0.0161 3.6370 0.0003 0.0271 0.0903\n",
"x252 0.0509 0.0160 3.1723 0.0015 0.0195 0.0824\n",
"x253 0.0159 0.0160 0.9900 0.3222 -0.0155 0.0473\n",
"x254 0.0095 0.0161 0.5918 0.5540 -0.0220 0.0411\n",
"x255 0.0215 0.0160 1.3400 0.1803 -0.0099 0.0529\n",
"x256 0.0534 0.0161 3.3132 0.0009 0.0218 0.0850\n",
"x257 0.0738 0.0161 4.5970 0.0000 0.0423 0.1052\n",
"x258 0.0424 0.0160 2.6420 0.0082 0.0109 0.0738\n",
"x259 0.0484 0.0161 3.0143 0.0026 0.0169 0.0799\n",
"x260 0.0203 0.0161 1.2640 0.2062 -0.0112 0.0518\n",
"x261 0.0363 0.0161 2.2570 0.0240 0.0048 0.0678\n",
"x262 0.0427 0.0160 2.6711 0.0076 0.0114 0.0741\n",
"x263 0.0120 0.0160 0.7490 0.4539 -0.0194 0.0434\n",
"x264 0.0340 0.0160 2.1177 0.0342 0.0025 0.0654\n",
"x265 0.0406 0.0161 2.5250 0.0116 0.0091 0.0722\n",
"x266 0.0331 0.0161 2.0580 0.0396 0.0016 0.0646\n",
"x267 0.0200 0.0160 1.2519 0.2106 -0.0113 0.0513\n",
"x268 0.0025 0.0160 0.1544 0.8773 -0.0289 0.0338\n",
"x269 0.0282 0.0161 1.7523 0.0797 -0.0033 0.0598\n",
"x270 0.0084 0.0160 0.5295 0.5964 -0.0228 0.0397\n",
"x271 -0.0204 0.0160 -1.2785 0.2011 -0.0517 0.0109\n",
"x272 0.0048 0.0162 0.2985 0.7653 -0.0269 0.0366\n",
"x273 0.0285 0.0161 1.7712 0.0765 -0.0030 0.0600\n",
"x274 -0.0137 0.0160 -0.8577 0.3911 -0.0450 0.0176\n",
"x275 -0.0059 0.0160 -0.3714 0.7103 -0.0373 0.0254\n",
"x276 0.0176 0.0160 1.1031 0.2700 -0.0137 0.0490\n",
"x277 0.0044 0.0160 0.2758 0.7827 -0.0270 0.0358\n",
"x278 0.0178 0.0160 1.1119 0.2662 -0.0136 0.0491\n",
"x279 0.0020 0.0161 0.1253 0.9003 -0.0295 0.0335\n",
"x280 0.0015 0.0160 0.0958 0.9236 -0.0299 0.0329\n",
"x281 0.0207 0.0161 1.2838 0.1992 -0.0109 0.0523\n",
"x282 0.0416 0.0160 2.5914 0.0096 0.0101 0.0730\n",
"x283 -0.0119 0.0160 -0.7421 0.4580 -0.0432 0.0195\n",
"x284 0.0207 0.0161 1.2875 0.1979 -0.0108 0.0522\n",
"x285 0.0272 0.0161 1.6954 0.0900 -0.0042 0.0587\n",
"x286 0.0257 0.0161 1.5998 0.1097 -0.0058 0.0571\n",
"x287 0.0060 0.0160 0.3728 0.7093 -0.0254 0.0374\n",
"x288 0.0074 0.0160 0.4599 0.6456 -0.0240 0.0388\n",
"x289 -0.0132 0.0161 -0.8216 0.4113 -0.0447 0.0183\n",
"x290 0.0262 0.0161 1.6304 0.1030 -0.0053 0.0576\n",
"x291 0.0332 0.0161 2.0649 0.0389 0.0017 0.0646\n",
"x292 0.0221 0.0160 1.3824 0.1668 -0.0092 0.0535\n",
"x293 0.0087 0.0160 0.5425 0.5875 -0.0227 0.0400\n",
"x294 0.0102 0.0161 0.6352 0.5253 -0.0213 0.0417\n",
"x295 -0.0216 0.0161 -1.3440 0.1789 -0.0530 0.0099\n",
"x296 0.0100 0.0161 0.6209 0.5346 -0.0215 0.0415\n",
"x297 0.0105 0.0160 0.6600 0.5092 -0.0208 0.0418\n",
"x298 0.0071 0.0161 0.4417 0.6587 -0.0244 0.0386\n",
"x299 -0.0006 0.0161 -0.0390 0.9689 -0.0321 0.0308\n",
"x300 -0.0168 0.0160 -1.0533 0.2922 -0.0481 0.0145\n",
"x301 0.0071 0.0160 0.4460 0.6556 -0.0243 0.0386\n",
"x302 -0.0064 0.0162 -0.3941 0.6935 -0.0380 0.0253\n",
"x303 -0.0007 0.0160 -0.0413 0.9671 -0.0321 0.0307\n",
"x304 -0.0226 0.0160 -1.4168 0.1565 -0.0539 0.0087\n",
"x305 -0.0023 0.0160 -0.1434 0.8860 -0.0337 0.0291\n",
"x306 -0.0099 0.0160 -0.6189 0.5360 -0.0413 0.0215\n",
"x307 -0.0122 0.0160 -0.7608 0.4468 -0.0435 0.0192\n",
"x308 -0.0141 0.0160 -0.8811 0.3783 -0.0455 0.0173\n",
"x309 -0.0063 0.0160 -0.3909 0.6959 -0.0377 0.0252\n",
"x310 -0.0164 0.0160 -1.0246 0.3056 -0.0478 0.0150\n",
"x311 0.0096 0.0161 0.5962 0.5510 -0.0219 0.0411\n",
"x312 -0.0353 0.0160 -2.2018 0.0277 -0.0666 -0.0039\n",
"x313 -0.0493 0.0161 -3.0725 0.0021 -0.0808 -0.0179\n",
"x314 -0.0358 0.0161 -2.2315 0.0257 -0.0673 -0.0044\n",
"x315 -0.0033 0.0161 -0.2047 0.8378 -0.0348 0.0282\n",
"x316 -0.0098 0.0161 -0.6097 0.5420 -0.0413 0.0217\n",
"x317 -0.0238 0.0160 -1.4843 0.1377 -0.0552 0.0076\n",
"x318 -0.0165 0.0161 -1.0282 0.3038 -0.0480 0.0150\n",
"x319 -0.0154 0.0161 -0.9540 0.3401 -0.0469 0.0162\n",
"x320 0.0006 0.0160 0.0356 0.9716 -0.0309 0.0320\n",
"x321 -0.0071 0.0160 -0.4402 0.6598 -0.0385 0.0244\n",
"x322 -0.0191 0.0160 -1.1965 0.2315 -0.0504 0.0122\n",
"x323 -0.0063 0.0160 -0.3929 0.6944 -0.0377 0.0251\n",
"x324 0.0047 0.0161 0.2910 0.7711 -0.0268 0.0362\n",
"x325 0.0167 0.0160 1.0389 0.2988 -0.0148 0.0481\n",
"x326 0.0003 0.0161 0.0180 0.9856 -0.0313 0.0318\n",
"x327 0.0104 0.0160 0.6518 0.5145 -0.0209 0.0417\n",
"x328 -0.0175 0.0160 -1.0902 0.2756 -0.0489 0.0139\n",
"x329 -0.0395 0.0161 -2.4572 0.0140 -0.0710 -0.0080\n",
"x330 -0.0113 0.0159 -0.7118 0.4766 -0.0426 0.0199\n",
"x331 0.0026 0.0160 0.1607 0.8723 -0.0289 0.0340\n",
"x332 0.0151 0.0161 0.9340 0.3503 -0.0166 0.0467\n",
"x333 -0.0235 0.0160 -1.4684 0.1420 -0.0548 0.0079\n",
"x334 0.0049 0.0160 0.3076 0.7584 -0.0264 0.0362\n",
"x335 -0.0267 0.0160 -1.6633 0.0962 -0.0581 0.0048\n",
"x336 -0.0168 0.0160 -1.0473 0.2950 -0.0482 0.0146\n",
"x337 -0.0531 0.0161 -3.3032 0.0010 -0.0846 -0.0216\n",
"x338 -0.0013 0.0160 -0.0822 0.9345 -0.0327 0.0300\n",
"x339 -0.0359 0.0161 -2.2313 0.0257 -0.0674 -0.0044\n",
"x340 -0.0163 0.0161 -1.0135 0.3108 -0.0477 0.0152\n",
"x341 -0.0317 0.0161 -1.9717 0.0486 -0.0633 -0.0002\n",
"x342 -0.0425 0.0161 -2.6467 0.0081 -0.0739 -0.0110\n",
"x343 -0.0216 0.0160 -1.3468 0.1781 -0.0529 0.0098\n",
"x344 -0.0415 0.0161 -2.5790 0.0099 -0.0730 -0.0100\n",
"x345 -0.0266 0.0160 -1.6587 0.0972 -0.0580 0.0048\n",
"x346 -0.0499 0.0161 -3.1039 0.0019 -0.0814 -0.0184\n",
"x347 -0.0766 0.0160 -4.7711 0.0000 -0.1080 -0.0451\n",
"x348 -0.0547 0.0161 -3.4059 0.0007 -0.0862 -0.0232\n",
"x349 -0.0515 0.0160 -3.2066 0.0013 -0.0829 -0.0200\n",
"x350 -0.0374 0.0160 -2.3305 0.0198 -0.0689 -0.0059\n",
"x351 -0.0101 0.0161 -0.6292 0.5292 -0.0416 0.0214\n",
"x352 -0.0335 0.0160 -2.0944 0.0362 -0.0648 -0.0022\n",
"x353 -0.0367 0.0160 -2.2935 0.0218 -0.0681 -0.0053\n",
"x354 -0.0533 0.0161 -3.3100 0.0009 -0.0848 -0.0217\n",
"x355 -0.0115 0.0160 -0.7184 0.4725 -0.0430 0.0199\n",
"x356 -0.0341 0.0161 -2.1169 0.0343 -0.0657 -0.0025\n",
"x357 -0.0311 0.0160 -1.9456 0.0517 -0.0625 0.0002\n",
"x358 -0.0442 0.0160 -2.7559 0.0059 -0.0756 -0.0128\n",
"x359 -0.0193 0.0161 -1.1980 0.2309 -0.0508 0.0123\n",
"x360 0.0096 0.0159 0.6010 0.5479 -0.0216 0.0408\n",
"x361 -0.0282 0.0160 -1.7589 0.0786 -0.0596 0.0032\n",
"x362 0.0132 0.0162 0.8184 0.4131 -0.0185 0.0449\n",
"x363 -0.0220 0.0160 -1.3770 0.1685 -0.0534 0.0093\n",
"x364 -0.0192 0.0160 -1.1960 0.2317 -0.0506 0.0123\n",
"x365 -0.0088 0.0161 -0.5483 0.5835 -0.0403 0.0227\n",
"x366 -0.0242 0.0160 -1.5132 0.1302 -0.0555 0.0071\n",
"x367 -0.0335 0.0160 -2.0881 0.0368 -0.0650 -0.0021\n",
"x368 -0.0072 0.0161 -0.4486 0.6537 -0.0387 0.0243\n",
"x369 -0.0369 0.0161 -2.2944 0.0218 -0.0685 -0.0054\n",
"x370 -0.0369 0.0161 -2.2966 0.0216 -0.0685 -0.0054\n",
"x371 -0.0453 0.0160 -2.8275 0.0047 -0.0768 -0.0139\n",
"x372 -0.0507 0.0161 -3.1554 0.0016 -0.0821 -0.0192\n",
"x373 -0.0433 0.0160 -2.6961 0.0070 -0.0747 -0.0118\n",
"x374 -0.0391 0.0161 -2.4304 0.0151 -0.0706 -0.0076\n",
"x375 -0.0438 0.0161 -2.7248 0.0064 -0.0752 -0.0123\n",
"x376 -0.0566 0.0161 -3.5202 0.0004 -0.0882 -0.0251\n",
"x377 -0.0480 0.0160 -3.0015 0.0027 -0.0793 -0.0166\n",
"x378 -0.0658 0.0161 -4.0975 0.0000 -0.0973 -0.0343\n",
"x379 -0.0140 0.0160 -0.8699 0.3843 -0.0454 0.0175\n",
"x380 -0.0359 0.0160 -2.2365 0.0253 -0.0673 -0.0044\n",
"x381 -0.0312 0.0161 -1.9347 0.0530 -0.0628 0.0004\n",
"x382 -0.0220 0.0160 -1.3723 0.1700 -0.0533 0.0094\n",
"x383 -0.0436 0.0160 -2.7226 0.0065 -0.0750 -0.0122\n",
"x384 -0.0307 0.0161 -1.9071 0.0565 -0.0622 0.0009\n",
"x385 -0.0345 0.0160 -2.1506 0.0315 -0.0660 -0.0031\n",
"x386 -0.0552 0.0161 -3.4290 0.0006 -0.0867 -0.0236\n",
"x387 -0.0243 0.0160 -1.5202 0.1285 -0.0557 0.0070\n",
"x388 -0.0348 0.0160 -2.1730 0.0298 -0.0662 -0.0034\n",
"x389 0.0039 0.0161 0.2427 0.8082 -0.0276 0.0354\n",
"x390 -0.0038 0.0160 -0.2402 0.8102 -0.0351 0.0275\n",
"x391 -0.0250 0.0160 -1.5638 0.1179 -0.0564 0.0063\n",
"x392 -0.0104 0.0162 -0.6416 0.5211 -0.0421 0.0213\n",
"x393 -0.0017 0.0160 -0.1053 0.9161 -0.0331 0.0297\n",
"x394 -0.0141 0.0160 -0.8834 0.3770 -0.0455 0.0172\n",
"x395 -0.0202 0.0161 -1.2559 0.2092 -0.0517 0.0113\n",
"x396 -0.0186 0.0160 -1.1617 0.2454 -0.0501 0.0128\n",
"x397 -0.0365 0.0161 -2.2676 0.0234 -0.0680 -0.0049\n",
"x398 -0.0094 0.0160 -0.5834 0.5596 -0.0408 0.0221\n",
"x399 -0.0329 0.0161 -2.0415 0.0412 -0.0644 -0.0013\n",
"x400 -0.0376 0.0161 -2.3360 0.0195 -0.0692 -0.0061\n",
"x401 -0.0271 0.0161 -1.6881 0.0914 -0.0587 0.0044\n",
"x402 -0.0353 0.0160 -2.2065 0.0273 -0.0667 -0.0039\n",
"x403 -0.0324 0.0160 -2.0238 0.0430 -0.0637 -0.0010\n",
"x404 -0.0299 0.0161 -1.8608 0.0628 -0.0615 0.0016\n",
"x405 -0.0358 0.0161 -2.2279 0.0259 -0.0673 -0.0043\n",
"x406 -0.0406 0.0161 -2.5286 0.0115 -0.0721 -0.0091\n",
"x407 -0.0581 0.0159 -3.6456 0.0003 -0.0894 -0.0269\n",
"x408 -0.0693 0.0161 -4.3139 0.0000 -0.1008 -0.0378\n",
"x409 -0.0389 0.0160 -2.4269 0.0152 -0.0704 -0.0075\n",
"x410 -0.0493 0.0161 -3.0692 0.0021 -0.0807 -0.0178\n",
"x411 -0.0424 0.0161 -2.6284 0.0086 -0.0740 -0.0108\n",
"x412 -0.0354 0.0160 -2.2070 0.0273 -0.0669 -0.0040\n",
"x413 -0.0540 0.0160 -3.3764 0.0007 -0.0854 -0.0227\n",
"x414 -0.0123 0.0161 -0.7637 0.4451 -0.0438 0.0192\n",
"x415 -0.0317 0.0161 -1.9691 0.0489 -0.0632 -0.0001\n",
"x416 -0.0259 0.0160 -1.6166 0.1060 -0.0574 0.0055\n",
"x417 -0.0247 0.0160 -1.5467 0.1219 -0.0561 0.0066\n",
"x418 -0.0118 0.0160 -0.7366 0.4614 -0.0431 0.0196\n",
"x419 -0.0131 0.0161 -0.8116 0.4170 -0.0446 0.0185\n",
"x420 -0.0080 0.0160 -0.4993 0.6176 -0.0393 0.0233\n",
"x421 0.0031 0.0160 0.1967 0.8440 -0.0282 0.0345\n",
"x422 -0.0088 0.0162 -0.5473 0.5842 -0.0405 0.0228\n",
"x423 0.0024 0.0161 0.1493 0.8813 -0.0291 0.0339\n",
"x424 -0.0083 0.0160 -0.5202 0.6029 -0.0398 0.0231\n",
"x425 -0.0103 0.0160 -0.6436 0.5198 -0.0418 0.0211\n",
"x426 -0.0383 0.0160 -2.3940 0.0167 -0.0697 -0.0069\n",
"x427 0.0112 0.0160 0.7007 0.4835 -0.0202 0.0427\n",
"x428 -0.0063 0.0161 -0.3912 0.6957 -0.0377 0.0252\n",
"x429 -0.0244 0.0160 -1.5196 0.1286 -0.0558 0.0071\n",
"x430 -0.0106 0.0161 -0.6573 0.5110 -0.0421 0.0209\n",
"x431 -0.0206 0.0160 -1.2838 0.1992 -0.0519 0.0108\n",
"x432 -0.0355 0.0160 -2.2164 0.0267 -0.0669 -0.0041\n",
"x433 -0.0154 0.0161 -0.9584 0.3378 -0.0470 0.0161\n",
"x434 -0.0045 0.0160 -0.2778 0.7812 -0.0359 0.0270\n",
"x435 -0.0349 0.0160 -2.1739 0.0297 -0.0663 -0.0034\n",
"x436 -0.0115 0.0161 -0.7143 0.4750 -0.0429 0.0200\n",
"x437 -0.0475 0.0160 -2.9660 0.0030 -0.0788 -0.0161\n",
"x438 -0.0469 0.0161 -2.9218 0.0035 -0.0784 -0.0154\n",
"x439 -0.0308 0.0160 -1.9241 0.0543 -0.0622 0.0006\n",
"x440 -0.0444 0.0160 -2.7689 0.0056 -0.0759 -0.0130\n",
"x441 -0.0541 0.0161 -3.3621 0.0008 -0.0857 -0.0226\n",
"x442 -0.0294 0.0161 -1.8306 0.0672 -0.0609 0.0021\n",
"x443 -0.0125 0.0160 -0.7782 0.4364 -0.0438 0.0189\n",
"x444 -0.0579 0.0161 -3.5897 0.0003 -0.0895 -0.0263\n",
"x445 -0.0005 0.0161 -0.0288 0.9770 -0.0320 0.0311\n",
"x446 -0.0074 0.0160 -0.4613 0.6446 -0.0388 0.0240\n",
"x447 -0.0082 0.0160 -0.5127 0.6082 -0.0396 0.0232\n",
"x448 -0.0246 0.0160 -1.5395 0.1237 -0.0560 0.0067\n",
"x449 0.0002 0.0161 0.0141 0.9888 -0.0313 0.0317\n",
"x450 -0.0219 0.0160 -1.3727 0.1698 -0.0533 0.0094\n",
"x451 -0.0171 0.0160 -1.0713 0.2840 -0.0485 0.0142\n",
"x452 -0.0119 0.0161 -0.7404 0.4591 -0.0435 0.0196\n",
"x453 -0.0104 0.0161 -0.6485 0.5167 -0.0420 0.0211\n",
"x454 -0.0065 0.0160 -0.4083 0.6831 -0.0379 0.0249\n",
"x455 -0.0161 0.0160 -1.0046 0.3151 -0.0475 0.0153\n",
"x456 -0.0051 0.0160 -0.3191 0.7497 -0.0366 0.0263\n",
"x457 -0.0099 0.0161 -0.6177 0.5368 -0.0414 0.0215\n",
"x458 -0.0150 0.0160 -0.9354 0.3496 -0.0465 0.0164\n",
"x459 -0.0288 0.0160 -1.8038 0.0713 -0.0601 0.0025\n",
"x460 -0.0377 0.0161 -2.3394 0.0193 -0.0693 -0.0061\n",
"x461 -0.0035 0.0160 -0.2158 0.8291 -0.0349 0.0280\n",
"x462 -0.0331 0.0160 -2.0648 0.0389 -0.0645 -0.0017\n",
"x463 -0.0139 0.0161 -0.8605 0.3895 -0.0454 0.0177\n",
"x464 -0.0233 0.0160 -1.4493 0.1473 -0.0547 0.0082\n",
"x465 -0.0089 0.0160 -0.5573 0.5773 -0.0402 0.0224\n",
"x466 -0.0408 0.0160 -2.5477 0.0108 -0.0722 -0.0094\n",
"x467 -0.0253 0.0160 -1.5838 0.1132 -0.0566 0.0060\n",
"x468 -0.0365 0.0161 -2.2733 0.0230 -0.0680 -0.0050\n",
"x469 -0.0244 0.0160 -1.5205 0.1284 -0.0558 0.0070\n",
"x470 -0.0187 0.0161 -1.1612 0.2455 -0.0502 0.0128\n",
"x471 -0.0468 0.0161 -2.9102 0.0036 -0.0784 -0.0153\n",
"x472 -0.0028 0.0161 -0.1727 0.8629 -0.0344 0.0288\n",
"x473 -0.0223 0.0161 -1.3894 0.1647 -0.0538 0.0092\n",
"x474 -0.0178 0.0160 -1.1085 0.2677 -0.0492 0.0136\n",
"x475 -0.0213 0.0161 -1.3229 0.1859 -0.0528 0.0102\n",
"x476 -0.0111 0.0161 -0.6901 0.4901 -0.0427 0.0204\n",
"x477 -0.0460 0.0160 -2.8760 0.0040 -0.0773 -0.0146\n",
"x478 -0.0197 0.0160 -1.2333 0.2175 -0.0511 0.0116\n",
"x479 -0.0142 0.0160 -0.8885 0.3743 -0.0455 0.0171\n",
"x480 -0.0056 0.0160 -0.3490 0.7271 -0.0368 0.0257\n",
"x481 0.0053 0.0160 0.3329 0.7392 -0.0261 0.0367\n",
"x482 -0.0045 0.0161 -0.2795 0.7798 -0.0359 0.0270\n",
"x483 -0.0130 0.0161 -0.8074 0.4195 -0.0445 0.0185\n",
"x484 0.0178 0.0160 1.1121 0.2661 -0.0136 0.0492\n",
"x485 0.0045 0.0161 0.2815 0.7783 -0.0270 0.0360\n",
"x486 -0.0185 0.0160 -1.1534 0.2487 -0.0499 0.0129\n",
"x487 -0.0192 0.0161 -1.1964 0.2315 -0.0507 0.0123\n",
"x488 0.0049 0.0160 0.3046 0.7607 -0.0265 0.0363\n",
"x489 -0.0363 0.0160 -2.2753 0.0229 -0.0676 -0.0050\n",
"x490 -0.0174 0.0161 -1.0792 0.2805 -0.0489 0.0142\n",
"x491 -0.0270 0.0160 -1.6844 0.0921 -0.0584 0.0044\n",
"x492 -0.0118 0.0160 -0.7339 0.4630 -0.0432 0.0197\n",
"x493 -0.0037 0.0161 -0.2306 0.8176 -0.0353 0.0278\n",
"x494 -0.0031 0.0161 -0.1951 0.8453 -0.0346 0.0283\n",
"x495 -0.0357 0.0160 -2.2340 0.0255 -0.0671 -0.0044\n",
"x496 -0.0349 0.0160 -2.1760 0.0296 -0.0663 -0.0035\n",
"x497 -0.0274 0.0160 -1.7151 0.0863 -0.0587 0.0039\n",
"x498 -0.0299 0.0160 -1.8669 0.0619 -0.0613 0.0015\n",
"x499 -0.0153 0.0160 -0.9536 0.3403 -0.0467 0.0161\n",
"x500 -0.0271 0.0161 -1.6856 0.0919 -0.0586 0.0044\n",
"x501 -0.0010 0.0161 -0.0631 0.9497 -0.0325 0.0305\n",
"x502 -0.0107 0.0161 -0.6644 0.5064 -0.0422 0.0208\n",
"x503 0.0060 0.0161 0.3724 0.7096 -0.0255 0.0375\n",
"x504 -0.0003 0.0160 -0.0162 0.9871 -0.0315 0.0310\n",
"x505 -0.0274 0.0160 -1.7110 0.0871 -0.0589 0.0040\n",
"x506 -0.0063 0.0161 -0.3881 0.6980 -0.0379 0.0253\n",
"x507 -0.0358 0.0160 -2.2389 0.0252 -0.0672 -0.0045\n",
"x508 0.0263 0.0161 1.6362 0.1018 -0.0052 0.0578\n",
"x509 -0.0074 0.0160 -0.4609 0.6449 -0.0388 0.0240\n",
"x510 -0.0344 0.0160 -2.1496 0.0316 -0.0657 -0.0030\n",
"x511 -0.0147 0.0160 -0.9166 0.3594 -0.0461 0.0167\n",
"x512 0.0017 0.0161 0.1080 0.9140 -0.0297 0.0332\n",
"x513 0.0084 0.0161 0.5236 0.6005 -0.0231 0.0399\n",
"x514 -0.0033 0.0161 -0.2067 0.8362 -0.0348 0.0282\n",
"x515 -0.0300 0.0161 -1.8635 0.0624 -0.0615 0.0016\n",
"x516 -0.0042 0.0161 -0.2594 0.7953 -0.0357 0.0273\n",
"x517 0.0001 0.0161 0.0086 0.9932 -0.0314 0.0317\n",
"x518 0.0120 0.0160 0.7515 0.4524 -0.0194 0.0434\n",
"x519 -0.0316 0.0160 -1.9787 0.0479 -0.0630 -0.0003\n",
"x520 -0.0364 0.0161 -2.2653 0.0235 -0.0680 -0.0049\n",
"x521 -0.0140 0.0160 -0.8719 0.3833 -0.0454 0.0175\n",
"x522 -0.0297 0.0160 -1.8527 0.0639 -0.0612 0.0017\n",
"x523 0.0099 0.0161 0.6122 0.5404 -0.0217 0.0414\n",
"x524 -0.0041 0.0160 -0.2532 0.8001 -0.0355 0.0273\n",
"x525 -0.0164 0.0160 -1.0245 0.3056 -0.0478 0.0150\n",
"x526 0.0004 0.0161 0.0255 0.9796 -0.0311 0.0319\n",
"x527 -0.0496 0.0160 -3.1072 0.0019 -0.0809 -0.0183\n",
"x528 -0.0240 0.0160 -1.5030 0.1328 -0.0553 0.0073\n",
"x529 -0.0234 0.0161 -1.4569 0.1452 -0.0549 0.0081\n",
"x530 0.0030 0.0161 0.1881 0.8508 -0.0285 0.0346\n",
"x531 -0.0073 0.0160 -0.4524 0.6510 -0.0387 0.0242\n",
"x532 -0.0181 0.0160 -1.1283 0.2592 -0.0496 0.0133\n",
"x533 -0.0136 0.0160 -0.8513 0.3946 -0.0451 0.0178\n",
"x534 -0.0123 0.0161 -0.7694 0.4417 -0.0438 0.0191\n",
"x535 -0.0082 0.0161 -0.5084 0.6112 -0.0396 0.0233\n",
"x536 -0.0175 0.0162 -1.0843 0.2782 -0.0492 0.0142\n",
"x537 -0.0188 0.0160 -1.1753 0.2399 -0.0502 0.0126\n",
"x538 0.0004 0.0160 0.0237 0.9811 -0.0311 0.0318\n",
"x539 -0.0170 0.0160 -1.0627 0.2879 -0.0484 0.0144\n",
"x540 0.0033 0.0161 0.2053 0.8373 -0.0282 0.0348\n",
"x541 -0.0004 0.0161 -0.0226 0.9820 -0.0319 0.0311\n",
"x542 0.0176 0.0161 1.0961 0.2730 -0.0139 0.0491\n",
"x543 0.0119 0.0161 0.7384 0.4603 -0.0196 0.0433\n",
"x544 0.0058 0.0161 0.3606 0.7184 -0.0257 0.0373\n",
"x545 0.0063 0.0161 0.3907 0.6960 -0.0253 0.0379\n",
"x546 -0.0075 0.0161 -0.4648 0.6421 -0.0390 0.0240\n",
"x547 -0.0150 0.0161 -0.9322 0.3512 -0.0465 0.0165\n",
"x548 0.0062 0.0160 0.3860 0.6995 -0.0252 0.0375\n",
"x549 0.0077 0.0160 0.4843 0.6282 -0.0236 0.0391\n",
"x550 -0.0116 0.0161 -0.7204 0.4713 -0.0431 0.0199\n",
"x551 -0.0373 0.0161 -2.3195 0.0204 -0.0687 -0.0058\n",
"x552 0.0059 0.0160 0.3667 0.7139 -0.0255 0.0373\n",
"x553 -0.0028 0.0161 -0.1747 0.8613 -0.0343 0.0287\n",
"x554 0.0121 0.0161 0.7510 0.4526 -0.0194 0.0436\n",
"x555 -0.0182 0.0160 -1.1362 0.2559 -0.0496 0.0132\n",
"x556 -0.0256 0.0161 -1.5940 0.1109 -0.0572 0.0059\n",
"x557 -0.0197 0.0160 -1.2311 0.2183 -0.0511 0.0117\n",
"x558 0.0019 0.0160 0.1165 0.9073 -0.0295 0.0332\n",
"x559 0.0233 0.0160 1.4515 0.1466 -0.0082 0.0547\n",
"x560 -0.0026 0.0161 -0.1631 0.8704 -0.0341 0.0289\n",
"x561 -0.0207 0.0161 -1.2868 0.1982 -0.0522 0.0108\n",
"x562 -0.0142 0.0160 -0.8840 0.3767 -0.0455 0.0172\n",
"x563 0.0078 0.0160 0.4872 0.6261 -0.0236 0.0392\n",
"x564 -0.0063 0.0161 -0.3933 0.6941 -0.0378 0.0252\n",
"x565 -0.0267 0.0160 -1.6665 0.0956 -0.0582 0.0047\n",
"x566 -0.0287 0.0162 -1.7748 0.0759 -0.0603 0.0030\n",
"x567 0.0024 0.0160 0.1486 0.8819 -0.0289 0.0337\n",
"x568 -0.0208 0.0161 -1.2957 0.1951 -0.0523 0.0107\n",
"x569 -0.0076 0.0161 -0.4720 0.6369 -0.0390 0.0239\n",
"x570 0.0029 0.0160 0.1791 0.8578 -0.0285 0.0342\n",
"x571 0.0147 0.0161 0.9119 0.3618 -0.0169 0.0463\n",
"x572 -0.0092 0.0161 -0.5719 0.5674 -0.0407 0.0223\n",
"x573 -0.0031 0.0160 -0.1951 0.8453 -0.0345 0.0283\n",
"x574 0.0026 0.0161 0.1637 0.8700 -0.0288 0.0341\n",
"x575 -0.0169 0.0160 -1.0560 0.2910 -0.0484 0.0145\n",
"x576 -0.0015 0.0160 -0.0932 0.9257 -0.0329 0.0299\n",
"x577 -0.0099 0.0161 -0.6169 0.5373 -0.0415 0.0217\n",
"x578 -0.0211 0.0160 -1.3202 0.1868 -0.0524 0.0102\n",
"x579 0.0182 0.0160 1.1352 0.2563 -0.0132 0.0496\n",
"x580 -0.0006 0.0161 -0.0382 0.9695 -0.0321 0.0309\n",
"x581 0.0112 0.0160 0.6972 0.4857 -0.0203 0.0426\n",
"x582 0.0047 0.0161 0.2931 0.7694 -0.0268 0.0362\n",
"x583 -0.0102 0.0160 -0.6369 0.5242 -0.0416 0.0212\n",
"x584 -0.0030 0.0161 -0.1844 0.8537 -0.0345 0.0285\n",
"x585 0.0013 0.0160 0.0829 0.9339 -0.0300 0.0326\n",
"x586 -0.0148 0.0161 -0.9186 0.3583 -0.0464 0.0168\n",
"x587 -0.0194 0.0160 -1.2112 0.2258 -0.0508 0.0120\n",
"x588 0.0020 0.0160 0.1238 0.9014 -0.0294 0.0334\n",
"x589 -0.0221 0.0160 -1.3774 0.1684 -0.0535 0.0093\n",
"x590 -0.0255 0.0161 -1.5816 0.1137 -0.0570 0.0061\n",
"x591 -0.0019 0.0161 -0.1191 0.9052 -0.0335 0.0297\n",
"x592 -0.0034 0.0160 -0.2100 0.8337 -0.0347 0.0280\n",
"x593 -0.0393 0.0160 -2.4511 0.0142 -0.0708 -0.0079\n",
"x594 -0.0086 0.0160 -0.5350 0.5926 -0.0400 0.0228\n",
"x595 -0.0133 0.0160 -0.8319 0.4054 -0.0447 0.0181\n",
"x596 0.0050 0.0161 0.3101 0.7565 -0.0266 0.0366\n",
"x597 -0.0092 0.0160 -0.5719 0.5674 -0.0406 0.0222\n",
"x598 -0.0184 0.0161 -1.1474 0.2512 -0.0500 0.0131\n",
"x599 0.0129 0.0160 0.8028 0.4221 -0.0185 0.0443\n",
"x600 -0.0112 0.0161 -0.6989 0.4846 -0.0427 0.0203\n",
"================================================================\n",
"\n"
]
}
],
"source": [
"GLM_model = sm.GLM(spikeCounts2, shiftedData2, family=sm.families.Poisson()) # initializes a GLM from Poisson model family\n",
"myFit = GLM_model.fit()\n",
"print(myFit.summary2())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Evaluating your fit model\n",
"So you've fit a GLM- now what? How can we tell if we've done a good job of modeling this neuron? We have a couple options for evaluating goodness of fit.\n",
"\n",
"### Looking at the fit parameters\n",
"First off, it would be good to see if our fit model produces anything that looks like a reasonable estimate of a cell's receptive field. If you've computed a spike-triggered average for your neuron, you can compare this to the stimulus filter fit by the GLM.\n",
"\n",
"The parameters of our fit GLM are found in `myFit.params`, and there are $[$ `winSize` $*$ `len(spaceRange)` $ + 1 ]$ of them ($+1$ because of the constant offset term we appended to our independent variables.) As you can see from `myFit.summary2` above, this constant offset term is our first model parameter, and the rest correspond to our input variables.\n",
"\n",
"These parameters are weights on the data in `shiftedData`, which we constructed as blocks of pixel space at multiple offsets in time. So if we reshape these weights into a `winSize` $*$ `len(spaceRange)` matrix, we should get something that looks like the neuron's spatiotemporal receptive field:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"RF = np.reshape(myFit.params[1:],[winSize,len(spaceRange)]).T\n",
"plt.imshow(RF)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Looking good! But you might use this to go back and adjust `spaceRange` or `winSize` to make sure you're using the right spatial and temporal windows for fitting- for instance, to make sure we're not chopping off the top of this cell's receptive field with our chosen `spaceRange`.\n",
"\n",
"### Predicting spiking on held-out data\n",
"\n",
"We might also ask how well our model is able to predict the spiking of the neuron. Since we fit the model using just the frames in `trainInds = np.arange(100,10000)`, we can use the remaining held-out frames as a test set:"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAEKCAYAAAARnO4WAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzsvXmcHEd5//+u7pnZmdlD0uqwbku2wff6kGUbLBvbCcYYh3DYxgTCFWMghPBNvvxIwk2AfAkk4Ng4AYMJhMscxibcYBsw8gUStoVlyZfuW9rVnnN31++P6urpmek5dudYaVXv10uv0e72dtXMVj/96U899ZSQUmIwGAyGmY813R0wGAwGQ2cwAd9gMBiOEUzANxgMhmMEE/ANBoPhGMEEfIPBYDhGMAHfYDAYjhFMwDcYDIZjBBPwDQaD4RjBBHyDwWA4RohMdweCzJs3T65YsWK6u2EwGAxHDevXrz8kpZzfyLFHVMBfsWIF69atm+5uGAwGw1GDEGJ7o8caS8dgMBiOEUzANxgMhmMEE/ANBoPhGOGI8vANBkNz5PN5du3aRSaTme6uGFpMPB5n6dKlRKPRKZ/DBHyDYQaxa9cuent7WbFiBUKI6e6OoUVIKRkcHGTXrl2sXLlyyucxlo7BMIPIZDLMnTvXBPsZhhCCuXPnNv3kZgK+wTDDMMF+ZtKKv6sJ+IZwCll49OtgtsA0GGYMJuAbwnnuPvjBO2Hv49PdE8MMYNu2bZxxxhnT3Y0KLr300tDFnjfccANPPvnklM+7YsUKDh06VPOYf/mXf5ny+aeKCfiGcApZ9Zodnd5+GAxVKBQKbTv3l770JU477bS2nR9MwDccSUhHveYmprcfhqOOz3zmM5xxxhmcccYZ3HTTTf73C4UCb3zjGxkYGOCaa64hlUoB8I//+I+cdtppDAwM8J73vAeAgwcP8upXv5rVq1ezevVqHnjgAQA+8pGPcOONN3LFFVfwhje8gQsuuICNGzf6bVx66aWsX7+eiYkJ3vKWt7B69WrOOeccfvCDHwCQTqe5/vrrGRgY4DWveQ3pdDr0PQSVf09PD+9///s566yzuPDCC9m/f3/F8YODg1xxxRWcc845vO1tb0MGrNBXvOIVrFq1itNPP53bbrvNf8/pdJqzzz6b173udVWPazUmLdMQjuuq1+z49PbDMGU++sONPLmntU9opy3u48N/dnrVn69fv57//u//5pFHHkFKyQUXXMCLXvQi5syZw1NPPcXtt9/ORRddxFve8hb+8z//k7e85S3cddddbN68GSEEw8PDALz73e/m7/7u71izZg07duzgJS95CZs2bfLbWLt2LYlEgs9+9rN85zvf4aMf/Sh79+5lz549rFq1ive9731cfvnlfPnLX2Z4eJjzzz+fP/3TP+ULX/gCyWSSDRs2sGHDBs4999y673liYoILL7yQT3ziE7z3ve/li1/8Ih/4wAdKjvnoRz/KmjVr+NCHPsSPf/zjkoD95S9/mf7+ftLpNKtXr+bVr341n/zkJ/nc5z7HY489VvO4uXPnTurvUw+j8A3h+ArfBHxD46xdu5ZXvvKVdHd309PTw6te9Sp++9vfArBs2TIuuugiAF7/+tezdu1a+vr6iMfj3HDDDXz/+98nmUwCcM899/A3f/M3nH322bz85S9ndHSUsbExAF7+8peTSCQAuO666/jud78LwHe+8x2uvfZaAH7xi1/wyU9+krPPPptLL72UTCbDjh07uP/++3n9618PwMDAAAMDA3XfUywW4+qrrwZg1apVbNu2reKY4Hlf9rKXMWfOHP9nN998s/90sHPnTp555pnQdho9rhnaqvCFENuAMcABClLK89rZnqGFuMbSOdqppcTbhayR1VWeViiEIBKJ8Lvf/Y57772XO+64g8997nPcd999uK7LQw895Af2IN3d3f7/lyxZwty5c9mwYQPf/va3+cIXvuD348477+Tkk0+u2496RKNR/3ds2646dxB23l//+tfcc889PPTQQySTSf/mM9XjmqUTCv8yKeXZJtgfZRiFb5gCl1xyCXfffTepVIqJiQnuuusuLr74YgB27NjBQw89BMC3vvUt1qxZw/j4OCMjI1x11VXcdNNNvsVxxRVX8LnPfc4/b9D6KOf666/nU5/6FCMjI5x55pkAvOQlL+GWW27xb0CPPvqo379vfOMbADzxxBNs2LChZe9bn/enP/0phw8fBmBkZIQ5c+aQTCbZvHkzDz/8sP870WiUfD5f97hWYiwdQziuCfiGyXPuuefypje9ifPPP58LLriAG264gXPOOQeAU089la9+9asMDAwwNDTEO97xDsbGxrj66qsZGBjgRS96EZ/97GcBZW+sW7eOgYEBTjvt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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"testInds = np.arange(10001,20000)\n",
"\n",
"shiftedData_test = np.transpose(shiftedData[:,testInds])\n",
"shiftedData_test = sm.add_constant(shiftedData_test)\n",
"\n",
"spikeCounts_truth = spikeCounts[trainCell,testInds + winSize]\n",
"spikeCounts_pred = myFit.predict(shiftedData_test)\n",
"\n",
"# plot a small snippet of our prediction to compare it to ground truth:\n",
"plotInds = np.arange(0,200)\n",
"plt.plot(plotInds*stimulus.frame, spikeCounts_truth[plotInds], label='observed in data')\n",
"plt.plot(plotInds*stimulus.frame, spikeCounts_pred[plotInds], label='GLM prediction')\n",
"plt.legend()\n",
"plt.xlabel('time (seconds)')\n",
"plt.ylabel('# spikes')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Not too bad!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Quantifying goodness of fit\n",
"How to evaluate model fit could be a whole course in itself. Comparing goodness of fit of different models is how you'll decide what factors best explain your data: in general, our goal is to maximize the value of the data likelihood, while also not including unnecessary parameters in your model. Here are a few quick ways to assess and refine your model.\n",
"\n",
"#### - Using `myFit.deviance`\n",
"You might be inclined to compute the **mean squared error**, $MSE = \\sum_{t=1}^T(y_t - \\hat{y}_t)^2 = \\sum($ `spikeCounts_truth` $-$ `spikeCounts_pred` $)^2$, to quantify how far your model's prediction is from reality. MSE is appropriate *only* if your data is Normally distributed- unless you chose a Gaussian linking function for your GLM, this is probably not the case.\n",
"\n",
"Instead, a more general form of the MSE is the model **deviance**, which measures how far your model's predictions are from a \"saturated\" model-- a model that has one parameter for every observation, and hence can fit the data perfectly. Deviance is defined as\n",
"\n",
"\\begin{equation}\n",
"\\textrm{Deviance} = 2*(\\mathcal{LL}(\\textrm{saturated model}) - \\mathcal{LL}(\\textrm{your fit model}))\n",
"\\end{equation}\n",
"\n",
"where $\\mathcal{LL}$ is the log-likelihood of the data given the model. (Athough strangely, some sources seem to use \"deviance\" to refer simply to the quantity $-2\\mathcal{LL}(\\textrm{fit model})$.)\n",
"\n",
"#### - Using `myFit.AIC` or `myFit.BIC`\n",
"AIC and BIC are the Akaike Information Criterion and the Bayesian Information Criterion. Unlike Deviance, these values take into account both goodness of fit and number of parameters used. Lower values of these criteria means you've done a better job of fitting your data- either by increasing your data likelihood, or by decreasing the number of parameters in your model. The BIC is defined as\n",
"\n",
"\\begin{equation}\n",
"\\textrm{BIC} = \\ln(n)k - 2 \\mathcal{LL}\n",
"\\end{equation}\n",
"\n",
"where $n$ is the number of observations (time frames) fit, $k$ is the number of parameters used in fitting, and $\\mathcal{LL}$ is again the log-likelihood of the data given the model. So you can get a lower BIC either by *fitting the same data with fewer parameters*, OR by *increasing your data likelihood* (ie the quality of your fit).\n",
"\n",
" - Note: the `statsmodel` toolbox instead computes $\\textrm{BIC} = \\mathcal{D} - (n-k-1)\\ln(n)$, where $\\mathcal{D}$ is the model deviance (close to, but not the same as, $-2\\mathcal{LL}$). But the *net effect* is the same: BIC will be smaller for smaller numbers of parameters ($k$) or for higher log-likelihood ($\\mathcal{LL}$). But because of the big $-n\\ln(n)$ term, `statsmodel` usually gives large negative values of BIC, whereas if you compute it yourself/in Matlab using the original formula, you'll tend to get positive values.\n",
"\n",
"#### - Using p-values of independent variables\n",
"Your fit GLM also reports a p-value for the weight assigned to each independent variable. Like in other statistical tests, low p-values tell you that the predictive power of that IV for the data is *significantly better than chance*. For example, a p-value <0.05 tells you that if you randomly generated an independent variable, its fit to the dependent variable would be better than your IV less than 5% of the time.\n",
"\n",
"One use of p-values might be to choose the value of `winSize`, or to determine whether additional model variables (like a spike-history term or between-neuron weight) make a significant contribution to improving model predictions."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Bells and whistles\n",
"\n",
"Here are a few extensions of our basic GLM, where we add in other independent variables to the model to see if they improve model performance.\n",
"\n",
"### Adding a spike-history term\n",
"Often a cell's probability of spiking at time $t$ is dependent on whether or not it spiked in the recent past: for instance, a neuron might have a refractory period, or might always fire off bursts of multiple spikes at a time. A spike history term lets us capture these dynamics in our model.\n",
"\n",
"If our original model was\n",
"\n",
"\\begin{equation}\n",
"spikeCounts[100:50100] = f( w \\cdot \\left[ \\begin{array}{c}r[:,100:50100]\\\\r[:,99:50099]\\\\r[:,98:50098]\\end{array} \\right])\n",
"\\end{equation}\n",
"\n",
"then adding in a term allowing the model to change the probability of spiking if the cell fired in the last time bin gives us:\n",
"\n",
"\\begin{equation}\n",
"spikeCounts[100:50100] = f( w \\cdot \\left[ \\begin{array}{c}r[:,100:50100]\\\\r[:,99:50099]\\\\r[:,98:50098]\\\\spikeCounts[99:50099]\\end{array} \\right])\n",
"\\end{equation}\n",
"\n",
"as with the stimulus model, we can also make spiking depend on multiple past time bins, eg\n",
"\n",
"\\begin{equation}\n",
"spikeCounts[100:50100] = f( w \\cdot \\left[ \\begin{array}{c}r[:,100:50100]\\\\r[:,99:50099]\\\\r[:,98:50098]\\\\spikeCounts[99:50099]\\\\spikeCounts[98:50098]\\\\spikeCounts[97:50097]\\end{array} \\right])\n",
"\\end{equation}\n",
"\n",
"etc. Code-wise, we can implement this as follows."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"spikeHistWin = 40\n",
"shiftedSpikes = spikeCounts[trainCell,offset-1:].T\n",
"for w in np.arange(1,spikeHistWin):\n",
" shiftedSpikes = np.vstack((shiftedSpikes,spikeCounts[trainCell,(offset-1-w):-w].T))\n",
"\n",
"trainInds = np.arange(100,7000)\n",
"shiftedData2 = np.transpose(np.vstack((shiftedData[:,trainInds],shiftedSpikes[:,trainInds]))) #now with spike history term!\n",
"shiftedData2 = sm.add_constant(shiftedData2)\n",
"spikeCounts2 = spikeCounts[trainCell,trainInds + offset]\n",
"\n",
"GLM_model = sm.GLM(spikeCounts2, shiftedData2, family=sm.families.Poisson()) # initializes a GLM from Poisson model family\n",
"myFit_hist = GLM_model.fit()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can now unpack both the stimulus filter and the spike-history filter from our fit weights:"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"RF = np.reshape(myFit_hist.params[1:(winSize*len(spaceRange)+1)],[winSize,len(spaceRange)]).T\n",
"histFilt = myFit_hist.params[1+winSize*len(spaceRange):]\n",
"\n",
"fig,ax = plt.subplots(1,2);\n",
"ax[0].imshow(RF,extent=[0, spikeHistWin*stimulus.frame,0,1]);\n",
"ax[0].set_xlabel('stimulus history (seconds)');\n",
"ax[1].plot(np.arange(0,spikeHistWin)*stimulus.frame, histFilt);\n",
"ax[1].set_xlabel('time since spike (seconds)');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Our fit spike-history filter (right) shows that there's a slight refractory period following a spike. It currently looks a bit noisy, but this will improve if you use more data for your fit.\n",
"\n",
"Finally, let's compare spiking predictions with and without the spike-history term:"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAEKCAYAAAARnO4WAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzsnXmcXFWZ97/n3ltrL+ms7CFhUJSlE7IQMJDBhcAg8uKC4oboICqDwzvvqC9uCBl1GJ1xGEEFFFxe2WTVAXUQECEQwYQdEraQzYRsnV5qu+t5/7hLVXVXd1e661Z3us/388knXVW37jlVde/vPvd3nvMcIaVEoVAoFBMfbaw7oFAoFIrmoARfoVAoJglK8BUKhWKSoARfoVAoJglK8BUKhWKSoARfoVAoJglK8BUKhWKSoARfoVAoJglK8BUKhWKSYIx1ByqZMWOGnDNnzlh3Q6FQKPYZ1qxZs0tKObOebceV4M+ZM4fVq1ePdTcUCoVin0EIsbHebZWlo1AoFJMEJfgKhUIxSVCCr1AoFJOEceXhKyYvtm2zZcsWSqXSWHdFoRiXpNNpDj74YBKJxIj3oQRfMS7YsmULbW1tzJkzByHEWHdHoRhXSCnZvXs3W7ZsYe7cuSPej7J0FOOCUqnE9OnTldgrFDUQQjB9+vRR3wErwVeMG5TYKxSD04jzQwm+oiaWa3H3q3ejlsBUKCYOSvAVNXls62N8/dGv8/Kel8e6K2PKhg0bOProo8e6GwM4+eSTa05SPP/883nxxRdHvN85c+awa9euIbf59re/PeL9K8YWJfiKmliuBUDRKY5xTyYejuPEtu+f/OQnHHnkkbHtH5Tg78sowVfUxJMeALZnj3FPmsf3vvc9jj76aI4++miuvPLK6HnHcfjEJz5BZ2cnH/jABygUCgBccsklHHnkkXR2dvKFL3wBgJ07d/L+97+fxYsXs3jxYh599FEALrvsMi644AKWL1/Oueeey5IlS3jhhReiNk4++WTWrFlDPp/nU5/6FIsXL+bYY4/l17/+NQDFYpFzzjmHzs5OPvShD1Es1r4QV0b+ra2tfPWrX2XevHkcf/zxbN++fcD2u3fvZvny5Rx77LF85jOfqbLwzjrrLBYuXMhRRx3FddddF33mYrHI/Pnz+ehHPzrodorxiUrLVNTElS4Attt8wb/8v1/gxa29Dd3nkQe28433HDXo62vWrOGnP/0pjz/+OFJKlixZwt/+7d8ydepUXnrpJa6//nqWLl3Kpz71KX74wx/yqU99irvuuot169YhhKC7uxuAiy++mH/6p3/ixBNPZNOmTZx66qmsXbs2amPlypVkMhn+8z//k1/96ldcfvnlbNu2ja1bt7Jw4UK+8pWv8I53vIMbbriB7u5ujjvuON71rndx7bXXks1mefbZZ3n22WdZsGDBsJ85n89z/PHH861vfYsvfelL/PjHP+ZrX/ta1TaXX345J554Ipdeein33ntvlWDfcMMNTJs2jWKxyOLFi3n/+9/PFVdcwdVXX83TTz895HbTp0/fq99H0RxUhK+oSST4kyTCX7lyJe9973tpaWmhtbWV973vfTzyyCMAHHLIISxduhSAj33sY6xcuZL29nbS6TTnn38+d955J9lsFoD777+fiy66iPnz53PmmWfS29tLX18fAGeeeSaZTAaAD37wg9x2220A/OpXv+Lss88G4L777uOKK65g/vz5nHzyyZRKJTZt2sTDDz/Mxz72MQA6Ozvp7Owc9jMlk0nOOOMMABYuXMiGDRsGbFO533e/+91MnTo1eu373/9+dHewefNmXnnllZrt1LudYuxREb6iJq43doI/VCQeF0NlI/VPhxNCYBgGTzzxBA888AC33HILV199NQ8++CCe57Fq1apI2CtpaWmJ/j7ooIOYPn06zz77LLfeeivXXntt1I877riDI444Yth+DEcikYjeo+v6oGMHtfb70EMPcf/997Nq1Sqy2Wx08RnpdorxQawRvhCiQwhxuxBinRBirRDihDjbUzSO0MMPB28nOsuWLePuu++mUCiQz+e56667OOmkkwDYtGkTq1atAuDmm2/mxBNPJJfL0dPTw+mnn86VV14ZWRzLly/n6quvjvZbaX3055xzzuE73/kOPT09HHPMMQCceuqpXHXVVdEF6Kmnnor6d+ONNwLw/PPP8+yzzzbsc4f7/d3vfseePXsA6OnpYerUqWSzWdatW8ef//zn6D2JRALbtofdTjH+iNvS+S/g91LKtwDzgLUxt6doEJPN0lmwYAHnnXcexx13HEuWLOH888/n2GOPBeCtb30rP//5z+ns7KSrq4vPfe5z9PX1ccYZZ9DZ2cnf/u3f8p//+Z+Ab2+sXr2azs5Ojjzy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Ppp58+axbNkyLMvi0ksv5dZbb2X+/PnceuutdHV1cdZZZ9HZ2cnxxx/Ps88+C8Bll13GBRdcwPLlyzn33HM56aSTquonLV26NNq2UajiaYqauHY5EnQ8h4SeaFrb//bEv7Gua11D9/mWaW/h/x73fwd9XZVHHll5ZF3XefOb38yLL77I66+/zsKFC3nkkUdYsmQJW7Zs4fDDD48+09ve9jbOPPNMzjjjjCr7yXEcnnjiCX77299y+eWXR3ZMyE033cSpp57KV7/6VVzXjS6S+XyeBQsW8B//8R+sWLGCyy+/nKuvvnrA95HL5TjnnHM499xzOffcc1m7di233norjz76KIlEggsvvJAbb7yRc889d8B7Z8yYwZNPPskPf/hD/v3f/52f/OQnVa+vWLGC//mf/+Gggw6iu7ubZDLJihUrWL16ddSXz3/+8xx77LHcfffdPPjgg5x77rmRsK9Zs4aVK1eSyWT4+c9/zs9+9jOuvPJKXn75ZUzTpLOzs+ZvPFJUhK+oiVcq12mZLLZOJao8cv3lkU866SQefvhhHn74Yb785S+zcuVK/vKXv9T13QHRHdFg+1+8eDE//elPueyyy3juuedoa2sDQNO06Dvr/11W8r/+1//ik5/8ZCToDzzwAGvWrGHx4sXMnz+fBx54gPXr14+ob0uXLuW8887jxz/+8aB3CStXrox+q3e84x3s3r07qoN05plnkslkADj77LO55557sG2bG264gfPOO6/m/kaDivAVNXGDQVvwB26ziWzT2h4qEo8LVR65NvWURz7ppJO45ppr2Lp1KytWrOC73/0uDz30EMuWLaur/bANXddretnLli3j4Ycf5t577+XjH/84X/ziF2tG44N95qVLl/K73/2Oj3zkIwghkFLyiU98gn/9138ddd+uueYaHn/8ce69917mz59f8zer9f2GfQ1/c4BsNsspp5zCr3/9a371q181fDAbVISvGITQw4fJEeGr8sgjL4+8ZMkSHnvsMTRNI51OM3/+fK699tqa+xisD0OxceNGZs2axac//Wn+/u//nieffBLwL4yhV3/TTTfV/C7Bt12mT5/OhRdeCPh22e23386OHTsA//vZuHHjXvUp5LXXXmPJkiWsWLGCGTNmsHnz5gGfcdmyZdFv9dBDDzFjxgza29tr7u/888/nH//xH1m8ePGwd2YjIVbB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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"testInds = np.arange(10001,20000)\n",
"\n",
"# test data for the original GLM\n",
"shiftedData_test = np.transpose(shiftedData[:,testInds])\n",
"shiftedData_test = sm.add_constant(shiftedData_test)\n",
"\n",
"# test data for the GLM with spike-history term\n",
"shiftedData_test_h = np.transpose(np.vstack((shiftedData[:,testInds],shiftedSpikes[:,testInds])))\n",
"shiftedData_test_h = sm.add_constant(shiftedData_test_h)\n",
"\n",
"\n",
"spikeCounts_truth = spikeCounts[trainCell,testInds + winSize]\n",
"spikeCounts_pred = myFit.predict(shiftedData_test)\n",
"spikeCounts_pred2 = myFit_hist.predict(shiftedData_test_h)\n",
"\n",
"# plot a small snippet of our prediction to compare it to ground truth:\n",
"plotInds = np.arange(0,200)\n",
"plt.plot(plotInds*stimulus.frame, spikeCounts_truth[plotInds], label='observed in data')\n",
"plt.plot(plotInds*stimulus.frame, spikeCounts_pred[plotInds], label='GLM prediction')\n",
"plt.plot(plotInds*stimulus.frame, spikeCounts_pred2[plotInds], label='GLM prediction with spike history')\n",
"plt.legend()\n",
"plt.xlabel('time (seconds)')\n",
"plt.ylabel('# spikes')\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}