You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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:
Transform Edges into Nodes: If you need the "path" to hold its own hidden state and evolve through the network, you could model the links (paths) as separate nodes in the graph, creating a bipartite or tripartite graph structure. This way, both your original nodes and the "path" nodes can store and update their own states.
Use Edge Features: If you don't need to transform the edges into nodes but still want to use edge features, you can incorporate those edge features during the message-passing process in the GNN. You can include edge features like bandwidth, traffic, and latency as part of the computation when messages are passed between nodes.
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:
input:
name: path
state_dimension: 32
initial_state:
input:
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.
The text was updated successfully, but these errors were encountered: