tipos hacer ejemplos ejemplo decisiones decision data como clasificacion chaid arboles arbol algoritmo performance machine-learning complexity-theory classification decision-tree

performance - hacer - Diferentes algoritmos de árbol de decisión con comparación de complejidad o rendimiento



como hacer un arbol de decisiones (1)

Estoy investigando sobre minería de datos y más precisamente, árboles de decisión.

Me gustaría saber si existen múltiples algoritmos para construir árboles de decisión (¿o solo uno?), Y cuál es mejor, según criterios tales como

  • Actuación
  • Complejidad
  • Errores en la toma de decisiones
  • y más.

Las implementaciones de Decision Tree difieren principalmente a lo largo de estos ejes:

  • el criterio de división (es decir, cómo se calcula la "varianza")

  • si construye modelos para la regresión (variables continuas, p. ej., un puntaje) así como también la clasificación (variables discretas, p. ej., una etiqueta de clase)

  • técnica para eliminar / reducir el exceso de ajuste

  • si puede manejar datos incompletos


Las principales implementaciones de Decision Tree son:

  • ID3 o Iterative Dichotomizer fue la primera de tres implementaciones de Decision Tree desarrolladas por Ross Quinlan (Quinlan, JR 1986. Induction of Decision Trees. Mach. Learn. 1, 1 (marzo de 1986), 81-106).

  • CART , o Árboles de Clasificación y Regresión a menudo se usa como un acrónimo genérico para el término Árbol de Decisión, aunque aparentemente tiene un significado más específico. En resumen, la implementación de CART es muy similar a C4.5; la única diferencia notable es que CART construye el árbol en base a un criterio de división numérica aplicado recursivamente a los datos, mientras que C4.5 incluye el paso intermedio de construir el conjunto de reglas .

  • C4.5 , la siguiente iteración de Quinlan. Las nuevas características (frente a ID3) son: (i) acepta funciones continuas y discretas; (ii) maneja puntos de datos incompletos; (iii) resuelve el problema de ajuste por medio de una técnica ascendente (muy ingeniosa) conocida generalmente como "poda"; y (iv) diferentes pesos se pueden aplicar las características que comprenden los datos de entrenamiento. De estos, los primeros tres son muy importantes, y sugeriría que cualquier implementación de DT que elija tenga los tres. El cuarto (ponderación diferencial) es mucho menos importante

  • C5.0 , la iteración de Quinlan más reciente. Esta implementación está cubierta por una patente y, probablemente, como resultado, rara vez se implementa (fuera de los paquetes de software comercial). Nunca he codificado una implementación de C5.0 (nunca he visto el código fuente), así que no puedo ofrecer una comparación informada de C5.0 contra C4.5. Siempre he sido escéptico acerca de las mejoras reclamadas por su inventor (Ross Quinlan); por ejemplo, afirma que es "varios órdenes de magnitud" más rápido que C4.5. Otros reclamos son similarmente amplios ("significativamente más eficiente en memoria") y así sucesivamente. Simplemente te indicaré studies que informan el resultado de la comparación de las dos técnicas y puedes decidir por ti mismo.

  • CHAID (detector de interacción automática chi-cuadrado) es anterior a la implementación original de ID3 en unos seis años (publicado en una tesis de doctorado por Gordon Kass en 1980). Sé muy poco sobre esta técnica. La plataforma R tiene un paquete llamado CHAID que incluye documentación excelente

  • MARS (splines de regresión multi-adaptativa) es en realidad un término registrado por el inventor original de MARS, Salford Systems. Como resultado, los clones de MARS en bibliotecas no vendidas por Salford reciben el nombre de MARS, por ejemplo, en R, la función relevante son los polímeros en la biblioteca de poli-splines. Matlab y Statistica también tienen implementaciones con funcionalidad MARS

Recomendaría CART o C4.5 (aunque, nuevamente, no tengo experiencia directa con C5.0 o con CHAID, aunque estoy familiarizado con sus conjuntos de características).

C4.5 es el sabor del Árbol de decisiones implementado en Orange ; CART es el sabor en sklearn ambas excelentes implementaciones en excelentes bibliotecas ML.

C4.5 es un paso importante más allá de ID3, tanto en términos de rango (C4.5 tiene un espectro de casos de uso mucho más amplio porque puede manejar variables continuas en los datos de capacitación) como en términos de calidad del modelo .

Quizás la mejora más significativa de C5.0 en comparación con C4.5 es la compatibilidad con árboles potenciados . El soporte conjunto para DTs - árboles potenciados y Random Forests - se ha incluido en la implementación de DT en Orange; aquí, se agregó el soporte de conjunto a un algoritmo C4.5. sklearn también cuenta con una variedad de métodos aleatorios de bosque y refuerzo.