728x90
반응형

CNN Visualization
누구나 한번쯤 봤을 법한 AI의 한계 이미지

ConvNet의 시각화

  CNN을 이해하고 시각화 하기 위한 여러 접근 방법이 존재한다. 이는 신경망에서 학습된 특징이 해석 가능하지 않다는 일반적인 인식과 대비된다.

Activation의 시각화

CNN Visualization

  가장 직관적인 시각화 기술로, forward pass 동안의 네트워크의 activation 출력을 시각화하는 것이다. 위 예시는 AlexNet의 첫 번째 Conv layer(좌)와 다섯 번째 Conv layer(우)의 activation 출력이다.각 이미지는 특정 필터에 해당하는 activation map을 의미한다.

  ReLU네트워크의경우, 검은색으로 표현된 값이 0이 많은 것을 통해 활성화가 희박하고 지역적(local)인 특정이 보인다. 다만 초기에는 상대적으로 덩어리(blobby) 모양이고 밀집되어 보인다. 또한 완전히 새까만 filter도 중간중간 보이는데, 이는 "죽은" filter일 가능성이 있으며, learning rate가 높은 것을 암시한다.

Conv/FC Filter의 시각화

CNN Visualization

  훈련된 AlexNet의 첫 번째 Conv layer(좌)와 두 번째 Conv layer(우)의 필터 이미지다.두 layer 모두 가중치는 굉장히 부드럽고 노이즈가 적은걸로 예상된다.AlexNet 자체가 두 개의 stream으로 진행되기 때문에 컬러/흑백이 나뉜다.이렇게 Filter (가중치) 자체를 시각화 하는 것이 다른 방법이다.예시와 다르게 깊은 layer의 filter를 시각화하기도한다.노이즈가 많으면 훈련이 아직 덜 됐거나, regularization이 낮아 overfitting이 발생했다고 예상할 수 있다.

뉴런의 출력을 최대화하는 이미지 추출

CNN Visualization

  AlexNet의 다섯 번째 pool layer를 구성하는 뉴런 중 activation 값이 최대치를 보이는 이미지다.숫자는 activation 값이며, 흰 박스는 해당 영역이다. (다섯 번째 pool이라 영역이 상대적으로 큼)이러한 방법은 뉴런 별로 학습하는 영역에서 이미지의 어떤 특징을 학습했는지 시각화하기에 용이하다.이 접근 방법의 한 가지 문제는 ReLU를 구성하는 뉴런은 자기만의 의미를 가지지 않는다는 것이다.대신, 여러 ReLU 뉴런을 이미지가 나타내는 공간의 기저 벡터(basis vector)로 생각하는 것이 적절하다.

728x90

t-SNE

CNN Visualization

  CNN은 이미지를 각 클래스로 여러 linear classifier를 통해 점진적으로 분류해나간다고 해석할 수 있다. 이를 통해 CNN을 이용하여 고차원을 저차원 공간에 임베딩하는 아이디어를 얻으며, 그 중 하나가 t-SNE다. t-SNE에서 거리가 가까운 두 이미지는 CNN의 고차원 공간에서도 거리가 가깝다고 볼 수 있다. 이에 CNN은 두 이미지를 유사하게 인식한다는 것을 의미한다.이미지 집합의 t-SNE 임베딩은 해당 이미지의 CNN 코드를 기반으로 한다. (AlexNet의 경우 classifer 직전의 4096차원 벡터) 여기서 유사성은 픽셀 및 색상 기반이 아닌 클래스 및 그 의미를 기준으로한다.

이미지 일부 가리기

CNN Visualization

  ConvNet이 이미지를 개로 분류한다고 가정하자.개를 식별하는 것이 배경이나 기타 잡다한 객체에서 온 것인지 아닌지를 확실하게 아는 방법이 있을까?이미지 중 서로 다른 일부 영역을 가리고 다시 개로 예측하는지 여러번 검증해본 뒤, 각 Case 별 클래스 확률을 살펴보면 어느 부분을 통해 예측했는지 알 수 있다. 위 예시에서 위 세 개의 이미지는 일부 부분을 가려둔 이미지다. 아래 세 개는 가리는 부분을 슬라이드하며 예측한 확률을 2D로 시각화 한것. 포메라니안은 얼굴을 가리면 확률이 낮아지는 걸 볼 수 있다(파란색 영역).

Reference

CS231n 강의 노트 : https://cs231n.github.io/understanding-cnn/

 

728x90
반응형

+ Recent posts