【发布时间】:2018-09-26 21:37:28
【问题描述】:
在指定索引后,如何从 Tensorflow.js 中的张量中获取值?
【问题讨论】:
标签: indexing tensor tensorflow.js
在指定索引后,如何从 Tensorflow.js 中的张量中获取值?
【问题讨论】:
标签: indexing tensor tensorflow.js
const newTensor = tf.tensor2d([[2,4], [5,6]])
newTensor.get([0]) ##returns 2
newTensor.get([3]) ##returns 6
谢天谢地,所有这些都返回一个数字而不是张量。
【讨论】:
get函数在最新版本中不再存在。
您可以为此使用数据同步。
const newTensor = tf.tensor2d([[2,4],[5,6]]);
const tensorData = newTensor.dataSync();
console.log("data[0] is " + tensorData[0]);
console.log("data[3] is " + tensorData[3]);
【讨论】:
【讨论】:
tf.Tensor.dataSync() 不保留原始形状。如果您想保留形状,可以使用tf.Tensor.arraySync()。
【讨论】:
或者你也可以使用 slice 来获取值:
let value = tensor.slice([i,j], [1, 1]);
或
let value = tensor.slice([i,j], [1, 1]).arraySync()[0][0];
【讨论】: