为什么以及如何运作?
当我在输入上运行前进阶段时是小批量张量或者作为单个输入项目model .__ call __()(AFAIK正在调用forward())吞下……
文档上 nn.Linear 说明
nn.Linear
输入:(N,鈭鈭,in_features)其中鈭鈭表示任意数量的附加尺寸
所以人们自然会期望至少需要两个维度。但是,如果我们看 引擎盖下 我们会看到的 Linear 是以实施的方式实施的 nn.functional.linear , 哪一个 急件 至 torch.addmm 要么 torch.matmul (取决于是否 bias == True )广播他们的论点。
Linear
nn.functional.linear
torch.addmm
torch.matmul
bias == True
所以这种行为可能是一个错误(或文档中的错误),如果我是你,我不会依赖它在将来工作。