def main(): import problem_unittests as tests tests.test_model_inputs(model_inputs) tests.test_discriminator(discriminator, tf) tests.test_generator(generator, tf) tests.test_model_loss(model_loss) tests.test_model_opt(model_opt, tf)
d_vars = [var for var in t_vars if var.name.startswith('discriminator')] with tf.control_dependencies(tf.get_collection(tf.GraphKeys.UPDATE_OPS)): d_train_opt = tf.train.AdamOptimizer(learning_rate=learning_rate, beta1=beta1).minimize( d_loss, var_list=d_vars) g_train_opt = tf.train.AdamOptimizer(learning_rate=learning_rate, beta1=beta1).minimize( g_loss, var_list=g_vars) return d_train_opt, g_train_opt """ DON'T MODIFY ANYTHING IN THIS CELL THAT IS BELOW THIS LINE """ tests.test_model_opt(model_opt, tf) # ## 训练神经网络(Neural Network Training) # ### 输出显示 # 使用该函数可以显示生成器 (Generator) 在训练过程中的当前输出,这会帮你评估 GANs 模型的训练程度。 # In[10]: """ DON'T MODIFY ANYTHING IN THIS CELL """ import numpy as np def show_generator_output(sess, n_images, input_z, out_channel_dim, image_mode): """
:param beta1: The exponential decay rate for the 1st moment in the optimizer :return: A tuple of (discriminator training operation, generator training operation) """ m_vars = tf.trainable_variables() d_var = [var for var in m_vars if var.name.startswith("discriminator")] g_var = [var for var in m_vars if var.name.startswith("generator")] with tf.control_dependencies(tf.get_collection(tf.GraphKeys.UPDATE_OPS)): d_opt = tf.train.AdamOptimizer(learning_rate,beta1=beta1).minimize(d_loss,var_list=d_var) g_opt = tf.train.AdamOptimizer(learning_rate,beta1=beta1).minimize(g_loss,var_list=g_var) return d_opt, g_opt """ DON'T MODIFY ANYTHING IN THIS CELL THAT IS BELOW THIS LINE """ tests.test_model_opt(model_opt, tf) # ## 训练神经网络(Neural Network Training) # ### 输出显示 # 使用该函数可以显示生成器 (Generator) 在训练过程中的当前输出,这会帮你评估 GANs 模型的训练程度。 # In[123]: """ DON'T MODIFY ANYTHING IN THIS CELL """ import numpy as np def show_generator_output(sess, n_images, input_z, out_channel_dim, image_mode): """
def unit_test(self): tests.test_model_inputs(self.model_inputs) tests.test_discriminator(self.discriminator, tf) tests.test_generator(self.generator, tf) tests.test_model_loss(self.model_loss) tests.test_model_opt(self.model_opt, tf)