Transformer合集

资料

位置编码:https://zhuanlan.zhihu.com/p/454482273

自注意力:https://zhuanlan.zhihu.com/p/455399791

LN:https://zhuanlan.zhihu.com/p/456863215

ResNet:https://zhuanlan.zhihu.com/p/459065530

Subword Tokenization:https://zhuanlan.zhihu.com/p/460678461

长文概述:https://zhuanlan.zhihu.com/p/630356292

缓存和效果的拉扯(MHA、MQA、GQA、MLA):https://spaces.ac.cn/archives/10091

为什么Pre Norm不如Post Norm? https://kexue.fm/archives/9009

RoPE:https://zhuanlan.zhihu.com/p/359502624

经典问题:https://github.com/kebijuelun/Awesome-LLM-Learning/blob/main/1.%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/1.Transformer%E5%9F%BA%E7%A1%80.md

位置编码

为什么要位置编码:因为self-attention是无向的。而实际上模型需要知道token之间的距离信息。

位置编码的要求:
(1)能够表示token的绝对位置
(2)序列长度不同时,不同序列中token的相对距离要保持一致
(3)预测阶段,可以表示模型在训练阶段没有见过的句子长度

位置编码的迭代经验、找到一个函数符合以下条件:
(1)有界
(2)连续、且不同
(3)不同位置的向量可以通过线性变换得到

最终Transformer的位置编码的性质:
(1)两个位置编码的点积(dot product)仅取决于偏移量 ,也即两个位置编码的点积可以反应出两个位置编码间的距离。
(2)位置编码的点积是无向的

attention

除以根号dk的原因:
在这里插入图片描述

Normalization

常用的标准化方法有Batch Normalization,Layer Normalization,Group Normalization,Instance Normalization等

ICS(Internal Covariate Shift):前一层的数据分布变化 加大后一层的训练难度。

在BN提出之前,有几种用于解决ICS的常规办法:

(1)采用非饱和激活函数

(2)更小的学习速率

(3)更细致的参数初始化办法

(4)数据白化(whitening):在每一层输入时增加线性变化,使得输入的特征具有相同的均值和方差,从而去掉特征的相关性。

更优雅的解决方案:BN

训练

在这里插入图片描述

BN的缺点无法很好地处理文本数据长度不一的问题。 可能不止是“长短不一”这一个,也可能和数据本身在某一维度分布上的差异性有关(想一下,对不同句子之间的第一个词做BN,求出来的mean和variance几乎是没有意义的)

在图像问题中,LN是指对一整张图片进行标准化处理,即在一张图片所有channel的pixel范围内计算均值和方差。

而在NLP的问题中,LN是指在一个句子的一个token的范围内进行标准化。即 层归一化(Layer Normalization)的对象是同一个样本中一个token的所有维度。

Pre-LN

在残差连接和MHA计算之前进行LN操作。

好处:能和Post-LN达到相同甚至更好的训练结果,同时规避了在训练Post-LN中产生的种种问题
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

残差网络

normal的引入 解决了 因为 导数的阶乘导致梯度消失或者梯度爆炸。

因为希望通过增加网络深度,来提高非线性拟合能力、使得每一层学到不同的模式。

而网络深度的增加,产生了网络退化的问题。

所以用残差模块来解决。这么设计的 原因是 尽可能让 深层次的网络不比浅层网络表现弱(保证了更多层的神经网络至少能取到更浅的神经网络的最优解)。 类似牵引绳或者KL散度的意思。

恒等映射:深层网络的结果既能学习到极端情况、又能逼近输入。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

效率翻倍的秘密:探索AI工具的新世界

大家好,我是你们的效率小助手米兔!你是否曾在加班熬夜中挣扎,对着电脑屏幕发呆,感觉工作效率低到怀疑人生?别急,今天我要给你们安利几款超给力的AI工具,让你的工作变得轻松又愉快! …

c++笔记4

目录 深度优先搜索DFS DFS的复杂度 DFS与递归 递归与暴力枚举 递归树 DFS与栈 DFS的搜索剪枝 搜索剪枝与优化 可行性剪枝 最优化剪枝 减少等效的分支 优化搜索顺序 搜索的记忆化 搜索的复杂度 大多时候,搜索的复杂度都是指数级的。各种剪枝方案&#…

2024世界技能大赛某省选拔赛“网络安全项目”B模块--操作系统取证解析

2024世界技能大赛某省选拔赛“网络安全项目”B模块--操作系统取证解析 任务一、操作系统取证解析:总结:任务一、操作系统取证解析: A 集团某电脑系统被恶意份子攻击并控制,怀疑其执行了破坏操作,窃取了集团内部的敏感信息,现请分析 A 集团提供的系统镜像和内存镜像,找到…

WIX Toolset 3.11 对本地化的支持方案

1.准备主题文件和本地化文件 WIX Toolset种主题文件为xml文件,负责配置控件的布局, 本地化文件为wxl文件,负责配置待加载的字符串,主题文件根据ID加载需要显示的文字内容。考虑到英文和中文字符长度大小不一,所以这里…

与Bug较量:Codigger之软件项目体检Software Project HealthCheck来帮忙

