实现稀疏自编码器的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: weight of sparsity penalty term
% data: Our 64x10000 matrix containing the trainin