tf.nn.conv2d в numpy или scipy (с 4-мя весами)? - PullRequest
1 голос
/ 17 марта 2019

Для части встроенного проекта я обучил сеть в Tensorflow, и теперь я перезагружаю переменные в скрипте модели на основе Numpy / Scipy.Тем не менее, мне неясно, как повторить извилистые шаги с имеющимися у меня весами.

Я посмотрел по этой ссылке: Разница между сверткой Tensorflow и сверткой numpy , но у меня нет 'Это связано с проблемой, когда веса являются четырехмерными.

Это мой код Tensorflow:

# input shape: (1, 224, 224, 1)

weight1 = tf.Variable([3,3,1,16],stddev)
conv1 = tf.nn.conv2d(input,w,[1,1,1,1])

# conv1 shape: (1, 224, 224, 16)

weight2 = tf.Variable([3,3,16,32],stddev)
conv2 = tf.nn.conv2d(conv2,w,[1,1,1,1])

# conv2 shape: (1, 224, 224, 32)

И когда я пытаюсь использовать функции свертки из библиотек Scipy или Numpy,выходные размеры неверны:

from scipy.ndimage.filters import convolve

conv1 = convolve(input, weight1[::-1])

# conv1 shape: (1, 224, 224, 1)

conv2 = convolve(conv1, weight2[::-1])

# conv2 shape: (1, 224, 224, 16)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...