当前位置: 首页 > news >正文

网站建设认证试题大连网站制作

网站建设认证试题,大连网站制作,合肥市住房和城乡建设局官网,中国社会保险网站【bug】Transformer输出张量的值全部相同?!现象原因解决现象 输入经过TransformerEncoderLayer之后,基本所有输出都相同了。 核心代码如下, from torch.nn import TransformerEncoderLayer self.trans TransformerEncoderLayer…

【bug】Transformer输出张量的值全部相同?!

  • 现象
  • 原因
  • 解决

现象

输入经过TransformerEncoderLayer之后,基本所有输出都相同了。
核心代码如下,

from torch.nn import TransformerEncoderLayer
self.trans = TransformerEncoderLayer(d_model=2,nhead=2,batch_first=True,norm_first=True)
...
x = torch.randn(2, 8, 2)
print("x before transformer", x, x.shape)
x = self.trans(x)		# Transformer Encoder Layers
print("x after transformer", x, x.shape)

输出:

x before transformer tensor([[[ 0.2244, -1.9497],[ 0.4710, -0.7532],[-1.4016,  0.5266],[-1.1386, -2.5170],[-0.0733,  0.0240],[-0.9647, -0.9760],[ 2.4195, -0.0135],[-0.3929,  1.2231]],[[ 0.1451, -1.2050],[-1.1139, -1.7213],[ 0.5105,  0.4111],[ 2.1308,  2.5476],[ 1.2611, -0.7307],[-2.0910,  0.1941],[-0.3903,  1.3022],[-0.2442,  0.5787]]]) torch.Size([2, 8, 2])
x after transformer tensor([[[ 1.0000, -1.0000],[ 1.0000, -1.0000],[-1.0000,  1.0000],[ 1.0000, -1.0000],[-1.0000,  1.0000],[ 1.0000, -1.0000],[ 1.0000, -1.0000],[-1.0000,  1.0000]],[[ 1.0000, -1.0000],[ 1.0000, -1.0000],[ 1.0000, -1.0000],[-1.0000,  1.0000],[ 1.0000, -1.0000],[-1.0000,  1.0000],[-1.0000,  1.0000],[-1.0000,  1.0000]]], grad_fn=<NativeLayerNormBackward0>) torch.Size([2, 8, 2])

原因

在询问过全知全能的New Bing之后,找到一篇文章。

简化Transformer模型训练技术简介

Understand the difficulty of training transformer
时间:2020
引用:124
期刊会议:EMNLP 2020
代码:https://github.com/LiyuanLucasLiu/Transformer-Clinic

在这里插入图片描述

Transformer的Layer Norm的位置很关键。

如果我们使用Post-LN,模型可能对参数不稳定,导致训练的失败。 而Pre-LN却不会。

原始Transformer论文中为Post-LN。一般来说,Post-LN会比Pre-LN的效果好。

针对这点,Understand the difficulty of training transformer文中提出使用Admin初始化。在训练稳定的前提下,拥有Post-LN的性能。

在这里插入图片描述

解决

这里我们使用Pre-LN。

torch.nn.TransformerEncodelayer就提供了norm_frist的选项。

self.trans = TransformerEncoderLayer(d_model=2,nhead=2,batch_first=True,norm_first=True)

修改后,输出:

x before transformer tensor([[[ 0.5373,  0.9244],[ 0.6239, -1.0643],[-0.5129, -1.1713],[ 0.5635, -0.7778],[ 0.4507, -0.0937],[ 0.2720,  0.7870],[-0.5518,  0.8583],[ 1.5244,  0.5447]],[[ 0.3450, -1.9995],[ 0.0530, -0.9778],[ 0.8687, -0.6834],[-1.6290,  1.6586],[ 1.2630,  0.4155],[-2.0108,  0.9131],[-0.0511, -0.8622],[ 1.5726, -0.7042]]]) torch.Size([2, 8, 2])
x after transformer tensor([[[ 0.5587,  0.9392],[ 0.5943, -1.0631],[-0.5196, -1.1681],[ 0.5635, -0.7765],[ 0.4341, -0.0819],[ 0.2943,  0.7998],[-0.5329,  0.8661],[ 1.5166,  0.5528]],[[ 0.3450, -1.9860],[ 0.0273, -0.9603],[ 0.8415, -0.6682],[-1.6297,  1.6686],[ 1.2261,  0.4175],[-2.0205,  0.9314],[-0.0595, -0.8421],[ 1.5567, -0.6847]]], grad_fn=<AddBackward0>) torch.Size([2, 8, 2])
http://www.hengruixuexiao.com/news/48815.html

相关文章:

  • b2b网站代表有哪些揭阳seo快速排名
  • 上海专业网站开发网站搜索排名
  • ASP做旅游网站代码东莞百度网站排名优化
  • 王也的口头禅杭州seo营销
  • 互联网门户网站有哪些在线crm
  • 买了个网站后怎么做网络营销案例及分析
  • 商城网站建设报价表天津百度百科
  • 房地产集团网站建设方案seochan是什么意思
  • 网站开发毕业论文参考期刊文献关键词优化是什么意思
  • 两学一做夜校网站竞价推广开户电话
  • 学院网站建设的意义2023推广平台
  • 免飞网站图片优化软件
  • 钮奇网站建设搜索引擎优化seo优惠
  • 高端网站建设优化买链接官网
  • 网站怎么做360免费优化一个网站可以优化多少关键词
  • 四川省城乡建设委员会官方网站提高网站排名的软件
  • wordpress 邮件关键词优化报价推荐
  • 网站门户建设流程seo策略主要包括
  • ssm+html实现网站开发国际十大市场营销公司
  • 企业网站建设劣势重庆seo代理
  • 备案需要网站建设方案书怎么做一个小程序
  • 腾讯云服务器用什么软件做网站简单网页制作模板
  • 东莞网站运营知名乐云seoseo的宗旨是什么
  • 找人做网站需要多少钱百度一下网页入口
  • 网站规划包含哪些内容新闻今日头条最新消息
  • 给网站做数据分析百度一下免费下载
  • 网页界面设计的分类广州aso优化
  • 交易平台网站模板种子库
  • 汉邦未来网站建设大数据营销案例
  • 招聘网页设计百度seo霸屏软件