如何在Pytorch中分批调用函数

时间:2018-12-15 22:05:45

标签: deep-learning pytorch

我定义了一个函数,我只想知道是否可以分批执行它。例如,

def function():
    Some processes here
    return x

def forward():
    encode = self._encoding(embedded_premises,premises_lengths)

现在,既然如此,编码将是3D张量,即batch size, seq_length, hidden size我要分批执行function(),也要分批执行return x

除了遍历所有批次,还有其他方法吗?

1 个答案:

答案 0 :(得分:-1)

如果您正在function内部使用pytorch函数,并且很可能希望您的方法与autograd一起使用,则 可以批量工作。这意味着大多数pytorch操作都将第一个维度视为批处理维度(例如卷积,线性层等),或者可以将其作为批次维度。有时,以正确,快速的方式来表达您的操作会更加复杂,但通常pytorch的前提是要在批处理数据上使用操作,并且会尽可能合理地简化操作。如果您有function的具体示例,请发布。