IP Library Granted Patent US 7,636,713
Granted Patent B2
US 7,636,713 · App. 11/729,203 · Granted Dec 22, 2009

Using activation paths to cluster proximity query results

Assignee: Yahoo! Inc.
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 7,636,713
App. No.
11/729,203
Granted
Dec 22, 2009
Kind
B2
Abstract

A search engine finds and ranks information in clusters so a user can select information listed in search results that are closer to his information needs. To do so, the search engine receives a proximity query and executes it against an entity-relationship graph. The search engine finds those entities in the graph that have similar relationships between nodes. For example, two entities in a graph may be connected to entirely different nodes, but they may connect to those different nodes using similarly labeled paths. The search engine identifies the relationship between the nodes, clusters entities that are connected by similar relationships, and presents the clustered information to the user as part of the search results. In this way, the search engine provides a user with a results from which the user can select the group of results that most closely match his information need.

Claims (63)

1. A method for displaying search results to a user comprising:

receiving, by a search engine, user input to perform a proximity query on a graph, wherein said graph includes one or more nodes and one or more edges;

wherein said proximity query specifies (a) a particular node type, and (b) a predicate clause;

executing, by the search engine, the proximity query, by:

generating a set of candidate result nodes that match said particular node type,

generating a set of activator nodes that satisfy said predicate clause, and

computing an activation value for each candidate result node, wherein said activation value reflects a relative importance of the candidate result node with respect to a particular activator node from said set of activator nodes;

generating, by the search engine, a set of result clusters that include one or more result nodes from said set of candidate result nodes, wherein a result cluster is identified by a path to at least one activator node in said set of activator nodes;

ranking, by the search engine, said one or more result nodes in said result clusters based on the activation value of each of the one or more result nodes in said result clusters; and

based on the ranking, displaying to a user a representation of said result clusters;

wherein the step of executing the proximity query is performed by one or more computing devices.

2. The method of claim 1 , wherein executing the proximity query comprises:

assigning an initial activation value to each of the activator nodes in said set of activator nodes;

iterating over each of the activator nodes, calculating a neighbor activation value for a set of neighbor nodes of said activator node, wherein said neighbor activation value is based at least in part on the initial activation value of the activator node;

computing a total accrued activation value for each of said result nodes in the set of candidate result nodes;

wherein the total accrued activation value for each of said result nodes in the set of candidate result nodes is computed by iteratively adding the neighbor activation values for each of said neighbor nodes; and

ranking the set of result nodes based on the total accrued activation value.

3. The method of claim 1 , wherein generating the result clusters includes:

computing a path set activation value between at least one activator node and at least one result node in said set of candidate result nodes; and

for each path set activation value above a certain threshold:

determining at least one result cluster for the at least one result node; and

inserting the at least one result node in said at least one result cluster.

4. The method of claim 3 , further comprising labeling the result cluster by the common path type.

5. The method of claim 3 , wherein computing the activation path sets includes performing a breadth first algorithm.

6. The method of claim 5 , wherein the breadth first algorithm is limited to a fixed number of levels of exploration.

7. The method of claim 1 , wherein ranking, by the search engine, said one or more result nodes in said result clusters includes:

determining a score for each result node in said result cluster, wherein said score based on said path set activation value; and

sorting the result nodes based on said scores.

8. The method of claim 1 , wherein said result clusters are adjusted based on node prestige.

9. The method of claim 1 wherein:

the predicate clause comprises a particular keyword; and

the set of activator nodes satisfy the predicate clause by matching the particular keyword.

10. A machine-readable volatile or non-volatile storage medium for displaying search results to a user, the machine-readable storage medium storing instructions which, when processed by one or more processors, causes the one or more processors to perform:

receiving, by a search engine, user input to perform a proximity query on a graph, wherein said graph includes one or more nodes and one or more edges;

wherein said proximity query specifies (a) a particular node type, and (b) a predicate clause;

executing, by the search engine, the proximity query, by:

generating a set of candidate result nodes that match said particular node type,

generating a set of activator nodes that satisfy said predicate clause, and

computing an activation value for each candidate result node, wherein said activation value reflects a relative importance of the candidate result node with respect to a particular activator node from said set of activator nodes;

generating, by the search engine, a set of result clusters that include one or more result nodes from said set of candidate result nodes, wherein a result cluster is identified by a path to at least one activator node in said set of activator nodes;

ranking, by the search engine, said one or more result nodes in said result clusters based on the activation value of each of the one or more result nodes in said result clusters; and

based on the ranking, displaying to a user a representation of said result clusters.

11. The machine-readable storage medium of claim 10 , wherein executing the proximity query comprises:

assigning an initial activation value to each of the activator nodes in said set of activator nodes;

iterating over each of the activator nodes, calculating a neighbor activation value for a set of neighbor nodes of said activator node, wherein said neighbor activation value is based at least in part on the initial activation value of the activator node;

computing a total accrued activation value for each of said result nodes in the set of candidate result nodes;

wherein the total accrued activation value for each of said result nodes in the set of candidate result nodes is computed by iteratively adding the neighbor activation values for each of said neighbor nodes; and

ranking the set of result nodes based on the total accrued activation value.

12. The machine-readable storage medium of claim 10 , wherein generating the result clusters includes:

computing a path set activation value between at least one activator node and at least one result node in said set of candidate result nodes; and

for each path set activation value above a certain threshold:

determining at least one result cluster for the at least one result node; and

inserting the at least one result node in said at least one result cluster.

13. The machine-readable storage medium of claim 12 , further comprising labeling the result cluster by the common path type.

14. The machine-readable storage medium of claim 12 , wherein computing the activation path sets includes performing a breadth first algorithm.

15. The machine-readable storage medium of claim 14 , wherein the breadth first algorithm is limited to a fixed number of levels of exploration.

16. The machine-readable storage medium of claim 10 , wherein ranking, by the search engine, said one or more result nodes in said result clusters includes:

determining a score for each result node in said result cluster, wherein said score based on said path set activation value; and

sorting the result nodes based on said scores.

17. The machine-readable storage medium of claim 10 , wherein said result clusters are adjusted based on node prestige.

18. The machine-readable medium of claim 10 wherein:

the predicate clause comprises a particular keyword; and

the set of activator nodes satisfy the predicate clause by matching the particular keyword.

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 Mar 27, 2007
From: JADHAV, APURVA
To: YAHOO! INC.
Reel/Frame 019188/0480 →
Priority Claims (1)
IN 194/DEL/2007 · Jan 31, 2007 · national
Continuity (1)
Related Publication 20080183695A1 · Jul 31, 2008