IP Library Granted Patent US 9,536,221
Granted Patent B2
US 9,536,221 · App. 12/488,512 · Granted Jan 3, 2017

System and method for adaptive matching of user profiles based on viewing and contact activity for social relationship services

Inventor: Markus Frind (Vancouver, CA)
Assignee: Plentyoffish Media ULC
G06Q10/10G06F17/30867
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,536,221
App. No.
12/488,512
Granted
Jan 3, 2017
Kind
B2
Abstract

A method and system which adaptively recommends potential relationships to individual users based on a set of items that are known to be of interest to the user, such as a set of potential matches previously messaged by the user. The system generates the adaptive recommendations using previously-generated user activity that indicates the user's preferences of particular attributes.

Claims (42)

1. A method of operating a matching system including at least one nontransitory computer-readable medium that stores a data store including a plurality of candidate user profiles, each of the plurality of candidate user profiles includes a number of user-reported user profile attribute values (UUPAVs) which represent attributes reported by respective candidate users, the matching system further including at least one processor communicatively coupled to the nontransitory computer-readable medium to match users of a social relationship service with respective ones of the candidate user profiles for viewing and contact by the users, the method comprising:

selecting at least some of the UUPAVs included in the plurality of candidate user profiles;

for each of the selected UUPAVs, determining, by the at least one processor, a population frequency for the UUPAV, wherein the population frequency represents the frequency with which the UUPAV is present in the plurality of candidate user profiles;

querying the data store by the at least one processor for a first set of the candidate user profiles on behalf of a first user;

providing the first set of the candidate user profiles to the first user;

recording, by the at least one processor in the at least one nontransitory computer-readable medium, a number of viewing actions of the first user, each of the number of viewing actions represents a viewing of one of the candidate user profiles in the first set of the candidate user profiles by the first user;

for each of the number of recorded viewing actions, recording, by the at least one processor in the at least one nontransitory computer-readable medium, whether each of the selected UUPAVs is present in each of the respective candidate user profiles in the first set of candidate user profiles viewed by the first user;

recording, by the at least one processor in the at least one nontransitory computer-readable medium, a number of contact actions of the first user, each of the number of contact actions represents a contact between the first user and respective ones of candidate users represented by the first set of candidate user profiles;

for each of the number of recorded contact actions, recording, by the at least one processor in the at least one nontransitory computer-readable medium, whether each of the selected UUPAVs is present in each of the respective candidate user profiles in the first set of candidate user profiles contacted by the first user;

for each of the selected UUPAVs, determining, by the at least one processor, a frequency for the selected UUPAV, wherein the determined frequency represents a frequency with which the user views candidate user profiles having the selected UUPAV or contacts users having the selected UUPAV;

for each of the selected UUPAVs, generating, by the at least one processor, a weighting factor based at least in part on a comparison between the determined frequency of the selected UUPAVs for the first user and the determined population frequency for the selected UUPAVs;

querying the data store by the at least one processor on behalf of the first user for a second set of candidate user profiles based at least in part on the generated weighting factors for the selected UUPAVs; and

providing, by the at least one processor, the second set of the candidate user profiles to the first user.

2. The method of claim 1 wherein recording the number of viewing actions of the first user and the number of contact actions of the first user includes recording the viewing and contact actions of the first user across multiple browsing sessions.

3. The method of claim 1 wherein recording the number of viewing actions of the first user and the number of contact actions of the first user includes recording the viewing and contact actions across an entire browsing history of the first user.

4. The method of claim 1 wherein providing the first set of the candidate user profiles to the first user includes:

transmitting the first set of the candidate user profiles over a distributed network of computers for display by a respective one of the computers which is operated by the first user.

5. The method of claim 1 wherein providing the second set of the candidate user profiles to the user includes:

transmitting the second set of the candidate user profiles over a distributed network of computers for display by a respective one of the computers which is operated by the first user.

6. The method of claim 1 , further comprising:

making the social relationship service available across a distributed computer network.

7. The method of claim 1 wherein the social relationship service is an online business or professional networking service.

8. The method of claim 1 , further comprising:

