I have certain data that I decided to represent it as a graph (I thought it would suit).
So I have the weighted graph data that includes a numeric attribute for each node. (networkx graphs).
Each graph represents a session.
Each session label is either good (1) or bad (0).
I need to predict given an unlabeled graph, whether it's good (1) or bad (0).
What did I do so far:
I've made the ML method that calculates features (using networkx excellent algorithms) over those graphs. For example I took the networkx algorithms for calculating betweenesss, degree_centrality, closeness_centrality, etc
I've received better results than the currently available results (which didn't use a graph for representing the data): F1-Score ~ 65%, ROC_AUC ~ 90%.
Maybe I shouldn't randomly choose networkx function. What if I could do something smarter using deep-learning. The model should understand how bad graph looks like, a good graph looks like, and make the classification
I'm not sure if my intuition is correct. Maybe feeding the graph as is wouldn't be enough in order for the model to learn. I feel that I need advice regarding this approach, and especially previous similar works if they exist.
Relevant previous work
- Is anyone familiar code implementations of those previous work / other previous works?
- Is someone familiar for methods that do it with a weighted graph that includes node attributes?
- Do you agree/disagree with my intuition?
- Do you suggest alternate ways with handling this problem? (DL or not DL)
Thank you :)