awslabs / dgl-ke

High performance, easy-to-use, and scalable package for learning large-scale knowledge graph embeddings.
https://dglke.dgl.ai/doc/
Apache License 2.0
1.28k stars 196 forks source link

[Question] Implementing my own embedding in DGL-KE #95

Closed spapadias closed 4 years ago

spapadias commented 4 years ago

Hello DGL-KE people!

I read the arxiv 2020 paper and I found it very interesting. It is great that the project is open source.

I am wondering if I can implement my own graph embedding algorithm on top of your system, which focuses only in knowledge graph embeddings. For example, can I implement DeepWalk in DGL-KE?

If yes, do you provide abstractions for defining random-walk operations in DGL-KE? If no, is it possible to build such abstractions in your system?

Thanks in advance.

Best, Makis

zheng-da commented 4 years ago

Hello Makis,

DGL-KE was developed for KGE models, so we didn't have an interface that natively fit for models such as DeepWalk. However, I believe with some modification, DGL-KE can support DeepWalk as well. In fact, we are developing such a model in DGL and we plan to move it to DGL-KE when it's ready for large graphs. In the process, we'll explore how to generalize the current DGL-KE implementation for models such as DeepWalk. So to answer your question, yes, it's possible to build such abstractions.

Best, Da

spapadias commented 4 years ago

Hello Da,

I put here my reply to Xiang Song in the other thread I opened at the github page of DGL.

Hi Xiang,

That is great! Myself (PhD Researcher) and a group of Master students from TU Berlin, we work on extending/implementing properly a set of Graph Embedding (GE) algorithms atop DGL(-KE) system.

We believe your system has great potential and this is why we chose it.

Sure, we want to contribute so that our implementation and efforts become part of DGL. This would be awesome. One of us is working on DeepWalk, so maybe we can be

And LINE is also into our scheme of things and we plan to implement it. So, yes we want to implement this.

Can I put my team in the loop?

Best, Makis

We are willing to contribute to DGL(-KE), so let us know how we get in the loop.

Now, we started working on DeepWalk, node2vec (random walk-based) and VERSE (PPR-based) algorithms.

Best, Makis