Skip to main content

Entrenar modelo de detección de objetos de nube de puntos (Herramientas de 3D Analyst)

Resumen

Entrena un modelo de detección de objetos para nubes de puntos mediante aprendizaje profundo.

Uso

  • Esta herramienta requiere la instalación de Deep Learning Essentials, que proporciona múltiples soluciones de redes neuronales que incluyen arquitecturas neuronales para clasificar nubes de puntos.

    Para configurar su equipo para usar marcos de aprendizaje profundo en ArcGIS Pro, consulte Instalar marcos de aprendizaje profundo para ArcGIS.

  • Si va a entrenar modelos en un entorno sin conexión, consulte Instalación adicional para entornos sin conexión para obtener más información.

  • Usar un modelo preentrenado en el proceso de entrenamiento es útil, especialmente cuando hay limitaciones en datos, tiempo o recursos computacionales. Los modelos preentrenados reducen la necesidad de un entrenamiento exhaustivo y proporcionan un punto de partida fiable para crear un modelo útil rápidamente. Para utilizar un modelo preentrenado, los nuevos datos de entrenamiento deben ser compatibles con el modelo preentrenado. Esto significa que los nuevos datos de entrenamiento deben tener los mismos atributos y códigos de objeto que los datos de entrenamiento que se utilizaron para crear el modelo preentrenado. Si los códigos de objeto de los datos de entrenamiento no coinciden con los códigos del modelo preentrenado, los códigos de objeto de los datos de entrenamiento se deben reasignar en consecuencia.

  • El modelo de detección de objetos de nubes de puntos solo se puede entrenar utilizando una tarjeta gráfica NVIDIA compatible con CUDA. Cuando el entorno Tipo de procesador no está configurado en un equipo con tarjetas gráficas compatibles con CUDA, se utilizará para el entrenamiento la tarjeta con el hardware más óptimo. De lo contrario, se puede asignar una tarjeta gráfica específica en la configuración del entorno Id. de GPU.

  • Durante el proceso de entrenamiento se reportarán las siguientes métricas:

    • Epoch—El número de época con el que está asociado el resultado

    • Training Loss—El resultado de la función de pérdida de entropía promediada para los datos de entrenamiento

    • Validation Loss—El resultado de la función de pérdida de entropía que se determinó al aplicar el modelo entrenado en la época a los datos de validación

    • Average Precision—La relación de los puntos de los datos de validación clasificados correctamente por el modelo entrenado en la época (verdaderos positivos) y todos los puntos de los datos de validación

    Se considera que un modelo que alcanza una pérdida de entrenamiento baja, pero una pérdida de validación elevada, se ajusta en exceso a los datos de entrenamiento, por lo que detecta patrones a partir de artefactos en los datos de entrenamiento y provoca que el modelo no funcione bien con los datos de validación. Se considera que un modelo que alcanza una gran pérdida de entrenamiento y una gran pérdida de validación se ajusta de forma insuficiente a los datos de entrenamiento y no se aprenden patrones con la suficiente eficacia como para producir un modelo utilizable.

    Más información sobre la evaluación de los resultados de entrenamiento de nube de puntos

  • Se crea una carpeta para almacenar los modelos de punto de control, que son modelos que se crean al final de cada época. El nombre de la carpeta de puntos de verificación empieza con el mismo nombre que el modelo y termina con el sufijo .checkpoints. Se almacena en el valor del parámetro Ubicación del modelo de salida.

Parámetros

Etiqueta Explicación Tipo de datos

Datos de entrenamiento de entrada

Los datos de entrenamiento de detección de objetos de nubes de puntos (archivo *.pcotd) que se utilizarán para entrenar el modelo.

File

Ubicación de modelo de salida

Una carpeta existente que almacenará el nuevo directorio que contiene el modelo de aprendizaje profundo.

Folder

Nombre de modelo de salida

Nombre del archivo de definición del modelo de salida de Esri (*.emd), paquete de aprendizaje profundo (*.dlpk) y directorio que se crea para almacenarlos.

String

Archivo de definición de modelo preentrenado

(Opcional)

El modelo de detección de objetos preentrenado que se perfeccionará. Si se proporciona un modelo preentrenado, los datos de entrenamiento de entrada deben tener los mismos atributos y número máximo de puntos utilizados por los datos de entrenamiento que generaron el modelo.

File

Arquitectura

(Opcional)

Especifica la arquitectura que se utilizará para entrenar el modelo.

  • Sparsely Embedded Convolutional DetectionThe Sparsely Embedded Convolutional Detection (SECOND) architecture will be used. This is the default.

  • Point Transfomer V3The Point Transformer V3 architecture will be used.

String

Selección de atributos

(Opcional)

Especifica los atributos de punto que se utilizarán con el código de clasificación al entrenar el modelo. Solo estarán disponibles los atributos que estén presentes en los datos de entrenamiento de la nube de puntos. No se incluyen atributos adicionales de forma predeterminada.

  • IntensityThe measure of the magnitude of the lidar pulse return will be used.

  • Return NumberThe ordinal position of the point obtained from a given lidar pulse will be used.

  • Number of ReturnsThe total number of lidar returns that were identified as points from the pulse associated with a given point will be used.

  • Red BandThe red band's value from a point cloud with color information will be used.

  • Green BandThe green band's value from a point cloud with color information will be used.

  • Blue BandThe blue band's value from a point cloud with color information will be used.

  • Near Infrared BandThe near infrared band's value from a point cloud with near infrared information will be used.

  • Relative HeightThe relative height of each point in relation to a reference surface, which would typically be a bare earth DEM, will be used.

