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 個全連接層。
  • weights:以下其中一個值:None(隨機初始化)、"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_activation:一個 str 或可呼叫物件。用於「頂部」層的啟動函數。除非 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 個全連接層。
  • weights:以下其中一個值:None(隨機初始化)、"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_activation:一個 str 或可呼叫物件。用於「頂部」層的啟動函數。除非 include_top=True,否則將忽略。將 classifier_activation=None 設定為返回「頂部」層的 logits。當載入預訓練權重時,classifier_activation 只能是 None"softmax"
  • name:模型的名稱(字串)。

返回

一個模型實例。