PyTorch 中 "ragged/jagged tensors" 的解决方法是什么?

What's the workaround for "ragged/jagged tensors" in PyTorch?

Tensorflow 提供参差不齐的张量 (https://www.tensorflow.org/guide/ragged_tensor)。然而,PyTorch 不提供这样的数据结构。有没有一种解决方法可以在 PyTorch 中构建类似的东西?

import numpy as np
x = np.array([[0], [0, 1]])
print(x)  # [list([0]) list([0, 1])]

import tensorflow as tf
x = tf.ragged.constant([[0], [0, 1]])
print(x)  # <tf.RaggedTensor [[0], [0, 1]]>

import torch
# x = torch.Tensor([[0], [0, 1]])  # ValueError

PyTorch 正在实现一个名为 NestedTensors 的东西,它似乎与 Tensorflow 中的 RaggedTensors 具有几乎相同的目的。您可以按照 RFC 和进度 here.