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

手机创建网站查询网站空间的服务商

手机创建网站,查询网站空间的服务商,西宁做网站的公司旭云网络,网上培训班归一化层是深度神经网络体系结构中的关键#xff0c;在训练过程中确保各层的输入分布一致#xff0c;这对于高效和稳定的学习至关重要。归一化技术的选择#xff08;Batch, Layer, GroupNormalization#xff09;会显著影响训练动态和最终的模型性能。每种技术的相对优势并…归一化层是深度神经网络体系结构中的关键在训练过程中确保各层的输入分布一致这对于高效和稳定的学习至关重要。归一化技术的选择Batch, Layer, GroupNormalization会显著影响训练动态和最终的模型性能。每种技术的相对优势并不总是明确的随着网络体系结构、批处理大小和特定任务的不同而变化。 本文将使用合成数据集对三种归一化技术进行比较并在每种配置下分别训练模型。记录训练损失并比较模型的性能。 神经网络中的归一化层是用于标准化网络中某一层的输入的技术。这有助于加速训练过程并获得更好的表现。有几种类型的规范化层其中 Batch Normalization, Layer Normalization, Group Normalization是最常见的。 常见的归一化技术 BatchNorm BN应用于一批数据中的单个特征通过计算批处理上特征的均值和方差来独立地归一化每个特征。它允许更高的学习率并降低对网络初始化的敏感性。 这种规范化发生在每个特征通道上并应用于整个批处理维度它在大型批处理中最有效因为统计数据是在批处理中计算的。 LayerNorm 与BN不同LN计算用于归一化单个数据样本中所有特征的均值和方差。它应用于每一层的输出独立地规范化每个样本的输入因此不依赖于批大小。 LN有利于循环神经网络(rnn)以及批处理规模较小或动态的情况。 GroupNorm GN将信道分成若干组并计算每组内归一化的均值和方差。这对于通道数量可能很大的卷积神经网络很有用将它们分成组有助于稳定训练。 GN不依赖于批大小因此适用于小批大小的任务或批大小可以变化的任务。 每种规范化方法都有其优点并且根据网络体系结构、批处理大小和训练过程的特定需求适合不同的场景: BN对于具有稳定和大批大小的网络非常有效LN对于序列模型和小批大小是首选而GN提供了对批大小变化不太敏感的中间选项。 代码示例 我们演示了使用PyTorch在神经网络中使用三种规范化技术的代码并且绘制运行的结果图。 首先是生成数据 importtorchimporttorch.nnasnnimporttorch.optimasoptimimportnumpyasnpimportmatplotlib.pyplotaspltfromtorch.utils.dataimportDataLoader, TensorDataset# Generate a synthetic datasetnp.random.seed(42)Xnp.random.rand(1000, 10)y (X.sum(axis1) 5).astype(int) # simple threshold sum functionX_train, y_traintorch.tensor(X, dtypetorch.float32), torch.tensor(y, dtypetorch.int64)# Create a DataLoaderdatasetTensorDataset(X_train, y_train)loaderDataLoader(dataset, batch_size64, shuffleTrue)然后是创建模型这里将三种方法写在一个模型中初始化时只要传递不同的参数就可以使用不同的归一化方法 # Define a model with Batch Normalization, Layer Normalization, and Group NormalizationclassNormalizationModel(nn.Module):def__init__(self, norm_typebatch):super(NormalizationModel, self).__init__()self.fc1nn.Linear(10, 50)ifnorm_typebatch:self.normnn.BatchNorm1d(50)elifnorm_typelayer:self.normnn.LayerNorm(50)elifnorm_typegroup:self.normnn.GroupNorm(5, 50) # 5 groupsself.fc2nn.Linear(50, 2)defforward(self, x):xself.fc1(x)xself.norm(x)xnn.ReLU()(x)xself.fc2(x)returnx然后是训练的代码我们也简单的封装下方便后面调用 # Training functiondeftrain_model(norm_type):modelNormalizationModel(norm_typenorm_type)criterionnn.CrossEntropyLoss()optimizeroptim.Adam(model.parameters(), lr0.001)num_epochs50losses []forepochinrange(num_epochs):forinputs, targetsinloader:optimizer.zero_grad()outputsmodel(inputs)losscriterion(outputs, targets)loss.backward()optimizer.step()losses.append(loss.item())returnlosses最后就是训练,经过上面的封装我们直接循环调用即可 # Train and plot results for each normalizationnorm_types [batch, layer, group]results {}fornorm_typeinnorm_types:lossestrain_model(norm_type)results[norm_type] lossesplt.plot(losses, labelf{norm_type} norm)plt.xlabel(Iteration)plt.ylabel(Loss)plt.title(Normalization Techniques Comparison)plt.legend()plt.show()生成的图表将显示每种归一化技术如何影响有关减少损失的训练过程。我们可以解释哪种归一化技术对这个特定的合成数据集和训练设置更有效。我们的评判标准是通过适当的归一化实现更平滑和更快的收敛。 BN(蓝色)、LN(橙色)和GN(绿色)。 所有三种归一化方法都以相对较高的损失开始并迅速减小。 可以看到BN的初始收敛速度非常的快但是到了最后损失出现了大幅度的波动这可能是因为学习率、数据集或小批量选择的随机性质决定的或者是模型遇到具有不同曲率的参数空间区域。我们的batch_size64如果加大这个参数应该会减少波动。 LN和GN的下降平稳并且收敛速度和表现都很类似通过观察能够看到LN的方差更大一些表明在这种情况下可能不太稳定 最后所有归一化技术都显著减少了损失但是因为我们使用的是生成的数据所以不确定否都完全收敛了。不过虽然该图表明最终的损失值很接近但是GN的表现可能更好一些。 总结 在这些规范化技术的实际应用中必须考虑任务的具体要求和约束。BatchNorm在大规模批处理可行且需要稳定性时更可取。LayerNorm在rnn和具有动态或小批量大小的任务的背景下可以发挥作用。GroupNorm提供了一个中间选项在不同的批处理大小上提供一致的性能在cnn中特别有用。 归一化层是现代神经网络设计的基石通过了解BatchNorm、LayerNorm和GroupNorm的操作特征和实际含义根据任务需求选择特定的技术可以在深度学习中实现最佳性能。 https://avoid.overfit.cn/post/e8ec905659e5446e84fb9617feb86e95
http://www.pierceye.com/news/670201/

