Bayesian Experimental Design for Stochastic Kinetic Models
-
Upload
colin-gillespie -
Category
Science
-
view
222 -
download
2
description
Transcript of Bayesian Experimental Design for Stochastic Kinetic Models
![Page 1: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/1.jpg)
Bayesian Experimental Design for Stochastic KineticModels
Colin Gillespie, Richard Boys, Nina Wilkinson
Newcastle University, UK
April 1, 2014
![Page 2: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/2.jpg)
Overview
Stochastic kinetic models
Simulation and inference
Optimal design problem
Future directions
![Page 3: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/3.jpg)
Stochastic kinetic models
A biochemical network is represented as a set of pseudo-biochemicalreactions: for i = 1, . . . , v
Ri : pi1X1 + pi2X2 + · · ·+ piuXuθi−→ qi1X1 + qi2X2 + · · ·+ qiuXu
Stochastic rate constant θi
Hazard/instantaneous rate: hi(Xt , θi) where Xt = (X1,t , . . . ,Xu,t) is thecurrent state of the system
Under mass-action stochastic kinetics, the hazard function is proportionalto a product of binomial coefficients, with
hi(Xt , θi) = θi
u∏j=1
(Xj,t
pij
)
![Page 4: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/4.jpg)
Stochastic kinetic models
Describe the SKM by a Markov jump process (MJP)
The effect of reaction Rk is to change the value of each species Xi byqki − pki
The time to the next reaction is
t ∼ Exp{h0(Xt ,θ)}
where h0(Xt ,θ) =∑v
i=1 hi(Xi , θi)
The reaction is of type i with probability hi(Xt , θi)/h0(Xt ,θ)
The process is easily simulated using the Direct method (Gillespiealgorithm)
![Page 5: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/5.jpg)
The direct method
1 Initialisation: initial conditions, reactions constants, and random numbergenerators
2 Propensities update: Update each of the v hazard functions, hi(Xt , θi)
3 Propensities total: Calculate the total hazard h0 =∑v
i=1 hi(Xt , θi)
4 Reaction time: τ = −ln{U(0, 1)}/h0 and t = t + τ
5 Reaction selection: A reaction is chosen proportional to its hazard6 Reaction execution: Update species7 Iteration: If the simulation time is exceeded stop, otherwise go back to
step 2
Typically a simulated experiment has many simulated reactions
![Page 6: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/6.jpg)
The direct method
1 Initialisation: initial conditions, reactions constants, and random numbergenerators
2 Propensities update: Update each of the v hazard functions, hi(Xt , θi)
3 Propensities total: Calculate the total hazard h0 =∑v
i=1 hi(Xt , θi)
4 Reaction time: τ = −ln{U(0, 1)}/h0 and t = t + τ
5 Reaction selection: A reaction is chosen proportional to its hazard6 Reaction execution: Update species7 Iteration: If the simulation time is exceeded stop, otherwise go back to
step 2
Typically a simulated experiment has many simulated reactions
![Page 7: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/7.jpg)
The direct method
1 Initialisation: initial conditions, reactions constants, and random numbergenerators
2 Propensities update: Update each of the v hazard functions, hi(Xt , θi)
3 Propensities total: Calculate the total hazard h0 =∑v
i=1 hi(Xt , θi)
4 Reaction time: τ = −ln{U(0, 1)}/h0 and t = t + τ
5 Reaction selection: A reaction is chosen proportional to its hazard6 Reaction execution: Update species7 Iteration: If the simulation time is exceeded stop, otherwise go back to
step 2
Typically a simulated experiment has many simulated reactions
![Page 8: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/8.jpg)
The direct method
1 Initialisation: initial conditions, reactions constants, and random numbergenerators
2 Propensities update: Update each of the v hazard functions, hi(Xt , θi)
3 Propensities total: Calculate the total hazard h0 =∑v
i=1 hi(Xt , θi)
4 Reaction time: τ = −ln{U(0, 1)}/h0 and t = t + τ
5 Reaction selection: A reaction is chosen proportional to its hazard6 Reaction execution: Update species7 Iteration: If the simulation time is exceeded stop, otherwise go back to
step 2
Typically a simulated experiment has many simulated reactions
![Page 9: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/9.jpg)
Parameter estimation: the inverse problem
Given observations on the chemical species, can we infer the rateconstants, θ?
Typically we only partially observe species, at discrete times
0 5 10 15 20 25 30
0
100
200
300
400
Time
Pop
ulat
ion
![Page 10: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/10.jpg)
Parameter estimation: the inverse problem
Given observations on the chemical species, can we infer the rateconstants, θ?
Typically we only partially observe species, at discrete times
0 5 10 15 20 25 30
0
100
200
300
400
Time
Pop
ulat
ion
●●
●●
●●
●●
●
●
●● ● ● ● ● ● ●
●
●
●
●
●●
● ●
●
●
●●
●●
●● ●
●
●
●
●
●
●
●
●●
●
●
●
●
●
● ● ● ● ●
●
●
●
●
●
●
●
●
●
●
●● ●● ● ● ● ●
●●
● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ●
![Page 11: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/11.jpg)
Parameter estimation: the inverse problem
Given observations on the chemical species, can we infer the rateconstants, θ?
Typically we only partially observe species, at discrete times
0 5 10 15 20 25 30
0
100
200
300
400
Time
Pop
ulat
ion
●●
●●
●●
●●
●
●
●● ● ● ● ● ● ●
●
●
●
●
●●
● ●
●
●
●●
●●
![Page 12: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/12.jpg)
Parameter estimation: the inverse problem
Given observations on the chemical species, can we infer the rateconstants, θ?
Typically we only partially observe species, at discrete times
0 5 10 15 20 25 30
0
100
200
300
400
Time
Pop
ulat
ion
●●
●
● ●●
● ●
●
●●
●
●
●
●
● ●
●●
●
●
●●
●
●●
●
●
● ● ●
●
![Page 13: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/13.jpg)
Parameter inference
Forward simulation approachesApproximate Bayesian computation (ABC)
Particle MCMC
Simulator approximationsMoment closure (2MA)
Linear noise approximation (LNA)
Langevin equation (SDE)
Gaussian processes (GP)
![Page 14: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/14.jpg)
Example: The death model
A single reaction
Nθ−→ ∅
This model is sufficiently simple that we canobtain the probability of n individuals at timet analytically
Initialising with N(0) = n0 individuals at timet = 0, we have, for n = n0, n0 − 1, . . . , 0
pn(t) =
(n0
n
)e−θnt(1− e−θt)n0−n
0
10
20
30
40
50
0.0 2.5 5.0 7.5 10.0Time
Pop
ulat
ion
![Page 15: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/15.jpg)
What would an optimal design look like?
Suppose we want to observe the process at k time points. What time pointsshould we use?
●
● ●0
10
20
30
40
50
0.0 2.5 5.0 7.5 10.0Time
Pop
ulat
ion
Time = 1 Time = 3 Time = 5
0.00
0.01
0.02
0.03
0 1 2 3 0 1 2 3 0 1 2 3θ
π(θ|
d)
![Page 16: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/16.jpg)
What would an optimal design look like?
Suppose we want to observe the process at k time points. What time pointsshould we use?
●
● ●0
10
20
30
40
50
0.0 2.5 5.0 7.5 10.0Time
Pop
ulat
ion
Time = 1 Time = 3 Time = 5
0.00
0.01
0.02
0.03
0 1 2 3 0 1 2 3 0 1 2 3θ
π(θ|
d)
![Page 17: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/17.jpg)
What would an optimal design look like?
Suppose we want to observe the process at k time points. What time pointsshould we use?
●
● ●0
10
20
30
40
50
0.0 2.5 5.0 7.5 10.0Time
Pop
ulat
ion
Time = 1 Time = 3 Time = 5
0.00
0.01
0.02
0.03
0 1 2 3 0 1 2 3 0 1 2 3θ
π(θ|
d)
![Page 18: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/18.jpg)
Choosing the best design
A typical design is d = (t1, t2, . . . , tk)
Since the design parameter has to be chosen before doing theexperiment we need to maximise
u(d) = Eθ,y [u(d, y ,θ)] =∫
y
∫θ
u(d, y ,θ)π(y |d,θ)π(θ)dθdy
The best design d∗ maximises u(d)
Typically u(d) is analytically intractable
The utility we choose is
u(d, y ,θ) ≡ u(d, y) =1
det{Var(θ|d, y)}
which does not depend on θ
![Page 19: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/19.jpg)
Choosing the best design
The utility of a design d = (t1, t2, . . . , tk) is
u(d) = Eθ,y [u(d, y ,θ)] = · · · =∫θπ(θ)u(d,θ)dθ
which can be approximated by
u(d) = Eθ [u(d,θ)] '1m
m∑i=1
u(d,θi)
where the θi are a random sample of size m from the prior π(θ)
Typically, u(d,θ) is computationally expensive to evaluate
![Page 20: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/20.jpg)
Fast approximation u(d ,θ)
1 Using a Latin hyper-cube design, estimate u(d,θ) at multiple (d,θ)points
2 Fit a GP emulator to u(d,θ), with mean function
m(d,θ) = β0 +∑
i
βiθi +∑
j
βjdj
and a squared exponential covariance function
K (x i , x j |a, r) = a exp{(x i − x j)
T diag(r)−2(x i − x j)}
where x = (d,θ)3 Use the GP emulators within an MCMC scheme to estimate
d∗ = argmax u(d)
![Page 21: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/21.jpg)
Toy model: Pure death process
Prior: θ ∼ LN(−0.005, 0.01)
Minimax Latin hypercube design using400 training points
Since we can solve the Master equation,we can calculate the utility functionexactly
For a 1-d design, our approximation isexcellent
For multiple design points, theapproximation is very close to the exact
How many design points should we use:what value for k?
0 2 4 6 8 10
100
110
120
130
140
Time
Exp
ecte
d U
tility
#Design points
Exp
ecte
d U
tility
1 2 3 4
130
135
140
145
150
![Page 22: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/22.jpg)
Results: 2-point design d = (t1, t2), t1 < t2
Exact GP
0.0
2.5
5.0
7.5
0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5Design Point 1
Des
ign
Poi
nt 2
0 50 100u(t1, t2)
Exact GP
0
1
2
3
0 1 2 3 0 1 2 3Design Point 1
Des
ign
Poi
nt 2
![Page 23: Bayesian Experimental Design for Stochastic Kinetic Models](https://reader034.fdocuments.in/reader034/viewer/2022042700/55892386d8b42aec048b45d0/html5/thumbnails/23.jpg)
Future directions
Current approaches for estimating u(d) of SKM do not scale
We need to be able to handle larger, more complex models
Surface of the utility function is very flat. May need to implement asequential strategy to gradually zoom into a region around the optimaldesign d∗
May be useful to use approximations of the stochastic kinetic model tofocus into the region around the optimal design quickly
Source code (R and LATEX of these slides):https://github.com/csgillespie/talks/