Ask HN: Getting started with AI today?
I have a growing interest in AI. There are lots of videos to watch. I can do this.
But what libraries are available to learn from? I'm on OS X. OpenAI.com seems to be more in planning than implementation, currently.
Companies like Apple, Facebook, etc are using AI more and more, what are they using?
Self-driving cars (and even tractors) are using AI this must be in house developed. GeoHot developed a slef driving car, literally in his garage.
There must be libraries to help get started for those wanting to learn and not write from scratch.
10 comments
[ 2.8 ms ] story [ 27.8 ms ] threadCaffe (Deep learning framework by berkeley) / C++ mainly
Theano / Python
Tensorflow / More Python fully support, but also supports C++
NLTK Natural language processing Toolkit / Python
scikit-learn / Python
Torch / Different interfaces
CNTK / C++
Opencv / C++ Python
I haven't covered them all, but please at the bottom of this list I am maintaining there is everything you need to know to get started
https://github.com/Kiloreux/awesome-robotics#related-awesome...
I see an understanding of the differences between machine learning vs computer vision vs AI, vs deep learning, vs reinforcement learning is my next step.
Book rec: Computation Semantics with Functional Programming. It goes through the whole gamut of formal languages, lambda calculus, propositional logic, predicate logic, logical inference engines, nl semantics etc. It uses Haskell to build concrete examples for each section, and contains a concise tutorial on the language too. Very self-contained. No prerequisites required.
To learn the basics of ML, you can check out the awesome tuts+ course[2].
Also I wrote an article [3] with the collection of the best free resources, I think you'll find it useful.
[1] https://machinelearningmastery.com/deep-learning-with-python...
[2] http://code.tutsplus.com/courses/machine-learning-distilled
[3] https://medium.com/@rayalez/list-of-the-best-resources-to-le...
> For example, a common response to the question “how do I get started in deep learning” might be: > Develop a strong grounding in statistics, probability, linear algebra, multivariate statistics and calculus. > Develop a deep knowledge of modern machine learning algorithms and techniques. > Study and become one with the mathematical theory of each deep learning algorithm and a bunch of related techniques for using them. > Oh and if there is time find a library and start applying deep learning to your problem. > It could take a decade or more to follow this advice and that would be a decade delay that you cannot afford.
Those topics are deeply important if you want to be anything more than a coder monkey, and with a decent undergrad education under one's belt (STEM-related) and half a year of dedicated part-time study, they could get up to speed in many - if not all - of those topics.
But I guess whatever sells the easiest, a la "Get Rich (Smart) Quick".
To that end, start with Convex Optimization [1]. You'll develop an incredibly versatile - but not esoteric - mathematical background. You'll link the mathematics to solving real engineering problems fairly quickly. You'll tackle the basics of machine learning as well.
After this, you'll have a pretty strong background to get into more traditional machine learning and deep learning. Regarding the former, Andrew Ng's notes are pretty solid [2], and for DL, Karpathy's Stanford course is great [3].
Self-studying all this material could take up to a year (part time, assuming you do it while having a job), but I don't know of a better way to gain the skills and get into the field. This approach balances your learning of fundamentals, engineering applications, real software, numerical computing, and the more fun "new" stuff.
Hope it works out well for someone else.
[1] - http://stanford.edu/class/ee364a/ Great video lectures available too.
[2] - http://cs229.stanford.edu/materials.html Also has great video lectures on Youtube.
[3] - http://cs231n.stanford.edu/index.html Ditto on the lecture vids.