딥러닝의 가장 큰 문제점은 소위 말하는 '블랙박스'라는 점이다.
쉽게 말해 어떤 과정을 통해 이런 결과가 나왔는지 확인 할 수 없다는 것이다.
이러한 한계점으로 인해 딥러닝 사용을 꺼려하는 분야도 있다.
그래서 요즘 설명가능한 AI(XAI)가 주목을 받고 많은 연구들이 이뤄지고 있다.
그러한 연구 중 하나인 Grad-CAM을 소개해보고자 한다.
그래드 캠(Grad-CAM)은 CNN 모델에서 시각적으로 어떤 부분을 더 많이 봤는지 or 인식했는지를 시각적으로 확인 할 수 있는 획기적인 기법이다. 이전에 나왔던 CAM이라는 기법의 generalized 된 버전이라고 생각하면 될 것 같다.
하지만 CAM은 GAP(Global Average Pooling) 층이 있어야 했는데, 이는 GAP 층을 통과해 나온 가중치들로 Conv layer 층과 곱해 더 해주는 과정을 통해 Heat Map을 만들어야 했기 때문이다.
반면에, 그래드 캠은 GAP가 없어도 되고 굳이 GAP를 거친 마지막 층으로 CAM을 할 이유가 없기에 어느 층에서도 확인 할 수 있다는 장점이 있다. (하지만 그래드 캠 논문에서도 마지막 층을 본 것 같다.)
실제로 음성 데이터로 그래드캠을 해본 적이 있는데 마지막 층으로 가면 dimension이 너무 작아지는 바람에 예쁘게 나오진 않았던 적이 있다. 그런 경우엔 좀 더 윗층으로 올려보게 되는것 같다.

그래드 캠을 뽑으면 전부 0이상이 되는 것을 확인 할 수 있다. 이 이유는 아래 수식에 있다.
LcGrad−CAM=ReLU(∑kackAk)
ReLU 함수를 사용하여 만약 가중치 ack 를 곱한 값이 음수라면 0으로 가게하여 이미지를 인식하는데 있어 온전히 +의 영향을 주는 곳만 표시하게 하기 때문이다. 그래드 캠을 뽑으면 0으로 간 부분은 어둡게 칠해지고 숫자가 클수록 밝게 칠해지는 것을 확인 할 수 있다.
또한 논문에서는 수식 설명 이외에도 예측이 잘 안됐을 때는 어느 부분을 보고 판단한건지 알아보는 수단으로 사용할 수다고 하면서 왜 그래드캠이 필요한 지에 대한 예시와 설명을 하고 있다.
Reference : arxiv.org/pdf/1610.02391.pdf
'DL' 카테고리의 다른 글
MobileNet1 논문 리뷰 / 딥러닝 경량화 (0) | 2021.01.18 |
---|---|
BERT / Transformer / Attention / Transformer Attention is all you need 설명 (0) | 2020.07.22 |