Sowiks commented on PR #154:
URL: https://github.com/apache/otava/pull/154#issuecomment-4640617563

   For the sake of discussion, I will assume that we are comparing the 
following methods:
   
   - Original e-divisive: permutation test + no sliding window <-- the only 
non-deterministic approach
   - Deterministic e-divisive: t-test + no sliding window
   - Hunter approach (aka split e-divisive): t-test + sliding window
   
   @henrikingo mentioned hunter vs two deterministic methods, which seems to be 
a typo. Let me know if I'm mistaken.
   
   The items, I feel worth discussing / pointing out:
   - It's unclear to me why @henrikingo and @Gerrrr are getting contradictory 
results on the same dataset: @henrikingo found that deterministic e-divisive 
performs better, while @Gerrrr fails to find any substantial difference between 
original and deterministic e-divisive methods. Given they used different 
datasets - are the result data-dependent or something else if going on?
   - Regarding the similar p-values producing different "sensitivity" level 
across tests (seen on @Gerrrr graphs as well) - it's exactly what @henrikingo 
said: "Who's to say we should compare them with constant p-values". In a sense, 
p-values in the original e-divisive are "true" p-values if the test run long 
enough (number of permutations is large), while t-test working is an 
"empirical" find, not supported by theory. This is because the conditions of 
t-test are not satisfied. So the p-values produced by t-test strictly speaking 
are p-values in name only. With that being said, based on the observation, they 
are still very useful in identifying the change points and they appear to 
maintain the relation of "t-test pseudo p-values" ~ O("true p-values"). In that 
sense, if we really want to compare the methods, I would suggest to find this 
scale factor/linear transformation between these p-values. I don't want to go 
too deep on this here, but the general idea is to use a portion of a dat
 aset, match the number of change points across these tests, and derive the 
scaling constants from there. It would be also interesting to see if the 
constants are the same across datasets or not (I expect them to vary across 
datasets, since t-test should depend on the distribution, while permutation 
test is not).
   - it's worth considering to change the format of flags, instead of using the 
method name like right now, e.g., `--deterministic-edivisive`, 
`--orig-edivisive`, we should consider two flags: one for statistical test, 
another for window sliding/skipping tweak. This would even better if we decide 
to support more statistical tests, avoiding O(n^2) method naming.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to