Beginning AI from scratch
Beginning AI from scratch
Author: Dr. Noman Islam
Date: 31st January 2024
What is AI?
Artificial intelligence is the branch of computer science that aims to automate mental tasks with the help of machines. There are a number of domains of AI. But the domain that is gaining momentum for past few years is machine learning.
How to learn AI?
In this series of article, we will talk about how one can learn machine learning from scratch. We will talk about the fundamentals and the step-by-step guide to learn machine learning.
1. Programming
You should have some fundamentals about programming. A program is a sequence of steps/ recipe that machine executes to perform some logical task. Normally, python and R are the language of choice for a data science project.
2. Fundamentals of mathematics
You should have some fundamental knowledge of mathematical concepts such as functions, minima/maxima, vectors
3. Data science
For performing data science operations, there are certain libraries that you can use. This include numpy and pandas
4. Machine learning /deep learning
Once you mastered programming, you should move towards basic machine learning concepts. You should then learn sk-learn and tensorflow basics
5. Computer vision/ NLP
After learning fundamentals of deep learning, you can delve into computer vision or NPLP as your domain of expertise. In computer vision domain, you should learn CNN and its variants. For NLP tasks, RNN and LSTM are used
6. Generative AI
In the past few years, generative AI is gaining prominence specially after the emergence of ChatGPT. You should at this step start learning libraries for OpenAI, langchain, elastic search vector databases etc.
4. AI Resources
At ALADIN academy, me and my team has trained masses on these technologies in one year. I will share the resources with you to learn the same online. In this article, I will talk about resources to learn programming fundamentals.
In the following playlist, you will be able to learn python from very basic:
https://www.youtube.com/watch?v=GlsuvY66290&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y
Let’s discuss each of the videos.
1. Variables, data types and expressions
Variables are used to hold values in programming and they have an associated data type. This video https://www.youtube.com/watch?v=GlsuvY66290&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=1 discusses about variables in python
2. List, tuples and sets
In python, there are three abstract data types: list, tuples and sets. What is the difference between them? Let’s see in this video: https://www.youtube.com/watch?v=SYkg3XKI3fA&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=2
3. Loops, dictionaries
Loops are one of the fundamental construct of any structure programming. This video https://www.youtube.com/watch?v=hzxauTggFyw&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=3 talks about loops. Also discusses dictionaries. Also, see this video for while loops https://www.youtube.com/watch?v=gCqq31EKaq4&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=4
4. Functions
Python functions can receive positional arguments, named arguments and default arguments. Learn all of this here: https://www.youtube.com/watch?v=7Qin2lphsbM&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=5
Also see this video for details on modules https://www.youtube.com/watch?v=fnEHDLM45KM&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=6
5. Exception handling
Exceptions are difficult for a novice. Sir Nasir discusses exception handling in detail here: https://www.youtube.com/watch?v=vqp6pOCYAIw&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=8
6. I/O in python
Like every programming language, python also provides file reading and writing operations that you can learn here: https://www.youtube.com/watch?v=2YjrBwVlNJ8&list=PLkvOxJFQW9RGKROLeVjco9tUb6YYfc73Y&index=9
In the next article, we will talk about more resources. Keep on following me.