什麼是卷積神經網路(CNN)
以在輸入上滑動小型濾波器(卷積核)並計算乘積和的卷積層為核心,再疊加池化層等所構成的神經網路。由於同一個濾波器在整個輸入上重複使用,參數比全連接層少得多,並能不受位置影響地取出影像中的輪廓、紋理等局部特徵。用於影像辨識、物件偵測、語音處理等。
日文名稱: 畳み込みニューラルネットワーク(CNN)
「卷積神經網路(CNN)」出現在2領域的2道練習題中(AI硬體與軟體堆疊, 機器學習基礎等)。
這個名詞所屬的領域: 機器學習基礎
以在輸入上滑動小型濾波器(卷積核)並計算乘積和的卷積層為核心,再疊加池化層等所構成的神經網路。由於同一個濾波器在整個輸入上重複使用,參數比全連接層少得多,並能不受位置影響地取出影像中的輪廓、紋理等局部特徵。用於影像辨識、物件偵測、語音處理等。
日文名稱: 畳み込みニューラルネットワーク(CNN)
「卷積神經網路(CNN)」出現在2領域的2道練習題中(AI硬體與軟體堆疊, 機器學習基礎等)。
這個名詞所屬的領域: 機器學習基礎
卷積層例如將3×3的濾波器從影像左上角開始,以固定間隔(步幅)滑動,計算重疊的像素與濾波器權重的乘積和,產生特徵圖。輸出大小可用輸入大小N、濾波器大小F、填充P、步幅S表示為 (N + 2P − F) ÷ S + 1。一層會使用多個濾波器,各自取出垂直輪廓、水平輪廓、顏色變化等不同的特徵。越深的層,越會對眼睛、車輪等大而複雜的特徵產生反應。
對3通道輸入使用64個3×3濾波器的卷積層,參數為 3 × 3 × 3 × 64 + 64 = 1792個,與輸入影像的大小無關。若把同樣32×32×3的影像接到有64個輸出的全連接層,需要 32 × 32 × 3 × 64 + 64 = 196672個參數。只看鄰近的像素(局部連接),以及在整體上重複使用同一個濾波器(權重共享),使其能以少量參數有效率地學習。
池化層以2×2等區域為單位取最大值(最大池化)或平均值來縮小資料,減少計算量,並使網路不易受位置微小偏移的影響。典型的CNN會堆疊數組卷積層、啟動函數(ReLU等)與池化層,最後以全連接層與softmax函數進行分類。使用讓訊號跳過層傳遞的殘差連接,即使是超過100層的深層網路也能訓練。
許多框架所稱的卷積,嚴格來說是不翻轉濾波器而直接取乘積和的互相關運算。由於濾波器的權重是透過學習決定的,是否翻轉不會影響模型的性能。
可以。語音波形與時間序列資料使用一維卷積,影片與醫學立體影像使用三維卷積。適合用於相鄰資料之間有關聯、排列成格狀的資料。
例如,以大量影像訓練的CNN中靠近輸入的層能取出輪廓、紋理等一般特徵,因此可以只更換輸出層並針對新任務訓練,或以小的學習率重新訓練整個網路(微調)。
將以大量資料訓練好的模型,用少量資料運用到其他任務的遷移學習,下列敘述何者適當?摺積(卷積) 張量核心(Tensor core) 遷移學習(Transfer learning) 主成分分析(PCA) 正規化(Regularization) 交叉驗證(Cross-validation) 非監督式學習(Unsupervised learning) 強化學習(Reinforcement learning) 啟動函數(Activation function) 梯度下降法(Gradient descent)