📜  Tensorflow.js tf.prelu()函数(1)

📅  最后修改于: 2023-12-03 15:05:33.232000             🧑  作者: Mango

TensorFlow.js tf.prelu() 函数
简介

TensorFlow.js 中的 tf.prelu() 函数实现了一种常用的激活函数:PReLU(Parametric Rectified Linear Unit)。PReLU 是一种用于神经网络的非线性激活函数,它在输入大于零时直接输出输入值,而在输入小于等于零时输出输入值乘以一个可训练的常数。

PReLU 激活函数通过引入一个小的负斜率来减轻传统的 ReLU(Rectified Linear Unit)激活函数的缺点,从而在一些实际应用中取得更好的效果。

语法
tf.prelu(x, alpha)
  • x:张量类型,输入数据,可以是任意形状的数字数组或张量。
  • alpha:张量类型,预设的斜率,与输入 x 具有相同的维度和形状。
返回值

返回一个新的张量,与输入张量 x 具有相同的形状和数据类型。

例子

以下是一个使用 tf.prelu() 函数的示例:

// 导入 TensorFlow.js
import * as tf from '@tensorflow/tfjs';

// 创建输入张量
const input = tf.tensor([-2, -1, 0, 1, 2]);

// 创建预设斜率张量
const alpha = tf.tensor([0.25]);

// 使用 tf.prelu() 应用激活函数
const output = tf.prelu(input, alpha);

// 打印输出张量的值
output.print();

输出结果为:

Tensor
  [-0.5 , -0.25,  0.  ,  1.  ,  2.  ]

在这个例子中,我们创建了一个输入张量 [-2, -1, 0, 1, 2] 和一个预设斜率张量 [0.25]。然后通过 tf.prelu() 函数将激活函数应用于输入张量,得到的输出张量为 [-0.5, -0.25, 0, 1, 2]

总结

TensorFlow.js 中的 tf.prelu() 函数实现了 PReLU 激活函数,允许我们在神经网络中引入一个小的负斜率来改善传统的 ReLU 函数的不足。通过使用 tf.prelu() 函数,我们可以方便地对输入数据进行非线性变换,以提高神经网络的性能和精度。