본문 바로가기

딥러닝

DeepLab v1 - 심층 신경망의 불변성 한계를 극복하고 픽셀 단위의 정밀도를 구현하다

반응형


일러두기 (Disclaimer)

본 글은 AI의 도움을 받아 작성되었습니다. 최대한 정확한 정보를 전달하기 위해 검수를 거쳤으나, AI 모델의 특성상 내용에 일부 오류나 부정확한 정보가 포함될 수 있습니다. 따라서 실제 논문의 상세한 수식이나 실험 세부 조건 등은 반드시 원문을 직접 확인하시기 바랍니다.

 

 

논문 링크 : https://arxiv.org/abs/1606.00915

 

DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs

In this work we address the task of semantic image segmentation with Deep Learning and make three main contributions that are experimentally shown to have substantial practical merit. First, we highlight convolution with upsampled filters, or 'atrous convo

arxiv.org

 

 

초록 (Abstract)

심층 합성곱 신경망(Deep Convolutional Neural Networks, DCNN)은 최근 이미지 분류 및 객체 탐지와 같은 고차원 시각 작업에서 최첨단 성능을 보여주었습니다. 본 연구는 DCNN과 확률적 그래픽 모델의 기법을 결합하여 픽셀 수준의 분류(시만틱 이미지 세그멘테이션이라고도 함) 과제를 해결합니다.

우리는 DCNN 최종 레이어의 응답이 정확한 객체 세그멘테이션을 수행하기에 충분히 국소화(localized)되지 않았음을 보입니다. 이는 DCNN을 고차원 작업에 적합하게 만드는 바로 그 불변성(invariance) 특성 때문입니다. 우리는 심층 신경망의 최종 레이어 응답을 완전 연결 조건부 무작위장(fully connected CRF)과 결합함으로써 이러한 취약한 국소화 특성을 극복했습니다.

질적으로 우리의 'DeepLab' 시스템은 이전 방식들을 뛰어넘는 정확도로 세그먼트 경계를 국소화할 수 있습니다. 정량적으로 본 방식은 PASCAL VOC-2012 시만틱 이미지 세그멘테이션 과제에서 테스트 세트 기준 71.6%의 IOU(Intersection Over Union) 정확도를 기록하며 새로운 최첨단 성능을 달성했습니다.

우리는 이러한 결과를 효율적으로 얻을 수 있는 방법을 보여줍니다. 세심한 네트워크 재목적화와 웨이블릿(wavelet) 커뮤니티의 'hole' 알고리즘을 새롭게 응용하여 현대 GPU에서 초당 8프레임의 속도로 신경망 응답의 조밀한 계산을 가능하게 했습니다.

 

1. 한줄 요약 & 3줄 핵심 (Executive Summary)

분류 네트워크의 공간 해상도 손실 문제를 Atrous Convolution으로 해결하고, 뭉개진 예측 결과를 Fully Connected CRF를 통해 픽셀 단위의 정밀한 윤곽선으로 다듬어낸 시만틱 세그멘테이션 모델입니다.

  1. 기존의 문제점 (Pain point): 객체 분류에 최적화된 합성곱 신경망은 반복적인 풀링(Pooling) 연산을 거치며 이미지의 공간적 해상도를 잃어버리며, 위치 변화에 둔감한 불변성(Invariance)으로 인해 객체의 세밀한 테두리를 찾는 데 근본적인 한계가 있었습니다.
  2. 이 논문의 해결책 (Solution): 해상도를 보존하면서 넓은 영역의 맥락을 파악할 수 있는 Atrous Convolution을 도입하여 조밀한 특징을 추출하고, 픽셀 간의 색상 및 거리 정보를 바탕으로 경계선을 뚜렷하게 교정하는 Fully Connected CRF 알고리즘을 결합했습니다.
  3. 달성한 성과 (Key Result): PASCAL VOC-2012 데이터셋에서 71.6%의 mIOU를 기록하며 기존의 모든 모델을 뛰어넘는 최고 성능을 달성하였으며, 파라미터 최적화를 통해 초당 8프레임(8 fps)이라는 실용적인 추론 속도를 확보했습니다.

 

2. 들어가며: 왜 이 연구가 필요했나? (The "Why")

컴퓨터 비전 분야에서 시만틱 이미지 세그멘테이션(Semantic Image Segmentation)은 이미지 내의 모든 픽셀이 어떤 사물 혹은 배경에 속하는지 픽셀 단위로 분류하는 고난도의 과제입니다. 이미지 안에 "고양이가 있다"라고 단순히 판단하는 이미지 분류(Image Classification) 작업이나, 고양이의 대략적인 위치를 네모난 상자로 표시하는 객체 탐지(Object Detection) 작업과 달리, 세그멘테이션은 "고양이가 화면의 어느 픽셀부터 어느 픽셀까지 차지하고 있는지"를 정밀하게 오려내야 합니다. 자율주행 자동차가 도로의 영역을 파악하거나, 의료 영상에서 종양의 크기와 형태를 정확하게 측정해야 할 때 필수적으로 요구되는 기술입니다.

 

과거 딥러닝이 활성화되기 이전의 연구자들은 이미지의 특징을 추출하기 위해 사람이 직접 공식을 짜서 만든 SIFT나 HOG와 같은 수작업 특징(Hand-engineered features)에 의존했습니다. 이러한 방식은 한정된 환경에서는 작동했지만, 다양한 조명, 각도, 형태의 변화가 존재하는 실제 세계의 복잡한 이미지를 이해하는 데에는 명백한 한계가 존재했습니다. 이후 AlexNet을 시작으로 VGG, ResNet과 같은 심층 합성곱 신경망(DCNN)이 등장하면서 판도는 급변했습니다. 다량의 데이터로부터 데이터의 계층적 추상화를 스스로 학습하는 DCNN은 이미지 분류 대회에서 압도적인 성과를 거두었고, 자연스럽게 연구자들은 이 강력한 DCNN을 세그멘테이션 작업에도 적용하고자 시도했습니다.

 

