Keras 2 API 文档 / Keras 应用 / EfficientNet B0 到 B7

EfficientNet B0 到 B7

[源码]

EfficientNetB0 函数

tf_keras.applications.EfficientNetB0(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB0 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB1 函数

tf_keras.applications.EfficientNetB1(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB1 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB2 函数

tf_keras.applications.EfficientNetB2(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB2 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB3 函数

tf_keras.applications.EfficientNetB3(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB3 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB4 函数

tf_keras.applications.EfficientNetB4(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB4 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB5 函数

tf_keras.applications.EfficientNetB5(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB5 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB6 函数

tf_keras.applications.EfficientNetB6(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB6 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。


[源码]

EfficientNetB7 函数

tf_keras.applications.EfficientNetB7(
    include_top=True,
    weights="imagenet",
    input_tensor=None,
    input_shape=None,
    pooling=None,
    classes=1000,
    classifier_activation="softmax",
    **kwargs
)

实例化 EfficientNetB7 架构。

参考

此函数返回一个 TF-Keras 图像分类模型,可选择加载在 ImageNet 上预训练的权重。

有关图像分类用例,请参阅此页面上的详细示例

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

注意:每个 TF-Keras Application 都需要特定的输入预处理。对于 EfficientNet,输入预处理已作为模型的一部分包含在内(作为一个 Rescaling 层),因此 tf.keras.applications.efficientnet.preprocess_input 实际上是一个直通函数。EfficientNet 模型期望其输入是像素值为 [0-255] 范围内的浮点张量。

参数

  • include_top: 是否包含网络顶部的全连接层。默认为 True
  • weights: 以下之一:None (随机初始化)、'imagenet' (在 ImageNet 上进行预训练),或要加载的权重文件的路径。默认为 'imagenet'。
  • input_tensor: 可选的 TF-Keras 张量 (即 layers.Input() 的输出),用作模型的图像输入。
  • input_shape: 可选的形状元组,仅在 include_top 为 False 时指定。它必须恰好有 3 个输入通道。
  • pooling: 可选的池化模式,用于在 include_topFalse 时进行特征提取。默认为 None
    • None 意味着模型的输出将是最后一个卷积层的 4D 张量输出。
    • avg 意味着将对最后一个卷积层的输出应用全局平均池化,因此模型的输出将是一个 2D 张量。
    • max 意味着将应用全局最大池化。
  • classes: 可选的图像分类类别数,仅在 include_top 为 True 且未指定 weights 参数时指定。ImageNet 有 1000 个类别。默认为 1000
  • classifier_activation: 一个 str 或可调用对象。用于“顶部”层的激活函数。除非 include_top=True,否则将被忽略。设置为 classifier_activation=None 可返回“顶部”层的 logits。默认为 'softmax'。加载预训练权重时,classifier_activation 只能为 None"softmax"

返回

一个 keras.Model 实例。