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

成都模板建站代理佛山手工外发加工网

成都模板建站代理,佛山手工外发加工网,驻马店哪家做网站好,游戏开发开局协议三本文目录:一、先建立“分头-并行-拼接”直觉二、符号与形状(batch-first 写法,易读)三、公式(单头 → 多头)四、Python 裸写(无库,带 mask 可跑)五、例子:为什…

本文目录:

  • 一、先建立“分头-并行-拼接”直觉
  • 二、符号与形状(batch-first 写法,易读)
  • 三、公式(单头 → 多头)
  • 四、Python 裸写(无库,带 mask 可跑)
  • 五、例子:为什么“多头”比“一头”好?
  • 六、与 Efficient 变体关系
  • 七、总结

在这里插入图片描述
前言:今晚多分享一篇关于Transformer多头注意力的文。

一、先建立“分头-并行-拼接”直觉

        Input X  ──►  Linear(Q,K,V)  ──►  Split heads  ──►  Scaled Dot-Product each head│▼Output Z  ◄──  Concat heads  ◄──  Parallel softmax(QK^T/sqrt(d_k))V

一句话:把原来的 (Q,K,V) 拆成 h 个“小通道”并行算注意力,最后再拼回来。

二、符号与形状(batch-first 写法,易读)

张量形状含义
X(B, L, d_model)输入序列,L 个 token
W_Q(d_model, d_k·h)查询映射矩阵
W_K(d_model, d_k·h)键映射矩阵
W_V(d_model, d_v·h)值映射矩阵
Q/K/V(B, h, L, d_k)拆头后,每个头维度 d_k = d_model / h
O(B, h, L, d_v)单头注意力输出
W_O(d_v·h, d_model)输出投影,把拼接结果压回 d_model
Z(B, L, d_model)最终输出

三、公式(单头 → 多头)

1. 单头 Scaled Dot-Product
Attention(Q,K,V) = softmax( (QK^T) / √d_k ) V

2. 多头
head_i = Attention( XW_Q[:,i], XW_K[:,i], XW_V[:,i] )
MultiHead(X) = Concat(head_1,…,head_h) W_O

四、Python 裸写(无库,带 mask 可跑)

import torch, mathdef multi_head_attention(x, W_q, W_k, W_v, W_o, h, mask=None):B, L, d = x.shaped_k = d // h# 1. 线性投影 + 拆头q = (x @ W_q).view(B, L, h, d_k).transpose(1, 2)   # (B,h,L,d_k)k = (x @ W_k).view(B, L, h, d_k).transpose(1, 2)v = (x @ W_v).view(B, L, h, d_k).transpose(1, 2)# 2. 缩放点积scores = (q @ k.transpose(-2, -1)) / math.sqrt(d_k)  # (B,h,L,L)if mask is not None:          # 下三角 or padding maskscores = scores.masked_fill(mask==0, -1e9)attn = torch.softmax(scores, dim=-1)out = attn @ v                # (B,h,L,d_k)# 3. 拼接 + 输出投影out = out.transpose(1, 2).contiguous().view(B, L, d)return out @ W_o

五、例子:为什么“多头”比“一头”好?

任务:翻译 “The animal didn’t cross the street because it was too tired.”
要让 itanimal 而不是 street

  • 单头:只能抓一种相似度,可能把 itstreet 的“位置接近”当成高权重。
  • 多头
    head-1 专注“语法位置” → 发现 itanimal 主语对齐;
    head-2 专注“语义相似” → 发现 itanimal embeddings 更接近;
    拼接后投票,错误概率显著下降
    → 相当于ensemble of attention mechanisms,每个头学不同的子空间表示。

六、与 Efficient 变体关系

版本改动效果
Multi-Query Attention (MQA)所有头共享同一 K/V推理显存↓30–50%,速度↑
Grouped-Query Attention (GQA)分组共享 K/V平衡质量与速度,Llama-2/3 用
FlashAttention分块+重计算,O(N²)→O(N) 显存长序列神器,训练提速 2–4×

七、总结

Multi-Head Attention 就是把单头注意力复制 h 次,让每一路专注不同子空间,再 ensemble 结果
实现上只是** reshape + 并行矩阵乘 + concat**,却成为 Transformer 表达能力的核心来源。

本文分享到此结束。

http://www.dtcms.com/a/528745.html

相关文章:

  • 二维差分数组
  • 【Linux网络】定制协议
  • wordpress漫画站wordpress 外部调用
  • python 网站开发流程图微信营销软件破解版
  • HCL-MTC、HiTIN
  • 平方根求解-趋近法步长保守策略数学推导
  • JSP 文件上传
  • 基于深度生成模型的单细胞多时间点数据分析与药物发现
  • FreeRTOS信号量实战:停车场管理
  • 做网站一般不选用的图片格式万能浏览器手机版下载安装
  • Federated Learning-Empowered AI-Generated Content in Wireless Networks
  • 网站建设外包还是自己做乐清网站建设公司
  • 计算机网络自顶向下方法4——详解协议层次及其服务模型
  • 【开题答辩全过程】以 暴肌兔健康饮食推荐系统的设计与实现为例,包含答辩的问题和答案
  • 网站找不到首页网站开发分前台后台
  • 网站微信支付怎么做深圳品牌做网站公司哪家好
  • jEasyUI 创建异步树形菜单
  • fabric.js 中originX originY center设置问题
  • java开发手册与规范
  • 展示网站开发 大概多少钱wordpress+4.2.4中文
  • 深圳建设局官网站对网站建设需求
  • linux:查看某个文件下开启的进程占用的是哪个端口?
  • 【开题答辩过程】以《基于微信小程序的街道水电费缴纳系统》为例,不会开题答辩的可以进来看看
  • (数据结构)栈和队列
  • 体育西网站开发方案成都和奇乐网站建设公司怎么样
  • 网站管理后台 模板河南省建设厅网站总经济师
  • 网站建设难学吗广西建设厅官网站
  • Linux内核RDMA通信管理器ConfigFS配置接口深度解析
  • R语言模型分析(一)
  • gitee简易的命令入门教程