Veo que a varios de nosotros nos está generando error cuando se va a graficar el árbol en:
Convertir el archivo .dot a png para poder visualizarlo
check_call([‘dot’,’-Tpng’,r’tree1.dot’,’-o’,r’tree1.png’])
PImage(«tree1.png»)
En lugar de estas dos lineas de código coloqué la siguiente:
tree.plot_tree(decision_tree)
Y con esto ya se grafica !! Espero les sirva.
]]>Hola Rodrigo, gracias por escribir!, un saludo
]]>Muchas gracias por comentar y ayudar con tu solución!.
Un saludo
Hola! Yo lo que hice para no complicarme en la visualización con pil fue esto:
from sklearn.tree import plot_tree
y_train = df[«top»]
x_train = df.drop([«top»], axis=1)
Crear Arbol de decision con profundidad = 4
decision_tree = tree.DecisionTreeClassifier(criterion=’entropy’,
min_samples_split=20,
min_samples_leaf=5,
max_depth = 4
class_weight={1:3.5})
decision_tree.fit(x_train, y_train)
plot_tree(
decision_tree = decision_tree,
feature_names = df.drop([«top»], axis=1).columns,
filled = True,
class_names = [‘No Top ‘, ‘Top’]
)
Espero les sirva! Saludos. Y agradecer al autor por este articulo, me sirvio demasiado y estaré atento a futuras publicaciones. Me ha gustado mucho este mundo de machine learning.
]]>Hola Juan Ignacio!!
Yo tenía la misma duda. Excelente tu libro y Blog, realmente una gran ayuda. Muchas gracias !!!!
]]>Hola: Por desgracia el video ya no esta.
]]>Hola Geovanny, jajaja, tu comentario me gustó mucho!! Parte de mi propósito era que los artículos fueran entretenidos, me alegra que no hayan resultado aburridos!
Un saludo!
Hola Carolina, la verdad que estuve buscando y no encontré implementaciones en Python, habría que hacerlas manualmente. Sin embargo con las soluciones existentes binarias, pueden resolver las problemáticas comunes, haciendo “más split”, es decir, con algo más de altura en el árbol.
¿Para que lo necesitas? si quieres cuéntame y veo cómo puedo ayudarte.
Saludos!