2017-05-03 25 views
0

Kerasの2D畳み込みレイヤーなどのフィルターのウェイトが、デフォルトで空間ディメンションに沿って共有されているかどうかを知りたいと思います。はいの場合は、ウェイトを共有しない方法はありますか?Kerasの畳み込みレイヤーのウェイト

+0

何の間で共有されますか?どういう意味?それは畳み込みです...異なるフ​​ィルタは異なる重みを持ち、それぞれの行列乗算で同じ重みを保ちます。 –

答えて

1

私は何をあなたの提示に明確ではないんだけど:単一の畳み込み層で

重みが共有されています。つまり、フィルタは各ストライドと同じ重みを共有します。

ただし、重みがからの間では、2つの畳み込み層はデフォルトではケラでは共有されません。

convレイヤ内のフィルタに共有される部分はありません。 C++ライブラリにオフロードされた場合のコンボリューションの実行以降。

は、具体的には、さらなる参照のために本answer参照:

tf.nn.conv2dの実装()を使用して 最適化されたコードを呼び出すC++で記述されているいずれかの固有(CPU上で)またはcuDNNライブラリ( GPU)ここで実装を見つけることができます。

+0

ありがとう。単一のコンバージョンで、各フィルタまたはフィルタのセットごとに異なる重みを持たせることは可能ですか?ケラスの層?画像の異なる場所で異なる特徴を学習したいとします。 –

2

私が見つけたのはLocallyConnected2Dでした。

LocallyConnected2D層はConv2D層と同様に動作するが、重みが非共有であることを除いて、即ち、フィルタの異なるセットは、入力のそれぞれ異なるパッチで適用されます。

関連する問題