하지만 픽셀 단위의 정밀한 마스크를 생성하기 위해 DCNN을 도입하는 과정에서 연구자들은 두 가지 거대한 기술적 장벽에 부딪혔습니다.

 

첫 번째 장벽은 반복적인 연산에 따른 신호 해상도의 급격한 감소(Signal Downsampling)입니다. 표준적인 DCNN 구조는 연산량을 줄이고 이미지의 핵심적인 특징만을 남기기 위해 맥스 풀링(Max-pooling)과 스트라이딩(Striding)이라는 압축 과정을 층층이 거치게 됩니다. 예를 들어 1000픽셀 크기의 이미지가 망을 통과하면 최종적으로 약 30픽셀 크기의 작은 특징 지도로 쪼그라듭니다. 이미지 분류를 위해서는 고양이의 수염 모양이나 꼬리의 곡선 같은 구체적 특징들을 뭉뚱그려 하나의 개념으로 압축하는 것이 유리하지만, 반대로 원래 이미지 크기만큼의 출력 마스크를 만들어야 하는 세그멘테이션 입장에서는 객체의 미세한 형태와 위치 정보를 영구적으로 상실하게 되는 원인이 됩니다.

 

두 번째 장벽은 공간적 무감각성, 즉 불변성(Spatial Insensitivity or Invariance)입니다. DCNN은 사물이 이미지의 왼쪽 구석에 있든, 오른쪽 구석에 있든, 약간 찌그러져 있든 동일하게 '고양이'라고 인식하도록 훈련받습니다. 분류 모델로서는 훌륭한 특성이지만, 세그멘테이션은 다릅니다. 픽셀 하나가 왼쪽으로 1픽셀만 이동해도 정답이 달라지는 정밀 국소화(Localization) 작업에서는 이러한 공간적 불변성이 오히려 독으로 작용합니다. 신경망이 사물이 존재한다는 사실 자체는 귀신같이 알아맞히지만, 정확히 어디서부터 어디까지가 윤곽선인지를 특정하지 못하고 뭉뚱그려 둥글게 칠해버리는 현상이 발생합니다.

 

이러한 문제들을 우회하기 위해 초기 연구들은 주로 2단계(Two-stage) 구조를 차용했습니다. 이미지를 비슷한 색상끼리 묶어 수많은 작은 조각(Superpixel)으로 미리 쪼개놓은 뒤 DCNN에 입력하거나, 다른 보조 알고리즘이 찾아준 후보 영역(Bounding box proposals)에 의존하여 분류를 수행하는 방식이었습니다. 하지만 이 방식들은 프런트엔드 역할을 하는 분할 시스템이 초기에 실수를 범하면, 뒤이어 작동하는 DCNN도 꼼짝없이 그 오류를 물려받아야 한다는 치명적인 결함이 있었습니다.

 

따라서 이 시기의 연구자들이 공유하던 가장 큰 고민은 "어떻게 하면 DCNN의 강력한 사물 인식 능력과 추상화 능력을 훼손하지 않으면서도, 픽셀 단위의 날카로운 위치 정보와 해상도를 끝까지 살려낼 수 있을 것인가?"로 요약할 수 있습니다. 본 논문은 기존의 복잡한 2단계 파이프라인을 버리고, 픽셀 데이터에서 직접 정답을 예측하면서도 경계선의 정밀도를 획기적으로 끌어올린 돌파구를 제시했습니다.

 

3. 이 논문의 뿌리 (Key Reference)

DeepLab v1은 기존 학계에서 성공을 거둔 강력한 세 가지 알고리즘의 장점을 선별하고, 그 단점들을 서로 보완하는 방식으로 결합하여 탄생했습니다. 본 연구에 핵심적인 영감을 제공하고 구조적 베이스라인이 된 세 편의 연구를 소개합니다.

 

1. VGG-16 (Simonyan & Zisserman, 2014) - 검증된 시각 피질의 차용 DeepLab은 ImageNet 분류 대회에서 최상위권의 성능을 입증한 VGG-16 모델을 기본 백본(Backbone) 구조로 사용합니다. VGG-16은 16개의 깊은 층을 통해 이미지의 복잡한 패턴을 학습하는 능력이 탁월했습니다. 하지만 VGG-16의 본래 목적은 이미지 분류였기에 네트워크의 끝부분에는 공간 정보를 완전히 파괴하고 하나의 1차원 벡터로 변환해버리는 완전 연결 계층(Fully Connected Layer)이 존재했습니다. DeepLab의 연구진은 VGG-16의 우수한 특징 추출 능력을 그대로 빌려오되, 이 마지막 완전 연결 계층들을 합성곱 계층(Convolutional Layer)으로 변환하는 수술을 단행했습니다. 이를 통해 원본 이미지의 2차원 공간적 배열을 파괴하지 않고 끝까지 유지할 수 있는 완전 합성곱 네트워크(Fully Convolutional Network) 구조를 완성했습니다.

 

