Attention机制学习

写在前面
注意力机制是一个很不错的科研创新点方向,但是没有系统记录过学习过程,这里记录科研中遇到的各种注意力机制。

1. Attention机制解释

本质上来说用到attention的任务都有Query,Key,Value三个关键components,目标则是输入query,然后根据query和key的关系以及key和value的关系求出最终的value。总结来说注意力机制可以分为三步:
1.输入Query;
2.计算Query和Key的注意力权重 α \alpha α
3.根据 α \alpha α来计算输入信息对Value的加权平均。
在这里插入图片描述

Attention机制流程(参考)

1.1 Example - 根据腰围估计体重

参考视频,这个大佬up讲的非常好,值得大家去一键三连!

图1.1.1

如图1.1.1所示,这个例子是想通过输入一个腰围( q q q),得到最后的体重预测值( k k k)。每一个 k k k对应一个 v v v,但是 q q q要跟三个 k k k都有一个加权,如图1.1.2所示。
在这里插入图片描述

图1.1.2

其中, α ( q , k 1 ) \alpha(q, k_1) α(q,k1)这个就是注意力权重,代表着 q q q k 1 k_1 k1的相关性,也就是 q q q要在多大程度上参考 k 1 k_1 k1对应的 v 1 v_1 v1 α ( q , k 1 ) \alpha(q, k_1) α(q,k1)的计算方式有很多,比如采用余弦距离、欧式距离、皮尔森等距离度量函数。但是需要注意的就是每一个注意力权重都是在经过距离函数计算之后,都要进行归一化处理。归一化处理的方式也很多,比如softmax处理。图三就是采用了欧式距离度量函数,并且采用softmax归一化处理,从而得到最终的注意力权重。
在这里插入图片描述

图1.1.3

现实中,我们的 q q q肯定大多是多维数据,但是计算的过程是一样的。比如说我们的 q q q不再仅包含一个腰围数据,我们还包括了胸围数据,那么这个注意力机制的计算过程就会变成如图1.1.4所示的形式。
在这里插入图片描述

图1.1.4

需要注意的是, k k k v v v不一定也要是二维的,这里up只是为了给后面的self-attention做铺垫,保持 q , k , v q,k,v q,k,v维度一致性才采用2维。图4也给出了3种计算多维数据的权重分数的计算方式。其中的点积模型和缩放点积模型计算方法需要保证 q q q k k k的维度是一致的,也就是self-attention中的注意力权重的计算方法。图1.1.5则给出了一个将 q , k , v q,k,v q,k,v矩阵化后采用缩放点积权重计算过程。
在这里插入图片描述

图1.1.5

2. 各种Attention机制

2.1 Self-Attention

自注意力机制是注意力机制的变体,他能够基于输入的数据来进行注意力机制的学习,减少了对外部的依赖,让模型更多地关注数据本身或特征的内部相关性。例如,在1.1的那个例子里头,把 Q , K , V Q,K,V Q,K,V都改成输入的 X X X
在这里插入图片描述

图 2.1.1

然后采用缩放点积方式的计算则如下所示。
在这里插入图片描述

图 2.1.2

但是在实际应用中,我们往往会对 X X X映射到 Q , K , V Q,K,V Q,K,V的过程中做一个线性变换,比如大名鼎鼎的Transformer模型。
在这里插入图片描述

图 2.1.3
如图2.1.3所示,Transfomer通过引入三个可训练矩阵, 然后图2.1.2的公式就可以变成下式。

f ( X ) = s o f t m a x ( X W Q ( X W K / d ) T ) X W V f(X) = softmax(XW_Q(XW_K/\sqrt{d})^T)XW_V f(X)=softmax(XWQ(XWK/d )T)XWV

To be continued…


http://www.niftyadmin.cn/n/5265205.html

相关文章

MSPM0L1306例程学习-ADC部分(2)

MSPM0L1306例程学习系列 使用的TI的官方例程,即SDK里边包含的例程代码。 可以到TI官网下载并且安装SDK: https://www.ti.com.cn/tool/cn/download/MSPM0-SDK/ MCU使用的是MSPM0L1306, 对于ADC部分,有10个例程: 前边讲了3个例程&#xff0c…

大模型学习之GPT系列

GPT系列 预备知识GPT-1无监督预训练有监督的微调训练 GPT-2数据集:输入表示模型实验 GPT-3模型数据集实验局限性 InstructGPTGPT-4GPT-4 新特性基础能力 参考文献 大模型 GPT演进路线图 预备知识 Transformer 结构图 GPT-1 首先使用未标注的数据训练一个预训练…

【无标题】创新蓄势!安全狗多项技术获颁专利

近日,安全狗《一种网络安全监测方法、终端设备及存储介质》、《一种恶意进程风险等级评估方法、终端设备及存储介质》等多项专利顺利通过了国家知识产权局的相关审核认证,并获得了发明专利证书。 厦门服云信息科技有限公司(品牌名&#xff1a…

一站式API解决方案:工程通API连接营销系统、CRM与用户运营,推动无代码集成

无代码开发的革命:简化电商与CRM系统集成 在信息技术迅猛发展的今天,电商企业迫切需要一个高效、便捷的系统来管理客户关系和销售流程。然而,传统的系统集成方式往往因复杂的API开发而令人望而却步。工程通API应运而生,它的无代码…

如何使用PHP创建RESTful API?

创建 RESTful API(Representational State Transferful Application Programming Interface)是通过 HTTP 协议提供对资源的访问和操作的一种常见方式。以下是使用 PHP 创建 RESTful API 的一般步骤: 步骤 1: 设计 API 路由 首先&#xff0c…

Qt/QML编程学习之心得:信号+槽(十三)

Qt设计GUI界面应用程序,类似于Windows的Visual Studio设计界面,最主要的就是消息机制,如果vs下叫MFC机制,那么Qt就叫信号槽机制。MFC采用消息映射机制,每个类都有一个消息映射,与该类有关的消息都出现在该类的消息映射中。类的消息映射把一组消息映射宏组成一个消息映射表…

【好文转载】正交矩阵的性质【特征值只能是正负1】

原文链接:https://www.zhihu.com/question/62155511

爬取图片python代码

在百度上爬取图片 pic_baidu.py import re import requests from urllib import error from bs4 import BeautifulSoup import os num 0 numPicture 0 file List []def Find(url, A):global Listprint(正在检测图片总数&#xff0c;请稍等.....)t 0i 1s 0while t <…