Hacker News new | ask | show | jobs
by catpower 3180 days ago
Super interesting given that the main Edward competitor, PyMC3, was built on Theano which is discontinuing as of a few days ago.

Hopefully not a trend of everything being subsumed by Tensorflow.

4 comments

“Everything being subsumed by TensorFlow” doesn’t seem to me like a particularly worrisome outcome. The status quo is “everything being a Python library,” and people generally seem to view that as positive. The PyData movement brought another level of interoperability to the ecosystem, so you can combine elements from Pandas, SciPy, sklearn, etc with good runtime performance and low cognitive load. Bringing everything into TensorFlow abstractions makes more optimizations possible (especially on heterogeneous architectures), and perhaps even more importantly, makes it easy to run end-to-end gradient descent on compositions of parts from across the ecosystem.
That may be an act of desperation to counteract everything being subsumed by TensorFow.
"Hopefully not a trend of everything being subsumed by Tensorflow."

Why?

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.

> 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

Who's the numpy competitor? Are we suffuring due to lack of one?
Who'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).

Thanks for mentioning Neanderthal! http://neanderthal.uncomplicate.org 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

Bayadera looks very cool. Do you have any examples involving complex hierarchical models, and performance vs Stan or PyMC?
Thanks, I'd somehow missed Bayadera. Something else to take a good look at!
Disclaimer: 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/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.

Don't forget that numpy was initially a MATLAB competitor, and that we are all a lot better off for it :)
Numpy 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.

PyTorch, Theano (rip), TensorFlow itself, Numba/Blaze?
Probably because there is an unfortunate trend when Google enters a product category: Everything around it dies.
https://en.wikipedia.org/wiki/List_of_Google_products

Are you really saying those are all monopolies in their categories?

It's built on top of Tensorflow, so it doesn't seem like a terrible idea.