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

目前网站开发语言企业建站系统下载

目前网站开发语言,企业建站系统下载,移动网站建设生要女,wordpress qq登陆接口Encoder 论文地址 https://arxiv.org/pdf/1706.03762 Encoder结构介绍 Transformer Encoder是Transformer模型的核心组件,负责对输入序列进行特征提取和语义编码。通过堆叠多层结构相同的编码层(Encoder Layer),每层包含自注意力机…

Encoder

  • 论文地址

    https://arxiv.org/pdf/1706.03762

Encoder结构介绍

  • Transformer Encoder是Transformer模型的核心组件,负责对输入序列进行特征提取和语义编码。通过堆叠多层结构相同的编码层(Encoder Layer),每层包含自注意力机制和前馈神经网络,实现对输入信息的逐层抽象。

    image-20250428172118696

    这里实现上图蓝色框中的整个Encoder结构

    主要组件包含:

    1. 词嵌入层:将离散的token索引映射为连续向量
    2. 位置编码:注入序列的位置信息
    3. 多层编码层:通过多头注意力和前馈网络进行特征变换

数学流程

  • 编码器的计算过程可形式化为:
    Embedding : X e m b e d = Embedding ( X i n p u t ) PositionEncode : X p o s = X e m b e d + PositionEncoding ( s e q _ l e n ) EncoderLayers : H o u t = LayerNorm ( FFN ( MHA ( X p o s ) + X p o s ) \begin{aligned} \text{Embedding} &: X_{embed} = \text{Embedding}(X_{input}) \\ \text{PositionEncode} &: X_{pos} = X_{embed} + \text{PositionEncoding}(seq\_len) \\ \text{EncoderLayers} &: H_{out} = \text{LayerNorm}( \text{FFN}( \text{MHA}(X_{pos}) + X_{pos} ) \end{aligned} EmbeddingPositionEncodeEncoderLayers:Xembed=Embedding(Xinput):Xpos=Xembed+PositionEncoding(seq_len):Hout=LayerNorm(FFN(MHA(Xpos)+Xpos)
    其中每个编码层包含:

    1. 多头自注意力(Multi-Head Self-Attention)
    2. 残差连接 + 层归一化
    3. 前馈神经网络(Feed-Forward Network)
    4. 二次残差连接 + 层归一化

代码实现

  • 其他层的实现

    层名链接
    PositionEncodinghttps://blog.csdn.net/hbkybkzw/article/details/147431820
    calculate_attentionhttps://blog.csdn.net/hbkybkzw/article/details/147462845
    MultiHeadAttentionhttps://blog.csdn.net/hbkybkzw/article/details/147490387
    FeedForwardhttps://blog.csdn.net/hbkybkzw/article/details/147515883
    LayerNormhttps://blog.csdn.net/hbkybkzw/article/details/147516529
    EncoderLayerhttps://blog.csdn.net/hbkybkzw/article/details/147591824

    下面统一在before.py中导入

  • 实现 transformer 编码器 Encoder

    import torch 
    from torch import nnfrom before import PositionEncoding,calculate_attention,MultiHeadAttention,FeedForward,LayerNorm,EncoderLayerclass Encoder(nn.Module):def __init__(self, vocab_size, padding_idx, d_model, n_heads, ffn_hidden, dropout_prob=0.1, num_layers=6, max_seq_len=512):super(Encoder, self).__init__()# 词嵌入层(含padding掩码)self.embedding = nn.Embedding(num_embeddings=vocab_size, embedding_dim=d_model, padding_idx=padding_idx)# 位置编码器self.position_encode = PositionEncoding(d_model=d_model, max_seq_len=max_seq_len)# 编码层堆叠self.encode_layers = nn.ModuleList([EncoderLayer(n_heads=n_heads, d_model=d_model, ffn_hidden=ffn_hidden, dropout_prob=dropout_prob) for _ in range(num_layers)])def forward(self, x, src_mask=None):# 输入形状: [batch_size, seq_len]embed_x = self.embedding(x)  # 词向量映射pos_encode_x = self.position_encode(embed_x)  # 位置编码# 逐层处理for layer in self.encode_layers:pos_encode_x = layer(pos_encode_x, mask=src_mask)return pos_encode_x  # 输出形状: [batch_size, seq_len, d_model]
    

    关键组件说明

    1. 词嵌入层(Embedding):将离散的token索引转换为d_model维连续向量,自动处理padding位置的零值屏蔽
    2. 位置编码(PositionEncoding):使用正弦/余弦函数生成位置特征,与词向量相加实现位置信息注入
    3. 编码层堆叠(encode_layers):每个编码层包含:多头自注意力机制;前馈神经网络;残差连接;层归一化
  • 维度变化

    处理阶段张量形状变化示例
    原始输入[batch_size, seq_len]
    词嵌入层输出[batch_size, seq_len, d_model]
    位置编码后[batch_size, seq_len, d_model]
    每个编码层输出[batch_size, seq_len, d_model]

使用示例

  • 测试用例

    if __name__ == "__main__":# 模拟输入:batch_size=4, 序列长度64x = torch.randint(0, 100, (4, 64))# 实例化编码器:词表100,模型维度512,8头,2048前馈维度,8层encoder = Encoder(vocab_size=100, padding_idx=0, d_model=512, n_heads=8, ffn_hidden=2048, num_layers=8, max_seq_len=512)# 前向传播out = encoder(x)print("输入形状:", x.shape)     # torch.Size([4, 64])print("输出形状:", out.shape)   # torch.Size([4, 64, 512])
    
  • 上述参数解释

    参数名典型值作用描述
    vocab_size30000词表大小
    padding_idx0指定padding token的索引
    d_model512模型隐藏层维度
    n_heads8注意力头数量
    ffn_hidden2048前馈网络中间层维度
    num_layers6/8编码层堆叠数量
    max_seq_len512支持的最大序列长度


文章转载自:

http://1fDsPme9.tmpLs.cn
http://I2rcCHNR.tmpLs.cn
http://VH9LIRCQ.tmpLs.cn
http://0VmTg3ou.tmpLs.cn
http://5DkYhua0.tmpLs.cn
http://Nw5OPe8b.tmpLs.cn
http://TUdIS3kF.tmpLs.cn
http://pyg5vK4b.tmpLs.cn
http://2TARU7MU.tmpLs.cn
http://HZrJwmcJ.tmpLs.cn
http://36NDUzJs.tmpLs.cn
http://DxJcWsvP.tmpLs.cn
http://mcjEoCyS.tmpLs.cn
http://l1GLIvfK.tmpLs.cn
http://00TY2WhA.tmpLs.cn
http://j4qB7Ku0.tmpLs.cn
http://I9tCO3FO.tmpLs.cn
http://k33DKylp.tmpLs.cn
http://gzPKbTDp.tmpLs.cn
http://Y2G6cRNU.tmpLs.cn
http://4jvs2zjQ.tmpLs.cn
http://JmFltOLP.tmpLs.cn
http://rM7Zsj7j.tmpLs.cn
http://XVmzeJup.tmpLs.cn
http://AAA5wR3k.tmpLs.cn
http://sG8ApXth.tmpLs.cn
http://5hNCeQ3G.tmpLs.cn
http://TAO6O33n.tmpLs.cn
http://AL7ltKmc.tmpLs.cn
http://vj3cvj2B.tmpLs.cn
http://www.dtcms.com/wzjs/746742.html

相关文章:

  • 介绍做燕窝的网站网站正在建设中 源码下载
  • 平面设计网站推荐网站建设新闻中心
  • 个人网站设计论文的结论wordpress搬家教程
  • 佛山网站免费制作vps上创建网站
  • 有什么超好用的做简历的网站兴宁网站建设
  • 昆明个人网站建设平台上海外贸官网
  • 建设网站需要多少钱济南兴田德润o厉害吗网络公司网站开发
  • 手机销售网站的设计与实现微信公众号自定义菜单wordpress
  • 做调查的网站推荐网站维护更新
  • 网络宣传网站建设价格wordpress插件文件夹在哪
  • 做进行网站推广赚钱上海迈诺网站建设
  • 网站建设设计制美克美家网站建设
  • 谷歌seo快速排名优化方法市场seo是什么
  • 建立自己的平台网站吗广州网站建设网络
  • 晋城中英文网站建设wordpress英文版改中文
  • 中小型网站建设哪家好网站绑定域名
  • 网站开始是怎么做的多店铺开源商城系统
  • 这个网站做海外推广百度网站优点
  • 广告设计效果图电脑系统优化工具
  • 南宁制作网站公司做外贸女装有哪些网站有哪些
  • 免费的简历制作网站西安网站建设需要多少钱
  • 网站开发费用怎么入账wordpress演示数据包
  • 服装平台网站有哪些曲靖模板网站建设
  • 官方网站的网络营销功能分析网站建设保教
  • 贵州建设监理协会网站用C语言做网站登录界面
  • 阿里云nas做网站医院网站asp
  • 如何给网站做seo开平市网站建设
  • 做网站素材在哪里找平乡企业做网站
  • 建设部网站退休注册人员PHP做网站案例教程
  • 网站制作英文版网站推荐营销型网站建设