如何在keras中进行自定义回调以在VAE训练中生成样本图像?

问题描述 投票:1回答:1

我正在64*64的图像上训练一个简单的VAE模型,我想在每一个纪元或每几个批次之后看到生成的图像,以了解进展情况。

当我训练模型时,我等到训练完成后再看结果。

我试着在Keras中做一个自定义的回调函数,生成图像并保存,但做不到,这可能吗?我找不到类似的东西。

如果你能给我介绍一个解释如何做的源,或者给我看一个例子,那就太好了。

笔记: 我对一个干净的 Keras.callback解决方案 而不是遍历每一个时代,训练和生成样本。

python machine-learning keras callback autoencoder
1个回答
1
投票

是的,它实际上是可能的,但我总是使用matplotlib和一个自定义的函数。例如类似的东西。

for steps in range (epochs):

    Train,Test = YourDataGenerator() # load your images for one loop
    model.fit(Train,Test,batch_size= ...)


    result = model.predict(Test_image)
    plt.imshow(result[0,:,:,:]) # keras always returns [batch.nr,heigth,width,channels]

    filename1 = '/content/runde2/%s_generated_plot_%06d.png' % (test, (steps+1))
    plt.savefig(filename1 )
    plt.close()

我想也有一个干净的keras.callback版本,但我总是使用这种方法,因为你可以使用其他库,以方便每个循环的数据增强。但这只是我的观点,希望至少能帮到你一点。

© www.soinside.com 2019 - 2024. All rights reserved.