2. The 'Atrous' (Hole) Algorithm (Mallat, 1999 / Papandreou et al., 2014) - 구멍 뚫린 합성곱의 재발견 기존 VGG-16 망을 그대로 사용하면 앞서 언급한 해상도 손실 문제가 발생합니다. 이 문제를 해결하기 위해 연구진은 1999년 Mallat에 의해 파생되었고, 웨이블릿(Wavelet) 신호 처리 커뮤니티에서 주로 사용되던 'Atrous' 알고리즘에 주목했습니다. 프랑스어로 '구멍이 있는(with holes)'이라는 뜻을 가진 이 알고리즘은, Papandreou 등에 의해 딥러닝 망에 효율적으로 적용할 수 있는 기반이 마련되어 있었습니다. DeepLab은 이 알고리즘을 VGG-16 후반부에 적극적으로 차용하여, 해상도를 깎아내지 않고도 모델이 바라보는 시야를 넓게 유지하는 핵심 동력으로 삼았습니다. 기존에는 복잡한 디콘볼루션(Deconvolution)을 사용해야 했던 연산을 단순하고 우아하게 대체한 것입니다.

 

3. Fully Connected CRF (Krähenbühl & Koltun, 2011) - 전역적인 경계 최적화 DCNN이 만든 해상도 저하된 출력물을 날카롭게 다듬기 위해, Krähenbühl과 Koltun이 제안한 조건부 무작위장(Conditional Random Field, CRF) 모델을 전격 도입했습니다. 과거의 전통적인 지역적(Local) CRF 알고리즘들은 한 픽셀이 자신의 바로 옆에 위치한 이웃 픽셀들의 정보만을 참고하여 클래스를 결정했습니다. 이는 계산은 빠르지만, 이미지 전체의 맥락을 파악하지 못해 크기가 큰 객체의 내부를 채우거나 얇은 구조물을 파악하는 데 한계가 컸습니다. 반면 이 논문에서 제안된 'Fully Connected CRF'는 이미지 내에 존재하는 모든 픽셀 쌍(All pairs of pixels)을 서로 연결하여 상호작용을 계산하는 혁신적인 방식이었습니다. 계산량이 기하급수적으로 폭발할 위험이 있었지만, 고차원 필터링(High-dimensional filtering) 기술을 통해 GPU 위에서 0.5초 만에 연산을 끝낼 수 있도록 설계되었으며, DeepLab은 이를 DCNN 출력값의 정밀도를 끌어올리는 강력한 후처리 모듈로 사용했습니다.

 

결과적으로 DeepLab v1은 VGG-16이라는 튼튼한 골격 위에, Atrous 연산이라는 시력 확장 장치를 달고, Fully Connected CRF라는 정밀 교정 도구를 결합한 종합 예술이라 할 수 있습니다.

 

4. 핵심 아이디어: 무엇이 다른가? (The "Aha!" Moment)

논문이 컴퓨터 비전 학계에서 높은 평가를 받은 이유는 복잡한 수식을 새로 만들어내서가 아니라, 직관적이고 효과적인 아이디어를 통해 기존의 한계를 깔끔하게 돌파했기 때문입니다. 그 핵심이 되는 두 가지 발상의 전환을 비유를 통해 자세히 설명하겠습니다.

 

첫 번째 발상의 전환: Atrous Convolution (구멍 뚫린 합성곱)

가장 큰 과제는 이미지를 통과시킬 때마다 크기를 반복해서 절반씩 줄여버리는 풀링(Pooling) 계층의 문제였습니다. 만약 이미지를 줄이지 않고 기본 필터(예: 3x3 크기의 작은 돋보기)만 통과시키면 어떻게 될까요? 해상도는 유지되겠지만, 모델이 한 번에 바라보는 범위(수용 영역, Receptive Field)가 너무 좁아져서 코끼리의 코 표면 질감만 보고 그것이 전체 코끼리라는 큰 맥락을 파악하지 못하게 됩니다. 반대로 모델이 코끼리 전체를 보게 하려고 50x50 같은 거대한 돋보기를 쓰자니, 모델이 학습해야 할 파라미터와 연산량이 기하급수적으로 폭증하여 컴퓨터가 감당할 수 없게 됩니다.

 

과거의 방식은 "돋보기 크기를 고정한 채, 이미지를 멀리 떨어뜨려서 작게 축소한 다음 본다"는 방식이었습니다. 하지만 DeepLab은 "이미지의 크기는 원본 그대로 유지한 채, 돋보기 렌즈 사이에 일정한 간격을 두고 구멍을 뚫어서 넓게 본다"는 발상의 전환을 했습니다.

 

이것이 바로 Atrous Convolution(혹은 Dilated Convolution)의 개념입니다. 3x3 렌즈 사이에 빈 공간(Hole)을 하나씩 두게 되면, 실제 파라미터는 9개만 사용하면서도 마치 5x5 크기의 거대한 렌즈로 이미지를 덮는 것과 동일한 넓은 시야각을 확보할 수 있습니다. 파라미터 수를 늘리지 않고 연산 효율을 챙기면서, 동시에 픽셀 단위의 해상도 손실도 막아내는 마법 같은 효과를 가져온 것입니다.

 

DeepLab은 VGG-16 네트워크의 후반부에 있던 다운샘플링 과정을 중단시키고 이 Atrous Convolution을 적용하여, 기존 방식이었다면 원본의 32분의 1 크기로 쪼그라들었을 결과물을 8분의 1 크기로 넉넉하게 방어해 내는 데 성공했습니다. 더 촘촘하고 풍부한(Dense) 특징 지도를 얻어낸 것입니다.

 

두 번째 발상의 전환: Fully Connected CRF (완전 연결 조건부 무작위장)

