CNN

中文名稱:卷積神經網路 英文名稱:Convolutional Neural Network

定義(Definition)

以卷積與池化層為核心的深度學習模型,專長擷取局部空間特徵並在多層堆疊中形成階層式表徵,常用於影像分類、檢測與分割,也能處理時序與語音。

原理與技術

結構組成

  • 卷積層(Convolutional Layer):
    • 透過卷積運算提取數據的局部特徵,例如邊緣、紋理到形狀的階層特徵。
  • 池化層(Pooling Layer):
    • 透過降維操作(如最大池化、平均池化),減少數據維度,防止過擬合。
    • max/avg 縮小尺寸、增加平移不變性,減少參數。
  • 全連接層(Fully Connected Layer):將提取的特徵映射到輸出空間,進行分類或迴歸任務。

優點

  • 適合處理高維數據,參數量相比全連接網路顯著減少。
  • 能夠提取層次化特徵,從低層特徵(如邊緣)到高層語義(如物體形狀)。

額外資料

常見結構包含 卷積層+批次正規化(BatchNorm)+ReLU 的基本組合,並用 殘差(Residual) 或稠密連接(Dense) 避免深層梯度消失。 步幅(Stride)、填補(Padding) 控制特徵圖大小;1x1 卷積 用於降維或跨通道混合。

訓練需考慮 資料增強(Data Augmentation)(翻轉、裁切、顏色抖動)、正則化 (L2/Dropout)、學習率排程與權重衰減。 經典架構有 LeNet、VGG、ResNet、DenseNet、MobileNet、EfficientNet;物件偵測則常用 FPN、Anchor/Anchor-free、NMS。在時序或語音上,可把一維序列視為「時間×頻率」的圖(如 Mel 頻譜),用一維或二維卷積擷取局部模式。部署時可套用 量化、剪枝、蒸餾 讓模型更輕量化。

應用領域

  • 影像分類:醫療影像病灶、瑕疵檢測、品質檢驗。
  • 物件偵測/定位:自動駕駛偵測行人車輛、零件定位、監控異常。
  • 影像分割:工業 AOI、農業病蟲害、醫學語意分割與實例分割。
  • 人臉與行為辨識:門禁、活體檢測、防欺騙。需注意隱私與偏差,並做對抗樣本防禦。
  • 手寫數字分類(MNIST)
  • 語音與時序特徵擷取:以 1D/2D CNN 處理聲學特徵或時間序列異常偵測,常結合 RNN/Transformer 提升長序列表現。
  • 風格轉換與超解析度:用卷積生成器做影像增強或重建,適用於舊照片修復、監控畫面升級。

共同重點:資料前處理與增強對效能影響巨大;需考慮計算量與延遲,推論端可透過模型壓縮與硬體加速。

3 題模擬練習題

  1. 卷積層的主要好處是什麼?
    • A. 參數量與全連接層相同
    • B. 共享權重,擅長抓局部特徵並降低參數
    • C. 只能處理文字
    • D. 只能處理固定大小輸入
    • 正確答案:B
    • 解析:卷積用共享濾波器滑動,能有效擷取局部模式且參數遠低於全連接。
  2. 深層 CNN 容易遇到梯度消失,常見解法?
    • A. 移除所有激活函數
    • B. 使用殘差連接或批次正規化
    • C. 把學習率調到非常大
    • D. 只訓練前面幾層
    • 正確答案:B
    • 解析:殘差捷徑讓梯度直接傳遞,BatchNorm 穩定分佈;其他選項無法根本解決。
  3. 若模型推論延遲過高,可採取?
    • A. 改用更大的卷積核
    • B. 使用輕量化模型、量化或剪枝
    • C. 關閉 GPU
    • D. 只保留最後一層
    • 正確答案:B
    • 解析:MobileNet/EfficientNet、8-bit 量化、剪枝與蒸餾可降低計算量與記憶體需求。