?>Array ( [lang] => es [id] => 112 ) Clasificación de Imágenes de Productos para E-commerce - WeAreCAS
deepLearn addLayer

Clasificación de Imágenes de Productos para E-commerce

Scénario de test & Cas d'usage

Contexto empresarial

Una empresa minorista necesita un modelo de Deep Learning para clasificar automáticamente las imágenes de sus productos (ej. 'camisas', 'pantalones') y así agilizar la gestión de su catálogo online. Este escenario construye una Red Neuronal Convolucional (CNN) estándar para esta tarea.
Preparación de datos

No se requieren datos para la construcción del modelo, pero este código simula la creación de una tabla de metadatos de imágenes que se usaría para el entrenamiento.

¡Copiado!
1DATA WORK.product_images;
2 LENGTH image_path $200 label $50;
3 INPUT image_path $ label $;
4 DATALINES;
5/images/prod_101.jpg camisa
6/images/prod_102.jpg pantalon
7/images/prod_103.jpg zapato
8;
9RUN;

Étapes de réalisation

1
Crear un modelo vacío para la CNN.
¡Copiado!
1PROC CAS;
2DEEPLEARN.buildModel /
3 model={name='Retail_CNN', replace=true};
4RUN;
2
Añadir la capa de entrada para imágenes de 128x128 píxeles en color.
¡Copiado!
1DEEPLEARN.addLayer /
2 model='Retail_CNN'
3 name='Input_Layer'
4 layer={type='input', nChannels=3, width=128, height=128};
5RUN;
3
Añadir una primera capa de convolución con 32 filtros y activación ReLU.
¡Copiado!
1DEEPLEARN.addLayer /
2 model='Retail_CNN'
3 name='Conv1'
4 layer={type='convolution', nFilters=32, width=3, height=3, stride=1, act='relu'}
5 srcLayers={'Input_Layer'};
6RUN;
4
Añadir una capa de pooling para reducir la dimensionalidad.
¡Copiado!
1DEEPLEARN.addLayer /
2 model='Retail_CNN'
3 name='Pool1'
4 layer={type='pooling', pool='max', width=2, height=2, stride=2}
5 srcLayers={'Conv1'};
6RUN;
5
Añadir una capa totalmente conectada con 256 neuronas.
¡Copiado!
1DEEPLEARN.addLayer /
2 model='Retail_CNN'
3 name='FC1'
4 layer={type='fullconnect', n=256, act='relu'}
5 srcLayers={'Pool1'};
6RUN;
6
Añadir la capa de salida para la clasificación (ej. 3 clases de productos).
¡Copiado!
1DEEPLEARN.addLayer /
2 model='Retail_CNN'
3 name='Output_Layer'
4 layer={type='output', n=3, act='softmax'}
5 srcLayers={'FC1'};
6RUN;
7QUIT;

Resultado esperado


Se crea exitosamente un modelo llamado 'Retail_CNN' con una arquitectura de CNN válida. La tabla del modelo debe contener 6 capas conectadas secuencialmente: Input_Layer -> Conv1 -> Pool1 -> FC1 -> Output_Layer. La acción debe completarse sin errores, validando la construcción de una red estándar.