Beslisboomregels uitsplitsen
In deze oefening ga je de if-else-regels uit de beslisboom halen en ze plotten om de belangrijkste oorzaken van churn te identificeren.
De getrainde beslisboom staat in mytree en de geschaalde features staan in een pandas DataFrame met de naam train_X. De tree-module uit de sklearn-bibliotheek en de graphviz-bibliotheek zijn al voor je geladen.
Let op: we hebben een eigen display_image()-functie gebruikt in plaats van display(graph) zodat je de output makkelijker kunt bekijken.
Deze oefening maakt deel uit van de cursus
Machine Learning voor marketing in Python
Oefeninstructies
- Exporteer het
graphviz-object uit de getrainde beslisboom. - Wijs de feature-namen toe.
- Zet de precisie op 1 en voeg de klassennamen toe.
- Roep de functie
Source()uitgraphvizaan en geef het geëxporteerdegraphviz-object door.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Export graphviz object from the trained decision tree
exported = tree.___(decision_tree=mytree,
# Assign feature names
out_file=None, ___=train_X.columns,
# Set precision to 1 and add class names
precision=1, ___=['Not churn','Churn'], filled = True)
# Call the Source function and pass the exported graphviz object
graph = graphviz.___(exported)
# Display the decision tree
display_image("/usr/local/share/datasets/decision_tree_rules.png")