-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
featurenew improvement or additionnew improvement or additionhigh priorityIssues which need to be completed as soon as possibleIssues which need to be completed as soon as possibleoverhaulbig changes to core systemsbig changes to core systems
Description
Description
The current edge system does not track naming consistently across multiple edges originating from same handle. Furthermore, complex modules require handles with independent shape_compute functions. This issue covers a revision of edge/handle architecture which makes shape propagation more flexible and generalized.
Tasks
- Implement consistent edge naming:
- All edges that originate from the same handle should share a linked name or naming group
- Edge metadata should indicate: origin handle, target handle, origin node, target node.
- Create a
Handleclass:- Accepts and optional
handle_shape_computefunction. - Falls back to class default
shape_computewhen none is provided - Alternative implementation could include a
HandleSchemaof the class which describes the construction of Handles by theCreateLayerComponentfactory.
- Accepts and optional
- Extend shape propagation:
- Multi-output modules should have multiple handles with independent
handle_shape_computefunctions. - shape computation and verification systems should be adapted to reflect this change.
- Multi-output modules should have multiple handles with independent
Expected Outcomes
- Edges visually and internally show consistent names for handles.
- for a group of edges originating from the same handle, changing name of one edge, changes the names of other edges instantly.
- if a multi-output module cannot be found in PyTorch documentation, create a dummy module which simulates this behavior by combining functionalities of 2 other layers (e. g. by passing an image tensor, the node outputs its flattened dimensions as well as its convolutional output.) Demonstrate that all systems can handle this new module
- Multi-output layers compute shapes correctly for each output handle independently.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
featurenew improvement or additionnew improvement or additionhigh priorityIssues which need to be completed as soon as possibleIssues which need to be completed as soon as possibleoverhaulbig changes to core systemsbig changes to core systems