Previsión basada en bosque (Minería de patrones en espacio-tiempo)

Resumen

Predice los valores de cada ubicación de un cubo de espacio-tiempo mediante una adaptación del algoritmo de bosque aleatorio de Leo Breiman y Adele Cutler, que es un método de aprendizaje automático supervisado. El modelo de regresión de bosque se entrena usando ventanas de tiempo en cada ubicación del cubo de espacio-tiempo.

Más información sobre cómo funciona Predicción basada en bosque

Ilustración

Ilustración de la herramienta Predicción basada en bosque
Se muestra una serie temporal de predicción que utiliza la herramienta Predicción basada en bosque.

Uso

  • Esta herramienta acepta archivos netCDF creados con las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas, Crear cubo de espacio-tiempo a partir de capa ráster multidimensional y Subdividir cubo de espacio-tiempo.

  • En comparación con otras herramientas de predicción del conjunto de herramientas Predicción de serie temporal, esta herramienta es la más compleja, pero es la que incluye el menor número de suposiciones acerca de los datos. Se recomienda para series temporales con formas y tendencias complicadas que son difíciles de modelar con funciones matemáticas simples o cuando no se satisfacen las suposiciones de otros métodos. También se recomienda si el cubo de espacio-tiempo tiene otras variables relacionadas con la variable que se está prediciendo. Estas variables se pueden incluir como variables explicativas para mejorar la predicción.

    Además, esta herramienta es la única herramienta de predicción que le permite crear modelos a distintas escalas geográficas. En lugar de crear un modelo de predicción independiente en cada ubicación del cubo de espacio-tiempo, esta herramienta le permite crear un único modelo de predicción global que utiliza cada ubicación como datos de entrenamiento. Si hay resultados de clustering de serie temporal para cualquier variable del cubo de espacio-tiempo de entrada, también puede crear un modelo de predicción diferente para cada clúster.

  • El parámetro Escala del modelo se puede usar para especificar la escala utilizada para estimar los modelos basados en bosques. El parámetro ofrece las siguientes tres opciones:

    • Ubicación individual: se estimará un modelo diferente de forma independiente para cada ubicación del cubo de espacio-tiempo. Esta es la opción predeterminada.
    • Todo el cubo: se estimará un solo modelo utilizando todas las ubicaciones como datos de entrenamiento. El modelo compartido se utilizará para predecir valores futuros en cada ubicación.
    • Clúster de serie temporal: se estimará un modelo diferente de forma independiente para cada clúster de un resultado de clustering de serie temporal. Proporcione la variable con resultados de clustering de serie temporal en el parámetro Variable de clúster. Debe utilizar la herramienta Clustering de serie temporal en la variable. Puede utilizar cualquier variable con resultados de clustering de serie temporal, incluida la variable de análisis.

    Más información sobre la estimación de modelos a diferentes escalas

  • Se pueden comparar y fusionar varios cubos de espacio-tiempo predichos mediante la herramienta Evaluar previsiones por ubicación. Esto permite crear varios cubos de previsión con parámetros y herramientas de previsión diferentes; la herramienta identificará la mejor previsión correspondiente a cada ubicación por medio del error cuadrático medio de previsión (RMSE) o el RMSE de validación.

  • Mientras predice valores futuros, la herramienta crea dos modelos que sirven para diferentes propósitos.

    • Modelo de predicción: este modelo se utiliza para predecir los valores del cubo de espacio-tiempo creando un bosque con los valores de las series temporales y utilizando este bosque para predecir los valores de los futuros periodos de tiempo. El ajuste del modelo de previsión a los valores del cubo de espacio-tiempo se mide mediante el valor de RMSE de previsión.
    • Modelo de validación: este modelo se utiliza para validar el modelo de predicción y evaluar con qué precisión es capaz de predecir los valores. Si se especifica un número mayor que 0 en el parámetro Número de periodos de tiempo a excluir para la validación, este modelo se crea utilizando los periodos de tiempo incluidos y se utiliza para predecir los valores de los periodos de tiempo excluidos. Permite ver con qué precisión el modelo puede predecir valores. El ajuste de los valores previstos a los valores excluidos se mide mediante el valor RMSE de validación.

    Más información sobre el modelo de previsión, el modelo de validación y la estadística de RMSE

  • Los valores del parámetro Entidades de salida se agregarán al panel Contenido con una representación en pantalla basada en el periodo de tiempo predicho final.

  • Esta herramienta genera mensajes de geoprocesamiento y gráficos emergentes que puede utilizar para comprender y visualizar los resultados de predicción. Los mensajes contienen información sobre la estructura del cubo de espacio-tiempo y estadísticas resumidas de los valores de RMSE y la duración de las estaciones. Haga clic en una entidad con la herramienta de navegación Explorar para que aparezca un gráfico de líneas en el panel Elementos emergentes que muestra los valores del cubo de espacio-tiempo, los valores del bosque ajustados, los valores predichos y los límites de confianza de esa ubicación.

  • Puede incluir variables explicativas para mejorar las predicciones con el parámetro Otras variables. Si se proporciona cualquier otra variable, el modelo de predicción es una predicción basada en bosque multivariante. Cada variable explicativa se convierte en factores temporales dentro de cada ventana de tiempo que se utilizan para entrenar el modelo de bosque. Esto le permite estimar cualquier efecto de intervalo (demora) entre las variables explicativas y la variable de análisis. Por ejemplo, un aumento en el número de hospitales durante una pandemia puede predecir el número de fallecimientos 14 días después, mientras que el número de hospitales puede predecir incorrectamente el número de fallecimientos en los próximos 3 días. El número de intervalos de tiempo es igual al valor del parámetro Ventana de pasos de tiempo, por lo que la ventana de tiempo debe ser mayor que cualquier efecto de intervalo que desee capturar.

    El parámetro Tabla de importancia de salida crea una tabla que muestra los factores más importantes en cada ubicación e incluye un gráfico de barras de Importancia de intervalo de tiempo que muestra los recuentos de los factores más importantes en todas las ubicaciones, ordenados por intervalo de tiempo en la ventana de tiempo. Esto le permite ver qué variables eran importantes para predecir el valor de la variable de análisis, así como visualizar el intervalo asociado cuando el factor era más importante. Por ejemplo, si el número de hospitalizaciones está asociado con el número de fallecimientos 14 días después, la ventana de periodo de tiempo debe ser de al menos 14 días, y se debe observar un gran recuento de hospitalizaciones aproximadamente 14 días antes del final de la ventana de tiempo.

    La cantidad de factores que se consideran importantes en cada ubicación depende del valor del parámetro Umbral de importancia. Por ejemplo, si se utiliza un valor de 15, el 15 por ciento superior de los factores de cada ubicación se incluirá en la tabla y el gráfico.

  • El parámetro Opción de valor atípico se puede utilizar para detectar valores atípicos estadísticamente significativos en los valores de la serie temporal de cada ubicación.

    Más información sobre cómo detectar valores atípicos de series temporales

  • Si elige la opción Identificar valores atípicos para el parámetro Opción de valor atípico, se recomienda que proporcione un valor para el parámetro Ventana de periodo de tiempo en lugar de dejar el parámetro vacío y estimar una ventana de periodo de tiempo diferente en cada ubicación. Para cada ubicación, el modelo de bosque utiliza los periodos de tiempo de la primera ventana de periodo de tiempo para entrenar el modelo de predicción y solo se detectan valores atípicos para los periodos de tiempo restantes. Si las diferentes ubicaciones excluyen diferentes números de periodos de tiempo para el entrenamiento, las estadísticas de resumen como el valor medio y los números mínimo y máximo de valores atípicos por periodo de tiempo o por ubicación pueden resultar confusas.

  • Si se incluyen variables explicativas en el parámetro Otras variables o si se especifican las opciones Todo el cubo o Clústeres de serie temporal para el parámetro Escala del modelo, solo estará disponible la opción Crear modelo por valor para el parámetro Planteamiento de predicción. Además, el tiempo de procesamiento aumentará al usar cualquiera de estas opciones.

  • La decisión sobre cuántos periodos de tiempo deben excluirse para la validación es importante. Cuantos más periodos de tiempo se excluyan, menores periodos de tiempo se mantienen para estimar el modelo de validación. No obstante, si se excluyen muy pocos periodos de tiempo, el RMSE de validación se estimará usando una pequeña cantidad de datos y puede llevar a engaño. Se recomienda excluir los máximos periodos de tiempo posibles, pero manteniendo a la vez suficientes periodos de tiempo para estimar el modelo de validación. También se recomienda mantener al menos tanto periodos de tiempo para validación como número de periodos de tiempo pretenda pronosticar si el cubo de espacio-tiempo tiene suficientes periodos de tiempo para permitirlo.

