def __init__(self, category_num):
super(Googlenet, self).__init__()
modules = []
modules += [('conv1', Conv_BN_ReLU(3, 32, 3, 2, 1))]
modules += [('conv2', Conv_BN_ReLU(32, 32, 3, 1, 0))]
modules += [('conv3', Conv_BN_ReLU(32, 64, 3, 1, 1))]
modules += [('conv4', Conv_BN_ReLU(64, 64, 3, 1, 0))]
modules += [('conv5', Conv_BN_ReLU(64, 80, 3, 2, 1))]
modules += [('conv6', Conv_BN_ReLU(80, 192, 3, 1, 0))]
modules += [('inception_f5_1', Inception_A(192, (64, 96, 96), (48, 64), 32, 64, 'ave', 1))]
modules += [('inception_f5_2', Inception_A(256, (64, 96, 96), (48, 64), 64, 64, 'ave', 1))]
modules += [('inception_f5_3', Inception_A(288, (64, 96, 96), (288, 384), 0, 0, 'max', 2))]
modules += [('inception_f6_1', Inception_B(768, (128, 128, 128, 128, 192), (128, 128, 192), 192, 192, 'ave', 1, 7))]
modules += [('inception_f6_2', Inception_B(768, (160, 160, 160, 160, 192), (160, 160, 192), 192, 192, 'ave', 1, 7))]
modules += [('inception_f6_3', Inception_B(768, (160, 160, 160, 160, 192), (160, 160, 192), 192, 192, 'ave', 1, 7))]
modules += [('inception_f6_4', Inception_B(768, (192, 192, 192, 192, 192), (192, 192, 192), 192, 192, 'ave', 1, 7))]
modules += [('inception_f6_5', Inception_B(768, (192, 192, 192, 192), (192, 320), 0, 0, 'max', 2, 7))]
modules += [('inception_f7_1', Inception_C(1280, (448, 384, 384, 384), (384, 384, 384), 192, 320, 'ave', 3))]
modules += [('inception_f7_2', Inception_C(2048, (448, 384, 384, 384), (384, 384, 384), 192, 320, 'ave', 3))]
modules += [('linear', L.Linear(2048, category_num))]
# register layers
[self.add_link(*link) for link in modules]
self.modules = modules
self.name = 'googlenet_v3_{}'.format(category_num)
评论列表
文章目录