Hi there,
I have a couple of conceptual questions. My friend is using JidtGaussianCMI and I'm using OpenCLKraskovCMI on the same dataset. The results are quite different in the way that he is getting a sparse network back and while I'm getting all the connections, but the delays are very much off. For example, the actual lag that we modeled in the network is 1 while the discovered lags are around 8 to 15 (max lag is 15). Also, they are very noisy over trials, for example, for the same connection from node A to node B I have 10 different values (from 3 to 15) after running the same pipeline 10 times.
Currently, I'm running the same analysis on a dataset in which the connections are stronger to see if the variability is due to weak coupling among nodes but I thought maybe I can ask for some expert opinions so here are the questions:
1.
Is there any rule of thumb or convention in choosing CMI estimators? I went for the
OpenCLKraskovCMI because I thought it will be faster since it's on GPU and expected the results to be the same as
JidtGaussianCMI based on
this paper.
2. Do you have any idea why the discovered lags are this large? I realized if the actual lag is larger than 4-5 then the discovered lags start to make sense, mostly around 3-8 but still not accurate. If the actual lag is large, let's say 10 then again the discovered lags start to drift away, so I was wondering if it has something to do with the simulated network or generally, we shouldn't expect to discover the real lags that often.
3. How much variability should I expect to have? I mean, is it normal to have different results every time, or given the same dataset the results should be the same?
Thanks again, I hope the developing team is having fun fixing the opencl GPU issue :D