2017-04-26 67 views
1

的成本函数我想改变自动编码的MATLAB中的成本函数,而不是最小化重构误差传统的成本函数。我可以直接在某处明确提及它吗?或者我必须进入Autoencoder的代码。你能否建议我可能需要更改的位置?MATLAB:我们怎样才能改变自动编码

回答

0

我猜你将不得不改变代码本身,因为似乎没有要改变cost function的任何方式。具体来说,传递给trainAutoencoder'LossFunction' parameter似乎有'msesparse'作为唯一可用的选项。

但是,您可以更改成本函数的2个系数:'L2WeightRegularization' coefficient'SparsityRegularization' coefficient。在L2 RegularizationSparsity Regularization术语的形式出现固定的,虽然。这只是它们在成本函数中改变的相对权重。

+0

谢谢您的回答。具体而言,我想修改成本函数(XI-CI)^ 2,其中CI是类的对象的的平均值。目前,损失函数使用(xi-x'i)类型的符号进行重构。我想根据班级的意思重建。你有如何做到这一点的想法? – Shehroz