Skip to main content
. 2026 Sep 14;20:1883543. doi: 10.3389/fnhum.2026.1883543

Table 5.

Summary of model architecture with layer-wise annotations.

Layer (type) Output shape Param # Connected to
input_layer (InputLayer) (None, 256, 256, 3) 0 —
conv2d (Conv2D) (None, 256, 256, 32) 896 input_layer[0][0]
conv2d_1 (Conv2D) (None, 256, 256, 32) 9,248 conv2d[0][0]
batch_normalization (BatchNormalization) (None, 256, 256, 32) 128 conv2d_1[0][0]
re_lu (ReLU) (None, 256, 256, 32) 0 batch_normalization[0][0]
depthwise_conv2d (DepthwiseConv2D) (None, 256, 256, 32) 320 re_lu[0][0]
batch_normalization_1 (BatchNormalization) (None, 256, 256, 32) 128 depthwise_conv2d[0][0]
re_lu_1 (ReLU) (None, 256, 256, 32) 0 batch_normalization_1[0][0]
conv2d_2 (Conv2D) (None, 256, 256, 32) 1,056 re_lu_1[0][0]
batch_normalization_2 (BatchNormalization) (None, 256, 256, 32) 128 conv2d_2[0][0]
re_lu_2 (ReLU) (None, 256, 256, 32) 0 batch_normalization_2[0][0]
global_average_pooling2d (GlobalAveragePooling2D) (None, 32) 0 re_lu_2[0][0]
dense (Dense) (None, 2) 66 global_average_pooling2d[0][0]
dense_1 (Dense) (None, 32) 96 dense[0][0]
multiply (Multiply) (None, 256, 256, 32) 0 re_lu_2[0][0], dense_1[0][0]
conv2d_3 (Conv2D) (None, 256, 256, 32) 1,056 conv2d[0][0]
add (Add) (None, 256, 256, 32) 0 multiply[0][0], conv2d_3[0][0]
max_pooling2d (MaxPooling2D) (None, 128, 128, 32) 0 add[0][0]
conv2d_4 (Conv2D) (None, 128, 128, 64) 18,496 max_pooling2d[0][0]
batch_normalization_3 (BatchNormalization) (None, 128, 128, 64) 256 conv2d_4[0][0]
re_lu_3 (ReLU) (None, 128, 128, 64) 0 batch_normalization_3[0][0]
depthwise_conv2d_1 (DepthwiseConv2D) (None, 128, 128, 64) 640 re_lu_3[0][0]
batch_normalization_4 (BatchNormalization) (None, 128, 128, 64) 256 depthwise_conv2d_1[0][0]
re_lu_4 (ReLU) (None, 128, 128, 64) 0 batch_normalization_4[0][0]
conv2d_5 (Conv2D) (None, 128, 128, 64) 4,160 re_lu_4[0][0]
batch_normalization_5 (BatchNormalization) (None, 128, 128, 64) 256 conv2d_5[0][0]
re_lu_5 (ReLU) (None, 128, 128, 64) 0 batch_normalization_5[0][0]
global_average_pooling2d_1 (GlobalAveragePooling2D) (None, 64) 0 re_lu_5[0][0]
dense_2 (Dense) (None, 4) 260 global_average_pooling2d_1[0][0]
dense_3 (Dense) (None, 64) 320 dense_2[0][0]
multiply_1 (Multiply) (None, 128, 128, 64) 0 re_lu_5[0][0], dense_3[0][0]
conv2d_6 (Conv2D) (None, 128, 128, 64) 2,112 max_pooling2d[0][0]
add_1 (Add) (None, 128, 128, 64) 0 multiply_1[0][0], conv2d_6[0][0]
max_pooling2d_1 (MaxPooling2D) (None, 64, 64, 64) 0 add_1[0][0]
conv2d_7 (Conv2D) (None, 64, 64, 128) 73,856 max_pooling2d_1[0][0]
batch_normalization_6 (BatchNormalization) (None, 64, 64, 128) 512 conv2d_7[0][0]
re_lu_6 (ReLU) (None, 64, 64, 128) 0 batch_normalization_6[0][0]
depthwise_conv2d_2 (DepthwiseConv2D) (None, 64, 64, 128) 1,280 re_lu_6[0][0]
batch_normalization_7 (BatchNormalization) (None, 64, 64, 128) 512 depthwise_conv2d_2[0][0]
re_lu_7 (ReLU) (None, 64, 64, 128) 0 batch_normalization_7[0][0]
conv2d_8 (Conv2D) (None, 64, 64, 128) 16,512 re_lu_7[0][0]
batch_normalization_8 (BatchNormalization) (None, 64, 64, 128) 512 conv2d_8[0][0]
re_lu_8 (ReLU) (None, 64, 64, 128) 0 batch_normalization_8[0][0]
global_average_pooling2d_2 (GlobalAveragePooling2D) (None, 128) 0 re_lu_8[0][0]
dense_4 (Dense) (None, 8) 1,032 global_average_pooling2d_2[0][0]
dense_5 (Dense) (None, 128) 1,152 dense_4[0][0]
multiply_2 (Multiply) (None, 64, 64, 128) 0 re_lu_8[0][0], dense_5[0][0]
conv2d_9 (Conv2D) (None, 64, 64, 128) 8,320 max_pooling2d_1[0][0]
add_2 (Add) (None, 64, 64, 128) 0 multiply_2[0][0], conv2d_9[0][0]
max_pooling2d_2 (MaxPooling2D) (None, 32, 32, 128) 0 add_2[0][0]
conv2d_10 (Conv2D) (None, 32, 32, 256) 295,168 max_pooling2d_2[0][0]
batch_normalization_9 (BatchNormalization) (None, 32, 32, 256) 1,024 conv2d_10[0][0]
re_lu_9 (ReLU) (None, 32, 32, 256) 0 batch_normalization_9[0][0]
depthwise_conv2d_3 (DepthwiseConv2D) (None, 32, 32, 256) 2,560 re_lu_9[0][0]
batch_normalization_10 (BatchNormalization) (None, 32, 32, 256) 1,024 depthwise_conv2d_3[0][0]
re_lu_10 (ReLU) (None, 32, 32, 256) 0 batch_normalization_10[0][0]
conv2d_11 (Conv2D) (None, 32, 32, 256) 65,792 re_lu_10[0][0]
batch_normalization_11 (BatchNormalization) (None, 32, 32, 256) 1,024 conv2d_11[0][0]
re_lu_11 (ReLU) (None, 32, 32, 256) 0 batch_normalization_11[0][0]
global_average_pooling2d_3 (GlobalAveragePooling2D) (None, 256) 0 re_lu_11[0][0]
dense_6 (Dense) (None, 16) 4,112 global_average_pooling2d_3[0][0]
dense_7 (Dense) (None, 256) 4,352 dense_6[0][0]
multiply_3 (Multiply) (None, 32, 32, 256) 0 re_lu_11[0][0], dense_7[0][0]
conv2d_12 (Conv2D) (None, 32, 32, 256) 33,024 max_pooling2d_2[0][0]
add_3 (Add) (None, 32, 32, 256) 0 multiply_3[0][0], conv2d_12[0][0]
global_max_pooling2d (GlobalMaxPooling2D) (None, 256) 0 add_3[0][0]
dropout (Dropout) (None, 256) 0 global_max_pooling2d[0][0]
dense_8 (Dense) (None, 4) 1,028 dropout[0][0]
Total parameters — 107,076 —