IP Library Granted Patent US 10,242,106
Granted Patent B2
US 10,242,106 · App. 14/574,221 · Granted Mar 26, 2019

Enhance search assist system's freshness by extracting phrases from news articles

Inventors: Hui Wu (Sunnyvale, CA); Shenhong Zhu (Santa Clara, CA); Kazuhiro Nakao (Sunnyvale, CA)
Assignee: Excalibur IP, LLC
G06F17/30867G06F17/3053G06F17/3064
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,242,106
App. No.
14/574,221
Granted
Mar 26, 2019
Kind
B2
Abstract

In one embodiment, a portion of a search query may be obtained from a client device. A set of suggested search queries may be obtained or generated from a plurality of phrases stored in memory, where the portion of the search query matches a portion of each suggested search query in the set of suggested search queries. The set of suggested search queries may be provided to the client device. The plurality of phrases may include phrases extracted from documents published via a network.

Claims (69)

1. A method, comprising:

extracting a first plurality of phrases from a plurality of documents published via the Internet;

for each of the first plurality of phrases, generating an importance score such that the importance score is stored in association with the corresponding one of the first plurality of phrases;

identifying a set of suggested phrases based, at least in part, upon the importance score associated with each of at least a subset of the first plurality of phrases, wherein the set of suggested phrases includes at least one of the first plurality of phrases, wherein identifying a set of suggested phrases includes:

for each of the first plurality of phrases, associating a boolean vector with the corresponding one of the first plurality of phrases, wherein the boolean vector includes a plurality of values, wherein each one of the plurality of values indicates whether the one of the first plurality of phrases appears in a corresponding one of the plurality of documents;

determining a correlation between pairs of phrases based, at least in part, on corresponding boolean vectors such that a correlation score for each of the pairs of phrases is generated, each pair of phrases including phrases from the first plurality of phrases; and

generating the set of suggested phrases based, at least in part, upon the correlation score for each of the pairs of phrases; and

providing the set of suggested phrases.

2. The method as recited in claim 1 , wherein the plurality of documents comprise news articles.

3. The method as recited in claim 1 , wherein extracting the first plurality of phrases comprises:

identifying at least one of entities, noun phrases, or verb phrases within the documents published via the Internet.

4. The method as recited in claim 1 , wherein generating the importance score for each of the first plurality of phrases comprises:

for each of the first plurality of phrases, ascertaining a number of the plurality of documents in which the one of the first one of the plurality of phrases occurs, wherein the importance score is generated or updated based, at least in part, upon the number of the plurality of documents in which the one of the first one of the plurality of phrases occurs.

5. The method as recited in claim 1 , wherein the importance score, for each of the first plurality of phrases, is generated or updated based, at least in part, upon at least one of an importance of documents in the plurality of documents in which the one of the first plurality of phrases occurs or a number of occurrences of the one of the first plurality of phrases in each of the documents in which the one of the first plurality of phrases occurs.

6. The method as recited in claim 1 , wherein determining a correlation between pairs of phrases based upon corresponding boolean vectors comprises:

for each of the pairs of phrases, calculating a cosine similarity between the corresponding boolean vectors such that the correlation score for the corresponding one of the pairs of phrases is generated.

7. The method as recited in claim 1 , further comprising:

receiving a portion of a search query;

wherein the set of suggested phrases is identified based, at least in part, upon the importance score associated with each phrase of the subset of the first plurality of phrases that includes the portion of the search query;

wherein the portion of the search query matches a portion of each suggested phrase in the set of suggested phrases.

8. The method as recited in claim 1 , further comprising:

identifying a second plurality of phrases from one or more search logs, wherein each of the second plurality of phrases includes at least a portion of a search query that was previously submitted via a search engine;

for each of the second plurality of phrases, obtaining an importance score such that the importance score is stored in association with the corresponding one of the second plurality of phrases, wherein the importance score for the corresponding one of the second plurality of phrases indicates a popularity of the one of the second plurality of phrases as a search query submitted via a search engine;

identifying the set of suggested phrases based, at least in part, upon the importance score associated with each of at least a subset of the second plurality of phrases, wherein the set of suggested phrases includes at least one of the second plurality of phrases.

9. The method as recited in claim 8 , wherein identifying a set of suggested phrases comprises:

combining two or more phrases such that a suggested phrase is generated, wherein the two or more phrases include at least one of the first plurality of phrases or one of the second plurality of phrases.

10. The method as recited in claim 8 , wherein the set of suggested phrases is further identified based, at least in part, upon the importance score associated with each phrase of the subset of the second plurality of phrases that includes the portion of the search query.

11. The method as recited in claim 1 , wherein the plurality of documents comprise blogs.

12. The method as recited in claim 1 , wherein an importance score such that the importance score is stored in association with the corresponding one of the first plurality of phrases comprises:

generating an importance score such that the importance score is stored in association with the corresponding one of the first plurality of phrases.

13. An apparatus, comprising:

a processor; and

a memory, at least one of the processor or the memory being configured to:

extract a first plurality of phrases from a plurality of documents published via a network;

for each of the first plurality of phrases, generate an importance score such that the importance score is stored in association with the corresponding one of the first plurality of phrases;

identify a set of suggested phrases based, at least in part, upon the importance score associated with each of at least a subset of the first plurality of phrases, wherein the set of suggested phrases includes one or more phrases from the first plurality of phrases, wherein identifying a set of suggested phrases includes:

