Skip to content

LightGCN for homogenous graphs#338

Merged
swong3-sc merged 20 commits intomainfrom
swong3/implement_lightgcn
Oct 15, 2025
Merged

LightGCN for homogenous graphs#338
swong3-sc merged 20 commits intomainfrom
swong3/implement_lightgcn

Conversation

@swong3-sc
Copy link
Copy Markdown
Collaborator

@swong3-sc swong3-sc commented Sep 25, 2025

Scope of work done

  • LightGCN implementation using TorchRec for homogenous graphs
  • WIP: Distributed embedding tables

Where is the documentation for this feature?: N/A

Did you add automated tests or write a test plan?

Yes, added unit tests

Updated Changelog.md? NO

Ready for code review?: NO

Copy link
Copy Markdown
Collaborator

@kmontemayor2-sc kmontemayor2-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Sam, thanks for the work! Left some comments.

Additionally, shall we add some basic tests for the model? IIRC you did some validation with hard-coded embeddings, maybe we should codify them so this doesn't break in the future :)

Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Copy link
Copy Markdown
Collaborator Author

@swong3-sc swong3-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added tests for LightGCN (homogenous case)

Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py
Copy link
Copy Markdown
Collaborator

@kmontemayor2-sc kmontemayor2-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Sam! I think we're almost done here :)

Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py Outdated
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py
Comment thread python/tests/unit/module/models_test.py Outdated
Copy link
Copy Markdown
Collaborator

@kmontemayor2-sc kmontemayor2-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally LGTM provided we add a test with provided anchor nodes and update the comments.

Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/tests/unit/module/models_test.py
Comment thread python/tests/unit/module/models_test.py
Copy link
Copy Markdown
Collaborator Author

@swong3-sc swong3-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added anchor test node (not for correctness, but for functionality, as we already test correctness)

Added correctness test against my math, in addition to PyG result.

Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/tests/unit/module/models_test.py
Comment thread python/tests/unit/module/models_test.py
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/module/models.py Outdated
Comment thread python/gigl/types/graph.py
Comment thread python/tests/unit/module/models_test.py Outdated
Comment thread python/tests/unit/module/models_test.py
Copy link
Copy Markdown
Collaborator Author

@swong3-sc swong3-sc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will merge.

Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py
Comment thread python/gigl/module/models.py
Comment thread python/tests/unit/module/models_test.py
@swong3-sc swong3-sc added this pull request to the merge queue Oct 15, 2025
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 15, 2025
@swong3-sc swong3-sc added this pull request to the merge queue Oct 15, 2025
@swong3-sc
Copy link
Copy Markdown
Collaborator Author

/help

@github-actions
Copy link
Copy Markdown
Contributor

GiGL Automation

@ 22:33:59UTC :

🤖 Available PR Commands

You can trigger the following workflows by commenting on this PR:

  • /help - Checkout code
  • /unit_test - Run Unit Tests
  • /integration_test - Run Integration Tests
  • /e2e_test - Run E2E Tests
  • /notebook_tests - Run Example Notebooks Tests
  • /lint_test - Run Linting Tests

💡 Usage: Simply comment on this PR with any of the commands above (e.g., /unit_test)

⏱️ Note: Commands may take some time to complete. Progress updates will be posted as comments.

@swong3-sc
Copy link
Copy Markdown
Collaborator Author

/unit_test

@swong3-sc
Copy link
Copy Markdown
Collaborator Author

/integration_tests

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Oct 15, 2025

GiGL Automation

@ 22:34:27UTC : 🔄 Unit Test started.

@ 23:18:12UTC : ✅ Workflow completed successfully.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Oct 15, 2025

GiGL Automation

@ 22:34:34UTC : 🔄 Integration Test started.

@ 23:30:31UTC : ✅ Workflow completed successfully.

@swong3-sc
Copy link
Copy Markdown
Collaborator Author

/e2e_test

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Oct 15, 2025

GiGL Automation

@ 22:34:43UTC : 🔄 E2E Test started.

@ 23:43:27UTC : ✅ Workflow completed successfully.

Merged via the queue into main with commit 0d64f20 Oct 15, 2025
4 checks passed
@swong3-sc swong3-sc deleted the swong3/implement_lightgcn branch October 15, 2025 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants