【问题标题】:Append elements to Ragged tensors?将元素附加到 Ragged 张量?
【发布时间】:2026-01-13 20:15:02
【问题描述】:

我可以像嵌套列表一样附加元素或以某种方式扩展不规则张量吗?

In [158]: l=[[1,2],[3],[4,5,6]]                                                                                                                                              

In [159]: l                                                                                                                                                                  
Out[159]: [[1, 2], [3], [4, 5, 6]]

In [160]: l[1]                                                                                                                                                               
Out[160]: [3]

In [161]: l[1].append(9)                                                                                                                                                     

In [162]: l                                                                                                                                                                  
Out[162]: [[1, 2], [3, 9], [4, 5, 6]]

或者就此而言,任何张量都可以动态调整大小(而不是重塑)

【问题讨论】:

    标签: python tensorflow append tensor ragged


    【解决方案1】:

    RaggedTensor 不是动态的。但是,您可以将 tf.concat 与另一个包含您的更新的 RaggedTensor 一起使用以创建新的 RaggedTensor:

    >>> rt = tf.ragged.constant([[1,2],[3],[4,5,6]])
    >>> update = tf.ragged.constant([[],[9],[]])
    >>> tf.concat([rt,update],axis=1)
    <tf.RaggedTensor [[1, 2], [3, 9], [4, 5, 6]]>
    

    【讨论】: