IP Library › Granted Patent US 10,318,594
Granted Patent B2
US 10,318,594 · App. 15/600,487 · Granted Jun 11, 2019

System and method for enabling related searches for live events in data streams

Inventors: Manoj Kumar Agarwal (Hyderabad, IN); Manish Gupta (Hyderabad, IN); Ambuj Pushkar Ojha (Ludhiana, IN)
Assignee: Microsoft Technology Licensing, LLC
G06F16/951G06F16/24578G06F16/3325G06F16/35G06N5/025G06Q50/01
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 10,318,594
App. No.
15/600,487
Granted
Jun 11, 2019
Kind
B2
Abstract

Disclosed in some examples are methods, systems, devices, and machine readable mediums that automatically determine a set of one or more rules for finding items of content with high precision and high-recall. The disclosed methods enable applications to find content in rapidly changing datasets such as microblogs and other social networking feeds with a high precision and high recall, improving the accuracy of the application.

Claims (71)

1. A machine-readable medium for searching content items for content corresponding to an event, the machine-readable medium comprising instructions, which when executed by a machine, cause the machine to perform the operations of:

determining a first query rule, the first query rule related to the event;

obtaining from a content repository a first set of one or more content items;

determining a second set of content items comprising content items from the first set that match the first query rule;

determining a proposed second query rule based upon co-occurrences of terms in the second set of content items;

determining a third set of content items comprising content items from the first set that match the proposed second query rule;

scoring the proposed second query rule, the score based upon a tag quality score of tags in the second and third sets of content items;

adding the proposed second query rule to the first query rule based upon determining that the score is over a threshold score; and

providing the third set of content items to a requester.

2. The machine-readable medium of claim 1 , wherein the first set of one or more content items are microblog messages, and wherein the tags are hashtags.

3. The machine-readable medium of claim 1 , wherein the operations of determining the proposed second query rule based upon co-occurrence of terms in the second set of content items comprises the operations of:

extracting a list of keywords that frequently occur from content items in the second set of content items;

sorting the list of keywords based upon total frequency of the keywords in the first set of content items;

bucketizing the sorted list of keywords based upon frequency into a plurality of buckets;

constructing, for each bucket of the plurality of buckets, a co-occurrence graph, the co-occurrence graph based upon co-occurrence of different keywords in same content items; and

extracting the proposed second query rule as a clique that is greater than or equal to a predetermined number from the co-occurrence graph of one of the plurality of buckets.

4. The machine-readable medium of claim 1 , wherein the operations of scoring the proposed second query rule comprises the operations of:

computing a precision for the first query rule based upon a tag quality of tags from a set of previously determined tags that are present in the second set of content items;

computing a precision for the proposed second query rule based upon a tag quality of tags from a set of previously determined tags that are present in the third set of content items; and

wherein the score for the proposed second query rule is calculated based upon the precision for the first query rule and the precision for the proposed second query rule.

5. The machine-readable medium of claim 4 , wherein the operations of scoring the proposed second query rule comprises the operations of:

computing a recall of the first query rule based upon tag quality of the first rule and tag quality of the proposed second query rule;

computing an F1 gain based upon the precision for the first query rule, precision for the proposed second query rule, and the recall of the first query rule;

computing a top-keyword retaining ability score of the proposed second query rule, the top-keyword retaining ability score measuring a similarity between keywords in the second and third sets of content; and

calculating the score based upon the F1 gain and the top-keyword retaining ability score.

6. The machine-readable medium of claim 1 , wherein the operations are performed in response to an expiry of a predetermined interval.

7. The machine-readable medium of claim 1 , wherein the first query rule is received over a computer network, and wherein the operations of obtaining from the content repository the first set of one or more content items comprises sending a message over the computer network to the content repository.

8. The machine-readable medium of claim 1 , wherein the first query rule is received over a computer network, and wherein the operations of obtaining from the content repository the first set of one or more content items is performed without traversing an Internet backbone.

