关于 ML 中的激活函数你需要知道的一切

已发表: 2022-11-08

目录

什么是机器学习中的激活函数?

机器学习激活函数被证明是包含所有权重和偏差的 ML 模型中的关键元素。 它们是一个不断发展的研究课题,并在使深度神经网络训练成为现实方面发挥了重要作用。 从本质上讲,它们决定了刺激神经元的决定。 如果神经元接收到的信息与已经存在的信息相关,或者是否应该忽略它。 我们应用于输入信号的非线性修改称为激活函数。 下一层神经元接收这个改变的输出作为输入。

由于激活函数对神经网络的输入进行非线性计算,它们允许它在没有它们的情况下学习并完成更复杂的任务,这本质上是机器学习中的线性回归模型。

必须理解激活函数的应用并权衡每个激活函数的优缺点,以选择合适的激活函数类型,以在特定的神经网络模型中提供非线性和精度。

报名参加世界顶尖大学机器学习课程获得硕士、Executive PGP 或高级证书课程以加快您的职业生涯。

机器学习激活函数模型基本上有两种类型——

  • 隐藏层
  • 输出层

隐藏层

神经模型的隐藏层中使用的激活函数的主要作用是提供神经网络模拟非线性交互所需的非线性。

输出层

机器学习模型的输出层采用的激活方法有一个特定的主要目标:将值压缩在一个有限的范围内,例如 0 到 1。

让我们首先了解机器学习中不同类型的激活函数——

1. 二元阶跃函数

一个基于阈值的分类器,它决定神经元是否应该被使用,当我们有一个激活函数时,首先想到的是。 如果 Y 值大于指定的阈值,则触发神经元; 否则,它处于休眠状态。

它通常被定义为——

f(x) = 1, x>=0

f(x) = 0, x<0

二元函数很简单。 它适用于开发二元分类器。 需要评估,当我们只需要对单个班级回答“是”或“否”时,这是理想的选择,因为它们要么打开神经元,要么让它为零。

2. 线性函数

随着输入速率的增加,正斜率可能会导致触发速率上升。 线性激活函数在提供广泛的激活方面表现出色。

该函数与我们直接的水平激活函数中的神经元或输入的加权组合成正比。

一个神经元可能在二进制中被激发或不被激发。 如果您熟悉机器学习中的梯度下降,您可能会注意到此函数的导数是恒定的。

最佳机器学习课程和在线人工智能课程

LJMU 机器学习与人工智能理学硕士 来自 IIITB 的机器学习和人工智能高级研究生课程
IIITB 机器学习和自然语言处理高级证书课程 IIITB 机器学习和深度学习高级证书课程 马里兰大学数据科学与机器学习高级管理研究生课程
要探索我们所有的课程,请访问下面的页面。
机器学习课程

3.非线性函数

  1. ReLU

在激活函数方面,Rectified Linear Unit 是最好的。 对于大多数问题,这是最流行和默认的激活功能。 当它为负时,它被限制为 0,而当它变为正时,它是无界的。 深度神经网络可以受益于这种有界性和无界性组合所产生的内在正则化。 正则化创建了一个稀疏表示,使训练和推理在计算上有效。

正无界性在加速线性回归收敛的同时保持了计算的简单性。 ReLU 只有一个明显的缺点:死神经元。 一些死亡的神经元在训练阶段的早期就关闭了,并且负向 0 永远不会重新激活。 因为函数从 x > 0 时的无界快速转变为 x ≤ 0 时的有界,所以它不能连续微分。 然而,在实践中,如果学习率低和显着的负偏差,这可能会被克服,而不会对性能产生持久影响。

优点:

  • 与其他非线性函数相比,ReLU 需要更少的数学过程,从而降低了计算成本和线性度。
  • 它可以防止并修复消失梯度问题。

利用:

  • 用于 RNN、CNN 和其他机器学习模型。

ReLU 的不同修改——

泄漏的 ReLU

ReLU 函数的一个更好的变体是 Leaky ReLU 函数。 由于 ReLU 函数的梯度为 0,其中 x<0,因此该区域中的激活导致神经元死亡,而泄漏 ReLU 被证明是解决此类问题最有益的。 我们将 ReLU 函数定义为 x 的微小线性分量,而不是 0,其中 x<0。

可以看作——

f(x)=ax, x<0

f(x)=x, x>=0

优点 -

  • Leaky ReLU 有一点负斜率,是为了解决“垂死的 ReLU”问题(0.01 左右)的尝试。

利用 -

  • 用于涉及梯度的任务,例如 GAN。

参数 ReLU

这是对 Leaky ReLU 的改进,其中标量倍数是在数据上训练的,而不是随机选择的。 因为模型是使用数据训练的,所以它对缩放参数 (a) 很敏感,并且它会根据 a 的值进行不同的计数。

利用 -

  • 当 Leaky ReLU 失败时,可以使用 Parametric ReLU 来解决死神经元的问题。

GeLU(高斯误差线性单元)

最新的孩子,毫无疑问是 NLP(自然语言处理)相关任务的胜利者是高斯误差线性单元,它用于基于变压器的系统和 SOTA 算法,如 GPT-3 和 BERT。 GeLU 结合了 ReLU、Zone Out 和 Dropout(在稀疏网络中随机将神经元归零)。 ReLU 使用 GeLU 变得更平滑,因为它通过百分位数而不是门对输入进行加权。

