Javascript Tensorflow JS将一维张量转换为二维张量,其结构为平方对角矩阵
让我们看一个简单的例子,我有一个张量Javascript Tensorflow JS将一维张量转换为二维张量,其结构为平方对角矩阵,javascript,tensorflow,Javascript,Tensorflow,让我们看一个简单的例子,我有一个张量[1,2]。1的位置是[0],2的位置是[1]。我想把这个一维张量转换成二维,其中 1将从[0]变为[0,0] 2将从[1]变为[1,1] 要使新张量如下所示: [ [1, 0], [0, 2], ] 有什么方法吗?假设您需要将项目列表转换为,您可以使用2个嵌套来构建二维结构: const arr=[1,2,3,4,5], listToMatrix=a=> a、 map((u,i)=> a、 地图((e,j)=> i==j?e:0) console.l
[1,2]
。1
的位置是[0]
,2
的位置是[1]
。我想把这个一维张量转换成二维,其中
将从1
变为[0]
[0,0]
将从2
变为[1]
要使新张量如下所示:[1,1]
[
[1, 0],
[0, 2],
]
有什么方法吗?假设您需要将项目列表转换为,您可以使用2个嵌套来构建二维结构:
const arr=[1,2,3,4,5],
listToMatrix=a=>
a、 map((u,i)=>
a、 地图((e,j)=>
i==j?e:0)
console.log(listToMatrix(arr))
作为控制台包装{最小高度:100%;}
像对角矩阵吗?也就是说,[1,2,3]
会变成[[1,0,0],[0,2,0],[0,0,3]
?确切地说,如果tensorflow有这个方法,这就是我想要的。但是,如果用数组来解决,就想不出更好的方法来解决它了。