当前位置: 首页 > wzjs >正文

网站风格类型有哪些设计网站专业

网站风格类型有哪些,设计网站专业,2019年云南建设银行招聘网站,门户网站建设公司案例Scaled Dot-Product Attention 论文地址 https://arxiv.org/pdf/1706.03762 注意力机制介绍 缩放点积注意力是Transformer模型的核心组件,用于计算序列中不同位置之间的关联程度。其核心思想是通过查询向量(query)和键向量(key&am…

Scaled Dot-Product Attention

  • 论文地址

    https://arxiv.org/pdf/1706.03762

注意力机制介绍

  • 缩放点积注意力是Transformer模型的核心组件,用于计算序列中不同位置之间的关联程度。其核心思想是通过查询向量(query)和键向量(key)的点积来获取注意力分数,再通过缩放和归一化处理,最后与值向量(value)加权求和得到最终表示。

    image-20250423201641471

数学公式

  • 缩放点积注意力的计算过程可分为三个关键步骤:

    1. 点积计算与缩放:通过矩阵乘法计算查询向量与键向量的相似度,并使用 d k \sqrt{d_k} dk 缩放
    2. 掩码处理(可选):对需要忽略的位置施加极大负值掩码
    3. Softmax归一化:将注意力分数转换为概率分布
    4. 加权求和:用注意力权重对值向量进行加权

    公式表达为:
    Attention ( Q , K , V ) = softmax ( Q K T d k ) V \text{Attention}(Q,K,V) = \text{softmax}\left( \frac{QK^T}{\sqrt{d_k}} \right)V Attention(Q,K,V)=softmax(dk QKT)V
    其中:

    • Q ∈ R s e q _ l e n × d _ k Q \in \mathbb{R}^{seq\_len \times d\_k} QRseq_len×d_k:查询矩阵
    • K ∈ R s e q _ l e n × d _ k K \in \mathbb{R}^{seq\_len \times d\_k} KRseq_len×d_k:键矩阵
    • V ∈ R s e q _ l e n × d _ k V \in \mathbb{R}^{seq\_len \times d\_k} VRseq_len×d_k:值矩阵

    s e q _ l e n seq\_len seq_len 为序列长度, d _ k d\_k d_k 为embedding的维度。

代码实现

  • 计算注意力分数

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import torchdef calculate_attention(query, key, value, mask=None):"""计算缩放点积注意力分数参数说明:query: [batch_size, n_heads, seq_len, d_k]key:   [batch_size, n_heads, seq_len, d_k] value: [batch_size, n_heads, seq_len, d_k]mask:  [batch_size, seq_len, seq_len](可选)"""d_k = key.shape[-1]key_transpose = key.transpose(-2, -1)  # 转置最后两个维度# 计算缩放点积 [batch, h, seq_len, seq_len]att_scaled = torch.matmul(query, key_transpose) / d_k ** 0.5# 掩码处理(解码器自注意力使用)if mask is not None:att_scaled = att_scaled.masked_fill_(mask=mask, value=-1e9)# Softmax归一化att_softmax = torch.softmax(att_scaled, dim=-1)# 加权求和 [batch, h, seq_len, d_k]return torch.matmul(att_softmax, value)
    
  • 相关解释

    1. 输入张量 query, key, value的形状

      如果是直接计算的话,那么shape是 [batch_size, seq_len, d_model]

      当然为了学习更多的表征,一般都是多头注意力,这时候shape则是[batch_size, n_heads, seq_len, d_k]

      其中

      • batch_size:批量

      • n_heads:注意力头的数量

      • seq_len: 序列的长度

      • d_model: embedding维度

      • d_k: d_k = d_model / n_heads

    2. 代码中的shape转变

      • key_transpose :key的转置矩阵

        由 key 转置了最后两个维度,维度从 [batch_size, n_heads, seq_len, d_k] 转变为 [batch_size, n_heads, d_k, seq_len]

      • **att_scaled **:缩放点积

        由 query 和 key 通过矩阵相乘得到

        [batch_size, n_heads, seq_len, d_k] @ [batch_size, n_heads, d_k, seq_len] --> [batch_size, n_heads, seq_len, seq_len]

      • att_score: 注意力分数

        由两个矩阵相乘得到

        [batch_size, n_heads, seq_len, seq_len] @ [batch_size, n_heads, seq_len, d_k] --> [batch_size, n_heads, seq_len, d_k]


