黑马程序员技术交流社区

标题: 【上海校区】利用MatConvNet进行孪生多分支网络设计 [打印本页]

作者: 不二晨    时间: 2018-8-2 15:06
标题: 【上海校区】利用MatConvNet进行孪生多分支网络设计

前面提及到了利用vl_nndist作为多分支网络的特征测度函数,将多个网络的局部输出融合到一起。参见博客:https://blog.csdn.net/shenziheng1/article/details/81263547。 很多文章中也提及到了,除了采用显式的距离测度函数,我们还可以使用全连接层进行设计,其中关键的一环就是如何将多个分支网络的输出拼接成一个输出。Matconvnet中已经开发了这样的函数dagnn.Concat 和 vl_nnconcat。

1. vl_nnconcat2. dagnn.Concat

一个应用实例:

3. 额外补充

关于使用MatConvnetNet中的dagnn.BatchNorm进行批归一化时,应该注意什么?

其实一般情况下,我们直接调用原函数就好了,内部的参数匹配机制会帮助我们识别通道数。

net.addLayers('bn1', dagnn,BatchNorm(), {'input'}, {'output'}, {'bn1f', 'bn1b', 'bn1m'})

如果从代码可读性角度考虑,也可以显式指明参数‘numChannels’:

net.addLayer('bn1', dagnn.BatchNorm('numChannels', 512), {'input'}, {'output'}, {'bn1f', 'bn1b', 'bn1m'});


作者: 梦缠绕的时候    时间: 2018-8-2 16:23

作者: 不二晨    时间: 2018-8-2 17:33
奈斯,棒棒哒




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2