How to get started in Machine Learning for free?

The Data Shots
6 min readOct 27, 2018

--

Are you a student or a professional who wants to get started in Machine Learning / Data Science / Artificial Intelligence?

There is a serious demand for skilled professionals in this field and the skilled people in the field are really less. Also, the majority of the people who want to embark their careers in this field do not have relevant work experience.

You might have come across this meme going around on the internet where you might be experiencing the major issue of not having relevant experience in Data Science or “No Experience” at all.

The question is how do you get experience if you need the experience to get your first job? If there is an answer, the answer is to start working on Projects. Projects are perhaps the best substitutes for work experience or as Will Stanton said,

If you don’t have any experience as a data scientist, then you absolutely have todo independent projects.

Now, you might ask a question, how do I get started with projects?

By first developing relevant skills and later picking up interesting data sets which are available in different dataset repositories. You can try Google Dataset Search as well. My focus for writing this post is not about how to work on projects, I would make another blog post to describe it.

Graphic designers don’t typically get evaluated based on bullet points on their CV or statements in a job interview: they share a portfolio with examples of their work. I think the data science field is shifting in the same direction: the easiest way to evaluate a candidate is to see a few examples of data analyses they’ve performed.

What is the benefit of having a good project experience?
The answer is, people would entrust you for their projects and that’s how you get started in freelancing as well.

For example, I had got a project from an employer and the very first question they asked me before going ahead was, “May I know what are the different machine Learning related projects have u handled?”

So, in these cases, you have to be answerable.

So how do you get started to build your skills that would be enough to build projects in Machine Learning?

The primary skills you need for machine learning are:
- Python / R / Octave / MATLAB Software tools for loading and processing the data. (currently, python is the first choice of every one)
- Knowledge in statistics/algebra/calculus.
- Knowledge of Python package/libraries — Numpy, Pandas, matplotlib, scipy etc.
- Knowledge of machine learning algorithms.

So there are two things about the courses in machine learning that are available online these days. One is, courses which teach you to understand how ML algorithms work in the background and second is, courses which teach you how to apply Machine Learning in your real life (Applied Machine Learning).

There are umpteen resources on the web which helps you develop your skills but there are only a few of them which are free and are well-structured. I am going to show some of the free courses which are well structured as well. Following these courses and help you understand the machine learning process very systematically.

  1. Machine Learning by Andrew Ng — This is a course for absolute beginners. Here, you will be able to learn math and the process of ML algorithms in detail and implement them in Octave. This is not an applied ML course, but its a detailed course about ML algorithms. If you are not sure how you can go ahead about ML you can start here. It also comes with a certificate which is paid, but you can still audit the course for free.
  2. Course by Prof. Yury Kashnitskiy — this is an open source course launched by Prof. Yury Kashnitskiy. This course expects you to have some background knowledge in some technologies and skills, please refer to the course requirements/prerequisites. This is currently live and you can also be a part of this course by joining their slack channel, please visit their website. The best thing about this course is that the course is designed to perfectly balance theory and practice; therefore, each topic is followed by an assignment with a deadline in a week. You can also take part in several Kaggle in-class competitions held during the course and work on your own projects.
  3. Machine Learning Mastery — this is another great resource if you want to learn machine learning. The speciality of this course is, the course is developed in form of blogs and web pages. For people who are more comfortable learning by reading, this would be a good resource. The website has some paid sections as well but as much as possible you can go ahead and learn the free stuff. Also, the intent of the creator of this resource is clear, lets read it in his own words,
    Hi, I’m Jason Brownlee, PhD.
    My goal is to make developers like YOU awesome at applied machine learning.
  4. Datacamp — It's a great online community and platform to learn data science. Please go through their free courses (at least) and this will give you a good larger big picture.
  5. If you are looking for a paid course, which is sometimes available during sales for as low as $10 you can take up the course Machine Learning A-Z™: Hands-On Python & R In Data Science. I would personally recommend this course if you want to enhance your knowledge of ML and build robust ML models from a beginner level. This course takes you to a big tour through a lot of algorithms making the participants more familiar with scikit-learn and few other packages. The theoretical explanation is elementary, so are the practical examples.

This way it helps you enhance your knowledge of the ML algorithms and build your portfolio. If you want to learn in details how to build your own portfolio you can refer to this article by Michael Galaryk who is a data scientist at Scripps Research Insitute.

I am going to start a series on Machine Learning which would include my explorations about different algorithms, what type of data do they handle, what are the best scenarios in which we can use them. In case if you are interested, please follow me on medium or Twitter.com

Now coming back again to the same question. How to really get started? Simply put, will I get a job after I do these courses (or any one of them)?

Answer : Put yourself in your future boss shoes: can you do a project?

Andrew Ng courses are a public service. The style is engaging, the content well motivated, and he does not hide the maths — without being hard to follow.

But it’s like watching a Chef doing one of his famous recipe on TV. Very exciting, it looks simple, we want to try it out.

Great. That gets you started.

Now you can learn what he does not talk about: the technique.

Getting the data. Cleaning the data. Transforming the data. Extracting data from a website. Struggling with API. Learning Python. Talking to the Spark guy. Being nervous about volumes, memory and performance. Learning more Python. Spending two days on a graph. Going back to stats 101 or the algo behind the libraries because we are stuck.

Get through your first project. Google your way problem by problem. Then a Kaggle competition or two. Look at past solutions, what libraries they used and why reproduce the solution. Reproduce another one.

Now you can do a project.

You are not looking only for a job, you are looking for interesting problems to solve. That will land you a job.

Would love to be in touch and if you would like to just drop by for just saying a “hello” or would like to ask anything particular I am open for conversations please refer to my website: http://ashupadhyay.in or email: contact@ashupadhyay.in

P.S.: The link for the Udemy course that I had mentioned might contain an affiliate link which could help me support the articles that I write on medium.

--

--

The Data Shots

Community of data scientists on a mission to help individuals get started with Data Science in right way by solving their most fundamental issues