Bosque de decisión de dos clases

Importante

El soporte técnico de Machine Learning Studio (clásico) finalizará el 31 de agosto de 2024. Se recomienda realizar la transición a Azure Machine Learning antes de esa fecha.

A partir del 1 de diciembre de 2021 no se podrán crear recursos de Machine Learning Studio (clásico). Hasta el 31 de agosto de 2024, puede seguir usando los recursos de Machine Learning Studio (clásico) existentes.

La documentación de ML Studio (clásico) se está retirando y es posible que no se actualice en el futuro.

Crea un modelo de clasificación de dos clases mediante el algoritmo de bosque de decisión

Categoría: Machine Learning / Inicializar modelo / Clasificación

Nota:

Solo se aplica a: Machine Learning Studio (clásico)

Hay módulos para arrastrar y colocar similares en el diseñador de Azure Machine Learning.

Información general sobre el módulo

En este artículo se describe cómo usar el módulo Bosque de decisión de dos clases en Machine Learning Studio (clásico) para crear un modelo de aprendizaje automático basado en el algoritmo de bosques de decisión.

Los bosques de decisión son modelos de conjunto rápidos y supervisados. Este módulo es una buena opción si quiere predecir un destino con un máximo de dos resultados. Si no está seguro de cómo configurar un modelo de árbol de decisión para obtener los mejores resultados , se recomienda usar el módulo Optimizar hiperparámetros del modelo para entrenar y probar varios modelos. El ajuste recorre en iteración varias posibilidades y encuentra la solución óptima.

Descripción de los bosques de decisión

Este algoritmo de bosque de decisión es un método de aprendizaje de conjunto diseñado para las tareas de clasificación. Los métodos de conjunto se basan en el principio general de que, en lugar de depender de un único modelo, puede obtener mejores resultados y un modelo más generalizado mediante la creación de varios modelos relacionados y combinarlos de alguna manera. Por lo general, los modelos de conjunto proporcionan mejor cobertura y precisión que los árboles de decisión únicos.

Hay muchas maneras de crear modelos individuales y combinarlos en un conjunto. En esta implementación concreta de un bosque de decisión se crean varios árboles de decisión y, a continuación, se vota la clase de resultado más popular. Votar es uno de los métodos más conocidos para generar resultados en un modelo de conjunto.

  • Se crean muchos árboles de clasificación individuales, con todo el conjunto de datos, pero puntos de partida diferentes (normalmente aleatorios). Esto difiere del enfoque de bosque aleatorio, en el que los árboles de decisión individuales pueden usar solo una parte aleatoria de los datos o de las características.
  • Cada árbol del bosque de decisión produce un histograma de etiquetas de frecuencia no normalizada.
  • El proceso de agregación suma estos histogramas y normaliza el resultado para obtener las "probabilidades" de cada etiqueta.
  • Los árboles con un nivel alto de confianza en la predicción tendrán un peso mayor en la decisión final del conjunto.

En general, los árboles de decisión tienen numerosas ventajas para las tareas de clasificación:

  • Pueden capturar los límites de decisión no lineales.
  • Usted puede entrenar grandes cantidades de datos y hacer predicciones con ellos, ya que son eficaces en el cálculo y el uso de memoria.
  • La selección de características está integrada en los procesos de entrenamiento y clasificación.
  • Los árboles pueden alojar datos ruidosos y muchas características.
  • Son modelos no paramétricos, lo que significa que pueden controlar datos con distribuciones variadas.

Sin embargo, los árboles de decisión simples pueden sobreajustar los datos y son menos generalizables que los conjuntos de árboles.

Para obtener más información, vea Bosques de decisión u otros documentos enumerados en la sección Notas técnicas.

