Hacker News new | ask | show | jobs
by farzatv 1493 days ago
This is one of the best courses on ML.
1 comments

What are the others? Any recommendations?
I highly recommend https://course.fast.ai/. It's much more top down: in the first lesson or two, you train a NN image classifier, rather than starting with first principles and linear algebra. I found this structure to be more motivating and effective.
Fast AI teaches you a little bit more about being a practitioner, dealing with datasets, pointing the right algorithms at the right data and checking whether you get good results.

Andrew Ng for me did a lot more to demystify how stuff actually works

I went through both, but I definitely think fastai is the better starting point.
Can you say more?
I didn't do these particular courses but I found it a lot easier to stay motivated with the top down approach. First demonstrate usefulness, then deepen fundamentals.

When I was younger and didn't work full time + have other commitments the bottoms up approach appealed to me more, I think partially because I had bigger time blocks to allocate. i.e I could spend a whole weekend just learning fundamentals of some particular thing I was interested in and reach the first levels of usefulness in that one "session".

These days smaller time blocks mean that I need to walk away with something the keep the spark going for most curiosities.

Jeremy Howard came off as anti-intellectual to me. He is always like "oh math is nothing... you do not need math... math is not needed" and stuff like that.

Other than that, fast.ai is a great resource, and Jeremy Howard is a great instructor.

You will learn very practical tools and tricks, and a lot of recent research is demystified, but don't expect to achieve deep, general insights.

Also, fast.ai is a very very limited and poor library compared to PyTorch, JAX, TF, etc.

Programming, design, and architecture decisions are outright terrible.

I got paid to write fast.ai in one job. I still have nightmares. I never did it again.

But it is a nice learning resource.

> When I was younger and didn't work full time + have other commitments

I second this - while both are great courses, I found I could only dedicate very short amounts of time recently to any kind of study, and going from the ground-up more thoroughly seemed like I was making no progress. The fast.ai top down approach worked a bit better for me for those reasons, otherwise it would have been interesting starting with the deep dive.

I did (old versions of) both of these and liked both. What I liked about the top-down approach of fast.ai is that it worked the way I approach working with other programming systems. You have a thing you want to do and APIs that promise to do that thing for you, and you plug them together. Then you decide you want to change it from the default behavior, so you tweak the parameters, then you need to learn why they're set up the way they are, and how they work, etc.

Similarly, when I learned web development with Rails over a decade ago, I didn't start by building an HTTP stack. I started by doing the build-a-blog-in-fifteen-minutes tutorial. Now I had a working project. Eventually I needed to learn all of the underlying technologies, but it's much easier and more rewarding to have something running first.

I found that starting with the big picture and a tangible result made it easier to stay engaged. At the end of the fastai course, however, I felt there were some gaps in my understanding especially at the low-level side. Andrew Ng's course helped fill in those gaps.
I took these courses from Georgia Tech via OMSCS but they are also on udacity.

https://omscs.gatech.edu/cs-7641-machine-learning

https://omscs.gatech.edu/cs-7642-reinforcement-learning (I took this before ML but its supposed to come after. There is some overlap. Probably my favorite graduate course.)

https://omscs.gatech.edu/cs-7646-machine-learning-trading (IMO not amazing)

Much more basic (took this before OMSCS):

https://www.udacity.com/course/intro-to-machine-learning--ud...

I'm sure there are many more.

I found ML4T to be really accessible and fun. Cannot say the same for ML.
What about machine learning for trading didn't you like?
Not a full course I'd say, but I've used this one to learn the math behind deep neural networks and code my own from scratch in elixir and C:

http://neuralnetworksanddeeplearning.com/

What is required math for starting Ng course?
Can't tell you about Andrew Ng's coruse as I haven't done that, but for Michael Nielsen's course it was Matrices and Partial Derivatives. I'm assuming it's quite similar.
Yes, this is really good! Andrew Ng, too.
"Learning from Data" is outstanding: https://work.caltech.edu/telecourse.html

It's a recorded version of a real Caltech undergrad course, and it's focused on understanding the math behind these algorithms, not just applying black-box ML libraries.

It's much less practical, but I feel like it teaches you more.

Depends, how much linear algebra, probability and python do you know?
What if one knows zilch, like my teenager... What might be best to start the path?
OK, since it is for a teenager I would assume just basic computer competency (how to install programs and stuff like that) but nothing else, so apologies if some of these things are pretty obvious/basic..

I would (assuming zilch knowledge and tools).

- Install Python. https://www.python.org/downloads/

- Install VSC https://code.visualstudio.com/

- Install the python extension for VSC https://marketplace.visualstudio.com/items?itemName=ms-pytho...

- learn a little bit of python. This is a good resource, but there are several more, even the official documentation is very good

http://openbookproject.net/thinkcs/python/english3e/

- After some familiarity with python one option is this free book:

http://neuralnetworksanddeeplearning.com/

- Another, good (but paid) option is this book: https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-T...

Or a third option is indeed Andrew Ng's course.

Now, for any of those 3 options a little (or a lot) of guidance and patience will be needed so hopefully you or some friend/peer can help with that. Good luck!