try random things, see what ‘lights up’ the neuron, and...

11
1/22/18 1 How do you determine the stimuli encoded by a neuron? Get lucky/genious (lec 1 – Hubel + Wiesel, Hollywood) Have really simple sensor (lec 1 - wind directon) Try everything But … there as many 16x16 black/white images than atoms in the universe Try random things, see what ‘lights up’ the neuron, and generalize! … Reverse engineering the brain via spike triggered averages Multivariate Statistics Probability: Say: probability of x Mean: what are the chances of event x happening? Example: when you roll a d6, what is the probability of landing a 5? Conditional Probability: Say: probability of x given y Mean: given the knowledge of y having happened, how probable is x? Example: what is the probability of landing a 5 given the roll was over 3? Bayes Inversion Conditional probabilities can be ‘inverted’:

Upload: others

Post on 17-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

1

Howdoyoudetermine thestimuliencodedbyaneuron?

• Getlucky/genious (lec 1– Hubel+Wiesel,Hollywood)• Havereallysimplesensor (lec 1- winddirecton)• Tryeverything• But…thereasmany16x16black/whiteimagesthanatomsintheuniverse

• Tryrandomthings,seewhat ‘lightsup’theneuron,andgeneralize!…Reverseengineeringthebrainviaspiketriggeredaverages

MultivariateStatistics• Probability:

• Say:probabilityofx• Mean:whatarethechancesofeventxhappening?• Example:whenyouroll ad6,whatistheprobability oflandinga5?

• ConditionalProbability:• Say:probabilityofxgiveny• Mean:giventheknowledgeofyhavinghappened, howprobable isx?• Example:whatistheprobability oflandinga5giventheroll wasover3?

• BayesInversion• Conditional probabilities canbe‘inverted’:

Page 2: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

2

Intuition• Considerasimpleexample,a‘colordetector’neuron

Stimuli:

Spikes:

Intuition:Orangedetector?

Time:

Goal:

Intuition• Considerasimpleexample,a‘colordetector’neuron

Stimuli:

Spikes:

Intuition:Orangedetector?

Time:

Goal: P (stimt|spiket)P (spiket)

P (stimt)

=~

Page 3: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

3

Intuition• Considerasimpleexample,a‘colordetector’neuron

Stimuli:

Spikes:

Intuition:Orangedetector?

Time:

…lots

Goal: P (stimt|spiket)P (spiket)

P (stimt)

=~

More complicatedsituation,2DGrayscale (independent, uniform)

Spiketriggeredaverage(STA)• Assumestimulusiszero-meanandcompletelyrandom(independent)

• Ifapixel‘drives’aneuron, itwill likelybepresentinstimuli evokingspikesThiswillresultinabiasofthatpixel inallstimuli thatevokedaspike

• Ifapixelisirrelevanttoneuron’s response, itmay/maynotbeinspikingstimuliSincepixelvaluesareindependent andzeromean,averagevalueis0

• Taketheexpectedvalueofeachpixelacrossspike-triggeredensemble• Spiketriggeredensemble:thesetofallstimuli thatevokedaspike

• Notetheconceptualsimilaritytotheprobability• TheSTAthengivesusanideaaboutneural activity

SpikingStimuli:

AverageStimuli:

Page 4: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

4

Spiketriggeredaverage(STA)• Let’s doanexamplefora1-D,temporal stimulus

Spiketriggeredaverage(STA)• Let’s doanexamplefora1-D,temporal stimulus

generate_spiketrain_from_linear_filter.m

T=100 * 10^3; %total duration of spike train, in millisecondsdeltat=1; %in ms

time_list=deltat*(1:length(stim_list)); %list of times

spike_train %list of 0/1 spike/or not each timestepstim_list %list of stimulus values at each timestep…

figure;subplot(211)plot(time_list,stim_list);title('stimulus','FontSize',18)subplot(212)stem(time_list,spike_train,'.')xlabel('time (ms)','FontSize',15)title('spike raster plot','FontSize',15)

Page 5: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

5

Spiketriggeredaverage(STA)• Let’s doanexamplefora1-D,temporal stimulus

Your turn!

First run generate_spiketrain_from_linear_filter.mto make the vectors spike_train and stim_list

Then write a code that computes STA for this stimulus and spike train.

Discuss its form, and what it means intuitively for what stimuli drive the neuron to fire.

Note, you might need to increase T to get an interpretable result!

Predictingresponsestonewstimuli

Page 6: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

6

Spiketriggeredaverage(STA)• Ideaoftheoptimalfiltertopredictneuralfiring:

• Takea(brandnew)stimulusstim(x,y)• Compute“dotproduct”

• Lcangivethebest(linear)estimateofp(spike|stim(x,y))…forthisNEWstimulus:i.e.,that’sthefiringrate!(SeeCh.2forconditions)

L =P

x,y

stim(x, y)⇥ STA(x, y)

