728x90
https://pasongsong.tistory.com/287
앞에서 GAN은 Generator와 Discriminator를 가지고 있고 이를 훈련하여 실제 이미지와 유사한 이미지를 만들어 낼 수 있다는 것을 알았다.
그럼 훈련은 어떻게 하는 것인가?
GAN 학습
- 판별기에 실제 데이터를 1이라고 알려준다.
- 판별기에 가짜 데이터를 0이라고 알려준다.
- 판별기에 생성기의 결과를 보여주고, 생성기의 결과가 1이여야 한다고 알려준다.
위에 3단계가 GAN의 핵심 훈련 방법이다.
좀 더 자세하게 보자면 1단계는 이런 그림이다.
판별기에 실제 데이터를 넣고 결과가 1이 나오게 Discriminator를 학습시키면 된다.
2단계이다.
생성기로 만들어진 이미지를 넣고 결과가 1이 나오게 Discriminator만 학습합니다.
만약 Generator까지 학습시키면 위조지폐가 걸렸는데 위조지폐범에게 칭찬을 해준 상황이 됩니다.
3단계이다.
여기서는 Generator를 훈련시킵니다. 생성기는 판별기가 분류할 이미지를 생성하는 역할이며 Discriminator의 결과가 1이 되는 것이 목적입니다.
여기서는 Discriminator를 업데이트 시키지 않습니다. 위와 반대로 이번에는 위조지폐를 구별하지 못한 경찰을 칭찬하는 상황이 됩니다.
이론으로 배웠지만 실제로 GAN을 학습시키는 것은 까다롭다.
Generator와 Discriminator가 적대적인 관계로 발전하는 과정에서 서로 균형이 잘 맞아야하며 학습이 잘 되고 있는지 판단하는 것이 어렵다
728x90
'Generative model' 카테고리의 다른 글
[GAN] GAN의 평가 지표 (0) | 2023.01.03 |
---|---|
[GAN] Simple 1010 pattern (0) | 2022.12.30 |
[GAN] 생성 모델 GAN의 이해 (0) | 2022.12.29 |
[GAN] GANs Generative Adversarial Networks (0) | 2022.12.26 |
[VAE] Variational AutoEncoder (0) | 2022.10.14 |