首页 > 其他分享 >Transformer 的缩放因子为什么需要开平方根

Transformer 的缩放因子为什么需要开平方根

时间:2024-10-15 23:21:22浏览次数:3  
标签:Transformer 点积 方差 缩放 softmax 维度 平方根 向量

目录

一、防止过大的注意力分数导致 softmax 函数饱和

二、 维度校正

三、保持方差稳定


在 Transformer 模型中,缩放因子(scaling factor)特别设计用于调整注意力分数(attention scores),它通常是键向量维度 d_k的平方根。这一做法主要是出于以下几个原因:

一、防止过大的注意力分数导致 softmax 函数饱和

在 Transformer 的注意力机制中,每个查询向量(query vector)与所有键向量(key vectors)进行点积运算,得到的结果被称为注意力分数或未归一化的权重。这些分数随后会通过 softmax 函数转换成概率分布,用于加权求和值向量(value vectors)。如果没有缩放因子,随着向量维度 d_k的增加,点积的结果也会增大,这可能导致 softmax 函数输入值过大,其输出接近于 1 或 0,这会导致梯度接近于 0(即梯度消失),影响模型的学习能力。

二、 维度校正

对于高维空间中的向量,它们的点积可能自然地就比较大,而我们希望点积的结果能够反映的是向量之间的相似性而不是维度大小的影响。如果两个向量在高维空间中恰好方向相同,它们的点积会很大,即使它们本身并不“特别”相似。通过除以 \sqrt[]{d_k},我们可以校正这种效应,使点积结果的尺度更加合理,从而更好地反映向量间的实际相似性。

三、保持方差稳定

在初始化权重矩阵时,期望得到的点积结果具有稳定的方差。如果直接使用点积结果,则随着维度增加,方差可能会变得过大。通过引入缩放因子,可以在一定程度上保证初始化后的点积结果方差相对稳定,有助于训练过程中的收敛。

从统计学的角度来看,如果假定查询向量和键向量都是从标准正态分布中抽取的,那么它们的内积的方差将是 d_k。为了使这个内积的方差为 1(即标准化),我们需要将其除以 \sqrt[]{d_k}

总结来说,缩放因子 \sqrt[]{d_k} 的作用在于:

  • 确保数值上的稳定性,避免 softmax 函数过早饱和。
  • 保持注意力分数的方差一致,不受向量维度变化的影响。
  • 改善初始化时的数值状况,帮助模型更快地收敛。

这些措施都有助于提高 Transformer 模型训练的稳定性和效率。

标签:Transformer,点积,方差,缩放,softmax,维度,平方根,向量
From: https://blog.csdn.net/qq_41797451/article/details/142959384

相关文章

  • Transformers: 引领自然语言处理的革命性工具
    transformers引言:Transformers的崛起在人工智能和自然语言处理(NLP)领域,Transformers模型的出现无疑是一场革命。而HuggingFace公司开发的Transformers库,更是将这场革命推向了一个新的高度。作为一个开源项目,Transformers为研究人员和开发者提供了一个强大而灵活的工具,使他......
  • HiT-SR:基于层级Transformer的超分辨率,计算高效且能提取长距离关系 | ECCV'24
    Transformer在计算机视觉任务中表现出了令人鼓舞的性能,包括图像超分辨率(SR)。然而,流行的基于Transformer的SR方法通常采用具有二次计算复杂度的窗口自注意力机制,导致固定的小窗口,限制了感受野的范围。论文提出了一种将基于Transformer的SR网络转换为分层Transformer(HiT-SR)的通用策......
  • 基于LSTM-Transformer混合模型实现股票价格多变量时序预测(PyTorch版)
    前言系列专栏:【深度学习:算法项目实战】✨︎涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域,讨论了各种复杂的深度神经网络思想,如卷积神经网络、循环神经网络、生成对抗网络、门控循环单元、长短期记忆......
  • Transformer模型知多少?
    2017年,Transformer模型的提出确实让AI进入了一个新的纪元,尤其是在自然语言处理(NLP)领域,成为了许多现代AI技术的基石。那么,Transformer到底是什么,它的核心机制“自注意力机制”如何运作?要理解这些复杂的概念并不容易,但我将尽力通过通俗的语言和逐步解释,让小白也能理解这个革命性的模......
  • CogVideoX:Text-to-Video Diffusion Models with An Expert Transformer
    研究背景背景介绍:这篇文章的研究背景是文本到视频模型的快速发展,特别是Transformer架构和扩散模型的应用。早期尝试预训练和扩展Transformer生成视频已经显示出巨大潜力,如CogVideo和Phenaki。扩散模型在多模态生成方面也取得了显著进展,包括视频生成。研究内容:该问题的......
  • transformer的基础知识
    transformer的基础知识transformer网络结构图seq2seq一般Seq2seq会分成两部分:Encoder、Decoder。EncoderTransformer中的Encoder就是用的Self-attention。encoder的内部结构补充:block的内部结构主要由self-attention和全连接神经网络所构成。在原来的论文中......
  • 第十期机器学习基础 02注意力机制和Transformer/Bert
    一:注意力机制(一)前提背景1.人类的选择性视觉注意力视觉注意力机制是人类视觉所特有的大脑信号处理机制。人类视觉通过快速扫描全局图像,获得需要重点关注的目标区域,也就是一般所说的注意力焦点,而后对这一区域投入更多注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无......
  • Transformer中的Encoder与Decoder
    参考学习:【超详细】【原理篇&实战篇】一文读懂Transformer-CSDN博客彻底搞懂了Transformer解码器(图文详解)-知乎(zhihu.com)这样图解Transformer应该没人看不懂了吧——多头注意力机制详解_transformer多头注意力机制-CSDN博客本文目标是加强记忆,如果想具体学习点击链接参......
  • Qt开发技巧(十六):文本框的光标处理,数据库的int在视图中展示问题,工程文件中区分系统及硬
    继续讲一些Qt开发中的技巧操作:1.文本框的光标处理正常情况下我们在文本框中输入,光标会一直伴随着我们的输入指向最后,有点像链表的next指针,但有时候文本框中的内容过长,而我们想要主动设置下将光标移到最前面的时候,可以用下面方法。//下面三种方法都可以//1.样式表方式设......
  • 三种Transformer模型中的注意力机制介绍及Pytorch实现:从自注意力到因果自注意力
    本文深入探讨Transformer模型中三种关键的注意力机制:自注意力、交叉注意力和因果自注意力。这些机制是GPT-4、Llama等大型语言模型(LLMs)的核心组件。通过理解这些注意力机制,我们可以更好地把握这些模型的工作原理和应用潜力。我们不仅会讨论理论概念,还将使用Python和PyTorch从零开......