def forward(self, x, trainable, fast=True):
q, img, ans, prog = x #Need ans for reinforce
if not trainable: ans = None #Safety
p = self.ProgramGenerator(q)
#Finicky handling of PG-EE transition
batch, sLen, v = p.size()
p = p.view(-1, v)
p = F.softmax(p)
p = p.view(batch, sLen, v)
p, pInds = t.max(p, 2)
pInds = pInds[:, :, 0]
p= p[:, :, 0]
a = self.ExecutionEngine((pInds, p, img), fast=fast)
return a
评论列表
文章目录