Engineer Blog Note 4: PinSage: A new graph convolutional neural network for web-scale recommender systems
2 min readSep 6, 2020
My note:
They applying Graph Convolutional Networks in graph application improve performances.
2. There are few challenges of utilizing GCNs, Pinterest provides solutions to them.
What is GCNs:
- GCNs is Graph Convolutional Networks. It is useful to capture the graph information to embeddings.
Why GCNs?
- In Pinterest, we can consider image-boards as a bipartite. In other applications, user-item clicks graph is also a bipartite.
- In previous model at Pinterest, they only consider visual and annotations (content-based features). I feel like strictly speaking, annotations is semi-content-based features since it is user defined, which includes user information as well. However, both of them do not consider interactions information (like collaborate filtering concept). I think the graph information mainly supplement the lack of information of annotations (some images are lack of these annotations).
May we directly apply? NO!
- The original model is not applied in large scale scenario.
- Some assumptions, full graph Laplacian during training, don’t apply in a large scale situation.
Solution: a random-walk-based GCNs
- They apply localized convolutions by sampling the neighborhood around a node and dynamically constructing a computation graph instead of multiplying feature matrices by powers of the full graph Laplacian.
- They apply random walks instead of K-hop graph neighborhoods to earn importance of neighboring and memory controls.
- They apply MapReduce computational to solve computations of node embeddings.
Result
Other engineering blog note:
Engineer Blog Note 3: embedding at Twitter
Engineer Blog Note 2: a real world visual discovery system at Pinterest
Engineer Blog Note 1: Contextual relevance in ads ranking at Pinterest