术语表

Leaky ReLU

发现 Leaky ReLU 激活对人工智能和 ML 的强大作用。解决濒临灭绝的 ReLU 问题,提高 CV、NLP、GAN 等模型的性能!

Leaky Rectified Linear Unit(或 Leaky ReLU)是神经网络(NN)中使用的一种激活函数,是对标准整流线性单元(ReLU)函数的直接改进。它旨在解决 "垂死的 ReLU "问题,即神经元在训练过程中会变得不活跃并停止学习。通过为负输入值引入一个非零的小斜率,Leaky ReLU 可以确保神经元始终保持梯度,从而使深度学习(DL)模型的训练更加稳定和一致。事实证明,这种简单的修改在各种架构中都很有效,有助于提高模型性能和训练动态性。

Leaky ReLU 如何解决垂死神经元问题

Leaky ReLU 背后的主要动机是解决垂死神经元问题。在标准ReLU函数中,神经元的任何负输入都会导致输出为零。如果一个神经元持续接收负输入,它的输出将始终为零。因此,在反向传播过程中,流经该神经元的梯度也将为零。这意味着神经元的权重不再更新,它实际上停止参与学习过程--"死亡"。

Leaky ReLU 通过在单元未激活时允许一个小的正梯度来解决这个问题。当输入负值时,它不会输出零,而是输出一个乘以一个小常数("泄漏")的值。这就确保了神经元的梯度永远不会为零,使其能够恢复并继续学习。卷积网络中整流激活的经验评估》一文首次详细介绍了这种方法。

实际应用

Leaky ReLU 能够促进更稳定的训练,这使它在人工智能(AI)的多个领域中发挥了重要作用。

  • 生成式对抗网络(GANs):Leaky ReLU 经常用于生成式对抗网络(GANs)的判别网络中。生成式对抗网络涉及生成器和判别器之间的微妙平衡,而标准 ReLU 的梯度消失会破坏这种训练的稳定性。正如谷歌开发者博客中关于 GANs 的解释,Leaky ReLU 稳定的非零梯度有助于两个网络更有效地学习,从而生成更高质量的合成数据
  • 物体检测模型:早期有影响力的物体检测模型,包括某些版本的YOLO,都采用了 Leaky ReLU。在深度卷积神经网络(CNN)中,神经元的死亡会阻碍模型学习关键特征。Leaky ReLU 有助于确保所有神经元保持活跃,从而提高模型在COCO 等不同数据集中检测物体的能力。尽管许多现代架构(如Ultralytics YOLO11)现在使用了更先进的功能,但 Leaky ReLU 仍是奠定其基础的关键组成部分。

Leaky ReLU 与其他激活功能的比较

Leaky ReLU 是为改进原始 ReLU 而设计的多个激活函数之一。了解它与其他函数的关系有助于为特定任务选择合适的函数。

  • ReLU:主要区别在于,ReLU对负输入完全不起作用,而 Leaky ReLU 则保持一个小的、恒定的梯度。
  • SiLU 和 GELU:较新的激活函数,如SiLU(西格玛线性单元)GELU(高斯误差线性单元),可提供平滑、非单调的曲线,有时可提高精确度。这些曲线通常出现在变形金刚等高级模型中。不过,与 Leaky ReLU 的简单线性运算相比,它们在计算上更为复杂。激活函数的详细概述可以提供进一步的比较。
  • 参数 ReLU(PReLU):PReLU 是一种在训练过程中学习泄漏系数的变体,它是模型的一个参数,而不是一个固定的超参数。

激活函数的最佳选择通常取决于特定的架构、数据集(如Ultralytics Datasets 上的数据集)以及超参数调整的结果。Leaky ReLU 因其简单性、低计算开销和防止神经元死亡的有效性,仍然是一个很好的选择。

PyTorchTensorFlow等主要深度学习框架都提供了直接的实现方法,如PyTorch 的 LeakyReLUTensorFlow 的 LeakyReLU 的官方文档所示。这种可访问性使开发人员能够轻松地进行实验,并使用Ultralytics HUB 等平台将其集成到自己的模型中。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、合作和成长

立即加入
链接复制到剪贴板