Weighted Graph Convolutions for Scalable Item Recommendations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for extending convolutional neural networks (CNNs) to graph-structured data face scalability issues due to quadratic computational complexity, leading to sub-optimal representation of node relationships in graph-based models, which affects their performance in applications like product recommendation systems.

Innovation Solution

The method involves generating weighted graphs from item images and descriptions, sampling nodes based on edge weights, aggregating information using graph convolutional networks, and applying a loss function to generate vector representations for recommending items, allowing for efficient and accurate item recommendations in dynamic retail environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If graph convolutional models are applied to capture node relationships, then recommendation accuracy is improved, but computational complexity increases quadratically with the number of nodes

Engineering Contradiction:
Improverecommendation accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent divides the graph into multiple clusters and processes each cluster separately. Instead of computing convolutions over the entire graph at once, the system partitions the graph structure into manageable segments (clusters of nodes), performs convolutional operations on each segment independently, and then aggregates the results. This segmentation approach reduces the computational complexity from quadratic to a more manageable level while preserving the ability to capture node relationships accurately.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and processes only the most relevant portions of the graph. By identifying and focusing on specific clusters of nodes that are most important for recommendation tasks, the system extracts meaningful relationships without needing to process the entire graph structure. This extraction approach allows the model to capture essential node relationships while avoiding the computational burden of analyzing all nodes and edges in the full graph.

Inventive Principle:
Principle #2Taking out (Extraction)

2Measurement precision

If the entire graph is used for training, then model accuracy is improved, but scalability to large graphs with thousands to millions of items is lost

Engineering Contradiction:
Improvemodel accuracyVSAvoidscalability
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent segments the large graph into multiple smaller clusters that can be processed independently. This segmentation enables the model to maintain high accuracy by capturing local relationships within each cluster while achieving scalability by processing multiple clusters in parallel or sequentially without overwhelming computational resources. The system can handle graphs with thousands to millions of items by dividing them into manageable segments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by processing only the necessary portions of the graph (specific clusters) rather than the entire graph. This allows the model to achieve sufficient accuracy for recommendation tasks while significantly improving scalability. By focusing on partial graph regions that contain the most relevant information, the system can efficiently handle large-scale graphs without needing to process every node and edge.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If graph convolutions are approximated to reduce computational cost, then scalability is improved, but the representation of node relationships becomes sub-optimal

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidnode relationship representation
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent segments the graph into clusters where convolutional operations can be applied more effectively. By working with segmented graph structures, the system achieves better computational efficiency than naive approaches while maintaining high-quality node relationship representations. The segmentation allows for optimized convolution operations that balance computational cost with representation accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by focusing convolutional operations on specific local regions (clusters) of the graph rather than applying uniform approximations across the entire graph. This localized approach enables the model to capture nuanced node relationships within each cluster with high accuracy while improving overall computational efficiency by avoiding the need to process the entire graph with full precision.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11995702B2Item recommendations using convolutions on weighted graphs
Publication Date: 2024.05.28 TARGET BRANDS INC
  • US11995702B2 patent drawing
  • US11995702B2 patent drawing
  • US11995702B2 patent drawing

AI summary

Methods and systems for generating item recommendations are disclosed. One method includes sampling from a weighted node-based graph to generate a sampled graph, wherein sampling includes selecting a plurality of nodes and, for each selected node, one or more node pairs. The selection of the node pairs is based at least in part based on a weight assigned to the node pair in the weighted node-based graph. The method further includes aggregating information from the one or more neighboring nodes into each corresponding node of the plurality of nodes in the sampled graph to generate a vector representation of the sampled graph. The method also includes applying a loss function to the vector representation of the sampled graph to generate a modified vector representation. The modified vector representation is used to generate, in response to identification of an item from an item collection, a selection of one or more recommended items from within the item collection.