藍色電路板背景上的大腦,象徵預訓練模型的特徵提取

← INSIGHTS & PERSPECTIVES | 機器學習

如何從預先訓練的模型中提取特徵

從預訓練模型(如 ResNet50、VGG16)中提取特徵是遷移學習的核心技術。本文以 ImageNet 圖像分類為例,說明特徵提取的原理、為什麼要固定前面層、以及五個實作步驟,讓小資料集也能訓練出好模型。

這篇文章要解決的問題是:如何從一個已經訓練好的模型(預訓練模型)中,提取出我們感興趣的資料特徵。如果你手上只有小資料集,卻想快速訓練出效果不錯的模型,特徵提取(Feature Extraction)加上遷移學習正是最實用的做法。

什麼是預訓練模型?

預訓練模型就像是一個已經受過良好教育的人,他對很多事情都有基本的認識。在機器學習中,預訓練模型是指在一個非常大且多樣的資料集上訓練過的模型。例如,一個圖像識別的預訓練模型可能已經看過數百萬張圖片,因此它對各種物體、場景都有很深的理解。

我們可以將整個預訓練的模型看作是一個特徵提取器:將輸入數據丟入預訓練模型中,然後使用模型的最後一層輸出(通常是分類層)作為特徵。

為什麼要提取特徵?

  • 加速模型訓練:如果我們有一個新的任務,但資料量不夠大,直接訓練一個新的模型可能會效果不佳。這時,我們可以利用預訓練模型提取出來的特徵作為新模型的輸入。因為這些特徵已經包含了大量有用的資訊,新模型只需要學習如何將這些特徵組合起來,就能達到不錯的效果。
  • 理解模型:通過分析提取出來的特徵,我們可以更好地了解模型是如何工作的,哪些特徵對模型的預測結果影響最大。
  • 遷移學習:將一個模型在一個任務上學到的知識,應用到另一個相關的任務上。

如何用 ImageNet 預訓練模型進行圖像分類?

情境:假設我們有一個小型的新數據集,包含貓、狗和馬的圖片,我們希望訓練一個模型來區分這三種動物。我們可以利用 ImageNet 預訓練模型來加速這個過程。ImageNet 是一個非常大的圖像數據集,包含數百萬張圖片和數千個類別。

具體步驟如下:

  1. 選擇預訓練模型:選擇一個在 ImageNet 上訓練好的 CNN 模型,例如 ResNet50 或 VGG16。這些模型已經學習到了圖像中常見的低層特徵(如邊緣、紋理)和高層特徵(如物體的形狀、位置)。
  2. 移除最後一層:這些模型的最後一層通常是一個全連接層,用於輸出 ImageNet 中的所有類別。由於我們的任務只有三個類別,所以我們將這一層移除。
  3. 添加新的分類器:在移除的層之後,添加一個新的全連接層,輸出節點數為 3(貓、狗、馬),並初始化隨機權重。
  4. 固定前面的層:為了保留預訓練模型學到的豐富特徵,可以將前面的層的權重固定住,只訓練新添加的分類器。
  5. 訓練模型:使用我們的小型數據集對模型進行訓練。由於前面的層已經學習到了很多有用的特徵,因此只需要很少的迭代次數就能達到不錯的效果。

為什麼這麼做有效?

  • ImageNet 預訓練模型已經學習到了圖像中非常豐富的通用特徵,例如邊緣、紋理、物體的形狀等。這些特徵對於我們的任務(貓、狗、馬的分類)也非常有用。
  • 固定前面的層可以大大減少需要訓練的參數數量,加速訓練過程,並且可以防止過度擬合。
  • 只訓練最後一層可以讓我們快速適應新的任務,而不需要從頭開始訓練一個全新的模型。

提取特徵的常見應用場景

場景說明
小數據集的分類問題當訓練數據不足時,使用預訓練模型可以提高模型的泛化能力
遷移學習將一個模型在一個任務上學到的知識,遷移到另一個相關的任務上
特徵可視化通過分析提取的特徵,可以更好地理解模型的工作原理

從預訓練模型中提取特徵是一種非常有效的技術,可以幫助我們在各種機器學習任務中取得更好的效果。關鍵在於選擇適合的預訓練模型,並根據具體的任務進行適當的調整。

延伸閱讀

常見問題

Q什麼是預訓練模型?

預訓練模型是在非常大且多樣的資料集上訓練過的模型,例如在 ImageNet 數百萬張圖片上訓練的 ResNet50。它已經學會了邊緣、紋理、形狀等通用特徵,可以直接拿來當作新任務的基礎。

Q特徵提取和遷移學習有什麼關係?

特徵提取是遷移學習的常見實作方式:把預訓練模型當作固定的特徵提取器,只訓練接在新任務上的分類層。這樣就能把模型在原任務學到的知識遷移到新任務上。

Q什麼時候應該固定預訓練模型前面的層?

當新任務的資料量小、且和預訓練資料集相似時,固定前面的層效果最好。這樣可以減少要訓練的參數數量、加速訓練,也能防止小資料集造成過度擬合。

Q有哪些常用的預訓練模型可以選擇?

圖像任務常用在 ImageNet 上訓練好的 CNN 模型,例如 ResNet50、VGG16;Keras 和 TensorFlow 都內建了這些模型與權重,幾行程式碼就能載入使用。

參考資料

最後更新

2026-08-28(原文發布於 2023-01-11,本文保留原始筆記內容並補上 GEO 結構。)

關於作者 {#author}

Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。

首次發布:2023-01-11