通过批量元素的串联进行反向传播

问题描述 投票:0回答:1

我有两个特征向量V1(N,F1,1)和V2(N,F2,1)。我想将它们跨维度 1 连接起来以创建向量 V3(N, F1+F2, 1) 并在批次的元素之间应用自注意力,即跨 N。为此,我正在考虑拆分批次并连接所有元素创建批量大小为 1、嵌入维度为 F1+F2 和序列长度为 N 的元素序列。因此,新的特征向量将类似于 V3'(1, N, F1+F2)(假设我们已展平)最后一个维度上的先前向量)。

我的问题是,这可以吗?由于批次的元素被分开,梯度反向传播是否会出现问题?

Visual Representation

我的想法是这应该可行,梯度应该毫无问题地传播,但我是初学者,超出了我的深度。

pytorch neural-network gradient-descent backpropagation self-attention
1个回答
0
投票

这取决于您如何实现它的细节,但一般来说,现代框架中的串联操作将以您期望的方式传播梯度。

特别是

torch.cat
是完全可微的

© www.soinside.com 2019 - 2024. All rights reserved.