使用示例

  • 测试代码

    if __name__ == "__main__":# 模拟输入:batch_size=2, 8个注意力头,序列长度512,d_k=64x = torch.ones((2, 8, 512, 64))# 计算注意力(未使用掩码)att_score = calculate_attention(x, x, x)print("输出形状:", att_score.shape)  # torch.Size([2, 8, 512, 64])print("注意力分数示例:\n", att_score[0,0,:3,:3])
    

    在实际使用中通常会将此实现封装为nn.Module并与位置编码、残差连接等组件配合使用,构建完整的Transformer层。



文章转载自:

http://wjvejUqJ.rfkyb.cn
http://J1WtYE8a.rfkyb.cn
http://YVbCLf9n.rfkyb.cn
http://P6D3Yzps.rfkyb.cn
http://j0bDoepo.rfkyb.cn
http://G1zdyggi.rfkyb.cn
http://B3bWqObu.rfkyb.cn
http://G4EexQJD.rfkyb.cn
http://cbmSg2h2.rfkyb.cn
http://Nzubtwhu.rfkyb.cn
http://I7NkYMGO.rfkyb.cn
http://WrrNFzUp.rfkyb.cn
http://XtQio5QA.rfkyb.cn
http://zjbJxdWT.rfkyb.cn
http://KIUUdAyb.rfkyb.cn
http://KiSQS1H4.rfkyb.cn
http://IaWkfWgz.rfkyb.cn
http://klWGoGVT.rfkyb.cn
http://VtaUaWky.rfkyb.cn
http://ZHfoXPGB.rfkyb.cn
http://xBuPWOXO.rfkyb.cn
http://dXG7MhUF.rfkyb.cn
http://reeHPqNL.rfkyb.cn
http://2hmB3yzQ.rfkyb.cn
http://IBeGhDuw.rfkyb.cn
http://9MfP1XJ3.rfkyb.cn
http://0GrKaUez.rfkyb.cn
http://v57weKpu.rfkyb.cn
http://tfFyxsQo.rfkyb.cn
http://3OyHSZNp.rfkyb.cn
http://www.dtcms.com/wzjs/728096.html

相关文章:

  • 深圳住房建设和保障局官网宁波网站制作优化服务
  • 网站备案期间打不开室内设计接单的网站
  • 如何设计一个好网站做seo需要投入的成本
  • 广州哪家网站建设最好佛系汉化组.wordpress
  • 做电影下载网站好企业在线
  • 网站怎么上传ftp营销网站建设是什么
  • 常州网站制作机构新手怎么学做网站
  • 抖音里做我女朋友网站网站正在建设中动画
  • 自己做网站买东西描述一下网站建设的基本流程图
  • 南京哪家做网站好汽车网站建设
  • 如何在网站上做咨询浮动窗口seo外链网站
  • 深圳专业做网站排名哪家好百度seo关键词优化推荐
  • 怎么在国外建网站互联网金融p2p网站建设
  • 做热图的网站网站在线压缩
  • at结尾网站商场大型话题活动策划网站
  • 网站建设与运营总结开发应用
  • 南京电商网站建设公司佛山企业如何建网站
  • 苏州公司网站设计网站开发主流技术线路介绍
  • 中国建设银行个人登陆网站网站开发产生费用分录怎么写
  • 制作个网站大概多少钱关于汽车的网站
  • 自己做的网站绑定域名网站建设的含义
  • 湖北省建设厅官方网站文件网站建设 6万
  • 网站建设毕业设计摘要wordpress 输出文章
  • 为什么要网站备案网站 没有域名需要备案吗
  • 做财税的网站有哪些网站开发创业
  • 如何给网站引流买域名要多少钱一个
  • 沙田做网站途牛网站建设策划书
  • 网站的设计与实现开题报告网站死链检查
  • 西安做网站选哪家龙口seo
  • 做一个网站建设广东旅游网站建设方案