AnoGAN 코드 리뷰

박찬호·2022년 4월 6일
0

Auto-Encoder

직관적으로 이해하기 쉬움

어려운 비지도학습 문제를 지도학습 문제로 바꿔서 푼 것이라 이해하면 쉽다고 한다.
데이터 그 자체를 Label로 활용한 것이다.

Encoder에게는 이미지를 잘 압축하는 방법을
Decoder에게는 이미지를 잘 생성해내는 방식을 배우게 하는것으로 모델은 동작한다.

GAN

AE의 뒷부분을 떼놓았다 생각한다.

이미지를 생성할 수 있는 Decoder, 다른 말로 Generator로부터 이미지를 생성한다.

latent space는 잠재공간으로 모든 것으로 변할 수 있는 것

Sampling이란 추론? 여러번 sampling 함으로써 원래 분포가 어떤지 추론해보는 것

판별자는 두개의 분포를 명확히 구분하는 것 그 방법으로 유명한 loss Binary Cross Entropy loss

실제 학습을 시킬때는 두가지의 step을 반복하며 학습을 수행하게 된다

D = Discriminator(image_size, hidden_size).to(device)
G = Generator(latent_size, hidden_size, image_size).to(device)

criterion = nn.BCELoss()

d_optimizer = torch.optim.Adam(D.parameters(), lr=0.0002)
G_optimizer = torch.optim.Adam(G.parameters(), lr=0.0002)

step1
G를 멈춰놓고 D를 업데이트 한다.
step2
D를 멈춰놓고 G를 업데이트 한다.

고정시킴에 따라 loss function이 일부 변경된다.

profile
주니어 개발자

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN