Preparar datos para predicción (Estadística espacial)

Resumen

Mejora los datos para flujos de trabajo predictivos en las herramientas de Clasificación y regresión basadas en bosques y aumentadas, Regresión lineal generalizada y Predicción de presencia única, así como en otros modelos. Esto implica dividir las entidades en conjuntos de entrenamiento y prueba, extraer variables de rásteres y entidades de distancia, equilibrar los datos para obtener una mayor precisión en la clasificación y realizar una simplificación espacial de los datos espaciales sesgados.

Obtenga más información sobre cómo funciona Preparar datos para la predicción

Ilustración

Ilustración de la herramienta Preparar datos para predicción

Uso

  • Los datos de entrenamiento a los que se ha aplicado el equilibrio solo deben utilizarse para entrenar modelos predictivos. Los modelos no deben validarse con datos que hayan sido equilibrados para evitar sesgos de precisión y fugas de datos.

  • Se requiere que Extensión ArcGIS Spatial Analyst use rásteres como variables explicativas.

  • Si utiliza la clasificación para predecir eventos raros o categorías desequilibradas, utilice el parámetro Tipo de equilibrio para equilibrar el número de muestras dentro de cada nivel categórico. Los métodos de sobremuestreo aumentarán el número total de entidades y los métodos de submuestreo lo reducirán.

  • Cuando el parámetro Tipo de división se establece en División aleatoria o División espacial, las entidades de prueba de salida se pueden utilizar para evaluar la precisión del modelo con la herramienta Predecir utilizando el archivo de modelo de estadísticas espaciales. Asegúrese de que la salida sea un archivo de modelo de estadísticas espaciales al ejecutar la herramienta de análisis elegida.

  • Cuando el parámetro Tipo de división se establece en División aleatoria o División espacial, la herramienta se asegurará de que todos los niveles categóricos tanto de la variable a predecir como de cualquier variable explicativa estén presentes en las entidades de entrenamiento de salida. No es necesario que todos los niveles categóricos estén presentes en el dataset de prueba.

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades de entrada

Las entidades que se someterán a división, extracción y equilibrio.

Feature Class
Entidades de salida

Las entidades de salida que se utilizarán como entidades de entrenamiento en una herramienta de modelo.

Feature Class
Tipo de división
(Opcional)

Especifica el método que se utilizará para dividir las entidades de entrada en subconjuntos de entrenamiento y prueba.

  • División aleatoriaLas entidades de entrada se dividirán aleatoriamente en subconjuntos de entrenamiento y prueba. Esta es la opción predeterminada.
  • División espacialLas entidades de entrada se dividirán espacialmente en subconjuntos de entrenamiento y prueba.
  • NingunoLas entidades de entrada no se dividirán.
String
Entidades del subconjunto de prueba de salida
(Opcional)

Un subconjunto del valor del parámetro Entidades de entrada que se puede utilizar como entidades de prueba. Este parámetro está disponible cuando el parámetro Tipo de división se establece en División aleatoria o División espacial.

Feature Class
Variable para predecir
(Opcional)

La variable del valor del parámetro Entidades de entrada que contiene los valores que se utilizarán para entrenar un modelo. Este campo contiene valores (de entrenamiento) conocidos de la variable que se usará para predecir en ubicaciones desconocidas.

Field
Tratar variable como variable de categorías
(Opcional)

Especifica si el valor del parámetro Variable para predecir se tratará como una variable de categorías.

  • Activado: el valor del parámetro Variable para predecir se tratará como una variable categórica.
  • Desactivado: el valor del parámetro Variable para predecir no se tratará como categórico, sino como continuo. Esta es la opción predeterminada.

Boolean
Variables explicativas
(Opcional)

Una lista de campos que representan a las variables explicativas que ayudarán a predecir el valor o la categoría del valor de parámetro Variable para predecir. Active la casilla de verificación De categorías en el caso de las variables que representen clases o categorías (por ejemplo, cobertura de suelo, presencia o ausencia).

Value Table
Entidades de distancia explicativas
(Opcional)

Las entidades de distancia de entrenamiento explicativas. Las variables explicativas se crearán automáticamente calculando la distancia entre las entidades proporcionadas y los valores del parámetro Entidades de entrada. Las distancias se calcularán desde cada una de las entidades del valor del parámetro Entidades de entrada hasta la Entidad más cercana de este parámetro. Si el valor de este parámetro es polígonos o líneas, los atributos de distancia se calcularán como la distancia entre los segmentos más cercanos del par de entidades.

Feature Layer
Rásteres explicativos
(Opcional)

