位置编码学习

基本概念

  • 关于位置编码的一切:https://kexue.fm/archives/8130#T5%E5%BC%8F

残差连接

Post Norm

关注深度

  • 残差的意思是给前面的层搞一条“绿色通道”,让梯度可以更直接地回传,但是在Post Norm中,这条“绿色通道”被严重削弱了,越靠近前面的通道反而权重越小,残差“名存实亡”,因此还是不容易训练。

举个例子:假设初始状态下x,F(x)的方差均为1,那么x+F(x)的方差就是2,而Normalization操作负责将方差重新降为1

Pre Norm

关注宽度
每一条残差通道都是平权的,残差的作用会比Post Norm更加明显,所以它也更好优化。当然,这样最后的xl方差将会很大,所以在接预测层之前xl也还要加个Normalization。

Scale 缩放

  • NTK参数化:均值为0、方差为1的随机分布”来初始化,但是将输出结果除以 m \sqrt{m} m

  • 注意力机制中的缩放,使得q和k的方差为1
    在这里插入图片描述

熵不变性

  • a i , j a_{i,j} ai,j是注意力的分布
    在这里插入图片描述

在这里插入图片描述

  • 因为当n较大时,缩放因子过大,会导致严重的梯度消失
  • 但是对于长度具有比较好的外推性

直接外推

  • 输入的一些维度训练阶段设为0,推理阶段直接改为其他数字,这就是外推(Extrapolation)。
    在这里插入图片描述
    在这里插入图片描述
    外推的问题:
  • 训练阶段预留的维度一直是0,如果推理阶段改为其他数字,效果不见得会好,因为模型对没被训练过的情况不一定具有适应能力。也就是说,由于某些维度的训练数据不充分,所以直接进行外推通常会导致模型的性能严重下降。
  • 外推比内插确实需要更多的微调步数。

线性内插

在这里插入图片描述
线性内插的问题:

  • 当处理范围进一步增大时,相邻差异则更小,并且这个相邻差异变小集中在个位数,剩下的百位、十位,还是保留了相邻差异为1。换句话说,内插方法使得不同维度的分布情况不一样,每个维度变得不对等起来,模型进一步学习难度也更大。

进制转换 NTK

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

NTK-aware Scaled RoPE

  • 位置编码更依赖于序信息,而进制转换基本不改变序的比较规则
  • NTK-aware Scaled RoPE在不微调的情况下,也能在更长Context上取得不错的效果。
  • 神经网络无法直接学习高频信号,解决办法是要将它转化为Fourier特征

在这里插入图片描述

  • 把外推和内插结合起来——高频外推、低频内插
    在这里插入图片描述

实验结论:

  1. 直接外推的效果不大行;
  2. 内插如果不微调,效果也很差;
  3. NTK-RoPE不微调就取得了非平凡(但有所下降)的外推结果;
  4. 加入 l o g n logn logn来集中注意力确实有帮助。

小结一下

我们也可以从语言模型的局域性来考察这些方法。
所谓局域性,是指语言模型在推断下一个token时,明显更依赖于邻近的token。

  • 直接外推保持了局域性(0附近位置编码不变),效果差是因为引入了超出训练长度的位置编码;

  • 位置内插虽然没有外推位置编码,但扰乱了局域性(0附近位置编码被压缩为),所以不微调效果也不好;

  • 而NTK-aware Scaled RoPE通过“高频外推、低频内插”隐含了两者优点,保证了局域性,又没有明显外推位置编码,所以不微调也有不错的效果。


HWFA

局部的window attention

  • 感受野被限制在w内:由于每层的感受野被限制在w
    内,注意力机制的能力大大削弱

  • window attention缺少全局依赖性:我们对长度外推的期望其实不仅仅是“平移不变性”,而是“平移更好性”,也就是说越往后效果应该越好才对(比如In Context Learning场景,给的examples越多,效果应该越好),所以模型还应该要能捕捉全局依赖的能力。

