因为一些原因必须使用python2+低版本的pytorch来跑代码,其中就遇到了低版本pytorch没有封装GELU激活函数的情况,所以在网上把该函数的源码找到了,自己构造了一个基于nn.Module的版本:

class GELU(nn.Module):#zengendef __init__(self):super(GELU, self).__init__()def forward(self, x):#return 0.5*x*(1+torch.tanh(np.sqrt(2/np.pi)*(x+0.044715*torch.pow(x,3))))return x * 0.5 * (1.0 + torch.erf(x / math.sqrt(2.0)))

其中第一个注释掉了的return是gelu原文中提出的一种近似计算版本,而下面那一个是pytorch中封装的版本,实测第一种会和nn.GELU计算的值略有差异,因此使用第二种。

用pytorch构造GELU激活函数相关推荐

  1. GLU, sparsemax, GELU激活函数

    1. GLU/GTU 门控机制激活函数 GLU: 其中, W,V,b,cW,V,b,cW,V,b,c 都是可以学习的参数. GTU: f(X) = tanh(X*W+b) * O(X*V+c) 2. ...

  2. pytorch构造可迭代的DataLoader,动态流式读取数据源,不担心内存炸裂(pytorch Data学习三)

    构造迭代读取的Dataloader,首先需要可迭代的DataSet,这一部分详细请参考:pytorch构造可迭代的Dataset--IterableDataset(pytorch Data学习二),下 ...

  3. pytorch构造可迭代的Dataset——IterableDataset(pytorch Data学习二)

    如果是可以一次性加载进内存的数据,上一篇博客:pytorch 构造读取数据的工具类 Dataset 与 DataLoader (pytorch Data学习一),已经足以应付了,但是很多时候数据集较大 ...

  4. Sigmoid,tanh,Relu,Leaky ReLu,ELU,GeLu 激活函数理解

    目录 1 神经网络为什么需要非线性激活函数? 2 Sigmoid 2.1缺陷 2.1.1 梯度消失 2.2.2 Output非zero-centered 3 Tanh 3.1 缺陷 4 ReLu 4. ...

  5. tensorflow2.0使用GELU激活函数

    首先,tensorflow2.0没有GELU激活函数,所以必须自定义GELU激活函数. 其次,自定义代码如下: 第一步:import tensorflow as tf 第二步:class GELU(l ...

  6. 深度学习中的gelu激活函数详解

    论文:gaussian error linear units (一).什么是激活函数? 激活函数的本质就是给网络模型增加非线性,也就是在wTx+bw^Tx+bwTx+b等线性变换后面加一个非线性变换, ...

  7. GELU激活函数: 高斯误差线性单元

    文章目录 引言 GELU公式 GELU实验 [Reference] 1. GAUSSIAN ERROR LINEAR UNITS (GELUS) 引言 早期网络使用二元阈值单元,sigmoid激活函数 ...

  8. GELU激活函数介绍和笔记

    GELU是一种常见的激活函数,全称为"Gaussian Error Linear Unit", 作为2020年提出的优秀激活函数,越来越多的引起了人们的注意.这里做个笔记,以便自己 ...

  9. pytorch构造IterableDataset,流式读取文件夹,文件夹下所有大数据文件,逐个文件!逐行读取!(pytorch Data学习四)

    我有个文件夹,里面有一万个文件,每个文件都是N个T的容量,那么这就需要逐个文件.逐行读取,读取方法如下: 核心:构造IterableDataset IterableDataset需要设置两个东西,一个 ...

最新文章

  1. 零基础学习大数据人工智能,学习路线篇!
  2. hashmap储存有向图_如何在Rust中构建向量的HashMap?
  3. 5、如何快速找到多个字典中的公共键(key) 6 如何让字典保持有序 7 如何实现用户的历史记录功能(最多n条)...
  4. tf2: Gradients do not exist for variables when minimizing the loss.
  5. 二分查找(递归和非递归实现)
  6. Flask redirect
  7. 跨库访问-dblink
  8. windows与Linux间远程拷贝文件(pscp命令)
  9. 软件测试简历中的项目应该如何准备?
  10. 计算机专业本科毕业论文周进展,周进展记录.docx
  11. 空间数据库管理方案及数据文件组织方式
  12. My Thirty-fifth Page - 最大二叉树 - By Nicolas
  13. sqlserver2008已成功与服务器建立连接 但在登录过程中发生错误,指定的网络名不可再用(已解决)
  14. 用C语言打印平行四边形
  15. pressOn在线制作流程图、思维导图、架构图等
  16. “凡客好声音”摇滚派对专场 正火热抢票中!
  17. 美国科技大佬们最爱看的书
  18. VisionPro和Halcon 的详细对比
  19. 时势造英雄—读《浪潮之巅》有感
  20. 中兴盒子B860AV1.1、2.1-A_M_T、2.1_1.1-T、2.1_905L系列刷机包及教程

热门文章

  1. 简单财务软件有哪些功能?
  2. SAP ERP 公有云为何是中国企业的转型首选?
  3. 8条必知的运营知识点
  4. 魔兽世界8.0服务器不稳定老掉线,win7系统玩魔兽世界频繁掉线的原因及解决方法...
  5. 鸿蒙方将腐皮雀跃而有,问鸿蒙_问鸿蒙介绍_历史典故_词典网
  6. 前端课设-二手商城-网页设计
  7. 亚马逊工具选品Jungle Scout正版插件和破解版的区别
  8. 基于树莓派的智能垃圾分类系统
  9. linux 管道来删除,Linux入门基础(五):Linux管道,重定向,文本处理
  10. OpenOCD安装与使用(JTAG调试)