[英]Make tf.nn.conv2d_transpose in Pytorch
我的問題是如何使操作tf.nn.conv2d_transpose
在pytorch 。
請參閱下面的示例:
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])
我想在y_up_tf
使用y_tor
和feats_tor
y_tor
與feats_tor
相同的結果。
功能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))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.