Parámetros

EtiquetaExplicaciónTipo de datos
Cubo de espacio-tiempo de entrada

El cubo netCDF que contiene la variable para predecir los periodos de tiempo futuros. Este archivo debe tener una extensión .nc y se debe haber creado utilizando las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas o Crear cubo de espacio-tiempo a partir de capa ráster multidimensional.

File
Variable de análisis

Variable numérica del archivo netCDF que se pronosticará en periodos de tiempo futuros.

String
Entidades de salida

Clase de entidad de salida de todas las ubicaciones en el cubo de espacio-tiempo con valores previstos almacenados como campos. La capa muestra la predicción del paso de tiempo final y contiene gráficos emergentes que muestran las series de tiempo, las predicciones y los límites de confianza del 90 por ciento de cada ubicación.

Feature Class
Cubo de espacio-tiempo de salida
(Opcional)

Nuevo cubo de espacio-tiempo (archivo .nc) que contiene los valores del cubo de espacio-tiempo de entrada con los periodos de tiempo previstos anexados. La herramienta Visualizar cubo de espacio-tiempo en 3D puede utilizarse para ver todos los valores observados y previstos de forma simultánea.

File
Número de periodos de tiempo para previsión
(Opcional)

Entero positivo que especifica el número de periodos de tiempo de la previsión. Este valor no puede ser mayor que el 50% de los periodos de tiempo totales del cubo de espacio-tiempo de entrada. El valor predeterminado es un periodo de tiempo.

