Profile photo for Pragyaditya Das

Before I start answering this question, I would like to point out that there is NO SHORT-CUT. You will have to do the necessary work. Keeping in mind the word BEST occurring in your answer, I will try my very best to give a very detailed and conclusive answer.

Keep in mind the following points before you dive into Machine Learning(ML) with Python :

  1. Like any other programming languages, you need to learn Python too, before you get started with ML with python.
  2. Learning Python WILL take time, do not think that you can be an expert programmer in a day!
  3. There is NO Machine Learning without Linear Algebra, Statistics and Probability theory.
  4. The best way to learn to code is to do small tasks.

Now, we start the roadmap to ML,

  1. Learn basic Python:

    Go to Codeacademy and start learning, if you spend around 5 hours a day, you will be done with basic Python in around 3–4 days.

    I would also like to suggest getting the
    Learn python the Hard way (avaibale for free online here)book. This book is amazing.
  2. Learn basic data structures using Python:

    For this go to Geekforgeeks-Data structures, open each data structure and go to the Python tab. See how they implement it, learn from them.

    DO NOT JUST MINDLESSLY LOOK AT THE CODE, write the code and learn from it.

    This process should take around 5–7 days, if you work for around 5 hours a day.
  3. Learn some cool Python packages:

    Some of the popular ML packages (basic) used in Python are as follows:

    * Numpy.
    * Pandas.
    * Matplotlib.
    * Scikit.

    Learn each of them; Read from the official documentation of the packages. See the various implementations, look for the WHYs and the WHY NOTs.

    Should take about a week.
  4. Do basic Linear Algebra, Statistics and Probability with Python:

    Use the above packages and do some basic math with it.

    Follow the following links:
    *
    Linear Algebra with numpy.
    *
    Statistics and Plotting with matplotlib.
    *
    Python, Numpy and Probability.
    *
    10 minutes into Pandas.

    Please find more on your own and learn,
    send an edit request to the list, and if I find the change substantial, I will approve it.

    This step must take around 3 to 5 days.
  5. Start with Machine Learning (Now this is the scary part :p):

    We start learning ML now, for that we need the required Theoretical Background, follow the CS156 from Caltech by Professor Yaser Abu-Mostafa. The youtube link to his Machine learning lectures are here : CS156 - Machine Learning.

    A week must suffice.
  6. Start implementing Machine Learning algorithms:

    Hands down, the best place to learn this is scikit-learn.

    Read this blog to expand your horizon :
    Machine Learning with JSAT

    Follow Kdnuggets and AnalyticsVidhya.

    Do small problems from Kaggle and use Google extensively.

    A week will suffice.
  7. Start getting smarter — Read a lot.

    Get started with awesome technologies and packages like :

    * H2O.
    * PyLearn.
    * PyBrain.
    *
    PyPI packages with “Machine Learning” in their description (a whole big list)

    This is a
    Lifetime exercise :)

I could go on and on and on with this post. But, I had to stop. :)

Happy learning.

Cheers.

Please see my answer for Data science related resources: Pragyaditya Das's answer to How can I become a data scientist?

View 2 other answers to this question
About · Careers · Privacy · Terms · Contact · Languages · Your Ad Choices · Press ·
© Quora, Inc. 2025