【发布时间】:2017-11-30 13:45:06
【问题描述】:
要构造一个收缩自动编码器,可以使用具有成本函数的普通自动编码器
为了使用 MNIST 数据集实现这一点,我使用 tensorflow 定义了成本函数
def cost(X, X_prime):
grad = tf.gradients(ys=X_prime, xs=X)
cost = tf.reduce_mean(tf.square(X_prime - X)) + tf.reduce_mean(tf.square(grad))
return cost
并使用 AdamOptimizer 进行反向传播。但是,成本不会低于 0.067,这很奇怪。我对成本函数的实现不正确吗?
编辑:
在阅读documentation ontf.gradients 之后,上面的实现会计算
代替。所以我的问题是,你如何在 tensorflow 中明智地做导数组件?
【问题讨论】:
标签: python tensorflow mnist autoencoder