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

怎么查询建设通网站大访问量的网站怎么做优化

怎么查询建设通网站,大访问量的网站怎么做优化,微信制作小程序的软件,学做糕点的网站大模型基础——从零实现一个Transformer(1)-CSDN博客 一、前言 之前两篇文章已经讲了Transformer的Embedding,Tokenizer,Attention,Position Encoding, 本文我们继续了解Transformer中剩下的其他组件. 二、归一化 2.1 Layer Normalization layerNorm是针对序列数据提出的一种… 大模型基础——从零实现一个Transformer(1)-CSDN博客 一、前言 之前两篇文章已经讲了Transformer的Embedding,Tokenizer,Attention,Position Encoding, 本文我们继续了解Transformer中剩下的其他组件. 二、归一化 2.1 Layer Normalization layerNorm是针对序列数据提出的一种归一化方法主要在layer维度进行归一化即对整个序列进行归一化。 layerNorm会计算一个layer的所有activation的均值和方差利用均值和方差进行归一化。 ∑1 1∑1(−)2 归一化后的激活值如下 − 其中  和  是可训练的模型参数。  是缩放参数新分布的方差 2   是平移系数新分布的均值为  。  为一个小数添加到方差上避免分母为0。 2.2 LayerNormalization 代码实现 import torch import torch.nn as nnclass LayerNorm(nn.Module):def __init__(self,num_features,eps1e-6):super().__init__()self.gamma nn.Parameter(torch.ones(num_features))self.beta nn.Parameter(torch.zeros(num_features))self.eps epsdef forward(self,x):Args:x (Tensor): (batch_size, seq_length, d_model)Returns:Tensor: (batch_size, seq_length, d_model)mean x.mean(dim-1,keepdimTrue)std x.std(dim-1,keepdimTrue,unbiasedFalse)normalized_x (x - mean) / (std self.eps)return self.gamma * normalized_x self.betaif __name__ __main__:batch_size 2seqlen 3hidden_dim 4# 初始化一个随机tensorx torch.randn(batch_size,seqlen,hidden_dim)print(x)# 初始化LayerNormlayer_norm LayerNorm(num_featureshidden_dim)output_tensor layer_norm(x)print(output after layer norm:\n,,output_tensor)torch_layer_norm torch.nn.LayerNorm(normalized_shapehidden_dim)torch_output_tensor torch_layer_norm(x)print(output after torch layer norm:\n,torch_output_tensor) 三、残差连接 残差连接(residual connection,skip residual也称为残差块)其实很简单 x为网络层的输入该网络层包含非线性激活函数记为F(x)用公式描述的话就是 代码简单实现 x x layer(x) 四、前馈神经网络 4.1 Position-wise Feed Forward Position-wise Feed Forward(FFN)逐位置的前馈网络其实就是一个全连接前馈网络。目的是为了增加非线性增强模型的表示能力。 它一个简单的两层全连接神经网络不是将整个嵌入序列处理成单个向量而是独立地处理每个位置的嵌入。所以称为position-wise前馈网络层。也可以看为核大小为1的一维卷积。 目的是把输入投影到特定的空间再投影回输入维度。 FFN具体的公式如下 ()(11)22 上述公式对应FFN中的向量变换操作其中f为非线性激活函数。 4.2 FFN代码实现 from torch import nn,Tensor from torch.nn import functional as Fclass PositonWiseFeedForward(nn.Module):def __init__(self,d_model:int ,d_ff: int ,dropout: float0.1) - None::param d_model: dimension of embeddings:param d_ff: dimension of feed-forward network:param dropout: dropout ratiosuper().__init__()self.ff1 nn.Linear(d_model,d_ff)self.ff2 nn.Linear(d_ff,d_model)self.dropout nn.Dropout(dropout)def forward(self,x: Tensor) - Tensor::param x: (batch_size, seq_length, d_model) output from attention:return: (batch_size, seq_length, d_model)return self.ff2(self.dropout(F.relu(self.ff1(x)))) 五、Transformer Encoder Block 如图所示编码器(Encoder)由N个编码器块(Encoder Block)堆叠而成我们依次实现。 from torch import nn,Tensor ## 之前实现的函数引入 from llm_base.attention.MultiHeadAttention1 import MultiHeadAttention from llm_base.layer_norm.normal_layernorm import LayerNorm from llm_base.ffn.PositionWiseFeedForward import PositonWiseFeedForwardfrom typing import *class EncoderBlock(nn.Module):def __init__(self,d_model: int,n_heads: int,d_ff: int,dropout: float,norm_first: bool False)::param d_model: dimension of embeddings:param n_heads: number of heads:param d_ff: dimension of inner feed-forward network:param dropout:dropout ratio:param norm_first : if True, layer norm is done prior to attention and feedforward operations(Pre-Norm).Otherwise its done after(Post-Norm). Default to False.super().__init__()self.norm_first norm_firstself.attention MultiHeadAttention(d_model,n_heads,dropout)self.norm1 LayerNorm(d_model)self.ff PositonWiseFeedForward(d_model,d_ff,dropout)self.norm2 LayerNorm(d_model)self.dropout1 nn.Dropout(dropout)self.dropout2 nn.Dropout(dropout)# self attention sub layerdef _self_attention_sub_layer(self,x: Tensor, attn_mask: Tensor, keep_attentions: bool) - Tensor:x self.attention(x,x,x,attn_mask,keep_attentions)return self.dropout1(x)# ffn sub layerdef _ffn_sub_layer(self,x: Tensor) - Tensor:x self.ff(x)return self.dropout2(x)def forward(self,src: Tensor,src_mask: Tensor None,keep_attentions: bool False) - Tuple[Tensor,Tensor]::param src: (batch_size, seq_length, d_model):param src_mask: (batch_size, 1, seq_length):param keep_attentions:whether keep attention weigths or not. Defaults to False.:return:(batch_size, seq_length, d_model) output of encoder block# pass througth multi-head attention# src (batch_size, seq_length, d_model)# attn_score (batch_size, n_heads, seq_length, k_length)x src# post LN or pre LNif self.norm_first:# pre LNx x self._self_attention_sub_layer(self.norm1(x),src_mask,keep_attentions)x x self._ffn_sub_layer(self.norm2(x))else:x self.norm1(x self._self_attention_sub_layer(x,src_mask,keep_attentions))x self.norm2(x self._ffn_sub_layer(x))return x ​ 5.1 Post Norm Vs Pre Norm 公式区别 Pre Norm 和 Post Norm 的式子分别如下 在大模型的区别 Post-LN :是在 Transformer 的原始版本中使用的归一化方案。在此方案中每个子层例如自注意力机制或前馈网络的输出先通过子层自身的操作然后再通过层归一化Layer Normalization Pre-LN:是先对输入进行层归一化然后再传递到子层操作中。这样的顺序对于训练更深的网络可能更稳定因为归一化的输入可以帮助缓解训练过程中的梯度消失和梯度爆炸问题。 ​ 5.2为什么Pre效果弱于Post
http://www.hkea.cn/news/14344056/

