1
的成本函數我想改變自動編碼的MATLAB中的成本函數,而不是最小化重構誤差傳統的成本函數。我可以直接在某處明確提及它嗎?或者我必須進入Autoencoder的代碼。你能否建議我可能需要更改的位置?MATLAB:我們怎樣才能改變自動編碼
的成本函數我想改變自動編碼的MATLAB中的成本函數,而不是最小化重構誤差傳統的成本函數。我可以直接在某處明確提及它嗎?或者我必須進入Autoencoder的代碼。你能否建議我可能需要更改的位置?MATLAB:我們怎樣才能改變自動編碼
我猜你將不得不改變代碼本身,因爲似乎沒有要改變cost function的任何方式。具體來說,傳遞給trainAutoencoder
的'LossFunction'
parameter似乎有'msesparse'
作爲唯一可用的選項。
但是,您可以更改成本函數的2個係數:'L2WeightRegularization'
coefficient和'SparsityRegularization'
coefficient。在L2 Regularization和Sparsity Regularization術語的形式出現固定的,雖然。這只是它們在成本函數中改變的相對權重。
謝謝您的回答。具體而言,我想修改成本函數(XI-CI)^ 2,其中CI是類的對象的的平均值。目前,損失函數使用(xi-x'i)類型的符號進行重構。我想根據班級的意思重建。你有如何做到這一點的想法? – Shehroz