bdy9527 / SDCN

Structural Deep Clustering Network
Apache License 2.0
259 stars 72 forks source link

about graph #14

Closed cxzyoung closed 3 years ago

cxzyoung commented 3 years ago

目前有以下问题,期待您的回答 (1)按我的理解,acm、cite等也是一种graph数据,为什么本身是一种graph,也会出现acm_graph、cite_graph数据呢? (2)在graph中,每行的两个数据,例如 31,2016 是代表第31和2016个样本之间是有edge的关系吗?

bdy9527 commented 3 years ago

(1) acm_graph就代表acm这个数据的邻接矩阵,只不过有的数据集是天然就有的,有的数据集是需要用KNN算的。 (2) 对的,我们是按边来做存储的,这样储存代价比较小

cxzyoung commented 3 years ago

谢谢老师不厌其烦的回答,我看论文时构造KNNgraph取topk个值,但是我发现代码中在实际构造graph时,只有heat方法取了前topk个值,其他方法都是topk+1个值,我的理解是否有问题?

BigPig-LittleTail commented 3 years ago

个人理解:对于节点n,topk+1是取topK个邻居,+1是自己,因为构造graph计算相似度矩阵时,节点n与自己的相似度是n行中最大值。换句话说,邻接矩阵A^~ = A + I,A是topK个邻域矩阵,I是单位矩阵。取topk+1,相当于加上了自循环边的邻接矩阵。

bdy9527 commented 3 years ago

个人理解:对于节点n,topk+1是取topK个邻居,+1是自己,因为构造graph计算相似度矩阵时,节点n与自己的相似度是n行中最大值。换句话说,邻接矩阵A^~ = A + I,A是topK个邻域矩阵,I是单位矩阵。取topk+1,相当于加上了自循环边的邻接矩阵。

对,是这个意思

cxzyoung commented 3 years ago

谢谢解答