TensorFlow.js 教程

张量

TensorFlow.js 是一个 JavaScript 库 定义和操作 张量

张量与多维数组非常相似。

张量包含(一个或多个)维度形状的数值。

张量具有以下主要属性:

房产描述
dtype数据类型
rank维数
shape每个维度的大小


创建张量

可以从任何 N 维数组创建张量:

实例 1

const tensorA = tf.tensor([[1, 2], [3, 4]]);

亲自试一试 »

实例 2

const tensorA = tf.tensor([[1, 2], [3, 4], [5, 6]]);

亲自试一试 »


张量形状

张量也可以由 arrayshape 参数创建:

实例1

const shape = [2, 2];
const tensorA = tf.tensor([1, 2, 3, 4], shape);

亲自试一试 »

实例2

const tensorA = tf.tensor([1, 2, 3, 4], [2, 2]);

亲自试一试 »

实例3

const tensorA = tf.tensor([[1, 2], [3, 4]], [2, 2]);

亲自试一试 »


张量数据类型

张量可以有以下数据类型:

  • bool
  • int32
  • float32 (default)
  • complex64
  • string

创建张量时,可以指定数据类型为第三个参数:

实例

const tensorA = tf.tensor([1, 2, 3, 4], [2, 2], "int32");
/*
Results:
tensorA.rank = 2
tensorA.shape = 2,2
tensorA.dtype = int32
*/

亲自试一试 »


检索张量值

您可以使用 tensor.data() 获取张量背后的数据:

实例

const tensorA = tf.tensor([[1, 2], [3, 4]]);
tensorA.data().then(data => display(data));

// 返回: 1,2,3,4
function display(data) {
  document.getElementById("demo").innerHTML = data;
}

亲自试一试 »

您可以使用 tensor.array() 获取张量后面的数组:

实例

const tensorA = tf.tensor([[1, 2], [3, 4]]);
tensorA.array().then(array => display(array[0]));

// 返回: 1,2
function display(data) {
  document.getElementById("demo").innerHTML = data;
}

亲自试一试 »