5 ms·
I'm sure others in this thread will have some good advice on the math front. You will want to be comfortable with statistics (as it seems you already are aware
by TDL 10y ago
I'm sure others in this thread will have some good advice on the math front. You will want to be comfortable with statistics (as it seems you already are aware), but you will also want to be comfortable with linear algebra as well. Andrew Ng's course has a quick tutorial on linear algebra, you might also want to check codingthematrix.com. Khand Academy is a decent place for stats, probability, linear algebra, & calculus. I know there has been some criticism of K.A. in the past, but I think it's a good resource to get an intro level understanding of those topics.
As an intro to ML, I am a fan of Courseras ML specialization that is done by the University of Washington (https://www.coursera.org/specializations/machine-learning https://www.coursera.org/specializations/machine-learning). It's free, except for the capstone, and the instructors do a good job of giving both theoretical & practical grounding in various aspects of ML.
I am sure others will have good suggestions as well. Good luck.
- dzhiurgis 10y agoThis Coursera specialization is almost polar opposite of Andrew Ng's one. It gives a very rudimentary explanation of a concept and then gets you to do a very basic practical exercise using their framework. The tests are simple enough that you can just replace $variable and pass it, but you'd hardly find it applicable with real world problem. I've started with Andrew Ng course and found it way too dry and too much mathematical where Dato one seem too simple. Tensor Flow course seems humorously hard as 15 minutes in you get "Please implement Softmax using Python". Ok, maybe later.
- arcanus 10y agoThe sad truth of the matter is that ML is more applied research at this point than a sensible set of programming problems. From that standpoint, graduate mathematics is more useful for a practitioner than any robust programming experience.
- argonaut 10y agoML involves math. That does not mean it's "applied research," though. The math is mostly at the undergraduate-college-level, and is mostly applied math - except for very theoretical ML/statistics which a practitioner can easily avoid. The math involved straddles an awkward boundary where most undergrad math majors find the math quite simple, but most CS majors would think it's too much math.
- visarga 10y agoThere are two major cases: academic, related to algorithm design and industry - related to deployment of already existing algorithms on various data sets. For a CS engineer who wants to be able to use the latest Inception neural net from Google in his pipeline, there is actually almost zero math need. It's like any other API. In goes the image, out comes the label. What she would need to know, as a good utilizer of ML, is just a bunch of concepts, such as training/test/validation, bias/variation, how to extract features from data and how to select a good algorithm and framework. So it's mostly data cleaning and tuning hyperparameters, the latter of which can be learned by trial and error and by talking to experts. The direct applications of math for such an engineer would be pretty slim to nonexistent.
- argonaut 10y agoThat isn't "doing machine learning," for the same reason that web developers aren't "operating systems programmers" (even though they use operating systems and need to know some OS concepts).
- p1esk 10y agoWell, if they gave you the formula for softmax, it shouldn't take more than a minute to implement it: import numpy as np def softmax(x): return np.exp(x)/np.sum(np.exp(x)) where x is an array of numbers.
- TDL 10y agoJust curious, how far did you get into the UW specialization? The first course is certainly rudimentary. Also important to note, after the intro course you don't have to use Graph Lab Create and you can use pandas, numpy, scikit. I have seen people in the forums use R as well. I thought that the regression course & classification course were very thorough, although it does feel as though some of the programming exercises are "hand holdy". Overall, I think it is a solid specialization to get into ML, it's not meant for those experienced with ML or AI.