딥러닝

이미지? 음성? 소설책? 무엇이든지 만들어내는 인공신경망, GAN(Generative Adversarial Networks)

데이터요리사 2021. 11. 30. 10:04

안녕하세요. 데이터 요리사, 루나 입니다.

인공지능이 어떤 아나운서처럼 똑같이 말을 하기도 하고, 유명화가처럼 그림을 그리기도 하고,

심지어 만화도 노래가사도 창작해냈다는 이야기는 많이 들어보셨을 거에요.

이번시간에는 새로운 컨텐츠를 만들어내는데 사용하는

'GAN(Generative Adversarial Networks)'에 대해서 살펴보겠습니다.

 

 

1 GAN이란?
  • 이미지/영상을 생성하는 생성자(Generator)와 이미지의 진짜/가짜를 판별하는 판별자(Discriminator)가 상호 경쟁하며 정확성을 높이는 머신러닝 알고리즘

이미지 출처(https://kjhov195.github.io/2020-03-09-generative_adversarial_network)

 

2 DCGAN(Deep Convolutional GAN)
  • GAN알고리즘을 구성하는 Generator와 Discriminator 의 Fully connected layer를 CNN(Convolutional Neural Network) 구조로 대체한 알고리즘
  • 생성자(Generator)는 매개변수에서 원래 이미지를 찾아 처리하는 '디컨볼루션 네트워크(De-convolution network)로 구성되며, 입력된 노이즈(랜덤 신호)로부터 이미지를 생성
  • 판별자(Discriminator)는 매개변수를 응축처리하는 '컨볼루션 네트워크'로 구성되며, 여기에 위조 이미지(fake) 또는 실제 이미지(Real)를 입력함

 

3 GAN을 활용한 이상탐지 방법
  • GAN은 일반적으로 생성자를 학습시켜 새로운 데이터를 만들어내는 것을 목적으로 하지만, 이상 탐지 기술에서는 GAN의 생성자가 잠재 벡터(z)를 활용하여 데이터를 잘 생성할 수 있도록 이상적인 잠재 데이터를 추출하는 것을 목적으로 함

AnoGan(https://arxiv.org/pdf/1703.05921.pdf)

AnoGan

  • 생성자(Generator G): 정상 데이터의 주요 특징(z)을 입력 받아 정상 이미지를 생성, 학습이 진행될수록 생성자는 잠재 공간(latent space)에 있는 값을 사용하여 진짜 같은 가짜 정상 이미지를 생성하게됨.
  • 판별자(Discrimicator D): 진짜 정상 이미지(Real)와 생성자가 만든 가짜 정상 이미지(G(z))를 비교하여 잔차(residual)를 계산
  • 잠재공간의 벡터(z) 조절: 이후 생성자와 판별자의 가중치(weight)는 고정시키고, 판별자가 계산하는 잔차의 값이 최소화가 되도록 잠재 공간에 있는 벡터(z)값을 조절하여 기존에 알지 못했던 이상 현상(anomaly event)를 탐지

 

  • (장점) 정상데이터에 비해 비정상(abnormal) 데이터가 부족한 데이터 불균형 문제를 극복했을 뿐만 아니라 라벨링이 어려운 이미지 데이터를 전처리하는 데에 소요되는 시간과 리소스를 단축
  • (단점) 큰 데이터나 실시간 어플리케이션에서는 활용이 어려움

 

함께 보면 좋은 글

 

 

 

 


※ 이 글의 내용을 상업적으로 무단 활용, 편집하는 것은 금지하고 있습니다. 강의, 출판 등 상업적 이용이 필요하신 경우, 문의 바랍니다.

728x90