Tensorflow.js tf.losses.absoluteDifference()函数
Tensorflow.js是谷歌开发的一个开源库,用于在浏览器或节点环境中运行机器学习模型和深度学习神经网络。它还可以帮助开发人员用 JavaScript 语言开发 ML 模型,并且可以直接在浏览器或 Node.js 中使用 ML。
Tensorflow.js tf.losses.absoluteDifference()函数计算两个给定张量之间的绝对差损失。
句法:
tf.losses.absoluteDifference(labels,
predictions, weights, reduction);
参数:
- 标签:它指定真值输出张量。基于此张量预测绝对差。
- 预测:它指定与标签具有相同维度的预测输出张量。
- 权重:它指定一个等级张量,或者等于标签的等级,以便它可以广播,或者为 0。它是一个可选参数。
- 减少:它指定减少损失的类型。它是可选的。
返回值:它返回一个由absoluteDifference()函数计算的 tf.Tensor。
示例 1:在此示例中,我们将使用两个 2d 张量作为标签和预测。然后我们会找到这两者的绝对差损失。
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Defining label tensor
const y_true = tf.tensor2d([
[0., 1., 0.],
[0., 0., 0.]
]);
// Defining prediction tensor
const y_pred = tf.tensor2d([
[1., 1., 0.],
[1., 0., 0 ]
]);
// Calculating absolute difference
const absolute_difference =
tf.losses.absoluteDifference(y_true,y_pred)
// Printing the output
absolute_difference.print()
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Defining label tensor
const y_true = tf.tensor2d(
[0., 1., 0., 0., 0., 0., 1.,
0., 1., 1., 0., 1.], [4, 3]
);
// Defining predicted tensor
const y_pred = tf.tensor2d(
[1., 1., 0., 1., 0., 0., 1.,
1., 1., 0., 0., 1.], [4, 3]
);
// Calculating absolute difference
const absolute_difference = tf.losses.absoluteDifference(
y_true, y_pred, [0.7, 0.3, 0.2])
absolute_difference.print()
输出:
示例2:在绝对函数中取标签的rank作为权重,然后计算绝对差。
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Defining label tensor
const y_true = tf.tensor2d(
[0., 1., 0., 0., 0., 0., 1.,
0., 1., 1., 0., 1.], [4, 3]
);
// Defining predicted tensor
const y_pred = tf.tensor2d(
[1., 1., 0., 1., 0., 0., 1.,
1., 1., 0., 0., 1.], [4, 3]
);
// Calculating absolute difference
const absolute_difference = tf.losses.absoluteDifference(
y_true, y_pred, [0.7, 0.3, 0.2])
absolute_difference.print()
输出:
参考: https://js.tensorflow.org/api/1.0.0/#losses.absoluteDifference