1. 컴퓨터 비전 소개

컴퓨터 비전은 시각적 정보를 컴퓨터로 처리하고 이해하는 분야입니다. 이는 low-level(픽셀 단위 처리), mid-level(여러 픽셀을 묶어 처리), high-level(이미지 전체를 처리) 작업으로 나눌 수 있습니다. 예를 들어, 이미지 크기 조정은 low-level, 파노라마 스티칭은 mid-level, 이미지 분류는 high-level 작업에 해당합니다.

고전적인 컴퓨터 비전 기법은 여전히 중요합니다. 딥러닝으로 해결하기 어려운 문제나 딥러닝 결과의 후처리, 데이터 정제 등에 활용됩니다. 예를 들어, 모폴로지 연산이나 윤곽선 검출 같은 기법들은 여전히 유용하게 사용되고 있습니다.

2. 컴퓨터 비전 모델의 구조

컴퓨터 비전 모델은 크게 Backbone, Decoder, Encoder로 구성됩니다. Backbone은 기본적인 시각 정보(Visual Feature)를 추출하는 역할을 합니다. Decoder는 추출된 특징을 활용해 원하는 작업(예: 분류, 검출, 분할)을 수행합니다. Encoder는 Backbone과 Decoder 사이에서 추가적인 정보 처리를 담당합니다.

예를 들어, 이미지 분류 작업에서 Backbone은 이미지의 주요 특징을 추출하고, Decoder는 이를 바탕으로 클래스별 확률을 출력합니다. 객체 검출에서는 Decoder가 객체의 위치와 클래스를 동시에 예측합니다.

3. Backbone Deep Dive: CNN과 Vision Transformer

CNN(Convolutional Neural Network)은 컴퓨터 비전의 핵심 모델입니다. 이미지의 지역성과 위치 불변성을 잘 활용하며, Convolution, Activation, Pooling 등의 레이어로 구성됩니다. AlexNet, VGG, ResNet, EfficientNet 등 다양한 CNN 아키텍처가 개발되었으며, 각각 깊이, 넓이, 효율성 등을 개선했습니다.

최근에는 Vision Transformer가 주목받고 있습니다. NLP에서 성공한 Transformer 구조를 이미지에 적용한 것으로, 이미지를 패치로 나누어 처리합니다. Self-attention 메커니즘을 통해 이미지의 전역적 관계를 효과적으로 포착할 수 있습니다. Swin Transformer와 같은 변형 모델도 등장하여 CNN의 장점을 일부 차용하고 있습니다.

4. 주요 컴퓨터 비전 문제

이미지 분류: 이미지가 어떤 클래스에 속하는지 판단하는 문제입니다. 정확도, 정밀도, 재현율, F1 점수 등의 메트릭으로 성능을 평가합니다.

객체 검출: 이미지 내 객체의 위치와 클래스를 동시에 예측하는 문제입니다. IoU, PR 곡선, mAP 등으로 성능을 측정합니다. R-CNN 계열의 2-stage detector와 YOLO 계열의 1-stage detector, 최근의 Transformer 기반 모델 등 다양한 접근법이 있습니다.

시맨틱 세그멘테이션: 이미지의 각 픽셀을 특정 클래스로 분류하는 문제입니다. FCN, U-Net 등의 모델이 제안되었으며, 최근에는 Transformer 기반 모델도 등장했습니다. Pixel Accuracy, IoU, Dice Coefficient 등으로 성능을 평가합니다.

5. 최신 컴퓨터 비전 트렌드

최근 컴퓨터 비전 분야에서는 Foundation Model이 주목받고 있습니다. 이는 대규모 데이터로 사전 학습된 모델을 다양한 작업에 적용하는 방식입니다. 예를 들어, Segment Anything Model(SAM)은 다양한 세그멘테이션 작업에 범용적으로 사용될 수 있습니다.

또한, 자기지도학습(Self-supervised Learning) 방법 중 하나인 대조 학습(Contrastive Learning)이 주목받고 있습니다.

CLIP(Contrastive Language-Image Pre-training)과 같은 모델은 이미지와 텍스트 쌍을 대조 학습함으로써, 다양한 시각-언어 작업에 활용될 수 있는 강력한 표현을 학습합니다.

6. 확산 모델의 이해(생성 모델)

확산 모델(Diffusion Model)은 최근 이미지 생성 분야에서 주목받고 있는 생성 모델입니다. 이 모델은 데이터에 점진적으로 노이즈를 추가하는 과정(전방 확산)과 노이즈를 제거하며 데이터를 복원하는 과정(역방향 확산)으로 구성됩니다.

6.1 확산 확률 모델 (DPM)

