我的问题是如何在pytorch中对tf.nn.conv2d_transpose进行操作。
如下例所示:
np.random.seed(42)
y_val = np.random.rand(1, 32, 32, 1024)
feats_val = np.random.rand(3, 3, 128, 1024)
y_tf = tf.Variable(y_val)
feats_tf = tf.Variable(feats_val)
y_tor = torch.tensor(y_val)
feats_tor = torch.tensor(feats_val)
y_up_tf = tf.nn.conv2d_transpose(y_tf, feats_tf, [1, 64, 64, 128], strides=[1,2,2,1])我希望在Pytorch中使用y_tor和feats_tor得到与y_up_tf相同的结果。
发布于 2021-06-17 17:45:12
函数式conv_tranpose2d似乎就是您想要的。您不能像使用tensdorflow那样指定输出形状,而必须调整output_padding以获得您想要的形状,但这是我认为唯一的区别。
import torch.nn.functional as F
y_up_tor = F.conv_transpose(y_tor, feats_tor, output_padding=(1,1), stride=(2,2))https://stackoverflow.com/questions/68002490
复制相似问题