Hacker News new | past | comments | ask | show | jobs | submit login
TensorFlow Simplified Interface (github.com/tflearn)
267 points by aymericdamien on April 3, 2016 | hide | past | favorite | 14 comments



OMG, it really does look easy to use, great work!

http://tflearn.org/getting_started/#high-level-api-usage

Incredible, the Shakespearean text generator is only 42 lines long!

https://github.com/tflearn/tflearn/blob/master/examples/nlp/...


I was quite surprise to see that the numpy version is only about a hundred lines.


How is tflearn different than skflow[1] or prettytensor[2], both these modules are developed by google's teams.

[1] https://github.com/tensorflow/skflow/

[2] https://github.com/google/prettytensor


It's also reasonably similar to tf.slim, which we haven't released as a standalone supported component yet, but that's included in the release of the trainable inception model -- https://github.com/tensorflow/models/tree/master/inception/i...

I think it's great that we're seeing a lot of experimentation in how to express models for machine learning. It's very clear we haven't found the best ways yet, and seeing what people choose to try to make easy to express (and harder) is good for progress.

(I'm still grouchy about the state of modularity within machine learning models. It's not easy enough to reuse / have libraries at the model level yet.)


And keras? http://keras.io


I don't think the SKFlow author(s) are at Google. Prettytensor's are, but it isn't Google supported.

I haven't used tflearn or prettytensor, but I have used skflow (and a bit of raw TensorFlow).

SKFlow is nice if you are already using scikit learn because you can drop it straight into your sklean Pipelines[1]. This is great in terms of making it usable alongside other systems.

For example, I currently have a project using an ensemble of regression methods (2 different RandomForest regressors, and 3 XGB methods, then multiple different seeds for each method). SKFlow lets me drop in a TensorFlow regressor as well.

(In actual fact I can't get TF to perform as well as a RF on my featureset, and XGB outperforms it by far. This is using a relatively simple NN though).

[1] http://scikit-learn.org/stable/modules/generated/sklearn.pip...


I agree that sklearn-compatibility is the strong point of Skflow. If you are familiar with Keras, note that you can do the same with any Keras model, via the sklearn wrapper: https://github.com/fchollet/keras/blob/master/keras/wrappers...

> I don't think the SKFlow author(s) are at Google. Prettytensor's are, but it isn't Google supported.

I believe they are. Also I do believe that PrettyTensor is an internal Google project.


I didn't know about the Keras/SKLearn wrapper - nice.

(Keras is a beautiful piece of work, so thanks for all your work on that BTW)


I think it's a maintained by google, this is one of the main contributors of skflow https://github.com/ilblackdragon.

Also the repo is under tensorflow organisation.


I had doubts reading on Yann Lecun's fb feed that machine learning could be as big as the web, but all these jQuery-like libraries for ml have me second guessing.


How it can be compared to keras?


I think the progress in neural networks is amazing. Every week the usage of tensorflow and friends seem to become a good chunk easier to use. Even people like me with close to no mathematical background can now spin up tensorflow and run a neural network. I'm loving it!


I would encourage you to try to use Tensorflow directly. Once you understand placeholders, variables, etc., it is not that much harder than most higher level wrappers.

It requires a bit more thinking ahead-of-time thinking, but also gives far more flexibility.

That said, I have found Keras to be excellent for quick experiments. Even more, because it supports both Tensorflow and Theano as backends.


What's the best way to learn about these algorithms? Do a course on deep learning & neural nets, or is there some other less time-intensive way?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: