?>Array ( [id] => 106 ) Standardfall: Aufbau eines CNN zur Bildklassifizierung für die Qualitätskontrolle - WeAreCAS
deepLearn addLayer

Standardfall: Aufbau eines CNN zur Bildklassifizierung für die Qualitätskontrolle

Scénario de test & Cas d'usage

Contexto empresarial

Ein Fertigungsunternehmen möchte ein neuronales Netzwerk aufbauen, um Produktfehler auf einem Förderband automatisch zu erkennen. Dieses Szenario testet den grundlegenden, sequenziellen Aufbau eines einfachen Convolutional Neural Network (CNN), das die Basis für ein solches Klassifizierungsmodell bildet.
Preparación de datos

Für den Aufbau der Modellarchitektur sind keine realen Daten erforderlich. Wir beginnen mit der Erstellung eines leeren Modell-Containers mit der Aktion `buildModel`.

¡Copiado!
1/* Dieses Szenario erfordert keine Datentabelle, da es sich auf die Definition der Modellarchitektur konzentriert. */

Étapes de réalisation

1
Erstellung eines leeren Modell-Containers namens 'qc_cnn_model'.
¡Copiado!
1PROC CAS;
2DEEPLEARN.buildModel /
3 model={name='qc_cnn_model', replace=true};
4RUN;
2
Hinzufügen der Input-Schicht für Bilder der Größe 128x128 mit 1 Farbkanal (Graustufen).
¡Copiado!
1PROC CAS;
2DEEPLEARN.addLayer /
3 modelTable={name='qc_cnn_model'},
4 name='InputLayer',
5 layer={type='input', nchannels=1, width=128, height=128, scale=1.0/255.0};
6RUN;
3
Hinzufügen einer ersten Convolutional-Schicht gefolgt von einer Pooling-Schicht, um Merkmale zu extrahieren.
¡Copiado!
1PROC CAS;
2DEEPLEARN.addLayer /
3 modelTable={name='qc_cnn_model'},
4 name='Conv1',
5 layer={type='convolution', nFilters=16, width=5, height=5, stride=1, act='relu'},
6 srcLayers={'InputLayer'};
7 
8DEEPLEARN.addLayer /
9 modelTable={name='qc_cnn_model'},
10 name='Pool1',
11 layer={type='pooling', width=2, height=2, stride=2, pool='max'},
12 srcLayers={'Conv1'};
13RUN;
4
Hinzufügen einer Fully-Connected-Schicht und einer Output-Schicht für die binäre Klassifizierung (defekt/nicht defekt).
¡Copiado!
1PROC CAS;
2DEEPLEARN.addLayer /
3 modelTable={name='qc_cnn_model'},
4 name='FCLayer',
5 layer={type='fc', n=64, act='relu'},
6 srcLayers={'Pool1'};
7 
8DEEPLEARN.addLayer /
9 modelTable={name='qc_cnn_model'},
10 name='OutputLayer',
11 layer={type='output', n=2, act='softmax'},
12 srcLayers={'FCLayer'};
13RUN;

Resultado esperado


Die CAS-Tabelle 'qc_cnn_model' enthält eine gültige CNN-Architektur mit fünf Schichten (Input, Conv, Pool, FC, Output), die korrekt miteinander verbunden sind. Die Aktion `table.fetch` auf der Modelltabelle würde die Konfiguration jeder Schicht und ihre sequenzielle Verknüpfung zeigen, bereit für das Training mit Bilddaten.