Las variables explicativas de entrenamiento extraídas de los rásteres. Las variables de entrenamiento explicativas se crearán automáticamente extrayendo valores de celda ráster. Para cada entidad del valor del parámetro Entidades de entrada, se extraerá el valor de la celda del ráster en esa ubicación exacta. Se utilizará remuestreo de ráster bilineal al extraer el valor de ráster en el caso de los rásteres continuos. La asignación de vecino más cercano se utilizará al extraer un valor de ráster desde rásteres de categorías. Active la casilla de verificación De categorías en el caso de los rásteres que representen clases o categorías tales como cobertura de suelo, presencia o ausencia.

Value Table
Convertir polígonos a resolución ráster para entrenamiento
(Opcional)

Especifica cómo se tratarán los polígonos si los valores del parámetro Entidades de entrada son polígonos con un valor categórico del parámetro Variable para predecir y solo se han proporcionado valores del parámetro Rásteres explicativas.

  • Activado: los polígonos se dividirán en todas las celdas ráster con centroides que quedan dentro del polígono. Los valores de ráster de cada centroide se extraerán y utilizarán para entrenar el modelo. El modelo ya no se entrenará en los polígonos, sino en los valores ráster extraídos para cada centroide de celda. Esta es la opción predeterminada.
  • Desactivado: se asigna a cada polígono el valor medio de los rásteres continuos subyacentes o el valor mayoritario de las rásteres categóricas subyacentes.

Boolean
Porcentaje de datos como subconjunto de prueba
(Opcional)

El porcentaje de las entidades de entrada que se reservarán como dataset de prueba o validación. El valor predeterminado es 10.

Double
Tipo de equilibrio
(Opcional)

Especifica el método que se utilizará para equilibrar el valor del parámetro Variable para predecir desequilibrada o el sesgo espacial de las entidades de entrada. El método de equilibrio solo se aplica al valor del parámetro Entidad de salida.

  • NingunoLas entidades de entrada no se equilibrarán. Esta es la opción predeterminada.
  • Simplificación espacialEl sesgo espacial se reducirá eliminando entidades y asegurando que la distancia entre cada conjunto de puntos restantes sea igual o mayor que el valor del parámetro Distancia mínima al vecino más cercano. Si el valor del parámetro Variable para predecir es categórico, se aplicará una simplificación espacial a cada clase individual. De lo contrario, se aplicará una simplificación espacial a todas las entidades del valor del parámetro Entidades de salida.
  • Submuestreo aleatorioSe eliminarán entidades aleatorias de cada clase no minoritaria hasta que el número de entidades coincida con el número de entidades de la clase minoritaria.
  • Submuestreo de TomekSe eliminarán las entidades de cada clase no minoritaria que estén cerca de las entidades de la clase minoritaria. Este método mejorará el límite entre las clases; sin embargo, cada clase puede tener un número diferente de entidades.
  • Submuestreo de Medoides KLas entidades de la clase no minoritaria que no sean representativas de la clase se eliminarán hasta que el número de entidades coincida con el número de entidades de la clase minoritaria.
  • Sobremuestreo aleatorioLas entidades de la clase minoritaria se duplicarán aleatoriamente hasta que el número de entidades coincida con el número de entidades de la clase mayoritaria.
  • SMOTE (sobremuestreo)Se generarán entidades sintéticas para la clase minoritaria mediante la interpolación entre las entidades existentes hasta que el número de entidades coincida con el número de entidades de la clase mayoritaria.
String
Distancia mínima al vecino más cercano
(Opcional)

La distancia mínima entre dos puntos cualesquiera o dos puntos cualesquiera de la misma categoría de valor del parámetro Variable para predecir cuando se aplica la simplificación espacial.

Linear Unit
Número de iteraciones para simplificación
(Opcional)

El número de iteraciones que se utilizarán para encontrar la solución óptima de simplificación espacial, manteniendo el mayor número posible de entidades y asegurando que no haya dos entidades dentro del valor del parámetro Distancia mínima al vecino más cercano especificado. El número mínimo de iteraciones es 1 y el máximo es 50. El valor predeterminado es 10.

Long
Codificar variables explicativas categóricas
(Opcional)

Especifica si se codificarán las variables explicativas categóricas.

  • Activado: se codificarán las variables explicativas categóricas. Cada valor categórico se convertirá en un nuevo campo y se le asignará un valor 0 o 1. El valor 1 representa la presencia de ese valor categórico y el valor 0 representa su ausencia.
  • Desctivado: no se codificarán las variables explicativas categóricas. Esta es la opción predeterminada.

