Algoritmo de árboles de decisión de Microsoft

Algoritmo de árboles de decisión de Microsoft
Información sobre la plantilla
DesarrolladorMicrosoft Corporation.
Modelo de desarrolloC#
Lanzamiento inicial2005
LicenciaComercial.
Sitio web
http://www.microsoft.com/net

En este artículo se muestra qué es un algoritmo de árboles de decisión de Microsoft y cómo usarlo.

Características

El algoritmo de árboles de decisión de Microsoft es un algoritmo de clasificación y regresión que proporciona Microsoft SQL Server 2005 Analysis Services (SSAS) para el modelado de predicción de atributos discretos y continuos. Para los atributos discretos, el algoritmo hace predicciones basándose en las relaciones entre las columnas de entrada de un conjunto de datos. Utiliza los valores, o estados, de estas columnas para predecir los estados de una columna que se designa como elemento de predicción. Específicamente, el algoritmo identifica las columnas de entrada que se correlacionan con la columna de predicción. Por ejemplo, en un escenario para predecir qué clientes van a adquirir probablemente una bicicleta, si nueve de diez clientes jóvenes compran una bicicleta, pero sólo lo hacen dos de diez clientes de edad mayor, el algoritmo infiere que la edad es un buen elemento de predicción en la compra de bicicletas. El árbol de decisión realiza predicciones basándose en la tendencia hacia un resultado concreto. Para los atributos continuos, el algoritmo usa la regresión lineal para determinar dónde se divide un árbol de decisión. Si se define más de una columna como elemento de predicción, o si los datos de entrada contienen una tabla anidada que se haya establecido como elemento de predicción, el algoritmo genera un árbol de decisión independiente para cada columna de predicción.

Ejemplo

El departamento de comercialización de la empresa Adventure Works Cycle desea identificar características de clientes antiguos que podrían indicar si es probable que realicen alguna compra en el futuro. La base de datos de AdventureWorks almacena información demográfica que describe a los clientes antiguos. Mediante el algoritmo de árboles de decisión de Microsoft que analiza esta información, el departamento puede generar un modelo que predice si un determinado cliente va a comprar productos, basándose en el estado de las columnas conocidas sobre ese cliente, como la demografía o los patrones de compra anteriores.

Cómo funciona el algoritmo

El algoritmo de árboles de decisión de Microsoft genera un modelo de minería de datos mediante la creación de una serie de divisiones (denominadas nodos) en el árbol. El algoritmo agrega un nodo al modelo cada vez que una columna de entrada está correlacionada de forma significativa con la columna de predicción. La forma en que el algoritmo determina una división varía en función de si predice una columna continua o una columna discreta.

Predecir columnas discretas

La forma en que el algoritmo de árboles de decisión de Microsoft genera un árbol para una columna de predicción discreta puede mostrarse mediante un histograma. El siguiente diagrama muestra un histograma que traza una columna de predicción, Bike Buyers, con una columna de entrada, Age. El histograma muestra que la edad de una persona ayuda a distinguir si esa persona comprará una bicicleta.

Árbol de decisión Histograma.jpg

La correlación que aparece en el diagrama hará que el algoritmo de árboles de decisión de Microsoft cree un nuevo nodo en el modelo.

Diagrama árbol de decisión.jpg

A medida que el algoritmo agrega nuevos nodos a un modelo, se forma una estructura en árbol. El nodo superior del árbol describe el desglose de la columna de predicción para la población global de clientes. A medida que el modelo crece, el algoritmo considera todas las columnas.

Usar el algoritmo

Un modelo de árbol de decisión debe contener una columna de clave, columnas de entrada y una columna de predicción. El algoritmo de árboles de decisión de Microsoft admite los tipos de contenido de columna de entrada, tipos de contenido de columna de predicción e indicadores de modelado específicos que se enumeran a continuación.

  • Tipos de contenido de columna de entrada: Continuous, Cyclical, Discrete, Discretized, Key, Table y Ordered.
  • Tipos de contenido de columna de predicción: Continuous, Cyclical, Discrete, Discretized, Table y Ordered
  • Indicadores de modelado: MODEL_EXISTENCE_ONLY, NOT NULL y REGRESSOR

Todos los algoritmos de Microsoft son compatibles con un conjunto común de funciones. Sin embargo, el algoritmo de árboles de decisión de Microsoft admite las funciones adicionales que aparecen a continuación.

El algoritmo de árboles de decisión de Microsoft admite el uso del lenguaje de marcado de modelos de predicción (PMML) para crear modelos de minería de datos. El algoritmo de árboles de decisión de Microsoft admite varios parámetros que afectan al rendimiento y la precisión del modelo de minería de datos resultante. A continuación se describe cada parámetro.

  • MAXIMUM_INPUT_ATTRIBUTES: Define el número de atributos de entrada que el algoritmo puede controlar antes de invocar la selección de características. Establezca este valor en 0 para desactivar la selección de características. El valor predeterminado es 255.
  • MAXIMUM_OUTPUT_ATTRIBUTES: Define el número de atributos de salida que el algoritmo puede controlar antes de invocar la selección de características. Establezca este valor en 0 para desactivar la selección de características. El valor predeterminado es 255.
  • SCORE_METHOD: Determina el método utilizado para calcular el resultado de la división. Opciones disponibles: Entropía (1), Bayesiano con prioridad K2 (2) o Equivalente Dirichlet bayesiano (BDE) con prioridad (3). El valor predeterminado es 3.
  • SPLIT_METHOD: Determina el método utilizado para dividir el nodo. Opciones disponibles: binario (1), completo (2) o ambos (3). El valor predeterminado es 3.
  • MINIMUM_SUPPORT: Determina el número mínimo de escenarios de hoja necesarios para generar una división en el árbol de decisión. El valor predeterminado es 10.
  • COMPLEXITY_PENALTY: Controla el crecimiento del árbol de decisión. Un valor bajo aumenta el número de divisiones y un valor alto lo reduce. El valor predeterminado se basa en el número de atributos de un modelo concreto, como se describe en la lista siguiente: De 1 a 9 atributos, el valor predeterminado es 0,5. De 10 a 99 atributos, el valor predeterminado es 0,9. Para 100 o más atributos, el valor predeterminado es 0,99.
  • FORCED_REGRESSOR: Fuerza al algoritmo a utilizar las columnas indicadas como regresores, independientemente de su importancia según los cálculos del algoritmo. Este parámetro sólo se utiliza para árboles de decisión que predicen un atributo continuo.

Ver además

Fuente