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

深圳商业网站建设去哪家网站建设公司伟置

深圳商业网站建设去哪家,网站建设公司伟置,北京建设安全网络平台87,上门做网站哪家好在机器学习中,归一化是一个非常重要的工具,它能帮助我们加速训练的速度。在我们前面的SiglipVisionTransformer 中,也有用到归一化层,如下代码所示: class SiglipVisionTransformer(nn.Module): ##视觉模型的第二层&am…

机器学习归一化一个非常重要工具帮助我们加速训练速度我们前面SiglipVisionTransformer 也有用到归一化如下代码所示

class SiglipVisionTransformer(nn.Module): ##视觉模型的第二层,将模型的调用分为了图像嵌入模型和transformer编码器模型的调用def __init__(self, config:SiglipVisionConfig):super().__init__()self.config = configself.embed_dim = config.hidden_sizeself.embeddings = SiglipVisionEmbeddings(config) ## 负责将图像嵌入成向量self.encoder = SiglipEncoder(config) ## 负责将向量编码成注意力相关的向量self.post_layer_norm = nn.LayerNorm(embed_dim, eps=config.layer_norm_eps) ## 层归一化def forward(self, pixel_values:torch.Tensor) -> torch.Tensor:"""
		pixel_values: [Batch_size,Channels,Height,Width]"""## [ Batch_size,Channels,Height,Width] -> [Batch_size,Num_Patches,Embedding_size] 
		hidden_states = self.embeddings(pixel_values) ## 将图像嵌入成向量# [Batch_size,Num_Patches,Embedding_size] -> [Batch_size,Num_Patches,Embedding_size]
		last_hidden_state = self.encoder(hidden_states) ## 将向量编码成注意力相关的向量# [Batch_size,Num_Patches,Embedding_size] -> [Batch_size,Num_Patches,Embedding_size]
		last_hidden_state = self.post_layer_norm(last_hidden_state)return last_hidden_state

这里post_layer_norm 就是归一化所以本文一起介绍归一化

归一化解决问题

归一化主要解决神经网络训练过程会出现协变量偏移 问题

协变量偏移(Covariate Shift)是指由于输入样本分布不均匀导致神经网络第一输入剧烈变化第一神经网络输入的剧烈变化又会导致神经网络第一输出产生剧烈变化从而影响传递神经网络之后每一导致每一轮迭代神经网络输出输出剧烈变化从而导致梯度非常不稳定参数找不到一个稳定优化方向从而导致训练缓慢

Batch Normalization

假设有一个 mini-batch 的输入 ,也就是:

  • :batch size
  • :通道数(对全连接层来说是特征维度)
  • :空间维度(在卷积层中)

其实本质上Batch Normalization 希望输入特征变化不再那么剧烈希望样本所有特征基于当前批次做一次归一化这样当前批次特征就不会剧烈变化

值得注意图像输入Batch Normalization普通特征Batch Normalization计算差别假定图像输入 [ N, C, H, W ]那么计算公式所示torch通道维度进行归一化每一个通道像素值通过该通道所有图片像素得到平均值归一化这是因为由于图像处理卷积神经网络里面同一个通道共享同一个卷积核整个通道所有像素看成一个特征

如果普通特征输入形如 N, D 】,NBatch_Size, D特征维度每一个特征通过计算所有N对应特征平均方差归一化

来说如下图所示

问题所在

主要问题在于依赖 mini-batch:批量太小时效果差

  • BatchNorm 的均值和方差是 在 batch 维度上估算 的。
  • 如果 batch size 很小(比如在线学习、NLP中的RNN),统计结果不稳定,归一化效果会变差。
  • 对于 batch size=1 时,根本无法统计 batch 内部分布。

因为BN 尝试一个批次代表整体样本分布但是只有批次样本很大时候才能拟合如果批次样本很小那么又会出现协变量偏移的问题

于是又引申出了layer_normalization....

Layer Normalization

Layer Normalization(层归一化)是为了克服 Batch Normalization 的局限性 而提出的,尤其在 batch size 很小处理序列模型(如 RNN、Transformer) 时非常有用。

LN 核心思想

在一个样本内部的所有特征维度上做归一化,而不是像 BatchNorm 那样在 batch 维度上归一化。

LN做法比较简单

图像卷积场景如果输入N,C,H,W分别代表Batch size通道图像高度宽度此时我们N不同图像图像C特征因为每个通道一整张图像像素都是一个特征一张图像总共C特征每个特征看成 H * W向量于是我们所有特征计算均值方差进行归一化

总结

不管BN还是LN归一化操作使得每一个计算value处于标准0,1)正态分布缓解训练过程协变量偏移问题

http://www.dtcms.com/wzjs/538060.html

相关文章:

  • 网站建设英文江苏省宝应城市建设有限公司网站
  • 百度网站公司信息推广怎么做的三峡建设管理有限公司网站
  • 深圳建设网站公电商网站建设基础教案
  • 个人网站备案名字不同查看自己网站访问量
  • 阜阳哪里做网站网页的设计流程是怎样的
  • 面包屑网站导航怎么做怎么创建属于自己的平台
  • 网站推广风险做图必备素材网站
  • 建设英文网站的必要性内容型网站的运营
  • 中国石油天然气第六建设公司网站永久免费域名申请
  • 网站广告赚钱大企业网站建设公司
  • 婚礼婚庆网站建设需求分析网站建设所有权
  • 个人域名 做公司网站松江泗泾网站建设
  • 天下网商自助建站系统廊坊seo关键词排名
  • 可以做宣传的网站做关键字要改网站
  • 大良网站建设dwxw废旧物品手工制作图片
  • 互动科技 网站建设网页设计师考证
  • 九江做网站的wordpress摘要字数的插件
  • 淘宝客做销量的网站有哪些视频网站要多大虚拟主机
  • 自已做网站北京中国建设工程造价管理协会网站
  • 西安集团网站建设珠海制作企业网站
  • 绿色食品网站建设可行性苏州建设工程招标在哪个网站
  • 两学一做网站专栏怎么设置电子商务网站建设实训作业
  • 中学网站建设 课设做门户网站找哪家公司
  • t型布局网站实例建门户网站哪家最好
  • 做网站的启蒙思想美食网页制作
  • 有没有找人做标书的网站游戏ui素材网站
  • wordpress做得比较大的网站哪个网站做不锈钢好
  • 网站源代码分列怎么做外贸网站 备案
  • 帮别人设计网站的网站吗php网站开发工程师
  • 杭州网站优化企业前端开发好学吗