Introduction


병리 슬라이드는 cell의 morphology를 보여줄 뿐 아니라 면역조직화학염색(immunohistochemistry staining)과 같은 방법을 통해 유전자의 발현 상태까지 보고 진단을 내리고 치료 방침을 결정할 수 있습니다. 기본적으로 여지껏 진행되어왔던 인공지능 병리학 연구는 cell morphology에 기반한 방법론들이 대부분인데, 이는 gene expression과 같은 또다른 정보를 잘 encoding할 수 없었기 때문입니다.

또한 병리 이미지의 사이즈는 GPU의 VRAM에 올리기에는 너무나도 거대하기 때문에, 주로 과거의 연구들은 병리 이미지를 patch로 잘라서 patch 단위의 labeling을 하곤 했죠. 하지만 이 역시 지나치게 labor-intensive하며 현실적으로 large, bulk dataset을 만들기가 불가능에 가깝습니다.

이러한 문제들을 해결하고자 본 논문에서는 self-supervised learning(SSL)을 이용한 multiple instance learning(MIL)을 통해 patch단위의 embedding 정보 뿐 아니라 저자들이 slice embedding이라고 말하는 embedding까지 추출할 수 있었으며, 이를 gene expression 정보와 align 할 수 있기까지 했다고 합니다.

Self-supervised learning (SSL)


SSL은 representation learning의 한 종류로, 이미지의 feature를 잘 배울 수 있게 하는 방법론입니다. 이를 도식화하면 다음과 같은데 이는 variational autoencoder의 모식도와 비슷하지만, 방향만 반대인 것으로 이해할 수 있습니다.

fig1.png

Autoencoder에서는 input $x$를 encoder과 decoder에 넣어서 output $\widetilde{x}$를 만들어내고, 이 둘을 비슷하게 만들어내는 과정을 수행한다면,

SSL에서는 input $x$와 이를 살짝 변형시킨(augmentation한) $\widetilde{x}$를 (주로) 동일한 encoder에 넣어서 latent feature $z$와 $\widetilde{z}$로 만든 다음, 이 latent variable들의 similarity를 극대화하는 방법론을 사용합니다.

이에 대한 수학적, 인과적 formulation은 DeepMind에서 내놓은 RELIC 논문에서 확인할 수 있는데, 모식도는 다음과 같습니다.

스크린샷 2024-08-25 23.41.34.png

우리가 이미지를 인식할 때, 우리 뇌는 본능적으로 image($X$)의 content($C$)와 style($S$)를 구분하여 인식합니다. 예를 들어, 흑백 이미지와 컬러 이미지의 사람 얼굴이 있다면 우리는 사람 얼굴($C$)는 동일하게 인식하며 흑백과 컬러라는 이미지의 스타일($S$)은 무시하고 인식할 수 있습니다.

따라서 딥러닝 모델이 이미지의 표현(representation)을 잘 인식한다는 말은 $S$는 최대한 무시하고, $C$만을 추출하여 downstream task인 $Y_i$들을 잘 처리해낼 수 있게 된다는 말이지요. 이것이 SSL의 이론적 배경이 되는 것입니다. 이를 수식화하면 다음과 같습니다.

$$ p^{do(S=s_i)}(Y|C)=p^{do(S=s_j)}(Y|C) $$

Style이 $s_i$냐 $s_j$냐에 상관없이 content $C$가 들어왔을 때 output $Y$가 나올 확률은 동일해야 한다는 식입니다.

이렇게 SSL을 간단하게 이해해볼 수 있습니다.

Methods