Live data from Hacker News

Ask HN: What free resources did you use to learn how to program ML/AI?

news.ycombinator.com

41–50 of 53 posts

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#42

If you were to spend a year or so going through many of the resources presented here, and probably knew your stuff pretty well (or at least as well as you could after a year), would anyone actually give you a job?

It depends what sort of a job you have in mind. If you wanted the sort of job where you spend all day every day doing ML/DL/AI stuff then no, that's a pure research job and probably needs a PhD. But the life of an ordinary working data scientist isn't like that: you would spend 75% of your time acquiring and cleaning/pre-processing data (including all the organizational tasks of finding it and persuading people to give you it), 20% of your time trying to shepherd what you had created/discovered into a real, working production system, and maybe 5% if you are lucky on this sort of thing. You absolutely can learn everything you need to get to this level through MOOCs. The rest is down to your interview skills.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#43
post #41

Are there good Deep Learning tutorials or blog posts with code (github) in Java, NodeJS, PHP, Lua, Swift or Go ?

You could do it in those languages. But it would be uphill all the way and you'd look back in a year and realise you'd expended 10x the effort trying to hammer a square peg into a round hole than it would have taken to just learn R, Python or MATLAB upfront.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#44
? I've always thought that ML/AI for me was about learning the languages that could express my idea of how it could work. In order to do that myself, I started reading about algorithm types.

http://machinelearningmastery.com/a-tour-of-machine-learning...

There was one particular study piece that I remember reading that I believe was written in the late 70's early 80's, but I can't remember its name. It was a HTML unformatted uni course-work document that the guy who wrote it said he'd just keep changing it as required. Really wish I could remember his name.

I have a slightly different bent on what is discussed here, because my particular implementation reflects what I think is important. There are an infinite number of variations. It depends on what you think you think it might be good for.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#45

