IP Library Granted Patent US 11,157,557
Granted Patent B2
US 11,157,557 · App. 16/668,893 · Granted Oct 26, 2021

Systems and methods for searching and ranking personalized videos

Inventors: Alexander Mashrabov (Sochi, RU); Evgenii Krokhalev (Revda, RU); Sofia Savinova (Sochi, RU); Ivan Babanin (Saratov, RU); Ivan Belonogov (Perm, RU)
Assignee: Snap Inc.
G06F16/7867G06F16/738G06F40/247H04L51/10
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 11,157,557
App. No.
16/668,893
Granted
Oct 26, 2021
Kind
B2
Abstract

An example method for searching and ranking personalized videos commence with receiving a user request via a communication chat between a user and another user. The user request includes a phrase or emoji. The method performs, based on the user request, a search of a pool of personalized videos to determine a subset of relevant personalized videos. The personalized videos are associated with text messages. The method further includes determining first rankings of the relevant personalized videos. The method then proceed with selecting, based on the first rankings, a pre-determined number of personalized videos from the subset of relevant personalized videos. The method then determines second rankings of the selected personalized videos and present the selected personalized videos within the communication chat in an order based on the second rankings. The personalized videos of the first subpool and the personalized videos of the second subpool are ranked independently.

Claims (99)

1. A method for searching and ranking personalized videos, the method comprising:

receiving, by a computing device, a user request via a communication chat between a user of the computing device and a further user of a further computing device, the user request including a phrase;

performing, by the computing device and based on the user request, a search of a pool of personalized videos to determine a subset of relevant personalized videos, wherein the personalized videos are associated with text messages;

determining, by the computing device, first rankings of the relevant personalized videos;

selecting, by the computing device and based on the first rankings, a pre-determined number of personalized videos from the subset of relevant personalized videos;

determining, by the computing device, second rankings of the selected personalized videos, wherein the determining the second rankings includes:

determining a first feature vector, the first feature vector including:

a first global vector corresponding to a text message associated with a personalized video, the first global vector being determined based on a model for a distributed word representation;

a popularity metric of the personalized video;

an activity category associated with the personalized video; and

information indicative of the personalized video being previously used by the user;

determining a second feature vector, the second feature vector including:

a second global vector corresponding to the phrase, the second global vector being determined based on the model for a distributed word representation;

a favorite activity category of the user;

information concerning personal data of the user, the information including at least an age of the user and a gender of the user; and

a conversational context in the communication chat; and

providing the first feature vector and the second feature vector to a neural network, wherein the neural network is configured to output a ranking of the personalized video; and

presenting, by the computing device, the selected personalized videos within the communication chat, wherein the selected personalized videos are presented in an order based on the second rankings.

2. The method of claim 1 , wherein the performing the search includes:

determining that the phrase is a synonym of a text message associated with at least one of the personalized videos of the pool; and

adding the at least one of the personalized videos to the subset of relevant personalized videos.

3. The method of claim 1 , wherein:

each of the personalized videos is associated with one or more activity categories; and

the search includes:

determining, based on the phrase, a category from the one or more activity categories;

determining that at least one personalized video of the pool is associated with the category; and

adding the at least one personalized video to the subset of relevant personalized videos.

4. The method of claim 1 , wherein the search includes:

calculating a similarity distance between the phrase and a text message associated with a personalized video from the pool;

determining that the similarity distance does not exceed a pre-determined threshold; and

based on the determination, adding the personalized video to the subset of relevant personalized videos.

5. The method of claim 1 , wherein the determining the first rankings includes computing one or more features including:

a probabilistic term weighting a function of the phrase and a text message associated with at least one of the relevant personalized videos;

a Jaccard similarity index between terms of the phrase and terms of the text message; and

a share rate of the relevant personalized video.

6. The method of claim 1 , wherein the search of the pool includes selecting the personalized videos from the pool based on an age of the user.

7. The method of claim 1 , wherein:

the pool of the personalized videos includes a first subpool of personalized videos with pre-rendered text messages and a second subpool of personalized videos with text messages customized by the user; and

wherein the selected personalized videos include at least one personalized video from the second subpool.

8. The method of claim 7 , wherein the personalized videos of the first subpool and the personalized videos of the second subpool are ranked independently.

9. The method of claim 7 , further comprising, prior to computing the first rankings, filtering out personalized videos from the second subpool based on a blacklist.

10. A system for searching and ranking personalized videos, the system comprising at least one processor and a memory storing processor-executable codes, wherein the at least one processor is configured to implement the following operations upon executing the processor-executable codes:

receiving, by a computing device, a user request via a communication chat between a user of the computing device and a further user of a further computing device, the user request including a phrase;

performing, by the computing device and based on the user request, a search of a pool of personalized videos to determine a subset of relevant personalized videos, wherein the personalized videos are associated with text messages;

determining, by the computing device, first rankings of the relevant personalized videos;

selecting, by the computing device and based on the first rankings, a pre-determined number of personalized videos from the subset of relevant personalized videos;

