Tensorflow.js tf.losses.sigmoidCrossEntropy()函数
Tensorflow.js是谷歌开发的一个开源库,用于在浏览器或节点环境中运行机器学习模型和深度学习神经网络。它还可以帮助开发人员用 JavaScript 语言开发 ML 模型,并且可以直接在浏览器或 Node.js 中使用 ML。
Tensorflow.js tf.losses.sigmoidCrossEntropy()函数计算两个给定张量之间的 sigmoid 交叉熵损失。
句法:
tf.losses.sigmoidCrossEntropy(
multiClassLabels, logits, weights,
labelSmoothing, reduction
);
参数:
- multiClassLabels:它是不同形状的地面实况输出张量,如 num 类、batch 大小。它在维度上与“预测”相似。
- logits:这是被预测的输出。
- 权重:这些是那些秩为 0 或 1 的张量,它们必须可广泛转换为 lebels。
- labelSmoothing:如果该值大于 0,则表示将对标签进行平滑处理。
- 减少:这是适用于损失的减少类型。它必须是缩减类型。
注意: weights 、 labelSmoothing和reduction是可选参数。
返回值:返回 tf.Tensor。
示例 1:
Javascript
// Importing the tensorflow.Js library
import * as tf from "@tensorflow/tfjs"
// Initialising tensor1 as geek1.
let geek1 = tf.tensor3d([[[1], [2]], [[3], [4]]]);
// Initialising tensor2 as geek2.
let geek2 = tf.tensor3d([7, 11, 13, 4], [2, 2, 1])
// Computing sigmoid Cross Entropy loss
// between geek1 and geek2
// using .sigmoidCrossEntropy) function.
geek = tf.losses.sigmoidCrossEntropy(geek1, geek2)
geek.print();
Javascript
// Importing the tensorflow.Js library
import * as tf from "@tensorflow/tfjs"
// Computing sigmoid Cross Entropy loss
// between two 4D tensors and
// printing the result.
tf.losses.sigmoidCrossEntropy(
tf.tensor4d([[[[9], [8]], [[7], [5]]]]),
tf.tensor4d([[[[1], [2]], [[3], [4]]]])
).print();
输出:
Tensor
-12.245229721069336
示例 2:
Javascript
// Importing the tensorflow.Js library
import * as tf from "@tensorflow/tfjs"
// Computing sigmoid Cross Entropy loss
// between two 4D tensors and
// printing the result.
tf.losses.sigmoidCrossEntropy(
tf.tensor4d([[[[9], [8]], [[7], [5]]]]),
tf.tensor4d([[[[1], [2]], [[3], [4]]]])
).print();
输出:
Tensor
-13.873268127441406
参考: https ://js.tensorflow.org/api/latest/#losses.sigmoidCrossEntropy