3 ms·
Just looked at Jax. At first glance, it seems to be a GPU/TPU based NumPy? The thing is, TF has more than tensor ops. It has pre-defined NN layers, data loadin
by applecrazy 7y ago
Just looked at Jax. At first glance, it seems to be a GPU/TPU based NumPy?
The thing is, TF has more than tensor ops. It has pre-defined NN layers, data loading/serialization, distributed training, metrics, and model serving.
It seems like a bit of a step backwards, that's all.
Edit: "matrix ops" -> "tensor ops"
- jlebar 7y ago> At first glance, it seems to be a GPU/TPU based NumPy? Yes, with a compiler to make this fast. > The thing is, TF has more than tensor ops. It has pre-defined NN layers, data loading/serialization, distributed training, metrics, and model serving. Yes, it is a simpler and smaller API. For things like data loading, you can use the tool of your choice -- TF, pytorch, whatever. For pre-defined NN layers, there are libraries that build this as a very thin wrapper around JAX's low-level API, see e.g. lax, which is include in JAX.
- nmca 7y agoHave you ever used any of those features of tensorflow though? They're all, er, idiosyncratic. If you're a decent software engineer and are following the mafs well from a book, I couldn't reccomend Jax highly enough. (I work on big tf RL projects every day).
- applecrazy 7y agoThat’s true. I’m still a student and haven’t really shipped a large ML project. Most of my ETL is done using scrapers, manual Pandas transformations, and storage in flat files. But yeah, I see your point, and frankly I don’t think there’s too big of a user base around these specialized features. Not to mention that some can be, erm, difficult to use. A friend tried using the YouTube-8M dataset in TFRecords format for a project and was extremely annoyed at the complexity.