Не зная точных входных размеров, невозможно сказать точный результат. Но можно рассчитать выходное измерение в терминах входного измерения. Формула такая же, как для 2D conv :
Out = (W−F+2P)/S+1
, где W
- размер входного тома, F
- размер ядра, S
- шаг, а P
- заполнение. Так как вы не определяете шаг или отступ, они по умолчанию равны S=1
и P="valid"
(что завершает границу только необходимыми значениями для завершения возможного несоответствия между размерами ядра и входными размерами), упрощая уравнение чтобы:
Out = W - F + 1
Итак, учитывая X
, Y
и Z
в качестве входных измерений:
new_X = X - 3 + 1
new_Y = Y - 3 + 1
new_Z = Z - 3 + 1
Новый вывод будет (new_X, new_Y, new_Z, 128)
. Последний 128
из-за вашего количества фильтров. Следуя слою опроса, он следует той же формуле свертки. Поскольку вы не определили шаг, он будет уменьшать только одну единицу в каждом измерении:
polled_X = new_X - 2 + 1
polled_Y = new_Y - 2 + 1
polled_Z = new_Z - 2 + 1
Чтобы получить окончательный ввод, просто повторите вышеуказанные операции, чтобы получить следующий окончательный вывод:
final_X = ((((X - 3 + 1) - 2 + 1) - 3 + 1) - 2 + 1) = X - 6
final_Y = ((((Y - 3 + 1) - 2 + 1) - 3 + 1) - 2 + 1) = Y - 6
final_Z = ((((Z - 3 + 1) - 2 + 1) - 3 + 1) - 2 + 1) = Z - 6
Помните, что слой опроса не влияет на размерность сложенных фильтров, поэтому ваш конечный результат будет (X - 6, Y - 6, Z - 6, 128)