determining, by the computing device, second rankings of the selected personalized videos, wherein the determining the second rankings includes:

determining a first feature vector, the first feature vector including:

a first global vector corresponding to a text message associated with a personalized video, the first global vector being determined based on a model for a distributed word representation;

a popularity metric of the personalized video;

an activity category associated with the personalized video; and

information indicative of the personalized video being previously used by the user;

determining a second feature vector, the second feature vector including:

a second global vector corresponding to the phrase, the second global vector being determined based on the model for a distributed word representation;

a favorite activity category of the user;

information concerning personal data of the user, the information including at least an age of the user and a gender of the user; and

a conversational context in the communication chat; and

providing the first feature vector and the second feature vector to a neural network, wherein the neural network is configured to output a ranking of the personalized video; and

presenting, by the computing device, the selected personalized videos within the communication chat, wherein the selected personalized videos are presented in an order based on the second rankings.

11. The system of claim 10 , wherein the search includes:

determining that the phrase is a synonym of a text message associated with at least one of the personalized videos in the pool; and

adding the at least one of the personalized videos to the subset of relevant personalized videos.

12. The system of claim 10 , wherein:

each of the personalized videos is associated with one or more activity categories; and

the search includes:

determining, based on the phrase, a category from the one or more activity categories;

determining that at least one personalized video of the pool is associated with the category; and

adding the at least one personalized video to the subset of relevant personalized videos.

13. The system of claim 10 , wherein the performing the search includes:

calculating a similarity distance between the phrase and a text message associated with a personalized video from the pool;

determining that the similarity distance does not exceed a pre-determined threshold; and

based on the determination, adding the personalized video to the subset of relevant personalized videos.

14. The system of claim 10 , wherein the determining the first rankings includes computing one or more features including:

a probabilistic term weighting function of the phrase and a text message associated with at least one of the relevant personalized videos;

a Jaccard similarity index between terms of the phrase and terms of the text message; and

a share rate of the relevant personalized video.

15. The system of claim 10 , wherein the search of the pool includes selecting the personalized videos from the pool based on an age of the user.

16. The system of claim 10 , wherein:

the pool of the personalized videos includes a first subpool of personalized videos with pre-rendered text messages and a second subpool of personalized videos with text messages customized by the user; and

wherein the selected personalized videos include at least one personalized video from the second subpool.

17. The system of claim 16 , wherein the personalized videos of the first subpool and the personalized videos of the second subpool are ranked independently.

18. A non-transitory processor-readable medium having instructions stored thereon, which when executed by one or more processors, cause the one or more processors to implement a method for searching and ranking personalized videos, the method comprising:

receiving, by a computing device, a user request via a communication chat between a user of the computing device and a further user of a further computing device, the user request including a phrase;

performing, by the computing device and based on the user request, a search of a pool of personalized videos to determine a subset of relevant personalized videos, wherein the personalized videos are associated with text messages;

determining, by the computing device, first rankings of the relevant personalized videos;

selecting, by the computing device and based on the first rankings, a pre-determined number of personalized videos from the subset of relevant personalized videos;

determining, by the computing device, second rankings of the selected personalized videos, wherein the determining the second rankings includes:

determining a first feature vector, the first feature vector including:

a first global vector corresponding to a text message associated with a personalized video, the first global vector being determined based on a model for a distributed word representation;

a popularity metric of the personalized video;

an activity category associated with the personalized video; and

information indicative of the personalized video being previously used by the user;

determining a second feature vector, the second feature vector including:

a second global vector corresponding to the phrase, the second global vector being determined based on the model for a distributed word representation;

a favorite activity category of the user;

information concerning personal data of the user, the information including at least an age of the user and a gender of the user; and

a conversational context in the communication chat; and

providing the first feature vector and the second feature vector to a neural network, wherein the neural network is configured to output a ranking of the personalized video; and

presenting, by the computing device, the selected personalized videos within the communication chat, wherein the selected personalized videos are presented in an order based on the second rankings.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2020
From: AI FACTORY, INC.
To: SNAP INC.
Reel/Frame 051789/0760 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2019
From: MASHRABOV, ALEXANDER; KROKHALEV, EVGENII; SAVINOVA, SOFIA; BABANIN, IVAN; BELONOGOV, IVAN
To: AI FACTORY, INC.
Reel/Frame 050867/0523 →
Continuity (10)
Continuation In Part 16661122 · Oct 23, 2019
Continuation In Part 16661086 · Oct 23, 2019
Continuation In Part 16594771 · Oct 7, 2019
Continuation In Part 16594690 · Oct 7, 2019
Continuation In Part 16551756 · Aug 27, 2019
Continuation In Part 16251472 · Jan 18, 2019
Continuation In Part 16434185 · Jun 7, 2019
Continuation In Part 16251436 · Jan 18, 2019
Continuation In Part 16251436 · Jan 18, 2019
Related Publication 20200233903A1 · Jul 23, 2020
Cited By (3)
US 12,315,495 US 12,361,934 US 12,705,840