在软件工程师的世界里,与 Java 小程序中的 Bug 作战是一场永不停歇的战役。每一个隐藏在代码深处的 Bug 都像是一个狡猾的敌人,时刻准备着给我们的项目带来麻烦。 最近,我就陷入了这样一场与 Java 小程序 Bug 的激烈较量中。这个小程序原本应…

【充电模块】

目录 一、实物图 二、原理图 引脚定义 模块特性 原理 三 、简介 四、注意事项 源文件下载 可访问底部联系方式也可前往电子校园网官网搜索关键词 关键词: 充电模块 一、实物图 二、原理图 引脚定…

springboot校园论坛网站-计算机毕业设计源码11401

摘 要 基于Java语言和Springboot框架的校园论坛网站设计与实现,为校园内的师生提供了丰富的功能和便捷的服务。本论文旨在详细介绍该网站的设计思路、功能特点以及技术实现。 论文介绍了网站的注册与登录功能,用户可以通过提供必要信息注册账号&#xf…

代码随想录算法训练营day6 | 242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1.两数之和

文章目录 哈希表键值 哈希函数哈希冲突拉链法线性探测法 常见的三种哈希结构集合映射C实现std::unordered_setstd::map 小结242.有效的字母异位词思路复习 349. 两个数组的交集使用数组实现哈希表的情况思路使用set实现哈希表的情况 202. 快乐数思路 1.两数之和思路 总结 今天是…

yolov8训练自己的实例分割数据集

参考: 1、官方教程:https://docs.ultralytics.com/zh/tasks/segment/ 2、YOLOv8制作自己的实例分割数据集保姆级教程(包含json转txt) 下载最新yolov8代码 git clone https://github.com/ultralytics/ultralytics.git一、制作自…

【日常记录】【JS】对一个数组,按照某个字段的值,进行分组

文章目录 1. 前言2. lodash 的分组3. Object.groupBy()参考链接 1. 前言 在开发中,经常会遇到一组数据,要按照某个字段进行分组,这个时候会有很多种方法,可以使用 forEach、reduce、等其他方法 reduce 方法 function groupBy(arr…

亚马逊云科技 re:Inforce 2024中国站大会

亚马逊云科技 re:Inforce 2024中国站大会 - 生成式AI时代的全面安全,将于7月25日本周四在北京富力万丽酒店揭幕

最新2024海报制作工具免费下载,赶紧体验!

在这个信息爆炸的时代,一张独特而有吸引力的海报如何打动观众的心已经成为每个人都需要关注的问题。如果你感到困惑,那么你就来到了正确的地方。今天我们要讨论的是免费版本的海报制作软件。我们将从软件的选择、操作模式、设计技巧等方面进行详细的解释…

AlibabaCloudAI

快速体验 Spring Cloud Alibaba AI JDK要求最低17 1.SpringAI Spring AI 旨在简化包含人工智能相关功能的应用程序的开发,避免不必要的复杂性。 Spring AI 的核心是提供抽象,作为开发 AI 应用程序的基础。这些抽象有多种实现方式,只需极少…

数据库-小练习

根据题目要求,完成下列任务: 新建表和数据库 //建立数据库 mysql> create database mydb15_indexstu; Query OK, 1 row affected (0.00 sec)//使用数据库 mysql> use mydb15_indexstu; Database changed//创建表student mysql> create table s…

Pytorch深度学习实践(5)逻辑回归

逻辑回归 逻辑回归主要是解决分类问题 回归任务:结果是一个连续的实数分类任务:结果是一个离散的值 分类任务不能直接使用回归去预测,比如在手写识别中(识别手写 0 − − 9 0 -- 9 0−−9),因为各个类别…

【C++初阶】string类

【C初阶】string类 🥕个人主页:开敲🍉 🔥所属专栏:C🥭 🌼文章目录🌼 1. 为什么学习string类? 1.1 C语言中的字符串 1.2 实际中 2. 标准库中的string类 2.1 string类 2.…

栈-链栈的表示和实现

#include<stdio.h> typedef int Status; typedef int sElemType; //链栈 typedef struct StackNode{sElemType data;struct StackNode *next; }StackNode,*LinkStack; StackNode *p; //初始化 Status InitStack(LinkStack &S){SNULL;return 1; } //判空 Status Emp…

[用AI日进斗金系列]用码上飞在企微接单开发一个项目管理系统!

今天是【日进斗金】系列的第二期文章。 先给不了解这个系列的朋友们介绍一下&#xff0c;在这个系列的文章中&#xff0c;我们将会在企微的工作台的“需求发布页面”中寻找有软件开发需求的用户 并通过自研的L4级自动化智能软件开发平台「码上飞CodeFlying」让AI生成应用以解…

一文搞懂深度信念网络!DBN概念介绍与Pytorch实战

前言 本文深入探讨了深度信念网络DBN的核心概念、结构、Pytorch实战&#xff0c;分析其在深度学习网络中的定位、潜力与应用场景。 一、概述 1.1 深度信念网络的概述 深度信念网络&#xff08;Deep Belief Networks, DBNs&#xff09;是一种深度学习模型&#xff0c;代表了一…

Ruoyi-WMS部署

所需软件 1、JDK&#xff1a;8 安装包&#xff1a;https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.htmlopen in new window 安装文档&#xff1a;https://cloud.tencent.com/developer/article/1698454open in new window 2、Redis 3.0 安装包&a…