代码之家  ›  专栏  ›  技术社区  ›  Learning is a mess

tensorflow.js`tensor2d`保留形状的同时转换为数值

  •  1
  • Learning is a mess  · 技术社区  · 7 年前

    使用 tensorflowjs 在Angular7项目中,我在访问 tensor2d 对象。

    的确:

    let tensor2d = tf.tensor2d( [[1,2],[3,4]])
    let tensor2d_array = tensor2d.dataSync()
    

    将给予 Array 形状物体 (4,) 而不是 (2,2,) 如我所愿。

    如何保存形状并获得张量的数组。(手动重塑并非所有情况下都可行,因为我无法访问此项目中的JS矩阵库…)。

    1 回复  |  直到 7 年前
        1
  •  1
  •   edkeveked    7 年前

    dataSync 和 data 返回展平 typedArray . 这意味着 tensor2d_array 形状为[4]。

    与其得到与张量形状相同的数据,也许只获取想要检索的索引值是可行的。尽管如此,如果出于某种原因,您希望在获取索引值之前先获取数据数组 [i, j] ,这个 answer 显示如何检索元素 [我,J ] 使用任何一种方法获得的数据 data 或 dataSync

    更新

    自从 version 15 ,可以使用 tensor.array() 或 tensor.arraySync()

    推荐文章