2d画像で構成されるデータサンプルに畳み込みレイヤを使用します。フィルタの形状の1つの選択肢は1x2であり、隣接する2つのピクセルの1x2連続ブロックに作用する。 2ピクセルにも作用するフィルタを使用したいが、ピクセルはそれらの間に別のピクセルで区切られている場合はどうすればよいですか?ニューラルネットワークにおける畳み込みのためのそのようなフィルタを符号化することは可能ですか?conv2dの任意のフィルタ(長方形とは対照的に)
1
A
答えて
0
不可能です。 Convolutionはn-dim hypercubeで動作しますので、あなたが示唆しているものは畳み込みではなく、何らかのペドロponte演算子です。あなたはwrite it on your own(tf conv演算子に基づいて)まで自由ですが、それは簡単ではなく、たぶん畳み込みよりも良い結果を達成できません。
4
コードは、それが
を動作させるためにここConv2dだけ中心と外の値を通過することができ、5×5のマスクのカーネルを定義するいくつかの例のコードです。
import tensorflow as tf
import numpy as np
image = np.array(range(25)).reshape([1,5,5,1]).astype(float)
image = tf.stop_gradient(tf.constant(image , dtype=tf.float32))
kern = tf.Variable(tf.ones([5,5,1,1] , dtype=tf.float32))
mask = np.array([[ 1., 1., 1., 1., 1.],
[ 1., 0., 0., 0., 1.],
[ 1., 0., 1., 0., 1.],
[ 1., 0., 0., 0., 1.],
[ 1., 1., 1., 1., 1.]]).reshape([5,5,1,1])
mask_variable = tf.Variable(mask , dtype=tf.float32)
mask = tf.stop_gradient(mask_variable)
output = tf.nn.conv2d(image , kern , strides=[1,1,1,1] , padding="VALID")
output_with_mask = tf.nn.conv2d(image , kern * mask , strides=[1,1,1,1] , padding="VALID")
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print "Using whole kernal :",sess.run(output)
print "Using kernal with a mask :",sess.run(output_with_mask)
と出力
Using whole kernal : [[[[ 300.]]]]
Using kernal with a mask : [[[[ 204.]]]]
マスクがtf.stop_gradientに包まれているのでさらに、バックプロパゲーションは、マスクを変更することはありません。 @のビジェイ-mと、これを行うことが可能であるはい
概要
は述べて、そしてあなたはおそらく、サルバドール・ダリが述べた@としてこれを行うにはしたくないん。もちろん、あなたがこれをやりたいと望む理由は学問的な理由があります。
歓声
0
(どこにでも配置重みを持つ)
任意のフィルタが使用できませんが、あなたの具体的な例を扱うことができる予備グリッド、上の重みを置くatrous畳み込みという便利なバージョンによって制限が存在します。例えば
は、あなたのケースでは、あなたは0と1の「マスク」を作成し、重みにそれを適用し、通常の畳み込みを行うことができます
W = tf.Variable(tf.random_uniform((1, 2, n_in, n_out))
tf.nn.atrous_conv2d(value, W, (1, 2), 'SAME')
関連する問題
- 1. Logstashフィルタは、任意のlogline
- 2. は、任意のasp.netのコントロールは `形状
- 3. データフレーム上の任意の数のフィルタ
- 4. Convolution2D対KerasライブラリのConv2D、Python
- 5. 任意のビューの長押し位置の検出方法は?
- 6. 列の値と任意の長さの文字列を照合する方法は?
- 7. 片面対角の長方形の箱
- 8. Adaの任意の長さ整数
- 9. ハスケル、リスト上のパターンマッチング任意の長さ
- 10. pythhonデータフレームのフィルタ条件:任意のより高速な方法
- 11. #!パーマリンクの#とは対照的に
- 12. サービスごとに任意の長さのリクエストを許可する
- 13. Python sum長さが任意の配列
- 14. 任意の形式のビデオをAS3の.flv形式にエンコード
- 15. 任意のテキストデータ形式の解析
- 16. 任意の長さのクレジットカードcvvの作成方法
- 17. MATLABで任意波形を作成し、任意の関数ジェネレータ(agilent AG33220A)にダウンロード
- 18. kerasのConv2Dレイヤーの出力形状
- 19. フレックス4の長方形/ジオメトリオブジェクトを参照するには?
- 20. D3線グラフ(任意のデータ形式)
- 21. PHPは、任意のパラメータと任意の方法で値を取る
- 22. データフレームを効率的に任意の長さのリストに変換する方法はありますか?
- 23. 固定長方形の長方形パッキング
- 24. ルートの後に任意のテキストを反応ルータと照合する方法
- 25. 任意のerbファイルで任意のビューヘルパーのメソッドにアクセスする方法は?
- 26. Xcodeの「フレーム長方形」と「レイアウト長方形」
- 27. は、任意の
- 28. has_manyとhas_one、任意の長所/短所ですか?
- 29. シンプルなSIPベースのクライアントとの対話...任意のアイデア
- 30. kerasでフィルタを指定する方法conv2d
を試みることができますか? –