实现稀疏自编码器的cost计算,题目要求见Ufldl,并且按照该网站提供的稀疏自编码器的教程进行编码
cost分为三部分the squared error term, the weight decay term以及sparsity penalty.每次增加一部分以方便调试,比如先计算the squared error term部分,用导数定义进行检验,正确后添加其他的部分。
function [cost,grad] = sparseAutoencoderCost(theta, visibleSize, hiddenSize, ... lambda, sparsityParam, beta, data) % visibleSize: the number of input units (probably 64) % hiddenSize: the number of hidden units (probably 25) % lambda: weight decay parameter % sparsityParam: The desired average activation for the hidden units (denoted in the lecture % notes by the greek alphabet rho, which looks like a lower-case "p"). % beta: