A reasonably short post to let you know about our recently published paper in WIREs Systems Biology and Medicine on parameter fitting in cardiac ion channel and action potential models with David Christini. There is an accessible introductory news article Dom wrote about it on Advanced Science News.
It was quite a challenging thing to write, because tons of people have suggested tons of ways of doing this, and you could spend a whole PhD thesis comparing different optimisation and inference algorithms for the tasks involved.
But I think it’s much more important to learn the principles, tips and tricks and then you can apply them to use of any particular optimisation algorithm and dataset. So instead we chose to do it a bit differently, and turn it into a “what we wish we’d known when we started” primer on parameter fitting for ion channel and action potential modelling, which hopefully also refers you on to most of the work you might want to find.
Here I’ve distilled out some of the main themes I think we should think about when fitting models:
- Overfitting, training and validation, as I’ve talked about on this blog before.
- Identifiability, we have a really nice example of what can go wrong without it in an ion channel model in Figure 3 of the new paper.
- Parameter Transforms – make a surprising amount of difference to even simple optimisation problems, as seen in Figure 8 which uses a simple dose-response curve as the example. We included suggested transforms for ion channel rate parameters, as seen in Fig 3 of Michael Clerx’s “Four Ways to Fit An Ion Channel Model” paper, and there is much more on the relative performance of an optimiser with different transforms in the supplement of that paper. We’ve also included some that we found useful when fitting conductances in action potential models.
- Priors/Constraints – mainly discussed in the “sinusoidal wave” paper and “4 ways to fit“, it can be very sensible to constrain parameters with either a transform or a prior to only take physical values and this can help an optimisation algorithm. A ‘hard’ constraint might be helpful too as this prevents numerical schemes running into trouble when they hit parameters that give ridiculously fast rates or big/small numbers.
- Numerical convergence – with respect to parameter changes as discussed on the blog before.
- The benefits of fitting to whole trace data – rather than derived summary statistics, and particularly derived summary statistics that include post-processing such as time constants, as shown in Fig 11 of “4 ways to fit…” these can really make the objective surface a nightmare.
- And last but certainly not least – Synthetic data studies. I’ll go out on a limb and say it is ALWAYS a good idea to simulate some data that looks like the stuff you want to fit to, and see what happens when you try to recover parameters from that. We always learn something useful whenever we do this, whether it is about identifiability of parameters, robustness of the optimisation algorithm or suitable transforms to use.
Anyway, hope there is some useful stuff in the paper for all cardiac model makers. Comments welcome below!