Gini impurity for dummies

Gini impurity is a key concept in building decision trees, a type of machine learning model used for making predictions.

By the end of this article, you’ll have a basic understanding of Gini impurity and how it helps decision trees make better predictions.

Decision Trees: A Quick Overview

Imagine you’re trying to predict whether it will rain tomorrow. You could make this decision based on various factors such as temperature, humidity, and wind speed.

A decision tree is a machine learning model that does just that – it makes predictions by asking a series of yes-or-no questions about the input data (in our case, weather factors) and then arrives at a final decision.

A decision tree is built using a process called recursive partitioning, which involves splitting the data into subsets based on the input features, and then repeating this process for each subset until a stopping criterion is met.

What is Gini Impurity?

Gini impurity is a measure of how mixed a group of data is in terms of the different possible outcomes.

In other words, it’s a measure of how often a randomly chosen element from a dataset would be incorrectly labeled if it was randomly labeled according to the distribution of labels in the dataset.

A Gini impurity score ranges from 0 to 1, where 0 represents a pure dataset (all elements belong to a single class or category) and 1 represents the highest impurity (elements are evenly distributed among all classes).

How is Gini Impurity Used in Decision Trees?

When building a decision tree, we want to ask questions that lead to the “purest” partitions possible, meaning the groups of data that are the most homogeneous in terms of the target variable (e.g., whether it will rain tomorrow or not). This is where Gini impurity comes in.

When considering a split, the decision tree algorithm calculates the Gini impurity for each possible partition of the data. The split that leads to the lowest Gini impurity is chosen. In other words, the algorithm aims to minimize the overall impurity of the resulting partitions.

Calculating Gini Impurity

To calculate Gini impurity, we use the following formula:

Gini impurity = 1 – ∑ (probability of class i)^2

Here, the sum is taken over all the possible classes in the dataset. The probability of class i is calculated as the number of elements in class i divided by the total number of elements in the dataset.

For example, let’s consider a simple weather dataset with 10 instances, where 7 instances are labeled “rain” and 3 are labeled “no rain.” The Gini impurity for this dataset would be:

Gini impurity = 1 – ((7/10)^2 + (3/10)^2) = 1 – (0.49 + 0.09) = 0.42


Gini impurity is a fundamental concept in building decision trees, as it helps to determine the best splits to create the purest partitions possible.

Understanding Gini impurity is essential for grasping how decision trees make accurate predictions, and it serves as a solid foundation for further exploration into the world of machine learning.

Leave a Comment