Pytorch 向LSTM输入具有多个可变维度的数据

Pytorch 向LSTM输入具有多个可变维度的数据,pytorch,Pytorch,我的数据是形状批量大小*num路径*num边*emb尺寸。在这里: 批次大小:指批次大小(32) num_path:指依赖关系树中两个给定术语之间的路径数 num_edges:指特定路径中的边数 emb_dim:指嵌入维度(300) 对于每个训练样本,num_路径和num_边都是可变的。换句话说,对于每个训练样本,可能存在数量可变的路径,每个路径具有数量可变的边 (注意,data是本机Python中的一个n-d列表,因为两个维度(num_路径和num_边)是可变的。) 我希望将每个训练实例的

我的数据是形状
批量大小*num路径*num边*emb尺寸
。在这里:

  • 批次大小
    :指批次大小(32)
  • num_path
    :指依赖关系树中两个给定术语之间的路径数
  • num_edges
    :指特定路径中的边数
  • emb_dim
    :指嵌入维度(300)
对于每个训练样本,
num_路径
num_边
都是可变的。换句话说,对于每个训练样本,可能存在数量可变的路径,每个路径具有数量可变的边

(注意,
data
是本机Python中的一个n-d列表,因为两个维度(
num_路径
num_边
)是可变的。)

我希望将每个训练实例的每个路径作为输入传递给LSTM,因为路径是一系列边,我希望在通过LSTM后得到结果路径表示。在获得训练示例中每条路径的表示后,我想取所有这些表示的总和

我知道我可以通过
pack\u padded\u sequence
打包不同数量的边。但是可变数量的路径呢?我怎么解释呢?在原生Pytorch中有没有什么方法可以做到这一点,而不需要像迭代循环这样的复杂解决方案