分析:

  • Window Attention得到的结果本质上就是某种n-gram特征,只不过在多层堆叠之下这个n会变得比较大;
  • 而单层的Full Attention可以看作是某种“检索”(从query、key、value这些称呼就可以看出)和“融合”,它的规律相对来说比较容易分析
  • 单层(全)注意力可以通过增加 l o g n logn logn缩放因子来增强长度外推性的结论

Hybird Window-Full Attention

提出思路:

如果前面L−1层通过Window Attention获得了n-gram特征,最后一层可否替换为带logn因子的Full Attention来检索和整合这些特征,以弥补效果上的差距和获得全局依赖的能力呢?

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

今日arXiv最热大模型论文:人民大学发布,拯救打工人!Office真实场景下的大模型表格处理

引言:大语言模型事实召回机制探索 该论文深入研究了基于Transformer的语言模型在零射击和少射击场景下的事实记忆任务机制。模型通过任务特定的注意力头部从语境中提取主题实体,并通过多层感知机回忆所需答案。作者提出了一种新的分析方法,可…

牛客 2024春招冲刺题单 ONT82 腐烂的苹果【中等 BFS Java,Go】

题目 题目链接: https://www.nowcoder.com/practice/54ab9865ce7a45968b126d6968a77f34 思路 广度优先搜索。首先找到2坐标集合,然后每次往四周为1的坐标扩展参考答案Java import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数…

RAG基础知识及应用

简单介绍下RAG的基础知识和RAG开源应用 “茴香豆" 一. RAG 基础知识 1. RAG工作原理 RAG是将向量数据库和大模型问答能力的有效结合,从而达到让大模型的知识能力增加的目的。首先将知识源存储在向量数据库中,当提出问题时,去向量数据库…

客户案例丨拓数派向量计算引擎PieCloudVector助力东吴证券AIGC应用升级

1.项目背景 随着人工智能技术的不断创新和应用,我们可以看到人工智能在各个领域的应用越来越广泛。深度学习技术在图像识别、语音识别、自然语言处理等领域表现出色。机器学习算法的改进将解决更多实际问题,如增强学习、迁移学习和联合学习等&#xff…

学生用什么品牌的台灯好,学生护眼台灯推荐品牌

在童年的岁月里,我们常常无知于如何正确地使用眼睛,对于何种光线最有益眼睛健康也缺乏了解。这些年轻时的疏忽,如今在我的眼镜度数上得到了反映,近视已接近千度,这是许多同样经历的视友都能共鸣的体验。随着时间的推移…

MoonBit 最新动态:MoonBit 引入实验性的测试覆盖率统计工具

MoonBit更新 支持 array.iter intrinsic 并且已经对标准库中的函数进行标注&#xff0c;从而可以在特定情况下将循环进行内联&#xff0c;以提升运行效率 /// intrinsic %array.iter pub fn iter[T](self : Array[T], f : (T) -> Unit) -> Unit {for i 0; i < self…

pymilvus创建IVF_FLAT向量索引

索引简介 索引的作用是加速大型数据集上的查询。 目前&#xff0c;向量字段仅支持一种索引类型&#xff0c;即只能创建一个索引。 milvus支持的向量索引类型大部分使用近似最近邻搜索算法(ANNS,approximate nearest neighbors search) 。ANNS 的核心思想不再局限于返回最准确…

棋牌室计时吧台计费收费灯控管理系统软件操作流程

棋牌室计时吧台计费收费灯控管理系统软件操作流程 一、前言 以下软件操作教程以&#xff0c;佳易王棋牌桌球计时计费管理系统软件灯控版V17.87为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 该计时计费软件可以是棋牌和桌球混合同时计时计费 …

uniapp:Hbuilder没有检测到设备请插入设备或启动模拟器的问题解决

