# williamleif/graphsage

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/williamleif-graphsage).**

3,657 stars · 853 forks · Python · other

## Links

- GitHub: https://github.com/williamleif/GraphSAGE
- awesome-repositories: https://awesome-repositories.com/repository/williamleif-graphsage.md

## Description

GraphSAGE is a graph neural network framework designed for inductive representation learning on large-scale graphs. It functions as an inductive graph embedding tool and neighborhood aggregation engine, enabling the generation of numerical node representations that generalize to previously unseen data.

The system distinguishes itself by computing node embeddings through the aggregation of features from local neighborhoods rather than relying on a global lookup table. This approach allows the framework to operate as both a supervised graph classifier for predicting categorical node classes and an unsupervised graph representation learner.

The project covers broader capabilities in machine learning for graph data, including supervised node classification and unsupervised embedding training. These processes utilize neighborhood aggregation strategies such as mean, max-pooling, or gated operations to transform node attributes into low-dimensional vector representations.

## Tags

### Part of an Awesome List

- [Inductive Learning](https://awesome-repositories.com/f/awesome-lists/ai/graph-representation-learning/inductive-learning.md) — Implements an inductive learning framework for generating node embeddings that generalize to unseen data.
- [Node Classification Models](https://awesome-repositories.com/f/awesome-lists/ai/graph-neural-networks/graph-classification/node-classification-models.md) — Predicts categorical node classes based on the graph structure and node feature sets.
- [Graph Representation Learning](https://awesome-repositories.com/f/awesome-lists/ai/graph-representation-learning.md) — Learns embeddings from graph-structured data to create unlabeled representations for downstream classifiers.
- [Graph Neural Networks](https://awesome-repositories.com/f/awesome-lists/ai/graph-neural-networks.md) — Inductive representation learning framework for large-scale graphs.

### Artificial Intelligence & ML

- [Graph Neighborhood Sampling](https://awesome-repositories.com/f/artificial-intelligence-ml/graph-neighborhood-sampling.md) — Implements neighborhood sampling to aggregate features from local graph structures for inductive learning.
- [Large-Scale Graph Training](https://awesome-repositories.com/f/artificial-intelligence-ml/large-scale-training-frameworks/large-scale-graph-training.md) — Scales graph training to massive datasets by aggregating information from local node neighborhoods.
- [Neighborhood Aggregation Engines](https://awesome-repositories.com/f/artificial-intelligence-ml/neighborhood-aggregation-engines.md) — Implements a mathematical framework for computing node representations via local neighborhood feature aggregation.
- [Neighborhood Aggregation Strategies](https://awesome-repositories.com/f/artificial-intelligence-ml/neighborhood-aggregation-strategies.md) — Computes node representations using mathematical strategies like mean, max-pooling, or gated units. ([source](https://cdn.jsdelivr.net/gh/williamleif/graphsage@master/README.md))
- [Neighborhood Aggregators](https://awesome-repositories.com/f/artificial-intelligence-ml/neighborhood-aggregators.md) — Provides parameterized aggregator functions like mean, max-pooling, and gated operations to combine neighborhood features.
- [Contrastive Learning Models](https://awesome-repositories.com/f/artificial-intelligence-ml/contrastive-learning-models.md) — Employs unsupervised contrastive learning to maximize similarity between nodes and their local neighbors.
- [Fixed-Depth Sampling](https://awesome-repositories.com/f/artificial-intelligence-ml/graph-neighborhood-sampling/fixed-depth-sampling.md) — Limits the number of sampled neighbors at each layer to keep the computational graph size constant.
- [Unsupervised Embedding Training](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/machine-learning-training/unsupervised-embedding-training.md) — Creates unlabeled node embeddings to serve as inputs for independent machine learning classifiers. ([source](https://cdn.jsdelivr.net/gh/williamleif/graphsage@master/README.md))
- [Node Classification](https://awesome-repositories.com/f/artificial-intelligence-ml/semi-supervised-learning-pipelines/semi-supervised-classification/node-classification.md) — Provides capabilities for predicting categorical node classes based on graph structure and attributes. ([source](https://cdn.jsdelivr.net/gh/williamleif/graphsage@master/README.md))
- [Stochastic Gradient Descent Optimizations](https://awesome-repositories.com/f/artificial-intelligence-ml/stochastic-gradient-descent-optimizations.md) — Uses mini-batch stochastic gradient descent to ensure scalable training on massive graph datasets.

### Scientific & Mathematical Computing

- [Neural Node Embeddings](https://awesome-repositories.com/f/scientific-mathematical-computing/vector-mathematics/n-dimensional-vector-representations/neural-node-embeddings.md) — Provides neural network-based mapping of node attributes into low-dimensional continuous vector spaces.

### Data & Databases

- [Unsupervised Node Embeddings](https://awesome-repositories.com/f/data-databases/vector-search/embedding-generation/unsupervised-node-embeddings.md) — Generates numerical feature vectors for graph nodes without requiring labels.
