一般人聽到CNN一定會覺得,這是新聞頻道呀,而我們今天要介紹新聞頻道?
其實不是,我們今天要介紹的是Convolutional Neural Network(CNN)
根據維基百科的描述
卷積神經網路(Convolutional Neural Network, CNN)是一種前饋神經網路,它的人工神經元可以回應一部分覆蓋範圍內的周圍單元,[1]對於大型圖像處理有出色表現。
而CNN是一種深度學習,透過類神經網路來學習資料特徵,類神經網路就像是模仿人類的神經網路,來模擬人類的學習行為。
我們來介紹CNN是如何運作的,假設現在我們輸入一張圖片(Input Image),這張圖片為5X5的大小,而Kernel Map為3X3,Kernel Map是抽取特徵使用的,可以想像一張圖片被Kernel Map一一的掃描做特徵抽取。
假設現在只有一層卷積層,而Stride設為1,Stride就是Kernel Map掃描的跳躍格子數。
我們會把Kernel Map覆蓋再輸入圖片上,如圖一最左邊那樣,接著抽取特徵,計算方法為每一個被Kernel Map覆蓋的數值相乘做相加,全部計算完後,把整個Kernel Map往右移動一格(因為Stride為1),如圖二。
等全部都完成後,再送入激勵函式進行非線性轉換,最後會得到特徵圖(Feature map)。
可以做影像辨識的工作,例如可以透過CNN來分辨這個人是誰?,或者分辨這個人是否有戴口罩。
CNN也可以用來做音訊的分類,因為音訊轉為頻譜圖後,就類似圖片。
激勵函式(Activation Function)主要是用來加入非線性要素,使得模型具有非線性的分辨力。
今天我們學習到CNN的作法以及應用