Atrous Convolution을 적용하여 8분의 1 크기로 잘 보존된 특징 지도를 얻었다고 해도 문제가 끝난 것은 아닙니다. DCNN은 태생적으로 형태를 부드럽게 추상화하는 경향이 있기 때문에, 신경망을 빠져나온 확률 지도(Score Map)의 경계선은 둥글둥글하고 다소 뭉개져(Coarse) 있습니다. 이를 원래 이미지 크기로 단순 확대해 보아도 물체의 실제 윤곽선과 완벽하게 일치하지는 않습니다.

이 문제를 해결하기 위해 도입한 것이 모델 출력값 뒤에 덧붙이는 'Fully Connected CRF'라는 후처리 최적화 모듈입니다. CRF 모델의 작동 방식을 쉽게 설명하면 "자신의 초기 정체성을 바탕으로, 주변 환경을 살펴보고 최종 정체성을 굳히는 과정"입니다.

 

기존의 단순한 지역적 CRF는 바로 인접한 픽셀에게만 묻습니다. "나는 강아지일 확률이 60%인데, 내 바로 옆 픽셀아 넌 뭐니?" 이런 방식은 멀리 떨어진 픽셀 간의 연관성을 파악하지 못합니다. 반면 DeepLab이 도입한 완전 연결 방식은 이미지 안에 있는 수만 개의 모든 픽셀 쌍이 서로에게 정보를 전달합니다.

 

CRF 모델의 판단 기준은 크게 두 가지로 나뉩니다.

  1. 단일항(Unary Potential): DCNN이 예측한 각 픽셀의 초기 확률값입니다. "딥러닝 모델이 나를 강아지라고 예측했어."
  2. 쌍항(Pairwise Potential): 다른 모든 픽셀과의 관계를 점수화합니다. 이때 물리적인 '거리(Position)'와 픽셀의 고유한 '색상(Color)'이라는 두 가지 단서를 융합하여 확인합니다. "저기 멀리 있는 픽셀은 나와 거리가 너무 멀어서 연관성이 적어. 하지만 내 근처에 있는 픽셀은 물리적인 위치도 가깝고 색상(RGB) 수치도 나와 비슷하니, 아마 나와 같은 강아지 털 영역일 확률이 매우 높아!"

만약 딥러닝 망이 특정 영역에서 확신을 갖지 못하거나 경계를 뭉개버렸더라도, 이 CRF 알고리즘이 픽셀들의 실제 색상 차이와 거리를 엄격하게 분석하여 결과를 교정합니다. 즉, 색상 대비가 극명하게 갈리는 사물의 테두리 영역에서는 자르듯이 확실한 경계선을 긋고, 색상이 균일한 객체 내부 영역은 같은 클래스로 견고하게 하나로 묶어줍니다. 두루뭉술했던 확률 예측 구름이 비로소 사물의 실제 윤곽선에 딱 달라붙는 고해상도 시만틱 마스크로 벼려지는 핵심 순간입니다.

 

5. 작동 원리: 어떻게 돌아가는가? (The "How")

DeepLab v1 시스템에 원본 이미지가 입력되어 최종 세그멘테이션 결과물이 도출되기까지의 파이프라인(Pipeline) 흐름을 단계별로 자세히 따라가 보겠습니다. 이 과정은 크게 전반부의 딥러닝 특징 추출(DCNN)과 후반부의 확률 최적화(CRF)라는 두 개의 독립적인 모듈이 직렬로 연결된 형태를 띱니다.

 

Step 1. 원본 이미지 입력 및 네트워크 통과

사용자가 판독하고자 하는 원본 해상도의 이미지를 모델에 그대로 입력합니다. 이미지는 곧바로 VGG-16을 재설계한 완전 합성곱 네트워크망으로 진입합니다. 초기 계층에서는 일반적인 모델과 동일하게 합성곱과 맥스 풀링을 거치며 이미지의 저차원 특징(선, 모서리 등)을 추출합니다.

 

Step 2. 다운샘플링 중단 및 Atrous Convolution 수행

이미지가 망의 중간쯤 도달했을 때 변화가 시작됩니다. 마지막 두 개의 맥스 풀링 계층에 도달하면, 모델은 더 이상 이미지를 축소하지 않기 위해 스트라이드(Stride, 필터가 이동하는 보폭)를 1로 고정합니다. 해상도 축소가 멈춘 이 지점부터는 빈틈을 가진 Atrous Convolution 필터가 작동하기 시작합니다. 이 필터들은 기존 구조보다 파라미터의 길이를 2배 혹은 4배 넓게 샘플링하여 연산함으로써 해상도를 유지한 채 넓은 영역의 특징 패턴을 촘촘하게 읽어 들입니다.

 

이 과정에서 발생할 수 있는 컴퓨팅 병목 현상을 해결하기 위해, 연구진은 첫 번째 완전 연결 계층의 필터 개수를 4,096개에서 1,024개로 대폭 줄이고 공간 필터 크기도 줄이는 기법을 동원하여 연산 속도와 GPU 메모리 소비량을 성공적으로 타협했습니다.

 

Step 3. 1차 원시 확률 지도(Raw Score Map) 생성

딥러닝 망의 끝에 다다르면, 모델은 각 픽셀이 설정된 21개 클래스(PASCAL VOC 기준: 배경 1개 + 객체 20개) 중 어디에 속할지를 나타내는 배열을 산출합니다. 이 출력물은 가로세로가 원본 이미지 크기 대비 8분의 1로 축소된 다차원 확률 지도입니다. 각각의 픽셀 위치에는 21개의 숫자가 들어있으며, 이 수치들은 해당 위치가 비행기인지, 사람인지, 고양이인지 등에 대한 로그 확률(Log-probability) 값을 의미합니다.

 

Step 4. 이중 선형 보간법 (Bilinear Interpolation)