Configuración de un Two-Class de decisión

  1. Agregue el módulo Bosque de decisión de dos clases al experimento en Machine Learning Studio (clásico) y abra el panel Propiedades del módulo.

    Puede encontrar el módulo en Machine Learning. Expanda Inicializar y, a continuación, Clasificación.

  2. Para obtener información sobre el método de nuevo muestreo, elija el método utilizado para crear los árboles individuales. Puede elegir entre Bagging (Agregación) o Replicate (Replicación).

    • Bagging (agregación): la agregación también se denomina agregación de arranque. En este método, cada árbol crece en una muestra nueva, creada al muestrear de forma aleatoria el conjunto de datos original con el conjunto de reemplazo hasta que haya un conjunto de datos con el tamaño del original.

      Los resultados de los modelos se combinan mediante votación, que es una forma de agregación. Cada árbol de un bosque de decisión de clasificación genera un histograma de frecuencia no normalizada de etiquetas. La agregación es sumar estos histogramas y normalizar para obtener las "probabilidades" de cada etiqueta. De esta manera, los árboles con un nivel alto de confianza en la predicción tendrán un peso mayor en la decisión final del conjunto.

      Para obtener más información, consulte la entrada de Wikipedia sobre la agregación de arranque.

    • Replicate (replicación): en la replicación, cada árbol se entrena exactamente con los mismos datos de entrada. La determinación de qué predicado de división se utiliza para cada nodo de árbol sigue siendo aleatoria y los árboles serán diversos.

      Para obtener más información sobre el proceso de entrenamiento con la opción Replicar , consulte los documentos que aparecen en la sección Notas técnicas.

  3. Especifique cómo quiere que se entrene el modelo, estableciendo la opción Create trainer mode (Crear modo entrenador).

    • Single Parameter (Parámetro único): Si sabe cómo quiere configurar el modelo, puede proporcionar un conjunto específico de valores como argumentos.

    • Intervalo de parámetros: si no está seguro de los mejores parámetros, puede encontrar los parámetros óptimos especificando varios valores y usando el módulo Optimizar hiperparámetros del modelo para encontrar la configuración óptima. El instructor recorre en iteración varias combinaciones de la configuración proporcionada y determina la combinación de valores que genera el mejor modelo.

  4. En Número de árboles de decisión, escriba el número máximo de árboles de decisión que se pueden crear en el conjunto. Al crear más árboles de decisión, puede obtener una mejor cobertura, pero el tiempo de entrenamiento aumenta.

    Nota:

    Este valor también controla el número de árboles que se muestran al visualizar el modelo entrenado. Si quiere ver o imprimir un único árbol, puede establecer el valor en 1. Sin embargo, solo se puede producir un único árbol (el árbol con el conjunto inicial de parámetros) y no se realizan iteraciones adicionales.

  5. En Maximum depth of the decision trees (Profundidad máxima de los árboles de decisión), escriba un número para limitar la profundidad máxima de cualquier árbol de decisión. Al aumentar la profundidad del árbol podría aumentar la precisión, a riesgo de que se produzca un sobreajuste y aumente el tiempo de entrenamiento.

  6. En Number of random splits per node (Número de divisiones aleatorias por nodo), escriba el número de divisiones que se usarán al crear cada nodo del árbol. Una división significa que las características de cada nivel del árbol (nodo) se dividen al azar.

  7. En Minimum number of samples per leaf node (Número mínimo de muestras por nodo hoja), indique el número mínimo de casos que son necesarios para crear cualquier nodo terminal (hoja) en un árbol.

    Al aumentar este valor, aumenta el umbral para crear reglas nuevas. Por ejemplo, con el valor predeterminado de 1, incluso un solo caso puede provocar que se cree una regla nueva. Si aumenta el valor a 5, los datos de entrenamiento tienen que contener, como mínimo, cinco casos que cumplan las mismas condiciones.

  8. Seleccione la opción Permitir valores desconocidos para las características categóricas para crear un grupo de valores desconocidos en los conjuntos de entrenamiento o validación. El modelo podría ser menos preciso con valores conocidos, pero puede proporcionar mejores predicciones para los valores nuevos (desconocidos).

    Si desactiva esta opción, el modelo puede aceptar únicamente los valores que se encuentran en los datos de entrenamiento.

  9. Adjunte un conjunto de datos etiquetados y uno de los módulos de entrenamiento:

    Nota:

    Si pasa un intervalo de parámetros a Entrenar modelo, solo se usa el primer valor de la lista de intervalos de parámetros.

    Si pasa un único conjunto de valores de parámetro al módulo Tune Model Hyperparameters (Optimizar los hiperparámetros del modelo), cuando espera un intervalo de valores para cada parámetro, omite los valores y usa los valores predeterminados para el aprendiz.

    Si selecciona la opción Intervalo de parámetros y escribe un valor único para cualquier parámetro, ese valor único se usa a lo largo del barrido, incluso si otros parámetros cambian en un intervalo de valores.

