在之前的文章中(卷積神經網絡中為什么會有矩陣乘法?),我們提到的情形是只有一個通道的輸入數據,相應的,也就只有一個與之對應的Kernel。如果是多通道輸入數據,是否依然存在矩陣乘法呢?我們看下面的例子。
在這個例子中,有3個輸入通道(RGB),每個通道有與之對應的Kernel,此時的卷積運算并沒有本質的變化,就每個通道而言,仍然是二維濾波器。將每個通道的輸出結果對應元素相加即為多通道情形下的卷積結果。這里可以設置偏置(Bias)。圖中的偏置值為1。此時,輸入為多通道,輸出為單通道。
進一步擴展,如果每個通道有多個與之對應的Kernel,會是什么情形呢?如下圖所示。圖中,每個通道有4個Kernel。從而,最終輸出有4個通道。輸出每個通道的計算方式與上圖保持一致。
基于以上兩圖,我們不難得出如下結論:
輸入通道與Kernel通道保持一致,例如上圖中有3個輸入通道和3個Kernel通道。
輸出通道個數與每個Kernel通道內的濾波器個數一致,例如上圖中每個Kernel通道內有4個濾波器,故輸出通道個數為4。
每個輸出通道所包含的元素個數與滑窗個數一致。這再次證明多通道本質上與單通道的卷積運算是一致的。
現在,我們對輸入通道數據進行重組,如下圖所示方式。取出每個通道滑窗內的數據,排成一列,最終構成一個矩陣。
緊接著,將每個通道對應的Kernel也進行重組,如下圖所示方式。最終形成Kernel矩陣。與輸入通道數據重組不同的是這里將Kernel系數按行排列,每個Kernel通道內濾波器的個數決定了行數。
至此,輸入數據和Kernel系數都被重組為矩陣,重組的目的就是為了滿足矩陣運算的需求,這樣就可以按照矩陣乘法計算卷積運算了。
責任編輯:lq
-
濾波器
+關注
關注
162文章
8051瀏覽量
180813 -
神經網絡
+關注
關注
42文章
4804瀏覽量
102626 -
矩陣
+關注
關注
0文章
428瀏覽量
34986
原文標題:再談卷積神經網絡中為什么會有矩陣乘法
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
TXB0108輸入數據為100Mbps時會存在什么問題?
ADS1118如果雙通道同時采樣時就是兩個通道亂跳 ,數據是對的,但是通道不對應怎么辦呢?
求助,LMX2572LP參考時鐘路徑中的乘法器MULT的輸入頻率范圍問題求解
OPA1622處于關斷模式下,此時輸入引腳依然存在前一級的音頻信號輸入,這樣會對前一級IC存在什么影響呢?
多通道數據采集卡各通道不獨立的原因
多通道數據采集器的作用有哪些
多通道數據采集系統的設計的意義
DAC8812雙通道、串行輸入16位乘法數模轉換器數據表

評論