How can I define multiply constant layer in Caffe (like MulConstant in Torch). I need to add it predefined const to existing network. Caffe fails to parse my attempt to scale everything by 0.85:
layers {
name: "caffe.ConstantMul_0"
type: "Eltwise"
bottom: "caffe.SpatialConvolution_0"
top: "caffe.ConstantMul_0"
eltwise_param {
op: MUL
coeff: 0.85
}
}
It is possible to do with Power Layer, just set up power to 1 and scale to whatever you need:
layer {
name: "caffe.ConstantMul_1"
bottom: "caffe.SpatialConvolution_3"
top: "caffe.ConstantMul_1"
type: "Power"
power_param {
power: 1
scale: 0.85
shift: 0
}
}
Eltwise layer can do three types of operations - PROD, SUM, MAX. You can see more about this here
In your case, the op
paramter should be set as PROD.
layers {
name: "caffe.ConstantMul_0"
type: "Eltwise"
bottom: "caffe.SpatialConvolution_0"
top: "caffe.ConstantMul_0"
eltwise_param {
op: MUL
coeff: 0.85
}
}
来源:https://stackoverflow.com/questions/39075187/caffe-constant-multiply-layer