VGGNet (2014) Karen Simonyan, Andrew Zisserman
https://arxiv.org/pdf/1409.1556
VGG (Visual Geometry Group, Oxford 연구실) 에서 나와서 VGGNet.
히든 레이어를 깊게 쌓아서 모델의 성능을 올리고자 하였고, 큰 사이즈의 컨볼루션 연산을 작은 사이즈 컨볼루션 필터링 여러번으로 대체하여 연산량을 감소시켰다.
하지만, Fully connected layer에 대한 파라미터 최적화가 수행되지 않아서 모델의 전체적인 파라미터 갯수는 굉장히 많은 편이다.
작은 컨볼루션 필터와 Max pooling, ReLU, FC layer를 활용하여 단순하지만 깊게 쌓은 모델이고, Feature map에 대한 LRN이 큰 의미가 없다는 것을 실험 결과로 보여주었다.
input image: 224x224x3
conv1 = Conv2d(3,64,3) stride=1, padding=1 # x,y size keeping
ReLU(conv1)
pool2 = MaxPool2d(2) stride=2
conv3 = Conv2d(64,128,3) stride=1, padding=1
ReLU(conv3)
pool4 = MaxPool2d(2) stride=2
conv5 = Conv2d(128,256,3) stride=1, padding=1
ReLU(conv5)
conv6 = Conv2d(256,256,3) stride=1, padding=1
ReLU(conv6)
pool7 = MaxPool2d(2) stride=2
conv8 = Conv2d(256,512,3) stride=1, padding=1
ReLU(conv8)
conv9 = Conv2d(512,512,3) stride=1, padding=1
ReLU(conv9)
pool10 = MaxPool2d(2) stride=2
conv11 = Conv2d(512,512,3) stride=1, padding=1
ReLU(conv11)
conv12 = Conv2d(512,512,3) stride=1, padding=1
ReLU(conv12)
pool13 = MaxPool2d(2) stride=2
Flatten(8x8x512)
fc14 = Linear(7x7x512, 4096)
ReLU(fc14)
Dropout(0.5)
fc15 = Linear(4096, 4096)
ReLU(fc15)
Dropout(0.5)
output = Linear(4096, 1000)
Softmax(output)