面试常问系列(一)-神经网络参数初始化-之自注意力机制为什么除以根号d而不是2*根号d或者3*根号d

首先先罗列几个参考文章,大家之后可以去看看,加深理解:

  • 面试常问系列(一)-神经网络参数初始化
  • 面试常问系列(一)-神经网络参数初始化之自注意力机制_注意力机制的参数初始化怎么做-CSDN博客
  • 面试常问系列(一)-神经网络参数初始化-之-softmax-CSDN博客

好,步入正题,我们假定各位读者看过上面👆几篇文章,已经了解了,为什么自注意力机制中要使用\sqrt{d} 进行缩放,然后我们进一步进行探究,为什么不是2\sqrt{d} 。

1、实例

1.点击没有缩放的时候,标准差的范围

  • 在【-\sqrt{d}\sqrt{d}】,有68.26%的值在这个区间,
  • 在【-2\sqrt{d},2\sqrt{d}】,有95.45%的值在这个区间,
  •  在【-3\sqrt{d},3\sqrt{d}】,有99.73%的值在这个区间,

参考:正态分布_百度百科

    2.点击缩放\sqrt{d}的时候,标准差的范围从\sqrt{d} 到 1

    • x在【-1,1】,e^x在【0.37,2.72】有68.26%的值在这个区间,
    • x在【-2,2】,e^x有【0.14,7.39】95.45%的值在这个区间,
    • x在【-3,3】,e^x有【0.05,20.09】99.73%的值在这个区间,

    3.点击缩放2\sqrt{d}的时候,标准差的范围从\sqrt{d} 到 0.5

    • x在【-0.5,0.5】,e^x在【0.61,1.65】有68.26%的值在这个区间,
    • x在【-1,1】,e^x有【0.37,2.72】95.45%的值在这个区间,
    • x在【-1.5,1.5】,e^x有【0.22,4.48】99.73%的值在这个区间,

    2、实例总结(重点)

    通过上述的不同缩放比例,大家应该可以比较清晰的发现,以一个标准差(68.26%)为例,随着缩放比例加大,变化范围减小,点击值被过度压缩,导致相对趋于均匀,从而无法很好的捕捉不同特征之间的差异,趋于大家都一样的感觉,区分度被缩小。大家感兴趣的可以实操看一下,softmax在不同缩放比例下的分布情况。

    3、梯度特性

    若除以2\sqrt{d},Softmax输入的方差过小,导致梯度值普遍偏低,模型训练效率显著下降。例如,在机器翻译任务中,使用2\sqrt{d}​的BLEU分数可能下降2-3个点。

    4、实验验证

    • 收敛速度对比

            在WMT14英德翻译任务中,使用\sqrt{d}的Transformer模型在5万步迭代后达到收敛,而使用2\sqrt{d}的模型需8万步迭代,且最终BLEU分数低1.5个点。

    • 数值稳定性测试

    通过模拟高维向量(d=1024)的点积计算,发现:        

                    a. \sqrt{d}缩放后,Softmax输入的最大值约为5,最小值约为-5,梯度值集中在[0.1,0.5];

                    b. 2\sqrt{d}缩放后,Softmax输入的最大值约为2.5,最小值约为-2.5,梯度值集中在[0.01,0.1],导致训练缓慢。

    • ​​​​​​​泛化能力分析
      • 在GLUE基准测试中,\sqrt{d}​缩放的模型在MNLI、QQP等任务上的准确率比2\sqrt{d}模型高1-2个百分点,表明其泛化能力更强。

    参考:

    https://zhuanlan.zhihu.com/p/32150751004

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

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

    相关文章

    第5篇:EggJS中间件开发与实战应用

    在Web开发中,中间件(Middleware)是处理HTTP请求和响应的核心机制之一。EggJS基于Koa的洋葱模型实现了高效的中间件机制,本文将深入探讨中间件的执行原理、开发实践以及常见问题解决方案。 一、中间件执行机制与洋葱模型 1. 洋葱模…

    树状结构转换工具类

    项目中使用了很多树状结构,为了方便使用开发一个通用的工具类。 使用工具类的时候写一个类基础BaseNode,如果有个性化字段添加到类里面,然后就可以套用工具类。 工具类会将id和pid做关联返回一个树状结构的集合。 使用了hutool的工具包判空…

    【Python】--装饰器

    装饰器(Decorator)本质上是一个返回函数的函数 主要作用是:在不修改原函数代码的前提下,给函数增加额外的功能 比如:增加业务,日志记录、权限验证、执行时间统计、缓存等场景 my_decorator def func():pas…

    AI教你学VUE——Gemini版

    前端开发学习路线图 (针对编程新手,主攻 Vue 框架) 总原则:先夯实基础,再深入框架。 想象一下建房子,地基不牢,上面的高楼(框架)是盖不起来的。HTML、CSS、JavaScript 就是前端的地基。 阶段一…

    神经网络中之多类别分类:从基础到高级应用

    神经网络中之多类别分类:从基础到高级应用 摘要 在机器学习领域,多类别分类是解决复杂问题的关键技术之一。本文深入探讨了神经网络在多类别分类中的应用,从基础的二元分类扩展到一对多和一对一分类方法。我们详细介绍了 softmax 函数的原理…

    Go Web 后台管理系统项目详解

    Go Web 后台管理系统项目详解 一、背景介绍 这是一个基于 Go 语言开发的 Web 后台管理系统,为笔者学习期间练手之作,较为粗糙 二、技术架构 后端 语言 :采用 Go 语言(Golang)编写,因其简洁高效、并发能…

    【Python系列】Python 中的 HTTP 请求处理

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

    OS7.【Linux】基本指令入门(6)

    目录 1.zip和unzip 配置指令 使用 两个名词:打包和压缩 打包 压缩 Linux下的操作演示 压缩和解压缩文件 压缩和解压缩目录 -d选项 2.tar Linux下的打包和压缩方案简介 czf选项 xzf选项 -C选项 tzf选项 3.bc 4.uname 不带选项的uname -a选项 -r选项 -v选项…

    windows系统 压力测试技术

    一、CPU压测模拟 工具:CpuStres v2.0 官网:https://learn.microsoft.com/en-us/sysinternals/downloads/cpustres 功能:是一个工具类,用来模拟在一个进程中启动最多64个线程,且可以独立控制任何一个线程的启动/暂停、…

    64.搜索二维矩阵

    给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。 示…

    在 PyTorch 中借助 GloVe 词嵌入完成情感分析

    一. Glove 词嵌入原理 GloVe是一种学习词嵌入的方法,它希望拟合给定上下文单词i时单词j出现的次数。使用的误差函数为: 其中N是词汇表大小,是线性层参数, 是词嵌入。f(x)是权重项,用于平衡不同频率的单词对误差的影响…

    kotlin中 热流 vs 冷流 的本质区别

    🔥 冷流(Cold Flow) vs 热流(Hot Flow)区别 特性冷流(Cold Flow)热流(Hot Flow)数据生产时机每次 collect 才开始执行启动时就开始生产、始终运行生命周期与 collect 者…

    精益数据分析(44/126):深度解析媒体网站商业模式的关键要点

    精益数据分析(44/126):深度解析媒体网站商业模式的关键要点 在创业与数据分析的探索道路上,我们不断挖掘不同商业模式的核心要素,今天将深入剖析媒体网站商业模式。希望通过对《精益数据分析》相关内容的解读&#xf…

    Android学习总结之Java和kotlin区别

    一、空安全机制 真题 1:Kotlin 如何解决 Java 的 NullPointerException?对比两者在空安全上的设计差异 解析: 核心考点:Kotlin 可空类型系统(?)、安全操作符(?./?:)、非空断言&…

    [Survey]Remote Sensing Temporal Vision-Language Models: A Comprehensive Survey

    BaseInfo TitleRemote Sensing Temporal Vision-Language Models: A Comprehensive SurveyAdresshttps://arxiv.org/abs/2412.02573Journal/Time2024 arxivAuthor北航 上海AI LabCodehttps://github.com/Chen-Yang-Liu/Awesome-RS-Temporal-VLM 1. Introduction 传统遥感局限…

    jmeter读取CSV文件中文乱码的解决方案

    原因分析​ CSV文件出现中文乱码通常是因为文件编码与JMeter读取编码不一致。常见场景: 文件保存为GBK/GB2312编码,但JMeter以UTF-8读取。文件包含BOM头(如Windows记事本保存的UTF-8),但JMeter未正确处理。脚本读取文…

    Webview通信系统学习指南

    Webview通信系统学习指南 一、定义与核心概念 1. 什么是Webview? 定义:Webview是移动端(Android/iOS)内置的轻量级浏览器组件,用于在原生应用中嵌入网页内容。作用:实现H5页面与原生应用的深度交互&…

    【C++】C++中的命名/名字/名称空间 namespace

    C中的命名/名字/名称空间 namespace 1、问题引入2、概念3、作用4、格式5、使用命名空间中的成员5.1 using编译指令( 引进整个命名空间) ---将这个盒子全部打开5.2 using声明使特定的标识符可用(引进命名空间的某个成员) ---将这个盒子中某个成员的位置打…

    Arduino IDE中离线更新esp32 3.2.0版本的办法

    在Arduino IDE中更新esp32-3.2.0版本是个不可能的任务,下载文件速度极慢。网上提供了离线的办法,提供了安装文件,但是没有3.2.0的版本。 下面提供了一种离线安装方法 一、腾讯元宝查询解决办法 通过打开开发板管理地址:通过在腾…

    【工具使用-数据可视化工具】Apache Superset

    1. 工具介绍 1.1. 简介 一个轻量级、高性能的数据可视化工具 官网:https://superset.apache.org/GitHub链接:https://github.com/apache/superset官方文档:https://superset.apache.ac.cn/docs/intro/ 1.2. 核心功能 丰富的可视化库&…