확산 확률 모델의 핵심 아이디어는 다음과 같습니다:

전방 확산: 원본 이미지에 점진적으로 가우시안 노이즈를 추가합니다. 이 과정은 마르코프 체인으로 모델링되며, 각 단계는 이전 단계에만 의존합니다.
역방향 확산: 노이즈가 완전히 추가된 이미지로부터 시작해 점진적으로 노이즈를 제거하며 원본 이미지를 복원합니다. 이 과정은 학습 가능한 신경망으로 모델링됩니다.

모델은 각 단계에서 추가된 노이즈를 예측하도록 학습됩니다. 이를 통해 노이즈 제거 과정을 학습하고, 결과적으로 새로운 이미지를 생성할 수 있게 됩니다.

6.2 디노이징 확산 확률 모델 (DDPM)

DDPM은 DPM을 개선한 모델로, 주요 특징은 다음과 같습니다:

간소화된 손실 함수: DDPM은 각 시점에서 추가된 노이즈를 직접 예측하는 간단한 형태의 손실 함수를 사용합니다.

U-Net 구조: 노이즈 예측을 위해 U-Net 구조의 신경망을 사용합니다. 이는 이미지의 다양한 스케일의 특징을 효과적으로 처리할 수 있게 합니다.

생성 과정: 완전한 노이즈 이미지에서 시작해 점진적으로 노이즈를 제거하며 이미지를 생성합니다. 이 과정에서 각 단계의 중간 결과를 관찰할 수 있어, 생성 과정의 해석이 용이합니다.

7. 확산 모델의 개선

확산 모델의 주요 한계점은 느린 생성 속도입니다. 이를 개선하기 위한 여러 방법들이 제안되었습니다:

7.1 DDIM (Denoising Diffusion Implicit Model)

DDIM은 마르코프 체인 가정을 완화하여 더 적은 단계로 이미지를 생성할 수 있게 합니다. 이를 통해 생성 속도를 크게 향상시킬 수 있습니다.

7.2 Denoising Diffusion GANs

이 방법은 GAN(Generative Adversarial Network) 구조를 도입하여 더 적은 단계로 복잡한 분포를 학습할 수 있게 합니다. 특히 노이즈가 적은 단계에서의 분포를 더 정확하게 모델링할 수 있습니다.

7.3 Progressive Distillation

이 기법은 학습된 확산 모델로부터 더 적은 단계로 동작하는 모델을 점진적으로 증류(distill)합니다. 이를 통해 생성 속도를 높이면서도 품질을 유지할 수 있습니다.

8. 잠재 확산 모델 (Latent Diffusion Model, LDM)

LDM은 확산 과정을 픽셀 공간이 아닌 저차원의 잠재 공간에서 수행합니다. 이 접근법의 주요 특징은 다음과 같습니다:

오토인코더 사용: 이미지를 저차원 잠재 표현으로 압축하고, 이를 다시 이미지로 복원하는 오토인코더를 사용합니다.

잠재 공간에서의 확산: 확산 과정을 잠재 공간에서 수행함으로써 계산 효율성을 크게 높입니다.

고해상도 이미지 생성: 잠재 공간에서의 효율적인 연산으로 인해 고해상도 이미지 생성이 가능해집니다.

조건부 생성: 텍스트, 레이아웃, 마스크 등 다양한 조건을 기반으로 이미지를 생성할 수 있습니다.

LDM은 Stable Diffusion 등의 유명한 텍스트-이미지 생성 모델의 기반이 되었습니다.

9. 확산 모델의 개인화

확산 모델을 특정 대상이나 스타일에 맞게 조정하는 '개인화' 기법들이 제안되었습니다:

9.1 Textual Inversion

소수의 이미지(3-5개)만으로 새로운 개념을 표현하는 임베딩을 학습합니다. 이를 통해 특정 물체나 스타일을 텍스트로 표현하고 생성에 활용할 수 있습니다.

9.2 DreamBooth

사전학습된 텍스트-이미지 모델의 일부를 미세조정하여 특정 대상을 학습합니다. 이 방법은 대상의 정체성을 유지하면서도 다양한 상황에서의 이미지를 생성할 수 있습니다.

9.3 LoRA (Low-Rank Adaptation)

모델의 가중치 변화를 저랭크 행렬로 표현하여 효율적으로 파인튜닝합니다. 이 방법은 적은 수의 파라미터만으로도 효과적인 개인화가 가능합니다.

이 외에도 ControlNet, Face0, IP-Adapter 등 다양한 개인화 및 제어 기법들이 제안되어 확산 모델의 활용 범위를 넓히고 있습니다.

profile
인공지능관련 작업중

0개의 댓글