applying an adaptability factor to adjust how quickly the viewing and contact actions of the first user affect the weighting factors used in querying the data store.

9. The method of claim 1 , further comprising:

ranking the second set of results by the at least one processor according to the generated weighting factors.

10. The method of claim 1 wherein generating a weighting factor based at least in part on a comparison between the determined frequency of the selected UUPAV for the first user and the determined population frequency for the selected UUPAV comprises generating a weighting factor which is based at least in part on a ratio of the frequency to the population frequency.

11. The method of claim 10 wherein generating a weighting factor which is based at least in part on a ratio of the frequency to the population frequency comprises normalizing the weighting factor.

12. A method of operating a matching system including at least one nontransitory computer-readable medium that stores a data store including a plurality of candidate user profiles, each of the plurality of candidate user profiles includes a number of user-reported user profile attribute values (UUPAVs) which represent attributes reported by respective candidate users, the matching system further including at least one processor communicatively coupled to the nontransitory computer-readable medium to match users of a social relationship service with respective ones of the candidate user profiles for viewing and contact by the users, the method comprising:

selecting at least some of the UUPAVs included in the plurality of candidate user profiles;

for each of the selected UUPAVs, determining, by the at least one processor, a population frequency for the UUPAV, wherein the population frequency represents the frequency with which the UUPAV is present in the plurality of candidate user profiles;

querying the data store by the at least one processor for a first set of the candidate user profiles on behalf of a first user;

providing the first set of the candidate user profiles to the first user;

recording, by the at least one processor in the at least one nontransitory computer-readable medium, a number of viewing actions of the first user, each of the number of viewing actions represents a viewing of one of the candidate user profiles in the first set of the candidate user profiles by the first user;

for each of the number of recorded viewing actions, recording, by the at least one processor in the at least one nontransitory computer-readable medium, whether each of the selected UUPAVs is present in each of the respective candidate user profiles in the first set of candidate user profiles viewed by the first user;

recording, by the at least one processor in the at least one nontransitory computer-readable medium, a number of contact actions of the first user, each of the number of contact actions represents a contact between the first user and respective ones of candidate users represented by the first set of candidate user profiles;

for each of the number of recorded contact actions, recording, by the at least one processor in the at least one nontransitory computer-readable medium, whether each of the selected UUPAVs is present in each of the respective candidate user profiles in the first set of candidate user profiles contacted by the first user;

for each of the selected UUPAVs, determining, by the at least one processor, a frequency for the selected UUPAV, wherein the determined frequency represents a frequency with which the user views candidate user profiles having the selected UUPAV or contacts users having the selected UUPAV;

for each of the selected UUPAVs, generating, by the at least one processor, a weighting factor based at least in part on a comparison between the determined frequency of the selected UUPAVs for the first user and the determined population frequency for the selected UUPAVs;

querying the data store by the at least one processor on behalf of the first user for a second set of candidate user profiles based at least in part on the generated weighting factors for the selected UUPAVs; and

providing, by the at least one processor, the second set of the candidate user profiles to the first user; and

applying a random sample percentage to augment the second set of the candidate user profiles with a percentage of randomly selected candidate user profiles based on the random sample percentage.

Assignments (4)
CHANGE OF NAME Recorded Apr 7, 2016
From: MATCH.COM CANADA LTD./MATCH.COM CANADA LTEE
To: PLENTYOFFISH MEDIA INC.
Reel/Frame 038223/0303 →
MERGER Recorded Apr 7, 2016
From: PLENTYOFFISH MEDIA INC.
To: MATCH.COM CANADA LTD./MATCH.COM CANADA LTEE
Reel/Frame 038387/0333 →
NOTICE OF ALTERATION/CHANGE OF NAME Recorded Apr 7, 2016
From: PLENTYOFFISH MEDIA INC.
To: PLENTYOFFISH MEDIA ULC
Reel/Frame 038387/0343 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2011
From: FRIND, MARKUS
To: PLENTYOFFISH MEDIA INC.
Reel/Frame 026333/0649 →
Continuity (2)
Provisional Application 61074142 · Jun 19, 2008
Related Publication 20100262611A1 · Oct 14, 2010