What's the best way to get started with machine learning?

Did you find this post useful? Show some love!

If you have the time and the love for online course, I highly recommend Udacity's Intro to Machine Learning. I think this is a great way to get a high-level understanding without digging too deep into the mathematics behind the algorithm.

Greetings,

Depending on your background,

Linear Algebra and Calculus is vital to understand what's happening under the hood of the algorithms.

There is plenty of resources online but it can get overwhelming without a plan of attack so my two cents are this:

You can follow this plan created by Siraj

github.com/2-CREATE/Learn_Machine_...

as well as a fast-pace crash course created by Google,

developers.google.com/machine-lear...

Happy learning!

Obviously I think my Machine learning textbook is pretty good :) However, the current version is admittedly rather hard for beginners. I am actually in the process of writing the second edition, which will ramp up more slowly, making it more accessible to beginners. (I'm also adding new content on deep learning, reinforcement learning, etc.) But it will take me a while to finish (~2 years?).
You can also learn machine learning here: hackr.io/tutorials/learn-machine-l...

In the meantime, there are many good books available. See eg this list: josephmisiti/awesome-machine-learning . One book which I think is particularly good for beginners is Introduction to Statistical Learning, by James, Witten, Hastie and Tibshirani. It has a few references to concepts from frequentist statistics, such as p-values (which you can safely ignore :), and doesn't cover topics such as deep learning or graphical models, but nevertheless it's a good place to start.

Ben Halpern DEV.TO FOUNDER

Hey there, we see you aren't signed in. (Yes you, the reader. This is a fake comment.)

Please consider creating an account on dev.to. It literally takes a few seconds and we'd appreciate the support so much. ❤️

Plus, no fake comments when you're signed in. 🙃

Classifying documents, or websites, can be an interesting way to start. Start with a list of domains that you like on a topic, and a bunch of unrelated domains. Now try to build a system that will pick out the other domains you like. This will introduce several of the concepts behind machine learning:

  • attribute extraction: picking data out of the websites for use as attributes (this can be as simple as parsing the HTML and pulling out words)
  • training: using known good data (a subset of the domains you like) to train the system
  • classification: let the system run on the new data. You have only two categories at this point so it should be easy to manually confirm the results.

I'm specifically not including any technologies or programming languages here. All languages have numerous libraries, and just following the concept words, or just tracing machine learning should pick out many. But the above gives the basic outline of what you're trying to do, to help guide the search.

(Note, this basic task doesn't involve neural networks. Don't get side-tracked, at least not yet at least.)

Once you get into it you'll start learning about the statistical models being used, and can start branching off. You can look at classifying more categories. Identifying attributes automatically. Correlating documents to each other. Pattern and behavior prediction.

Classic DEV Post from Dec 15 '17

When working from home, how do you turn off at the end of the day?

What tips do you use to mark the end of "work time?"

READ POST
Follow @peter to see more of their posts in your feed.
Ben Halpern
A Canadian living in New York, having a lot of fun cultivating this community! Creator and webmaster of dev.to.
Trending on dev.to
I'm visiting dev.to more & more every day 😍
#discuss #learning
What is today's "goto"?
#discuss #learning #tips #history
What is your personal project?
#personal #project #indiehacker #discuss
Its 2018, why are you still going to the office?
#discuss
My commit message workflow
#git #productivity #workflow
Who uses Telegram at work?
#discuss
What's a recent frustrating bug you've had with a crazy simple solution?
#debugging #discuss #php
How to deal with being laid off?
#work #job #development #discuss