Combined Directed Graphs for Multi-Tenant Recommendation Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large interaction sets in ecommerce databases increase computational complexity, and multi-tenant databases face challenges in generating and using recommendation models due to data privacy restrictions, making it difficult to leverage data from multiple tenant organizations effectively.

Innovation Solution

The method involves constructing tenant-specific recommendation models that learn from interaction sets and combining them into a multi-tenant model using directed graphs, where nodes represent objects and arcs represent conditional probabilities, with weights assigned based on the significance of interactions, allowing for the creation of a combined directed graph that recommends objects based on conditional probabilities across multiple tenants.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If association rules are generated from large interaction sets, then recommendation coverage is improved, but computational complexity increases substantially

Engineering Contradiction:
Improverecommendation coverageVSAvoidcomputational complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the large interaction set into multiple smaller subsets, each processed independently to generate association rules. This division reduces the computational burden of enumerating all possible subsets from a large interaction set while maintaining comprehensive recommendation coverage by aggregating results from all segments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by focusing on generating association rules for a predetermined maximum number of rules rather than exhaustively enumerating all possible rules from large interaction sets. This selective approach reduces computational complexity while still providing sufficient recommendation coverage for practical purposes.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If data from multiple tenant organizations is leveraged, then recommendation accuracy is improved, but data privacy restrictions prevent direct data sharing

Engineering Contradiction:
Improverecommendation accuracyVSAvoiddata privacy
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The patent introduces an intermediary mechanism where tenant-specific recommendation models are trained independently on each tenant's data, and then these models are combined into a multi-tenant recommendation model. This intermediary approach allows leveraging data from multiple tenants to improve recommendation accuracy while maintaining data privacy by never directly sharing or exposing raw tenant data between organizations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates copies of tenant-specific models rather than sharing the actual tenant data. Each tenant's interaction patterns are captured in a separate model, and these model copies are then integrated to form the multi-tenant recommendation system, preserving data privacy while enabling cross-tenant learning.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9977797B2Combined directed graphs
Publication Date: 2018.05.22 SALESFORCE INC
  • US9977797B2 patent drawing
  • US9977797B2 patent drawing
  • US9977797B2 patent drawing

AI summary

A combined directed graph is created having a corresponding node for each node in a first directed graph lacking a corresponding node in a second directed graph, each node in the second graph lacking a corresponding node in the first graph, and each node in the first graph having a corresponding node in the second graph. A corresponding directed arc is created in the combined directed graph for each arc in the first graph lacking a corresponding arc in the second directed graph, each arc in the second graph lacking a corresponding arc in the first graph, and each arc in the first graph having a corresponding arc in the second graph. A recommendation is output for a user to interact with a recommended object based on an object interaction and a conditional probability, in the combined graph, which corresponds to the recommended object and the object interaction.