Long
Ventana de pasos de tiempo
(Opcional)

El número de periodos de tiempo anteriores que se usarán al entrenar el modelo. Si los datos presentan estacionalidad (ciclos que se repiten), proporcione el número de periodos de tiempo correspondientes a una estación. Este valor no puede ser mayor que un tercio del número de pasos de tiempo del cubo de espacio-tiempo de entrada. Cuando se utiliza la escala de modelo de ubicación individual, si no se proporciona ningún valor, se estima una ventana de tiempo para cada ubicación utilizando una función de densidad espectral. Cuando se utilizan escalas de modelo de clúster de serie temporal o de todo el cubo, si no se proporciona ningún valor, se utilizará una cuarta parte de la cantidad de períodos de tiempo.

Más información sobre la estacionalidad y la elección de una ventana de tiempo

Long
Número de periodos de tiempo a excluir para validación
(Opcional)

Número de periodos de tiempo al final de cada serie temporal que se van a excluir para validación. El valor predeterminado es el 10% (redondeado por defecto) del número de periodos de tiempo de entrada y no puede ser mayor que el 25% del número de periodos de tiempo. Si no quiere excluir ningún periodo de tiempo, introduzca el valor 0.

Long
Número de árboles
(Opcional)

La cantidad de árboles que se crearán en el modelo de bosque. Un mayor número de árboles por lo general dará lugar a una predicción de modelo más precisa, pero el modelo tardará más en calcularse. El número predeterminado de árboles es de 100, y el valor debe ser al menos 1 y no mayor de 1000.

Long
Tamaño mínimo de hoja
(Opcional)

El número mínimo de observaciones que se requieren para conservar una hoja (es decir, el nodo terminal de un árbol que no tiene más divisiones). En el caso de datos muy grandes, si aumenta este número se reducirá el tiempo de ejecución de la herramienta.

