The main idea of decision-tree construction is to evaluate different attributes and
different partitioning conditions, and pick the attribute and partitioning condition
that results in the maximum information-gain ratio. The same procedure
works recursively on each of the sets resulting from the split, thereby recursively
constructing a decision tree. If the data can be perfectly classified, the recursion
stops when the purity of a set is 0.