资源简介
这个资源使用实现lenet-5的网络结构来MNIST数据集,代码参考了UFLDL上的相关的代码,以及R. B. Palm实现的CNN中的相关代码,为了适应数据集我把lenet-5输入的大小改为了28*28,c3的每一张特征图都与s4的每一张特征图相关,训练的结果可以达到99.1%
代码片段和文件信息
function checkgrads(netxy)
epsilon = 1e-4;
er = 1e-8;
n = numel(net.layers);
for l = n : -1 : 2
if strcmp(net.layers{l}.type‘Soft‘)
for j = 1 : numel(net.layers{l}.b)
net_m = net; net_p = net;
net_p.layers{l}.b(j) = net_m.layers{l}.b(j) + epsilon;
net_m.layers{l}.b(j) = net_m.layers{l}.b(j) - epsilon;
net_m = cnnff(net_mx);net_m = cnnbp(net_my);
net_p = cnnff(net_px);net_p = cnnbp(net_py);
d = (net_p.L - net_m.L) / (2 * epsilon);
e = abs(d - net.layers{l}.db(j));
if e > er
error(‘numrical graddient checking failed at softb‘);
end
end
for i = 1 : size(net.layers{l}.w1)
for j = 1 : size(net.layers{l}.w2)
net_m = net; net_p = net;
net_p.layers{l}.w(ij) = net_p.layers{l}.w(ij) + epsilon;
net_m.layers{l}.w(ij) = net_m.layers{l}.w(ij) - epsilon;
net_m = cnnff(net_mx); net_m = cnnbp(net_my);
net_p = cnnff(net_px); net_p = cnnbp(net_py);
d = (net_p.L - net_m.L)/(2*epsilon);
e = abs(d - net.layers{l}.dw(ij));
if e > er
error(‘numrical graddient checking faild at softw‘);
end
end
end
end
if strcmp(net.layers{l}.type‘F6‘)
for j = 1 : size(net.layers{l}.b1)
net_m = net;net_p = net;
net_p.layers{l}.b(j) = net_p.layers{l}.b(j) + epsilon;
net_m.layers{l}.b(j) = net_m.layers{l}.b(j) - epsilon;
net_p = cnnff(net_px); net_p = cnnbp(net_py);
net_m = cnnff(net_mx); net_m = cnnbp(net_my);
%db = net.layers{l}.db(j);
d = (net_p.L - net_m.L) / (2 * epsilon);
e = abs(d - net.layers{l}.db(j));
if e > er
error(‘numrical graddient checking failed at F6b‘);
end
end
for i = 1 : size(net.layers{l}.w1)
for j = 1 : size(net.layers{l}.w2)
net_m = net;net_p = net;
net_p.layers{l}.w(ij) = net_p.layers{l}.w(ij) + epsilon;
net_m.layers{l}.w(ij) = net_m.layers{l}.w(ij) - epsilon;
net_p = cnnff(net_px);net_p =cnnbp(net_py);
net_m = cnnff(net_mx);net_m = cnnbp(net_my);
d = (net_p.L - net_m.L) / (2 * epsilon);
e = abs(d - net.layers{l}.dw(ij));
if e > er
error(‘numrical gradient checking failed at F6w‘);
end
end
end
end
if strcmp(net.layers{l}.type‘C5‘)
for i = 1 : size(net.layers{l}.w1)
for j = 1 : size(net.layers{l}.w2)
net_m = net;net_p = net;
net_p.layers{l}.w(ij) = net_p.layers{l}.w(ij) + epsilo
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7089 2015-01-15 09:38 Lenet\checkgrads.m
文件 858 2015-01-13 16:08 Lenet\cnnapplyGrads.m
文件 3248 2015-01-15 10:51 Lenet\cnnbp.m
文件 2475 2015-01-15 11:03 Lenet\cnnff.m
文件 823 2015-01-15 09:37 Lenet\cnnTrain.m
文件 1958 2015-01-13 09:37 Lenet\expand.m
文件 80 2015-01-13 15:01 Lenet\flipall.m
文件 2595 2015-01-13 14:46 Lenet\initialParameters.m
文件 811 2013-09-25 15:14 Lenet\loadMNISTImages.m
文件 516 2013-09-25 15:14 Lenet\loadMNISTLabels.m
文件 60 2015-01-13 14:25 Lenet\sigm.m
文件 7840016 2015-01-14 22:14 Lenet\t10k-images.idx3-ubyte
文件 10008 2015-01-14 22:14 Lenet\t10k-labels.idx1-ubyte
文件 47040016 1996-11-18 23:36 Lenet\train-images.idx3-ubyte
文件 60008 1996-11-18 23:36 Lenet\train-labels.idx1-ubyte
文件 1295 2015-01-15 13:04 Lenet\trainLenet.m
目录 0 2015-01-14 22:24 Lenet
----------- --------- ---------- ----- ----
54971856 17
相关资源
- 基于DSP_Builder的FIR滤波器设计
- Stateflow流程图
- EEGLAB中文手册
- 全国二等奖“华为杯”第十四届中国
- 深度图-人脸姿态-特征提取.zip
- minist.npz数据集
- RS编码verilog代码与参考文章
- 光伏蓄电池的仿真模型,用在微电网
- 捷联惯导算法与组合导航原理 严
- 基于PCA的人脸识别
- VMD原代码.zip
-
Modified GFDM(Eigendecomposition-ba
sed GF - 马尔科夫链转移矩阵
- Mnist手写体训练脚本和测试脚本含训练
- 交流伺服电机PID速度智能控制
- 基于PCA的人脸识别MATLA B实现及GUI设计
- 车牌识别及语音播报
- 图像混沌加密
- libPLS文件包
- MNIST数据集 txt版
- lmdb的MNIST文件
- bp神经网络图像识别
- piotr_toolbox
- 应用hough的虹膜识别
- 投影仪标定程序
- 基于GUI的模拟通信与数字通信系统设
- LDPC仿真程序
- lenaboatbabooncamerahouse标准灰度图像库
- libsvm_V3.1_[FarutoUltimate3.1Mcode]
- mnist_10k_sprite.png图片
评论
共有 条评论