for each of the first plurality of phrases, associating a boolean vector with the corresponding one of the first plurality of phrases, wherein the boolean vector includes a plurality of values, wherein each one of the plurality of values indicates whether the one of the first plurality of phrases appears in a corresponding one of the plurality of documents;

determining a correlation between pairs of phrases based, at least in part, on corresponding boolean vectors such that a correlation score for each of the pairs of phrases is generated, each pair of phrases including phrases from the first plurality of phrases; and

generating the set of suggested phrases based, at least in part, upon the correlation score for each of the pairs of phrases; and

provide the set of suggested phrases.

14. The apparatus as recited in claim 13 , wherein extracting the first plurality of phrases comprises:

identifying at least one of entities, noun phrases, or verb phrases within the documents published via the network.

15. The apparatus as recited in claim 13 , wherein generating the importance score for each of the first plurality of phrases comprises:

for each of the first plurality of phrases, ascertaining a number of the plurality of documents in which the one of the first one of the plurality of phrases occurs, wherein the importance score is generated or updated based, at least in part, upon the number of the plurality of documents in which the one of the first one of the plurality of phrases occurs.

16. The apparatus as recited in claim 13 , wherein the importance score, for each of the first plurality of phrases, is generated based, at least in part, upon at least one of an importance of documents in the plurality of documents in which the one of the first plurality of phrases occurs or a number of occurrences of the one of the first plurality of phrases in each of the documents in which the one of the first plurality of phrases occurs.

17. The apparatus as recited in claim 13 , wherein determining a correlation between pairs of phrases based upon corresponding boolean vectors comprises:

for each of the pairs of phrases, calculating a cosine similarity between the corresponding boolean vectors such that the correlation score for the corresponding one of the pairs of phrases is generated.

18. The apparatus as recited in claim 13 , wherein identifying a set of suggested phrases comprises:

combining two or more phrases such that a single suggested phrase is generated.

19. A method, comprising:

obtaining a portion of a search query received from a client device;

obtaining or generating a set of suggested search queries from a plurality of phrases stored in memory, wherein the portion of the search query matches a portion of each suggested search query in the set of suggested search queries, wherein the plurality of phrases include phrases extracted from a plurality of documents published via a network, wherein obtaining or generating a set of suggested search queries includes:

for each of the plurality of phrases, associating a boolean vector with the corresponding one of the plurality of phrases, wherein the boolean vector includes a plurality of values, wherein each one of the plurality of values indicates whether the one of the plurality of phrases appears in a corresponding one of the plurality of documents;

determining a correlation between pairs of phrases based, at least in part, on corresponding boolean vectors such that a correlation score for each of the pairs of phrases is generated, each pair of phrases including phrases from the plurality of phrases; and

generating the set of suggested phrases based, at least in part, upon the correlation score for each of the pairs of phrases; and

providing the set of suggested search queries to the client device, each suggested query of at least a portion of the set of suggested queries including at least one of the phrases extracted from the documents published via the network.

20. The method as recited in claim 19 , wherein the plurality of phrases further comprise phrases obtained from previously submitted search queries identified from a search log, wherein each suggested query in at least a portion of the set of suggested search queries includes at least one of the phrases obtained from the previously submitted search queries.

21. The method as recited in claim 19 , wherein obtaining or generating the set of suggested search queries is performed based, at least in part, upon an importance score associated with each of the plurality of phrases, wherein the importance score associated with each of the phrases extracted from the documents is generated based, at least in part, upon at least one of a number of the documents in which the phrase occurs, an importance of the documents in which the phrase occurs, or a number of occurrences of the phrase in each of the documents in which the phrase occurs.

22. The method as recited in claim 19 , wherein obtaining or generating the set of suggested search queries comprises:

combining two or more of the plurality of phrases such that a single suggested phrase is generated.

23. An apparatus, comprising:

a processor; and

a memory, at least one of the processor or the memory being configured to:

obtaining a portion of a search query received from a client device;

obtaining or generating a set of suggested search queries from a plurality of phrases stored in memory, wherein the portion of the search query matches a portion of each suggested search query in the set of suggested search queries, wherein the plurality of phrases include phrases extracted from a plurality of documents published via a network, wherein obtaining or generating a set of suggested search queries includes:

for each of the plurality of phrases, associating a boolean vector with the corresponding one of the plurality of phrases, wherein the boolean vector includes a plurality of values, wherein each one of the plurality of values indicates whether the one of the plurality of phrases appears in a corresponding one of the plurality of documents;

determining a correlation between pairs of phrases based, at least in part, on corresponding boolean vectors such that a correlation score for each of the pairs of phrases is generated, each pair of phrases including phrases from the plurality of phrases; and

generating the set of suggested phrases based, at least in part, upon the correlation score for each of the pairs of phrases; and

providing the set of suggested search queries to the client device, each suggested query of at least a portion of the set of suggested queries including at least one of the phrases extracted from the documents published via the network.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 053459/0059 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2014
From: WU, HUI; ZHU, SHENHONG; NAKAO, KAZUHIRO
To: YAHOO! INC.
Reel/Frame 034549/0719 →
Continuity (1)
Related Publication 20160179961A1 · Jun 23, 2016