pints icon indicating copy to clipboard operation
pints copied to clipboard

Compare PINTS samplers with Stan for a range of models

Open ben18785 opened this issue 7 years ago • 12 comments

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?

ben18785 avatar Nov 23 '17 14:11 ben18785

Just some y=mx + c + sigma ?

mirams avatar Nov 23 '17 17:11 mirams

@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...

ben18785 avatar Nov 23 '17 17:11 ben18785

What's the simplest electrochemistry/electrophysiology models that exist? Can we test those?

ben18785 avatar Nov 23 '17 17:11 ben18785

Maybe the basic HH model? ("simplest electrophysiology model")

chonlei avatar Nov 23 '17 17:11 chonlei

~There's simplified versions of that! I'll post one here tomorrow~

MichaelClerx avatar Nov 23 '17 18:11 MichaelClerx

Just an open-closed one gate ion channel model would be a nice simple example.

mirams avatar Nov 23 '17 18:11 mirams

@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.)

hh-ik

MichaelClerx avatar Nov 28 '17 16:11 MichaelClerx

@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?

ben18785 avatar Nov 28 '17 19:11 ben18785

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.

MichaelClerx avatar Nov 29 '17 09:11 MichaelClerx

Is this still something we want to do?

MichaelClerx avatar Dec 18 '18 13:12 MichaelClerx

@ben18785 @martinjrobins here's an old stan ticket

MichaelClerx avatar Mar 31 '20 16:03 MichaelClerx

@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

MichaelClerx avatar Oct 31 '23 10:10 MichaelClerx