TPA注意力机制详解及代码复现
基本原理
在深入探讨TPA注意力机制的数学表达之前,我们需要先理解其基本原理。TPA注意力机制是一种创新的注意力机制,旨在解决传统注意力机制在处理大规模数据时面临的内存和计算效率问题。
TPA注意力机制的核心思想是利用 张量分解 来压缩注意力机制中的Q、K、V表示,同时保留上下文信息。这种方法类似于一种“动态的LoRA”,通过巧妙的数学变换,在不牺牲性能的前提下大幅降低了模型的内存需求。
TPA注意力机制的工作流程可以概括为以下几个步骤:
-
特征提取 :使用LSTM层处理输入的时间序列数据,得到每个时间步的隐状态h_i。这些隐状态构成了一个隐状态矩阵H,其中行向量代表单个变量在所有时间步下的状态,列向量代表单个时间步下的所有变量的状态。
-
时间模式检测 :利用卷积层捕获可变的信号模式。具体而言,使用k个卷积核,每个卷积核的尺寸为1×T(T通常等于LSTM的窗口长度w),沿隐状态矩阵H的行向量计算卷积,得到时间模式矩阵H^c。
-
注意力加权 :计算注意力权重,具体过程如下:
-
设置查询向量 ÿ
-