IP Library Granted Patent US 6,873,996
Granted Patent B2
US 6,873,996 · App. 10/417,709 · Granted Mar 29, 2005

Affinity analysis method and article of manufacture

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 6,873,996
App. No.
10/417,709
Granted
Mar 29, 2005
Kind
B2
Abstract

A computer based method of organizing text items comprising: receiving a multiplicity of individual groups of text items; assigning respective unique integer item codes to respective individual text items from the multiplicity of individual groups; identifying pairs of text items from individual groups of the multiplicity of groups; ordering pairs of text items based upon the unique item codes assigned to individual text items of respective pairs of text items such that each respective pair has a respective unique order position relative to other pairs; providing in computer readable media a pair order information structure that stores respective associations between respective identified pairs and their respective unique order positions.

Claims (142)

1. A computer based method of organizing text items comprising:

receiving a multiplicity of individual groups of text items;

assigning respective unique integer item codes to respective individual text items from the multiplicity of individual groups;

identifying pairs of text items from individual groups of the multiplicity of groups;

ordering pairs of text items based upon the unique item codes assigned to individual text items of respective pairs of text items such that each respective pair has a respective unique order position relative to other pairs;

providing in computer readable media a pair order information structure that stores respective associations between respective identified pairs and their respective unique order positions.

2. The method of claim 1 , wherein ordering pairs of text items further includes:

identifying respective lower value item code values and higher value item code values assigned to respective individual text items of respective pairs;

identifying respective groups of pairs of text items having a prescribed one of identical lower value item codes assigned to respective individual text items or identical higher value item codes assigned to respective individual text items;

determining respective order positions of respective identified pairs by,

ordering the respective identified groups of pairs in a prescribed numerical order based upon the prescribed one of respective lower value item codes or higher value item codes assigned to respective individual text items of the respective groups of pairs; and

ordering respective pairs within respective groups of pairs in a prescribed numerical order based upon one of the lower value item codes or the higher value item codes assigned to respective text items of the pairs of the respective groups of pairs.

3. The method of claim 2 further including:

assigning respective unique integer pair code values to the respective pairs in a numerical order according to their respective order positions.

4. The method of claim 2 further including:

assigning respective unique integer pair code values to the respective pairs in a numerical order according to their respective order positions;

wherein the pair order information structure stores respective associations between respective identified pairs and their respective assigned unique pair code values.

5. The method of claim 1 further including:

providing in computer readable media an item code information structure that associates text items with assigned unique integer item codes.

6. The method of claim 2 further including:

providing in computer readable media an item code information structure that associates text items with assigned unique integer item codes; and

assigning respective unique integer pair code values to the respective pairs in a numerical order according to their respective order positions;

wherein the pair order information structure stores respective associations between respective identified pairs and their respective assigned unique pair code values.

7. The method of claim 1 , wherein ordering pairs of text items further includes:

identifying respective lower value item code values and higher value item code values assigned to respective individual text items of respective pairs;

identifying respective groups of pairs of text items having a prescribed one of identical lower value item codes assigned to respective individual text items or identical higher value item codes assigned to respective individual text items; and

determining respective order positions of respective identified pairs by,

ordering the respective identified groups of pairs in a prescribed numerical order based upon the prescribed one of respective lower value item codes or higher value item codes assigned to respective individual text items of the respective groups of pairs; and

ordering respective pairs within respective groups of pairs in a prescribed numerical order based upon the other of lower value item codes or the higher value item codes assigned to respective text items of the pairs of the respective groups of pairs.

8. The method of claim 6 ,

wherein the prescribed one is respective lower value item codes; and

wherein the other is the higher value item codes.

9. The method of claim 6 ,

wherein the prescribed one is respective higher value item codes; and

wherein the other is the lower value item codes.

10. The method of claim 1 , wherein ordering pairs of text items further includes:

identifying respective groups of pairs of text items having identical lower value item codes assigned to respective individual text items; and

determining respective order positions of respective identified pairs by,

ordering the respective identified groups of pairs in a prescribed numerical order based upon the respective lower value item codes assigned to respective individual text items of the respective groups of pairs; and

ordering respective pairs within respective groups of pairs in a prescribed numerical order based upon respective higher value item codes assigned to respective text items of the pairs of the respective groups of pairs;

assigning respective unique integer pair code values to the respective pairs in a numerical order according to their respective order positions;

wherein the pair order information structure stores respective associations between respective identified pairs and their respective assigned unique pair code values; and further including;

providing in computer readable media an item code information structure that associates text items with assigned unique integer item codes.

11. The method of claim 1 , wherein ordering pairs of text items further includes:

identifying respective lower value item code values and higher value item code values assigned to respective individual text items of respective pairs;

