线性函数
tflearn.activations.linear (x)
f(x) = x
参数
- x : 类型为
float、double、int32、int64、uint8、int16或int8的Tensor。
返回值
传入的张量(无更改)。
双曲正切函数
tflearn.activations.tanh (x)
逐元素计算 x 的双曲正切。
参数
- x: 类型为
float、double、int32、complex64、int64或qint32的张量。
返回值
如果 x.dtype != qint32,则返回类型与 x 相同的张量,否则返回类型为 quint8。
Sigmoid 函数
tflearn.activations.sigmoid (x)
逐元素计算 x 的 sigmoid。具体来说,y = 1 / (1 + exp(-x))。
参数
- x: 类型为
float、double、int32、complex64、int64或qint32的张量。
返回值
如果 x.dtype != qint32,则返回类型与 x 相同的张量,否则返回类型为 quint8。
Softmax 函数
tflearn.activations.softmax (x)
计算 softmax 激活。
对于每个批次 i 和类别 j,我们有
softmax[i, j] = exp(logits[i, j]) / sum(exp(logits[i]))
参数
- x:
Tensor。必须是以下类型之一:float32、float64。形状为[batch_size, num_classes]的二维张量。
返回值
Tensor。与 x 类型相同。形状与 x 相同。
Softplus 函数
tflearn.activations.softplus (x)
计算 softplus:log(exp(features) + 1)。
参数
- x:
Tensor。必须是以下类型之一:float32、float64、int32、int64、uint8、int16、int8、uint16。
返回值
Tensor。与 x 类型相同。
Softsign 函数
tflearn.activations.softsign (x)
计算 softsign:features / (abs(features) + 1)。
参数
- x:
Tensor。必须是以下类型之一:float32、float64、int32、int64、uint8、int16、int8、uint16。
返回值
Tensor。与 x 类型相同。
ReLU 函数
tflearn.activations.relu (x)
计算线性整流函数:max(features, 0)。
参数
- x:
Tensor。必须是以下类型之一:float32、float64、int32、int64、uint8、int16、int8、uint16。
返回值
Tensor。与 x 类型相同。
ReLU6 函数
tflearn.activations.relu6 (x)
计算线性整流函数 6:min(max(features, 0), 6)。
参数
- x: 类型为
float、double、int32、int64、uint8、int16或int8的Tensor。
返回值
与 x 类型相同的 Tensor。
LeakyReLU 函数
tflearn.activations.leaky_relu (x, alpha=0.1, name='LeakyReLU')
ReLU 的改进版本,为负输入引入非零梯度。
参数
- x: 类型为
float、double、int32、int64、uint8、int16或int8的Tensor。 - alpha:
float。斜率。 - name: 此激活操作的名称(可选)。
返回值
与 x 类型相同的 Tensor。
参考文献
整流非线性改进神经网络声学模型,Maas 等人。(2013)。
链接
http://web.stanford.edu/~awni/papers/relu_hybrid_icml2013_final.pdf
PReLU 函数
tflearn.activations.prelu (x, channel_shared=False, weights_init='zeros', trainable=True, restore=True, reuse=False, scope=None, name='PReLU')
参数化线性整流单元。
参数
- x: 类型为
float、double、int32、int64、uint8、int16或int8的Tensor。 - channel_shared:
bool。所有通道共享单个权重 - weights_init:
str。权重初始化。默认值:zeros。 - trainable:
bool。如果为 True,则权重将是可训练的。 - restore:
bool。是否恢复 alpha。 - reuse:
bool。如果为 True 并且提供了“scope”,则将重用(共享)此层变量。 - name: 此激活操作的名称(可选)。
属性
- scope:
str。此操作的范围。 - alphas:
Variable。PReLU 的 alpha。
返回值
与 x 类型相同的 Tensor。
参考文献
深入研究整流器:在 ImageNet 分类上超越人类水平的性能。He 等人,2014 年。
链接
http://arxiv.org/pdf/1502.01852v1.pdf
ELU 函数
tflearn.activations.elu (x)
指数线性单元。
参数
- x : 类型为
float、double、int32、int64、uint8、int16或int8的Tensor
返回值
tf.Tensor 的 tuple。此层推理,即训练和测试时的输出张量。
参考文献
通过指数线性单元实现快速准确的深度网络学习,Djork-Arné Clevert、Thomas Unterthiner、Sepp Hochreiter。2015 年。
链接
http://arxiv.org/abs/1511.07289
CReLU 函数
tflearn.activations.crelu (x)
计算级联 ReLU。
将仅选择激活的正部分的 ReLU 与仅选择激活的负部分的 ReLU 连接起来。请注意,因此,这种非线性会使激活的深度加倍。
参数
- x : 类型为
float、double、int32、int64、uint8、int16或int8的Tensor。
返回值
与 x 类型相同的 Tensor。
链接
https://arxiv.org/abs/1603.05201
SELU 函数
tflearn.activations.selu (x)
缩放指数线性单元。
参数 x : 类型为 float、double、int32、int64、uint8、int16 或 int8 的 Tensor
参考文献
自归一化神经网络,Klambauer 等人,2017 年。
链接
https://arxiv.org/abs/1706.02515