ยป Keras API reference / Keras Applications / VGG16 and VGG19

VGG16 and VGG19

VGG16 function

tf.keras.applications.VGG16(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
)

Instantiates the VGG16 model.

Reference paper: - Very Deep Convolutional Networks for Large-Scale Image Recognition (ICLR 2015)

By default, it loads weights pre-trained on ImageNet. Check 'weights' for other options.

This model can be built both with 'channels_first' data format (channels, height, width) or 'channels_last' data format (height, width, channels).

The default input size for this model is 224x224.

Caution: Be sure to properly pre-process your inputs to the application. Please see applications.vgg16.preprocess_input for an example.

Arguments

  • include_top: whether to include the 3 fully-connected layers at the top of the network.
  • weights: one of None (random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.
  • input_tensor: optional Keras tensor (i.e. output of layers.Input()) to use as image input for the model.
  • input_shape: optional shape tuple, only to be specified if include_top is False (otherwise the input shape has to be (224, 224, 3) (with channels_last data format) or (3, 224, 224) (with channels_first data format). It should have exactly 3 input channels, and width and height should be no smaller than 32. E.g. (200, 200, 3) would be one valid value.
  • pooling: Optional pooling mode for feature extraction when include_top is False. - None means that the output of the model will be the 4D tensor output of the last convolutional block. - avg means that global average pooling will be applied to the output of the last convolutional block, and thus the output of the model will be a 2D tensor. - max means that global max pooling will be applied.
  • classes: optional number of classes to classify images into, only to be specified if include_top is True, and if no weights argument is specified.
  • classifier_activation: A str or callable. The activation function to use on the "top" layer. Ignored unless include_top=True. Set classifier_activation=None to return the logits of the "top" layer.

Returns

A keras.Model instance.

Raises

  • ValueError: in case of invalid argument for weights, or invalid input shape.
  • ValueError: if classifier_activation is not softmax or None when using a pretrained top layer.

VGG19 function

tf.keras.applications.VGG19(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
)

Instantiates the VGG19 architecture.

Reference

By default, it loads weights pre-trained on ImageNet. Check 'weights' for other options.

This model can be built both with 'channels_first' data format (channels, height, width) or 'channels_last' data format (height, width, channels).

The default input size for this model is 224x224.

Caution: Be sure to properly pre-process your inputs to the application. Please see applications.vgg19.preprocess_input for an example.

Arguments

  • include_top: whether to include the 3 fully-connected layers at the top of the network.
  • weights: one of None (random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.
  • input_tensor: optional Keras tensor (i.e. output of layers.Input()) to use as image input for the model.
  • input_shape: optional shape tuple, only to be specified if include_top is False (otherwise the input shape has to be (224, 224, 3) (with channels_last data format) or (3, 224, 224) (with channels_first data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g. (200, 200, 3) would be one valid value.
  • pooling: Optional pooling mode for feature extraction when include_top is False.
    • None means that the output of the model will be the 4D tensor output of the last convolutional block.
    • avg means that global average pooling will be applied to the output of the last convolutional block, and thus the output of the model will be a 2D tensor.
    • max means that global max pooling will be applied.
  • classes: optional number of classes to classify images into, only to be specified if include_top is True, and if no weights argument is specified.
  • classifier_activation: A str or callable. The activation function to use on the "top" layer. Ignored unless include_top=True. Set classifier_activation=None to return the logits of the "top" layer.

Returns

A keras.Model instance.

Raises

  • ValueError: in case of invalid argument for weights, or invalid input shape.
  • ValueError: if classifier_activation is not softmax or None when using a pretrained top layer.