Long
Profundidad máxima de árbol
(Opcional)

El número máximo de divisiones que se realizarán en un árbol. Si se utiliza una profundidad máxima grande, se podrán crear más divisiones, lo cual puede aumentar la probabilidad de exceso de ajuste en el modelo. Si no se proporciona ningún valor, la herramienta identificará un valor basado en el número de árboles creados por el modelo y el tamaño de la ventana de periodos de tiempo.

Long
Porcentaje de entrenamiento disponible por árbol (%)
(Opcional)

El porcentaje de datos de entrenamiento que se utilizarán para ajustar el modelo de predicción. Los datos de entrenamiento constan de variables explicativas y dependientes asociadas construidas usando ventanas de tiempo. Todos los datos de entrenamiento restantes se utilizarán para optimizar los parámetros del modelo de predicción. El valor predeterminado es del 100 por ciento.

Long
Planteamiento de predicción
(Opcional)

Especifica cómo se representarán las variables explicativas y dependientes al entrenar el modelo de bosque en cada ubicación.

Para entrenar el modelo de bosque que se utilizará para la predicción, se deben crear conjuntos de variables explicativas y dependientes utilizando ventanas de tiempo. Utilice este parámetro para especificar si la eliminación de tendencia en estas variables será lineal y si la variable dependiente se representará por su valor bruto o por el residual de un modelo de regresión lineal. Este modelo de regresión lineal utiliza todos los pasos de tiempo de una ventana de tiempo como variables explicativas y utiliza el siguiente paso de tiempo como variable dependiente. El residual se calcula restando el valor predicho basado en la regresión lineal del valor bruto de la variable dependiente.

Si se proporciona alguna variable en el parámetro Otras variables o si se especifica Todo el cubo o Clúster de serie temporal para el parámetro Escala del modelo, la opción Valor será el único planteamiento de predicción disponible.

  • Crear modelo por valorLos valores de la ventana de tiempo no serán objeto de eliminación de tendencia y la variable dependiente se representará por su valor bruto. Si se proporcionan otras variables o si la escala del modelo no es una ubicación individual, este será el único planteamiento de predicción disponible y será el predeterminado.
  • Crear modelo por valor tras eliminación de la tendenciaLos valores de la ventana de tiempo serán objeto de eliminación de tendencia lineal y la variable dependiente se representará por su valor de eliminación de tendencia. Esta es la opción predeterminada.
  • Crear modelo por residualLos valores de la ventana de tiempo no serán objeto de eliminación de tendencia y la variable dependiente se representará por el residual de un modelo de regresión lineal que utiliza los valores de la ventana de tiempo como variables explicativas.
  • Crear modelo por residual tras eliminación de la tendenciaLos valores de la ventana de tiempo serán objeto de eliminación de tendencia lineal y la variable dependiente se representará por el residual de un modelo de regresión lineal que utiliza los valores de la ventana de tiempo con eliminación de tendencia como variables explicativas.
String
Opción de valor atípico
(Opcional)

Especifica si se identificarán valores atípicos de series temporales estadísticamente significativos.

  • NadaNo se identificarán valores atípicos. Esta es la opción predeterminada.
  • Identificar valores atípicosSe identificarán valores atípicos utilizando la prueba de ESD generalizada.
String
Nivel de confianza
(Opcional)

Especifica el nivel de confianza para la prueba de los valores atípicos de series temporales.

  • 90%El nivel de confianza para la prueba es de un 90 por ciento. Esta es la opción predeterminada.
  • 95%El nivel de confianza para la prueba es de un 95 por ciento.
  • 99%El nivel de confianza para la prueba es de un 99 por ciento.
String
Número máximo de valores atípicos

El número máximo de periodos de tiempo que se pueden declarar como valores atípicos para cada ubicación. El valor predeterminado corresponde a un cinco por ciento (redondeado a la baja) del número de periodos de tiempo del cubo de espacio-tiempo de entrada (siempre se utilizará un valor de al menos 1). Este valor no puede superar el 20 por ciento del número de periodos de tiempo.

Long
Otras variables
(Opcional)

