생성자와 판별자 모두 옵티마이저로 아담(Adam)을 사용하도록 설정합니다.
코드 13-21 옵티마이저 정의
G_optimizer = tf.keras.optimizers.Adam()
D_optimizer = tf.keras.optimizers.Adam()
파라미터의 초깃값을 설정합니다.
코드 13-22 파라미터의 초깃값 설정
noise_dim = 100
num_of_generated_examples = 16
BATCH_SIZE = 1
seed = tf.random.normal([num_of_generated_examples, noise_dim]) ------ 정규 분포의 난수를 생성한 후 seed에 저장
이제 생성자에서 데이터 생성을 위한 노이즈 데이터를 준비합니다. 그런 다음 자동 실행(eager execution)을 이용하여 반복 학습을 진행할 함수를 만듭니다.
또한, 생성자와 판별자의 오차를 계산하고, 오차 값을 사용하여 기울기를 계산한 후 옵티마이저로 오차 값이 0에 가깝도록 훈련을 반복하는 함수를 정의합니다.