4 ms·
TF in its first version was stellarly misdesigned. It was infuriatingly difficult to use, particularly if you were of the "I just want to write code and have it
by tdullien 3y ago
TF in its first version was stellarly misdesigned. It was infuriatingly difficult to use, particularly if you were of the "I just want to write code and have it autodiffed + SGDed" school, I found it crazy to use Python to manually construct a computational graph...
- metadat 3y agoWhat's the meaning of SDG in this context? Edit: Hypothesis: Stochastic Gradient Descent
- ragebol 3y agoParent typed SGD, which means Stochastic Gradient Descent. An optimization method.
- dekhn 3y agoYou need something to construct a graph. Why not pick a well-known language already used in scientific computing and stats/data science? The other options are: pick a lesser known language (lua, julia) or a language not traditionally used for scientific computing (php, ruby), or a compiled language most researchers don't know (C++), or a raw config file format (which you would then use code to generate). What's really crazy is using Pure, Idiomatic Python which is then Traced to generate a graph (what Jax does). I want my model definitions to be declarative, not implict in the code.
- whymauri 3y agoPython is the least of my concerns with Tensorflow... especially TF 1.0. What a mess it was, and kinda still is.
- 1024core 3y agoThere's a reason why the TL behind TF (Rajat Monga) got booted out.
- piecerough 3y agoWhat's this based on?
- 1024core 3y agoCheck Rajat Monga's LinkedIn profile. He's no longer with Google.
- oofbey 3y agoTF1 was pretty rough to use, but beat the pants off Theano for usability, which was really the best thing going before it. Sure it was slow as dirt ("tensorslow") even though the awkward design was justified on being able to make it fast. But it was by far the best thing going for a long time. Google really killed TF with the transition to TF2. Backwards incompatible everything? This only makes sense if you live in a giant monorepo with tools that rewrite everybody's code whenever you change an interface. (e.g. inside google). On the outside it took TF's biggest asset and turned it into a liability. Every library, blog post, stackoverflow post, etc talking about TF was now wrong. So anybody trying to figure out how to get started or build something was forced into confusion. Not sure about this, but I suspect it's Chollet's fault.
- tadeegan 3y agoEhhh, no. Even inside google TF2 migration was a total disaster and is still ongoing :)
- oofbey 3y agoSure, my point is that only a googler would even consider this kind of breaking change as a sensible option. People in the real world with regular code tooling would reject the proposal before it got started. The analogy to Angular that others have made is spot on. It's not just first-mover disadvantage. Google has particular blind spots for certain pain points, like deprecating APIs. Also q.v. Google Cloud.
- alasdair_ 3y ago>Google really killed TF with the transition to TF2. Backwards incompatible everything? They did the same thing with their AngularJS -> Angular switch. The main asset (community knowledge) was lost and React ate their lunch.
- mirker 3y agoThe APIs were messed up early on, which is a reason TF2 happened. Every team started making their own random implementations of stuff. You had the TF Slim API, you had Keras, etc. The API just got fatter and fatter and then libraries would make cross dependencies to bake in the API mistakes.