This algorithm solves the optimization problems
AR(1) model:
minimize_c1,...,cT 0.5 sum_t=1^T ( y_t - c_t )^2 + lambda sum_t=2^T
1_[c_t != max(gam c_t-1, EPS)]
for the global optimum, where y_t is the observed fluorescence at the tth
timestep.
Constrained AR(1) model:
minimize_c1,...,cT 0.5 sum_t=1^T ( y_t - c_t )^2 + lambda sum_t=2^T
1_[c_t != max(gam c_t-1, EPS)]
subject to c_t >= max(gam c_t-1, EPS), t = 2, ..., T
We introduce the constant EPS > 0, to avoid
arbitrarily small calcium concentrations that would result in numerical
instabilities. In practice, this means that the estimated calcium
concentration decays according to the AR(1) model for values greater than EPS and
is equal to EPS thereafter.
When estimating the spikes, it is not necessary to explicitly compute the
calcium concentration. Therefore, if only the spike times are required, the
user can avoid this computation cost by setting the estimate_calcium
boolean to false. Because estimating the calcium requires additional computation time,
we suggest estimating the calcium only if it is needed.
Given the set of estimated spikes produced from the estimate_spike, the
calcium concentration can be estimated with the estimate_calcium function
(see examples below).
For additional information see:
1. Jewell, Hocking, Fearnhead, and Witten (2018) <arXiv:1802.07380> and
2. Jewell, Sean; Witten, Daniela. Exact spike train inference via l0 optimization.
Ann. Appl. Stat. 12 (2018), no. 4, 2457--2482. doi:10.1214/18-AOAS1162.
https://projecteuclid.org/euclid.aoas/1542078052