2016-08-22 5 views
1

Caffe(TorchのMulConstantのような)の定数をレイヤーに定義する方法を教えてください。私は既存のネットワークにあらかじめ定義されたconstを追加する必要があります。 カフェは0.85で、すべてを拡張する私の試みを解析するために失敗します。Сaffe定数倍数レイヤー

layers { 
    name: "caffe.ConstantMul_0" 
    type: "Eltwise" 
    bottom: "caffe.SpatialConvolution_0" 
    top: "caffe.ConstantMul_0" 
    eltwise_param { 
    op: MUL 
    coeff: 0.85 
    } 
} 
+0

明確化文言 – Prune

答えて

3

ちょうどあなたが必要とするものは何でも1とスケールにパワーを設定し、Power Layerで行うことが可能です:

layer { 
    name: "caffe.ConstantMul_1" 
    bottom: "caffe.SpatialConvolution_3" 
    top: "caffe.ConstantMul_1" 
    type: "Power" 
    power_param { 
    power: 1 
    scale: 0.85 
    shift: 0 
    } 
} 
1

Eltwise層は、の3種類の操作を行うことができます - PROD、SUM、MAXを。この詳細についてはこちらをご覧くださいhere

あなたの場合、opパラメータをPRODに設定する必要があります。

layers { 
    name: "caffe.ConstantMul_0" 
    type: "Eltwise" 
    bottom: "caffe.SpatialConvolution_0" 
    top: "caffe.ConstantMul_0" 
    eltwise_param { 
    op: MUL 
    coeff: 0.85 
    } 
} 
+0

こんにちは、あなたの答えのおかげで、それが動作しません。 : "チェック失敗:MinBottomBlobs()<= bottom.size()(2対1)Eltwise Layerは少なくとも2つの下のブロブを入力として取ります。 そのキャフェは2つの行列だけを乗算することができますが、行列とconstは乗算できません...私はどこで求めることができるのか分かりませんが、単純な操作の仕方は全く分かりません。 – UndeadDragon