加性注意力和乘性注意力
加性注意力和乘性注意力,其实只是两种不同的计算方式 加性注意力提出于编码解码结构,乘性注意力提出于transformer 加性注意力通过一个前馈神经网络(feed-forward network)计算查询(query)和键(key)之间的相似 点积注意力通过计算查询(query)和键(key)的点积
加性注意力和乘性注意力,其实只是两种不同的计算方式 加性注意力提出于编码解码结构,乘性注意力提出于transformer 加性注意力通过一个前馈神经网络(feed-forward network)计算查询(query)和键(key)之间的相似 点积注意力通过计算查询(query)和键(key)的点积
自定义数据集类必须是 Dataset 的子类 from torch.utils.data import Dataset, DataLoader class TrajData(Dataset): """ 用于处理变长轨迹数据的自定义数据集类 """ def __in
深度学习在进行训练时,可能会用到多个数据,但是各个数据的重要程度是不同的,例如在 RNN 的介绍中,对 c1, c2, c3 的计算,实际上就是一种注意力机制,aij 表示重要程度 具体来说,注意力机制是通过如下的结构实现的:
Transformer其实也是一个 Encoder-Decoder 模式 其实也是由 RNN 改进而来,用 multi-head attention 机制取代了传统的 RNN 网络,传统的RNN网络需要一个时刻一个时刻的顺序输入数据,距离的依存关系需要经过多个时间步骤才能联系到一起,从而容易造成难以
在 RNN(循环神经网络中写道),RNN实际上是把(x1,x2,x3,x4),转为(h1,h2,h3,h4),再转为 Y,如下图所示: 实际上,该网络存在一些问题: 对各个状态没有取舍,h1,h2,h3,h4 我都要,影响了预测效果的同时,还存在梯度爆炸(梯
时序预测任务:当前的输出与前面的输出也有关,即xt = f(xt-1, xt-2......xt-n),f 即时序神经网络 传统RNN:n个输入n个输出、n个输入1个输出
张量有以上几个属性 这是pytorch中的梯度计算图:y = a * b = (x + w) * (w + 1),若此时, x=2, w=1, y对x求导是2,y对w求导是5 叶子节点:x,w,也是用户创建的节点,所有梯度的计算都要依赖叶子节点,梯度反向传播结束之后,非叶子节点的梯度都会被释放掉