问题描述
实施 this paper (ROCKET),我最终得到了 this code,它有效。
我对它的主要问题是总结如何并行运行多个 pytorch 层,当它们具有相同的图形深度时?
在论文中,对同一输入使用具有不同(随机化)参数的 10000 个卷积来创建 10000 个对应的特征图,在这些特征图上使用简单的特征提取器。
实现这个简化为
class MyModel(pl.LightningModule):
def __init__(self):
...
num_kernels = 10000
for _ in range(num_kernels):
self.convs[_] = nn.Conv1d(...)
def forward(...):
for i,layer in enumerate(self.convs):
res = layer(data)
这只是运行一个 Pythonic 10000-for 循环,每次迭代运行其对应的卷积。
如何利用 Pytorch 高效地运行这 10000 个卷积,而无需等待每个卷积结束后再调度下一个?
这也适用于任何非全序列 Pytorch 模型。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)