Real-Time ML Recommendation Engine for Ad Relevance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital item advertisement systems often fail to provide relevant product recommendations to customers, leading to missed sales opportunities as they display items that do not align with the customer's current interests or shopping intent, resulting in customers abandoning the website to find more relevant products elsewhere.

Innovation Solution

Implementing a real-time machine learning model that operates on user session data, temporal data, and trend analysis to generate item recommendations dynamically, leveraging graphical processing units (GPUs) for efficient processing and ensuring timely recommendations are displayed to customers based on their current interactions and changing intents.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If offline machine learning models are used to generate item advertisements in advance, then processing time is reduced, but the relevance of advertisements to current customer intent deteriorates

Engineering Contradiction:
Improveprocessing timeVSAvoidrelevance to customer intent
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary actions by pre-training machine learning models offline using historical data, then deploys these trained models for real-time inference. This allows the heavy computational training work to be done in advance, while the actual advertisement generation uses the pre-trained models to quickly process real-time customer interaction data, thus achieving both time efficiency and relevance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transitions from static offline-generated advertisements to dynamic real-time recommendations by continuously processing customer interaction data (clicks, views, cart additions) as it occurs. The machine learning models dynamically adjust recommendations based on current session behavior, making the advertisement system adaptive and responsive to changing customer intent.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If real-time machine learning inference is performed, then advertisement relevance to customer intent is improved, but processing time and computational complexity increase

Engineering Contradiction:
Improverelevance to customer intentVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system segments the machine learning pipeline into distinct components: offline model training, real-time feature extraction, model inference, and result integration. This segmentation allows computationally intensive training to occur separately from time-sensitive inference, enabling real-time processing by distributing different stages across appropriate computational resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary layer (the trained machine learning model) that bridges offline historical data and real-time customer interactions. This intermediary model captures complex patterns from historical data and applies them rapidly to real-time inputs, reducing the computational burden during real-time inference while maintaining high relevance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If complex machine learning models are used to capture non-linear relationships, then recommendation accuracy is improved, but processing speed deteriorates

Engineering Contradiction:
Improverecommendation accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The system performs the computationally intensive model training and complexity optimization in advance during the offline phase. Complex models with high capacity are trained offline to capture non-linear relationships, then the trained models are optimized for fast inference. This preliminary preparation enables accurate complex models to run quickly during real-time recommendation generation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes computational parameters between offline and real-time phases: using higher model complexity, larger batch sizes, and more iterations during offline training, then switching to optimized inference parameters with pre-computed features and simplified computation paths during real-time execution, thus achieving both accuracy and speed.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If multiple GPUs are used to distribute processing tasks, then processing efficiency and recommendation relevance are improved, but system complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments processing tasks across multiple GPUs, assigning different machine learning models or different batches of data to separate processing units. This segmentation enables parallel processing that improves throughput and efficiency, while each individual GPU handles a manageable subset of the overall computational load, reducing the complexity burden on any single component.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11645559B2Methods and apparatus for generating item recommendations based on real-time inference of machine learning models
Publication Date: 2023.05.09 WALMART APOLLO LLC
  • US11645559B2 patent drawing
  • US11645559B2 patent drawing
  • US11645559B2 patent drawing

AI summary

This application relates to apparatus and methods for providing recommended items to advertise. In some examples, a computing device determines a plurality of first values for a corresponding plurality of first items based on the user's engagement with each of the first items. The computing device may then determine a subset of the plurality of first items based on the first values. The computing device may receive a search request and determine a plurality of second values for a plurality of second items based on the search request. The computing device may determine a plurality of third values for the subset of items based on the plurality of second values for the plurality of second items and the user's engagement with each of the subset of items. The computing device may determine the recommended items based on the plurality of second values and the plurality of third values.