首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ReLU与LeakyRelu的实现差异

ReLU与LeakyRelu的实现差异
EN

Stack Overflow用户
提问于 2018-05-29 16:55:50
回答 1查看 1.6K关注 0票数 3

我知道这些激活的定义不同,但是在读取雷鲁文件时,它以参数alpha作为输入,0作为默认值,并说

relu 重力线(x,alpha=0.0,max_value=None)校正线性单位。 参数 x:输入张量。阿尔法:负部分的斜率。默认为零。max_value:输出的最大值。返回 (漏)校正线性单元激活:x如果x> 0,α*x如果x< 0。如果定义了max_value,则将结果截断为此值。

还有一个带有LeakyReLU的类似文件,但是作为其他模块的一部分(高级激活)

他们之间有什么区别吗?我应该如何导入relu来用alpha实例化它呢?

代码语言:javascript
复制
from keras.layers.advanced_activations import LeakyReLU
..
..
model.add(Dense(512, 512, activation='linear')) 
model.add(LeakyReLU(alpha=.001)) # using Relu insted of LeakyRelu

注意,当使用LeakyReLU时,我会得到以下错误:

代码语言:javascript
复制
AttributeError: 'LeakyReLU' object has no attribute '__name__'

但是,当我使用ReLU时,它起作用了:

代码语言:javascript
复制
model.add(Activation('relu')) # This works correctly but can't set alpha

总之:什么是差异,我如何导入ReLU来传递aplha给它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-29 17:07:16

就实现而言,它们打电话具有相同的后端函数K.relu。区别在于relu是一个激活函数,而LeakyReLU是在keras.layers下定义的Layer。所以区别在于你如何使用它们。对于激活函数,您需要在层(如Activation )中包装或使用,但是LeakyReLU为您提供了一个带有alpha值的函数的快捷方式。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50589400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档