예제 #1
0
def ResNeXt50(include_top=True,
              weights='imagenet',
              input_tensor=None,
              input_shape=None,
              pooling=None,
              classes=1000,
              **kwargs):
    """Instantiates the ResNeXt50 architecture."""
    def stack_fn(x):
        x = stack1(x, 64, 3, stride1=1, groups=32, base_width=4, name='conv2')
        x = stack1(x, 128, 4, groups=32, base_width=4, name='conv3')
        x = stack1(x, 256, 6, groups=32, base_width=4, name='conv4')
        return stack1(x, 512, 3, groups=32, base_width=4, name='conv5')

    return ResNet(stack_fn, False, 'resnext50', include_top, weights,
                  input_tensor, input_shape, pooling, False, None, classes,
                  **kwargs)
예제 #2
0
def WideResNet101(include_top=True,
                  weights='imagenet',
                  input_tensor=None,
                  input_shape=None,
                  pooling=None,
                  classes=1000,
                  **kwargs):
    """Instantiates the Wide-ResNet101-2 architecture."""
    def stack_fn(x):
        x = stack1(x, 64, 3, stride1=1, base_width=128, name='conv2')
        x = stack1(x, 128, 4, base_width=128, name='conv3')
        x = stack1(x, 256, 23, base_width=128, name='conv4')
        return stack1(x, 512, 3, base_width=128, name='conv5')

    return ResNet(stack_fn, False, 'wide_resnet101', include_top, weights,
                  input_tensor, input_shape, pooling, False, None, classes,
                  **kwargs)
예제 #3
0
def ResNet34(include_top=True,
             weights='imagenet',
             input_tensor=None,
             input_shape=None,
             pooling=None,
             classes=1000,
             **kwargs):
    """Instantiates the ResNet34 architecture."""
    def stack_fn(x):
        x = stack3(x, 64, 3, stride1=1, conv_shortcut=False, name='conv2')
        x = stack3(x, 128, 4, name='conv3')
        x = stack3(x, 256, 6, name='conv4')
        return stack3(x, 512, 3, name='conv5')

    return ResNet(stack_fn, False, 'resnet34', include_top, weights,
                  input_tensor, input_shape, pooling, False, None, classes,
                  **kwargs)
예제 #4
0
def ResNeSt50(include_top=True,
              weights='imagenet',
              input_tensor=None,
              input_shape=None,
              pooling=None,
              classes=1000,
              **kwargs):
    """Instantiates the ResNeSt50 architecture."""
    def stack_fn(x):
        x = stack2(x,
                   64,
                   3,
                   stride1=1,
                   base_width=64,
                   radix=2,
                   is_first=False,
                   name='conv2')
        x = stack2(x, 128, 4, base_width=64, radix=2, name='conv3')
        x = stack2(x, 256, 6, base_width=64, radix=2, name='conv4')
        return stack2(x, 512, 3, base_width=64, radix=2, name='conv5')

    return ResNet(stack_fn, False, 'resnest50', include_top, weights,
                  input_tensor, input_shape, pooling, True, 32, classes,
                  **kwargs)