深度學習 膠囊網路

2021-10-07 03:01:09 字數 1750 閱讀 6557

cnn現存的問題就是池化提供了區域性不變性,但是丟失了位置等資訊。

1和4無法檢測出來。

使用膠囊作為網路的基本單元

計算結果封裝到乙個特徵向量中。用來表示可視實體,包括姿態、方位、大小等。

動態路由演算法代替池化操作,以保留相關的方位資訊。

特徵向量表示可視實體:

實體的存在概率具有區域性不變性:膠囊覆蓋的有限視覺域內的實體變換姿態時,是不變的。

實體的例項化引數具有等變性,由於例項化引數表示實體的姿態座標,因此隨著實體額姿態變化,例項化引數會相應改變。

特徵向量的長度表示實體存在的概率;特徵向量各維特徵表示實體姿態。

**膠囊輸出的例項化引數提供了一種 由部分到整體 的簡單識別方法,由 單個有限視覺域 逐層向上 **,最終形成對目標影象的解析樹。

**連線到下一層時,可以做出乙個簡單的選擇:實體是否能夠由多個啟用的具有正確的空間關係的膠囊表示,並且啟用更高階別的膠囊

使用非線性壓縮(squashing)函式將向量長度限制在0-1,使得特徵向量的長度能夠表示實體存在的概率。

動態路由機制確保每一層的膠囊的輸出的特徵向量被正確地傳送到下一層中對應的膠囊。

耦合係數cij由softmax計算,前一層的膠囊i和下一層中所有膠囊之間的耦合係數的總和為1.

中,?ij為膠囊i應該耦合到膠囊j 的對數先驗概率,取決於 兩個膠囊的型別和位置,與當前的輸入影象無關.

簡單的表明一致性關係的函式就是標量積.

整個路由過程不僅僅是存在於膠囊網路的訓練過 程中,也存在於驗證和測試過程,而且需要迭代多次。

過程就是仿射變換——加權求和——非線性啟用

訓練 耗時,但是對一些位置的影象的效果比較好,還是比較複雜。

實現低階特徵到膠囊多維實體(低階特徵 向量)的轉換。

邊際損失:

為了對多個物件的識別,每類目標物件的膠囊應分別使用邊際損失得到類損失lk,總的邊際損失是所有類損失之和。

?是表示k類目標物件是否存在,0/1

?+是上界,懲罰假陽性,即**k類存在但真實不存在,一般取 0.9; ?-是下界,懲罰假陰性,即**k類不存在但真實存在,一般取 0.1; λ為不存在的物件類別的損失的下調權重,避免開始從不存在 分類對應的膠囊輸出的特徵向量中學習,一般取0.5。

Capsule 膠囊網路學習筆記

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

膠囊網路原理

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

膠囊網路原理

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