4 ms·
I don't have anything against Tensorflow, but I've learned over the years that it's good to have competition in numerical libraries and software so there's repl
by hulistinist 9y ago
I don't have anything against Tensorflow, but I've learned over the years that it's good to have competition in numerical libraries and software so there's replication of results. Try your analysis using one library, and corroborate it using another one. When a field is dependent on one major piece of software, it's more susceptible to bugs--a programming bug becomes a misguided line of research for a whole field.
Edward has been a promising addition to the PPL landscape. I actually preferred using it with Theano when I used it but that was a year ago, and it seems to have been developing rapidly. I have mixed feelings about this announcement, although to be honest I don't totally even really understand all the implications of it. In some ways I'm not sure how much Edward incrementally adds above and beyond TF; it has occupied a niche between something like TF and Stan or PyMC which is fine enough but I've sometimes wondered if it was sustainable in the long run. I have appreciated it being around, though, and have hoped it would continue to develop.
- wodenokoto 9y agoWho's the numpy competitor? Are we suffuring due to lack of one?
- genericpseudo 9y agoPyTorch, Theano (rip), TensorFlow itself, Numba/Blaze?
- dasmoth 9y agoWho's the numpy competitor? R? Eigen? Neanderthal? HMatrix? (Yes, none of these are exactly 1:1 equivalent with numpy, but there absolutely are options. And from my point of view, having some options which aren’t tied to Python is healthy).
- dragandj 9y agoThanks for mentioning Neanderthal! http://neanderthal.uncomplicate.org http://neanderthal.uncomplicate.org http://github.com/uncomplicate/neanderthal http://github.com/uncomplicate/neanderthal It aims to have more features, and more speed than numpy, with Clojure, on the JVM + Nvidia + AMD + Intel. Also relevant here is Bayadera, Clojure/GPU Bayesian modeling lib for the JVM: http://github.com/uncomplicate/bayadera http://github.com/uncomplicate/bayadera
- dasmoth 9y agoThanks, I'd somehow missed Bayadera. Something else to take a good look at!
- nextos 9y agoBayadera looks very cool. Do you have any examples involving complex hierarchical models, and performance vs Stan or PyMC?
- dragandj 9y agoYes. See https://github.com/uncomplicate/bayadera/tree/master/test/clojure/uncomplicate/bayadera/examples/dbda https://github.com/uncomplicate/bayadera/tree/master/test/cl... and https://www.youtube.com/watch?v=bEOOYbscyTs https://www.youtube.com/watch?v=bEOOYbscyTs https://www.youtube.com/watch?v=TGxYfi3Vi3s https://www.youtube.com/watch?v=TGxYfi3Vi3s
- nextos 9y agoThanks!
- agibsonccc 9y agoDisclaimer: I maintain this tool. On the JVM, we're trying to do something like pytorch/numpy on the JVM. We also have python bindings: https://github.com/deeplearning4j/nd4j https://github.com/deeplearning4j/nd4j https://github.com/deeplearning4j/jumpy https://github.com/deeplearning4j/jumpy We've been building this since 2014. Of note is we'll also be able to import TF, pytorch,.. in the next few months. We're also an eclipse foundation project as of recently.
- marmaduke 9y agoNumpy was the fusion of competiting numerical libraries for Python, and now it is quite stable. I think point still applies for new developing software: multiple implementations can corroborate each other or help identify bugs.
- joelthelion 9y agoDon't forget that numpy was initially a MATLAB competitor, and that we are all a lot better off for it :)
- cat199 9y ago> it's good to have competition in numerical libraries and software so there's replication of results. Try your analysis using one library, and corroborate it using another one. and then discover that they are all using netlib/lapack under the hood :b