conv-neural-network - caffe 模型中的形状大小不规则
问题描述
当我尝试像这样在 caffe 中制作自己的模型时:
n.data = L.Input(input_param={'shape':{'dim':[1,1,64,64]}})
n.conv1 = L.Convolution(n.data, kernel_size=5,
num_output=16, pad=1, weight_filler=dict(type='xavier'))
n.elu1 = L.ELU(n.conv1, in_place=True)
n.scale1 = L.Scale(n.elu1, bias_term=False, in_place=True)
我得到了 62x62x16 的输出形状,但正确的做法是获得 64x64x16 之一,我的代码有错误吗?
解决方案
output_size 为 ((Input_size+2(padding)-kernel_size)/Stride)+1
Input_size 是 64 , kernel_size 是 5, padding 是 1
所以 ((64+2-5)/1)+1 = 62
您需要更改填充或内核大小。
推荐阅读
- amazon-web-services - 在 EC2 实例上传输基本 yii2 应用程序
- java - 如何使用eclipse与MySQL数据库连接java
- angularjs - Google 地图在 Ionic v1 中无法正常工作
- raspberry-pi3 - 如何更改 2x16 LCD 显示器的背光颜色
- python - Python对Pandas数据框进行排序会产生随机结果
- sql - 如何通过 SQL 中的某些键删除以区分
- swift - 呈现后无法关闭视图控制器
- typescript - 是否可以在 TypeScript 中的元组解构期间创建一些变量?
- jaxb - 具有多命名空间的 JAXB 解组
- git - 如何在推送后配置 git hook post-recieve 以更新镜像存储库?