2017-02-13 3 views
0

tf.slim.conv2d関数で2つの畳み込みレイヤーを適用しようとしていますが、基本的に入力画像のサイズを毎回半減させています。その後、元の画像形状を戻すためにconvolution2d_transposeを適用したいと思います。問題は、転置畳み込み関数の使い方を正確には知らないことであり、ドキュメントはそれほど役に立ちません。Tensorflow.slimを使用してconvolution2d_transposeを適用する

私は、カスタムラッパーを使用して、しかし、ここで私がこれまで持っているものですしています:

Input Batch [8, 161, 141] ----> Conv2d [outputs = 32, 
kernel_size = [41,11], stride= [2,2]] 
which cuts the original image in half, and another such layer which cuts it again. 

私は今、これらの二つの層の効果を逆にするconvolution_transpose関数を適用するにはどうすればよいですか?

+0

一つの方法は、[テスト](httpsであります://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/kernel_tests/conv2d_transpose_test.py)大文字と小文字の区別があれば、それ以上の文書に役立ちます。 – drpng

答えて

0

あなたは上記提供tensorflow api-docsリンクによると:

def convolution2d_transpose(
inputs, 
num_outputs, 
kernel_size, 
stride=1, 
padding='SAME', 
data_format=DATA_FORMAT_NHWC, 
activation_fn=nn.relu, 
normalizer_fn=None, 
normalizer_params=None, 
weights_initializer=initializers.xavier_initializer(), 
weights_regularizer=None, 
biases_initializer=init_ops.zeros_initializer(), 
biases_regularizer=None, 
reuse=None, 
variables_collections=None, 
outputs_collections=None, 
trainable=True, 
scope=None): 

あなたは、あなたの例のために、このようにそれを利用することができます:起動する

slim.convolution2d_transpose(input_tensor, 32, [4,4], [2,2], scope='output') 
関連する問題