Matlab 使用ReLU层进行慢速训练
我试着在Matlab2014b上实现ReLU激活功能,但我不确定我是否做对了。我将pureline.m和+pureling(作为模板)文件夹复制到工作目录中。并对其进行了如下更改:Matlab 使用ReLU层进行慢速训练,matlab,neural-network,Matlab,Neural Network,我试着在Matlab2014b上实现ReLU激活功能,但我不确定我是否做对了。我将pureline.m和+pureling(作为模板)文件夹复制到工作目录中。并对其进行了如下更改: function a = ReLU(n,varargin) if ischar(n) a = nnet7.transfer_fcn(mfilename,n,varargin{:}); return end a = ReLU.apply(n); end function a = apply(n,
function a = ReLU(n,varargin)
if ischar(n)
a = nnet7.transfer_fcn(mfilename,n,varargin{:});
return
end
a = ReLU.apply(n);
end
function a = apply(n,param)
a = max(n,0.01*n);
end
function d = da_dn(n,a,param)
d=ones(size(n));
d(n<0)=0.01;
d(n==0)=0.5;
end
function da = forwardprop(dn,n,a,param)
da = dn;
end
function dn = backprop(da,n,a,param)
dn = da;
end
function s = isScalar
s = true;
end
function flag = discontinuity(n,param)
flag = false(1,size(n,2));
end
function or = outputRange
or = [0 inf];
end
function ir = activeInputRange
ir = [-inf inf];
end
function param = parameterInfo
param = [];
end
function t = type
t = 'transfer_fcn';
end
function name = name()
name = 'ReLU';
end
函数a=ReLU(n,varargin)
如果ischar(n)
a=nnet7.transfer_fcn(mfilename,n,varargin{:});
返回
结束
a=重新应用(n);
结束
函数a=应用(n,参数)
a=最大值(n,0.01*n);
结束
函数d=da_dn(n,a,param)
d=个(尺寸(n));
d(n)