2 minute read

EfficientNet: Entrenamiento del Clasificador de Curvatura

Se eligió el modelo EfficientNet_B0 para entrenar un clasificador de curvatura, con el objetivo de detectar dos clases: curva y recta . Para este entrenamiento, se construyó un dataset balanceado (mismo número de ejemplos de curvas y rectas), compuesto por 36,000 imágenes RGB etiquetadas según la curvatura.

Para aumentar la variabilidad de las imágenes y hacer el modelo más robusto, se utilizó Albumentations para aplicar técnicas de data augmentation con un dropout de 0.3 y un learning rate de 0.0001, y el modelo fue implementado con la biblioteca PyTorch. También se utilizó early stopping para evitar el sobreentrenamiento del modelo y asegurarse de no entrenarlo demasiado.

También se utilizó early stopping para evitar el sobreentrenamiento del modelo y asegurarse de no entrenarlo demasiado.

Se empleó la técnica de congelamiento de capas, de modo que no se calculen ni se actualicen los gradientes de la mayoría de los parámetros, aprovechando así los conocimientos previos del modelo preentrenado. Posteriormente, se descongeló la última capa del modelo para que pudiera especializarse en este nuevo conjunto de datos sin olvidar lo aprendido en el entrenamiento inicial. El modelo se entrenó durante 26 épocas.

Resumen de los Resultados del Entrenamiento

El entrenamiento se realizó durante 35 épocas utilizando un dataset compuesto por 36,000 imágenes. Se empleó un learning rate de 0.0001 y un dropout de 0.3 para mejorar la capacidad de generalización del modelo. Las métricas utilizadas para evaluar el desempeño fueron la pérdida (loss) y la precisión (accuracy) tanto para el entrenamiento como para la validación. Además, se usó early stopping para evitar el sobreentrenamiento del modelo.

El gráfico de entrenamiento y validación muestra que el modelo generaliza bien . La pérdida de entrenamiento y la pérdida de validación disminuyen gradualmente y se estabilizan cerca de cero, indicando que el modelo aprende de maneraw efectiva sin sobreajustarse. Además, la precisión de entrenamiento y precisión de validación alcanzan valores muy altos (≥ 99%) y convergen, lo cual es un claro indicativo de que el modelo es capaz de mantener un buen rendimiento tanto en datos vistos durante el entrenamiento como en datos de validación nunca antes vistos.

Tabla Resumen del Entrenamiento

Parámetro Valor
Modelo EfficientNet_B0
Dataset 36,000 imágenes RGB
Clases Curva, Recta
Learning Rate 0.0001
Dropout 0.3
Épocas de Entrenamiento 35
Épocas de Early Stopping 26
Métricas Pérdida (loss), Precisión (accuracy)
Técnicas de Data Augmentation Albumentations
Congelamiento de Capas

Gráficos de métricas usadas

metricas

Pruebas de algunas inferencias

validacion1
validacion2

Videos de Prueba

Town02

Town05