相关文章:

  • 手机登录网站怎么建设网站风格和功能设计方案
  • 网站报价天津网站在哪里建设
  • 湖北专业网站建设维修电话福清网站商城建设
  • 网站建设模块怎么使用线上注册公司流程和费用
  • 营销型网站设计内容wordpress加速优化插件
  • 设计坞网站官方下载4399网页游戏入口
  • 太原百度网站建设如何联系网站管理员
  • 海东高端网站建设公司视频网站 费用
  • 可以帮别人备案网站吗手机建网站公司
  • 四川建设厅网上查询网站信用网站系统建设方案
  • 克隆网站后台做系统用哪个网站好
  • html5 手机网站页面实例wordpress 路由404
  • 百度地图嵌入公司网站wordpress如何去掉分类里面的大字
  • 山东住房与城乡建设网站够完美网站建设
  • 班级网站建设首页报告如何查询一个网站是否备案
  • 艺术设计类网站石家庄公司的网站设计
  • 舞钢网站建设企业做网站需要什么软件
  • 网站开发上市公司专业的网站建设价格低
  • 备案网站有哪些资料公司名字大全四个字
  • 网站推广预期达到的目标建湖人才网手机版
  • 营销网站设计公司排名wordpress图片缓冲
  • 山西建设官方网站第三方网站流量统计
  • 企业网站用wordpress龙岗网站建设网站排名优化
  • 成都建设网站哪家好事件营销的特点
  • 如何利用模板做网站视频wordpress手机版边侧导航
  • 网站制作在哪里找wordpress 设置登陆界面
  • 济南seo网站建设上海seo网站优化_搜索引擎排名_优化型企业网站建设_锦鱼网络
  • 深圳网站备影楼网站建设
  • asp网站开门桂林市区
  • dw个人网站主页怎么做网站前端用什么语言