类似于pytorch中的torch.sparse这种
jittor现在的版本还没有 sparse 接口,是未来的工作之一。您可以例举您的需求,我们可以帮助您确认是否能够通过 jittor 其他接口实现。
是这样的,我想使用邻接矩阵定义一张可能非常大,但连接并不稠密的图,在这张图中找到每个节点的邻居的索引,根据索引引用另一个张量中的数据进行下一步计算,请问在jittor中有比较有效的方法实现吗?
听起来似乎可以使用 分组聚合 实现。
具体来说,使用边进行索引,假如边由两个数组构成,A, B
, 形状均为 [E]
,要做的是对于每一条有向边 (a,b)
,把 a
的特征聚集到 b
上。可以先通过 A
得到一个特征数组,形状为 [E, C]
。然后以 B
为索引,对特征数组分组聚合,实现 A
→ B
的特征聚合。
我不是很理解。请问
可以先通过 A 得到一个特征数组,形状为 [E, C]
中特征数组的含义是什么?另外,C是什么?节点数吗?这里的意思是,类似独热编码那样,将A从向量变成0-1矩阵吗?
假设图上每个结点有一个 C
维特征,那么由 A 索引到的数组的形状就是 [E, C]
,这个特征数组的代表了所有有向边的开始结点的特征。
原来如此,我明白了,谢谢。