1. Generative 이름의 의미
→ 생성하는 모델!
→ 무엇을 생성하냐면
실제와 비슷한 분포를 가지는 그럴듯한 가짜 데이터를 생성한다!
(seed vector를 주면 그럴듯한 가짜 데이터를 생성해냄)
→ 랜덤하게 픽셀들 값 세팅한다고 언젠가 이미지가 되냐? 절대 아님!
실제 데이터와 랜덤 데이터는 분포가 다름
실제 데이터는 무언가 메커니즘에 의해 분포를 맞추면서 나타나진다.
seed vector의 분포를 실제 데이터와 비슷하게 맞추어 그 메커니즘을 따라해보자는거지
학습 진행 양상
![](https://blog.kakaocdn.net/dn/SK7XY/btrUr6zPJI4/oqEwOdv4otUdbVinpe3vFk/img.png)
GAN으로 만든 예시
![](https://blog.kakaocdn.net/dn/cq5ChD/btrUuIwKfQw/O0CznF7lQ4LScXgJ4cq0uk/img.png)
💡
Generator 함수 G
![](https://blog.kakaocdn.net/dn/TEPsg/btrUsJD5ASY/6KBkEVI1kxxcBm2Y4tUZcK/img.png)
![](https://blog.kakaocdn.net/dn/bnQT1f/btrUukirYyx/vc9cCwmgXvfrn41Vl3Kp5k/img.png)
2. Adversarial 이름의 의미
adversarial: 적대적인 이라는 의미!
Generator와 Discriminator의 관계
![](https://blog.kakaocdn.net/dn/b2Sz6w/btrUt1KpKRA/3I6P4UYa5WjcQKicKJVdkk/img.png)
Discriminator 함수 D
![](https://blog.kakaocdn.net/dn/dcTSYe/btrUug1swdc/Bxcewk2G2D3NKZymHAgAx0/img.png)
![](https://blog.kakaocdn.net/dn/ETx6n/btrUtvSLy6x/J3vA2T27wwdAiqzpn2UYa0/img.png)
- 학습 초반 & 학습 완료 비교
💡
이렇게 실제 데이터와 가짜 데이터에 대해 discriminator가 비슷한 값 뱉어낼 정도로 학습이 잘되면 → 학습을 중단시키고 generator를 사용하면 된다!
3. Network 이름의 의미
Quick preview of Algorithm
💡
수렴조건
: discriminator가 실제 데이터와 가짜 데이터에 대해 비슷한 값을 내는거The Algorithm
![](https://blog.kakaocdn.net/dn/buuLjp/btrUstVF18b/npYk3cCyl2OKOKTZ92D5nK/img.png)
예시
![](https://blog.kakaocdn.net/dn/bQ3DAj/btrUsJRz2Pu/n9ZKFmo9hGvoSSBBcxmNE0/img.png)
Decoder를 GAN에 사용할 수 있음!
![](https://blog.kakaocdn.net/dn/FIzPD/btrUsPKZ1mu/5TkddhsV4Odx7mdTIdHFRk/img.png)
![](https://blog.kakaocdn.net/dn/I32Fp/btrUsJD5Hsz/rDqRGYXkYtZeWiQYugidI1/img.png)
Image Super-resolution with GAN
💡
GAN을 이용하여 선명한 이미지를 만드는것도 가능하다 → 이때는 Autoencoder 전체를 다 사용
![](https://blog.kakaocdn.net/dn/7B76m/btrUuIjdIgW/CUAwk0MdA3lrjkBWg8ZSHK/img.png)
Uploaded by N2T