Skip To Content

Clasificación y regresión basadas en bosque

Clasificación y regresión basadas en bosqueLa herramienta Clasificación y regresión basadas en bosque crea modelos y genera predicciones mediante una adaptación del algoritmo de bosque aleatorio de Leo Breiman, que es un método de aprendizaje de máquina supervisado. Es posible realizar predicciones para ambas variables de categorías (clasificación) y variables continuas (regresión). Las variables explicativas toman la forma de campos de la tabla de atributos de las entidades de entrenamiento. Además de la validación del rendimiento del modelo basándose en datos de entrenamiento, es posible realizar predicciones en las entidades.

Diagrama de flujo de trabajo

Diagrama del flujo de trabajo de Clasificación y regresión basadas en bosque

Análisis mediante GeoAnalytics Tools

El análisis mediante GeoAnalytics Tools se ejecuta con el procesamiento distribuido en varios equipos y núcleos de ArcGIS GeoAnalytics Server. Las GeoAnalytics Tools y las herramientas de análisis de entidades estándar de ArcGIS Enterprise tienen parámetros y capacidades diferentes. Para obtener más información sobre las diferencias, consulte Diferencias de las herramientas de análisis de entidades.

Ejemplos

  • Dados los datos sobre la presencia de posidonia, así como numerosas variables explicativas medioambientales, además de las distancias hasta fábricas aguas arriba y puertos importantes, es posible predecir la presencia futura de posidonia basándose en proyecciones de esas mismas variables explicativas medioambientales.
  • Es posible predecir el valor de la vivienda en función de los precios de las viviendas vendidas en el año en curso. Puede utilizar el precio de venta de las viviendas vendidas, así como información sobre el número de habitaciones, la distancia hasta las escuelas, la proximidad a carreteras importantes, el nivel medio de ingresos y los recuentos de delitos, para predecir los precios de venta de viviendas similares.
  • Dada una información sobre los niveles de plomo en sangre en niños y el Id. de parcela fiscal de sus viviendas, combinada con atributos a nivel de parcela (por ejemplo, la antigüedad de la vivienda), datos a nivel de censo (por ejemplo, niveles de ingresos y de estudios) y datasets nacionales que reflejen los vertidos tóxicos de plomo y compuestos de plomo, es posible predecir el riesgo de exposición al plomo para las parcelas sin datos sobre el nivel de plomo en sangre. Estas predicciones de riesgos podrían dar información a las políticas y los programas de educación en el área.

Notas de uso

Esta herramienta crear cientos de árboles, conocidos como un conjunto de árboles de decisiones, para crear un modelo que puede emplearse para la predicción. Cada árbol de decisión se crea mediante partes generadas aleatoriamente de los datos (de entrenamiento) originales. Cada árbol genera su propia predicción y vota sobre el resultado. El modelo de bosque considera los votos de todos los árboles de decisiones para predecir o clasificar el resultado de una muestra desconocida. Se trata de algo importante, ya que los árboles individuales pueden tener problemas de exceso de ajuste en un modelo; sin embargo, combinar varios árboles de un bosque para la predicción aborda el problema de exceso de ajuste asociado con un único árbol.

Esta herramienta puede usarse en dos modos de operación. La opción Entrenar un modelo para evaluar el rendimiento del modelo se puede usar para evaluar el rendimiento de distintos modelos al explorar distintas variables explicativas y ajustes de la herramienta. Una vez encontrado un buen modelo, puede usar la opción Ajustar un modelo y predecir valores. Esta es una herramienta controlada por datos y funciona de forma óptima con datasets grandes. La herramienta debe entrenarse con al menos varios cientos de entidades para obtener unos resultados óptimos. No es una herramienta adecuada para datasets muy pequeños.

Las Entidades de entrenamiento de entrada pueden ser tablas, puntos, líneas o entidades de áreas. Esta herramienta no funciona con datos multiparte.

Las entidades con uno o varios valores nulos o valores de cadena de caracteres vacíos en campos explicativos o de predicción se ejecutarán desde la salida. Si lo necesita, puede modificar los valores con Calcular campo.

Esta herramienta produce una variedad de salidas. Las salidas producidas varían en función del modo de operación, como se indica a continuación:

  • Entrenar un modelo para evaluar el rendimiento del modelo produce las dos salidas siguientes:
    • Entidades entrenadas de salida: contiene todas las Entidades de entrenamiento de entrada que se usan en el modelo creado, así como todas las variables explicativas que se usan en el modelo. También contiene predicciones para todas las entidades usadas para entrenar el modelo, lo cual puede resultar útil para evaluar el rendimiento del modelo creado.
    • Mensajes de resumen de la herramienta: mensajes que ayudan a comprender el rendimiento del modelo creado. Los mensajes contienen información acerca de las características del modelo, errores fuera de bolsa, importancia variable y diagnósticos de validación. Para acceder a un resumen de sus resultados, haga clic en Mostrar resultados Mostrar resultados bajo la capa resultante en Map Viewer. La información de resumen también se agrega a la página de detalles del elemento.
  • Ajustar un modelo y predecir valores produce las tres salidas siguientes:
    • Entidades entrenadas de salida: contiene todas las Entidades de entrenamiento de entrada que se usan en el modelo creado, así como todas las variables explicativas que se usan en el modelo. También contiene predicciones para todas las entidades usadas para entrenar el modelo, lo cual puede resultar útil para evaluar el rendimiento del modelo creado
    • Entidades predichas de salida: una capa de los resultados predichos. Las predicciones se aplican a la capa para la que predecir (Elegir la capa para la que predecir valores) con el modelo generado desde la capa de entrenamiento.
    • Mensajes de resumen de la herramienta: mensajes que ayudan a comprender el rendimiento del modelo creado. Los mensajes contienen información acerca de las características del modelo, errores fuera de bolsa, importancia variable y diagnósticos de validación. Para acceder a un resumen de sus resultados, haga clic en Mostrar resultados Mostrar resultados bajo la capa resultante en Map Viewer. La información de resumen también se agrega a la página de detalles del elemento.

