【发布时间】:2021-03-20 05:41:50
【问题描述】:
我有一个如下所示的矩阵:
[[5,2],
[4,3],
[3,4]]
使用命令
tf.tensor([...])
我想按索引为 0 的列排列矩阵,使其看起来像这样:
[[3,4],
[4,3],
[5,2]]
我将如何使用 Tensorflow.js 做到这一点?
【问题讨论】:
标签: javascript tensorflow matrix tensorflow.js
我有一个如下所示的矩阵:
[[5,2],
[4,3],
[3,4]]
使用命令
tf.tensor([...])
我想按索引为 0 的列排列矩阵,使其看起来像这样:
[[3,4],
[4,3],
[5,2]]
我将如何使用 Tensorflow.js 做到这一点?
【问题讨论】:
标签: javascript tensorflow matrix tensorflow.js
看例子,张量在第一个轴上排序。
目前,tensorflow.js 中还没有tf.sort。但是为了达到同样的效果,我们可以在第一个轴上对张量进行切片,然后对其进行排序并获取索引。使用后者,我们可以使用 tf.gather 对初始张量进行排序
a = tf.tensor2d([[3,4], [4,3],[5,2]])
firstAxis = a.gather([0], 1).reshape([-1]);
ind = tf.topk(firstAxis, a.shape[0]).indices
a.gather(ind.reverse(), 0).print()
【讨论】:
你可以用简单的 javaScript 做到这一点:
let arr = [[5,2], [4,3], [3,4]];
let result = arr.sort((a, b) => a[0] - b[0]);
console.log(result);
【讨论】: