What exactly is "Machine Learning"?

What exactly is "Machine Learning"?

First off, let's talk about Artificial Intelligence. Artificial Intelligence or AI is a domain of tech that focuses on giving computers the ability to mimic human intelligence to perform tasks. There are different ways through which this can be achieved, and these ways are grouped into subsets, one of which is Machine Learning, and another is NLP(Natural Language Processing), Computer Vision...

Machine Learning is concerned with building systems that try to predict values or find patterns in data given to it, and these results can enable smarter decisions.

This software is called a Model, It can be embedded in software as part of an application, or in a hardware system. A model takes in input, processes and gives results. Here's a representation of a model that takes in the number of people, season and hour of the day as inputs, and returns a prediction of how much energy is consumed.

Basic terms used in Machine Learning

  • Dataset: This is the data being used to train the model.

  • Label: A label refers to the output or target variable that we want to predict or classify based on input features. The training data usually have a mapping of input features to their corresponding labels

  • feature: A feature or column is a measurable property or characteristic. In determining house price, a feature could be the number of bedrooms, number of storeys...

  • Labelled data: this refers to data that has its input features mapped to its output. During the training phase, the machine learning model learns from the labelled data by identifying patterns and relationships between the input features and the corresponding labels.

Some heading

Let's say you were to build a model, the hello world of ML - a house price prediction model. To get started, you'll need to gather data, as all AI systems cannot be built without data, you will need to train your model to find hidden patterns. This data would then be split into two, one called the training set and the other the test set. The training set, the training set is used to train the model, while the test set is used yo measure how well your model has performed.

What are the types of Machine Learning?

Well, there are three types or methods to achieve machine learning and these methods are used to achieve different results:

Supervised Machine Learning

This is a type of ML that depends on labelled data to find patterns or make predictions. Most of the ML models today use this type of learning. The two most common algorithms used for supervised learning are:-

  1. Regression: This algorithm is used to predict numerical values that are continuous, for example, predicting house prices. Regression aims to understand the relationship between the dependent and independent variables.

  2. Classification: This algorithm is what it sounds like, it's used for predictions that involve a class. Given images of a dog or cat, a classification model can classify whether an image is of a dog or a cat. Classification algorithms are normally used for problems that require discrete outputs.

other types of supervised machine learning include:-

  • Naive Bayes

  • Decision trees

  • Support Vector Machines

  • Random forest

Unsupervised Machine Learning

This type of ML as you guessed doesn't require labelled data as input. Generally, unsupervised ML does not try to predict but rather looks for patterns in given data. There are also two main types of this ML:-

  1. Clustering: This type of unsupervised machine learning create clusters from data which can then be interpreted by the agent. This ML isn't used to predict values but to find hidden patterns or trends in data examples of where this can be used are:- News classification(seeing related articles inna section) and a very common one, spam filtering which Gmail uses to identify and isolate spam emails.

  2. Anomaly Detection is used to identify unusual patterns or events in a given dataset. It works by studying what's normal or common in a dataset and then reacts to slight deviations or "anomalies". It is commonly used in Fraud detection systems.

  3. Neural Networks: Neural networks are models that emulate how humans process information. They are made up of artificial neurons called nodes or units which have weights and are organized in layers. It is used in many areas, including computer vision, natural language processing, and robotics.

other types of unsupervised machine learning include:-

  • K-Nearest Neighbours

  • K means clustering

  • Apriori algorithm

  • Autoencoder

...and many more

Reinforcement Learning

This type of ML is where an AI agent learns to make decisions and actions by interacting with its environment. The goal of this agent is to maximize reward. The agent explores the environment, observes its current state, takes action, and receives feedback in the form of a reward. This feedback helps the agent make better decisions to maximise its reward. Applications of Reinforcement Learning include:

  • Game development

  • Autonomous Vehicles

  • Chess engines

  • Natural Language Processing

  • Trading and Finance

  • Robotics

But what is Deep Learning?

Deep Learning(DL), often referred to as Deep Neural Networks is just a neural network with multiple layers. Each of these layers has a node called a neuron and each neuron receives inputs, processes them, and passes the output to other neurons, allowing information to flow through the network. It often requires a huge amount of data.

What are the applications of deep reinforcement

Deep Learning can be used in almost any machine learning-related task. Deep learning has found applications in various domains and continues to impact numerous fields. Here are some prominent applications of deep learning:

Computer Vision: Deep learning has revolutionized computer vision by enabling accurate image recognition, object detection, and image segmentation. It powers applications such as facial recognition, autonomous vehicles, surveillance systems, medical imaging analysis, and even artistic style transfer.

Natural Language Processing (NLP): Deep learning has significantly advanced NLP tasks, including language translation, sentiment analysis, text generation, chatbots, speech recognition, and language understanding. It enables machines to process and understand human language more effectively, leading to improvements in virtual assistants, language translation services, and automated customer support.

Healthcare: Deep learning is transforming healthcare by aiding in disease diagnosis, medical image analysis (e.g., X-rays, MRIs), drug discovery, personalized medicine, and predicting patient outcomes. It helps detect diseases earlier, improves treatment planning, and enhances patient care and monitoring.

Finance: Deep learning is applied in finance for fraud detection, credit scoring, algorithmic trading, and financial market analysis. It can uncover complex patterns and anomalies in financial data, improve risk assessment models, and enhance trading strategies.

Robotics: Deep learning plays a crucial role in robotics for perception, object recognition, motion planning, and control. It helps robots perceive and interact with their environment, enabling applications like autonomous navigation, industrial automation, and human-robot interaction.

Gaming: Deep learning has made significant contributions to the gaming industry. It powers game-playing agents that can learn and surpass human performance in games like chess, Go, and video games.

Data science is a field that uses mathematical and statistical methods to analyze and interpret data. Data science is considered a subset of machine learning because it uses machine learning techniques to analyze and interpret data. But, machine learning is also considered a subset of data science, because it's a specific way of analyzing data. So, you could say that they're subsets of each other. Data science is like the parent category, and machine learning is a subcategory within it.

How do you get started?

Here are some of the best resources to get started with machine Learning:

Machine Learning by Stanford and DeepLearning.AI

Machine Learning with Python - Freecodecamp

Intro to Machine Learning - Kaggle

If you have any questions, feel free to ask in the comments or through other platforms.