GSgnnEdgePredictionInferrer
- class graphstorm.inference.GSgnnEdgePredictionInferrer(model)
Bases:
GSInferrerEdge classification/regression inferrer.
This is a high-level inferrer wrapper that can be used directly to do edge classification/regression model inference.
Parameters
- modelGSgnnNodeModel
The GNN model for node prediction.
- property device
The device associated with the inferrer.
- property evaluator
Get the evaluator associated with the inferrer.
- infer(loader, save_embed_path, save_prediction_path=None, use_mini_batch_infer=False, node_id_mapping_file=None, edge_id_mapping_file=None, return_proba=True, save_embed_format='pytorch')
Do inference
The inference can do three things:
(Optional) Evaluate the model performance on a test set if given.
Generate node embeddings.
Comput inference results for edges with target edge type.
Parameters
- loaderGSEdgeDataLoader
The mini-batch sampler for edge prediction task.
- save_embed_pathstr
The path where the GNN embeddings will be saved.
- save_prediction_pathstr
The path where the prediction results will be saved.
- use_mini_batch_inferbool
Whether or not to use mini-batch inference.
- node_id_mapping_file: str
Path to the file storing node id mapping generated by the graph partition algorithm.
- return_proba: bool
Whether to return all the predictions or the maximum prediction.
- save_embed_formatstr
Specify the format of saved embeddings.
- setup_device(device)
Set up the device for the inferrer.
The CUDA device is set up based on the local rank.
Parameters
- device :
The device for inferrer.
- setup_evaluator(evaluator)
Setup the evaluator
If the evaluator has its own task tracker, just setup the evaluator. But if the evaluator has no task tracker, will use this Trainer’s task tracker to setup the evaluator. When there is no self task tracker, will create a new one by using the given evaluator’s evaluation frequency.