pints
pints copied to clipboard
Compare PINTS samplers with Stan for a range of models
We should compare PINTS' outputs for its implemented samplers with those of Stan (or Pymc3) -- the current industry standard.
In the future of PINTS development, I think it's important that whatever samplers we implement in PINTS we do extensive testing of them. I think as a base this should include the following models,
- logistic ODE with independent normal noise and, perhaps, with AR1 noise.
- simple normal model fitting.
Any other models that people can think of to test?
Just some y=mx + c + sigma ?
@mirams Yes, some regression equation of the form,
y ~ N(alpha + beta x, sigma),
would definitely be worth including.
Do all models that we'll be considering have continuous parameters? I'm guessing so, but thought I'd check...
What's the simplest electrochemistry/electrophysiology models that exist? Can we test those?
Maybe the basic HH model? ("simplest electrophysiology model")
~There's simplified versions of that! I'll post one here tomorrow~
Just an open-closed one gate ion channel model would be a nice simple example.
@ben18785 This is based on the HH model:
I = g * n^4 * (V - E)
E = -80 [mV]
g = 50 [A/F]
dot(n) = a * (1 - n) - b * n
a = 0.01 * (-V - 65) / (exp((-V - 65) / 10) - 1)
b = 0.1 * exp((-V - 75) / 80)
You should see a current if you keep it at V=-80 for 1000ms and then jump to V=-40 for 1000ms (then back to -80, then -30, then -80, then -20, etc.)
@MichaelClerx That's great, thank you. Which of the parameters should I be trying to infer? Am guessing the 0.01 and 0.1 might be a good place to start?
Yeah those would be good! Initially you can vary anything except g
and E
. Not sure if adding g
makes it overdetermined, but think adding both g
and E
definitely should.
Is this still something we want to do?
@ben18785 @martinjrobins here's an old stan ticket
@ben18785 can we close this? It's still interesting, but it would just be a project that uses PINTS, not really an "issue" with PINTS or something that would require changes to its code or documentation