Otras variables del cubo de espacio-tiempo de entrada que se utilizarán como variables explicativas para mejorar las predicciones.

String
Umbral de importancia (%)
(Opcional)

El porcentaje de factores que se consideran más importantes a la hora de predecir la variable de análisis. Por ejemplo, si el valor es 20, el 20 por ciento superior de los factores para cada ubicación se incluirá en la tabla de importancia. Cada variable (la variable de análisis y cada variable explicativa) se representa como un factor una vez para cada periodo de tiempo de la ventana de período de tiempo, de modo que la cantidad de factores en cada ubicación es la longitud de la ventana de tiempo multiplicada por el número de variables. El número de factores se multiplica por el umbral de importancia para determinar la cantidad de factores importantes para cada modelo de predicción. El valor predeterminado es 10, y el valor debe ser un entero entre 1 y 100.

Long
Tabla de importancia de salida
(Opcional)

La tabla de salida que contendrá los factores más importantes en cada ubicación. Para escalas de modelos de ubicación individuales, cada factor importante en cada ubicación del cubo de espacio-tiempo se representará como una fila en la tabla con campos que contienen el nombre de la variable y el intervalo de tiempo asociado. Para escalas de modelo de clúster de cubo y serie temporal completas, todos los factores importantes de todo el modelo de cubo o clúster se representarán mediante una fila. La tabla incluirá un gráfico que muestra los factores más importantes en todas las ubicaciones separados por intervalo de tiempo. El gráfico permite visualizar los efectos de intervalo entre las variables explicativas y la variable que se está prediciendo.

Table
Escala del modelo
(Opcional)

Especifica la escala que se utilizará para estimar los modelos de predicción y validación.

  • Ubicación individualSe estimará un modelo de predicción y un modelo de validación diferente para cada ubicación. Esta es la opción predeterminada.
  • Cubo completoSe estimará un solo modelo de predicción y un modelo de validación usando todas las ubicaciones como datos de entrenamiento.
  • Clúster de serie temporalSe estimará un modelo de predicción y validación para cada clúster de un resultado de clustering de serie temporal. Proporcione la variable con resultados de clustering de serie temporal en el parámetro Variable de clúster.
String
Variable de clúster
(Opcional)

La variable que se utilizará para agrupar las ubicaciones del cubo de espacio-tiempo en regiones; se estimarán diferentes modelos de predicción y validación para cada región. La variable debe tener resultados de clustering de serie temporal para ser utilizada. La variable de clúster puede ser cualquier variable del cubo de espacio-tiempo, incluida la variable de análisis.

String

arcpy.stpm.ForestBasedForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, {time_window}, {number_for_validation}, {number_of_trees}, {minimum_leaf_size}, {maximum_depth}, {sample_size}, {forecast_approach}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers, {other_variables}, {importance_threshold}, {output_importance_table}, {model_scale}, {cluster_variable})
NombreExplicaciónTipo de datos
in_cube

El cubo netCDF que contiene la variable para predecir los periodos de tiempo futuros. Este archivo debe tener una extensión .nc y se debe haber creado utilizando las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas o Crear cubo de espacio-tiempo a partir de capa ráster multidimensional.

File
analysis_variable

Variable numérica del archivo netCDF que se pronosticará en periodos de tiempo futuros.

String
output_features

Clase de entidad de salida de todas las ubicaciones en el cubo de espacio-tiempo con valores previstos almacenados como campos. La capa muestra la predicción del paso de tiempo final y contiene gráficos emergentes que muestran las series de tiempo, las predicciones y los límites de confianza del 90 por ciento de cada ubicación.

Feature Class
output_cube
(Opcional)

Nuevo cubo de espacio-tiempo (archivo .nc) que contiene los valores del cubo de espacio-tiempo de entrada con los periodos de tiempo previstos anexados. La herramienta Visualizar cubo de espacio-tiempo en 3D puede utilizarse para ver todos los valores observados y previstos de forma simultánea.

File
number_of_time_steps_to_forecast
(Opcional)

