|
CifNetForImageClassification( |
|
(resnet): CifNetModel( |
|
(embedder): CifNetEmbeddings( |
|
(embedder): CifNetConvLayer( |
|
(convolution): Conv2d(3, 32, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False) |
|
(normalization): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(pooler): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False) |
|
) |
|
(encoder): CifNetEncoder( |
|
(stages): ModuleList( |
|
(0): CifNetStage( |
|
(layers): Sequential( |
|
(0): CifNetBasicLayer( |
|
(shortcut): CifNetShortCut( |
|
(convolution): Conv2d(32, 64, kernel_size=(1, 1), stride=(2, 2), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
) |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(32, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(1): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
) |
|
) |
|
(1): CifNetStage( |
|
(layers): Sequential( |
|
(0): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(1): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
) |
|
) |
|
(2): CifNetStage( |
|
(layers): Sequential( |
|
(0): CifNetBasicLayer( |
|
(shortcut): CifNetShortCut( |
|
(convolution): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
) |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(1): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(2): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(3): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
) |
|
) |
|
(3): CifNetStage( |
|
(layers): Sequential( |
|
(0): CifNetBasicLayer( |
|
(shortcut): CifNetShortCut( |
|
(convolution): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
) |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(1): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
(2): CifNetBasicLayer( |
|
(shortcut): Identity() |
|
(layer): Sequential( |
|
(0): CifNetConvLayer( |
|
(convolution): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
(1): CifNetConvLayer( |
|
(convolution): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False) |
|
(normalization): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(activation): SiLU() |
|
) |
|
) |
|
) |
|
) |
|
) |
|
) |
|
) |
|
(pooler): AdaptiveAvgPool2d(output_size=(1, 1)) |
|
) |
|
(classifier): Sequential( |
|
(0): Flatten(start_dim=1, end_dim=-1) |
|
(1): Linear(in_features=256, out_features=10, bias=True) |
|
) |
|
) |
|
---------------------------------------------------------------- |
|
Layer (type) Output Shape Param # |
|
================================================================ |
|
Conv2d-1 [4, 32, 112, 112] 4,704 |
|
BatchNorm2d-2 [4, 32, 112, 112] 64 |
|
SiLU-3 [4, 32, 112, 112] 0 |
|
CifNetConvLayer-4 [4, 32, 112, 112] 0 |
|
MaxPool2d-5 [4, 32, 56, 56] 0 |
|
CifNetEmbeddings-6 [4, 32, 56, 56] 0 |
|
Conv2d-7 [4, 64, 28, 28] 18,432 |
|
BatchNorm2d-8 [4, 64, 28, 28] 128 |
|
SiLU-9 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-10 [4, 64, 28, 28] 0 |
|
Conv2d-11 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-12 [4, 64, 28, 28] 128 |
|
SiLU-13 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-14 [4, 64, 28, 28] 0 |
|
Conv2d-15 [4, 64, 28, 28] 2,048 |
|
BatchNorm2d-16 [4, 64, 28, 28] 128 |
|
CifNetShortCut-17 [4, 64, 28, 28] 0 |
|
CifNetBasicLayer-18 [4, 64, 28, 28] 0 |
|
Conv2d-19 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-20 [4, 64, 28, 28] 128 |
|
SiLU-21 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-22 [4, 64, 28, 28] 0 |
|
Conv2d-23 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-24 [4, 64, 28, 28] 128 |
|
SiLU-25 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-26 [4, 64, 28, 28] 0 |
|
Identity-27 [4, 64, 28, 28] 0 |
|
CifNetBasicLayer-28 [4, 64, 28, 28] 0 |
|
CifNetStage-29 [4, 64, 28, 28] 0 |
|
Conv2d-30 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-31 [4, 64, 28, 28] 128 |
|
SiLU-32 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-33 [4, 64, 28, 28] 0 |
|
Conv2d-34 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-35 [4, 64, 28, 28] 128 |
|
SiLU-36 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-37 [4, 64, 28, 28] 0 |
|
Identity-38 [4, 64, 28, 28] 0 |
|
CifNetBasicLayer-39 [4, 64, 28, 28] 0 |
|
Conv2d-40 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-41 [4, 64, 28, 28] 128 |
|
SiLU-42 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-43 [4, 64, 28, 28] 0 |
|
Conv2d-44 [4, 64, 28, 28] 36,864 |
|
BatchNorm2d-45 [4, 64, 28, 28] 128 |
|
SiLU-46 [4, 64, 28, 28] 0 |
|
CifNetConvLayer-47 [4, 64, 28, 28] 0 |
|
Identity-48 [4, 64, 28, 28] 0 |
|
CifNetBasicLayer-49 [4, 64, 28, 28] 0 |
|
CifNetStage-50 [4, 64, 28, 28] 0 |
|
Conv2d-51 [4, 128, 14, 14] 73,728 |
|
BatchNorm2d-52 [4, 128, 14, 14] 256 |
|
SiLU-53 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-54 [4, 128, 14, 14] 0 |
|
Conv2d-55 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-56 [4, 128, 14, 14] 256 |
|
SiLU-57 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-58 [4, 128, 14, 14] 0 |
|
Conv2d-59 [4, 128, 14, 14] 8,192 |
|
BatchNorm2d-60 [4, 128, 14, 14] 256 |
|
CifNetShortCut-61 [4, 128, 14, 14] 0 |
|
CifNetBasicLayer-62 [4, 128, 14, 14] 0 |
|
Conv2d-63 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-64 [4, 128, 14, 14] 256 |
|
SiLU-65 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-66 [4, 128, 14, 14] 0 |
|
Conv2d-67 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-68 [4, 128, 14, 14] 256 |
|
SiLU-69 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-70 [4, 128, 14, 14] 0 |
|
Identity-71 [4, 128, 14, 14] 0 |
|
CifNetBasicLayer-72 [4, 128, 14, 14] 0 |
|
Conv2d-73 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-74 [4, 128, 14, 14] 256 |
|
SiLU-75 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-76 [4, 128, 14, 14] 0 |
|
Conv2d-77 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-78 [4, 128, 14, 14] 256 |
|
SiLU-79 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-80 [4, 128, 14, 14] 0 |
|
Identity-81 [4, 128, 14, 14] 0 |
|
CifNetBasicLayer-82 [4, 128, 14, 14] 0 |
|
Conv2d-83 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-84 [4, 128, 14, 14] 256 |
|
SiLU-85 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-86 [4, 128, 14, 14] 0 |
|
Conv2d-87 [4, 128, 14, 14] 147,456 |
|
BatchNorm2d-88 [4, 128, 14, 14] 256 |
|
SiLU-89 [4, 128, 14, 14] 0 |
|
CifNetConvLayer-90 [4, 128, 14, 14] 0 |
|
Identity-91 [4, 128, 14, 14] 0 |
|
CifNetBasicLayer-92 [4, 128, 14, 14] 0 |
|
CifNetStage-93 [4, 128, 14, 14] 0 |
|
Conv2d-94 [4, 256, 7, 7] 294,912 |
|
BatchNorm2d-95 [4, 256, 7, 7] 512 |
|
SiLU-96 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-97 [4, 256, 7, 7] 0 |
|
Conv2d-98 [4, 256, 7, 7] 589,824 |
|
BatchNorm2d-99 [4, 256, 7, 7] 512 |
|
SiLU-100 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-101 [4, 256, 7, 7] 0 |
|
Conv2d-102 [4, 256, 7, 7] 32,768 |
|
BatchNorm2d-103 [4, 256, 7, 7] 512 |
|
CifNetShortCut-104 [4, 256, 7, 7] 0 |
|
CifNetBasicLayer-105 [4, 256, 7, 7] 0 |
|
Conv2d-106 [4, 256, 7, 7] 589,824 |
|
BatchNorm2d-107 [4, 256, 7, 7] 512 |
|
SiLU-108 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-109 [4, 256, 7, 7] 0 |
|
Conv2d-110 [4, 256, 7, 7] 589,824 |
|
BatchNorm2d-111 [4, 256, 7, 7] 512 |
|
SiLU-112 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-113 [4, 256, 7, 7] 0 |
|
Identity-114 [4, 256, 7, 7] 0 |
|
CifNetBasicLayer-115 [4, 256, 7, 7] 0 |
|
Conv2d-116 [4, 256, 7, 7] 589,824 |
|
BatchNorm2d-117 [4, 256, 7, 7] 512 |
|
SiLU-118 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-119 [4, 256, 7, 7] 0 |
|
Conv2d-120 [4, 256, 7, 7] 589,824 |
|
BatchNorm2d-121 [4, 256, 7, 7] 512 |
|
SiLU-122 [4, 256, 7, 7] 0 |
|
CifNetConvLayer-123 [4, 256, 7, 7] 0 |
|
Identity-124 [4, 256, 7, 7] 0 |
|
CifNetBasicLayer-125 [4, 256, 7, 7] 0 |
|
CifNetStage-126 [4, 256, 7, 7] 0 |
|
CifNetEncoder-127 [[-1, 256, 7, 7]] 0 |
|
AdaptiveAvgPool2d-128 [4, 256, 1, 1] 0 |
|
CifNetModel-129 [[-1, 256, 7, 7], [-1, 256, 1, 1]] 0 |
|
Flatten-130 [4, 256] 0 |
|
Linear-131 [4, 10] 2,570 |
|
================================================================ |
|
Total params: 4,683,818 |
|
Trainable params: 4,683,818 |
|
Non-trainable params: 0 |
|
---------------------------------------------------------------- |
|
Input size (MB): 2.30 |
|
Forward/backward pass size (MB): 192.47 |
|
Params size (MB): 17.87 |
|
Estimated Total Size (MB): 212.64 |
|
---------------------------------------------------------------- |
|
|