From e4379a89bee98bc587b65308c7525ade613265a0 Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:43:11 +0530 Subject: [PATCH 1/7] Update train_dcfens_cifar100_CI.py block_expand argument wasn't used anywhere, so removed that. --- train_dcfens_cifar100_CI.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/train_dcfens_cifar100_CI.py b/train_dcfens_cifar100_CI.py index 4b4dba7..bdbc0d6 100644 --- a/train_dcfens_cifar100_CI.py +++ b/train_dcfens_cifar100_CI.py @@ -412,7 +412,7 @@ def inferecne(test_loader, task, total_task, model): ## dataloaders train_loader, test_loader = task_data[task][0],task_data[task][1] ## add a new network branch - net.add_branch(class_increments[task], task) + net.add_branch(class_increments[task]) net.cuda() # init model with previous task's params From a21557b9469c1c7a23b392b58ccdd30050120d8a Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:43:48 +0530 Subject: [PATCH 2/7] Update train_dcfens_imgnet100_CI.py --- train_dcfens_imgnet100_CI.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/train_dcfens_imgnet100_CI.py b/train_dcfens_imgnet100_CI.py index a659290..f313be9 100644 --- a/train_dcfens_imgnet100_CI.py +++ b/train_dcfens_imgnet100_CI.py @@ -404,7 +404,7 @@ def inferecne(test_loader, task, total_task, model): ## dataloaders train_loader, test_loader = task_data[task][0],task_data[task][1] ## add a new network branch - net.add_branch(class_increments[task], task) + net.add_branch(class_increments[task]) net.cuda() # init model with previous task's params @@ -466,4 +466,4 @@ def inferecne(test_loader, task, total_task, model): print() print(ci_acc_list) -print('\n For Class-Incremental Learning, Average Incremental Accuracy: {:.2f}'.format(np.mean(ci_acc_list))) \ No newline at end of file +print('\n For Class-Incremental Learning, Average Incremental Accuracy: {:.2f}'.format(np.mean(ci_acc_list))) From 7f0d8002168300181ca49cd881e258f958d13720 Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:44:28 +0530 Subject: [PATCH 3/7] Update resnet32_dcf_bsensemble.py --- models/resnet32_dcf_bsensemble.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/models/resnet32_dcf_bsensemble.py b/models/resnet32_dcf_bsensemble.py index 52fc7d7..a8dfd97 100644 --- a/models/resnet32_dcf_bsensemble.py +++ b/models/resnet32_dcf_bsensemble.py @@ -103,7 +103,7 @@ def __init__(self, block, num_blocks, num_classes=10, num_bases=12, num_member=1 for pm in self.coeff_list: nn.init.kaiming_normal_(pm) - def add_branch(self, num_outputs, block_expand=0): + def add_branch(self, num_outputs): """ add a set of new modules that form another branch """ @@ -187,4 +187,4 @@ def forward(self, x, task_id=None): def Net(**args): - return ResNet(BasicBlock, [5,5,5], **args) \ No newline at end of file + return ResNet(BasicBlock, [5,5,5], **args) From 1450fa95773552de4f798c9ba893523d7b7ebf14 Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:44:47 +0530 Subject: [PATCH 4/7] Update resnet18_dcf_bsensemble_imgnet.py --- models/resnet18_dcf_bsensemble_imgnet.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/models/resnet18_dcf_bsensemble_imgnet.py b/models/resnet18_dcf_bsensemble_imgnet.py index 16a40f1..ea9f078 100644 --- a/models/resnet18_dcf_bsensemble_imgnet.py +++ b/models/resnet18_dcf_bsensemble_imgnet.py @@ -112,7 +112,7 @@ def __init__(self, block, num_blocks, num_classes=10, num_bases=12, num_member=1 self.coeff_list = coeff_list - def add_branch(self, num_outputs, block_expand=0): + def add_branch(self, num_outputs): """ add a set of new modules that form another branch """ @@ -200,4 +200,4 @@ def forward(self, x, task_id=None): def Net(**args): - return ResNet(BasicBlock, [2,2,2,2], **args) \ No newline at end of file + return ResNet(BasicBlock, [2,2,2,2], **args) From 2afc1a36bc78130f2d6dce540326214dbc47a050 Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:55:23 +0530 Subject: [PATCH 5/7] Update train_dcfens_cifar100_CI.py --- train_dcfens_cifar100_CI.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/train_dcfens_cifar100_CI.py b/train_dcfens_cifar100_CI.py index bdbc0d6..c532965 100644 --- a/train_dcfens_cifar100_CI.py +++ b/train_dcfens_cifar100_CI.py @@ -102,7 +102,7 @@ def train(train_loader, epoch, task, model, total_epoch): train_loss = 0 correct = 0 total = 0 - # targets_all = [] + targets_all = [] previous_cls = sum(class_increments[:task]) for batch_idx, (inputs, targets) in enumerate(train_loader): @@ -114,7 +114,7 @@ def train(train_loader, epoch, task, model, total_epoch): bs = inputs.shape[0] outputs, feat_current = model(torch.cat([inputs] * args.num_member, dim=0), task_id=task) outputs = outputs.split(bs) - # targets_all.append(targets) + targets_all.append(targets) loss = torch.sum(torch.stack([criterion(outputs_, targets) for outputs_ in outputs], dim=0), dim=0) loss.backward() From f4fe42e9cef37f6c56c07e5e21b15441c79d938d Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 11:59:40 +0530 Subject: [PATCH 6/7] Update Conv_DCFE.py --- models/Conv_DCFE.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/models/Conv_DCFE.py b/models/Conv_DCFE.py index f0a9ba8..06a9bb1 100644 --- a/models/Conv_DCFE.py +++ b/models/Conv_DCFE.py @@ -94,12 +94,15 @@ def extra_repr(self): ', bases_grad={bases_grad}, mode={mode}, in_channels={in_channels}, out_channels={out_channels}'.format(**self.__dict__) - -if __name__ == '__main__': - layer = Conv_DCFDE(1, 3, kernel_size=3, padding=1, stride=2).cuda() - # layer = nn.Conv2d(3, 10, kernel_size=3, padding=1, stride=2).cuda() - data = torch.randn(1 , 1, 4, 4).cuda() - print(layer(data)) - print(layer(data)) +### +### The below lines are commented out because unless Conv_DCFDE doesn't get initiated with coef instance variable, it will return +### an error at line #68 because they aren't defined. coef variables are alpha in the paper: See fig 1. Page no - 2. +### +#if __name__ == '__main__': +# layer = Conv_DCFDE(1, 3, kernel_size=3, padding=1, stride=2).cuda() +# # layer = nn.Conv2d(3, 10, kernel_size=3, padding=1, stride=2).cuda() +# data = torch.randn(1 , 1, 4, 4).cuda() +# print(layer(data)) +# print(layer(data)) From 1e68e90acc90adc53ea86056f5cb623b3e879f49 Mon Sep 17 00:00:00 2001 From: Abhas Kumar Sinha <31654395+abhaskumarsinha@users.noreply.github.com> Date: Wed, 5 Jul 2023 12:55:10 +0530 Subject: [PATCH 7/7] Update Conv_DCFE.py --- models/Conv_DCFE.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/Conv_DCFE.py b/models/Conv_DCFE.py index 06a9bb1..8fee4a0 100644 --- a/models/Conv_DCFE.py +++ b/models/Conv_DCFE.py @@ -96,7 +96,7 @@ def extra_repr(self): ### ### The below lines are commented out because unless Conv_DCFDE doesn't get initiated with coef instance variable, it will return -### an error at line #68 because they aren't defined. coef variables are alpha in the paper: See fig 1. Page no - 2. +### an error at line #68 because they aren't defined. coef variables are D in the paper: See fig 1. Page no - 2. ### #if __name__ == '__main__': # layer = Conv_DCFDE(1, 3, kernel_size=3, padding=1, stride=2).cuda()