모두를 위한 데이터과학

이미지 인식과 분류

석사만세 2023. 2. 17. 16:58

머신러닝에는 다양한 기술이 존재하지만, 현재 가장 관심을 받는 것은 인공신경망 기반 딥러닝 기법입니다. 딥러닝은 인공지능의 모든 분야에 있어 획기적인 성과를 내고 있으며, 그중에서도 이미지 데이터 분석에 필수적으로 쓰이고 있습니다. 이미지 분석에는 인공신경망의 일종인 합성곱 신경망(CNN, Convolutional Neural Networks)이 기본적으로 사용되고 있습니다.

 

딥러닝의 성과와 함께 대두되는 문제 중 하나는 이렇게 학습된 인공신경망을 어떻게 사람이 이해할 수 있도록 해석할 것인가 하는 부분입니다. 다른 머신러닝 기술 대부분과 마찬가지로 인공신경망 모델 자체만으로는 예측한 결과의 근거를 사람에게 논리적으로 설명하기 어렵습니다. 최근 이런 문제를 해결하기 위해 다양한 방식이 시도되고 있으며, CNN 기반 인공신경망을 해석하려는 방법의 하나가 바로 특징 시각화입니다. 특징 시각화를 통해 신경망 각 뉴런에 해당하는 대표 이미지를 시각화할 수 있으며, 학습된 모델이 단계마다 이미지를 어떻게 필터링해 최종적으로 적합한 예측을 수행하는지 사람이 이해할 수 있도록 표현해줍니다.


이미지 분류는 주어진 이미지 자체를 미리 정의된 카테고리 중 하나로 분류하는 것이 목적입니다. 이미지 분석은 오류 발생 확률이 높은 분야로 알려져 왔으나 2012년 ILSVRC에서 1000개 클래스에 대한 이미지 분류에 알렉스넷(AlexNet)이 오류율 5.4%라는 성과를 내면서 심층 신경망이 본격적으로 활용되기 시작했습니다. AlexNet은 이미지 분석에 적합한 CNN을 기본으로 사용하며, 네트워크 마지막에 완전 연결 층을 거쳐 분류하는 출력 노드로 구성되어 있습니다. 이후 VGG-16은 8개였던 알렉스넷 신경망 층을 16개로 확장하고 구조를 변형해 성능을 높였으며, 구글넷은 인셉션 모듈이라는 방법을 제안해 오류를 6.7%까지 낮추는데 성공했습니다. 2015년 ILSVRC에서 1위를 차지한 ResNet은 152개 층을 보유하고 있으나, skip connections라는 새로운 구조를 적용함으로써 계산 복잡도는 오히려 이전 모델보다 낮아지는 성과를 보였습니다. 또한 ResNet은 오류율을 3.6%로 낮추며 사람이 분류하는 것보다 더 좋은 성능을 보였습니다.  CNN 기반 모델은 이미지 분류뿐 아니라 다양한 컴퓨터 비전 작업에 적용되고 있습니다. 이미지 쿼리를 사용한 검색, 이미지상 객체 위치와 레이블을 예측하는 객체 검출, 이미지 영역을 분리해 레이블링하는 이미지 분할, 사람의 움직임을 검출해 자세를 알려주는 자세 추정 등이 주요 분야입니다.