Keras 3 API 文件 / Keras 應用程式 / ResNet 與 ResNetV2

ResNet 與 ResNetV2

[原始碼]

ResNet50 函數

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

實例化 ResNet50 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet.preprocess_inputresnet.preprocess_input 會將輸入影像從 RGB 轉換為 BGR,然後會相對於 ImageNet 資料集將每個顏色通道置中為零,而不進行縮放。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 參數時指定。預設值為 1000
  • classifier_activationstr 或可呼叫物件。要在「頂層」使用的啟動函數。除非 include_top=True,否則會忽略。設定 classifier_activation=None 以傳回「頂層」的 logits。載入預訓練權重時,classifier_activation 只能是 None"softmax"
  • name:模型的名稱 (字串)。

傳回

一個 Model 實例。


[原始碼]

ResNet101 函數

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

實例化 ResNet101 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet.preprocess_inputresnet.preprocess_input 會將輸入影像從 RGB 轉換為 BGR,然後會相對於 ImageNet 資料集將每個顏色通道置中為零,而不進行縮放。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 參數時指定。預設值為 1000
  • classifier_activationstr 或可呼叫物件。要在「頂層」使用的啟動函數。除非 include_top=True,否則會忽略。設定 classifier_activation=None 以傳回「頂層」的 logits。載入預訓練權重時,classifier_activation 只能是 None"softmax"
  • name:模型的名稱 (字串)。

傳回

一個 Model 實例。


[原始碼]

ResNet152 函數

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

實例化 ResNet152 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet.preprocess_inputresnet.preprocess_input 會將輸入影像從 RGB 轉換為 BGR,然後會相對於 ImageNet 資料集將每個顏色通道置中為零,而不進行縮放。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 參數時指定。預設值為 1000
  • classifier_activationstr 或可呼叫物件。要在「頂層」使用的啟動函數。除非 include_top=True,否則會忽略。設定 classifier_activation=None 以傳回「頂層」的 logits。載入預訓練權重時,classifier_activation 只能是 None"softmax"
  • name:模型的名稱 (字串)。

傳回

一個 Model 實例。


[原始碼]

ResNet50V2 函數

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

實例化 ResNet50V2 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet_v2.preprocess_inputresnet_v2.preprocess_input 會將輸入像素縮放到 -1 和 1 之間。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 實例。


[原始碼]

ResNet101V2 函數

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

實例化 ResNet101V2 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet_v2.preprocess_inputresnet_v2.preprocess_input 會將輸入像素縮放到 -1 和 1 之間。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 實例。


[原始碼]

ResNet152V2 函數

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

實例化 ResNet152V2 架構。

參考文獻

關於影像分類的使用案例,請參閱此頁面以取得詳細範例

關於遷移學習的使用案例,請務必閱讀遷移學習與微調指南

注意:每個 Keras 應用程式都期望特定種類的輸入預處理。對於 ResNet,在將輸入傳遞至模型之前,請在您的輸入上呼叫 keras.applications.resnet_v2.preprocess_inputresnet_v2.preprocess_input 會將輸入像素縮放到 -1 和 1 之間。

參數

  • include_top:是否包含網路頂部的全連接層。
  • 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 實例。