Kickstart your Machine Learning Journey

Rajesh Shah
4 min readJun 12, 2021

Overview

Saying Machine Learning is rapidly growing field, is an under statement. I am new to Machine Learning, the challenge for me was where to start in terms of getting some hands on experience with Machine Learning. There are ton of frameworks and tools available in machine learning disciplines, so it is easy to get lost if you are just getting started. Today I will try to share few open source frameworks and free tools, that I have found useful on this journey of learning. These tools helped me in learning ML concepts and get some hands on experience.

I will try to keep things simple, but remember ML is vast and a rapidly growing field, so this going to be a bumpy ride.

Three Step Process

Step 1: Data Set Preparation

You need a data set to start a Machine Learning project or experiment. This can be a structured dataset, like a consumer purchase history, credit transactions, or social media activity. It can also be a unstructured dataset, like text, images, video or audio. Quality of data is important for good Machine Learning experiment results. Some time this step can be the longest pole for enterprises embarking on Machine Learning.

Step 2: ML Model Training, Testing and Tuning

The 3 T’s are the most complex topic under ML that include lot of sub disciplines. This step in some scenarios may need a data scientist level skills. In this, we create a ML model which can be used to make predictions or take decisions. There are plenty of frameworks and algorithms available for training models. We are going to avoid getting into a discussion of types trainings and algorithms for this article. Let’s assume there multiple ways to train a model. After training, we have to test and tune the model to make sure it is working as expected on our new data.

Step 3: Deploy ML Model

Once we have final model created, we can use it for predictions on new data. In terms of model deployment, one option is to deploy as API, which will allow easy access.

Tool — Jupyter Notebook

Jupyter Notebooks have been tool of choice for ML and data science applications. Notebooks allow to mix code snippets with static HTML content which is saved as json file with extension “*.ipynb”. You easily edit and run the Notebook in the browser. Notebook files can be saved in a GitHub repo and easily shared with other team members. Notebooks supports multiple languages like Python, Julia, R, and a variety of more. JupyterLab is the platform to run Jupyter Notebook.

You can try a Jupyter Notebook free in the browser from here https://jupyter.org/try

Tool — Google Colab

Google Colab is a hosted service to run Jupyter Notebooks. Colab allows anybody to write and execute arbitrary code through the browser, and is especially well suited to machine learning, data analysis and education. Colab notebooks are stored in Google Drive, or can be loaded from GitHub. Colab notebooks can be shared just as you would with Google Docs or Sheets.

You can try Google Colab free in the browser from here https://colab.research.google.com/notebooks/intro.ipynb

Framework — PyCaret

PyCaret is open source Python framework which makes it easy to prepare data, train and tune models and deploy and serve ML models. Only with few lines of code you will be able to compare and choose the right model. Framework also includes some example prepared datasets to get started.

PyCaret team has created tutorials for different level as Jupyter Notebooks. Here is the link to the tutorial page.

I would highly recommend trying some beginner level tutorial. You can use online “JupyterLab” or “Google Colab” environment to open and run the pycaret tutorial.

Dataset — Kaggle

Kaggle is Google company which has thousands of prepared quality datasets from different domains available for free download.

If you looking for a prepared dataset for your Machine Learning experiment try searching here: https://www.kaggle.com/datasets

Final Thoughts

Believe me, we have not even touched the surface of Machine Learning topic. There is so much to learn and explore in this field. ML provides step toward building Artificial Intelligence(AI) where machines can take autonomous decisions. In next few years, it is certain that ML/AI is going to eat the world. So it’s right time to pick up some experience in this field.

Happy Learning!

Disclaimer: This is a personal blog. The opinions expressed here represent my own and not those of my current or any previous employers.

--

--

Rajesh Shah

Software Engineer with 15+ years experience (Interested in Cloud Computing, Kubernetes, Docker, Serverless Computing, BlockChain Technologies)