iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0
AI & Data

Attention到底在關注什麼?系列 第 4

Day 4 Matrix capsules with EM routing

前言

接續著昨天講到的EM routing,今天來將EM routing做進一步的解釋

EM routing

將向量的輸入輸出改為使用矩陣來做運算處理,協議動態膠囊路由也需要替換成最大期望值演算法(expectation maximaiztion algorithm),若在兩個姿勢向量(pose vector)中使用cosine做運算,並沒有辦法處理得非常好。最大期望值路由演算法(EM routing algorithm)會利用具有多層膠囊的膠囊網路讓其運作起來更有效率。

主要層的膠囊表示為https://chart.googleapis.com/chart?cht=tx&chl=%5COmega_Lhttps://chart.googleapis.com/chart?cht=tx&chl=M代表每一層膠囊的姿勢矩陣,而https://chart.googleapis.com/chart?cht=tx&chl=a代表他的激活可能性。在https://chart.googleapis.com/chart?cht=tx&chl=L層的膠囊https://chart.googleapis.com/chart?cht=tx&chl=ihttps://chart.googleapis.com/chart?cht=tx&chl=L%2B1層的膠囊https://chart.googleapis.com/chart?cht=tx&chl=j之間有一個可訓練的轉移權重矩陣(Transformation weight matrix)https://chart.googleapis.com/chart?cht=tx&chl=W_%7Bij%7D。最大期望值(EM)是https://chart.googleapis.com/chart?cht=tx&chl=i膠囊的姿勢矩陣和轉移權重矩陣的姿勢矩陣在https://chart.googleapis.com/chart?cht=tx&chl=L%2B1層的膠囊https://chart.googleapis.com/chart?cht=tx&chl=j的投票結果。這個投票結果是由輸出矩陣https://chart.googleapis.com/chart?cht=tx&chl=M_i和轉換矩陣https://chart.googleapis.com/chart?cht=tx&chl=W_%7Bij%7D相乘而得。

https://chart.googleapis.com/chart?cht=tx&chl=V_%7Bij%7D%3DM_i%20W_%7Bij%7D

以下用圖解來解釋

假設pose matrix是一個4x4的矩陣,W也會是一個4x4的權重矩陣
我們將低層級的膠囊(前面的膠囊)的值丟給後面高層級的膠囊,就會得到更好的結果
中間的部分我們會透過某些方式對這些矩陣做處理
在這種膠囊網路的概念中routing的部分就會被Non-Linear Routing Procedure(程序)做一個取代
這邊訓練的方法,就會使用高斯混合模型(Gaussian mixture model,簡稱GMM)的方式做運算

https://en.wikipedia.org/wiki/Expectation%E2%80%93maximization_algorithm

在k-means中,我們只用一個點就代表一個群集的中心

圖中使用GMM可以獲得二次曲面形狀的分類
而若是使用k means則只能識別出球狀的

GMM的聚集越集中,所求出來的a就會越大
因此從分類的角度上來說,這就會是一個分類很好的標準

後記

由於今天才發現有Microsoft的贊助加碼,因此我之後會試試看使用Azure來實作


上一篇
Day 3 Capsule Network
下一篇
Day 5 Capsule的應用(上)
系列文
Attention到底在關注什麼?30

尚未有邦友留言

立即登入留言