# eluLayer


指数线性单元激活层

函数库: TyDeepLearning

# 语法

layer = eluLayer(alpha=1.0)

# 说明

layer = eluLayer(alpha=1.0) 创建一个指数线性单元激活层。示例

对输入的每个元素计算 eluLayer,该激活函数定义如下:

# 示例

创建指数线性单元激活层
创建一个指数线性单元激活函数层。 创建一个数组,使用该层处理数组并输出结果。
using TyDeepLearning
set_backend(:mindspore)
layer = eluLayer()
array = convert(Array{Float32}, [-1, -2, 0, 2, 1])
print(TyDeepLearning.predict(layer, array))
Float32[-0.6321205, -0.86466473, 0.0, 2.0, 1.0]

随机生成一个维度为 (1, 1, 28, 28) 数组。

input = rand(Float32, (1, 1, 28, 28))

创建指数线性单元激活函数层。使用该神经网络处理数组并输出数组维度。

layers = SequentialCell([
    convolution2dLayer(1, 16, 3),
    batchNormalization2dLayer(16),
    eluLayer(),
    maxPooling2dLayer(2; Stride = 2),
    convolution2dLayer(16, 32, 3),
    batchNormalization2dLayer(32),
    eluLayer(),
    flattenLayer(),
    fullyConnectedLayer(32 * 14 * 14, 10),
    softmaxLayer()
])
print(size(TyDeepLearning.predict(layers, input)))
(1, 10)

# 输入参数

alpha-非线性参数
标量

非线性参数 α,指定为数字标量。ELU 层输出的最小值等于 -α,负输入接近 0 时的斜率为 α。默认值:1.0。

数据类型: Float16 | Float32 | Float64

# 输出参数

layer-指数线性单元激活层
网络对象

输出为一个指数线性单元激活层

# 另请参阅

SequentialCell | convolution2dLayer | batchNormalization2dLayer | maxPooling2dLayer | flattenLayer | fullyConnectedLayer | softmaxLayer | predict