Hacker News new | ask | show | jobs
by shmel 3778 days ago
Keras is a very high-level library compare to tensorfuse. Tensorfuse is primarily built to easy migration from theano to something else.
2 comments

Keras has a low-level compatibility library[1] (`from keras import backend as K`) that people have reported as useful independently. The interface offered by K[2] seems quite similar to that of TensorFuse[3] As the K backend is used for Keras, it also offers proof that K can be used for sizable and complex projects, plus can take advantage of pre-existing testing for Keras.

Whilst I love the idea of CGT, it has not yet taken off. I'd be far more interested in seeing a Neon[4] backend considering it has the fastest performance across the board on existing hardware and they're planning to release their own hardware soon.

[1]: http://keras.io/backend/

[2]: https://github.com/fchollet/keras/blob/master/keras/backend/...

[3]: https://github.com/dementrock/tensorfuse/tree/master/tensorf...

[4]: https://github.com/NervanaSystems/neon

Edit: Incorrectly thought TensorFuse didn't support RNNs, thanks dementrock! Also excited that Lasagne has someone working on being backend independent!

Actually TensorFuse does support RNN by porting a subset of scan to TensorFlow. I've been using it to port Lasagne to support TensorFlow: https://github.com/dementrock/Lasagne-tf. The examples/recurrent.py there actually works.

Good suggestion on Neon!

Yeah, but Keras has a lower level abstraction layer to switch between Theano and Tensorflow back ends.