투빅스 14기 서아라
딥러닝은 우수한 성능을 가지고 있지만 해석이 어렵다는 단점이 있음.
모델이 해석력을 갖춘다는 것의 의미:
이러한 문제를 해결하기 위해 CAM이라는 방법이 고안
Grad-CAM
Summary
CAM의 일반화된 기술이라고 볼 수 있음
Network Architecture에 대한 수정 없이 Gradient signal을 이용하여 feature map을 결합하는 새로운 방법
Gradient의 의미?
Grad-CAM에서 weights에 해당하는 gradient
Grad-CAM에서 정의한 를 다시 풀어쓰면 아래와 같음
𝐶𝐴𝑀에서 제안한 𝐺𝑙𝑜𝑏𝑎𝑙 𝐴𝑣𝑒𝑟𝑎𝑔𝑒 𝑃𝑜𝑜𝑙𝑖𝑛𝑔(𝐺𝐴𝑃)가 적용된 구조에서 𝐺𝑟𝑎𝑑−𝐶𝐴𝑀을 구하는 것과 𝐶𝐴𝑀을 구하는 것은 동일
즉 𝐶𝐴𝑀은 특정 구조에서 𝐺𝑟𝑎𝑑−𝐶𝐴𝑀을 구하는 방법으로 해석할 수 있으므로 𝐺𝑟𝑎𝑑−𝐶𝐴𝑀은 𝐶𝐴𝑀의 일반화 방법
𝐺𝑟𝑎𝑑−𝐶𝐴𝑀은 이미지에서 클래스에 영향을 미치는 부분을 찾아낼 수 있지만 𝐶𝑁𝑁 𝑙𝑎𝑦𝑒𝑟의 𝑓𝑒𝑎𝑡𝑢𝑟𝑒 𝑚𝑎𝑝에 기초하여 추출되므로 𝐶𝐴𝑀 이미지는 원래 이미지보다 해상도가 낮다는 단점이 있음
𝐺𝑢𝑖𝑑𝑒𝑑 𝐺𝑟𝑎𝑑−𝐶𝐴𝑀 : 원래 이미지와 같은 해상도에서 이미지에 영향을 미치는 부분을 시각화해줌
𝐺𝑢𝑖𝑑𝑒𝑑 𝐵𝑎𝑐𝑘𝑝𝑟𝑜𝑝𝑎𝑔𝑎𝑡𝑖𝑜𝑛
𝑅𝑒𝐿𝑢 𝑙𝑎𝑦𝑒𝑟를 거쳐 𝑏𝑎𝑐𝑘𝑝𝑟𝑜𝑝𝑎𝑔𝑎𝑡𝑖𝑛𝑔할 때, 음의 𝑔𝑟𝑎𝑑𝑖𝑒𝑛𝑡를 없애며 시각화.
직관적으로 뉴런에 의해 탐지되는 픽셀을 알아보기 위함
𝐺𝑟𝑎𝑑−𝐶𝐴𝑀
쉽게 물체를 localize할 수 있지만 heatmap이 coarse하여(원래 Image보다 해상도가 낮음) 왜 네트워크가 특정 물체를 해당 클래스로 분류하였는지 알기 어려움
𝐺𝑢𝑖𝑑𝑒𝑑 𝐺𝑟𝑎𝑑−𝐶𝐴𝑀
두 방법론의 장점을 결합하기 휘아혀 Guided backpropagation과 Grad-CAM을 element-wise 곱하여 시각화를 진행
𝐺𝑟𝑎𝑑−𝐶𝐴𝑀을 통해 추출된 부분 이외에 네트워크의 예측에 영향을 미치는 부분을 논문에서는 𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑓𝑎𝑐𝑡𝑢𝑎𝑙 라고 함
즉, 특정 클래스로 분류할 때 방해가 되는 부분을 Counterfactual라고 함.
Counterfactual는 Grad-CAM의 식을 변경하여 추출할 수 있음.
𝐶𝐴𝑀 논문은 구조적 변경이 필요하기 때문에 사용하기 어려웠으나 (𝑒𝑥. 𝐺𝑜𝑜𝑔𝑙𝑒𝑁𝑒𝑡, 𝑉𝐺𝐺) 이에 대한 해결책을 제시해줌
𝐶𝑁𝑁이 들어간 새로운 모델을 개발했을때 모델의 성능 평가 뿐만아니라 시각화를 통해 𝑖𝑛𝑠𝑖𝑔ℎ𝑡를 얻을 수 있어 활용성이 높음
https://arxiv.org/pdf/1610.02391.pdf
https://sotudy.tistory.com/19
https://joungheekim.github.io/2020/10/14/paper-review/
https://velog.io/@tobigs_xai/CAM-Grad-CAM-Grad-CAMpp#2-4-guided-grad-cam
https://tyami.github.io/deep%20learning/CNN-visualization-Grad-CAM/
14기 김상현
이번 강의는 Grad-CAM에 대한 강의로 서아라님께서 진행해주셨습니다.
Grad-CAM에 대해 자세하게 설명해주셨고, 특히 CAM에 대해 먼저 설명해주셔서 더욱 자세하게 이해할 수 있었습니다.
유익한 강의 감사합니다!
투빅스 14기 김민경
기존의 CAM의 한계를 보완하면서 다양한 CNN기반 모델 구조에도 적용할 수 있도록 한 Grad-CAM은 앞으로 확장 가능성이 기대됩니다. 딥러닝 모델의 해석력을 점점 요구하고 있는 요즘, 매우 유익한 논문 리뷰였습니다. 감사합니다:)