【Self-Attention——Transform—Bert】相关的基础理论

1.Self-Attention模型图解

传统的循环神经网络,如上左图1,并不能解决并行化的问题,右图就是一个self-Attention可以实现并行化,并且能解决对于所有信息的读取利用。

将self---Attention替换相应的GRU或者RNN,就能实现从输出a到输出b,每一个b都能看到a1-a4的信息,同时b的计算还能实现并行化。

Self-Attention就是来自于《Attention is all you need》这篇文献当中,可以通过下面的链接进行下载:

https://arxiv.org/abs/1706.03762

1.1 Self-Attention解决方案

如图相应的X是作为输入,每一个输入x都乘以一个权重W,得到αi。

然后将每一个α都拆分为三个向量,q,k,v的三个。qk主要完成Attention的工作,v完成抽取序列信息。

Q:其中q用于去与其他向量进行匹配计算

K:是用于被匹配计算的向量

V:用于抽取相应序列的信息


拿每个queryq去对每个key k做attention

主动用当前的Q,与自己和其他输出的k进行attention计算

qk做点乘,其中还除去维度d,d是q、k的维度。

其中做完相应的Attention后还需要,进行softmax,获取相应的α帽。就是注意力的分布

而b,是当前的q计算得到的attention值α与每个输入的v进行相互乘,并且累加得到,获取到了当前时刻所有输入数据的信息。同理得到b2

同理得到a2、b2,是当前的q2与其他的k、与其他的v计算分别得到attention值和序列信息值。

1.2 总结

因为每个值阿尔法,都是分别计算得到的,所以不需要依靠计算上一个节点。

并且通过分出三个向量,实现对于每个节点的信息的运用。

2. Self-Attention的数学理论基础

对于每一个输入的x,都可以经过一个相应的矩阵W的计算,得到相应的q,k,v。

其中对于每个的a进行拼接向量,得到I矩阵,乘以相应的W,就得到Q矩阵。

同理得到相应的K矩阵

同理得到相应的V矩阵

相应的A帽矩阵,如下所示,是根据相应的A矩阵softma变换得到Attention

所以A矩阵就是为K矩阵与Q矩阵变换得到

将得到的A矩阵进行Softmax计算得到相应的A帽矩阵

B帽矩阵 = A帽矩阵* V矩阵

所以相应的Self-Attention就是相应的矩阵的变换得到,输入的数据为I矩阵,经过W矩阵得到相应的QKV矩阵

K矩阵转置,与Q矩阵计算得到A矩阵,A矩阵归一化后得到Attention

将Attention后的结果乘以V,就得到了序列化的数据矩阵O,作为输出。

3. Multi-Head-self Attention(多头自注意力模型)

下面主要演示双头的注意力模型,一般来说都是选用偶数头

多头,一般就是将相应的QKV进行拆分,拆分成相应的几头

多头的注意力模型,可以更加细节的发现局部的信息。所以可以解决局部信息,如果更加看重局部信息的时候,多头的模型就是比较合适的。

4 Transform

.

5.Bert理论基础

相关推荐
高洁0127 分钟前
具身智能-普通LLM智能体与具身智能:从语言理解到自主行动 (2)
深度学习·算法·aigc·transformer·知识图谱
AI大模型学徒41 分钟前
NLP基础(九)_N-gram模型
人工智能·自然语言处理·nlp·n-gram
极客BIM工作室1 小时前
理清 BERT 中 [CLS] 向量的核心逻辑:训练双向更新与推理作用不矛盾
人工智能·机器学习·bert
IT·小灰灰1 小时前
基于Python的机器学习/数据分析环境搭建完全指南
开发语言·人工智能·python·算法·机器学习·数据分析
Keep_Trying_Go1 小时前
LightningCLI教程 + 视频讲解
人工智能·pytorch·语言模型·大模型·多模态·lightning
1***s6321 小时前
Java语音识别开发
人工智能·语音识别
模型启动机1 小时前
DeepSeek OCR vs Qwen-3 VL vs Mistral OCR:谁更胜一筹?
人工智能·ai·大模型·ocr·deepseek
Chef_Chen1 小时前
数据科学每日总结--Day26--数据挖掘
人工智能·数据挖掘