Thanks for sharing this great library. I want to know more about how (or whether I can) customize the Graph samplers.
In my application, I need to sample from a giant tree-structured graph. Specifically, given a query node in this tree, I want to sample nodes from a pool of nodes that are n-hops away from the query node but are not the descendants of this query node. For example, if n=2, then I want to sample from this query node’s parent, siblings, and grand-parents, but not its children or grand-children. I check the above NeighborSampler which requires the neighborhood_type arg to be one of “in”, “out”, or “both”. This does not exactly match my application scenario, because in a graph where parent node points to children node, the relation from query node to its parent node is “in” and the relation from query node’s parent to its own children nodes are “out”.
Currently, I am doing network transformation on networkx graphs and then converting them into DGLGraphs. I assume the NeighborSampler’s underlying implementation will be much more efficient and thus wonder whether/how I can customize it to accommodate my application scenario.
Thanks for your time and help.