Entero positivo que especifica el número de periodos de tiempo de la previsión. Este valor no puede ser mayor que el 50% de los periodos de tiempo totales del cubo de espacio-tiempo de entrada. El valor predeterminado es un periodo de tiempo.

Long
time_window
(Opcional)

El número de periodos de tiempo anteriores que se usarán al entrenar el modelo. Si los datos presentan estacionalidad (ciclos que se repiten), proporcione el número de periodos de tiempo correspondientes a una estación. Este valor no puede ser mayor que un tercio del número de pasos de tiempo del cubo de espacio-tiempo de entrada. Cuando se utiliza la escala de modelo de ubicación individual, si no se proporciona ningún valor, se estima una ventana de tiempo para cada ubicación utilizando una función de densidad espectral. Cuando se utilizan escalas de modelo de clúster de serie temporal o de todo el cubo, si no se proporciona ningún valor, se utilizará una cuarta parte de la cantidad de períodos de tiempo.

Long
number_for_validation
(Opcional)

Número de periodos de tiempo al final de cada serie temporal que se van a excluir para validación. El valor predeterminado es el 10% (redondeado por defecto) del número de periodos de tiempo de entrada y no puede ser mayor que el 25% del número de periodos de tiempo. Si no quiere excluir ningún periodo de tiempo, introduzca el valor 0.

Long
number_of_trees
(Opcional)

La cantidad de árboles que se crearán en el modelo de bosque. Un mayor número de árboles por lo general dará lugar a una predicción de modelo más precisa, pero el modelo tardará más en calcularse. El número predeterminado de árboles es de 100, y el valor debe ser al menos 1 y no mayor de 1000.

Long
minimum_leaf_size
(Opcional)

El número mínimo de observaciones que se requieren para conservar una hoja (es decir, el nodo terminal de un árbol que no tiene más divisiones). En el caso de datos muy grandes, si aumenta este número se reducirá el tiempo de ejecución de la herramienta.

Long
maximum_depth
(Opcional)

El número máximo de divisiones que se realizarán en un árbol. Si se utiliza una profundidad máxima grande, se podrán crear más divisiones, lo cual puede aumentar la probabilidad de exceso de ajuste en el modelo. Si no se proporciona ningún valor, la herramienta identificará un valor basado en el número de árboles creados por el modelo y el tamaño de la ventana de periodos de tiempo.

Long
sample_size
(Opcional)

El porcentaje de datos de entrenamiento que se utilizarán para ajustar el modelo de predicción. Los datos de entrenamiento constan de variables explicativas y dependientes asociadas construidas usando ventanas de tiempo. Todos los datos de entrenamiento restantes se utilizarán para optimizar los parámetros del modelo de predicción. El valor predeterminado es del 100 por ciento.

Más información sobre el entrenamiento del modelo de predicción de bosque

Long
forecast_approach
(Opcional)

Especifica cómo se representarán las variables explicativas y dependientes al entrenar el modelo de bosque en cada ubicación.

Para entrenar el modelo de bosque que se utilizará para la predicción, se deben crear conjuntos de variables explicativas y dependientes utilizando ventanas de tiempo. Utilice este parámetro para especificar si la eliminación de tendencia en estas variables será lineal y si la variable dependiente se representará por su valor bruto o por el residual de un modelo de regresión lineal. Este modelo de regresión lineal utiliza todos los pasos de tiempo de una ventana de tiempo como variables explicativas y utiliza el siguiente paso de tiempo como variable dependiente. El residual se calcula restando el valor predicho basado en la regresión lineal del valor bruto de la variable dependiente.

Si se proporciona alguna variable en el parámetro Otras variables o si se especifica Todo el cubo o Clúster de serie temporal para el parámetro Escala del modelo, la opción Valor será el único planteamiento de predicción disponible.

