Tensorflow.js tf.sparseToDense()函数
Tensorflow.js是谷歌开发的一个开源库,用于在浏览器或节点环境中运行机器学习模型和深度学习神经网络。
tf.sparseToDense()函数用于将指定的稀疏表示转换为稠密张量。如果给定的索引重复,则最终值将对该索引的所有值求和。
句法:
tf.sparseToDense(sparseIndices, sparseValues,
outputShape, defaultValue)
参数:此函数接受四个参数,如下所示:
- sparseIndices:它是数据类型 int32 的 0-D、1-D 或 2-D 张量。这里 sparseValues[i] 被放置在 sparseIndices[i] 中,其中 i 是索引值。
- sparseValues:它是一个 0-D 或 1-D 张量值,对应于 sparseIndices 的每一行。
- outputShape:它是转换后的密集输出张量的形状。
- 默认值:它是 为未在 sparseIndices 中指定的索引设置的值。它的默认值为零。它是一个可选参数。
示例 1:
Javascript
// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
// Initializing indices and values
const indices = tf.tensor1d([4, 3, 2, 1, 0], 'int32');
const values = tf.tensor1d([1111, 111, 11, 1, 0.1], 'float32');
// Specifying shape for the output dense
const shape = [7];
// Getting the Dense representation for the above
// sparse representation
tf.sparseToDense(indices, values, shape).print();
Javascript
// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
// Initializing indices and values
const indices = tf.tensor1d([1, 2, 3], 'int32');
const values = tf.tensor1d([10, 20, 30], 'float32');
// Getting the Dense representation for the above
// sparse representation along with shape of [6]
// and default value of 55
tf.sparseToDense(indices, values, [6], 55).print();
输出:
Tensor
[0.1, 1, 11, 111, 1111, 0, 0]
示例 2:
Javascript
// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
// Initializing indices and values
const indices = tf.tensor1d([1, 2, 3], 'int32');
const values = tf.tensor1d([10, 20, 30], 'float32');
// Getting the Dense representation for the above
// sparse representation along with shape of [6]
// and default value of 55
tf.sparseToDense(indices, values, [6], 55).print();
输出:
Tensor
[55, 10, 20, 30, 55, 55]
参考: https://js.tensorflow.org/api/latest/#sparseToDense