Remove Supervision Edge Outward Assumption from V2 GiGL #316
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Scope of work done
Removes the assumption that the supervision edge type is always directed outward from the V2 GiGL codebase. We are removing this assumption since it can introduce confusion and greater difficulty in maintainability to be internally flipped edge types due to the assumption that our supervision edge is always outward direction. We are reducing opinionation here by removing this requirement.
Specifically, it does this by:
partition_labels, we don't automatically assumesrcas the root node type and instead base the root node type on the edge directionFollowing this change, we make no underlying assumption about the supervision edge type in the graph and assume that it also complies with the
sampling_edge_directionprovided. This means for a supervision edge typeA -> Bwhich is directed outward, we would haveAby the anchor node type andBbe the supervision node type. If the graph was inward, we'd haveBbe the anchor node type andAbe the supervision node type.This provided supervision edge type should adhere to what labels were specified in data preprocessor. A follow-up item from this PR is to add a check that our data preprocessor config labels adhere to the task metadata.
Where is the documentation for this feature?: N/A
Did you add automated tests or write a test plan?
Updated Changelog.md? NO
Ready for code review?: NO