相关文章:

  • html5移动网站开发实例手机如何创建公众号
  • 南宁微信网站建设wordpress 如何删除主题
  • 个人如何做微商城网站设计苏州网站建设中心
  • 灰色关键词排名代做做seo时网站更新的目的
  • 2017做网站怎么赚钱太原网页设计培训班
  • php网站服务建设网络网站建设推广
  • 网站开发的机遇网站开发软件h开头的
  • 北京工商注册查询系统官网wordpress代码优化插件
  • 网站建设精美模板国家企业信用信息公示系统平台
  • 南京做网站营销鲜花网网站开发的意义
  • 网站快照诊断中国保险公司排名前十名
  • 怒江州建设局网站企业备案网站直播系统平台搭建
  • 怎么制作网站软件下载太原集团网站建设
  • 建立网站怎么搞Wordpress 推广 奖励 插件
  • 个人建站做淘客网站备案东莞公司注册官网
  • 网页网站建设的ppt模板外贸公司英文网站建设
  • 网站建设教程 冰美人视频建筑公司企业标语
  • 站长工具服务器查询赣州信息港主页
  • 怎么制作自己的网页网站郑州建筑工程有限公司
  • 邢台建设银行官方网站设计公司起名常用字
  • 韶关住房和城乡建设部网站spring框架做网站
  • 网站建站和项目部署一样吗直播网站建设目的
  • 定制相册哪个网站好微博推广
  • 网站系统繁忙上海官网seo
  • joomla可以做预订类网站吗怎么看网站是不是做竞价
  • 嘉兴做微网站设计长沙城市建设档案馆网站
  • 做网站开发多少钱北京大兴最专业的网站建设公司
  • 东莞网上销售网站建设怎么做网站推广和宣传
  • wordpress迁移跳转原网站犀牛云做的网站好不好
  • 个人网站的设计与实现专业论文图像处理工具工业和信息化部电子第五研究所