Puede usar el parámetro Tabla de importancia variable de salida para crear una tabla para visualizar un gráfico de importancia variable para su evaluación. Los 20 valores de importancia variable principales también se reflejan en la ventana de mensajes. Se puede acceder al gráfico directamente bajo la capa en el panel Contenido.

Las variables explicativas pueden provenir de campos y deben contener una variedad de valores. Si la variable explicativa es de categorías, se debe activar la casilla de verificación De categorías (las variables del tipo de cadena de caracteres aparecerán activadas automáticamente). Las variables explicativas de categorías están limitadas a 60 valores únicos, aunque un número menor de categorías permite aumentar el rendimiento del modelo. Para un tamaño de datos dado, cuanto mayor sea el número de categorías contenidas en una variable, más probable es que esta domine el modelo y conduzca a resultados de predicción menos eficaces.

Al comparar variables explicativas, el Campo de entrenamiento y el Campo de predicción deben tener campos que sean del mismo tipo (un campo doble en Campo de entrenamiento debe corresponderse con un campo doble en Campo de predicción, por ejemplo).

Los modelos basados en bosque no realizan extrapolación: solo pueden clasificar o predecir un valor con el que se haya entrenado el modelo. Entrene el modelo con entidades de entrenamiento y variables explicativas que se encuentren dentro del rango de sus entidades y variables de destino. La herramienta generará un error si las variables explicativas de predicción contienen categorías que no estaban presentes en las entidades de entrenamiento.

El valor predeterminado del parámetro Número de árboles es de 100. El aumento del número de árboles del modelo de bosque dará lugar a una predicción de modelo más precisa, pero el modelo tardará más en calcularse.

Para obtener más información sobre cómo funciona esta herramienta y sobre la herramienta de geoprocesamiento de ArcGIS Pro sobre la que se basa esta implementación, consulte Cómo funciona Clasificación y regresión basadas en bosque.

Limitaciones

La implementación en GeoAnalytics de Clasificación y regresión basadas en bosque presenta las siguientes limitaciones:

  • Los datasets de entidades (puntos, líneas, polígonos y tablas) se admiten como entrada. Los rásteres no son compatibles.
  • Se admiten una única capa para entrenamiento y una única capa para predicción. Para combinar varios datasets en uno, use las herramientas Crear cuadrícula multivariable y Enriquecer con cuadrícula multivariable para generar datos de entrada.

Ejemplo de ArcGIS API for Python

La herramienta Clasificación y regresión basadas en bosque está disponible a través de ArcGIS API for Python.

En este ejemplo se crea un modelo y predice las ventas de helados.

# Import the required ArcGIS API for Python modules import arcgis from arcgis.gis import GIS
# Connect to your ArcGIS Enterprise portal and check that GeoAnalytics is supported portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False) if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")    exit(1)   
# Find the big data file share dataset you're interested in using for analysis search_result = portal.content.search("", "Big Data File Share")
# Look through search results for a big data file share with the matching name bd_file = next(x for x in search_result if x.title == "bigDataFileShares_IceCreamSales")
# Run the tool Forest-based Classification and Regression to predict forest_model = arcgis.geoanalytics.analyze_patterns.forest(prediction_type = "train",	input_layer = bd_file, 	var_prediction = {"fieldName":"Amount", "categorical":true},
	var_explanatory = [{"fieldName":"Weekend", "categorical":true},{"fieldName":"Temperature", "categorical":false}, {"fieldName":"Holiday", "categorical":true}, {"fieldName":"DistanceToBeach", "categorical":false}],	sample_size = 50,	output_name = "ice_cream_prediction")

Herramientas similares

Use la herramienta Clasificación y regresión basadas en bosque de ArcGIS GeoAnalytics Server para generar predicciones o modelar con una adaptación del algoritmo de bosque aleatorio de Leo Breiman. Existen otras herramientas que pueden resultar de utilidad para solucionar problemas similares, aunque ligeramente diferentes.

Herramientas de análisis del Map Viewer

Crear modelos y predicciones con la herramienta Regresión lineal generalizada de ArcGIS GeoAnalytics Server.

Herramientas de análisis de ArcGIS Desktop

Realice operaciones de regresión similares en ArcGIS Pro con la herramienta de geoprocesamiento Clasificación y regresión basadas en bosque como parte de la caja de herramientas Estadísticas espaciales.

Realice una Regresión lineal generalizada (GLR) para generar predicciones o para modelar una variable dependiente en términos de su relación con un conjunto de variables explicativas en ArcGIS Pro con la herramienta de geoprocesamiento Regresión lineal generalizada de la caja de herramientas Estadísticas espaciales.

Realice una Regresión ponderada geográficamente (GWR) en ArcGIS Pro con la herramienta de geoprocesamiento Regresión ponderada geográficamente de la caja de herramientas Estadísticas espaciales.