Transformer模型-Dropout的简明介绍:丢掉一些元素,防止过度拟合

Dropout的定义和目的:

Dropout 是一种神经网络正则化技术,它在训练时以指定的概率丢弃一个单元(以及连接)p。

这个想法是为了防止神经网络变得过于依赖特定连接的共同适应,因为这可能是过度拟合的症状。直观上,dropout 可以被认为是创建一个隐式的神经网络集合。

过度拟合

dropout的解决办法

PyTorch 的nn.Dropout实现

根据这个定义,PyTorch 的nn.Dropout “使用伯努利分布的样本以概率p将输入张量的一些元素随机归零。每个通道将在每次前向呼叫时独立清零。”

*伯努利分布 == 0-1分布,这是一个最简单的分布,任何一个只有两种结果的随机现象都服从0-1分布。

Dropout — PyTorch 2.2 documentationicon-default.png?t=N7T8https://pytorch.org/docs/stable/generated/torch.nn.Dropout.html

Dropout 可以被认为是根据给定的概率p随机将输入张量中的一些元素归零。当这种情况发生时,一部分输出将丢失。为了解决这个问题,输出也按因子1⁄₍₁_ₚ₎进行缩放。

由此推断,这意味着不必计算 dropout。正如杨章所解释的,“因为 dropout 仅在训练期间有效,而在推理期间不有效,如果没有缩放,则在推理期间预期输出会更大,因为元素不再被随机丢弃(设置为 0)。”

缩放使输入平均值和输出平均值大致相等。

示例演示 dropout 及其缩放如何影响输入。


当 dropout 率为p = 0.1时,大约 10 个值应为 0。比例率如下所示;这是每个输出应该的值。


结果显示,其中 10 个值被完全清零,并对结果进行缩放以确保输入和输出具有相同的平均值 - 或尽可能接近它。


在本例中,输入和输出的平均值均为 1.0。


​原文链接:https://medium.com/@hunter-j-phillips/a-simple-introduction-to-dropout-3fd41916aaea

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这些警告信息表明在模型的训练过程中,一些模块被视为无操作(zero-op)。这通常是由于模型的某些部分没有被正确地使用或设置导致的。以下是对每个警告的简要解释: - Dropout模块:Dropout是一种常用的正则化技术,但在推理阶段通常不需要使用。如果在推理阶段使用了Dropout模块,它会被视为无操作。 - PositionalEncoding模块:Transformer模型使用Positional Encoding来编码输入序列的位置信息。但在某些情况下,如果没有正确地设置Positional Encoding模块,它可能被视为无操作。 - NonDynamicallyQuantizableLinear模块:这个警告通常出现在使用量化技术对模型进行压缩时。NonDynamicallyQuantizableLinear是指无法动态量化的线性层,可能会被视为无操作。 - TransformerEncoderLayer模块:TransformerEncoderLayerTransformer模型中的一个关键组件,但在某些情况下,如果没有正确地使用或配置该模块,它可能被视为无操作。 - TransformerEncoder模块:TransformerEncoder是由多个TransformerEncoderLayer组成的编码器。类似于上述警告,如果没有正确地配置该模块,它可能被视为无操作。 - PredictionTransformer模块:这个警告出现在CSDN开发的具体模型中,可能是该模型使用了一些自定义的组件或层,但没有正确地使用或配置导致被视为无操作。 要解决这些警告,你需要检查相应的模块的使用和配置,确保其正常运行,并根据需要进行调整和修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ankie(资深技术项目经理)

打赏就是赞赏,感谢你的认可!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值