关于torch.nn.Sequential中的关键字的问题,是否有可能以某种方式将关键字转发到序列中的特定模型?
model = torch.nn.Sequential(model_0, MaxPoolingChannel(1))
res = model(input_ids_2, keyword_test=mask)
在这里,keyword_test应该只转发给第一个模型。
非常感谢并致以最良好的问候!
我的副本来自- https://discuss.pytorch.org/t/keyword-arguments-in-torch-nn-sequential/53282
发布于 2019-08-14 01:08:35
不,你不能。只有当传递给nn.Sequential
的所有模型都需要您试图在其forward
方法中传递的参数时(至少在撰写本文时),这才是可能的。
有两种解决办法(我不知道整个情况,但从问题中可以预料到):
self.keyword_test
进行计算期间访问它。如果值是动态的,则可以将其作为输入中的固有属性进行访问;因此,也可以在使用input_ids_2.keyword_test
进行计算期间访问
https://stackoverflow.com/questions/57481612
复制相似问题