Results

Una vez completado el entrenamiento:

  • Para ver el árbol que se creó en cada iteración, haga clic con el botón derecho en el módulo Train Model (Entrenar modelo) y seleccione Trained model (Modelo entrenado) para visualizarlo. Si usa Optimizar hiperparámetros del modelo, haga clic con el botón derecho en el módulo y seleccione Trained best model (Entrenar mejor modelo) para visualizar el mejor modelo.

    Haga clic en cada árbol para explorar en profundidad las divisiones y ver las reglas de cada nodo.

  • Para guardar una instantánea del modelo, haga clic con el botón derecho en el resultado de Modelo de entrenamiento y seleccione Guardar modelo. El modelo guardado no se actualiza en ejecuciones sucesivas del experimento.

  • Para usar el modelo de puntuación, agregue el módulo Modelo de puntuación a un experimento.

Ejemplos

Para obtener ejemplos de cómo se usan los bosques de decisión en el aprendizaje automático, consulte los experimentos de ejemplo en el Azure AI Gallery:

Notas técnicas

Esta sección contiene detalles de implementación adicionales, investigación y preguntas más frecuentes.

Consejos de uso

Si tiene datos limitados o si desea minimizar el tiempo dedicado a entrenar el modelo, pruebe esta configuración:

Conjunto de entrenamiento limitado

Si el conjunto de entrenamiento contiene un número limitado de instancias:

  • Cree el bosque de decisión usando un número grande de árboles de decisión (más de 20, por ejemplo).
  • Use la opción Bagging para volver a muestrear.
  • Especifique un número grande de divisiones aleatorias por nodo (más de 1.000, por ejemplo).

Tiempo de entrenamiento limitado

Si el conjunto de entrenamiento contiene un número grande de instancias y el tiempo de entrenamiento es limitado:

  • Cree el bosque de decisión usando pocos árboles de decisión (entre 5 y 10, por ejemplo).
  • Use la opción Replicar para volver a muestrear.
  • Especifique un número más pequeño de divisiones aleatorias por nodo (menos de 100, por ejemplo).

Detalles de la implementación

En este artículo de Microsoft Research se proporciona información útil sobre los métodos de conjunto que usan árboles de decisión. De árboles a bosques.

Para obtener más información sobre el proceso de entrenamiento con la opción Replicar, vea Bosques de decisión para Computer Vision y análisis de imágenes médicas. Criminisi y J. Shotton. Springer 2013.

Parámetros del módulo

Nombre Intervalo Tipo Valor predeterminado Descripción
Método para volver a muestrear Any ResamplingMethod Bagging Elegir un método para volver a muestrear
Número de árboles de decisión >=1 Entero 8 Especificar el número de árboles de decisión para crear en el conjunto
Profundidad máxima de los árboles de decisión >=1 Entero 32 Especificar la profundidad máxima de cualquier árbol de decisión que se pueda crear
Número de divisiones aleatorias por nodo >=1 Entero 128 Especificar el número de divisiones generadas por nodo, a partir de las cuales se selecciona la división óptima
Número mínimo de muestras por nodo hoja >=1 Entero 1 Especificar el número mínimo de muestras de entrenamiento necesario para generar un nodo hoja
Permitir valores desconocidos para características de categorías Any Boolean True Indicar si los valores desconocidos de las características de categorías existentes pueden asignarse a una característica nueva adicional

Output

Nombre Tipo Descripción
Modelo no entrenado Interfaz ILearner Un modelo de clasificación binaria no entrenado

Consulte también

Clasificación
Regresión de bosque de decisión
Bosque de decisión multiclase
Lista de módulos A-Z