jasperzhong / read-papers-and-code

My paper/code reading notes in Chinese
43 stars 3 forks source link

WWW '18 | Continuous-time dynamic network embeddings #279

Closed jasperzhong closed 2 years ago

jasperzhong commented 2 years ago

https://dl.acm.org/doi/pdf/10.1145/3184558.3191526

中的是workshop

jasperzhong commented 2 years ago

本文讨论了如何在CTDG上学习node embeddings,其实就是DeepWalk的CTDG版本.

注意CTDG,或者叫temporal graphs,保存的是一个一个的events(用边表示). 比如某人向某人发送了邮件. 所以是完全允许两个node之间存在multiedges的,因为得按照event的角度来考虑.

就是采样的path加了一个时序条件,其他都一样,还是用skip-gram来训练. 采样时许path又有两个地方可以考虑

这两个都可以按照平均概率来选择,或者按照时间关系来选择. 比如对于起始边,可以考虑离现在时间比较近的边开始,因为时间较近的事件对现在影响更大. 在比如对于如何选择边,可以考虑选择时间增量最小的那个边,这样可以避免把不同时间段的关系group在一起.

最后采样的path需要有一个最短长度和一个最长长度,对于超过最短长度的path,可以进一步枚举得到更多samples.

实验表明比不考虑时间的方法相比,CTDNE的效果要提高11.9%左右. image

jasperzhong commented 2 years ago

这个方法对于unseen nodes或者new timepoint是需要进行重新采样和训练的. 所以这个方法适用于transductive tasks. 确实. 就没法说,来了一个新的node,如何直接给它一个embedding.