Boolean
Incorporar todos los campos de las entidades de entrada
(Opcional)

Especifica si todos los campos se copiarán de las entidades de entrada a las entidades de salida.

  • Desactivado: solo los campos de entrada se copiarán en las entidades de salida.
  • Activado: todos los campos de las entidades de entrada se copiarán en las entidades de salida. Esta es la opción predeterminada.

Boolean

arcpy.stats.PrepareData(in_features, out_features, {splitting_type}, {out_test_features}, {variable_predict}, {treat_variable_as_categorical}, {explanatory_variables}, {distance_features}, {explanatory_rasters}, {use_raster_values}, {percent}, {balancing_type}, {thinning_distance_band}, {number_of_iterations}, {encode_variables}, {append_all_fields})
NombreExplicaciónTipo de datos
in_features

Las entidades que se someterán a división, extracción y equilibrio.

Feature Class
out_features

Las entidades de salida que se utilizarán como entidades de entrenamiento en una herramienta de modelo.

Feature Class
splitting_type
(Opcional)

Especifica el método que se utilizará para dividir las entidades de entrada en subconjuntos de entrenamiento y prueba.

  • RANDOM_SPLITLas entidades de entrada se dividirán aleatoriamente en subconjuntos de entrenamiento y prueba. Esta es la opción predeterminada.
  • SPATIAL_SPLITLas entidades de entrada se dividirán espacialmente en subconjuntos de entrenamiento y prueba.
  • NONELas entidades de entrada no se dividirán.
String
out_test_features
(Opcional)

Un subconjunto del valor del parámetro in_features que se puede utilizar como entidades de prueba. Este parámetro está habilitado cuando el parámetro splitting_type se establece en RANDOM_SPLIT o SPATIAL_SPLIT.

Feature Class
variable_predict
(Opcional)

La variable del valor del parámetro in_features que contiene los valores que se utilizarán para entrenar un modelo. Este campo contiene valores (de entrenamiento) conocidos de la variable que se usará para predecir en ubicaciones desconocidas.

Field
treat_variable_as_categorical
(Opcional)

Especifica si el valor del parámetro variable_predict se tratará como una variable de categorías.

  • CATEGORICALEl valor del parámetro variable_predict se tratará como una variable categórica.
  • NUMERICEl valor del parámetro variable_predict no se tratará como categórico, sino como continuo. Esta es la opción predeterminada.
Boolean
explanatory_variables
[explanatory_variables,...]
(Opcional)

Una lista de campos que representan a las variables explicativas que ayudarán a predecir el valor o la categoría del valor variable_predict. Utilice un valor de CATEGORICAL para una variable que represente clases o categorías, por ejemplo, la cobertura del suelo o la presencia o ausencia.

Value Table
distance_features
[distance_features,...]
(Opcional)

Las entidades de distancia de entrenamiento explicativas. Las variables explicativas se crearán automáticamente calculando la distancia entre las entidades proporcionadas y los valores de los parámetros in_features. Las distancias se calcularán desde cada una de las entidades del valor del parámetro in_features hasta la entidad más cercana de este parámetro. Si el valor de este parámetro es polígonos o líneas, los atributos de distancia se calcularán como la distancia entre los segmentos más cercanos del par de entidades.

Feature Layer
explanatory_rasters
[explanatory_rasters,...]
(Opcional)

Las variables explicativas de entrenamiento extraídas de los rásteres. Las variables de entrenamiento explicativas se crearán automáticamente extrayendo valores de celda ráster. Para cada entidad del valor del parámetro in_features, se extraerá el valor de la celda del ráster en esa ubicación exacta. Se utilizará remuestreo de ráster bilineal al extraer el valor de ráster en el caso de los rásteres continuos. La asignación de vecino más cercano se utilizará al extraer un valor de ráster desde rásteres de categorías. Utilice un valor de CATEGORICAL para cualquier ráster que represente clases o categorías, como la cobertura del suelo o la presencia o ausencia.

Value Table
use_raster_values
(Opcional)

Especifica cómo se tratarán los polígonos si los valores del parámetro in_features son polígonos con un valor de parámetro variable_predict categórico y solo se han proporcionado valores del parámetro explanatory_rasters.

  • SAMPLE_POLYGONLos polígonos se dividirán en todas las celdas ráster con centroides que quedan dentro del polígono. Los valores de ráster de cada centroide se extraerán y utilizarán para entrenar el modelo. El modelo ya no se entrenará en los polígonos, sino en los valores ráster extraídos para cada centroide de celda. Esta es la opción predeterminada.
  • NO_SAMPLE_POLYGONA cada polígono se le asignará el valor medio de los rásteres continuos subyacentes o el valor mayoritario de los rásteres categóricos subyacentes.
