본문 바로가기
성장하기

[E-12] 인공지능으로 세상에 없던 새로운 패션 만들기

by 예시카의 일상 블로그 2021. 2. 18.

Opening


  • 생성 모델은 최근에 딥러닝에서 가장 각광을 받고 있는 분야이기도 합니다. 왜 그럴까요? 어떤 분야에서 활용할 수 있는지 한번 생각해 보시고 함께 토론해 보세요.
    • [예시 답안]
    • GAN의 인기 이유
      • 생성 모델은 학습 데이터의 분포를 학습하여 학습 데이터의 분포를 따르는 유사한 데이터를 생성하는 모델이다. 학습 데이터 속의 각 샘플들마다 픽셀들의 분포를 제대로만 알아낼 수 있다면 학습 데이터와 유사한 데이터를 생성해 낼 수 있다. 학습 데이터가 많아짐에 따라 실제와 거의 유사한 수준의 결과물을 만들어 낼 수 있으므로, 새로운 무언가를 만들어 내는 생성 모델링은 인간의 창의성을 극대화하는 재미있는 연구 분야로 인기가 높다.
    • 활용 가능한 분야
      • 저작권을 피할 수 있는 디자인 생성, 가상의 연예인 생성으로 모델료 절감, 패션 디자인 부분에서 인간의 고정 관점을 뛰어넘는 창의적 디자인 생성, 학습 데이터 부족 시 데이터 생성, 고해상도 이미지 생성, 다양한 스타일을 미리 연출해서 고객에게 사전 경험을 제공 가능함 (미장원, 색조화장, 패션 등)

 

Check-up 항목


  • GAN에서 가장 먼저 다루게 되는 DCGAN이 무엇이며 어떤 특징이 있는지 토론해 봅시다.
    • [예시 답안]
    • DCGAN(Deep Convolutional Generative Adversarial Network) 이란
      • GAN에 CNN을 더한 모델인 DCGAN모델을 사용하여 이미지를 생성함
      • DCGAN은 결국, 기존 GAN에 존재했던 fully-connected구조의 대부분을 CNN 구조로 대체한 것임
    • DCGAN의 특징
      1. Discriminator에서는 모든 pooling layers를 strided convolutions 로 바꿈 Generator에서는 pooling layers를 fractional-strided convolutions으로 바꿈
      2. Deep generators의 초기 실패를 막기 위해 Generator와 Discriminator에 batch-normalization을 사용함. 모든 layer에 다 적용하면 sample oscillation과 model instability의 문제가 발생하므로 Generator output layer와 Discriminator input layer에는 적용하지 않았음
      3. Fully-connected hidden layers를 삭제함
      4. Generator에서 모든 활성화 함수를 Relu를 쓰되, 마지막 결과에서만 Tanh를 사용함
      5. Discriminator에서는 모든 활성화 함수를 LeakyRelu를 사용함

 

Closing


  • GAN은 학습해 보면 알겠지만, 학습이 잘 되지 않는 문제점이 있습니다. 어떤 문제점들이 있는지, 이를 어떻게 해결할 수 있는지 찾아보고 함께 토론해 봅시다.
    • [예시 답안]
    • Model Collapsing: 손실 만을 줄이려고 학습하기 때문에 G가 실제 학습 데이터 분포를 모두 커버 하지 못하고 다양성을 잃어버려서 하나의 모드에만 강하게 편중되는 현상
    • 진동: G와 D가 서로 진동하듯 수렴하지 않는 문제
    • 힘의 균형: D 보다 G를 학습시키는 것이 일반적으로 어렵습니다. G가 학습이 잘 안되어서 둘 사이의 힘의 균형이 깨지는 경우 GAN 학습이 더 이상 진전될 수 없습니다. GAN 연구 초기에는 G를 k번 업데이트시키고, D를 한번 업데이트시키거나, 목적함수 비율을 조절하는 등 밸런스를 맞추기 위해 다양한 방식을 시도
    • 평가: 데이터 생성이 목적이므로 정량적인 평가가 어렵습니다.
      1. 정성평가: 사람이 직접 평가
      2. 학습된 분류기를 이용: GAN으로 생성한 데이터를 학습된 분류기 모델에 넣어 분류를 시행함
      3. 인셉션 스코어: G가 생성한 데이터의 다양성(개성)을 측정하는 지표로 클 수록 좋음

 

참고자료


 

Generative Adversarial Network · ratsgo's blog

이번 글에서는 Generative Adversarial Network(이하 GAN)에 대해 살펴보도록 하겠습니다. 이 글은 전인수 서울대 박사과정이 2017년 12월에 진행한 패스트캠퍼스 강의와 위키피디아 등을 정리했음을 먼저

ratsgo.github.io

 

재미있는 인공지능: GAN 생성모델

댓글