4 ms·
For those interested in learning about the field: focus on the concepts, not the frameworks. This is true especially of machine learning, which is highly concep
by argonaut 11y ago
For those interested in learning about the field: focus on the concepts, not the frameworks. This is true especially of machine learning, which is highly conceptual. I don't think these frameworks are suitable for people not familiar with the concepts. For example, I think it's a good exercise for beginners to implement a basic (no convolution) two layer neural net in plain Python using matrix operations in numpy.
Regardless, these frameworks are more similar than different (one exception is Caffe, which is very focused on computer vision and makes it really easy to do stuff in that area, but makes it really hard to do anything else). In the course of exploring the area, you will probably touch all of them at some point (when you're trying to use a researcher's code).
- mziel 11y agoThis very much. Understanding the underlying concepts is crucial. Many people use out-of-the-box tools just plainly wrong, because they didn't bother with fundamentals. I know a guy who reinvented Naive Bayes and Laplace smoothing. Kudos for him, but he wasted about 3-4 months of company's time on it. That said, I would start with Python based frameworks: - Caffe is more for production, and Theano and family for experimentation. - You can play with Theano or Tensorflow using Keras which abstracts them - Python scientific stack makes it easier to visualize the results later
- emcq 11y agoOn that note, one of the best books I've read for teaching the concepts is Learning From Data by Yaser Abu-Mostafa et al. I highly recommend it as a way to refresh or introduce the fundamentals: http://amlbook.com/ http://amlbook.com/