multi-head_seft-attention(多头自注意力)

对比

相比于single-head,multi-head就是将 q i q^i qi分成了 h h h
在这里插入图片描述

multi-head_seft-attention的计算过程

  • q i q^i qi分成了 h h h
    在这里插入图片描述

  • 计算过程
    在这里插入图片描述

对于每个Head,我们可以提取出他的 b 11 b_{11} b11 b m 1 b_{m1} bm1,以 H e a d 1 Head_1 Head1举例

  1. 将输入序列进行embedding后,变为向量 a 1 a_1 a1, a 2 a_2 a2, a 3 a_3 a3, a 4 a_4 a4
  2. 分别乘 W 1 W_1 W1, W 2 W_2 W2, W 3 W_3 W3后,提取 q 1 q^1 q1 k 1 k^1 k1 v 1 v^1 v1,将 q 1 q^1 q1分成了 h h h份,其他两个也一样
  3. q 11 q^{11} q11 query分别和自己的 k 11 k^{11} k11以及其他token的key相乘,得到m个相似度分数,再经过softmax处理,得到新的m个分数。
  4. 将处理后的权重得分分别于 v 11 v^{11} v11、… 、 v m 1 v^{m1} vm1相乘,结果再相加,得到 b 11 b_{11} b11,其他以此类推,直到 b m 1 b_{m1} bm1

在这里插入图片描述

在这之后,我们将对应位置的 b b b,concat起来

  • 先按列concat,再按行concat

    • 所有head中的第一个 b 11 b_{11} b11 b 12 b_{12} b12等,我们把它concat起来,组成一个大 b 1 b_1 b1
    • 对于第m个位置,我们将所有head中的 b m i b_{mi} bmi concat起来,组成一个大 b m b_m bm
      在这里插入图片描述
  • W o W^o Wo代表进行全连接,得到一个最终的结果[ b 1 b_1 b1、… 、 b m b_m bm]

    m就是token的个数
    d_model就是每个token的维度

    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/60961.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

B2B2C小程序商城系统--跨境电商后台数据采集功能开发

搭建一个B2B2C小程序商城系统涉及到多个步骤和功能开发,其中包括跨境电商后台数据采集功能的开发。具体搭建步骤如下: 一、系统搭建 1. 确定需求和功能:根据B2B2C商城的需求,确定系统的功能和模块,包括商品管理、订单…

问道管理:信创概念走势活跃,恒银科技斩获四连板

信创概念9日盘中走势活泼,截至发稿,新晨科技、竞业达、恒银科技等涨停,宇信科技涨近10%,中孚信息涨近9%,华是科技、神州数码涨超7%。 新晨科技今天“20cm”涨停,公司昨日晚间公告,近来收到投标代…

【数据结构】单链表OJ题(二)

🔥博客主页:小王又困了 📚系列专栏:数据结构 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、链表分割 💡方法一: 二、链表的回文 &#x…

idea报“Could not autowire. No beans of ‘UserMapper‘ type found. ”错解决办法

原因和解决办法 1.原因 idea具有检测功能,接口不能直接创建bean的,需要用动态代理技术来解决。 2.解决办法 1.修改idea的配置 1.点击file,选择setting 2.搜索inspections,找到Spring 3.找到Spring子目录下的Springcore 4.在Springcore的子目录下…

Leetcode24 两两交换链表相邻的节点

迭代解法: class Solution {public ListNode swapPairs(ListNode head) {ListNode dummyHead new ListNode(0);dummyHead.next head;ListNode temp dummyHead;while (temp.next ! null && temp.next.next ! null) {ListNode node1 temp.next;ListNode n…

利用NtDuplicateObject进行Dump

前言 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。(本文仅用于交流学习) 这是国外老哥2020年提出的一种蛮有意思的思路。 我们先来看看大致的思路是…

前端js--剪刀石头布

效果图 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><linkrel"stylesheet"href"ht…

LeetCode--HOT100题(24)

目录 题目描述&#xff1a;234. 回文链表&#xff08;简单&#xff09;题目接口解题思路代码 PS: 题目描述&#xff1a;234. 回文链表&#xff08;简单&#xff09; 给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为回文链表。如果是&#xff0c;返回 true &…

【腾讯云 Cloud Studio 实战训练营】基于Cloud Studio构建React完成点餐H5页面

前言 【腾讯云 Cloud Studio 实战训练营】基于Cloud Studio 构建React完成点餐H5页面一、Cloud Studio介绍1.1 Cloud Studio 是什么1.2 相关链接1.3 登录注册 二、实战练习2.1 初始化工作空间2.2 开发一个简版的点餐系统页面1. 安装 antd-mobile2. 安装 less 和 less-loader3. …

电力系统电流三段式保护MATLAB仿真模型

整体模型如下&#xff1a; Matlab/Simulink搭建的电力系统电流保护模型采用辐射型单电源供电的运行方式 Ⅰ段保护的搭建 Ⅰ段保护为瞬时速断保护&#xff0c;根据Ⅰ段整定原则确定整定值。线路发生短路故障时&#xff0c;短路电流急剧增大&#xff1b;超过设置的整定值时&…

【C# 基础精讲】为什么选择C# ?

C#&#xff08;C Sharp&#xff09;是由微软开发的一种通用、面向对象的编程语言。它最初于2000年发布&#xff0c;自那时以来逐渐成为开发者的首选之一。C#的设计目标是提供一种简单、现代、可靠且安全的编程语言&#xff0c;使开发者能够轻松构建各种类型的应用程序。 为什么…

南大实验pa0:安装环境

安装untubu没问题&#xff0c;但是切到清华软件园之后&#xff0c;问题百出。记录一下 问题1 如上图所示&#xff0c;在安装build-essential的时候出现了问题 The following packages have unmet dependencies:g-11 : Depends: gcc-11-base ( 11.2.0-19ubuntu1) but 11.4.0-1…