Soft Matching User Identifiers in Social Graphs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Social networking systems face challenges in accurately determining relationships and interests between users that are not directly connected, as existing methods struggle to effectively recommend content or services to users based on indirect relationships.
Innovation Solution
The system employs a contact matching process that identifies nodes in a social graph by comparing contact information and relationship data, using methods such as Levenshtein distance for name matching and bounce-back messages for active user identification, and computes affinity scores to rank potential matches, thereby recommending content to users and their indirect connections.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the system uses direct connection data only for user matching, then the matching accuracy for directly connected users is high, but the system cannot effectively recommend content to users with indirect relationships
Solution Approach 1:
The patent segments user relationships into different levels (direct connections vs. indirect connections through friends) and applies different matching strategies to each segment. Direct connections use exact matching while indirect connections use fuzzy matching with affinity scoring, allowing the system to handle both precise and exploratory recommendation scenarios.
Solution Approach 2:
The patent changes the matching parameters based on relationship distance. For direct connections, it uses strict matching criteria (exact name, email, or phone number matches). For indirect connections, it relaxes parameters by using Levenshtein distance for name similarity and computing affinity scores that aggregate multiple weak signals, enabling recommendations across the broader social graph.
2Adaptability or versatility
If the system expands matching to include indirect relationships, then the recommendation coverage increases, but the matching accuracy decreases due to data sparsity
Solution Approach 1:
The patent merges multiple data sources and matching signals to compensate for data sparsity in indirect relationships. It combines name similarity (Levenshtein distance), email/phone number matches, mutual friend connections, and interaction history into a composite affinity score, where the aggregation of multiple weak signals achieves reliable matching even with limited individual data points.
Solution Approach 2:
The patent introduces affinity scores as an intermediary mechanism that bridges direct and indirect relationships. The affinity score acts as a mediator that quantifies the strength of indirect connections by aggregating various relationship signals, allowing the system to rank and filter potential matches even when direct verification data is unavailable.
3Measurement precision
If the system uses complex matching algorithms for all users, then the matching accuracy improves, but the computational complexity and processing time increase
Solution Approach 1:
The patent applies partial action by using simple exact matching for direct connections where data is abundant and reliable, reserving complex fuzzy matching and affinity scoring only for indirect connections where it is needed. This selective application of computational complexity optimizes resource usage while maintaining accuracy where required.
Solution Approach 2:
The patent applies different matching algorithm qualities to different parts of the social graph. Direct connections receive simple, fast exact matching (high speed, low complexity), while indirect connections receive sophisticated fuzzy matching with affinity scoring (higher accuracy, higher complexity). This local differentiation of algorithm quality matches the computational resources to the actual needs of each relationship type.
Data Source
AI summary
Particular embodiments may receive one or more data items associated with a first user of a social-networking system. The one or more data items being related to an entity. One or more data stores may store a social graph of the social-networking system. The social graph may comprise a plurality of nodes and plurality of edges between nodes. The nodes may comprise user nodes corresponding to users of the social-networking system and concept nodes corresponding to concepts. Particular embodiments may identify one or more nodes of the social graph that likely match the entity and associate at least one of the data items to at least one of the identified nodes.


