我在 Tensorflow 后端使用 Keras。问题是我的 CPU 中只有一个核心在训练期间被积极使用。我以下列方式声明我的模型:class GAN(): def __init__(self): with k.backend.name_scope("Discriminator"): self.discriminator = build_discriminator(input_shape, discriminanator_units) self.discriminator.compile(optimizer=k.optimizers.Adam(0.0005), loss=k.losses.binary_crossentropy, metrics=[k.metrics.binary_accuracy]) with k.backend.name_scope("Generator"): discriminator_frozen = k.Model(self.discriminator.inputs, self.discriminator.outputs, name="Disc_frozen") discriminator_frozen.trainable = False ... # declare input placeholders self.generator = build_generator(input_shape, generator_units) self.prediction = self.generator(inputs=input_list) ... # some Lambda layers evaluation = discriminator_frozen(self.positions_pelvis_relative) self.combined = k.Model(inputs=[*input_list, self.mask, self.adjacency], outputs=[evaluation]) self.combined.compile(optimizer=k.optimizers.Adam(0.0015), loss=self.gan_loss, metrics=[self.displacement_loss, self.discriminator_loss, self.adjacency_loss])当我预训练时self.discriminator,所有 CPU 内核都在使用,但是当我与生成器交替训练时,只使用了 1 个内核。
添加回答
举报
0/150
提交
取消