Vamos a entender un poco sobre los árboles de decisiones y como toman decisiones, todas las bases conceptuales para entenderlos

Hola todos, volvi a escribir por aqui, ya lo extrañaba mucho. Les cuento un poquito de mi (mi vida profesional, nada de chismes) antes de empezar. Hace poco empece a implementar modelos de Machine Learning, y todo es muy bonito (LLORA EN SILENCIO) existen miles de librerías que hacen casi todo por ti, pero ustedes me conocen yo no me meto con una librería sin antes entender todo lo que ella hace detrás de un código, y así me encuentro estudiando arboles de decisiones y vengo a contarles en este post como fue mi primer paso para entenderlos.

En este post podrás entender un poco sobre los árboles de decisiones, como toman decisiones (aún no me voy a meter con matematicas y estadistica, esto va en el siguiente post) intentaré explicar esto de una forma sencilla, fácil de entender, este fue mi secreto para entender los siguientes temas, como entropia, ganancia gini, profundidad, etc. Así que te lo recomiendo un montón empezar por aqui

Datos con los que vamos a trabajar (del dataset de titanic)

Nuestro objetivo es crear un árbol de decisión que pueda predecir si una persona sobrevivirá o no

Para el ejercicio he usado solo cuatro características en el conjunto de datos de arriba Pclass, Sex, SibSp y Embarked. Para contextualizar los datos:

  • Pclass — Clase de boleto (1, 2 o 3) 
  • Sexo — Sexo de un pasajero (M o F) 
  • SibSp: número de hermanos / cónyuge (0, 1 o 2) 
  • Embarcado: donde el pasajero se subió al barco (C, S o Q)

Antes de hablar de la teoría de los árboles de decisión, primero comprendamos la anatomía de un árbol en el contexto de la ciencia de datos  

  • Un árbol tiene nodos y ramas. 
  • Las ramas conectan nodos. 
  • Existe una relación padre-hijo entre los nodos conectados con una rama. (El nodo C es hijo del nodo A) 
  • La profundidad de un nodo se define como el número de ramas desde el nodo hasta el nodo raíz (la profundidad del nodo G es 2). 
  • Un nodo que no tiene hijo se llama nodo hoja. (Los nodos E, F, G y D son nodos hoja)

Y así se ve mas o menos gráficamente

estructura de un arbol de decision

Nuestro objetivo aquí es construir tal árbol donde cada nodo del árbol representa una prueba en una característica (por ejemplo, ¿cuál es el sexo del pasajero?), Cada rama (M o F) representa el resultado de la prueba, y cada nodo de la hoja representa una etiqueta de clase (sobrevivió o no).

El siguiente diagrama muestra una prueba en una característica, Sexo, que tiene dos resultados posibles (M y F) en sus ramas. Los nodos foliares de M comprenden 3 no sobrevivientes (3 menos), mientras que los nodos foliares de F comprenden 3 sobrevivientes y 2 no sobrevivientes (3 más y 2 menos).

prueba de caracteristicas en un arbol de descion

Ahora la pregunta es, ¿cómo creamos un árbol de pruebas tan simple? En otras palabras, ¿qué pruebas deberíamos elegir, y en qué orden, para evitar que un árbol se vuelva complejo?

Para construir dicho árbol, en cada paso elegiremos con avidez una prueba que pueda separar el conjunto de datos de manera más homogénea. Elijamos una prueba en el contexto del conjunto de datos mencionado anteriormente. 

Tenemos cuatro pruebas que es el comienzo para elegir:


– Prueba de clase
– Prueba de sexo
– Prueba SibSp
– Prueba embarcada


Recordemos, eso está mejor explicado en la imagen anterior


‘+’ – sobrevivió
‘-’ – No sobrevivió

Aquí el objetivo es elegir la mejor prueba. Por mejor prueba, queremos decir que la prueba que segrega a los sobrevivientes y no sobrevivientes más claramente. Solo por el ejercicio, voy a calificar la calidad de la prueba, contando el número de puntos de datos que están separados por la prueba. Una vez que hayan sido calificados, elegiremos la prueba con el puntaje máximo. Los siguientes cálculos ayudarán a comprender el significado de homogeneidad más claramente. 

En la prueba Pclass


La segunda clase claramente tiene tres puntos de datos, TODOS los cuales no sobrevivieron. Por lo tanto, este grupo es claramente homogéneo. Entonces, se le otorgan tres puntos.
La tercera clase tiene un punto de datos y es completamente homogénea. Entonces, se le otorga un punto.
La primera clase no es homogénea (dos sobrevivientes y dos no sobrevivientes). Entonces, se le otorgan 0 puntos.

Entonces, los puntos de homogeneidad total para la prueba Pclass son 4 (3 + 1). Del mismo modo, si calcula la homogeneidad para otras pruebas: 

  • Prueba de sexo — 3 puntos 
  • Prueba SibSp — 2 puntos 
  • Prueba embarcada — 0 puntos 

Por lo tanto, el claro ganador es la prueba Pclass. Esta prueba produce la máxima homogeneidad. En el siguiente gráfico lo explico un poco mejor

Arboles de decisión,toma de decisiones

Ahora tenemos que elegir otra prueba que intente dividir los 4 puntos de datos no homogéneos (restantes) (de primera clase) en puntos de datos homogéneos (o nodos hoja).


Nuevamente, enumeramos todas las pruebas y encontramos su puntaje de homogeneidad. Los resultados de la prueba se ven así. No hemos tenido en cuenta la prueba Pclass porque esa prueba ya no podrá dividir los 4 puntos de datos restantes de manera homogénea.

Esta vez el claro ganador es Sex test (4 puntos). Por lo tanto, nuestro árbol de decisión final es:

Por lo tanto, si tenemos que interpretar el modelo, una persona ha sobrevivido si:


a. Tenían un boleto de tercera clase. O,
si. Tenían un boleto de primera clase y eran mujeres.

Y listo! Es todo lo que teniamos que entender para empezar.

El único problema con este enfoque es que no funcionará en un conjunto de datos grande. La razón es que es casi imposible encontrar una prueba que divida los puntos de datos de forma limpia y, por lo tanto, de manera homogénea.

Hay varias formas de medir la homogeneidad. 

Coeficientes de Gini Entropí a y ganancia de información

Todo esto lo veremos en el siguiente post!

Suscribete en mi canal de Youtube

Apoyame para seguir creando contenido y accede a mentorías personalizadas aquí

Gracias por leerme ❤️

2 comments on “Arboles de decisiones. Las bases para entenderlos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *