El componente Object detection (easycv) proporciona modelos principales, como YOLOX, FCOS, YOLOv5 y YOLOv7, para entrenar modelos de detección de objetos. Use este componente para construir un modelo que identifique y localice entidades en imágenes. En este tema se describe cómo configurar el componente y se incluye un pipeline de ejemplo.
Requisitos previos
OSS debe estar activado y Machine Learning Studio debe contar con autorización para acceder a OSS. Para obtener más información, consulte Activate OSS y Grant required permissions to use Machine Learning Designer.
Limitaciones
Este componente solo está disponible en Designer.
Solo es compatible con el motor DLC.
Configurar los parámetros del componente
-
Puertos de entrada
Puerto de entrada
Tipo
Componente anterior
Obligatorio
Training data
Object Storage Service
No.
Si no conecta este puerto, configure el parámetro Training data OSS path en la pestaña Field settings.
Validation data
Object Storage Service
No.
Si no conecta este puerto, configure el parámetro Validation data OSS path en la pestaña Field settings.
Class list file
Object Storage Service
No.
Si no conecta este puerto, configure el parámetro Class list file OSS path en la pestaña Field settings.
-
Parámetros del componente
Pestaña
Parámetro
Obligatorio
Descripción
Valor predeterminado
Field settings
Model type
Sí
Arquitectura del modelo que se usará para el entrenamiento. Valores válidos:
FCOS
YOLOX
YOLOv5
YOLOv7
YOLOX
OSS directory for training
No
Directorio de OSS donde se almacenará el modelo entrenado. Ejemplo:
examplebucket.oss-cn-shanghai-internal.aliyuncs.com/test/ckpt/. Si deja este parámetro vacío, el componente usará la ruta predeterminada del espacio de trabajo.Ninguna
Annotation file path for training set
No
Si establece Data format en DetSourcePAI, proporcione un archivo con extensión .manifest.
Si establece Data format en COCO, proporcione un archivo con extensión .json.
Este parámetro no es obligatorio si proporciona los datos de entrenamiento mediante el puerto de entrada. Si configura ambas opciones, la entrada del puerto tiene prioridad.
Ninguna
Annotation file path for validation set
No
Si establece Data format en DetSourcePAI, proporcione un archivo con extensión .manifest.
Si establece Data format en COCO, proporcione un archivo con extensión .json.
Este parámetro no es obligatorio si proporciona los datos de validación mediante el puerto de entrada. Si configura ambas opciones, la entrada del puerto tiene prioridad.
Ninguna
Class list file OSS path
No
Especifique la ruta de OSS al archivo de lista de etiquetas. Este debe ser un archivo .txt.
Este parámetro no es obligatorio si proporciona el archivo de lista de clases mediante el puerto de entrada. Si configura ambas opciones, la entrada del puerto tiene prioridad.
Ninguna
Pre-trained model OSS path
No
Ruta de OSS a su modelo preentrenado personalizado. Si no configura este parámetro, PAI usará un modelo preentrenado predeterminado.
Ninguna
Training data OSS path
Sí
Este parámetro aparece únicamente cuando establece Data format en COCO. Especifique la ruta a las imágenes de entrenamiento en formato COCO.
Ninguna
Validation data OSS path
Sí
Este parámetro aparece únicamente cuando establece Data format en COCO. Especifique la ruta a las imágenes de validación en formato COCO.
Ninguna
Data format
Sí
Formato del conjunto de datos de origen. Valores válidos:
COCO
DetSourcePAI (los modelos YOLOv5 y YOLOv7 solo admiten conjuntos de datos DetSourcePAI).
DetSourcePAI
Parameters
YOLOX model structure
Sí
Este parámetro aparece únicamente cuando establece Model type en YOLOX. Seleccione una estructura en la lista desplegable. Valores válidos:
yolox-s
yolox-m
yolox-l
yolox-x
yolox-s
Number of classes
Sí
Número de etiquetas de clase en el conjunto de datos.
20
Image scale
Sí
Tamaño de la imagen después de cambiarle las dimensiones. Separe la altura y el ancho con un espacio. Ejemplo: 320 320.
320 320
Optimizer
Sí
Este parámetro solo está disponible cuando establece Model type en YOLOX.
Método de optimización para el entrenamiento del modelo. Valores válidos:
momentum
adam
momentum
Initial learning rate
Sí
Tasa de aprendizaje inicial.
0.01
Training batch size
Sí
Número de muestras por iteración de entrenamiento.
8
Validation batch size
Sí
Número de muestras por iteración de validación.
8
Number of epochs
Sí
Número total de épocas de entrenamiento.
NotaPara los modelos YOLOX, el valor de este parámetro debe ser mayor que la suma de los valores de los parámetros Warmup epochs y Last no augmented lr epochs.
20
Log loss frequency
No
Intervalo para imprimir el valor de pérdida. El valor predeterminado es 200, lo que indica que el valor de pérdida se imprime cada 200 lotes de entrenamiento.
200
Validation frequency
No
Intervalo de validación en épocas. El valor predeterminado es 2, lo que indica que la validación se ejecuta cada dos épocas.
2
Warmup epochs
No
Este parámetro aplica únicamente a los modelos YOLOX.
5
Last no augmented lr epochs
No
Este parámetro aplica únicamente a los modelos YOLOX.
5
Export model format
Sí
Formato del modelo exportado. Valores válidos:
raw
jit (el formato jit no es compatible con los modelos YOLOv5 y YOLOv7).
onnx
raw
Checkpoint saving frequency
No
Intervalo (en épocas) para guardar los archivos de checkpoint. Un valor de 1 indica que se guarda un checkpoint después de cada época.
1
Tuning
GPU machine type
Sí
Este componente requiere una instancia con GPU para ejecutarse.
4
Enable FP16
No
Habilita o deshabilita el modo de precisión media FP16.
false
Execution mode
Sí
Solo se admite el entrenamiento distribuido en DLC.
Distributed DLC
-
Puertos de salida
Puerto de salida
Tipo
Componente posterior
Output model
El modelo entrenado se almacena en formato SavedModel en la ruta especificada en el parámetro OSS directory for training de la pestaña Field settings.
Ejemplo
Para FCOS, YOLOX, YOLOv5 y YOLOv7, use el componente Object detection (easycv) para construir un pipeline como se muestra en la siguiente figura.

En este ejemplo, configure los componentes a continuación:
-
Use iTAG en PAI para etiquetar las imágenes. Para obtener más información, consulte Create a dataset for data labeling y Create a labeling job.
NotaiTAG solo es compatible con algunas regiones. Consulte iTAG Regions and zones para obtener más detalles.
Después de crear un conjunto de datos, seleccione la plantilla Object Detection dentro de General Template al crear un trabajo de etiquetado.
-
En la sección Object Detection Label Configuration, seleccione Single-label. En la sección Label Configuration, introduzca todos los nombres de etiqueta necesarios para facilitar el proceso de etiquetado.

-
Una vez finalizado el etiquetado, exporte los resultados en formato manifest a Object Storage Service (OSS) para que los componentes posteriores puedan usarlos.

Use el componente Read File Data para leer el archivo de resultados de etiquetado (por ejemplo, xxx.manifest). Establezca el parámetro OSS Data Path del componente Read File Data en la ruta de OSS del conjunto de datos que contiene los resultados de etiquetado. Ejemplo:
oss://examplebucket.oss-cn-shanghai.aliyuncs.com/ev_demo/xxx.manifest.Conecte los datos de entrenamiento y validación al componente Object detection (easycv) y configure sus parámetros. Para obtener más información, consulte Configure component parameters.
Para FCOS y YOLOX, también puede usar el componente image prediction para ejecutar inference sin conexión. Para obtener más información, consulte image prediction.

Documentos relacionados
Una vez entrenado un modelo de detección de objetos, conecte un componente de predicción de imágenes después del componente Object detection (easycv) para generar predicciones con el modelo y evaluar su rendimiento. Para obtener más información, consulte image prediction.
Para obtener más información sobre los componentes de Designer, consulte Designer overview.
Designer ofrece varios componentes de algoritmos predefinidos. Seleccione el componente adecuado para su caso de uso. Para obtener más información, consulte Overview of Designer components.