利用 -

  • 计算机视觉、自然语言处理、语音识别

ELU(指数线性单位)

2015 年推出的 ELU 是正无界的,并且对负值采用对数曲线。 与 Leaky 和 ​​Parameter ReLU 相比,这种解决死神经元问题的策略略有不同。 与 ReLU 相比,负值逐渐平滑并受到约束以防止神经元死亡。 然而,它很昂贵,因为使用指数函数来描述负斜率。 当使用不太理想的起始技术时,指数函数偶尔会导致梯度扩大。

嗖嗖

Swish 的小负值于 2017 年首次引入,仍然有助于捕捉潜在模式,而大的负值将导数为 0。Swish 可用于轻松替换 ReLU,因为它的形式很有趣。

优点 -

  • 结果是 Sigmoid 函数和 RELU 之间的一种解决方法,有助于对结果进行规范化。
  • 具有处理梯度消失问题的能力。

利用 -

  • 在图片分类和机器翻译方面,与 ReLU 不相上下,甚至优于 ReLU。

需求机器学习技能

人工智能课程 画面课程
自然语言处理课程 深度学习课程

4. Softmax 激活函数

与 sigmoid 激活函数一样,softmax 主要用于最后一层或输出层,用于做出决策。 softmax 只是根据权重为输入变量赋值,这些权重的总和最终等于 1。

优点 -

  • 与 RELU 函数相比,Softmax 中的梯度收敛更平滑。
  • 它有能力处理消失梯度问题。

利用 -

  • 多类和多名词分类。

5. 乙状结肠

机器学习中的 Sigmoid 函数是最流行的激活函数之一。 方程是——

f(x)=1/(1+e^-x)

这些激活函数的好处是将输入减少到 0 和 1 之间的值,这使得它们成为概率建模的理想选择。 当应用于深度神经网络时,函数变得可微,但由于有界性而迅速饱和,导致梯度减小。 当需要训练具有数百层和神经元的模型时,指数计算的成本会增加。

导数被限制在 -3 和 3 之间,而函数被限制在 0 和 1 之间。它不适合训练隐藏层,因为输出在零附近不对称,这将导致所有神经元在训练期间采用相同的符号.

优点 -

  • 在收敛期间提供平滑的渐变。
  • 它通常用 0 和 1 给出预测的精确分类。

利用 -

  • 机器学习Sigmoid 函数通常用于输出层的二元分类和逻辑回归模型。

流行的机器学习和人工智能博客

物联网:历史、现在和未来 机器学习教程:学习机器学习 什么是算法? 简单易行
印度机器人工程师的薪水:所有角色 机器学习工程师的一天:他们在做什么? 什么是物联网(物联网)
排列与组合:排列与组合之间的区别 人工智能和机器学习的 7 大趋势 使用 R 进行机器学习:您需要知道的一切

6. Tanh – 双曲正切激活函数

机器学习中的 Sigmoid 函数类似,此激活函数用于预测或区分两个类别,除了它专门将负输入转换为负量并且范围为 -1 到 1。

tanh(x)=2sigmoid(2x)-1

或者

tanh(x)=2/(1+e^(-2x)) -1

它基本上解决了我们的问题,即具有相同符号的值。 其他特征与 sigmoid 函数相同。 在任何时候,它都是连续的和独特的。

优点 -

  • 与 sigmoid 不同,它具有以零为中心的功能。
  • 这个函数也有一个平滑的渐变。

尽管机器学习中的 Tahn 和 Sigmoid 函数由于它们的正有界性而可以用于隐藏层,但由于训练饱和和梯度消失,深度神经网络无法使用它们。

从正确的课程开始您的机器学习生涯

有兴趣深入了解激活函数及其对增强机器学习的帮助吗? 通过 WES 认可的 UpGrad 课程机器学习和人工智能科学硕士课程,全面了解机器学习以及 AI、深度学习、NLP 和强化学习等所有细节 本课程提供实践经验,同时参与 12 个以上的项目、进行研究、高级编码课程以及与一些最优秀的教授进行辅导。

注册以了解更多信息!

结论

被称为激活函数的关键操作以非线性方式改变输入,使其能够理解和执行更复杂的任务。 我们讨论了最流行的激活函数及其可能适用的用途; 这些激活函数提供相同的功能,但适用于各种情况。

你如何决定哪个激活函数是最好的?

选择激活函数是一个复杂的决定,完全取决于手头的问题。 但是,如果您是机器学习的新手,您可能希望先从 sigmoid 函数开始,然后再继续其他学习。

激活函数应该是线性的还是非线性的?

无论设计多么复杂,线性激活函数只在一层深度内有效。 因此激活层不能是线性的。 此外,当今世界及其挑战是非常非线性的。

哪个激活函数可以轻松学习?

谭。 通过扩大范围以覆盖 -1 到 1,它解决了 sigmoid 激活函数的缺点。 这导致零中心,这导致隐藏层的权重的平均值接近于 0。因此学习变得更快更容易。