identifying respective groups of pairs of text items having a prescribed one of identical lower value item codes assigned to respective text items or identical higher value item codes assigned to respective text items; and

determining respective order positions of respective identified pairs by,

assigning respective unique integer pair code values to the pairs such that,

if the prescribed one is identical lower value item codes then,

each pair has an assigned pair code value that is greater than that of groups of pairs with lesser lower value item codes and that is less than that of groups of pairs with greater lower value item codes; and

each pair has an assigned pair code value that is greater than that of pairs in its group of pairs with lesser higher value item codes and that is less than that of pairs in its group of pairs with greater higher value item codes; and

if the prescribed one is identical higher value item codes then,

each pair has an assigned pair code value that is less than that of groups of pairs with greater higher value item codes and that is greater than that of groups of pairs with lesser higher value item codes; and

each pair has an assigned pair code value that is less than that of pairs in its group of pairs with greater lower value item codes and that is greater than that of pairs in its group of pairs with lesser lower value item codes.

12. The method of claim 1 , wherein ordering pairs of text items further includes:

identifying respective lower value item code values and higher value item code values assigned to respective individual text items of respective pairs;

identifying respective lower value item code values and higher value item code values assigned to respective individual text items of respective pairs;

identifying respective groups of pairs of text items having identical lower value item codes assigned to respective text items;

assigning unique integer pair code values to the pairs such that,

each pair has an assigned pair code value that is greater than that of groups of pairs with lesser lower value item codes and that is less than that of groups of pairs with higher lower value item codes; and

each pair has an assigned pair code value that is greater than that of pairs in its group of pairs with lesser higher value item codes and that is less than that of pairs in its group of pairs with greater higher value item codes.

13. The method of claim 1 wherein ordering pairs of text items further includes:

performing a mathematical computation that determines respective unique order positions of respective pair codes based upon respective unique item codes assigned to respective individual text items of respective pairs.

14. The method of claim 1 ,

wherein ordering pairs of text items further includes performing a mathematical computation that determines respective unique order positions of respective pair codes based upon respective unique item codes assigned to respective individual text items of respective pairs; and

wherein the pair order information structure stores respective associations between respective identified pairs and their respective determined unique pair code values.

15. The method of claim 1 ,

wherein receiving includes receiving the multiplicity of individual groups of text items from a computer network.

16. A computer based method of organizing text items comprising:

receiving a multiplicity of individual groups of text items;

assigning respective unique integer value item codes to respective individual text items from the multiplicity of individual groups;

providing in computer readable media an item code information structure that associates text items with assigned unique integer item codes;

identifying pairs of text items from individual groups of the multiplicity of groups;

determining respective order positions of respective identified pairs by,

ordering the respective identified groups of pairs in a prescribed numerical order based upon the prescribed one of respective lower value item codes or higher value item codes assigned to respective individual text items of the respective groups of pairs; and

ordering respective pairs within respective groups of pairs in a prescribed numerical order based upon one of the lower value item codes or the higher value item codes assigned to respective text items of the pairs of the respective groups of pairs;

assigning respective unique integer pair code values to the respective pairs in a numerical order according to their respective order positions; and

providing in computer readable media a pair order information structure that stores respective associations between respective identified pairs and their respective pair code values.

17. A computer based method of organizing text items comprising:

receiving a multiplicity of individual groups of text items;

assigning respective unique integer item codes to respective individual text items from the multiplicity of individual groups;

providing in computer readable media an item code information structure that associates text items with assigned unique integer value item codes;

identifying pairs of text items from individual groups of the multiplicity of groups;

ordering pairs of text items by performing a mathematical computation that determines respective unique order positions of respective pair codes based upon respective unique item codes assigned to respective individual text items of respective pairs; and

providing in computer readable media a pair order information structure that stores respective associations between respective identified pairs and their respective determined unique pair code values.

18. An article of manufacture comprising:

a computer readable medium encoded with,

an item count information structure that stores respective counts of occurrences of each of a multiplicity of respective items in a multiplicity of groupings of items;

a code assignment information structure that associates respective items with respective unique integer item codes; and

a pair count information structure that stores respective pair counts that indicate respective numbers of occurrences of each of a multiplicity of respective item pairs in one or more of the multiplicity of groupings of items;

wherein respective pair counts are respectively stored in the pair count information structure at locations indexed by respective pair codes computed from respective item codes associated in the item code information structure with respective constituent items of respective item pairs.

19. An article of manufacture comprising:

a computer readable medium encoded with,

an item count information structure that stores respective counts of occurrences of each of a multiplicity of respective items in a multiplicity of groupings of items;

a code assignment information structure that stores respective associations of respective items with respective unique integer item codes;

