gpt4 book ai didi

autoencoder - keras 自动编码器不收敛

转载 作者:行者123 更新时间:2023-12-04 15:20:51 25 4
gpt4 key购买 nike

有人可以向我解释为什么自动编码器不收敛吗?对我来说,下面两个网络的结果应该是一样的。然而,下面的自动编码器没有收敛,而它下面的网络却是。

# autoencoder implementation, does not converge
autoencoder = Sequential()
encoder = containers.Sequential([Dense(32,16,activation='tanh')])
decoder = containers.Sequential([Dense(16,32)])
autoencoder.add(AutoEncoder(encoder=encoder, decoder=decoder,
output_reconstruction=True))
rms = RMSprop()
autoencoder.compile(loss='mean_squared_error', optimizer=rms)

autoencoder.fit(trainData,trainData, nb_epoch=20, batch_size=64,
validation_data=(testData, testData), show_accuracy=False)

 # non-autoencoder implementation, converges

model = Sequential()
model.add(Dense(32,16,activation='tanh'))
model.add(Dense(16,32))
model.compile(loss='mean_squared_error', optimizer=rms)

model.fit(trainData,trainData, nb_epoch=numEpochs, batch_size=batch_size,
validation_data=(testData, testData), show_accuracy=False)

最佳答案

我认为 Keras 的自动编码器实现将编码器和解码器的权重联系在一起,而在您的实现中,编码器和解码器具有单独的权重。如果您的实现在测试数据上带来了更好的性能,那么它可能表明您的问题可能需要未绑定(bind)的权重。

关于autoencoder - keras 自动编码器不收敛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32243285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com