Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Doc] Add Doc String for graphstorm.dataloading.dataloading #471

Closed
wants to merge 26 commits into from

Conversation

GentleZhu
Copy link
Collaborator

@GentleZhu GentleZhu commented Sep 24, 2023

Issue #, if available:

Description of changes:

Add Doc String for dataloaders in dataloading

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@GentleZhu GentleZhu requested a review from zhjwy9343 September 24, 2023 01:12
@GentleZhu GentleZhu changed the title add doc string for dataloaders [Doc] Add Doc String for graphstorm.dataloading.dataloading Sep 24, 2023
zheng-da and others added 6 commits September 24, 2023 16:24
*Description of changes:*
Fix an issue in logging and print out more information.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Ubuntu <[email protected]>
*Issue #, if available:*

*Description of changes:*
This PRs implements writing GNN embeddings from inference in stream.
Unit test has been added.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Houyu Zhang <[email protected]>
Co-authored-by: Da Zheng <[email protected]>
*Issue #, if available:*

when using precision_recall as evaluation metric, we need to set
`return_proba=True` because scikit-learn's precision_recall_curve takes
probability as input.

*Description of changes:*


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: xiang song(charlie.song) <[email protected]>
*Issue #, if available:
Feature transformation of inference graphs should follow the same
transformation rule as the corresponding training graph. However, for
min/max transformation, the rule is not saved. Thus when processing
inference graphs, gconstruct can not load the transformation info.

*Description of changes:*
Fix the issue.


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Xiang Song <[email protected]>
Co-authored-by: Da Zheng <[email protected]>
*Issue #, if available:*

*Description of changes:*

Disable storing embeddings when inferring on ec/er task

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: xiang song(charlie.song) <[email protected]>
*Issue #, if available:*

*Description of changes:*

* Improve the way we handle unknown config versions with more
descriptive messages and fall-back parsing.
* If a version name is not recognized we'll first try to parse the file
as GConstruct. If that fails we assume GSProcessing input.


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
@classicsong classicsong added the documentation Improvements or additions to documentation label Sep 25, 2023
python/graphstorm/dataloading/dataloading.py Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
python/graphstorm/dataloading/dataloading.py Outdated Show resolved Hide resolved
wangz10 and others added 19 commits September 25, 2023 17:56
*Issue #, if available:*

*Description of changes:* Updated MAG example with GLEM instructions


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
*Description of changes:*
We should allow users to customize the model layers to load in the
inference script.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

Co-authored-by: Ubuntu <[email protected]>
*Issue #, if available:*

*Description of changes:*
This PR reorganized GS API documentation in the following perspectives:
    - Put all Base classes into their corresponding module;
    - Add docstring for the graphstorm module;
- Create individual template.rst for each module so that they only
display their specific APIs;
    - Fix the .. code:: directive error in the GSgnnModelBase class.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Ubuntu <[email protected]>
Co-authored-by: xiang song(charlie.song) <[email protected]>
*Issue #, if available:*

*Description of changes:*


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Xiang Song <[email protected]>
Co-authored-by: Israt Nisa <[email protected]>
… sortable. (#479)

*Issue #, if available:*
The saved embeddings or prediction results are named as emb-0.pt,
emb-1.pt, .... emb-10.pt ... When there are more than 10 workers in the
graph, the output files can not be easily sorted.

*Description of changes:*
We pad file index with extra zeros, so that the saved files will be
named as emb-00000.pt, emb-00001.pt, etc.


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Xiang Song <[email protected]>
… to do validation. (#489)

Originally, if a user do not want to do validation, the graph should not
contain test_mask, otherwise GraphStorm will crash. This PR will allow
this use scenario. In certain cases, GraphStorm will only do inference
on the test set.


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: Xiang Song <[email protected]>
*Description of changes:*
In the GNN inference with BERT models, we first cache the BERT
embeddings and then cache the embeddings from the input layer. This
causes a lot of unnecessary memory consumption. An easy to avoid this is
to remove caching the BERT embeddings in the inference script.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

Co-authored-by: Ubuntu <[email protected]>
*Issue #, if available:*

*Description of changes:*

* We use `dst:relation-rev:src` for reverse edge names instead of
`dst:rev-relation:src` to match GConstruct.

*Testing*:

* pytest and test job (with re-partition follow-up) succeed


By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
`python3 -m pip install --upgrade prospector pip` has a change to
install astroid==3.0 (do not know why) which is not compatible with
lint.

Fix astroid version to 2.15.7 in this PR.



By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

Co-authored-by: Xiang Song <[email protected]>
Docker file to create docker image which supports NVIDIA's WholeGraph in
GraphStorm. This Dockerfile should install EFA and NCCL on top of the
other prerequisites required by GraphStorm.

---------

Co-authored-by: Israt Nisa <[email protected]>
Co-authored-by: xiang song(charlie.song) <[email protected]>
This test is necessary to trigger for each graphstorm commit to avoid
any further unexploited problem.
Related to #491 

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
*Issue #, if available:*

*Description of changes:*

* Add documentation for GSProcessing

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.

---------

Co-authored-by: xiang song(charlie.song) <[email protected]>
*Issue #, if available:*

*Description of changes:*

Add Doc String for dataloading.dataset

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
@GentleZhu GentleZhu closed this Sep 28, 2023
@GentleZhu GentleZhu deleted the dataloader-doc branch September 28, 2023 20:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants