3 ms·
Thanks for your comments. I'll be updating the readme to better reflect it.. I've just added the midas struct, in which you can do the following: ``` m := mi
by steve0hh 6y ago
Thanks for your comments. I'll be updating the readme to better reflect it..
I've just added the midas struct, in which you can do the following:
```
m := midas.NewMidasModel(2, 769, 9460)
m.FitPredict(2,3,1) // inputs will be your src,dst and time (from your stream)
m.FitPredict(2,3,1) // same here
```
The MidasR model is next. :)
- floren 6y agoCould you go into the selection criteria for those 3 numbers? I see 2 and 769 on the original MIDAS repo as default number of hash functions and buckets, but without explanation of why they're chosen. The third argument, "m", I don't see explained anywhere.
- steve0hh 6y agoI adapted the code from the original paper from https://github.com/bhatiasiddharth/MIDAS/ https://github.com/bhatiasiddharth/MIDAS/ . And from one of the issues(https://github.com/bhatiasiddharth/MIDAS/issues/7#issuecomment-597185695 https://github.com/bhatiasiddharth/MIDAS/issues/7#issuecomme...), M can be any reasonable value because it's just used to compute the edge hash (https://github.com/steve0hh/midas/blob/master/edgehash.go#L42 https://github.com/steve0hh/midas/blob/master/edgehash.go#L4...). Hope it clarifies.
- siddhartb_ 6y agoHi, I'm the author of the MIDAS algorithm. We choose the number of hash functions and bucket according to the maximum error we can tolerate and the false positive probability theoretical guarantee we want. Please refer to the AAAI paper here: https://www.comp.nus.edu.sg/~sbhatia/assets/pdf/midas.pdf https://www.comp.nus.edu.sg/~sbhatia/assets/pdf/midas.pdf Let me know if you need more details.