How I learned machine learning over the weekend.

Ashish Rajan
4 min readApr 16, 2018

I have no prior ML knowledge but I was able to differentiate between an apple and an orange using ML over 1 weekend. I am here to show how you can do the same too.

Intro:

Machine Learning or ML as the boys in the kitchen call it has been on my radar as something to learn since the beginning of 2018. I am fascinated by the application of ML in the cybersecurity space and that’s what got me hooked into reading up on any material I find on ML.

My aim is to get to a state where I can use ML to solve cybersecurity problems. There are some folks e.g Cylance, Inc., to name one out of the many, who have done interesting work in the space and have even published a guide on using machine learning for security professionals. Shoutout to Brian Wallace (who is one of the authors of the book), super nice and really helpful guy.

I spent the last weekend diving into ML,with no prior background in data analytics or ML, apart from interesting conversations that I have had with a lot of really smart people on the topic and here is the result of my experience. 😃

Background:

I blame Siraj Raval for getting me hooked on ML! 😜 I came across his “Learn Machine Learning in 3 months” video the other day on youtube and thought to myself, I can do this. 😏 Little did I know there is an uphill climb ahead. 😅

After watching Siraj’s video I decided to google the obvious “What is Machine Learning” on youtube and google and went through a lot of it until I could write a simple ML program to differentiate between apple and oranges.

A lot of content called itself a simple explanation guide but ended up long article . And to be fair some of the problems solved do require a long yet simple explanation e.g How AlphaGo from Google uses AI to master the game Go(24mins read time)

Learning Approach:

Based on the articles I read and videos I watched, I decided to take a step back and came up with a list of how would I redo this to get from no background to my first ML program to differentiate between apple and oranges state

Disclaimer: There is heaps of content on the internet and the following is what worked for me, feel free to follow the same or maybe even make your own and comment for others to pick.

I have listed the set of video links which if followed in the order will give you a basic understanding of the concept of machine learning and by the end of it similar to me you will be able to differentiate between an apple and orange from a given dataset.

Let’s start:

Title Format — What the video talks about (length of the video)

Step 1 — What is ML?

What is Machine Learning? (5:23)

The 7 steps of Machine Learning (10:35)

The above links are from Yufeng G, who works on the Google Cloud platform. In these short videos he goes through the basics of machine learning. This was helpful for me to grasp a very high level what is ML and what’s involved when one wants to solve a problem with AI/ML including thing like different terminology you need to be aware when working with ML.

Step 2 — Hello_world.py

Hello world is a term used to describe a program to solve a very simple problem using a programming language. My programming language of choice is Python (version 3.6.4). However, you can choose any language as long as you can find libraries which can be used to perform machine learning tasks.

You only need this 1 video to do this.

Hello world recipe (6:52)

Josh Gordon from Google Developers did an amazing job in this webseries where they have gone through machine learning with practical examples to grasp the concept by working on a simple problem instead of the more intensive but seldom rewarding reviewing research papers approach. 😅

Conclusion

This is just the tip of the iceberg in machine learning. I would highly encourage you to take the next step forward and follow the series to more advanced topics in ML.

I have published my hello_world code on github.com at https://github.com/hashishrajan/ml_hello_world for anyone to jump start straight into it.

What’s next

I am thinking of starting the sequences of recommendations that I have found through various channels. Which means it’s Linear Algebra followed by Calculus for me in the weekends ahead.

Would love to hear from people, if they find this summarized version helpful or even if they were approaching secuirty with ML, would they follow similar process?

Resources:

--

--

Ashish Rajan

Security expert with a goal to make security an enabler instead of a blocker in the exciting world of cloud and machine learning. www.ashishrajan.com