String

Puntos mínimos por bloque

(Opcional)

Número mínimo de puntos que deben estar presentes en un bloque determinado para que se pueda utilizar al entrenar el modelo. El valor predeterminado es 0.

Long

Reasignar códigos de objetos

(Opcional)

Define cómo se reasignarán los códigos de objetos a nuevos valores antes de entrenar el modelo de aprendizaje profundo.

Columnas de la tabla de valores:

  • Current CodeThe object code value in the training data.

  • Remapped CodeThe object code value that the existing code will be changed to.

Value Table

Códigos de objetos de interés

(Opcional)

Los códigos de objeto que se utilizarán para filtrar los objetos en los datos de entrenamiento. Cuando se proporcionan códigos de objeto, los objetos que no estén incluidos se ignorarán.

Long

Entrenar solo bloques que contengan objetos

(Opcional)

Especifica si el modelo se entrenará utilizando solo bloques que contienen objetos o todos los bloques, incluidos aquellos que no contienen objetos.

  • ActivadoThe model will be trained using only blocks that contain objects. The data used for validation will not be modified.

  • DesactivadoThe model will be trained using all blocks, including those that do not contain objects. This is the default.

Boolean

Descripciones de objetos

(Opcional)

Las descripciones de cada código de objeto en los datos de entrenamiento.

Columnas de la tabla de valores:

  • Object CodeThe object code value that was learned by the model.

  • DescriptionThe object described by the class code.

Value Table

Criterios de selección de modelo

(Opcional)

Especifica la base estadística que se utilizará para determinar el modelo final.

  • Validation LossThe model that achieves the lowest result when the entropy loss function is applied to the validation data will be used.

  • Average PrecisionThe model that achieves the highest ratio of points in the validation data that were correctly classified by the model trained in the epoch (true positives) over all the points in the validation data will be used. This is the default.

String

Número máximo de épocas

(Opcional)

Número de veces que cada bloque de datos se transmitirá hacia adelante y hacia atrás a través de la red neuronal. El valor predeterminado es 25.

Long

Estrategia de tasa de aprendizaje

(Opcional)

Especifica cómo se modificará la tasa de aprendizaje durante el entrenamiento.

  • One Cycle Learning RateThe learning rate will be cycled throughout each epoch using Fast.AI's implementation of the 1cycle technique for training neural networks to help improve the training of a convolutional neural network. This is the default.

  • Fixed Learning RateThe same learning rate will be used throughout the training process.

String

Tasa de aprendizaje

(Opcional)

La velocidad a la que la información existente se sobrescribirá con información nueva. Si no se proporciona ningún valor, la tasa de aprendizaje óptima se extraerá de la curva de aprendizaje durante el proceso de entrenamiento. Esta es la opción predeterminada.

Double

Tamaño de lote

(Opcional)

Número de bloques de datos de entrenamiento que se procesarán en un momento dado. El valor predeterminado es 2.

Long

Detener el entrenamiento cuando el modelo ya no mejore

(Opcional)

Especifica si el entrenamiento del modelo se detendrá cuando la métrica especificada en el valor del parámetro Criterios de selección de modelo no registre ninguna mejora tras cinco épocas consecutivas.

  • ActivadoThe model training will stop when the model is no longer improving.

  • DesactivadoThe model training will continue until the maximum number of epochs has been reached. This is the default.

Boolean

Ajustes de arquitectura

(Opcional)

Los ajustes de arquitectura que se pueden modificar para mejorar los resultados del entrenamiento.

Columnas de la tabla de valores:

  • OptionThe architecture-specific options that can be modified.

    • Voxel WidthThe x- and y-dimensions of the voxel used during training. The corresponding value is in linear units of meters and can be expressed as a double value.

    • Voxel HeightThe z-dimension of the voxel used during training. The corresponding value is in linear units of meters and can be expressed as a double value.

    • Voxel Point LimitThe number of points in a given voxel. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during the training process based on the block size and block point limit of the training data.

    • Maximum Training VoxelsThe maximum number of voxels that can be used in the training data. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during training.

    • Maximum Validation VoxelsThe maximum number of voxels that can be used in the validation data. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during training.

  • ValueThe value that corresponds with the option being modified.

Value Table

Salida derivada

Etiqueta Explicación Tipo de datos

Modelo de salida

El modelo de detección de objetos de salida que se produce.

File

Estadísticas de época de salida

La tabla ASCII de salida que contiene las estadísticas de época que se obtuvieron durante el proceso de entrenamiento.

Text File

Entornos

Id. de GPU, Tipo de procesador

Información de licenciamiento

  • Basic: Requiere 3D Analyst
  • Standard: Requiere 3D Analyst
  • Avanzado: Requiere 3D Analyst