目录

简介

GELU()的原理与实现

GELU()与Swish()、Mish()的关系


简介

GELU(Gaussian Error Linear Unit,高斯误差线性单元)激活函数与随机正则化有关,可以起到自适用Dropout的效果。该激活函数在NLP领域中被广泛应用,BERT、RoBERTa、ALBERT等模型都使用了这种激活函数。另外,在OpenAi的无监督预训练模型GPT-2中,研究人员在所有编码器模块中都使用了GELU()激活函数。

GELU()的原理与实现

Dropout、Relu等机制都是将不重要的激活信息变为零,但不改变重要的信息。这种做法可以被理解为,神经网络的激活值乘一个激活参数1或0。

GELU()激活函数将激活参数1或0的取值概率与神经网络的激活值结合起来,这使得神经网络可以有明确的决策结果。即神经网络的激活值越小,则其所乘的激活参数为1的概率也越小。这种不仅可以保留概率性,也可以保留对输入的依赖性。

GELU()激活函数的计算过程可以被描述成:对于每一个输入x都乘以一个二项式分布Φ(x),见如下式子:

GELU(x)=xΦ(x)

因为上式中的二项式分布函数是无法直接计算的,所以研究者通过另外的方法来进行替代,具体表达式可以写成式:

代码实现如下:

def gelu(x):return 0.5*x*(1+torch.tanh(torch.tensor(np.sqrt(2/np.pi)*(x+0.044715*pow(x,3)))))

GELU()与Swish()、Mish()的关系

Swish()与MIsh()都是GELU()函数的特例,只不过用了不同的二项式分布函数:

GELU()更适合NLP任务的激活函数相关推荐

  1. Java和Python,哪个更适合开发AI人工智能?

    当今的机器世界需要能够改变我们生活.工作和娱乐方式的技术.考虑到智能系统和具有行为算法.智能搜索和能够自行学习的智能系统的需求,约翰麦卡锡将人工智能引入了我们的世界,并被亲切地称为人工智能. 这些 A ...

  2. 为什么 ElasticSearch 比 MySQL 更适合复杂条件搜索

    熟悉 MySQL 的同学一定都知道,MySQL 对于复杂条件查询的支持并不好.MySQL 最多使用一个条件涉及的索引来过滤,然后剩余的条件只能在遍历行过程中进行内存过滤. 上述这种处理复杂条件查询的方 ...

  3. 为什么ElasticSearch比MySQL更适合复杂条件搜索

    熟悉 MySQL 的同学一定都知道,MySQL 对于复杂条件查询的支持并不好.MySQL 最多使用一个条件涉及的索引来过滤,然后剩余的条件只能在遍历行过程中进行内存过滤. 上述这种处理复杂条件查询的方 ...

  4. 他保送北大、读完博士选择回中学任教,“做科研太枯燥,自己更适合教书”...

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 清北人才 ...

  5. 激光雷达与相机—哪种更适合自动驾驶?

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达推荐阅读 42个pycharm使用技巧,瞬间从黑铁变王者Google ...

  6. 全新WiFi技术问世 更适合智能家庭和物联网

    据美国科技网站TheVerge报道,WiFi似乎已经将消费者家中的大多数设备都连在一起了,那为什么不通过它将智能家电也都连在一起呢? 虽然这样的想法看似理所当然,但是实际上大多数连网设备厂商一直不愿意 ...

  7. 为什么Eureka比ZooKeeper更适合做注册中心?

    来源:https://www.cnblogs.com/jieqing/p/8394001.html 刚开始看到Eureka这个单词的时候真心不会念,查了后发现他有一个好听的名字,来,大家一起念 [ j ...

  8. 看板与Scrum:哪个更适合你的团队?

    敏捷是理想型指标和原则,看板和Scrum是帮助团队坚持敏捷原则并完成工作的基本框架.本文详细介绍了在Scrum和看板之间做出选择时要考虑的关键因素,以及如果我们无法做出决定时该怎么办. Scrum和看 ...

  9. Roger Ver:BCH比BCE更适合机构投资者

    据外媒ambcrypto报道,bitcoin.com网站创建者Roger Ver在接受采访时表示,BCH比BCE更适合机构投资者,并将原因解释为:最初驱动比特币价格攀升和大规模采用的基本面已经不存在了 ...

最新文章

  1. 南大计算机学硕复试,2019南大CS考研复试笔试回忆
  2. Java 自定义线程池
  3. Spring3.1.0+Quartz1.8.6整合实现计划任务
  4. android shpe 三角形_绘制三角形背景的android
  5. filezilla 共享多个目录_Linux下搭建NFS文件共享服务器
  6. 跨境电商ERP哪个好?
  7. R语言轻巧的时间包hms
  8. Dagger2和MVParms的学习
  9. Linux下如何修改ini文件,如何修改Boot.ini文件,重新引导Linux!
  10. 读书笔记:《薛兆丰经济学讲义》
  11. 小白的破解WiFi之路1----VMware、kali安装
  12. 出行即服务MaaS精华主题汇总(更新至20220827)
  13. 如何开发微信礼品卡-服务端
  14. 《Windows 8 权威指南》——1.2 Windows 8平板模式下IE浏览器网页
  15. [BZOJ 3811]玛里苟斯(线性基)尽量理解的题解
  16. CSS动画之旋转魔方轮播
  17. 关于参加大学生数学竞赛的一点感悟与体会
  18. Sql Server 和 Access 操作数据库结构Sql语句
  19. 有关stm32单片机外部低速晶振LSE32.768k注意事项;RTC_WaitForSynchro()卡死;
  20. 游戏开发中的物理介绍

热门文章

  1. springboot+netty 服务端
  2. 人工智能领域单词其英文解释
  3. NVIDIA 系统实时监控程序jtop的安装部署
  4. unsqueeze()函数
  5. 加密技术应用以及DNS应用
  6. L1-010 比较大小(分数 10)
  7. java输出不换行_java怎样输出不换行?
  8. python常用加密算法_python 三个常用加密 base64,md5,sha1
  9. 【观察】让IT变为业务的支撑者 Ivanti的重构与创新
  10. 小米集团发布任命文件 小米AIoT战略委员会正式成立