Live data from Hacker News

Ask HN: How to get started with machine learning?

news.ycombinator.com

51–60 of 131 posts

Re: Ask HN: How to get started with machine learning?

#51
post #31

DON'T LEARN NEURAL NETWORKS FIRST. Instead, learn decision trees and more importantly enough statistics so you aren't dangerous. Do you know what the central limit theorem is and why it is important? Can you do 5-fold cross validation on a random forest model in your choice of tool? Fine, now you are ready to do deep learning stuff. The reason I say not to do neural networks first is because they aren't very effectiv…

I don't think it's a good strategy to discourage people from diving right in. There are many courses and books out there that are suitable even for a beginner who wants to learn about NN.

Of course it's important to get a broad horizon eventually but starting with the theory without the applications is not how most humans learn best. Learning by doing is.

Re: Ask HN: How to get started with machine learning?

#52
post #23

You should have the equivalent of an undergraduate degree in mathematical statistics (calculus, linear algebra, et al). It should take about 4 years of full time study to achieve that. Forget about the code part. It's the least difficult part.

I think that this is a horribly impractical advice, and I keep seeing it everywhere. With modern tools and frameworks you can start learning and applying what you know on practice almost immediately. Check out Keras and the book "Deep Learning with Python"[1]. They have enabled me to train my first ANN in 2 days, and get to the point of building a MNIST recognizer in a month(and I was reading it pretty slowly). Sure,…

In practicality the OP is right. You won't be on the same level as people with a PhD in a corporate or applied setting. The hardest parts are feature engineering, researching and statistical analysis (presenting research to team). It's hard to gain all those skills without years of experience researching in an academic setting.

As an undergrad, I was doing all those easy ML tutorials and took an undergrad level ML course. I thought I would be useful in actual practice, but knowing the whats/hows of neural nets/clustering/etc. is not enough. Feature engineering/math is the most difficult part. In a corporate setting, if it was a straight forward solution, you wouldn't be doing that work because the solution would be trivial and already implemented.

As an engineer with only a bachelors on a ML team full of PhDs there is a definite difference in skill. I've been reduced to a monkey (a content one) that works on the data pipeline. Learning to deal with real world ML problems would take me years of work that I am not sure I would be willing to do, especially when the pay increases per effort expended learning ML is much lower than with regular software/distributed systems/etc..

On the interest part, you're right that I would never have tried to learn ML if I had known the amount of work that is required to actually be good or if I tried learning the math first. That's the real world though. The useful ML engineers did learn the math. The efficient way to learn ML is to learn the math/statistics first.

Re: Ask HN: How to get started with machine learning?

#53
Newton's method and other numerical methods are the hello world of machine learning.

Why numerical methods?

* They might produce the right answer

* They frequently do

* They are easy to visualize or imagine

* You get used to working with a routine that is both fallible but quite simple and remarkably able to work in a wide variety of situations. This is what machine learning does, but there are more sophisticated routines.

At some point you need to make a decision to go down the road more focused on analysis & modelling vs machine learning & prediction. It's not that the two are exclusive, but they really do seek to address really big forks in the problem space of using a computer to eat up data and -- give me predictions or give me correct answers

Google needs lots of prediction to fill in holes where no data may ever exists. Analysis and modeling can really fall down when there is no data to confirm a hypothesis or regress against.

An engineer needs a really good model or the helium tank in the Falcon 9 will explode one time in twenty vs one time in a trillion. The model can predict, based on the simulation of the range of parameters that will slip through QA, how many tanks will explode. Most prediction methods are not trying to solve problems like this and provide little guidance on how to set up the model.

On the prediction side, you will learn all the neural net and SVM stuff.

On the analysis and modelling side, get ready for tons of probability and Monte Carlo stuff.

They are all fun.

Re: Ask HN: How to get started with machine learning?

#56
Get some background knowledge; I think with a topic like machine learning it's important to understand why certain algorithms work better than others on different kinds of data. I would recommend following a structured course. Andrew Ng's, or the UC berkley one are good. Tom Mitchell's Machine Learning book is a great intro too to supplement the online course of your choice.

If you're a python dev, maybe download scikit-learn and see what kinds of things you can put together after a few lectures.

Re: Ask HN: How to get started with machine learning?

#58
post #2

If you want to jump right in with "hello world" type TensorFlow (a tool for machine learning), see https://news.ycombinator.com/item?id=12465935 (how to fit a straight line using TensorFlow) If you like to study/read: the famous Coursera Andrew Ng machine learning course: https://www.coursera.org/learn/machine-learning If you just want course materials from UC Berkeley, here's their 101 course: https://news.ycombinat…

What is a good "hello world" project for machine learning? That is, what problem can I solve or question can I answer with minimal ceremony, and ideally with multiple techniques / technologies so that I can compare them? Is it this house price estimation like in your last link, or is there something better than that?

Re: Ask HN: How to get started with machine learning?

#59

Newton's method and other numerical methods are the hello world of machine learning. Why numerical methods? * They might produce the right answer * They frequently do * They are easy to visualize or imagine * You get used to working with a routine that is both fallible but quite simple and remarkably able to work in a wide variety of situations. This is what machine learning does, but there are more sophisticated rou…

> Newton's method and other numerical methods are the hello world of machine learning.

Newton's method and other similar numerical methods are the hello world of a branch of mathematics known as 'numerical analysis' and scientific computing. This is not Machine Learning.

Re: Ask HN: How to get started with machine learning?

#60
I took the summer off to learn enough ML to transition from a career in software engineering & product / leadership type roles to ML. I suggest for a first round learning practical tools and techniques so you can start applying supervised learning techniques right away while also starting to build a more solid foundation in probability & statistics for future deeper understanding of the field. I've written about my curriculum here with lot's of specific resources here:

http://karlrosaen.com/ml/

Post reply on HN