출력된 8분의 1 크기의 스코어 맵을 다시 원본 이미지와 동일한 크기로 되돌려야 합니다. 다른 일부 연구들은 이 축소된 결과를 다시 키우기 위해 디콘볼루션 계층이라는 또 다른 딥러닝 층을 학습시켰습니다. 하지만 DeepLab 연구진은 무겁게 학습시키는 대신, 단순히 주변 픽셀값들을 평균 내어 부드럽게 크기를 부풀리는 고전적 수학 기법인 이중 선형 보간법(Bilinear Interpolation)을 채택했습니다. 연산 비용이 사실상 0에 가까우면서도 속도가 매우 빠르다는 장점 때문입니다.

 

Step 5. Fully Connected CRF를 통한 메시지 전달 및 후처리

크기가 강제로 확대되어 윤곽이 흐릿해진 확률 지도는 이제 Fully Connected CRF 모듈의 초기 단일항(Unary) 입력값으로 던져집니다. CRF 알고리즘은 원본 이미지의 픽셀별 색상(RGB) 인텐시티(Intensity) 정보와 물리적 위치 좌표 정보를 입력받아, 모든 픽셀 간의 연관성을 가우시안 커널 방정식에 넣어 평가합니다. "메시지 전달(Message Passing)"이라 불리는 근사 추론 과정을 통해 픽셀들은 서로의 확률 정보를 주고받습니다. 이 과정을 10회 정도 반복(Iteration) 수행합니다.

 

Step 6. 최종 시만틱 마스크 출력

반복 연산이 끝날 때마다 확률 지도는 점점 더 원본 객체의 날카로운 경계를 닮아갑니다. 최종적으로 색상 차이가 큰 경계 부분은 선명하게 나뉘고, 같은 색상 영역 내에서는 클래스가 균일하게 통일된 고해상도의 정밀 시만틱 마스크(Semantic Mask)가 최종 결과물로 출력됩니다.

 

6. 작동 원리: 어떻게 학습하는가? (The "How")

딥러닝 시스템이 인간처럼 사물을 인지하고 배경을 분리해 내려면, 고품질의 학습 데이터와 이를 최적화하기 위한 구체적인 학습 과정이 수반되어야 합니다. DeepLab v1의 학습 과정은 전체 시스템을 한 번에 학습시키는 대신, DCNN 부분의 학습과 CRF 부분의 파라미터 탐색을 철저히 분리하여 단계적으로 진행하는 단편적 학습(Piecewise training) 방식을 채택했습니다.

 

1. 입력 데이터 및 정답 데이터의 구성

본 모델을 학습시키는 데 활용된 주력 무대는 PASCAL VOC 2012 시만틱 세그멘테이션 벤치마크 데이터셋입니다. 이 데이터셋은 다양한 실제 환경을 포착한 이미지들로 구성되어 있습니다.

데이터 속성 상세 내용 및 포맷
전체 데이터 수량 원본 PASCAL VOC 2012 데이터에 추가 어노테이션(Annotation) 자료를 병합하여 총 10,582장의 이미지를 훈련용(Train set)으로 구축했습니다. 평가를 위한 검증 세트(Validation set) 1,449장과 최종 테스트 세트 1,456장이 분리되어 있습니다.
입력 데이터 (Input) RGB 색상 채널을 보유한 원본 해상도의 2차원(2D) 픽셀 이미지 데이터입니다. 구체적인 예시로, '거리를 걷는 사람과 그 옆의 자전거'를 찍은 한 장의 일반적인 컬러 사진 포맷입니다.
정답 데이터 (Ground Truth) 원본 입력 사진과 완전히 동일한 가로세로 크기를 가지는 픽셀 단위의 정답 마스크(Pixel-level label)입니다. 마스크의 각 픽셀 위치에는 사람이 보는 색상이 아닌 정수 형태의 클래스 번호가 할당되어 있습니다.
클래스 구성 (Classes) 배경(Background)을 포함하여 비행기, 자전거, 새, 보트, 병, 버스, 자동차, 고양이, 의자, 소, 식탁, 개, 말, 오토바이, 사람, 화분, 양, 소파, 기차, TV 등 총 21개의 범주를 판별하도록 설계되었습니다.

 

입력 데이터로 "들판에 서 있는 양(Sheep)의 사진"이 모델에 들어간다면, 정답 데이터는 사진 속 양의 실루엣과 픽셀 단위로 정확히 일치하는 영역에 숫자 '17'(양 클래스 번호)이 칠해져 있고, 나머지 풀밭이나 하늘과 같은 배경 영역에는 숫자 '0'(배경 번호)이 채워진 지도가 됩니다. 모델은 자신이 예측한 결과와 이 정답 지도 간의 오차를 스스로 줄여나가게 됩니다.

 

2. DCNN 모듈의 학습 메커니즘

DeepLab은 먼저 거대한 ImageNet 데이터셋을 활용해 이미지 분류 작업에 대해 사전 학습(Pre-training)된 VGG-16 가중치를 기반으로 시작합니다. 이를 통해 모델은 이미 선이나 모서리 등 기본적인 시각적 특징을 이해하는 상태에서 출발합니다.

 

세그멘테이션 작업을 위해 미세 조정(Fine-tuning)을 진행할 때, 모델은 입력 이미지를 8분의 1 크기로 축소한 원시 확률 텐서(Raw Feature Scores)를 출력합니다. 훈련을 위해서는 정답 데이터인 원본 크기 마스크 역시 8분의 1 크기로 축소(Subsampling)하여 모델의 출력값 크기에 맞춥니다.

 

