Получение формы вывода слоя деконволюции с использованием tf.nn.conv2d_transpose в tenorflow

Согласно этомубумага, выходная формаN + H - 1, N высота или ширина ввода,H высота ядра или ширина. Это очевидный обратный процесс свертки. эторуководство дает формулу для расчета выходной формы свертки, которая(W−F+2P)/S+1, W - размер ввода,F - размер фильтра,P - размер подкладки,S - шагать. Но вTensorflowЕсть тестовые примеры, такие как:

  strides = [1, 2, 2, 1]

  # Input, output: [batch, height, width, depth]
  x_shape = [2, 6, 4, 3]
  y_shape = [2, 12, 8, 2]

  # Filter: [kernel_height, kernel_width, output_depth, input_depth]
  f_shape = [3, 3, 2, 3]

Итак, мы используемy_shape, f_shape а такжеx_shapeпо формуле(W−F+2P)/S+1 рассчитать размер отступаP, От(12 - 3 + 2P) / 2 + 1 = 6, мы получаемP = 0.5, который не является целым числом. Как деконволюция работает в Tensorflow?

Ответы на вопрос(2)

Ваш ответ на вопрос