Motivation
1. Vanillar Attention MIL은 IID(independent and identical distribution)에 기반하고 있어서, 패치별 연관성을 고려하지 못함.
2. 이에 대한 대안으로 Transformer을 사용하는 경우도 계산량 때문에, 시퀀스 길이가 짧아야해서 WSI분석에는 적용이 어려움.
예를 들어, 아래의 그림과 같이 Vanillar Attention인 경우(d), $\sum \alpha_{i} * h_{i}$와 같이 attention weight * instance embedding으로 가중합으로 하게되는데, 이때 attention weight은 i의 인스턴스만이고려된 가중치임(=attention weight은 attention score로 유래되고, i 인스턴스만의 정보로만 계산됨). 달리말하면, 예측에 어떤 패치가 중요한지만을 가중치로 둠. 반면 Self-attention pooling을 하면, 국지적인 연관성도 하나의 정보로 확인해서, 이 국지적 연관성이 높다는 것을 하나의 가중치로 확인함.
Method: TransMIL은 TPT Module로 이뤄짐
1. TPT Module의 중요 특징이 2가지
첫 째로, WSI 패치로 나눌 때, 패치가 N x N으로 연산되지 않고, $\sqrt{N} \times \sqrt{N}$으로 연산되도록 하는 Transformer구조를 가짐. 여기서 국지적인 연관성이 고려됨. * TPT Module에 대한 Full term이 논문내에서는 주어지지 아니함.
둘 째로, Convolution을 가변적으로 진행하기 위한 PPEG(Pyramid Position Encoding Generator). PPEG은 이미지를 N by N kernel 사이즈를 달리하여 Convolution을 적용함. 이 PPEG의 이점은 서로 다른 위치정보를 압축하고, 혼합할 수 있음.
TPT Module은 아래와 같은 알고리즘입. 크게는 1) 정사각형으로 시퀀싱을 만드는 단계, 2)멀티해드어텐션 단계, 3) PPEG적용단계), 4) 멑리해드어텐션 단계, 5) Slide level예측
그림으로 보면 단순함. 원래는 패치수가 30개면, 30 x 30의 Attention score (alignment score)을 구한후에 Attention weight을 계산하게 되는데, 여기서는 30x30이 아니라, 루트30 x 루트 30으로 계산함. 패치 수가 30개면, 이의 제곱근에 가장가까운 윗 정수는 6으로 계산됨. 즉, 이 행렬은 6x6의 사이즈를 만드는것이 목적임.
이렇게 하는 이유는 Attention score을 N x N으로 만들면 어짜피, 상삼각부분은 i,j의 패치와 i,j의 위치에 해당하는 연관성은 거의 동일할 것이기, 더 단순하게 $\sqrt{N} \times \sqrt{N}$으로 하려는 것으로 보임.
하지만, 이렇게 가공하면, 정방이 안나오기에, 정방이 나올수 있도록, 부족한 패치는 앞의 패치에서 따와 붙여줌. 그렇게 만든 패치의 모음이 $H_{s}^{f}$
이 방법을 이용해서 Sefl-attention을 구하면 됨. 하지만, 조금 더 나아가서 Nystrom Method라는 방법으로 O(n)의 연산을 가지도록 하고, 이렇게하면 토큰수가 엄청 커져도 효율적인 연산이 가능.
한편, PPEG은 위에서 만든 $H_{f}$을 여러 convolution kernel을 동시에 적용 후에, padding하여 집계하는 방식으로 이뤄짐. 각 kernel을 통과한 featuremap은 단순히 합산으로 연산되고, 이를 Flattenting하여 다시 패치토큰으로 얻어냄.