Arboles de Decision

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 1

Decision Trees

Los arboles de decisión son representaciones gráficas de posibles soluciones a una decisión basadas en ciertas condiciones, es uno de los algoritmos de aprendizaje supervisado más
utilizados en machine learning y pueden realizar tareas de clasificación o regresión (acrónimo del inglés CART).

Tienen un primer nodo llamado raíz (root) y luego se descomponen el resto de atributos de entrada en dos ramas (podrían ser más) planteando una condición que puede ser cierta o
falsa. Se bifurca cada nodo en 2 y vuelven a subdividirse hasta llegar a las hojas que son los nodos finales y que equivalen a respuestas a la solución: Si/No, Comprar/Vender, o lo que sea
que estemos clasificando.

El algoritmo es quien analizando los datos y las salidas (por eso es supervisado) decidirá la mejor forma de hacer las divisiones (split) entre nodos.

Tendrá en cuenta de qué manera lograr una predicción (clasificación ó regresión) con mayor probabilidad de acierto.

Como funciona el árbol de decisión??

A los árboles de decisiones se los llama modelos de “caja blanca” por su fácil interpretabilidad. En contraste, en los modelos “caja negra”, es más difícil explicar el por qué de las predicciones
que hacen.

Algoritmo CART
Es un método popular para construir árboles de decisión tanto para problemas de clasificación como de regresión.

Se elige el par (K, tk), donde K es la característica y tk es el corte sobre la misma. Se los elige minimizando la función de costo.

Una vez elegido el corte óptimo, se repite el proceso hasta alcanzar la máxima profundidad deseada del algoritmo.

Complejidad Computacional
• Encontrar la mejor estructura de árbol de decisión de manera óptima es un problema extremadamente complejo → O(exp(m))

• Con el algoritmo CART entrenar el modelo tiene un complejidad O(n ✕ m log2(m)).


• Realizar una predicción tiene un complejidad computacional O(log2(m)).

Índice Gini o Entropía


Se utiliza para atributos con valores continuos (precio de una casa). Esta función de coste mide el “grado de impureza” de los nodos, es decir, cuán desordenados o mezclados quedan los
nodos una vez divididos. Deberemos minimizar ese GINI index.

• Gini es un poco más rápido de computar.

• Entropía nos da árboles más balanceados

Hiperparámteros para regularización


Es un modelo no paramétrico, es decir no realiza suposiciones a priori sobre la distribución de los datos. Sin embargo, sin restricciones, los árboles de decisión pueden volverse muy
complejos y sobreajustarse a los datos de entrenamiento. Para controlar esta complejidad y restringir los grados de libertad del árbol, Scikit-learn proporciona varios parámetros de
hiperparámetros que puedes ajustar.

clf = DecisionTreeClassifier( max_depth=10, min_samples_split=5, min_samples_leaf=4, max_features='sqrt', max_leaf_nodes=100, min_impurity_decrease=0.01)

Arboles de decisión con Regresión


Al igual que los árboles de decisión para clasificación, un árbol de decisión para regresión se construye dividiendo recursivamente el espacio de características en regiones más pequeñas,
pero en lugar de asignar una clase a cada región, se asigna un valor continuo.

Inestabilidad
Los árboles de decisión, incluyendo los árboles de decisión para regresión, tienen ciertas desventajas

• Las divisiones son perpendiculares a los ejes de las características. Si se rotan los datos, estas divisiones ya no alinearán de manera óptima con la estructura de los datos, lo que puede
llevar a una pérdida de rendimiento (sensibles a rotaciones)

• Son muy sensibles a pequeñas variaciones en los datos de entrenamiento. Un pequeño cambio en los datos, como la adición o eliminación de una sola instancia, puede cambiar
drásticamente la estructura del árbol.

También podría gustarte