Closed alexlafleur closed 7 years ago
Now that we have the stationary MM case running (almost) smoothly, let's look at this non-stationary case again. We should be able to copy the scripts for the stationary case, and then replace the calls to the stationary Markov model to similar calls to the nonstationary Markov model (although there will be some extra parameters that need to be set.)
One change that needs to be made is in the temporal value that is used to get the "ground truth" transition matrix that is compared to the estimated transition matrix in each case. If my calculations are correct, this value should be: Naive: t_k = (w-1)/2 + k * shift Bayes: t_k = (k+1/2) * shift -1/2 +w* math.pow(r, k+1)/2
where w = window_size and the last value used in the data has index t = w + k * shift -1
The following is currently going on in the heatmap scrip for the stationary case:
Then various parameters are modified to create the heatmaps. However, there are two parameters that are not investigated: timescaledisp, statconc. The first step is to add heatmaps for these. (A separate issue will be opened for this.)
The next step is to execute the stationary tests using non-stationary models with delta =0.
Based on the previously developed non-stationary tests, the MMFamily1 is used to create a QMMFamily1 instance. Then the eval method is called, as before. With delta=0, default values of the other parameters can be used, since they are irrelevant in this case.
We want to verify that the results are the same after making this change of classes. To do that, we need to specify the seed that is used in the .sample method on MMFamily1 (in both scripts).
I wanted to run the stationary tests using the non-stationary models, and set delta to 0. The eval function needs an additional parameter "tauquasi". What value should I assign to this variable?
Discussion continuing at #25
Performance Non-Stationary
Error Non-Stationary