我想做一个面向任务的对话聊天机器人,用来预订restaurant.Because,每个对话都有不同的序列(例如。有些人有5轮对话,10个句子,而另一些人可能有6轮对话,总共12个句子),我不知道如何批量处理数据集。
你能给我一些教程或github的例子吗?
发布于 2019-11-20 10:28:39
在Stackoverflow上有一些与此相关的问题。我喜欢here提供的解释/答案。tldr版本使用Packed Sequence。The answer I linked to提供了以下示例(从链接复制):
a = [torch.tensor([1,2,3]), torch.tensor([3,4])]
b = torch.nn.utils.rnn.pad_sequence(a, batch_first=True)
>>>>
tensor([[ 1, 2, 3],
[ 3, 4, 0]])
torch.nn.utils.rnn.pack_padded_sequence(b, batch_first=True, lengths=[3,2])
>>>>PackedSequence(data=tensor([ 1, 3, 2, 4, 3]), batch_sizes=tensor([ 2, 2, 1]))https://stackoverflow.com/questions/58929441
复制相似问题