9. The machine-readable medium of claim 1 , wherein the threshold score is a score of a next-highest scoring proposed rule.

10. A method for searching content items for content corresponding to an event, the method comprising:

using one or more processors to perform the operations of:

determining a first query rule, the first query rule related to the event;

obtaining from a content repository a first set of one or more content items;

determining a second set of content items comprising content items from the first set that match the first query rule;

determining a proposed second query rule based upon co-occurrences of terms in the second set of content items;

determining a third set of content items comprising content items from the first set that match the proposed second query rule;

scoring the proposed second query rule, the score based upon a tag quality score of tags in the second and third sets of content items;

adding the proposed second query rule to the first query rule based upon determining that the score is over a threshold score; and

providing the third set of content items to a requester.

11. The method of claim 10 , wherein the first set of one or more content items are microblog messages, and wherein the tags are hashtags.

12. The method of claim 10 , wherein determining the proposed second query rule based upon co-occurrence of terms in the second set of content items comprises:

extracting a list of keywords that frequently occur from content items in the second set of content items;

sorting the list of keywords based upon total frequency of the keywords in the first set of content items;

bucketizing the sorted list of keywords based upon frequency into a plurality of buckets;

constructing, for each bucket of the plurality of buckets, a co-occurrence graph, the co-occurrence graph based upon co-occurrence of different keywords in same content items; and

extracting the proposed second query rule as a clique that is greater than or equal to a predetermined number from the co-occurrence graph of one of the plurality of buckets.

13. The method of claim 10 , wherein scoring the proposed second query rule comprises:

computing a precision for the first query rule based upon a tag quality of tags from a set of previously determined tags that are present in the second set of content items;

computing a precision for the proposed second query rule based upon a tag quality of tags from a set of previously determined tags that are present in the third set of content items; and

wherein the score for the proposed second query rule is calculated based upon the precision for the first query rule and the precision for the proposed second query rule.

14. The method of claim 13 , wherein scoring the proposed second query rule comprises:

computing a recall of the first query rule based upon tag quality of the first rule and tag quality of the proposed second query rule;

computing an F1 gain based upon the precision for the first query rule, precision for the proposed second query rule, and the recall of the first query rule;

computing a top-keyword retaining ability score of the proposed second query rule, the top-keyword retaining ability score measuring a similarity between keywords in the second and third sets of content; and

calculating the score based upon the F1 gain and the top-keyword retaining ability score.

15. The method of claim 10 , wherein the threshold score is a score of a next-highest scoring proposed rule.

16. A system for searching content items for content corresponding to an event, the system comprising:

one or more processors;

a memory communicatively coupled to the one or more processors and comprising instructions which when executed by the one or more processors, cause the system to perform the operations of:

determining a first query rule, the first query rule related to the event;

obtaining from a content repository a first set of one or more content items;

determining a second set of content items comprising content items from the first set that match the first query rule;

determining a proposed second query rule based upon co-occurrences of terms in the second set of content items;

determining a third set of content items comprising content items from the first set that match the proposed second query rule;

scoring the proposed second query rule, the score based upon a tag quality score of tags in the second and third sets of content items;

adding the proposed second query rule to the first query rule based upon determining that the score is over a threshold score; and

providing the third set of content items to a requester.

17. The system of claim 16 , wherein the first set of one or more content items are microblog messages, and wherein the tags are hashtags.

18. The system of claim 16 , wherein the first query rule is received over a computer network, and wherein the operations of obtaining from the content repository the first set of one or more content items comprises sending a message over the computer network to the content repository.

19. The system of claim 16 , wherein the first query rule is received over a computer network, and wherein the operations of obtaining from the content repository the first set of one or more content items is performed without traversing an Internet backbone.

20. The system of claim 16 , wherein the threshold score is a score of a next-highest scoring proposed rule.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2017
From: AGARWAL, MANOJ KUMAR; GUPTA, MANISH; OJHA, AMBUJ PUSHKAR
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 042441/0815 →
Continuity (1)
Related Publication 20180336278A1 · Nov 22, 2018