Advertisement

使用简单乘法注意力机制进行特征融合并进行加权平均

阅读量:

通常情况下,默认两个embedding信息进行综合处理的方法是采用简单的加法运算。这是因为基于one-hot编码形式进行建模时,默认情况下的线性组合就等价于采用简单的算术相加以构建嵌入空间(尽管这种方法无法直接反映序列之间的关联关系)。另外一种方法是使用加权相加以代替单纯的算术相加,在这种情况下我们需要引入一组权重参数来辅助嵌入信息的综合计算过程。具体操作步骤如下:

在这里插入图片描述

在代码实现中,我们首先将两个张量进行拼接操作。接着,我们将拼接后的结果输入一个线性层来计算权重。最后,我们对计算得到的中间值应用Softmax函数。

复制代码
    import torch
    import torch.nn.functional as F
    
    # 创建两个嵌入向量
    embedding1 = torch.tensor([[1.0, 2.0, 3.0], [1.,2.,3.], [0.,0.,0.]])
    embedding2 = torch.tensor([[4.0, 5.0, 6.0], [1.,2.,3.], [0.,0.,0.]])
    

全部评论 (0)

还没有任何评论哟~