卷积神经网络初步学习

来源:互联网 发布:作弊大师软件下载 编辑:程序博客网 时间:2024/05/17 19:19

BPBack Propagation)(反向传播)算法:

隐含层的个数选择

h=sqrt(m+n)+a

h表示隐含层的节点个数,m表示输入层的节点个数,n表示输出层的节点个数,a表示1-10之间的调节常数



卷积神经网络


train是训练集,val是验证集,test是测试集。

train是网络模型在训练的时候用的,而val是网络模型在训练过程中测试用的,val是不影响训练的。在训练的时候可以得到train和val这两个数据集的误差率,利用这个误差率可以绘制出学习曲线,通过观察学习曲线,你可以发现一些网络模型的问题,然后再根据这些问题去调整网络参数。test就是网络模型训练完毕测试用的。


卷积层

卷积层中的卷积核的大小和数目是由人手动设置的,卷积核中的值是由网络训练得到的

feature map的数目是由卷积核的数目决定的,例如有54个卷积核就有54个feature maps。

图片大小:m*n,卷积核个数:h,feature map:a

单通道情况下:每个feature map=一个卷积核对图片进行卷积运算,然后加上biases,

多通道情况下(3通道):每个feature map=一个卷积核对图片每个通道分别进行卷积运算,然后对应位置相加,在加上biases


caffe

卷积运算的输出大小:

height_out=(height+2*pad-kernel_size)/stride+1

width_out=(width+2*pad-kernel_size)/stride+1

其中的pad表示外围填充数目,stride表示步长


deploy.prototxt文件

如果要把训练好的模型拿来测试新的图片,那必须得要一个deploy.prototxt文件,这个文件实际上和test.prototxt文件差不多,只是头尾不相同而已。deploy文件没有第一层数据输入层,也没有最后的Accuracy层,但最后多了一个Softmax概率层。

solver.prototxt文件参数详解

http://blog.csdn.net/u010417185/article/details/52182833


0 0
原创粉丝点击