【week8 in ricoh】 Learning CNN
week8:
5.27
1.做CNN practical[1]里的example1,了解CNN模块中的每一个部分
(1)卷积层的卷积过程,输入输出维度变化(2)ReLU(3)Pooling层(4)Normalization
ReLU
Pooling
Normalization
2.做CNN practical[1]里的example2,了解BP算法求导原理(参考[4])
(1)损失函数(2)链式求导法则(3)对参数求导用于参数的迭代跟新(4)对每层输出的求导用于参数求导的方便,求导的trick
(5)正向计算,反向求导,CNN主要的计算过程
5.28
1.看VGGgroup的CNN网络net里的每一层,求出的res的每一层,结合example2及MatConvNet的manual[2],深入理解CNN正向反向的每一步过程
图
2.做CNN practical里的example3,CNN应用的具体应用时的过程
(1)损失函数该如何设置:正则化项,极小化函数(2)正向求输出,评估误差给出反馈,反向求迭代步长(3)其他预处理过程
预处理过程的理解:
3.跟师兄探讨BP的过程
5.29
1.测试FPID数据集[3]Q2、T8提取deepcnn16(VGG组在ImageNet上训练得到)的layer36特征的效果
提升效果并不明显,说明原因不在于网络性能,考虑暂缓fine-tune。
2.和师兄讨论了改进的办法,关注了检索结果里false postive中背景影响及图片旋转带来的影响很大,决定将数据手动裁剪,旋转。
3.手动裁剪数据,opencv写的裁图工具。这里就不贴代码了
opencv也可以调用鼠标响应,左键选择RIO,右键确定。感觉自己完全可以下一个截图工具了
5.30(在学校)
1.测试旋转、及裁剪带来的性能影响
[1]http://www.robots.ox.ac.uk/~vgg/practicals/cnn/index.html#part-4-learning-a-character-cnn
[2]http://www.vlfeat.org/matconvnet/matconvnet-manual.pdf
[3]https://diuf.unifr.ch/diva/FPID/
[4]http://www.cnblogs.com/wentingtu/archive/2012/06/05/2536425.html