축소된 출력 맵의 각 공간적 픽셀 위치마다 모델이 21개 클래스 중 어느 것을 예측했는지 확인하고, 정답 클래스와 대조하여 교차 엔트로피 손실 함수(Cross-Entropy Loss Function)를 통해 오차를 계산합니다. 출력 맵 상의 모든 픽셀 위치에서 발생한 오차값들은 모두 동등한 가중치로 합산됩니다. 이 합산된 손실값을 바탕으로 확률적 경사 하강법(Stochastic Gradient Descent, SGD) 알고리즘을 사용하여 신경망의 가중치를 역전파 방식으로 업데이트합니다. 실험에서는 미니 배치 크기를 20으로 설정하고, 모멘텀(Momentum)과 가중치 감소(Weight decay) 같은 정밀한 하이퍼파라미터를 동원하여 모델을 서서히 최적화시켜 나갔습니다.

 

3. Fully Connected CRF 파라미터의 교차 검증

DCNN의 신경망 학습이 완전히 종료되어 가중치가 확정되고 나면, 비로소 CRF 모듈에 대한 조율이 시작됩니다. CRF 모듈은 역전파를 통해 학습하는 구조가 아니라, 가우시안 방정식에 들어가는 하이퍼파라미터(거리나 색상의 민감도를 조절하는 상수들)를 찾기 위한 최적화 과정을 거칩니다.

 

연구진은 검증 세트 중 100장의 소규모 이미지를 떼어내어 교차 검증(Cross-validation)을 수행했습니다. 색상 민감도를 담당하는 $\sigma_{\alpha}$, 거리 민감도를 조절하는 $\sigma_{\beta}$ 등의 변수 조합을 그리드 형태로 넓게 탐색한 뒤, 가장 성능이 높게 나오는 최적의 조합 영역을 점진적으로 좁혀나가며 세밀하게 파라미터를 고정했습니다. 이처럼 두 가지 거대 모듈의 학습 및 튜닝 과정을 철저히 분리함으로써 복잡한 모델을 비교적 수월하게 벤치마크에 안착시킬 수 있었습니다.

 

7. 결과: 얼마나 좋아졌나? (Results)

DeepLab v1은 발표 당시 딥러닝 기반 세그멘테이션 분야에서 파격적인 성능 향상을 입증하며 컴퓨터 비전 학계를 놀라게 했습니다. 이들이 PASCAL VOC-2012 테스트에서 달성한 구체적인 지표와 통찰을 세분화하여 살펴보겠습니다.

 

1) 최고 성능(SOTA) 달성 궤적

DeepLab 시스템 내 각 모듈의 기여도를 확인하기 위해 연구진이 단계적으로 구성한 실험 결과를 요약하면 다음과 같습니다.

모델 변형 (Method Variants) 주요 구성 요소 (Configuration Details) 검증 세트 성능 (mIOU %) 테스트 세트 성능 (mIOU %)
FCN-8s (기존 최상위 경쟁 모델 - Long et al.) 62.2 62.2
TTI-Zoomout-16 (기존 최상위 경쟁 모델 - Mostajabi et al.) 64.4 64.4
DeepLab 순수 DCNN 구조 (CRF 제외) 59.8 -
DeepLab-CRF DCNN 기본 출력 + Fully Connected CRF 63.7 66.4
DeepLab-MSc-CRF-LargeFOV 다중 스케일 구조 + 확장된 시야각 + CRF 후처리 71.6 71.6

 

표에서 나타나듯, CRF 후처리를 배제하고 단순히 DCNN만을 사용한 기본 구조(DeepLab)의 성능은 59.8%에 머물렀습니다. 이는 VGG-16을 조밀하게 개조했음에도 불구하고 픽셀의 미세 경계를 다듬지 못해 발생하는 한계를 명확히 보여줍니다.

 

하지만 여기에 Fully Connected CRF 모듈을 결합한 순간(DeepLab-CRF), 성능 수치는 단숨에 약 4%가량 폭발적으로 점프하며 66.4%에 도달했습니다. 이는 당시 PASCAL VOC 벤치마크의 2위 모델이었던 TTI-Zoomout-16(64.4%)의 기록을 가볍게 앞지르는 성과였습니다.

 

더 나아가 연구진은 모델의 필터 시야각(Field-Of-View)을 넓혀 더욱 광범위한 맥락을 파악할 수 있도록 개조하고(LargeFOV), 네트워크 중간층의 특징들을 다중 스케일(Multi-scale)로 끌어와 결합하는 정교한 튜닝을 더했습니다. 이 최상위 조합(DeepLab-MSc-CRF-LargeFOV)은 테스트 데이터셋에서 무려 71.6%라는 경이로운 수치를 기록하며 SOTA(State-of-the-Art)의 왕좌를 차지했습니다.

 

2) 경계면 정밀도(Boundary Accuracy)의 획기적 향상

연구진은 단순히 전체 픽셀 정답률만 측정하는 것에 만족하지 않았습니다. CRF가 과연 물체의 테두리를 얼마나 날카롭게 포착하는지 검증하기 위해 '트라이맵(Trimap)'이라는 실험을 진행했습니다. 물체의 정답 경계선을 중심으로 아주 좁은 픽셀 대역(Band)만을 제한 구역으로 설정하고, 그 좁은 테두리 안에서 모델이 얼마나 정확하게 배경과 객체를 구분해 내는지 가혹하게 평가한 것입니다.

 

실험 결과, 단일 DCNN만 거친 결과물은 좁은 밴드 내부에서 정답률이 처참하게 낮았지만, CRF를 통과한 결과물은 경계선 주변 픽셀들에서도 압도적으로 높은 일치도를 보여주었습니다. 이는 CRF 모델이 DCNN의 뭉개진 경계를 물체의 실제 윤곽까지 완벽하게 밀어붙여 정렬시켰다는 것을 시각적, 정량적으로 완벽히 증명한 결과입니다.

 

3) 속도와 연산의 혁신

딥러닝 모델이 무작정 성능만 높인다고 실용성이 있는 것은 아닙니다. 기존에 해상도를 복원하기 위해 복잡한 디콘볼루션 계층을 학습시키던 경쟁 모델들은 훈련에만 며칠씩 소요되었습니다. 반면 DeepLab 시스템은 Atrous 알고리즘을 통해 파라미터를 134.3M 개에서 20.5M 개로 대폭 축소했고(LargeFOV 모델 기준), 훈련 속도를 3.36배 이상 끌어올렸습니다.

 

당시 기준으로 상용 Titan GPU 환경에서 단 10시간 만에 전체 훈련이 끝났으며, 실제 테스트 이미지를 추론할 때도 조밀한 특징 추출에 장당 약 0.125초(초당 8프레임), Fully Connected CRF 모듈 최적화에 약 0.5초만이 소요되었습니다. 이는 모바일이나 실시간 비디오 프레임에 곧장 적용하기에는 한계가 있지만, 막대한 연산량을 요구하던 기존 알고리즘들과 비교하면 놀랍도록 실용적인 연산 효율성을 입증한 셈입니다.

 

4) 남겨진 숙제: 실패 케이스 (Failure Cases)

이토록 강력한 시스템임에도 불구하고 논문은 자신들의 명백한 실패 케이스를 분석하여 한계점을 투명하게 공개했습니다.

 

DeepLab 구조가 가장 취약점을 드러낸 영역은 섬세하고 얇은 구조물(Thin structures)이었습니다. 특히 자전거의 얇은 바퀴살(Spokes), 복잡하게 얽힌 의자의 다리(Chair legs), 그리고 잔가지가 많은 화분(Potted plant)과 같은 클래스에서 유독 낮은 IOU 수치(예: 의자 클래스 약 30.7%)를 기록했습니다.

 

이러한 현상이 발생하는 근본적인 원인은 역설적으로 CRF의 강력한 색상 대비 의존성 때문입니다. 의자의 가느다란 다리와 그 뒤로 비치는 배경 바닥의 색상이 시각적으로 유사하거나 조명이 어두운 경우, CRF 알고리즘은 이 얇은 다리 픽셀을 중요한 객체로 인식하지 못하고 단순한 색상 노이즈로 착각합니다. 결과적으로 얇은 구조물을 배경과 동화시켜 버리며 부드럽게 지워버리는(Smooth out) 역효과를 낳았습니다. 딥러닝과 그래픽 모델의 결합이 가져온 양날의 검이었던 셈입니다.

 

8. 이 논문의 계보와 발전 (Impact & Follow-ups)

DeepLab v1이 쏘아 올린 '공간적 정보 보존'이라는 철학은 컴퓨터 비전 학계에 큰 파장을 일으켰고, 이 아이디어를 비판적으로 발전시킨 수많은 후속 연구들이 폭발적으로 파생되었습니다. 구글의 DeepLab 연구진 자신들도 v1의 한계를 극복하기 위해 연이어 개선된 아키텍처를 내놓으며 세그멘테이션 역사의 중심축을 형성했습니다.

모델 버전 주요 발전 요약 (Key Innovations) 아키텍처 변화
DeepLab v2 멀리 있는 객체와 가까이 있는 객체를 동시에 잡기 위해 ASPP(Atrous Spatial Pyramid Pooling) 구조를 최초 제안했습니다. VGG-16을 ResNet으로 교체. 여러 개의 구멍 간격(Dilation rate)을 가진 Atrous Convolution을 병렬로 연결하여 다중 스케일을 파악함.
DeepLab v3 복잡한 후처리였던 CRF 모듈을 과감히 제거하고, 오직 순수 신경망만으로 정밀한 추론을 달성했습니다. 기존 ASPP에 배치 정규화(Batch Normalization) 및 이미지 수준 특징(Image-level features) 융합 모듈 추가.
DeepLab v3+ 공간 정보를 완벽히 복원하기 위해 인코더-디코더(Encoder-Decoder) 구조를 채택했습니다. 현재까지도 각종 산업의 든든한 베이스라인으로 널리 사용됩니다. Xception 백본 도입 및 깊이별 분리 합성곱(Depthwise Separable Convolutions) 연산을 통해 경계선 성능 극대화.

 

1. 다중 스케일 대응의 진화: ASPP의 등장 (DeepLab v2)

v1은 다양한 객체 크기에 대응하기 위해 이미지 자체의 크기를 조절하여 모델에 밀어 넣는 방식(Multi-scale input)을 사용했습니다. 하지만 후속작인 DeepLab v2에서는 하나의 입력 이미지 안에서 각기 다른 간격을 가진 Atrous Convolution 필터 여러 개를 병렬로 배치한 뒤, 그 결과물들을 한데 모으는 ASPP(Atrous Spatial Pyramid Pooling)라는 구조를 고안했습니다. 마치 렌즈의 도수가 다른 안경 여러 개를 한 번에 끼고 보는 것과 같은 이 구조는 다중 스케일 문제를 가장 우아하게 해결한 방식으로 평가받습니다.

 

2. CRF 모듈과의 결별 (DeepLab v3)

