[复盘]transformer block的完整流程

输入x,然后做归一化得到x_norm(具体实现是乘一个缩放系数)

对x_norm做三个投影K Q V

做attention softmax计算后得到包含上下文关系的context矩阵

对context做一次投影得到attn_out

最后再接入残差网络,作为attention部分的输出x1。其中x1=x+attn_out


接下来就到了FFN的部分,这里普遍采用SwiGLU的结构。

首先对x1做归一化,得到x1_norm。

对x1_norm做两次投影得到a和 b

其中a还需要通过SiLU激活函数,得到a=a*sigmod(a)

然后对a,b进行逐元素乘,得到hidden

最后将hidden投影,得到输出out

到此,一个transformer的层就计算完了,这个out就成为了下一层的输入x
全部评论
点赞 回复 分享
发布于 09-18 09:41 广东

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务