问题 使用模拟器调试运行项目时&#xff0c;出现以下提示&#xff0c;“没有检测到设备&#xff0c;请插入设备或启动模拟器后点击刷新再试”。排查了一天最终找到原因。 解决 已确认模拟器是已经正常启动&#xff0c;并且Hbuilder设置中的adb路径和端口都配置没有问题&#…

123124

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

如何挂载img镜像以及lvm分区

上一章节&#xff0c;我在win10下利用qemu安装了一个aarch64的 kylin-server-v10的ISO系统镜像包。安装时将系统安装到了虚拟硬盘kylin-server-v10.img 里&#xff0c;现在有个需求&#xff0c;要读出kylin-server-v10.img中文件系统的内容。 通过fdisk命令可以看到 kylin-ser…

element-ui drawer 组件源码分享

今日简单分享 drawer 组件的源码实现&#xff0c;从以下五个方面来分享&#xff1a; 1、drawer 组件页面结构 2、drawer 组件属性 3、drawer 组件 slot 4、drawer 组件方法 5、drawer 组件事件 一、drawer 组件页面结构 二、drawer 组件属性 2.1 append-to-body 属性&am…

vulhub之fastjson篇-1.2.27-rce

一、启动环境 虚拟机:kali靶机:192.168.125.130/172.19.0.1(docker地址:172.19.0.2) 虚拟机:kali攻击机:192.168.125.130/172.19.0.1 本地MAC:172.XX.XX.XX 启动 fastjson 反序列化导致任意命令执行漏洞 环境 1.进入 vulhub 的 Fastjson 1.2.47 路径 cd /../../vulhub/fa…

vue前端项目到后端执行逻辑——自己改的话要怎么改

文章目录 vue前端项目到后端流程——自己改的话要怎么改 vue前端项目到后端流程——自己改的话要怎么改

外部模块介绍(七) 蓝牙HC05

HC05原理图 2. 蓝牙模块的调试 2.1 两种工作模式: HC-05蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。 当模块处于自动连接工作模式时,将自动根据事…

深入解析template,掌握C++模板的精髓!

掌握C模板&#xff08;template&#xff09;的优雅之道&#xff01; 一、什么是模板&#xff1f;二、模板如何工作&#xff1f;三、C 中的模板类型3.1、 类模板3.2、 函数模板 四、模板参数推导4.1、模板参数推导示例4.2、函数模板参数推导4.3、类模板参数推导&#xff08;C17 …

Spring 源码学习笔记(二)之Bean标签默认属性的解析

分析调用栈 Spring 通过读取 xml 配置文件注册 bean &#xff0c;通过工厂可以获取注册的 bean&#xff0c;示例代码&#xff1a; XmlBeanFactory beanFactory new XmlBeanFactory(new ClassPathResource("applicationContext.xml")); Object main beanFactory.g…

通过网络api获取日期对应的节假日信息

网络接口获取链接&#xff1a;免费节假日API_原百度节假日API HolidayJudge.h #pragma once#include <QtWidgets/QWidget> #include "ui_HolidayJudge.h"enum DATESTATE {WORK0,//工作日DAYOFF,//休息日HOLIDAY//节假日 };class HolidayJudge : public QWidg…

F5防火墙如何应对恶意攻击?一文搞懂

当前&#xff0c;5G网络模糊了安全防护边界&#xff0c;加速了全球网络攻击升级&#xff0c;攻防对抗变得日益激烈&#xff0c;导致传统网络安全防护措施越来越难以有效预测和应对潜在威胁。面对复杂部署环境&#xff0c;企业的安全团队正在努力寻找一致性的安全防护和可见性策…

谷歌浏览器用不了怎么办?

打开谷歌浏览器点击右上角的三个点 &#xff0c; 点击设置 在搜索引擎里面把这个改成百度 然后越狱登录你的谷歌账号就可以用了 我个人用的越狱软件是r2rayn &#xff0c; 浏览器上面可以搜索的 默认浏览器那里可以设置成谷歌