FFrankyy / FINDER

FINDER - FInding key players in complex Networks through DEep Reinforcement learning (Nature Machine Intelligence)
MIT License
182 stars 46 forks source link

I have found some problems when I run finder on other dataset. #23

Open Deathlightning opened 2 years ago

Deathlightning commented 2 years ago

The dataset is SALITY from https://github.com/iBigQ/botnet-graphs

I know that FINDER don't support graph that node numbered by string,so I renumber these nodes by integer and using edge list to save it.But FINDER gave me an exception like this.

exception:

  File "FINDER.pyx", line 721, in FINDER.FINDER.EvaluateRealData
  File "FINDER.pyx", line 732, in FINDER.FINDER.EvaluateRealData
  File "FINDER.pyx", line 753, in FINDER.FINDER.GetSolution
  File "FINDER.pyx", line 491, in FINDER.FINDER.PredictWithCurrentQNet
  File "FINDER.pyx", line 487, in FINDER.FINDER.Predict
AssertionError
KBhandari11 commented 2 years ago

I have the same issue. I tried it on different datasets, it works for some but some runs into the same problem as you mentioned.

Deathlightning commented 2 years ago

I tried 3 ways to process graph dataset.

  1. remove edges that head and tail exist in the same node
  2. use subgraph instead of original graph by Community Segmentation Algorithm
  3. the minimum spanning tree of the graph is always work in FINDER
KBhandari11 commented 2 years ago

Thank you! I will try to implement FINDER based on your suggestion. I think MST of the graph works because it removes any cycle from the dataset. One of the graphs I tried to implement was on a BA random graph with cycle graphlets attached, which ran into a similar issue.