Boolean
percent
(Opcional)

El porcentaje de las entidades de entrada que se reservarán como dataset de prueba o validación. El valor predeterminado es 10.

Double
balancing_type
(Opcional)

Especifica el método que se utilizará para equilibrar el valor del parámetro variable_predict desequilibrada o el sesgo espacial de las entidades de entrada. El método de equilibrio solo se aplica al valor del parámetro out_features.

  • NONELas entidades de entrada no se equilibrarán. Esta es la opción predeterminada.
  • SPATIAL_THINNINGEl sesgo espacial se reducirá eliminando entidades y asegurando que la distancia entre cada conjunto de puntos restantes sea igual o mayor que el valor del parámetro thinning_distance_band. Si el valor del parámetro variable_predict es categórico, se aplicará una simplificación espacial a cada clase individual. De lo contrario, se aplicará una simplificación espacial a todas las entidades del valor del parámetro out_features.
  • RANDOM_UNDERSe eliminarán entidades aleatorias de cada clase no minoritaria hasta que el número de entidades coincida con el número de entidades de la clase minoritaria.
  • TOMEK_UNDERSe eliminarán las entidades de cada clase no minoritaria que estén cerca de las entidades de la clase minoritaria. Este método mejorará el límite entre las clases; sin embargo, cada clase puede tener un número diferente de entidades.
  • KMED_UNDERLas entidades de la clase no minoritaria que no sean representativas de la clase se eliminarán hasta que el número de entidades coincida con el número de entidades de la clase minoritaria.
  • RANDOM_OVERLas entidades de la clase minoritaria se duplicarán aleatoriamente hasta que el número de entidades coincida con el número de entidades de la clase mayoritaria.
  • SMOTE_OVERSe generarán entidades sintéticas para la clase minoritaria mediante la interpolación entre las entidades existentes hasta que el número de entidades coincida con el número de entidades de la clase mayoritaria.
String
thinning_distance_band
(Opcional)

La distancia mínima entre dos puntos cualesquiera o dos puntos cualesquiera de la misma categoría de valor del parámetro variable_predict cuando se aplica la simplificación espacial.

Linear Unit
number_of_iterations
(Opcional)

El número de iteraciones que se utilizarán para encontrar la solución óptima de simplificación espacial, manteniendo el mayor número posible de entidades y asegurando que no haya dos entidades dentro del valor del parámetro thinning_distance_band especificado. El número mínimo de iteraciones es 1 y el máximo es 50. El valor predeterminado es 10.

Long
encode_variables
(Opcional)

Especifica si se codificarán las variables explicativas categóricas.

  • ENCODESe codificarán las variables explicativas categóricas. Cada valor categórico se convertirá en un nuevo campo y se le asignará un valor 0 o 1. El valor 1 representa la presencia de ese valor categórico y el valor 0 representa su ausencia.
  • NO_ENCODENo se codificarán las variables explicativas categóricas. Esta es la opción predeterminada.
Boolean
append_all_fields
(Opcional)

Especifica si todos los campos se copiarán de las entidades de entrada a las entidades de salida.

  • NO_APPENDSolo los campos de entrada se copiarán en las entidades de salida.
  • APPENDTodos los campos de las entidades de entrada se copiarán en las entidades de salida. Esta es la opción predeterminada.
Boolean

Muestra de código

Ejemplo 1 de PrepareData (ventana de Python)

El siguiente script de la ventana de Python muestra cómo utilizar la función PrepareData.

# Prepare data for prediction.
import arcpy

arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.PrepareData(
    in_features = r"in_feature_class",
    out_features = r"out_feature_class",
    splitting_type="RANDOM_SPLIT",
    variable_predict=None,
    treat_variable_as_categorical="NUMERIC"   
)
Ejemplo 1 de PrepareData (secuencia de comandos independiente)

El siguiente script independiente muestra cómo utilizar la función PrepareData.

# Prepare data for prediction.
import arcpy

# Set the current workspace.
arcpy.env.workspace = r"c:\data\project_data.gdb"

# Run tool
arcpy.stats.PrepareData(
    in_features = r"in_feature_class",
    out_features = r"out_feature_class",
    splitting_type="RANDOM_SPLIT",
    variable_predict=None,
    treat_variable_as_categorical="NUMERIC"
)

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados