수달이네 기술 블로그

7. 생성형 인공지능(GAN, VAE, Diffusion 모델 등) 본문

학교공부/생성형 인공지능

7. 생성형 인공지능(GAN, VAE, Diffusion 모델 등)

슬픈 수달이 2025. 10. 15. 22:44

생성모델

생성모델

  • 데이터 셋의 기본 분포를 파악하고 원본과 유사한(맥락에 맞는) 새로운 데이터 포인트를 생성하는 것을 목표로 함.

판별모델

  • 서로 다른 클래스나 카테고리를 분류함.

데이터 표현

이미지 생성 기초: 이미지를 수치데이터로 표현하는 것

  • 이미지의 구성
    • 픽셀 및 그리드
    • 컬러 채널
    • 이미지 크기
    • 채널 깊이
    • 정규화 및 스케일링

영상 생성 모델

생성모델은 이미지를 생성하는 알고리즘과 아키텍처를 제공함.

기존 데이터를 학습하고 학습데이터와 새로운 이미지를 생성함

  • 생성적 적대 신경만(GAN)
  • 가변 자동 인코더(VAE)
  • 확산 모델(Diffusion Model)

노이즈

위의 노이즈는 그림을 그릴 수 있는 인자이다.

잠재공간

잠재공간

  • 생성 모델이 데이터 본질을 간결하게 캡슐화 하는 추상적 차원의 역할.
  • 숨겨진 레이어는 다양하고 의미있는 이미지 생성을 촉진할 수 있는 잠재력을 가짐
  • 연속적이므로 이미지간에 매끄럽게 전환 가능

데이터 매핑

  • 실제 이미지를 잠재 공간 표현으로 변환하는 작업
  • 이미지를 특징, 텍스쳐, 모양등 패턴을 나타내는 잠재변수로 단순화함.

변수 조정

  • 해당 잠재변수를 조정하여 독특한 스타일과 테마를 가진 새로운 이미지를 만듦

조건부 이미지 생성(style GAN,VAE)

조건부 이미지 생성

  • AI가 특정속성, 조건에 따라 이미지를 생성할 수 있도록 지원
  • 제어속성: 텍스트, 레이블, 참조이미지 등으로 조건 정보를 수신

→ 텍스트 제어 속성

→ 이미지 제어 속성

텍스트 + 이미지 합성

  • 텍스트 설명을 시각적으로 변환할 수 도 있음.

평가지표

인셉션 점수

  • 인셉션 모델등의 사전 학습 신경망을 사용해 이미지의 품질, 다양성을 평가
  • 실제 이미지와 얼마나 일치하는지 측정 후 점수가 높을수록 품질과 다양성이 우수

FID(프리쳇 인셉션 거리)

  • 네트워크 특징 공간 상에서 실제 이미지와의 거리를 비교

인간 지각 평가

  • 인간이 사용하는 모델이므로 인간이 직접 평가함

생성형 네트워크 구조

영상 생성형 네트워크: 오토인코더, VAE(Variation auto encoder),GAN, Diffusion model)

언어 생성형 네트워크: GPT, BERT

오토인코더(AE)

  • 인코더 디코더 두가지 구성요소로 이루어짐
  • 입력 데이터를 저차원 잠재 공간 표현으로 매핑
  • 매핑으로 압축된 데이터를 디코더에서 원본 입력데이터로 재구성

  • 이미지 노이즈 제거등으로 응용할 수 있다.
    • 원본 이미지의 필수 특징과 구조를 보존하면서 노이즈만 제거

변형자동인코더(VAE)

오토인코더 아키텍처를 정교하게 확장한 것으로 확률적 차원을 통합함.

  • 기본 데이터 특징을 연속적으로 표현하는 역할을 하는 잠재변수의 개념을 활용
  • z = latent space
  • 다양한 표정을 하는 사람의 얼굴을 생성하는 등 적용가능

확산모델(Diffusion model)

확산 모델은 입력 데이터 분포를 원하는 출력 분포로 점진적으로 변환하는 과정을 모델링하는데 중점을 둠

  • 작은 노이즈를 반복적으로 적용하여 점차 목표와 유사하게 만드는 방식으로 이루어짐
  • 컴퓨터 리소스가 많이 사용된다./
  • 고품질의 일관된 예술적 이미지를 생성가능하다.
  • 회화, 초현실적 시각효과 등생성 가능

GAN (Generative Adversarial Network)

생성적 적대 생성망

  • 생성자와 판별자로 구성된 머신러닝 프레임워크
  • 생성기: 이미지, 텍스트 등의 합성 데이터 인스턴스 생성
  • 판별기: 실제 데이터와 생성된 데이터를 구분
  • GAN은 이미지 생성, 스타일 전송, 데이터 증강등의 작업에 널리 사용됨.
  • 생성물을 판별하는 과정에서 생긴 생성물의 에러나 진짜를 판단하는 과정에서 생긴 에러가 생성자, 판별자에 가중치가 조정된다.

