iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用・114 年第二次・L23・第 6 題

CNN 為何比全連接網路更有效率?

原題

某智慧城市團隊開發一套交通監控系統,用於即時辨識路口監視器影像中的車輛與行人。團隊比較後發現,卷積神經網路(Convolutional Neural Network, CNN)在訓練與推論效率上,明顯優於傳統的全連接神經網路(Fully Connected Neural Network, FCNN)。請問下列何者為主要原因?

白話

一個智慧城市團隊比較了 CNN 和全連接神經網路來處理交通監控影像,發現 CNN 在訓練速度和推論效率上明顯勝出。他們在分析勝出的原因。

問你:CNN 效率優於全連接網路的主要原因是什麼?

一句話總結

CNN 比全連接網路高效的核心原因是局部感受野(Local Receptive Field)和參數共享(Parameter Sharing):每個神經元只看影像的一小塊,同一個卷積核在整張影像重複使用,大幅減少參數量和計算量。

情境

先感受問題:1080p 影像有多少像素

台北市交通局在忠孝復興路口裝了 4K 監視器,每格影像 3840×2160 像素,共 8,294,400 個數值(加上 RGB 三個通道,接近 2500 萬個數值)。

如果用全連接神經網路處理這張影像:

  • 輸入層:2500 萬個神經元。
  • 第一層只要 1000 個神經元,每個和輸入全連接 → 參數量 = 2500 萬 × 1000 = 250 億個。
  • 光是一層就需要儲存 250 億個權重,還要全部計算梯度。一台 A100 GPU 連一次前向傳播都跑不完。

這根本不可能用在即時影像辨識系統。必須有更聰明的方法。

舊方法

全連接網路處理影像的問題

  1. 參數爆炸:每個輸入像素連接到每個隱藏神經元,參數量隨影像大小和神經元數量指數成長。
  2. 計算量巨大:前向傳播要做的乘法加法運算量與參數量同等級,大圖根本跑不動。
  3. 忽略空間結構:影像攤平成一維向量,像素的空間相鄰關係(上方、左方)完全消失。
  4. 記憶體需求高:存參數、存梯度、存中間激活值,GPU 記憶體快速耗盡。
  5. 容易過擬合:參數太多而訓練樣本相對少,模型容易記住訓練影像的噪音而非真正特徵。

新方法

CNN 的兩個效率關鍵:局部感受野 + 參數共享

台北交通局的影像辨識系統改用 CNN 後,兩個機制讓參數量從 250 億降到幾百萬:

局部感受野(Local Receptive Field):每個卷積神經元不看整張影像,只看一個 3×3 或 5×5 的小視窗。相鄰的車牌數字一定在空間上相鄰,只要看局部就夠了。

參數共享(Parameter Sharing):同一個卷積核(例如「偵測水平邊緣的濾波器」)在整張影像的每個位置都用同一組權重。一個 3×3 的卷積核只有 9 個參數,卻可以掃過一張 4K 影像的每個位置。

兩個機制加在一起:一層 32 個 3×3 卷積核,總共只需要 32 × 9 = 288 個參數,卻能處理整張 4K 影像,輸出 32 張特徵圖。

這就是選項 C 講的:CNN 透過區域感知(Local Receptive Field)與參數共享(Parameter Sharing)機制,降低模型參數量與運算複雜度。

錯選項

為什麼其他選項是錯的

ACNN 能自動學習影像的旋轉與比例不變性

字面在說什麼

無論影像旋轉多少度或放大縮小,CNN 都能正確識別。

為什麼不對

標準 CNN 對「平移」有一定不變性(因為參數共享),但對旋轉和比例縮放並不具備天然的不變性,除非訓練資料有做旋轉增強或使用特殊架構(如 Spatial Transformer Networks)。這個說法本身也不完全準確,且跟「效率」無關,是個偷換概念的干擾選項。

誰會選錯

知道 CNN 有「不變性」概念但沒仔細看「為何效率高」這個問題的人。不變性是 CNN 的一個性質,不是效率提升的原因。

BCNN 可直接跳過人工特徵提取步驟進行分類

字面在說什麼

傳統方法需要手動設計特徵,CNN 不需要,可以端對端訓練。

為什麼不對

這個說法是正確的(CNN 確實可以端對端學習,不需要手工特徵),但這描述的是 CNN 「能做什麼」,而不是「為什麼比全連接網路更有效率」。跳過人工特徵提取是 CNN 的便利性,不是它參數量少、速度快的原因。

誰會選錯

知道 CNN 不需要手工特徵,就覺得「這就是它更好的原因」的人。題目問的是「效率」(訓練速度、推論速度),不是「方便性」。

DCNN 捨棄激勵函數(Activation Function),以加快運算速度

字面在說什麼

不用激活函數,計算量減少,速度更快。

為什麼不對

完全錯誤。CNN 沒有捨棄激活函數,每一層卷積後通常都接一個 ReLU 激活函數。如果去掉激活函數,多層卷積會退化成一層線性變換,失去學習非線性特徵的能力,模型會完全失效。

誰會選錯

以為「少一個步驟就更快」的人。記住:激活函數是神經網路非線性表達能力的來源,絕對不能省。速度優化是靠減少參數量,不是靠去掉激活函數。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二梯次 iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用 第 6 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。