返回介绍

Activation function 激励函数

发布于 2025-05-02 13:36:25 字数 2291 浏览 0 评论 0 收藏 0

作者: Alice 编辑: Morvan

今天讲一下在神经网络中激励函数的作用和如何运作,以及 Theano 中有哪些激励函数。

本文结构:

  1. 什么是 Activation function
  2. 几种常用激活函数
  3. 应用场景

什么是 Activation function

首先,什么是 Activation function

在这个视频中有提到 什么是神经网络 如下图,在这三个中间层中,有激活函数,相当于过滤器或者激活器,作用就是会使一些特征被激活 Activate,同时另一些特征不被激活 Deactivate, 例如,当猫的图片数据传递到第一个隐藏层时,在这个激励函数作用下,大于 0 的数据乘以 1 保持原样,小于 0 的数据乘以 0 变为 0,被 Deactivate

有多种激活函数,例如,当传递进来的值越小时,作用后就会越接近 0, 当传递进来的值越大时,作用后就会越接近 1。 还有可以计算线性或者非线性关系的,或者可以计算概率的激活函数。 总而言之,激活函数的作用就是使重要的信息被激励,不重要或者反向的信息不被激励。传进来的值,经过这种变化,得到另一种结果,而这正是我们需要的。

几种常用激活函数

Theano 中可以用的激励函数可以在这个 链接 中找到。 进入这个链接,以 theano.tensor.nnet.nnet.sigmoid(x) 为例。 Sigmoid 函数就是可以做到,当输入值小于 0 并且越小时,输出值就会越接近 0, 当输入值大于 0 并且越大时,输出值就会越接近 1。常被用于分类问题中。 还有其他几种拓展函数,例如 softplus() ,当输入值小于 0 时,输出值接近 0, 当输入值大于 0 时,输出值是非线性的上升关系。可以很好地处理具有非线性的逻辑关系的输入值。 relu() , 当输入值小于 0 时,输出值全部等于 0, 当输入值大于 0 时,输出值是线性关系。 常用的有 softplus(),softmax(),relu() 这三种,当然还有 tanh() 等等。 在实际中可以尝试在不同的神经层中,放入不同的激活函数,尝试得到不同的效果。具体问题具体分析,会发现有些激活函数并不适合当前的问题。

应用场景

在隐藏层中,可以用 relu, tanh, softplus 等非线性的激活函数。 在分类问题中,可以用 sigmoid ,softmax 来求概率。例如选择 N 类中概率最大的那一类作为预测值。 在回归问题中,可以什么激活函数都不用,只用 linear function ,或者对于 价格,高度 这种非负的变量,可以在输出层用 relu 这种非负的激活函数,使输出值非负。

如果你觉得这篇文章或视频对你的学习很有帮助,请你也分享它,让它能再次帮助到更多的需要学习的人。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。