듀얼-네트워크 아키텍처

생성자

  • 무작위 노이즈를 의미있는 표현으로 변환하여 합성데이터 샘플을 생성하고, 실제 사례와 유사한 데이터로 만든다

판별자

  • 데이터 샘플을 평가하여 실제 인스턴스와 생성된 인스턴스를 구분하며, 데이터의 진위확률을 할당해 피드백을 제공한다.
  • 위 두가지 네트워크가 서로 역동적인 상호작용을 하는 것이 GAN의 핵심

손실함수

생성자의 loss + 판별자의 loss의 합즉 loss total이 점차 감소하도록 generation해야함

생성 손실 함수

  • 생성자는 판별자가 실제 데이터로 분류하는 데이터를 생성하여 손실을 최소화

판별 손실 함수

  • 실제 데이터와 생성 데이터를 정확하게 구분하여 손실을 최소화

위 두 손실함수의 균형이 중요함.

내쉬균형점

생성자, 판별자 어느쪽도 일방적으로 성능을 향상시킬 수 없는 상태(안정점)

  • 평형: 생성자가 매우 설득력있는 합성데이터를 생성하여 판별자가 구별 못해야함.
  • 균형을 맞추기 힘들다.

고려사항

모드 축소: GAN은 다양성과 창의성이 부족한 상태에서 제한된 데이터 변형을 생성할 시 붕괴를 겪을 수 있다.

  • 하나의 데이터만 생성하려 함

훈련 불안정: 생성자와 판별자 성능간의 수렴, 진동에 어려움을 겪기 쉽다.

하이퍼 파라미터 튜닝: GAN은 복잡한 하이퍼 파라미터 튜닝을 수반하므로 시간이 많이 소요된다.

윤리적 문제: 딥페이크 등의 윤리적 문제

GAN응용

DCGAN(Deep Convolutional GAN)

완전 연결 레이어, 풀링 레이어를 최대한 배제하고,

Strided Convolution과 Transposed Convolution으로 네트워크 구조를 구성

생성자와 판별자가 배치 정규화를 사용한다.

  • 입력 데이터가 치우쳐져 있을 경우 평균, 분산을 조정해주고,
  • 역전파 했을 때 각 레이어에 제대로 전달되도록 하여 학습이 안정적이 된다.

생성자

  • 마지막 레이어를 제외하고 모든 레이어에 ReLU함수 활성화를 사용하고 마지막 레이어에 Tanh함수를 사용한다.

판별자

  • 모든 레이어에 LeakyReLU를 사용한다.

  • DCGAN으로 만들어진 침실이미지(LSUN침실데이터세트 활용)
  • 침실 비스무리한 무언가가 완성된것을 알 수 있음.

StyleGAN

  1. 일렬로 랜덤 벡터를 받고 이걸로 제너레이터가 생성해내며
  2. 이미지를 생성하고, 원래 이미지와 판별하고, 피드백

음악 생성

MuseGAN

  • 음악을 생성하기 위해 설계된 GAN

생성자

  • 음악시퀀스 생성
  • 양방향 LSTM(장단기 네트워크)를 사용하여 무작위 노이즈 벡터를 입력받아 음표, 이벤트 시퀀스를 생성
    • 과거와 미래의 컨텍스트를 모두 캡처하여 생성된 음악의 일관성과 구조를 향상

판별자

  • 실제와 생성된 음악을 구분

결과적으로 음악스타일과 유사한 멜로디와 하모니를 생성

자연어 생성

TextGAN

단어, 문장 시퀀스를 생성하고, 판별자는 그 진위여부를 판단.

RNN, LSTM또는 GRU와 같은 변형을 사용하여 구성

생성자

  • 무작위 노이즈 벡터, 초기 시드 문장을 입력받아 단어, 문자를 순차적으로 생성
  • 판별자 모델에 의해 보상이 주어지는 정책 그라데이션으로 학습된다.

판별자

  • 실제 텍스트와 생성 텍스트를 구분

SeqGAN

일관되고 정확한 시퀀스를 선택하여 고품질의 시퀀스를 생성하는데 몬테카를로 검색이 사용됨.

  • 강화학습을 적용함.

LeakGAN

GAN과 강화학습의 결합

처음에는 실제 데이터 토큰을 입력받지만 나중에는 자체적으로 생성한 토큰을 입력으로 받음

  • 노출 편향 문제를 완화
  • 생성자가 정확하고 일관된 텍스트를 생성하도록 유도

'학교공부 > 생성형 인공지능' 카테고리의 다른 글

9. 이미지 캡셔닝  (0) 2025.11.07
8. StyleGAN과 가짜 탐지 네트워크  (1) 2025.10.29
6. BERT와 GPT  (0) 2025.10.12
5. 영상트랜스포머의 응용  (0) 2025.10.09
4. 트랜스포머 및 Self Attention  (1) 2025.09.27