딥러닝 모델 자체의 표현력이 고도화됨에 따라 큰 패러다임의 변화가 생겼습니다. DeepLab v1의 성공 공신이었던 Fully Connected CRF 모듈은 사실 미분 계산이 까다로워 전체 시스템을 한 번에 학습(End-to-End Learning)시키기 어렵고, 추론 시간이 오래 걸린다는 결정적 단점이 존재했습니다. DeepLab v3 모델에 이르러 연구진은 고도화된 ASPP 구조만으로도 충분히 날카로운 윤곽선을 예측할 수 있음을 증명하며, CRF 모듈을 모델 파이프라인에서 완전히 덜어내는 과감한 결정을 내렸습니다.

 

3. 트랜스포머 시대로의 패러다임 전환 (2024~2025 트렌드)

현재 컴퓨터 비전의 최전선은 합성곱(CNN) 중심에서 트랜스포머(Transformer) 기술 기반으로 이동하고 있습니다. 2024년과 2025년 현재 가장 주목받는 모델인 Mask2Former는 VGG나 ResNet 대신 Swin Transformer와 같은 계층적 트랜스포머를 백본으로 사용합니다. 과거 DeepLab이 클래스별로 분할하는 시만틱 세그멘테이션에 집중했다면, Mask2Former는 디코더의 교차 어텐션(Cross-attention) 메커니즘을 활용하여 개별 객체까지 식별하는 인스턴스 세그멘테이션(Instance Segmentation)과 파놉틱 세그멘테이션(Panoptic Segmentation) 영역까지 단 하나의 아키텍처로 통일해 버리는 기염을 토하고 있습니다. 모델 구조의 주도권은 트랜스포머 계열로 넘어갔을지 모르나, 해상도 손실을 방어하고 픽셀 간의 거시적인 전역 정보를 엮어내야 한다는 DeepLab v1의 근본적인 문제의식과 설계 철학은 현대 최신 모델들 속에도 여전히 깊숙이 계승되어 흐르고 있습니다.

 

9. 마무리

DeepLab v1 논문은 컴퓨터 비전 역사에서 매우 독특하고 창의적인 지점을 점유하고 있습니다. 딥러닝이라는 고차원의 의미론적(Semantic) 분석 도구와, 오래된 수학적 근간을 지닌 그래픽 모델(CRF)이라는 저차원의 픽셀 경계 최적화 도구를 절묘하게 융합시켰기 때문입니다. 망의 깊이를 파괴하지 않고 수용 영역을 지켜낸 Atrous Convolution의 발상은 단순히 성능을 높인 것을 넘어, 딥러닝 망이 이미지를 바라보는 공간적 관점을 근본적으로 재해석했다는 점에서 학계에 큰 영감을 주었습니다.   

 

하지만 이 기념비적인 논문의 아이디어나 이를 계승한 아키텍처를 실제 산업 환경에 적용하려 할 때, 엔지니어들이 뼈저리게 체감하게 될 실무적인 주의점과 한계점 역시 명확히 짚어두어야 합니다.

 

첫째, 막대한 GPU 메모리 소모(VRAM 병목)를 감당해야 합니다.

모델 내부에서 이미지를 최소한으로 깎아내고 8분의 1이라는 큰 해상도 스케일을 망 끝단까지 유지한 채로 연산을 수행한다는 것은, 텐서(Tensor)의 부피가 일반적인 분류 모델과는 비교도 안 되게 거대하다는 것을 의미합니다. 고해상도의 항공 위성 사진이나 초정밀 의료 영상 데이터(MRI 등)를 학습시키려 할 때 무심코 배치 사이즈(Batch size)를 2나 4로만 늘려도 즉시 Cuda Out Of Memory(OOM) 에러 화면을 마주하게 될 것입니다. 실무 현장에서 하드웨어 자원이 제한적일 경우, TensorFlow 환경에서 allow_growth=True 옵션을 통해 동적으로 메모리를 조절하거나 per_process_gpu_memory_fraction을 강제 할당하는 테크닉이 요구됩니다. 성능을 조금 희생하더라도 VGG-16 대신 MobileNet과 같은 경량형 백본을 이식하는 실용적인 타협안을 고려하는 것도 필수적입니다.   

 

둘째, CRF의 단절성과 오작동 변수입니다.

논문이 극찬한 Fully Connected CRF 알고리즘은 수학적으로 우수하지만, 결국 CPU에서 작동하는 후처리 파이프라인으로 단절되어 있습니다. 이는 데이터를 넣고 끝까지 한 번의 기울기로 업데이트하는 최신 종단 간(End-to-End) 학습 철학에 반하는 방식입니다. 특히 태양광 패널의 미세한 균열 검출이나 흐린 날씨 속 자율주행 데이터처럼, 사물 간의 명도나 색상 대비가 뚜렷하지 않은 환경에 그대로 적용할 경우, CRF가 미세한 객체의 픽셀을 배경 노이즈로 덮어버리는 치명적인 오작동이 일어날 가능성을 배제할 수 없습니다.   

 

마치며

그럼에도 불구하고 DeepLab v1은 세그멘테이션을 위해 딥러닝이 취해야 할 '공간적 정보 보존'이라는 개념을 명확히 정립했다는 점에서 높은 가치를 지닙니다. 오늘날 자율주행 차량이 비 오는 환경에서도 도로와 보행자의 영역을 구분해 내고 , 의료진이 암세포의 경계선만을 픽셀 단위로 발라내는 시스템의 근원에는 결국 이들이 고민했던 흔적이 담겨 있습니다. 앞으로도 모델의 파라미터는 더욱 콤팩트하게 다이어트하면서 망이 바라보는 시야각을 무한정 넓혀나가는 '공간 왜곡'의 방법론들은, 자율주행과 로보틱스 등 다양한 시각 지능 분야에서 변함없는 원동력으로 활약할 것입니다.   



 

반응형