Firstly, while I think it's beneficial to learn multiple languages (python, R, matlab, julia), I'd suggest picking one to avoid overwhelming yourself and freaking out. I'd suggest python because there are great tools and lots of learning resources out there, plus most of the cutting edge neural networks action is in python. Then for overall curriculum, I'd suggest: 1. start with basic machine learning (not neural net…

For those who like videos, I would highly recommend utilizing Andrew Ng's Coursera ML videos for step one. I found his lectures to be good high level overviews of those topics. The course in general lacks rigor, but I thought it was a very good first step.

I strongly disagree with this recommendation.

Andrew Ng's Coursera course is probably good for some backgrounds. But if your background is as someone who has mostly been programming for the last few years, I feel that Andrew Ng's course has two big drawbacks:

1. It's not very hands-on or practical. You won't actually get the feeling of building anything for a while.

2. It's very math oriented. If the last time you took a math class for your CS degree was a few years ago, you run the risk of not really remembering the background material well.

I'd personally recommend doing two things in parallel, if your background is in programming with less math training:

1. Look for a very hands-on/practical course to try out some examples.

2. At the same time, start refreshing (or learning) some maths that you might not remember, specifically, probability and statistics. Then after, Linear Algebra and maybe calculus.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#46
post #43
post #41

Are there good Deep Learning tutorials or blog posts with code (github) in Java, NodeJS, PHP, Lua, Swift or Go ?

You could do it in those languages. But it would be uphill all the way and you'd look back in a year and realise you'd expended 10x the effort trying to hammer a square peg into a round hole than it would have taken to just learn R, Python or MATLAB upfront.

I can code in Julia, Python, R and Matlab. It's just the ignorance of some from the AI field. R and Matlab might be good for prototyping but not for long running stable web server applications. Julia is still too new. Python syntax has spaces part of the syntax. And Python destroyed the community by splitting it in half - 2 and 3 are still around more than a decade later and many projects will never upgrade to 3, but moved on to Go.

Lua is used in Torch. Some are in C++. Unfortunately too many entry level samples are in Python. It's like the JQuery plague was to JavaScript not too long ago, when every other question on StackOverflow was answered with a slow as hell JQuery snip instead of vanilla JavaScript. Good that people moved on. I welcome the same for Deep Learning.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#47
post #46
post #43

Earlier quoted context omitted.

You could do it in those languages. But it would be uphill all the way and you'd look back in a year and realise you'd expended 10x the effort trying to hammer a square peg into a round hole than it would have taken to just learn R, Python or MATLAB upfront.

I can code in Julia, Python, R and Matlab. It's just the ignorance of some from the AI field. R and Matlab might be good for prototyping but not for long running stable web server applications. Julia is still too new. Python syntax has spaces part of the syntax. And Python destroyed the community by splitting it in half - 2 and 3 are still around more than a decade later and many projects will never upgrade to 3, but…

> Java, NodeJS, PHP, Lua, Swift or Go ?

+

>I can code in Julia, Python, R and Matlab

Finde one course you like, and convert it to Java, NodeJS, PHP, Lua, Swift or Go. You learn the course inside out, and you will build the tutorial you are looking for.

Note that you have Tensorflow for Java, Go and C. For Java, you can also look at deeplearning4j

>R and Matlab might be good for prototyping

this is what you do in ML...

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#48
post #45

Earlier quoted context omitted.

For those who like videos, I would highly recommend utilizing Andrew Ng's Coursera ML videos for step one. I found his lectures to be good high level overviews of those topics. The course in general lacks rigor, but I thought it was a very good first step.

I strongly disagree with this recommendation. Andrew Ng's Coursera course is probably good for some backgrounds. But if your background is as someone who has mostly been programming for the last few years, I feel that Andrew Ng's course has two big drawbacks: 1. It's not very hands-on or practical. You won't actually get the feeling of building anything for a while. 2. It's very math oriented. If the last time you to…

I'm going to disagree with this about the difficulty of the math in Andrew Ng's course. Do you remember how to differentiate a function? Look up partial derivatives if you don't remember how they work, it shouldn't take longer than an hour. You're probably going to be fine.

If you never took calculus it's probably going to be hard going, but almost all modern machine learning requires basic calculus.

I would really recommend going through the first part of the course about linear regression if you haven't encountered it before, it was really eye opening for me.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#49
post #48
post #45

Earlier quoted context omitted.

I strongly disagree with this recommendation. Andrew Ng's Coursera course is probably good for some backgrounds. But if your background is as someone who has mostly been programming for the last few years, I feel that Andrew Ng's course has two big drawbacks: 1. It's not very hands-on or practical. You won't actually get the feeling of building anything for a while. 2. It's very math oriented. If the last time you to…

I'm going to disagree with this about the difficulty of the math in Andrew Ng's course. Do you remember how to differentiate a function? Look up partial derivatives if you don't remember how they work, it shouldn't take longer than an hour. You're probably going to be fine. If you never took calculus it's probably going to be hard going, but almost all modern machine learning requires basic calculus. I would really r…

Linear regression is incredibly important, but I think it's much better understood either practically (by implementing it or using it), or if you want to understand it mathematically, at the "end" of a statistics course. There's a reason that when learning probability/statistics, you usually encounter Linear Regression near the end of an introductory course, not in the beginning.

Again, this really depends on how mathematically competent you already are. I'm just basing this on how I felt coming to the course after having finished my degree about 10 years ago, therefore not really having most prob/statistics fresh in my mind.

Re: Ask HN: What free resources did you use to learn how to program ML/AI?

#50
post #49
post #48

Earlier quoted context omitted.

I'm going to disagree with this about the difficulty of the math in Andrew Ng's course. Do you remember how to differentiate a function? Look up partial derivatives if you don't remember how they work, it shouldn't take longer than an hour. You're probably going to be fine. If you never took calculus it's probably going to be hard going, but almost all modern machine learning requires basic calculus. I would really r…

Linear regression is incredibly important, but I think it's much better understood either practically (by implementing it or using it), or if you want to understand it mathematically, at the "end" of a statistics course. There's a reason that when learning probability/statistics, you usually encounter Linear Regression near the end of an introductory course, not in the beginning. Again, this really depends on how mat…

You can certainly complicate the hell out of linear regression, but Andrew Ng introduces it in the setting of optimization/stochastic gradient descent, which I think is both mind blowing and a much simpler introduction than most statistics courses.

It's the very first bit of the course, I think everyone who is interested should try learning it. If not it's fine, but I wouldn't want anyone to not even try to spend a few hours on it because someone on the internet said it would be too hard.

Post reply on HN