Keras 3 API 文档 / Keras 应用程序 / VGG16 和 VGG19

VGG16 和 VGG19

[源代码]

VGG16 函数

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

实例化 VGG16 模型。

参考

有关图像分类用例,请参阅 此页面以获取详细示例

有关迁移学习用例,请务必阅读 迁移学习和微调指南

此模型的默认输入大小为 224x224。

注意:每个 Keras 应用程序都期望一种特定类型的输入预处理。对于 VGG16,在将输入传递给模型之前,请在您的输入上调用 keras.applications.vgg16.preprocess_inputvgg16.preprocess_input 将将输入图像从 RGB 转换为 BGR,然后相对于 ImageNet 数据集对每个颜色通道进行零中心化,而不会进行缩放。

参数

  • include_top:是否包含网络顶部的 3 个全连接层。
  • weightsNone 之一(随机初始化)、"imagenet"(在 ImageNet 上进行预训练)或要加载的权重文件的路径。
  • input_tensor:可选的 Keras 张量(即 layers.Input() 的输出)用作模型的图像输入。
  • input_shape:可选的形状元组,仅在 include_topFalse 时指定(否则输入形状必须为 (224, 224, 3)(使用 channels_last 数据格式)或 (3, 224, 224)(使用 "channels_first" 数据格式)。它应该恰好有 3 个输入通道,宽度和高度不应小于 32。例如 (200, 200, 3) 将是一个有效值。
  • pooling:在 include_topFalse 时用于特征提取的可选池化模式。
    • None 表示模型的输出将是最后一个卷积块的 4D 张量输出。
    • avg 表示全局平均池化将应用于最后一个卷积块的输出,因此模型的输出将是 2D 张量。
    • max 表示将应用全局最大池化。
  • classes:可选的类别数量,用于将图像分类到其中,仅在 include_topTrue 且未指定 weights 参数时指定。
  • classifier_activationstr 或可调用对象。要对“顶部”层使用的激活函数。除非 include_top=True,否则将被忽略。设置 classifier_activation=None 以返回“顶部”层的 logits。加载预训练权重时,classifier_activation 只能是 None"softmax"
  • name:模型的名称(字符串)。

返回值

一个 Model 实例。


[源代码]

VGG19 函数

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

实例化 VGG19 模型。

参考

有关图像分类用例,请参阅 此页面以获取详细示例

有关迁移学习用例,请务必阅读 迁移学习和微调指南

此模型的默认输入大小为 224x224。

注意:每个 Keras 应用程序都期望一种特定类型的输入预处理。对于 VGG19,在将输入传递给模型之前,请在您的输入上调用 keras.applications.vgg19.preprocess_inputvgg19.preprocess_input 将将输入图像从 RGB 转换为 BGR,然后相对于 ImageNet 数据集对每个颜色通道进行零中心化,而不会进行缩放。

参数

  • include_top:是否包含网络顶部的 3 个全连接层。
  • weightsNone 之一(随机初始化)、"imagenet"(在 ImageNet 上进行预训练)或要加载的权重文件的路径。
  • input_tensor:可选的 Keras 张量(即 layers.Input() 的输出)用作模型的图像输入。
  • input_shape:可选的形状元组,仅在 include_topFalse 时指定(否则输入形状必须为 (224, 224, 3)(使用 channels_last 数据格式)或 (3, 224, 224)(使用 "channels_first" 数据格式)。它应该恰好有 3 个输入通道,宽度和高度不应小于 32。例如 (200, 200, 3) 将是一个有效值。
  • pooling:在 include_topFalse 时用于特征提取的可选池化模式。
    • None 表示模型的输出将是最后一个卷积块的 4D 张量输出。
    • avg 表示全局平均池化将应用于最后一个卷积块的输出,因此模型的输出将是 2D 张量。
    • max 表示将应用全局最大池化。
  • classes:可选的类别数量,用于将图像分类到其中,仅在 include_topTrue 且未指定 weights 参数时指定。
  • classifier_activationstr 或可调用对象。要对“顶部”层使用的激活函数。除非 include_top=True,否则将被忽略。设置 classifier_activation=None 以返回“顶部”层的 logits。加载预训练权重时,classifier_activation 只能是 None"softmax"
  • name:模型的名称(字符串)。

返回值

一个模型实例。