Skip to content

Commit 39ae9ba

Browse files
committed
update lesson45
1 parent e2ba443 commit 39ae9ba

File tree

7 files changed

+64
-49
lines changed

7 files changed

+64
-49
lines changed

lesson45-Cifar10与ResNet18实战/.idea/Cifar10与ResNet18实战.iml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson45-Cifar10与ResNet18实战/.idea/encodings.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson45-Cifar10与ResNet18实战/.idea/inspectionProfiles/Project_Default.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson45-Cifar10与ResNet18实战/.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson45-Cifar10与ResNet18实战/.idea/workspace.xml

Lines changed: 28 additions & 33 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson45-Cifar10与ResNet18实战/main.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,17 @@ def main():
1212

1313
cifar_train = datasets.CIFAR10('cifar', True, transform=transforms.Compose([
1414
transforms.Resize((32, 32)),
15-
transforms.ToTensor()
15+
transforms.ToTensor(),
16+
transforms.Normalize(mean=[0.485, 0.456, 0.406],
17+
std=[0.229, 0.224, 0.225])
1618
]), download=True)
1719
cifar_train = DataLoader(cifar_train, batch_size=batchsz, shuffle=True)
1820

1921
cifar_test = datasets.CIFAR10('cifar', False, transform=transforms.Compose([
2022
transforms.Resize((32, 32)),
21-
transforms.ToTensor()
23+
transforms.ToTensor(),
24+
transforms.Normalize(mean=[0.485, 0.456, 0.406],
25+
std=[0.229, 0.224, 0.225])
2226
]), download=True)
2327
cifar_test = DataLoader(cifar_test, batch_size=batchsz, shuffle=True)
2428

lesson45-Cifar10与ResNet18实战/resnet.py

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -57,20 +57,20 @@ def __init__(self):
5757
super(ResNet18, self).__init__()
5858

5959
self.conv1 = nn.Sequential(
60-
nn.Conv2d(3, 16, kernel_size=3, stride=3, padding=0),
61-
nn.BatchNorm2d(16)
60+
nn.Conv2d(3, 64, kernel_size=3, stride=3, padding=0),
61+
nn.BatchNorm2d(64)
6262
)
6363
# followed 4 blocks
6464
# [b, 64, h, w] => [b, 128, h ,w]
65-
self.blk1 = ResBlk(16, 32, stride=2)
65+
self.blk1 = ResBlk(64, 128, stride=2)
6666
# [b, 128, h, w] => [b, 256, h, w]
67-
self.blk2 = ResBlk(32, 64, stride=2)
67+
self.blk2 = ResBlk(128, 256, stride=2)
6868
# # [b, 256, h, w] => [b, 512, h, w]
69-
self.blk3 = ResBlk(64, 128, stride=2)
69+
self.blk3 = ResBlk(256, 512, stride=2)
7070
# # [b, 512, h, w] => [b, 1024, h, w]
71-
self.blk4 = ResBlk(128, 256, stride=2)
71+
self.blk4 = ResBlk(512, 512, stride=2)
7272

73-
self.outlayer = nn.Linear(256*1*1, 10)
73+
self.outlayer = nn.Linear(512*1*1, 10)
7474

7575
def forward(self, x):
7676
"""
@@ -86,7 +86,11 @@ def forward(self, x):
8686
x = self.blk3(x)
8787
x = self.blk4(x)
8888

89-
# print(x.shape)
89+
90+
# print('after conv:', x.shape) #[b, 512, 2, 2]
91+
# [b, 512, h, w] => [b, 512, 1, 1]
92+
x = F.adaptive_avg_pool2d(x, [1, 1])
93+
# print('after pool:', x.shape)
9094
x = x.view(x.size(0), -1)
9195
x = self.outlayer(x)
9296

@@ -96,17 +100,19 @@ def forward(self, x):
96100

97101

98102
def main():
99-
blk = ResBlk(64, 128)
103+
104+
blk = ResBlk(64, 128, stride=4)
100105
tmp = torch.randn(2, 64, 32, 32)
101106
out = blk(tmp)
102107
print('block:', out.shape)
103108

104-
109+
x = torch.randn(2, 3, 32, 32)
105110
model = ResNet18()
106-
tmp = torch.randn(2, 3, 32, 32)
107-
out = model(tmp)
111+
out = model(x)
108112
print('resnet:', out.shape)
109113

110114

115+
116+
111117
if __name__ == '__main__':
112118
main()

0 commit comments

Comments
 (0)