wujcan / SGL-TensorFlow

173 stars 42 forks source link

最终结果和两个subgraph embedding的关系 #3

Closed FreddyGao closed 3 years ago

FreddyGao commented 3 years ago

您好,最近在研究您这篇论文中的代码,在最后predict和evaluate的时候用的是代码中的ua_embeddings,和ia_embeddings(个人对代码的理解),而不是两个subgraph的embedding,所以想请教一下最终结果和两个subgraph的embedding是否有联系,如果您是通过两个subgraph的embedding得出的ua_embeddings,和ia_embeddings,想请教这步的具体过程在代码中哪个方位,或者大体思路,谢谢您

wujcan commented 3 years ago

您好,最近在研究您这篇论文中的代码,在最后predict和evaluate的时候用的是代码中的ua_embeddings,和ia_embeddings(个人对代码的理解),而不是两个subgraph的embedding,所以想请教一下最终结果和两个subgraph的embedding是否有联系,如果您是通过两个subgraph的embedding得出的ua_embeddings,和ia_embeddings,想请教这步的具体过程在代码中哪个方位,或者大体思路,谢谢您

您好,两个subgraph得到的embedding是用来做自监督学习的。在SGL中,自监督学习是多任务框架中的辅助任务,它在evaluation阶段不直接参与计算,这也就是paper中说的SGL不会改变模型在inference时的复杂度。但在模型训练过程中,由于推荐任务和自监督学习任务共享0层的embedding,所以在Back Propagation阶段,自监督学习会更新0层的embedding,进而会影响node的representation.

FreddyGao commented 3 years ago

您好,最近在研究您这篇论文中的代码,在最后predict和evaluate的时候用的是代码中的ua_embeddings,和ia_embeddings(个人对代码的理解),而不是两个subgraph的embedding,所以想请教一下最终结果和两个subgraph的embedding是否有联系,如果您是通过两个subgraph的embedding得出的ua_embeddings,和ia_embeddings,想请教这步的具体过程在代码中哪个方位,或者大体思路,谢谢您

您好,两个subgraph得到的embedding是用来做自监督学习的。在SGL中,自监督学习是多任务框架中的辅助任务,它在evaluation阶段不直接参与计算,这也就是paper中说的SGL不会改变模型在inference时的复杂度。但在模型训练过程中,由于推荐任务和自监督学习任务共享0层的embedding,所以在Back Propagation阶段,自监督学习会更新0层的embedding,进而会影响node的representation.

感谢您百忙当中解答我的问题,谢谢!!