Decision trees beslissingsbomen
Hoe een beslissingsboom werkt
Een decision tree is een supervised learning-algoritme dat zowel voor classificatie als regressie kan worden gebruikt. Het model bestaat uit een hiërarchische structuur van knopen. De wortelknoop bevat de volledige dataset. Bij elke interne knoop wordt een feature gekozen en een drempelwaarde bepaald die de data zo goed mogelijk splitst. Het doel is om de onzuiverheid in de deelverzamelingen te minimaliseren. Voor classificatie worden vaak de Gini-index of entropy (informatiewinst) gebruikt; voor regressie wordt de variantie of mean squared error geminimaliseerd. Het splitsen gaat door tot een stopcriterium is bereikt, zoals een maximale diepte, een minimaal aantal samples per blad, of wanneer geen verbetering meer mogelijk is. Het resulterende model is een reeks van if-then-regels, wat het zeer interpreteerbaar maakt. Beslissingsbomen kunnen zowel numerieke als categorische data verwerken en vereisen weinig data-preprocessing. Ze zijn echter gevoelig voor overfitting: een diepe boom leert de trainingsdata uit het hoofd. Daarom wordt vaak gesnoeid (pruning) of een maximale diepte ingesteld. Een enkele boom is vaak minder nauwkeurig dan ensembles zoals Random Forests of Gradient Boosting. Desondanks vormen beslissingsbomen de basis voor veel krachtigere methoden en blijven ze populair vanwege hun transparantie.
Voordelen, nadelen en toepassingen
Beslissingsbomen hebben een aantal duidelijke voordelen. Ze zijn eenvoudig te begrijpen en te visualiseren, zelfs voor niet-technische belanghebbenden. Ze kunnen omgaan met zowel continue als categorische variabelen en hebben geen last van multicollineariteit. Ze zijn robuust tegen uitbijters en missende waarden, althans in sommige implementaties. Nadelen zijn er ook. Een enkele boom is vaak instabiel: kleine veranderingen in de data kunnen een heel andere boom opleveren. Ze zijn vatbaar voor overfitting en kunnen bias hebben als de data niet representatief is. Vooral bij scheve klassenverdelingen kunnen ze de meerderheidsklasse bevoordelen. Toepassingen zijn divers: van medische besluitvorming (bijvoorbeeld het voorspellen van hartziekten op basis van symptomen) tot kredietrisicobeoordeling en klantsegmentatie. In de praktijk worden beslissingsbomen vaak gebruikt als onderdeel van ensemble-methoden. Random Forests combineren vele bomen om de variantie te verlagen, terwijl Gradient Boosting sequentieel bomen toevoegt om de fout te verkleinen. Deze ensembles behoren tot de krachtigste algoritmen in machine learning. Voor wie een model nodig heeft dat zowel nauwkeurig als interpreteerbaar is, blijft een goed afgestelde beslissingsboom een uitstekende keuze.