Spiketriggeredaverage(STA)• Ideaoftheoptimalfiltertopredictneuralfiring:

• Takea(brandnew)stimulusstim(x,y)• Compute“dotproduct”

• UseLas(linear)estimateofp(spike|stim(x,y))…forthisNEWstimulus:i.e.,that’sthefiringrate!

Literally,asin:p=L*deltatspike=round(rand + (p-1/2))

L =P

x,y

stim(x, y)⇥ STA(x, y)

Page 7: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

7

Spiketriggeredaverage(STA)

STA(x, t, ⌧) = average stim preceding spike by ⌧

(2.24,AbbottandDayan)

L(t) =P

x,y,⌧

stim(x, y, t� ⌧)⇥ STA(x, y, ⌧)

Extension totemporalstimuli:

p=L(t)*deltatspike(t)=round(rand + (p-1/2))

Spiketriggeredaverage(STA)• Ideaoftheoptimalfiltertopredictneuralfiring:

• Takea(brandnew)stimulusstim(x,y)• Compute“dotproduct”

• UseLas(linear)estimateofp(spike|stim(x,y))…forthisNEWstimulus:i.e.,that’sthefiringrate!

Makes INTUITIVEsense…similaritytothe“average”stimulusthatcreatedaspike.

WhencanweshowthatthismakesMATHEMATICAL sense? Lcangivethebest(linear)estimateofp(spike|stim(x,y))(See Ch.2forconditions)

L =P

x,y

stim(x, y)⇥ STA(x, y)

Page 8: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

8

Usinglinearfiltertopredictresponses

Linear-Nonlinear-PoissonModel(LNP)• Incorporatingnonlinearitiesinto• LNCascade

Stimulus STA

dot(inner)product

Spikerateatt

F (L(t)) = max(0, L(t))

= r(t)

AfterdetermineSTA,nonlinearity(F)maybe fitbasedonsamplesofLandsamplesofr

Page 9: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

9

STAsusedtoModel“ReceptiveFields”• Gaussian

• Gainalphameanmuvariancesigmasquared

• 2DGaussianProductofGaussiansineachdimension

• GaborProductofsinusoidandaGaussian

Rod/Ganglionreceptive field

Ganglion/LGNreceptive field

%make 2D arrays of X and Y positions[DX, DY] = meshgrid(staData.X, staData.Y);

%inline function definitiong = @(D,mu,sigma,alpha) alpha*exp(-(D-mu).^2./(2*sigma 2));

%make 2d RFrf = g(DX, 0, 2, 1).*g(DY, 5, 4, 1);

%display RFimagesc(staData.X, staData.Y, rf); rf = g(DX, 0, 2, 1.5).*g(DY, 0, 2, 1.5) –

g(DX, 0, 1, 2).*g(DY, 0, 1, 2);

DifferenceofGaussians:

V1simplecellreceptive field

• AbhishekDe’s V1Cells• CourtesyHorwitz Lab• Brainsarenoisy

• The‘complexity’ofcomputationsbetweenastimulusandtheneuron’s spikerateeffecttheabilityofSTAtoestimatetheRF

STA’susedtorecoverV1RFsCell1 Cell2 Cell3

Page 10: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

10

Linear-Nonlinear-PoissonModel(LNP)• WehaveaRF,howdoyoumodelspikes?• LNCascade

Stimulus RF

dot(inner)product

Lambdaoft:likelihoodofspikingatt

LimitsofSTA• Spike-triggeredaveragesseemlikemagicWhyhaven’twesolvedthebrainandvision?• LetslookatsomedatarecordedfromV4

• Wouldthesestimulidrivethecell?

BasisShapes Rotations Single-unitV4responses

0 Spk/Sec 37

• Howlongwouldittakebeforeyourandomlysampledashape?

• STAonlyguaranteed toworkinthelimitofinfinitestimuli(notpracticalforexperimentation)

Page 11: Try random things, see what ‘lights up’ the neuron, and ...faculty.washington.edu/.../AMATH342/materials/lec_2...lec_2_Spike_Triggered_Averages_2018 Author: Eric Shea-Brown Created

1/22/18

11

Decodingneuronsprobabilistically• STArequiresuncorrelatedstimuli

• GoodforRetina,LGN,V1

• “GLM”andpointprocessmethods provideimportant alliedapproaches• [Gerstner,Paninski etal,Book“NeuronalDynamics”]

• Deeperregionsofventralcortexrespondtocomplexstructureandform

• MaximallyInformativeDimensions• AnalyzingNeuralResponsestoNaturalSignals:MaximallyInformativeDimensions.TatyanaSharpee,NicoleC.Rust,andWilliamBialek,NeuralComputation200416:2,223-250

• Givenamodelofstimulitospikeoutput,maximizethedifferencebetween:

• Agnostictostimuliandcomputation,hardtofit

HaxSerre etal.,2005