了解在使用Torch中定义模型时的nn.Identity()用法

我正在理解此处给出的CGAN模型(https://github.com/hezhangsprinter/ID-CGAN/blob/master/IDCGAN/models2.lua)。 生成模型具有对称跳跃连接,正如在本文中所解释的那样(https://arxiv.org/pdf/1701.05957.pdf)。因此,我理解以下代码行:

 d2 = {d2_,e4} - nn.CAddTable(true)

但是,在最后一个反卷积层d6之后,不是做同样的事情,而是做以下事情:

d6 = d61 - nn.Identity()

请问有人可以帮我理解为什么在这里使用nn.Identity()吗?

点赞
用户3754413
用户3754413

nn.Identity() 是一个模块,将输入直接向前传递。在他们的代码中可以跳过它。然而,似乎他们没有实现论文中第3图描述的模型。也许在没有第三个跳跃连接的情况下表现更好。

2017-06-13 14:42:54
用户14418063
用户14418063

nn.Identity() 是一个占位符恒等运算符。

2020-10-09 05:08:29