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中有没有什么方法可以做到这一点,而不需要像迭代循环这样的复杂解决方案