layer3.3.bn1.running_mean

layer3.3.bn1.running_var

layer3.3.bn1.num_batches_tracked

layer3.3.conv2.weight

layer3.3.bn2.weight

layer3.3.bn2.bias

layer3.3.bn2.running_mean

layer3.3.bn2.running_var

layer3.3.bn2.num_batches_tracked

layer3.3.conv3.weight

layer3.3.bn3.weight

layer3.3.bn3.bias

layer3.3.bn3.running_mean

layer3.3.bn3.running_var

layer3.3.bn3.num_batches_tracked

layer3.4.conv1.weight

layer3.4.bn1.weight

layer3.4.bn1.bias

layer3.4.bn1.running_mean

layer3.4.bn1.running_var

layer3.4.bn1.num_batches_tracked

layer3.4.conv2.weight

layer3.4.bn2.weight

layer3.4.bn2.bias

layer3.4.bn2.running_mean

layer3.4.bn2.running_var

layer3.4.bn2.num_batches_tracked

layer3.4.conv3.weight

layer3.4.bn3.weight

layer3.4.bn3.bias

layer3.4.bn3.running_mean

layer3.4.bn3.running_var

layer3.4.bn3.num_batches_tracked

layer3.5.conv1.weight

layer3.5.bn1.weight

layer3.5.bn1.bias

layer3.5.bn1.running_mean

layer3.5.bn1.running_var

layer3.5.bn1.num_batches_tracked

layer3.5.conv2.weight

layer3.5.bn2.weight

layer3.5.bn2.bias

layer3.5.bn2.running_mean

layer3.5.bn2.running_var

layer3.5.bn2.num_batches_tracked

layer3.5.conv3.weight

layer3.5.bn3.weight

layer3.5.bn3.bias

layer3.5.bn3.running_mean

layer3.5.bn3.running_var

layer3.5.bn3.num_batches_tracked

layer4.0.conv1.weight

layer4.0.bn1.weight

layer4.0.bn1.bias

layer4.0.bn1.running_mean

layer4.0.bn1.running_var

layer4.0.bn1.num_batches_tracked

layer4.0.conv2.weight

layer4.0.bn2.weight

layer4.0.bn2.bias

layer4.0.bn2.running_mean

layer4.0.bn2.running_var

layer4.0.bn2.num_batches_tracked

layer4.0.conv3.weight

layer4.0.bn3.weight

layer4.0.bn3.bias

layer4.0.bn3.running_mean

layer4.0.bn3.running_var

layer4.0.bn3.num_batches_tracked

layer4.0.downsample.0.weight

layer4.0.downsample.1.weight

layer4.0.downsample.1.bias

layer4.0.downsample.1.running_mean

layer4.0.downsample.1.running_var

layer4.0.downsample.1.num_batches_tracked

layer4.1.conv1.weight

layer4.1.bn1.weight

layer4.1.bn1.bias

layer4.1.bn1.running_mean

layer4.1.bn1.running_var

layer4.1.bn1.num_batches_tracked

layer4.1.conv2.weight

layer4.1.bn2.weight

layer4.1.bn2.bias

layer4.1.bn2.running_mean

layer4.1.bn2.running_var

layer4.1.bn2.num_batches_tracked

layer4.1.conv3.weight

layer4.1.bn3.weight

layer4.1.bn3.bias

layer4.1.bn3.running_mean

layer4.1.bn3.running_var

layer4.1.bn3.num_batches_tracked

layer4.2.conv1.weight

layer4.2.bn1.weight

layer4.2.bn1.bias

layer4.2.bn1.running_mean

layer4.2.bn1.running_var

layer4.2.bn1.num_batches_tracked

layer4.2.conv2.weight

layer4.2.bn2.weight

layer4.2.bn2.bias

layer4.2.bn2.running_mean

layer4.2.bn2.running_var

layer4.2.bn2.num_batches_tracked

layer4.2.conv3.weight

layer4.2.bn3.weight

layer4.2.bn3.bias

layer4.2.bn3.running_mean

layer4.2.bn3.running_var

layer4.2.bn3.num_batches_tracked

fc.weight

fc.bias

Classification model:


ResNet(

(conv1): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False)

(bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

(maxpool): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False)

(layer1): Sequential(

(0): Bottleneck(

(conv1): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

(downsample): Sequential(

(0): Conv2d(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

)

)

(1): Bottleneck(

(conv1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(2): Bottleneck(

(conv1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

)

(layer2): Sequential(

(0): Bottleneck(

(conv1): Conv2d(256, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

(downsample): Sequential(

(0): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)

(1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

)

)

(1): Bottleneck(

(conv1): Conv2d(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(2): Bottleneck(

(conv1): Conv2d(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(3): Bottleneck(

(conv1): Conv2d(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

)

(layer3): Sequential(

(0): Bottleneck(

(conv1): Conv2d(512, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

(downsample): Sequential(

(0): Conv2d(512, 1024, kernel_size=(1, 1), stride=(2, 2), bias=False)

(1): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

)

)

(1): Bottleneck(

(conv1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(2): Bottleneck(

(conv1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(3): Bottleneck(

(conv1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(4): Bottleneck(

(conv1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(5): Bottleneck(

(conv1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

)

(layer4): Sequential(

(0): Bottleneck(

(conv1): Conv2d(1024, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(2048, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

(downsample): Sequential(

(0): Conv2d(1024, 2048, kernel_size=(1, 1), stride=(2, 2), bias=False)

(1): BatchNorm2d(2048, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

)

)

(1): Bottleneck(

(conv1): Conv2d(2048, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(2048, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

(2): Bottleneck(

(conv1): Conv2d(2048, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)

(bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(conv3): Conv2d(512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False)

(bn3): BatchNorm2d(2048, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)

(relu): ReLU(inplace=True)

)

)

(avgpool): AdaptiveAvgPool2d(output_size=(1, 1))

(fc): Linear(in_features=2048, out_features=200, bias=True)

)

Selected VGG configuration (vgg11) was loaded from checkpoint: ./results/cub/wsol_method_PSOL/trained_on_trainval_split_evaluated_on_test_split/arch_vgg11_pretrained_init_normalization_none_seed_16/model.pth


FALcon (localization) model:


VGG(

(features): Sequential(

(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(1): ReLU(inplace=True)

(2): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)

(3): Conv2d(64, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(4): ReLU(inplace=True)

(5): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)

(6): Conv2d(128, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(7): ReLU(inplace=True)

(8): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(9): ReLU(inplace=True)

(10): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)

(11): Conv2d(256, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(12): ReLU(inplace=True)

(13): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(14): ReLU(inplace=True)

(15): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)

(16): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(17): ReLU(inplace=True)

(18): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))

(19): ReLU(inplace=True)

(20): AdaptiveAvgPool2d(output_size=(1, 1))

)

(fovea_control): Sequential(

(0): Linear(in_features=512, out_features=256, bias=True)

(1): ReLU(inplace=True)

(2): Linear(in_features=256, out_features=128, bias=True)

(3): ReLU(inplace=True)

(4): Linear(in_features=128, out_features=4, bias=True)

)

(saccade_control): Sequential(

(0): Linear(in_features=512, out_features=256, bias=True)

(1): ReLU(inplace=True)

(2): Linear(in_features=256, out_features=1, bias=True)

)

)

/home/min/a/tibrayev/miniconda3/envs/torch_1.9_torchvision_10.0/lib/python3.8/site-packages/torch/nn/functional.py:718: UserWarning: Named tensors and all their associated APIs are an experimental feature and subject to change. Please do not use them for anything important until they are released as stable. (Triggered internally at /opt/conda/conda-bld/pytorch_1623448278899/work/c10/core/TensorImpl.h:1156.)

return torch.max_pool2d(input, kernel_size, stride, padding, dilation, ceil_mode)

100/5794 images: Top-1 Cls: 78.0000 [78/100] | GT Loc: 82.0000 [82/100] | Top-1 Loc: 67.0000 [67/100]


200/5794 images: Top-1 Cls: 77.5000 [155/200] | GT Loc: 84.0000 [168/200] | Top-1 Loc: 65.5000 [131/200]


300/5794 images: Top-1 Cls: 74.0000 [222/300] | GT Loc: 84.3333 [253/300] | Top-1 Loc: 63.3333 [190/300]


400/5794 images: Top-1 Cls: 77.0000 [308/400] | GT Loc: 85.7500 [343/400] | Top-1 Loc: 67.0000 [268/400]


500/5794 images: Top-1 Cls: 78.2000 [391/500] | GT Loc: 86.6000 [433/500] | Top-1 Loc: 68.6000 [343/500]


600/5794 images: Top-1 Cls: 76.5000 [459/600] | GT Loc: 85.0000 [510/600] | Top-1 Loc: 66.3333 [398/600]


700/5794 images: Top-1 Cls: 75.1429 [526/700] | GT Loc: 85.8571 [601/700] | Top-1 Loc: 65.4286 [458/700]


800/5794 images: Top-1 Cls: 72.1250 [577/800] | GT Loc: 86.2500 [690/800] | Top-1 Loc: 62.7500 [502/800]


900/5794 images: Top-1 Cls: 71.8889 [647/900] | GT Loc: 83.4444 [751/900] | Top-1 Loc: 60.6667 [546/900]


1000/5794 images: Top-1 Cls: 72.7000 [727/1000] | GT Loc: 83.4000 [834/1000] | Top-1 Loc: 61.3000 [613/1000]


1100/5794 images: Top-1 Cls: 70.2727 [773/1100] | GT Loc: 83.4545 [918/1100] | Top-1 Loc: 59.2727 [652/1100]


1200/5794 images: Top-1 Cls: 70.7500 [849/1200] | GT Loc: 83.0833 [997/1200] | Top-1 Loc: 59.5833 [715/1200]


1300/5794 images: Top-1 Cls: 70.6923 [919/1300] | GT Loc: 83.6154 [1087/1300] | Top-1 Loc: 59.8462 [778/1300]


1400/5794 images: Top-1 Cls: 70.6429 [989/1400] | GT Loc: 83.7857 [1173/1400] | Top-1 Loc: 59.9286 [839/1400]


1500/5794 images: Top-1 Cls: 71.6000 [1074/1500] | GT Loc: 83.8667 [1258/1500] | Top-1 Loc: 60.6667 [910/1500]


1600/5794 images: Top-1 Cls: 72.6875 [1163/1600] | GT Loc: 84.1875 [1347/1600] | Top-1 Loc: 61.7500 [988/1600]


1700/5794 images: Top-1 Cls: 71.4706 [1215/1700] | GT Loc: 84.7059 [1440/1700] | Top-1 Loc: 61.0000 [1037/1700]


1800/5794 images: Top-1 Cls: 71.0556 [1279/1800] | GT Loc: 85.2222 [1534/1800] | Top-1 Loc: 61.0000 [1098/1800]


1900/5794 images: Top-1 Cls: 70.6316 [1342/1900] | GT Loc: 85.7368 [1629/1900] | Top-1 Loc: 60.9474 [1158/1900]


2000/5794 images: Top-1 Cls: 70.5000 [1410/2000] | GT Loc: 85.9000 [1718/2000] | Top-1 Loc: 60.9500 [1219/2000]


2100/5794 images: Top-1 Cls: 70.9048 [1489/2100] | GT Loc: 85.8571 [1803/2100] | Top-1 Loc: 61.2857 [1287/2100]


2200/5794 images: Top-1 Cls: 71.3182 [1569/2200] | GT Loc: 86.0000 [1892/2200] | Top-1 Loc: 61.8636 [1361/2200]


2300/5794 images: Top-1 Cls: 71.6522 [1648/2300] | GT Loc: 86.0000 [1978/2300] | Top-1 Loc: 62.2609 [1432/2300]


2400/5794 images: Top-1 Cls: 72.1667 [1732/2400] | GT Loc: 86.2083 [2069/2400] | Top-1 Loc: 62.7917 [1507/2400]


2500/5794 images: Top-1 Cls: 72.5600 [1814/2500] | GT Loc: 86.2800 [2157/2500] | Top-1 Loc: 63.1600 [1579/2500]


2600/5794 images: Top-1 Cls: 72.1923 [1877/2600] | GT Loc: 86.1923 [2241/2600] | Top-1 Loc: 63.0385 [1639/2600]


2700/5794 images: Top-1 Cls: 72.6296 [1961/2700] | GT Loc: 86.4074 [2333/2700] | Top-1 Loc: 63.6296 [1718/2700]


2800/5794 images: Top-1 Cls: 72.5357 [2031/2800] | GT Loc: 86.6071 [2425/2800] | Top-1 Loc: 63.6429 [1782/2800]


2900/5794 images: Top-1 Cls: 72.5172 [2103/2900] | GT Loc: 86.6207 [2512/2900] | Top-1 Loc: 63.6552 [1846/2900]


3000/5794 images: Top-1 Cls: 71.9000 [2157/3000] | GT Loc: 86.7667 [2603/3000] | Top-1 Loc: 63.2000 [1896/3000]


3100/5794 images: Top-1 Cls: 71.9677 [2231/3100] | GT Loc: 86.7419 [2689/3100] | Top-1 Loc: 63.2258 [1960/3100]


3200/5794 images: Top-1 Cls: 72.0312 [2305/3200] | GT Loc: 86.9062 [2781/3200] | Top-1 Loc: 63.3438 [2027/3200]


3300/5794 images: Top-1 Cls: 72.0606 [2378/3300] | GT Loc: 87.0000 [2871/3300] | Top-1 Loc: 63.4848 [2095/3300]


3400/5794 images: Top-1 Cls: 71.4412 [2429/3400] | GT Loc: 87.2647 [2967/3400] | Top-1 Loc: 63.0588 [2144/3400]


3500/5794 images: Top-1 Cls: 71.4000 [2499/3500] | GT Loc: 87.3143 [3056/3500] | Top-1 Loc: 63.0000 [2205/3500]


3600/5794 images: Top-1 Cls: 70.8611 [2551/3600] | GT Loc: 87.3611 [3145/3600] | Top-1 Loc: 62.4167 [2247/3600]


3700/5794 images: Top-1 Cls: 70.4595 [2607/3700] | GT Loc: 87.5135 [3238/3700] | Top-1 Loc: 62.1351 [2299/3700]


3800/5794 images: Top-1 Cls: 70.2105 [2668/3800] | GT Loc: 87.6316 [3330/3800] | Top-1 Loc: 61.9737 [2355/3800]


3900/5794 images: Top-1 Cls: 70.3846 [2745/3900] | GT Loc: 87.5128 [3413/3900] | Top-1 Loc: 62.0769 [2421/3900]


4000/5794 images: Top-1 Cls: 70.5250 [2821/4000] | GT Loc: 87.6250 [3505/4000] | Top-1 Loc: 62.2750 [2491/4000]


4100/5794 images: Top-1 Cls: 70.2439 [2880/4100] | GT Loc: 87.7073 [3596/4100] | Top-1 Loc: 62.0732 [2545/4100]


4200/5794 images: Top-1 Cls: 69.6429 [2925/4200] | GT Loc: 87.6190 [3680/4200] | Top-1 Loc: 61.5476 [2585/4200]


4300/5794 images: Top-1 Cls: 69.6047 [2993/4300] | GT Loc: 87.5814 [3766/4300] | Top-1 Loc: 61.4651 [2643/4300]


4400/5794 images: Top-1 Cls: 69.6136 [3063/4400] | GT Loc: 87.6364 [3856/4400] | Top-1 Loc: 61.5227 [2707/4400]


4500/5794 images: Top-1 Cls: 69.1778 [3113/4500] | GT Loc: 87.8000 [3951/4500] | Top-1 Loc: 61.2000 [2754/4500]


4600/5794 images: Top-1 Cls: 69.4565 [3195/4600] | GT Loc: 87.8478 [4041/4600] | Top-1 Loc: 61.5435 [2831/4600]


4700/5794 images: Top-1 Cls: 69.5745 [3270/4700] | GT Loc: 87.6170 [4118/4700] | Top-1 Loc: 61.4894 [2890/4700]


4800/5794 images: Top-1 Cls: 69.8958 [3355/4800] | GT Loc: 87.7708 [4213/4800] | Top-1 Loc: 61.9167 [2972/4800]


4900/5794 images: Top-1 Cls: 70.1020 [3435/4900] | GT Loc: 87.7551 [4300/4900] | Top-1 Loc: 62.1020 [3043/4900]


5000/5794 images: Top-1 Cls: 69.9600 [3498/5000] | GT Loc: 87.7400 [4387/5000] | Top-1 Loc: 62.0000 [3100/5000]


5100/5794 images: Top-1 Cls: 69.9804 [3569/5100] | GT Loc: 87.8431 [4480/5100] | Top-1 Loc: 62.0784 [3166/5100]


5200/5794 images: Top-1 Cls: 70.0000 [3640/5200] | GT Loc: 87.8654 [4569/5200] | Top-1 Loc: 62.1346 [3231/5200]


5300/5794 images: Top-1 Cls: 69.7170 [3695/5300] | GT Loc: 88.0189 [4665/5300] | Top-1 Loc: 61.9623 [3284/5300]


5400/5794 images: Top-1 Cls: 70.1667 [3789/5400] | GT Loc: 88.1296 [4759/5400] | Top-1 Loc: 62.4444 [3372/5400]


5500/5794 images: Top-1 Cls: 70.4727 [3876/5500] | GT Loc: 88.1273 [4847/5500] | Top-1 Loc: 62.7091 [3449/5500]


5600/5794 images: Top-1 Cls: 70.5000 [3948/5600] | GT Loc: 88.1071 [4934/5600] | Top-1 Loc: 62.7679 [3515/5600]


5700/5794 images: Top-1 Cls: 70.4561 [4016/5700] | GT Loc: 88.2807 [5032/5700] | Top-1 Loc: 62.8421 [3582/5700]


5794/5794 images: Top-1 Cls: 70.4695 [4083/5794] | GT Loc: 88.2982 [5116/5794] | Top-1 Loc: 62.8409 [3641/5794]


TEST (WSOL) STATS: Top-1 Cls: 70.4695 [4083/5794] | GT Loc: 88.2982 [5116/5794] | Top-1 Loc: 62.8409 [3641/5794]



In [2]: config_3_copy

Out[2]:

{'seed': 16,

'dataset': 'cub',

'dataset_dir': '/home/nano01/a/tibrayev/CUB_200-2011_raw',

'num_classes': 200,

'in_num_channels': 3,

'full_res_img_size': (256, 256),

'correct_imbalance': False,

'selected_attributes': ['all'],

'num_attributes': 312,

'gt_bbox_dir': None,

'wsol_method': 'PSOL',

'pseudo_bbox_dir': '../PSOL/results/CUB_train_set/predicted_bounding_boxes/psol_predicted_bounding_boxes.txt',

'cls_model_name': 'resnet50',

'cls_pretrained': True,

'cls_ckpt_dir': '../PSOL/results/PSOL/CUB/checkpoint_classification_cub_ddt_resnet50_99.pth.tar',

'save_dir': './results/cub/wsol_method_PSOL/trained_on_trainval_split_evaluated_on_test_split/arch_vgg11_pretrained_init_normalization_none_seed_16/',

'model_name': 'vgg11',

'initialize': 'resume',

'ckpt_dir': './results/cub/wsol_method_PSOL/trained_on_trainval_split_evaluated_on_test_split/arch_vgg11_pretrained_init_normalization_none_seed_16/model.pth',

'loader_type': 'test',

'batch_size_eval': 50,

'init_factual': 'pretrained',

'downsampling': 'M',

'fc1': 256,

'fc2': 128,

'dropout': 0.5,

'norm': 'none',

'init_weights': True,

'adaptive_avg_pool_out': (1, 1),

'saccade_fc1': 256,

'saccade_dropout': False,

'num_glimpses': 16,

'fovea_control_neurons': 4,

'glimpse_size_grid': (40, 40),

'glimpse_size_init': (40, 40),

'glimpse_size_fixed': (96, 96),

'glimpse_size_step': (20, 20),

'glimpse_change_th': 0.5,

'iou_th': 0.5,

'ratio_wrong_init_glimpses': 0.5,

'switch_location_th': 0.2,

'objectness_based_nms_th': 0.5,

'confidence_based_nms_th': 0.5}


In [3]: