From Python to Deep Learning: A Beginner’s Roadmap

Kushal Shah
4 min readMay 3, 2024

--

The term “Artificial Intelligence” was coined way back in 1956, but it was largely of academic interest till November 2022 when chatGPT was unleashed upon the world. And in almost an instant, every person on this planet was suddenly using AI in some way or the other! Frankly speaking, AI is not a well defined term and all the magic that you see in chatGPT and other such tools is actually due to what is called “Deep Learning”. So, if you wish to build something thats truly “intelligent” and not just a gimmick, you need to properly learn Deep Learning. Just learning to prompt GPT like AI tools will not take you very far. So where do you begin?

Python Programming

Everything in ML is done using the Python programming language. I don’t really know why Python has become the default standard of all ML frameworks, but Python is surely very easy to learn for a beginner as compared to other programming languages like C or Java.

So you must begin with Python! Now while the language itself is fairly easy to learn, you need to spend considerable amount of time in practice. This is because just knowing the syntax of a language is not enough. You need to be able to solve challenging problems using this language.

Its like learning math in school. Just knowing to add or subtract will not take you very far. You need to be able to solve interesting word problems using these simple arithmetic operations. Its the same with coding too!

So to begin, look at the videos in this blog post, and start solving the list of given problems one by one in the same sequence as given in the blog. If you are stuck somewhere, use this GPT based Python Tutor called PyPal to get feedback on how to fix your code. It will not give you the answer but will guide you to get your code right on your own.

Classical Machine Learning

Once you are done with all the given problems, its time to move to basic Machine Learning algorithms leading up to the famous Artificial Neural Networks.

I have curated a detailed list of videos and other references to help you in learning classical ML effective. This curated list has reference material on both Supervised Learning and Unsupervised Learning. Supervised Learning is basically about predicting output variable from given input variables. For example, predicting whether a tweet conveys a positive emotion or negative, or predicting whether a given image is of a human or an animal. In contrast, Unsupervised Learning is all about finding patterns in the given data. Once you have learnt these concepts and done some basic hands on practice, use this curated list of datasets to further enhance your skills in Exploratory Data Analysis [EDA] and ML model building.

I would also urge you to learn classical ML using carefully designed flashcards on my portal (click on Learn ML button). The advantage of using flashcards is that it makes you go slower and absorb the content more deeply. Also, after every few flashcards, you will get an MCQ to test how much you have learned. The flashcards on my portal are accompanied by codes and datasets which will give you adequate hands-on practice.

Deep Learning

Once you have properly learnt and practiced classical Machine Learning well, its time to dive into Deep Learning. Deep Learning is a significant leap as compared to classical ML algorithms! For example, in classical Supervised Learning, if I ask you to classify a tweet into positive or negative emotion, you will have to look for which keywords or features to use for which classification. But in Deep Learning, none of that manual labour is required. You can just train the algorithm using sufficiently large dataset, and it will do all the figuring out for you while you sit and relax. The bad part is that Deep Learning is mostly a blackbox and we don’t really know what these models learn from the given data.

So here is a detailed curated list of videos and references for Deep Learning. Deep Learning is used for many applications like Computer Vision, Natural Language Processing, Speech Processing, Time Series Forecasting, and many more. Once you have a good grasp of the basic concepts, you need to decide in which of these areas you wish to develop an expertise. Thats because each domain has its own nuances which you need to master to get a well paying job in the industry.

Large Language Models

My personal domain of interest is Natural Language Processing [NLP], and you can click on the given link to get directed to a detailed curated list of references to get started in this domain. NLP has undergone a sea change after the advent of Transformers and Large Language Models [LLMs], and nowadays almost all of text processing is done using one of these models. So, if you wish you dive deeper into the world of LLMs and work on some exciting projects, join my online course on LLMs.

--

--

Kushal Shah
Kushal Shah

Written by Kushal Shah

Now faculty at Sitare University. Studied at IIT Madras, and earlier faculty at IIT Delhi. Join my online LLM course : https://www.bekushal.com/llmcourse

No responses yet