【问题标题】:How to generate an attention mask after padding?填充后如何生成注意蒙版?
【发布时间】:2021-05-16 22:37:56
【问题描述】:

在将具有 4 维 [4, 5, 129, 24] 在第二和第三维的张量 A 填充到 [4, 6, 136, 24],如何生成它的注意力掩码?

我想出了两个解决方案:

  • 第一个是创建一个喜欢A_pad的零张量A_attention,然后遍历A将1填充到A_attention中的相关位置。
  • 第二个是在填充过程中创建注意掩码。但这似乎有点麻烦,因为初始张量 A 有 4 个维度。

有没有什么方法可以在填充后更有效地生成注意力掩码?有 API 吗?

非常感谢。

【问题讨论】:

    标签: pytorch tensor


    【解决方案1】:

    您可以尝试使用 Hugging Face 中的 Transformers 库,它提供了一个非常有用的tokenizer

    我建议您阅读整个快速入门,但原则上,this is the part 您感兴趣。

    【讨论】:

    • 对不起,我忘了说我要在 collat​​e_fn() 中生成注意力掩码。我想填充标签batch_data。
    • 非常感谢。最后,我通过在填充过程中创建注意掩码来实现这一点。
    • 你使用过变形金刚库吗?顺便说一句,我还在 collat​​e 函数中使用了 padding=True 属性,一切正常。
    猜你喜欢
    • 1970-01-01
    • 2020-04-28
    • 2018-08-06
    • 1970-01-01
    • 2020-11-06
    • 2019-11-18
    • 2021-06-29
    • 2016-12-08
    • 2016-10-18
    相关资源
    最近更新 更多