A decision tree is a kind of supervised machine learning in which, based on particular predefined parameters, data is continuously split. These splits in the data are called nodes. Decision trees begin with a single node and split to many nodes—called leaves—representing different categories that this tree is able to classify. Decision trees are used to solve regression and classification problems. It’s easy to explain a decision tree’s decision as they do this themselves. Thus, they are primarily used to solve problems that benefit from automated decision making—for example, a developer would use a decision tree to create a ranking system because they would be able to see exactly why the decision tree’s made its ranking decisions.