caffe LayerSetUp和Reshape?

kli*_*lpr 1 machine-learning neural-network deep-learning caffe

我正在阅读caffe源代码.
我很困惑LayerSetUpReshape方法.
有些层有这两种方法,有些层有一层或没有...为什么?任何人都可以向我解释这个吗?

Sha*_*hai 6

LayerSetUp在加载网络时调用一次.它的目的是
(a)验证图层具有恰当数量的输入/输出blob
(b)从原型文本中读取图层的参数
(c)初始化内部参数

另一方面,Reshape用于为参数和输出blob分配内存,甚至可以在设置网络后调用.例如,检测网络通常会改变输入形状,从而改变Reshape所有后续的斑点.