Más información sobre el parámetro Planteamiento de predicción

  • VALUELos valores de la ventana de tiempo no serán objeto de eliminación de tendencia y la variable dependiente se representará por su valor bruto. Si se proporcionan otras variables o si la escala del modelo no es una ubicación individual, este será el único planteamiento de predicción disponible y será el predeterminado.
  • VALUE_DETRENDLos valores de la ventana de tiempo serán objeto de eliminación de tendencia lineal y la variable dependiente se representará por su valor de eliminación de tendencia. Esta es la opción predeterminada.
  • RESIDUALLos valores de la ventana de tiempo no serán objeto de eliminación de tendencia y la variable dependiente se representará por el residual de un modelo de regresión lineal que utiliza los valores de la ventana de tiempo como variables explicativas.
  • RESIDUAL_DETRENDLos valores de la ventana de tiempo serán objeto de eliminación de tendencia lineal y la variable dependiente se representará por el residual de un modelo de regresión lineal que utiliza los valores de la ventana de tiempo con eliminación de tendencia como variables explicativas.
String
outlier_option
(Opcional)

Especifica si se identificarán valores atípicos de series temporales estadísticamente significativos.

  • NONENo se identificarán valores atípicos. Esta es la opción predeterminada.
  • IDENTIFYSe identificarán valores atípicos utilizando la prueba de ESD generalizada.
String
level_of_confidence
(Opcional)

Especifica el nivel de confianza para la prueba de los valores atípicos de series temporales.

  • 90%El nivel de confianza para la prueba es de un 90 por ciento. Esta es la opción predeterminada.
  • 95%El nivel de confianza para la prueba es de un 95 por ciento.
  • 99%El nivel de confianza para la prueba es de un 99 por ciento.
String
maximum_number_of_outliers

El número máximo de periodos de tiempo que se pueden declarar como valores atípicos para cada ubicación. El valor predeterminado corresponde a un cinco por ciento (redondeado a la baja) del número de periodos de tiempo del cubo de espacio-tiempo de entrada (siempre se utilizará un valor de al menos 1). Este valor no puede superar el 20 por ciento del número de periodos de tiempo.

Long
other_variables
[other_variables,...]
(Opcional)

Otras variables del cubo de espacio-tiempo de entrada que se utilizarán como variables explicativas para mejorar las predicciones.

String
importance_threshold
(Opcional)

El porcentaje de factores que se consideran más importantes a la hora de predecir la variable de análisis. Por ejemplo, si el valor es 20, el 20 por ciento superior de los factores para cada ubicación se incluirá en la tabla de importancia. Cada variable (la variable de análisis y cada variable explicativa) se representa como un factor una vez para cada periodo de tiempo de la ventana de período de tiempo, de modo que la cantidad de factores en cada ubicación es la longitud de la ventana de tiempo multiplicada por el número de variables. El número de factores se multiplica por el umbral de importancia para determinar la cantidad de factores importantes para cada modelo de predicción. El valor predeterminado es 10, y el valor debe ser un entero entre 1 y 100.

Long
output_importance_table
(Opcional)

La tabla de salida que contendrá los factores más importantes en cada ubicación. Para escalas de modelos de ubicación individuales, cada factor importante en cada ubicación del cubo de espacio-tiempo se representará como una fila en la tabla con campos que contienen el nombre de la variable y el intervalo de tiempo asociado. Para escalas de modelo de clúster de cubo y serie temporal completas, todos los factores importantes de todo el modelo de cubo o clúster se representarán mediante una fila. La tabla incluirá un gráfico que muestra los factores más importantes en todas las ubicaciones separados por intervalo de tiempo. El gráfico permite visualizar los efectos de intervalo entre las variables explicativas y la variable que se está prediciendo.

Table
model_scale
(Opcional)

Especifica la escala que se utilizará para estimar los modelos de predicción y validación.

  • INDIVIDUAL_LOCATIONSe estimará un modelo de predicción y un modelo de validación diferente para cada ubicación. Esta es la opción predeterminada.
  • ENTIRE_CUBESe estimará un solo modelo de predicción y un modelo de validación usando todas las ubicaciones como datos de entrenamiento.
  • TIME_SERIES_CLUSTERSe estimará un modelo de predicción y validación para cada clúster de un resultado de clustering de serie temporal. Proporcione la variable con resultados de clustering de serie temporal en el parámetro cluster_variable.
String
cluster_variable
(Opcional)

