Open itsUtkarsh2306 opened 2 months ago
Dear @itsUtkarsh2306,
The main issue seems to stem from how you're trying to initialize the state for the "path" entity. In your model_descriptions.yaml
, you're assigning the state of the "path" entity using features like traffic
, bandwidth
, and latency
. However, these features are properties of the edges (or links) between nodes, not the nodes themselves.
In IGNNITION (and most GNNs), the concept of an initial state is typically assigned to nodes rather than edges. This is because nodes are the entities that hold a hidden state, which gets updated during the message-passing process, while edges act as the relationships between nodes and usually don't maintain a hidden state on their own.
Possible Solutions:
Thanks for your response. I now understand that traffic, bandwidth, and latency are edge features. Could you please provide a sample that demonstrates how to incorporate these edge features into the message-passing process in a GNN? I'm still a bit unclear on that part. Additionally, it would be really helpful if you could provide a model_description.yaml file as an example for building a model focused on edge delay prediction.
I was trying to build a model where I was taking below model_descriptions.yaml `# Definition of the entities entities:
name: node state_dimension: 16 initial_state:
name: path state_dimension: 32 initial_state:
As my data looks like:
[{"directed": true, "multigraph": false, "graph": {}, "nodes": [{"entity": "node", "id": 0}, {"entity": "node", "id": 1}, {"entity": "node", "id": 2}, {"entity": "node", "id": 3}, {"entity": "node", "id": 4}, {"entity": "node", "id": 5}, {"entity": "node", "id": 6}, {"entity": "node", "id": 7}], "links": [{"bandwidth": 20000, "traffic": 7.833, "latency": 758.705, "delay": 758.705, "entity": "path", "source": 4, "target": 7}, {"bandwidth": 30000, "traffic": 7.822, "latency": 698.062, "delay": 698.062, "entity": "path", "source": 5, "target": 3}, {"bandwidth": 30000, "traffic": 4.592, "latency": 698.102, "delay": 698.102, "entity": "path", "source": 5, "target": 6}, {"bandwidth": 45000, "traffic": 1.306, "latency": 895.771, "delay": 895.771, "entity": "path", "source": 6, "target": 0}, {"bandwidth": 50000, "traffic": 5.937, "latency": 309.396, "delay": 309.396, "entity": "path", "source": 7, "target": 4}]}]` Can someone please tell any mistake which I might be doing.