膠囊網路原理

2021-09-28 13:45:40 字數 3079 閱讀 8723

膠囊網路原**《dynamic routing between capsules》中給出如下的網路結構:輸入層、卷積層、主膠囊層、數字膠囊層。

圖中輸入為28×28的mnist手寫數字,經過256個9×9步長為1的卷積核得到20×20×256的特徵圖,該層就是普通的卷積神經網路,下一層採用8組9×9×32的卷積核卷積8次,會得到8組6×6×32的特徵圖,然後將每乙個特徵圖展成一維,對應位置組合,一共得到1152個8維的向量神經元,也就是膠囊。最後通過動態路由演算法得到數字膠囊層,數字膠囊層向量的模長大小就是**結果。

下圖即為主膠囊層的計算過程,上一層得到的是20×20×256的特徵圖,接下來用8組9×9×32的卷積核進行步長為2的卷積操作,得到如下圖所示的8組6×6×32的特徵圖,這裡與普通卷積神經網路有了區別。然後將8組特徵圖都展成一維,然後對應位置合併,即可得到1152個膠囊。

下圖展示了動態路由演算法的整個過程。

紅框1:主膠囊層的結果,得到1152個膠囊(向量神經元)

紅框2:乙個全連線結構,一共10行,每行相當於1152個膠囊對該類別的貢獻,對應於原**公式2

紅框3:c_ij是b_ij通過softmax得到,加權時候每行相加就得到s_i

紅框4:向量壓縮結果,通過squashing函式將模長壓縮到0-1之間,對應原**公式1

以上四步是動態路由前向傳播,下圖中藍色向量代表紅框2中的某一行膠囊的部分向量,紅色箭頭代表s_i,也就是最終所有向量共同作用的結果。

動態路由演算法的權重更新公式如下:

b_ij=b_ij+u_ji · v_j

向量積的特點就是夾角θ越小,向量積越大,夾角為90°,向量積為0,大於90°為負,u_ji相當於單個膠囊的個人**,v_j是所有膠囊共同作用的結果,所以向量積的大小代表了該膠囊對最終結果的一致程度,也就是耦合程度,如果向量積為負,耦合程度應該變小,如果向量積為正,耦合程度應該變大,這個更新公式正好實現,也就是原**偽**最後一行對應的公式。

tk表示k類是否存在,存在為1,不存在為0

m+ 為0.9,懲罰假陽性,k類存在但是**不存在會導致損失函式很大

m− 為0.1,懲罰假陰性,k類不存在但是**存在,會導致損失函式很大

由兩部分組成,第一部分是間隔損失,第二部分是用原的28×28個畫素減去重構的28×28個畫素然後取平方和然後乘0.005,間隔損失佔主要地位。

膠囊網路原**《dynamic routing between capsules》中給出如下的網路結構:輸入層、卷積層、主膠囊層、數字膠囊層。

圖中輸入為28×28的mnist手寫數字,經過256個9×9步長為1的卷積核得到20×20×256的特徵圖,該層就是普通的卷積神經網路,下一層採用8組9×9×32的卷積核卷積8次,會得到8組6×6×32的特徵圖,然後將每乙個特徵圖展成一維,對應位置組合,一共得到1152個8維的向量神經元,也就是膠囊。最後通過動態路由演算法得到數字膠囊層,數字膠囊層向量的模長大小就是**結果。

下圖即為主膠囊層的計算過程,上一層得到的是20×20×256的特徵圖,接下來用8組9×9×32的卷積核進行步長為2的卷積操作,得到如下圖所示的8組6×6×32的特徵圖,這裡與普通卷積神經網路有了區別。然後將8組特徵圖都展成一維,然後對應位置合併,即可得到1152個膠囊。

下圖展示了動態路由演算法的整個過程。

紅框1:主膠囊層的結果,得到1152個膠囊(向量神經元)

紅框2:乙個全連線結構,一共10行,每行相當於1152個膠囊對該類別的貢獻,對應於原**公式2

紅框3:c_ij是b_ij通過softmax得到,加權時候每行相加就得到s_i

紅框4:向量壓縮結果,通過squashing函式將模長壓縮到0-1之間,對應原**公式1

以上四步是動態路由前向傳播,下圖中藍色向量代表紅框2中的某一行膠囊的部分向量,紅色箭頭代表s_i,也就是最終所有向量共同作用的結果。

動態路由演算法的權重更新公式如下:

b_ij=b_ij+u_ji · v_j

向量積的特點就是夾角θ越小,向量積越大,夾角為90°,向量積為0,大於90°為負,u_ji相當於單個膠囊的個人**,v_j是所有膠囊共同作用的結果,所以向量積的大小代表了該膠囊對最終結果的一致程度,也就是耦合程度,如果向量積為負,耦合程度應該變小,如果向量積為正,耦合程度應該變大,這個更新公式正好實現,也就是原**偽**最後一行對應的公式。

tk表示k類是否存在,存在為1,不存在為0

m+ 為0.9,懲罰假陽性,k類存在但是**不存在會導致損失函式很大

m− 為0.1,懲罰假陰性,k類不存在但是**存在,會導致損失函式很大

由兩部分組成,第一部分是間隔損失,第二部分是用原的28×28個畫素減去重構的28×28個畫素然後取平方和然後乘0.005,間隔損失佔主要地位。

膠囊網路原理

膠囊網路原 dynamic routing between capsules 中給出如下的網路結構 輸入層 卷積層 主膠囊層 數字膠囊層。圖中輸入為28 28的mnist手寫數字,經過256個9 9步長為1的卷積核得到20 20 256的特徵圖,該層就是普通的卷積神經網路,下一層採用8組9 9 32...

深度學習 膠囊網路

cnn現存的問題就是池化提供了區域性不變性,但是丟失了位置等資訊。1和4無法檢測出來。使用膠囊作為網路的基本單元。計算結果封裝到乙個特徵向量中。用來表示可視實體,包括姿態 方位 大小等。動態路由演算法代替池化操作,以保留相關的方位資訊。特徵向量表示可視實體 實體的存在概率具有區域性不變性 膠囊覆蓋的...

Capsule 膠囊網路學習筆記

以前鄒班的smt沒認真聽,還得重新回來撿。參考自 cnn的缺點 忽略了中的位置資訊,如果在中檢測到眼睛鼻子等,就認為這是一張人臉,但如果把這些器官打亂,還是會誤識別為人臉,這是cnn中max pooling的特性造成的。如上圖所示,我們通俗的將每個神經元的輸出理解為這張圖具有此特徵的可能性 接近1就...