La variable que se utilizará para agrupar las ubicaciones del cubo de espacio-tiempo en regiones; se estimarán diferentes modelos de predicción y validación para cada región. La variable debe tener resultados de clustering de serie temporal para ser utilizada. La variable de clúster puede ser cualquier variable del cubo de espacio-tiempo, incluida la variable de análisis.

String

Muestra de código

Ejemplo 1 de ForestBasedForecast (ventana de Python)

En el siguiente script de Python se muestra cómo utilizar la función ForestBasedForecast.


# Forecast four time steps using a random forest with detrending.
arcpy.stpm.ForestBasedForecast("CarTheft.nc","Cars_NONE_ZEROS", 
           "Analysis.gdb/Forecasts", "outForecastCube.nc", 4, 3, 
           5, 100, "", "", 100, "VALUE_DETREND", "", "", "", "",
           "", "", "INDIVIDUAL_LOCATION")
Ejemplo 2 de ForestBasedForecast (script independiente)

En el siguiente script de Python se muestra cómo utilizar la función ForestBasedForecast para predecir el recuento de delitos de robo de vehículos.

# Forecast change in car thefts using a random forest.

# Import system modules.
import arcpy

# Set property to overwrite existing output, by default.
arcpy.env.overwriteOutput = True

# Set workspace.
workspace = r"C:\Analysis"
arcpy.env.workspace = workspace

# Forecast three time steps using a random forest based on change.
arcpy.stpm.ForestBasedForecast("CarTheft.nc","Cars_NONE_ZEROS","Analysis.gdb/Forecasts",
           "outForecastCube.nc", 4, 3, 5, 100, "", "", 100, "RESIDUAL", "IDENTIFY", 
           "90%", 4, None, 10, None, "INDIVIDUAL_LOCATION")

# Create a feature class visualizing the forecasts.
arcpy.stpm.VisualizeSpaceTimeCube3D("outForecastCube.nc", "Cars_NONE_ZEROS", "VALUE", 
           "Analysis.gdb/ForecastsFC")
Ejemplo 3 de ForestBasedForecast (script independiente)

El siguiente script de Python demuestra cómo usar la función ForestBasedForecast para predecir PM2.5 usando otras variables para mejorar la predicción.


import arcpy
arcpy.env.workspace = "C:/Analysis"

# Forecast twelve time steps using a random forest.
# Use entire cube model scale and multiple other variables
# Create variable importance table with top 10% of most important variables
arcpy.stpm.ForestBasedForecast("air_quality_cities.nc", "PM25", 
           "Analysis.gdb/PM25_forecast", "PM25_forecast_cube.nc", 12, None,
           30, 100, None, None, 100, "VALUE", "NONE", "90%",15, 
           "CO;HUMIDITY;O3;PRESSURE;TEMPERATURE;WINDSPEED", 10, 
           "Analysis.gdb/pm25_importance", "ENTIRE_CUBE")
Ejemplo 4 de ForestBasedForecast (script independiente)

El siguiente script de Python demuestra cómo usar la función ForestBasedForecast para predecir la población de los condados utilizando clústeres de condados con poblaciones similares.


import arcpy
arcpy.env.workspace = "C:/Analysis"

# Run time series clustering to cluster counties by population value.
arcpy.stpm.TimeSeriesClustering("USA_County_Population_1969_2019.nc", 
           "POPULATION_SUM_ZEROS",
           "Analysis.gdb/USA_County_Population_TimeSeriesClustering",
           "VALUE", None, None, None, "CREATE_POPUP")

# Run forest-based forecast models on each time series cluster
arcpy.stpm.ForestBasedForecast("USA_County_Population_1969_2019.nc",
          "POPULATION_SUM_ZEROS", 
          "Analysis.gdb/USA_County_Population_ForestBasedForecast", 
          "USA_County_Population_ForestBasedForecast_cube.nc", 20, 
          None, 3, 100, None, None, 100, "VALUE", "NONE", "90%", 1,
          None, 10, None, "TIME_SERIES_CLUSTER", "POPULATION_SUM_ZEROS")