computer program code for performing a pair code computation process that computes respective unique integer value pair codes for respective pairs of items within one or more of the respective multiplicity of groupings using respective unique item codes associated in the code assignment information structure; and

a pair count information structure that stores respective associations of respective pair codes with respective counts of occurrences of each of a multiplicity of respective pairs of items in individual ones of the multiplicity of groupings of items.

20. The article of manufacture of claim 19 ,

wherein the item count information structure stores respective counts of occurrences of each of a multiplicity of respective items in individual ones of a multiplicity of groupings of items.

21. The article of manufacture of claim 19 ,

wherein the item count information structure includes an item count hash table; and

wherein the pair count information structure includes a pair count hash table.

22. The article of manufacture of claim 19 ,

wherein the item count information structure and the code assignment information structure are combined in one information structure.

23. The article of manufacture of claim 19 ,

wherein the pair count information structure stores respective associations of respective pair codes with respective counts in a prescribed numerical order based upon pair code integer values.

24. The article of manufacture of claim 19 ,

wherein the pair count information structure stores respective associations of respective pair codes with respective counts in a prescribed sequential numerical order based upon pair code integer values.

25. The article of manufacture of claim 19 ,

wherein the computer readable medium is further encoded with,

an affinity determination process for determining an affinity between a selected pair of items from the multiplicity of groupings of items by comparing a count associated by the item count information structure with one of the items of the selected pair with a count associated by the pair count information structure with the selected pair.

26. A method of determining an affinity between text items comprising:

providing in computer readable media an item count information structure that stores respective counts of occurrences of each of a multiplicity of respective items in individual ones of a multiplicity of groupings of items;

providing in computer readable media a item code assignment information structure that stores respective associations of respective items with respective unique integer item codes;

providing in computer readable media a pair count information structure that stores respective associations of respective unique integer value pair codes with respective counts of occurrences of each of a multiplicity of respective pairs of items in one or more of the multiplicity of groupings of items;

designating a pair of items consisting of two text items;

determining two item codes for the two designated text items of the designated pair using the item code assignment information structure;

computing a respective unique integer value pair code for the designated pair of text items of the designated pair using the determined two item codes;

determining an item count for at least a respective one of the two designated items of the designated pair using at least a respective one of the two determined item codes to search the item count information structure;

determining a pair count using the computed unique integer value pair code to search the pair count information structure; and

comparing the determined at least one item count with the determined pair code count.

27. The method of claim 26 ,

wherein the pair count information structure stores respective associations of respective unique integer value pair codes with respective counts in a prescribed sequential numerical order based upon pair code integer values.

28. The method of claim 26 ,

wherein the pair count information structure stores respective associations of respective unique integer value pair codes with respective counts in a prescribed sequential numerical order based upon pair code integer values; and

wherein determining the pair count involves scanning at least a portion of the pair count information structure in the prescribed sequential numerical order in search of a match to the computed unique integer value pair code.

29. A method of determining an affinity between text items comprising:

providing in computer readable media an item count information structure that stores respective counts of occurrences of each of a multiplicity of respective items in individual ones of a multiplicity of groupings of items;

providing in computer readable media a item code assignment information structure that stores respective associations of respective items with respective unique integer item codes;

providing in computer readable media a pair count information structure that stores respective associations of respective unique integer value pair codes with respective counts of occurrences of each of a multiplicity of respective pairs of items in one or more of the multiplicity of groupings of items;

designating a plurality of respective pairs of items consisting of two respective text items each;

respectively determining two respective item codes for each pair of two respective designated text items using the item code assignment information structure;

respectively computing respective unique integer value pair codes for each respective designated pair of text items using respective determined two item codes;

respectively determining respective item counts for respective one of respective two designated items for each respective pair using the respective one to search the item count information structure;

respectively determining respective pair counts for each respective pair using respective computed unique integer value pair codes to search the pair count information structure;

respectively comparing the respective determined at least one item count with the respective determined pair code count for each respective pair to produce respective individual affinities; and

comparing the individual affinities.

30. The method of claim 29 ,

wherein the pair count information structure stores respective associations of respective unique integer value pair codes with respective counts in a prescribed sequential numerical order based upon pair code integer values.

31. The method of claim 29 ,

wherein the pair count information structure stores respective associations of respective unique integer value pair codes with respective counts in a prescribed sequential numerical order based upon pair code integer values; and

wherein respectively determining respective pair counts involves respectively scanning at least a portion of the pair count information structure in the prescribed sequential numerical order in search of respective matches to respective computed unique integer value pair codes.

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 Apr 16, 2003
From: CHAND, JAGDISH
To: YAHOO! INC.
Reel/Frame 013983/0340 →
Continuity (1)
Related Publication 20040210600A1 · Oct 21, 2004