2017-02-13 8 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) 사례 파일 (docs 이상으로 도움이되는 경우). – 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')