USO0RE41899E

(19) United States (12) Reissued Patent

(10) Patent Number:

Rose et a]. (54)

US RE41,899 E

(45) Date of Reissued Patent:

Oct. 26, 2010

SYSTEM FOR RANKING THE RELEVANCE

5,541,638 A

7/1996 Story

OF INFORMATION OBJECTS ACCESSED BY COMPUTER USERS

5,576,954 A

11/1996 Driscoll

(Continued) (75) Inventors: Daniel E. Rose, Cupertino, CA (U S); Jeremy J. Bornstein, San Francisco, CA

FOREIGN PATENT DOCUMENTS

(US); Kevin Tiene, Cupertino, CA (US); Dulce B. Ponceleon, Palo Alto, CA (U S)

GB

2304489 A

(73) Assignee: Apple Inc., Cupertino, CA (US)

3/1997

OTHER PUBLICATIONS

_

MaltZ, D., “Distributing Information for Collaborative Fil

(21) Appl' NO" 10/388’362 (22) Filed; Man 12, 2003

tering on Usenet Net News,” May 1994, MS. Thesis, Mas sachusetts Institute of Technology, Cambridge, MA.

Related US. Patent Documents

(Continued)

Reissue of:

(64) §aten(t1_NO'z ssuel: '

_

$20210; 82 0 0 1 ar'

Primary ExamineriDonald Sparks



Assistant ExaminerAOmar F Fernandez Rivas

NO"

94

(74) Attorney, Agent, or FirmiFenwick & West LLP

(51) Int. Cl.

(57)

G06N 5/02

ABSTRACT

(2006-01)

Information presented to a user via an information access

(52)

US. Cl. .................... .. 706/46; 706/ 14; 707/ 999.003

degree of relevance to the user’s interests. A pro?le of inter

(58)

Field of Classi?cation Search .................. .. 706/ 45,

ests is stored for each user having access to the system. Items

706/ 46, 14; 707/3

of information to be presented to a user are ranked according

system is ranked according to a prediction of the likely

See application ?le for complete search history.

to their likely degree of relevance to that user and displayed

References Cited

in order of ranking. The prediction of relevance is carried out by combining data pertaining to the content of each item of information with other data regarding correlations of inter

(56)

US. PATENT DOCUMENTS 4,775,935 A

5,107,419 A

5,132,900 A 5,167,011 5,321,833 5,333,266 5,377,354

A A A A

2’:

i

,

4/1992 MacPhail

ests between users. A value indicative of the content of a document can be added to another value which de?nes user . . correlatlon, to produce a rank1ng score for a document.

7/1992 Gilchrist et al‘

Alternatively, multiple regression analysis or evolutionary

10/1988

11/ 1992 6/1994 7/ 1994 12/1994

Yourick

Priest Chang et a1. Ban et a1. Scannell et al~

programming can be carried out with respect to various fac tors pertaining to document content and user correlation, to generate a prediction of relevance. The user correlation data is obtained from feedback information provided by users

gazes ett a11~

,

ap an e

.

.

i

a

when they retrieve items of information. Preferably, the user ,

.

et al

5,504,896 A

4/1996 Schell et a1.

5,515,098 A

5/1996 Carles

CLIENT

E

.

.

.

.

.

.

prowdes an 1nd1cation of 1nterest in each document wh1ch he

or she retrieves from the system. 104 Claims, 4 Drawing Sheets

CLIENT

CLIENT

a

[:1

CI]

[:3

SERVER A, 70

72

US RE41,899 E Page 2

U.S. PATENT DOCUMENTS 5,583,763 5,616,876 5,619,709 5,704,017 5,721,827 5,724,567 5,749,081

A A A A A A A

12/1996 4/1997 4/1997 12/1997 2/1998 3/1998 5/1998

Atcheson et al. Cluts Caidet al. Heckerman et al. Logan et al. Rose etal. Whiteis

5,749,549 A

5/1998 Ashjaee

5,759,101 A

6/1998 Von Kohorn

5,790,935 A 5,835,087 5,848,396 5,931,901 5,945,988

A A A A

8/1998 Payton 11/1998 12/1998 8/1999 8/1999

Herz etal. Gerace Wolfe et al. Williams et al.

5,963,916 A

10/1999 Kaplan

6,018,738 6,266,649 6,453,302 7,117,516

1/2000 7/2001 9/2002 10/2006

A B1 B1 B2

Breese et al. Linden et al. Johnson et al. Khoo et al.

Goldberg, David et al., “Using Collaborative Filtering to Weave an Information Tapestry,” Communications of the

Association for Computer Machinery (Dec. 1992), vol. 35, No. 12, pp. 61470. Jacobs, Paul S. et al., “Scisor: Extracting Information From OniLine News,” Communications of the Association for

Computing Machinery (Nov. 1990), vol. 33, No. 11, pp. 88497. Jennings, Andrew et al., “A Personal News Service Based on a User Model Neural Network,” IEICE Transactions on

Information and Systems, (Mar. 1992), vol. E754D, No. 2, pp. 1984209.

Jennings, Andrew et al., “Customer Adaptive Communica tion Services,” IEEE Region 10 International Conference, (Nov. 11413, 1992), vol. 2, pp. 8864890. Kantardzic, M. et al., “Graphical Knowledge Based Elec tronic Mail System,” IEEE Conference (May 24, 1991), pp. 1 16541 168. Karlgren, Jussi, “Using Reader Data as a Basis for Measur

OTHER PUBLICATIONS

ing Document Proximity,” An Algebra for Recommenda tions (date unknown), pp. 149.

Resnick, P., et al., “GroupLens: An Open Architecture for Collaborative Filtering of Netnews,” Proceedings of the 1994 ACM Conference on Computer Supported Cooperative Work (CSCW), 1994, p. 1754186, ACM, New York, NY. Loeb, S., “Architecting Personalized Delivery of Multimedia Information,” Information Filtering, Communications of the ACM, Dec. 1992, pp. 3948, vol. 35, No. 12. Loeb, S., “Delivering Interactive Multimedia Documents Over Networks,” IEEE Communications Magazine, May

Malone, Thomas W. et al., “The Information Lens: An Intel

1992, pp. 52459.

Loeb, S., et al., “Lessons from Lyric?meTM: A Prototype Multimedia System,” Computer Communication Review, ADM SIGCOMM, 1992, pp. 35436. Loeb, S., et al., “Lessons from Lyric?meTM: A Prototype Multimedia System, Extended Abstract,” Bell Communica tons Research, Apr. 3, 1992, pp. 1064113. Yan, T.W. et al., “Index Structures for Information Filtering Under the Vector Space Model,” Stanford University, Nov. 8, 1993, pp. 1433.

Belew, Richard K., “Adaptive Information Retrieval: Using A Connectionist Representation To Retrieve And Learn About Documents,” 12th Int’l Conference on Research &

Development in IR (Jun. 1989), Boston, MA. Bookstein, Abraham, “Fuzzy Requests: An Approach To Weighted Boolean Searches,” Journal of the American Soci ety for Information Science (Jul. 1980), vol. 31, No. 4, pp. 24(L247.

Bussey, Howard E. et al., “Service Architecture, Prototype Description, And Network Implications Of A Personalized Information Grazing Service,” IEEE Infocom (1990), vol. 3, pp. 104641053.

Chang, ShihiChio et al., “AndiLess Retrieval Toward Per

fect Ranking,” Proceedings of the 50th ASIS Annual Meeting (Oct. 1987), vol. 24 pp. 3(L35. Chang, Shih£hio et al., “Towards A Friendly Adaptable Information Retrieval System,” Proceedings of the RIAO (Mar. 1988), pp. 1724182. Fischer, Gerhard et al., “Information Access in Complex, Poorly Structured Information Spaces,” CHI ’91 Proceed ings (Apr?May 1991), pp. 63470.

ligent System for Information Sharing in Organizations,” CHI ’86 Proceedings (Apr. 1986), pp. 148, Boston, MA. Mukhopadhyay, Uttam, et al., “An Intelligent System For Document Retrieval In Distributed Of?ce Environments,” Journal of the American Society for Information Science

(May 1986), vol. 37, No. 3, pp. 1234135. Reynolds, C.F., “OniLine Review: A New Application of the HICOM Conferencing System,” IEEE Colloquium on ‘Human Factors in Electronic Mail and Conferencing Sys

tems’, (Feb. 3, 1989), Digest No. 20, pp. 144. Rothman, Matt, “A New Music Retailing Technology says, ‘Listen Here’,” The New York Times (Sunday Jul. 4, 1993), pp. F849.

Salton, Gerard et al., “Extended Boolean Information

Retrieval,” Communications of the ACM (Nov. 1983), vol. 26, No. 11, pp. 102241036.

Savoy, Jacques, “Searching Information in Hypertext Sys tems Using Multiple Sources of Evidence,” International Journal fo ManiMedicine Studies (Jun. 1993), vol. 38, No. 6, pp. 101741030.

Sheth, Beerud et al., “Evolving Agents for Personalized Information Filtering,” Proceedings of the Ninth IEEE Con ference on Arti?cial Intelligence for Applications (Mar. 5, 1993), pp. 3454352. Spoerri, Anselm, “Visual Tools For Information Retrieval,” IEEE Conference (Aug. 27, 1993), pp. 1604168.

Stan?ll, Craig, “Massively Parallel Information Retrieval for Wide Area Information Servers,” IEEE International Confer

ence on Systems, Man, and Cybernetics (Oct. 13416, 1991), vol. 1, pp. 6794682.

Terry, Douglas B., “Replication In An Information Filtering System,” IEEE Conference (Nov. 13, 1992), pp. 66467. Wyle, M.F. et al., “A Wide Area Network Information Fil

ter,” IEEE Conference (Oct. 11, 1991), pp.1(¥15. “Announcement of Bellcore Video Rating System,” (Nov. 1,

1993). Scsior: Extracting information from online news by Jacobs P.S. et al. Communications of the association for computing

machinery, pp. 88497, Mar. 5, 1993. “Announcement of Bellcore Video Rating System”.

US RE41,899 E Page 3

Goldberg, David et al, “Using Collaborative Filtering to Weave an Information Tapestry”, Communications of the ACM, Dec. 1991, vol. 35, No. 12, pp. 61*70.

Stan?ll, Craig, “Massively Parallel Information Retrieval for Wide Area Information Servers”, IEEE, Aug. 1991, pp. 679*682.

Stan?ll, “Massively Parallel Information Retrieval for Wide Area Information Servers”, IEEE, Aug. 1991, pp. 679*682. B. Sheth et al., “Evolving Agents for Personalized Informa

tardZic, M. et al., IEEE conference paper. pp. 1165*1168,

tion Filtering”, Proceedings of the Ninth IEEE Conference

May 24,1919.*

on Arti?cial Intelligence for Applications, CAIA ’93, Orlando, Florida, Mar. ’93.

* cited by examiner

Graphical Knowledge based electronic mail system by Kan

US. Patent

Oct. 26, 2010

US RE41,899 E

Sheet 1 0f 4

CLIENT

CLIENT

CLIENT f 72

W 74 "\— 72

[:1]

SERVER SM

FIG. 1

FLEXIBLE MESSAGE SERVER 78

USER DB

MESSAGE DB

I ZZJ MESSAGES

FIG. 2

l

US. Patent

0a. 26, 2010

28 \,\_

Sheet2 0f4

US RE41,899 E

Your Messages from "Standard"

S‘core Date

Author

Title

jm {Fri 06/25.":

{

30 m IThu 09/30...I

I

@ 'nter Olympics Update

_

m irhu 08/05...:M:*W

1

m IThu 06/24...I~m|

32

m 1% 07/22...{M} m

lThu 10/07...|-—~r-l%

E

:Tue 05/03...{W { W

@

IWen 06/23...|N\ If WW

m m 09/30.":W :M rMon 07/79...|M 1M a We 07/27...{—¢\P gw

E

E

|Fri

8

'/

09/24...|m I M

:Thu 06/79...|W 07/08.":Wfrvv

B

r~26

1Fn'

3

FIG. 3 /

WINTER OLYMPICS UPDATE Author:

Date; Thu 09/30/1993 06:02:58 PM

36

> /

Subject: Winter Olympics Update

35

?

b (I)

4",40

2

WM Minm

M”34 Vs

\

'

3

FIG. 4

US. Patent

0a. 26, 2010

Sheet 3 0f4

US RE41,899 E

000 2 000 1

DOC 1

DOC 3

DOC 2

USER A 000 4

FIG. 5A

USERS

DOCS.

k

A Y N N Y ? N ? Y Y ?

FIG 5B

/“’ 4

2

DQWIB FIG. 6

0.66

0.00 0.33 —0.33 0.66 — 7.00

)

US. Patent

Oct. 26, 2010

Sheet 4 0f4

US RE41,899 E

Your Messages from "Movie Recommendation” Title

llo

Jagged Edge Sea of Love D.0.A.

The Eye of the Needle Dave Sleepless in Seattle Lost in America

Mephisto Melvin and Howard Heat and Dust

One Against the Wind Flashdance Duel In the Line of Fire

Boxing Helena Indecent Proposal A River Runs Through It

Cliffhanger Joe Versus the Volcano

Not Without My Daughter Fat Man and Little Boy

Runaway Train Ordeal by Innocence

Cujo THX 7758 The River ‘ _ Black Rain

FIG. 7

US RE41,899 E 1

2

SYSTEM FOR RANKING THE RELEVANCE OF INFORMATION OBJECTS ACCESSED BY COMPUTER USERS

of interest on the basis of cryptic titles. As a result, an oppor

tunity to view documents that are critically relevant may be missed if the user cannot take the time to view all documents

in the category. Along similar lines, in a text retrieval system, a broadly

Matter enclosed in heavy brackets [ ] appears in the original patent but forms no part of this reissue speci?ca

framed query can result in the identi?cation of a large num ber of documents for the user to view. In an effort to reduce

tion; matter printed in italics indicates the additions made by reissue. More than one reissue application has been ?led for the reissue of US. Pat. No. 6,202,058: the reissue applications are application Ser. No. 10/388,362 (the present

the number of documents, the user may modify the query to narrow its scope. In doing so, however, documents of inter est may be eliminated because they do not exactly match the modi?ed query. In the past, some information access systems, particularly e-mail systems, have provided the user with the ability to

application)?led on Mar. 12, 2003, (ii) application Ser. No. 11/499,819 (now abandoned)?led on Aug. 3, 2006 which is a divisional reissue application of application Ser. No.

have incoming information ?ltered, so that only items of

10/388,362, and (iii) application Ser. No. 11/499,820 (now

interest would be presented to the user. The ?ltering was

abandoned)?led on Aug. 3, 2006 which is also a divisional

carried out on the basis of objective criteria speci?ed by the user. Any messages not meeting the ?ltering criteria would be blocked. There is always the danger in such an objective approach that potentially relevant items of information can be missed. It is desirable, therefore, to employ a system for predicting the likely relevance of items of information to a

reissue application ofapplication Ser. No. 10/388,362. FIELD OF THE INVENTION The present inversion is directed to information access in multiuser computer systems, and more particularly to a sys

20

particular user, so that the items of interest can be ranked and the need to deal with large amounts of irrelevant information

tem for ranking the relevance of information that is accessed via a computer.

BACKGROUND OF THE INVENTION

can be avoided. 25

The use of computers to obtain and/ or exchange informa

examined to make a determination as to whether a user

tion is becoming quite widespread. Currently, there are three prevalent types of systems that can be employed to distribute information via computers. One of these systems comprises electronic mail, also known as e-mail, in which a user receives messages, such as documents, that have been spe ci?cally sent to his or her electronic mailbox. Typically, to receive the documents, no explicit action is required on the user’s part, except to access the mailbox itself. In most systems, the user is informed whenever new messages have been sent to his or her mailbox, enabling them to be read in a

might ?nd that document to be of interest, based on user

supplied information. While approaches of this type have 30

some utility, they are limited because the prediction of rel evance is made only on the basis of one attribute, e.g., word

content. It is desirable to improve upon existing relevance predicting techniques, and provide a system which takes into account a variety of attributes that are relevant to a user’s 35

likely interest in a particular item of information. In this regard, it is particularly desirable to provide an information

relevance predicting technique which utilizes community

timely fashion.

feedback as one of the factors in the prediction.

Another medium that is used to distribute information is an electronic bulletin board system. In such a system, users can post documents or ?les to directories corresponding to

Some types of relevance predictors have already been pro posed. For example, the contents of a document can be

SUMMARY OF THE INVENTION

40

In accordance with the present invention, information to

speci?c topics, where they can be viewed by other users who need not be explicitly designated. In order to view the documents, the other users must actively select and open the directories containing topics of interest. Articles and other items of information posted to bulletin board systems typi cally expire after some time period, and are then deleted. The third form of information exchange is by means of text retrieval from static data bases, which are typically

45

accessed through dial-up services. A group of users, or a service bureau, can place documents of common interest on

50

be presented to a user via an information access system is

ranked according to a prediction of the likely degree of rel evance to the user’s interests. A pro?le of interests is stored for each user having access to the system. Using this pro?le, items of information to be presented to the user, e.g., mes sages in an electronic mail network or documents within a

particular bulletin board category, are ranked according to their likely degree of relevance and displayed with an indica tion of their relative ranking. For example, they can be dis played in order of rank.

a ?le server. Using a text searching tool, individual users can

The prediction of relevance is carried out by combining

locate documents matching a speci?c topical query. Some

data pertaining to one or more attributes of each item of

services of this type enable users to search personal

information with other data regarding correlations of inter

databases, as well as databases of other users. 55 ests between users. For example, a value indicative of the content of a document can be added to another value which As the use of these types of systems becomes ever more common, the amount of information presented to users can de?nes user correlation, to produce a ranking score for a

reach the point of becoming unmanageable. For example,

document. Other information evaluation techniques, such as

users of electronic mail services are increasingly ?nding that they receive more mail than they can usefully handle. Part of this problem is due to the fact that junk mail of no particular interest is regularly sent in bulk to lists of user accounts. In order to view messages of interest, the user may be required to sift through a large volume of undesirable mail.

multiple regression analysis or evolutionary programming,

Similarly, in bulletin board systems, the number of docu ments in a particular topical category at any given time can be quite signi?cant. The user must try to identify documents

60

can alternatively be employed to evaluate various factors pertaining to document content and user correlation, and

thereby generate a prediction of relevance. The user correlation data is obtained through feedback

information provided by users when they retrieve items of 65

information. Preferably, the user provides an indication of interest in each document which he or she retrieves from the

system.

US RE41,899 E 4

3 The relevance predicting technique of the present inven

illustrated in FIG. 1. The speci?c hardware arrangement does not form part of the invention itself. Rather, it is

tion is applicable to all different types of information access systems. For example, it can be employed to ?lter messages

described herein to facilitate an understanding of the manner

provided to a user in an electronic mail system and search results obtained through an on-line text retrieval service.

Similarly, it can be employed to route relevant documents to

in which the features of the invention interact with the other components of an information access system. The illustrated architecture comprises a client-server arrangement, in which

users in a bulletin board system.

a database of information is stored at a server computer 10,

and is accessible through various client computers 12, 14.

The foregoing features of the invention, as well as the

The server 10 can be any suitable micro, mini or mainframe

advantages offered thereby, are explained in greater detail hereinafter with reference to exemplary implementations illustrated in the accompanying drawings.

computer having su?icient storage capacity to accommodate all of the items of information to be presented to users. The client computers can be suitable desktop computers 12 or

portable computers 14, e.g., notebook computers, having the

BRIEF DESCRIPTION OF THE DRAWINGS

ability to access the server computer 10. Such access might be provided, for example, via a local area network or over a

FIG. 1 is a general diagram of the hardware architecture

wide area through the use of modems, telephone lines, and/

of one type of information access system in which the

or wireless communications. Each client computer is associated with one or more users of the information access system. It includes a suitable com munication program that enables the user to access messages

present invention can be implemented; FIG. 2 is a block diagram of an exemplary software archi tecture for a server program;

FIG. 3 is an example of an interface window for present

20

ing a sorted list of messages to a user;

FIG. 4 is an example of an interface window for present

stored at the server machine. More particularly, the client program may request the user to provide a password or the like, by means of which the user is identi?ed to the server machine. Once the user has been identi?ed as having autho rized access to the system, the client and server machines

ing the contents of a message to a user; FIG. 5A is a graph of content vectors for two documents 25 exchange information through suitable communication pro in a two-term space; tocols. FIG. 5B is a graph of user pro?le vectors in a two-term One particular type of information access system in which

space;

the present can be utilized is described in detail hereinafter.

FIG. 6 illustrates the generation of a correlation chart; and FIG. 7 is an example of an interface window for a movie

30

invention are not limited to this particular embodiment. The general architecture of a server program for an infor

recommendation database.

mation access system is illustrated in block diagram form in FIG. 2. Referring thereto, at the highest level the server pro

DETAILED DESCRIPTION

To facilitate an understanding of the principles of the present invention, they are described hereinafter with refer

35 gram contains a message server 16. The message server car

ries out communications with each of the clients, for example over a network, and retrieves information from two

ence to the implementation of the invention in a system hav

ing multiple personal computers that are connected via a network. It will be appreciated, however, that the practical applications of the invention are not limited to this particular environment. Rather, the invention can ?nd utility in any situation which provides for computer access to information.

databases, a user database 18 and a message database 20. 40

and to users of the database. In addition, the message data base has associated therewith an index 24, which provides a

representation of each of the stored messages 22, for 45

neous access to the same computer.

The present invention can be employed in various kinds of information access systems, such as electronic mail, bulletin

board, text search and others. Depending upon the type of system, a variety of different types of information might be

50

available for access by users. In addition to more conven

tional types of information that are immediately interpret able by a person, such as text, graphics and sound, for example, the accessible information might also include data and/ or software objects, such as scripts, rules, data objects in an object-oriented programming environment, and the like. For ease of understanding, in the following description, the

The user database 18 contains a pro?le for each of the sys tem’s users, as described in greater detail hereinafter. The

message database contains stored messages 22 supplied by

For example, it is equally applicable to other types of mul tiuser computer systems, such as mainframe and mini computer systems in which many users can have simulta

It will be appreciated that this description is for exemplary purposes only, and that the practical applications of the

example its title. The index can contain other information pertinent to the stored messages as well. In the operation of the system, when a user desires to retrieve messages, the user accesses the system through the client program on one of the client machines 12, 14. As part of the access procedure, the user may be required to log into the system. Through the use of a password or other appropri

ate forrn of identi?cation, the user’s identity is provided to

55

the server 10, which acknowledges the user’s right to access the system or disconnects the client machine if the user has not been authorized. When the access procedure is successful, the message server 16 on the server machine

retrieves the user’s pro?le from the user database 18. This pro?le is used to rank the messages stored within the system.

term “message” is employed in a generic manner to refer to

each item of information that is provided by and accessible hended by the person receiving it. A message, therefore, can

The particular information within the user’s pro?le is based upon a ranking technique that is described in detail hereinaf ter. Once the user’s pro?le is retrieved, all of the messages to

be a memorandum or note that is addressed from one user of

be provided to the user are ranked on the basis of a predicted

an electronic mail system to another, a textual and/or graphi cal document, or a video clip. A message can also be a data structure or any other type of accessible information. One example of a hardware architecture for an informa

degree of relevance to the user. For example, in an e-mail system, all of the messages addressed to that user are ranked. Those messages which are particularly pertinent to the user’s interests are highly ranked, whereas junk mail mes sages are given a low ranking.

to users, whether or not its contents can be readily compre

tion access system implementing the present invention is

60

65

US RE41,899 E 5

6

A list of the ranked messages is provided to the client program, which displays some number of them through a suitable interface. Preferably, the messages are sorted and

cates his or her degree of interest in the message. When one of the icons is selected, the window is closed and the mes

sage disappears from the screen. With this approach, each time a message is retrieved, feedback information regarding the user’s degree of interest is obtained, to thereby maintain an up-to-date pro?le for the user. Depending upon the particular information access system

displayed in order from the highest to the lowest ranking. One example of such an interface is illustrated in FIG. 3. Referring thereto, the interface comprises a window 26 con taining a number of columns of information. The left hand column 28 indicates the relative ranking score of each message, for example in the form of a horizontal thermometer-type bar 30. The remaining columns can con tain other types of information that may assist the user in determining whether to retrieve a particular message, such

that is being used, the type of information presented to the user may vary. In the embodiment illustrated in FIGS. 1 and 2, all items of information available to users can be stored in

a single database 22. If desired, multiple databases directed to speci?c categories of information can be provided. For example, a separately accessible database of movie descrip

as the date on which the message was posted to the system,

the message’s author, and the title of the message. The infor mation that is displayed within the window can be stored as

tions can be provided, to make movie recommendations to users. Each separate database can have its own pro?le for

part of the index 24. If the number of messages is greater than that which can be displayed in a single window, the

users who access that database. Thus, each time a user sees a

movie, he or she can record his or her reaction to it, e.g., like or dislike. This information is used to update the user’s pro ?le for the movie database, as well as provide information to

window can be provided with a scroll bar 32 to enable the user to scroll through and view all of the message titles.

Other display techniques can be employed in addition to,

20

rank that movie for viewing by other users whose interests in

or in lieu of, sorting the messages in order of rank. For

movies are similar or opposed. An example of a user inter

example, the color, size and/or intensity of each displayed

face for presenting this information is shown in FIG. 7. Referring thereto, it can be seen that the title of each movie is accompanied by a recommendation score 46. This particu lar example also illustrates a different technique for quanti

message can be varied in accordance with its predicted rel evance.

When the user desires to view any particular message, the

25

desired message is selected within the window, using any

fying the relevance ranking of each item. Speci?cally, the

suitable technique for doing so. Once a message has been selected by the user, the client program informs the server 10 of the selected message. In response thereto, the server retrieves the complete text of the message from the stored

be more desirable for certain types of information, for example, to provide a clearer indication that the viewer will probably dislike certain movies. The values that are used for

scores 46 are negative as well as positive. This approach may

30

?le 22, and forwards it to the client, where it is displayed.

the ranking display can be within any arbitrarily chosen

An example of an interface for the display of a message is illustrated in FIG. 4. Referring thereto, the message can be displayed in an appropriate window 34. The contents of the

range.

message, e.g., its text, is displayed in the main portion of the window. Located above this main portion is header 36 which contains certain information regarding the message. For

Traditionally, the ranking of messages was based only on the content of the messages. In accordance with the present 35

combining data based upon an attribute of the message, for

example its content, with other data relating to correlations

example, the header can contain the same information as

provided in the columns shown in the interface of FIG. 3, i.e., author, date and title. Located to the right of this infor

40

mation are two icons which permit the user to indicate his or

her interest in that particular message. If the user found the message to be of interest, a “thumbs-up” icon 38 can be selected. Alternatively, if the message was of little of no

45

interest to the user, a “thumbs-down” icon 40 can be

selected. When either of these two icons is selected, the indi cation provided thereby is forwarded to the server 10, where it is used to update the user pro?le. In the example of FIG. 4, the user is provided with only

invention, however, the ranking of messages is carried out by of indications provided by users who have retrieved the mes sage. To derive the content-based data, certain elements of the message, e.g., each word in a document, can be assigned a weight, based on its statistical importance. Thus, for example, words which frequently occur in a particular lan guage are given a low weight value, while those which are

rarely used have a high weight value. The weight value for each term is multiplied by the number of times that term occurs in the document. Referring to FIG. 5A, the results of this procedure is a vector of weights, which represents the content of the document.

50

For non-document types of information, the content data

two possible selections for indicating interest, i.e., “thumbs

can be based upon other attributes that are relevant to a

up” or “thumbs-down”, resulting in very coarse granularity

user’ s interest in that information. For example, in the movie database, the content vector might take into account the type of movie, such as action or drama, the actors, its viewer

for the indication of interest. If desired, ?ner resolution can

be obtained by providing additional options for the user. For example, three options can be provided to enable the user to

55

indicate high interest, mediocre interest, or minimal interest. Preferably, in order to obtain reliable information about each user, it is desirable to have the user provide an indica

tion of degree of interest for each message which has been

retrieved. To this end, the interface provided by the client program can be designed such that the window 34 contain ing the content of the message, as illustrated in FIG. 4, can not be closed unless one of the options is selected. More particularly, the window illustrated in FIG. 4 does not include a conventional button or the like for enabling the window to be closed. To accomplish this function, the user is required to select one of the two icons 38 or 40 which indi

60

category rating, and the like. The example of FIG. 5A illustrates a two-dimensional vector for each of two documents. In practice, of course, the vectors for information content would likely have hundreds or thousands of dimensions, depending upon the number of terms that are monitored. For further information regarding

the computation of vector models for indexing text, refer ence is made to Introduction To Modern Information

Retrieval by Gerald Salton and Michael J. McGill (McGraw Hill 1983), which is incorporated herein by reference. 65

Each user pro?le also comprises a vector, based upon the user’s indications as to his or her relative interest in previ ously retrieved documents. Each time a user provides a new

US RE41,899 E 7

8

response to a retrieved message, the pro?le vector is modi ?ed in accordance with the results of the indication. For example, if the user indicates interest in a document, all of

to rank the relevance of each item of information. For example, a weighted sum of scores that are obtained from

each of the content and correlation predictors can be used, to determine a ?nal ranking score. Other approaches which take into account both the attribute-based information and user correlation information can be employed. For example,

the signi?cant terms in that document can be given increased

weight in the user’s pro?le. Each user in the system will have at least one pro?le, based upon the feedback information received each time the user accesses the system. If desirable, a single user might

multiple regression analysis can be utilized to combine the various factors. In this approach, regression methods are employed to identify the most important attributes that are

have two or more different pro?les for different task con

used as predictors, e.g., salient terms in a document and users having similar feedback responses, and how much each one should be weighted. Alternatively, principal com

texts. For example, a user might have one pro?le for work related information and a separate pro?le for messages per

taining to leisure and hobbies. One factor in the prediction of a user’s likely interest in a particular piece of information can be based on the similarity between the document’s vector and the user’s pro?le vector.

ponents analysis can be used to identify underlying aspects of content-based and correlation-based data that predict a score.

As another example, evolutionary programming tech

For example, as shown in FIG. SE, a score of a document’s

niques can be employed to analyze the available data regard

relevance can be indicated by the cosine of the angle between the document’s vector and the user’s pro?le vector.

ing content of messages and user correlations. One type of

A document having a vector which is close to that of the

user’s pro?le will be highly ranked, whereas those which are signi?cantly different will have a lower ranking.

20

and user correlation are provided as a set of primitives. The various types of data are combined in different manners and

A second factor in the prediction of a user’s interest in information is based upon a correlation with the indications

evaluated, until the combination which best ?ts known

provided by other users. Referring to FIG. 6, each time a user retrieves a document and subsequently provides an indi cation of interest, the result can be stored in a table 42. From this table, a correlation matrix R can be generated, whose

entries indicate the degree of correlation between the various users’ interests in commonly retrieved messages. More precisely, element RU- contains a measure of correlation between the i-th user and the j-th user. One example of such

25

results is found. The result of this combination is a program that describes the data which can best be used to predict a

given user’s likely degree of interest in a message. For fur

ther information regarding genetic programming, reference is made to Koza, John R., Genetic Programming: On The 30

Programming of Computers By Means of Natural Selection, MIT Press 1992.

In a more speci?c implementation of evolutionary

a matrix is the correlation matrix illustrated at 44 in FIG. 6.

In this example, only the relevant entries are shown. That is, the correlation matrix is symmetric, and the diagonal ele ments do not provide any additional information for ranking

evolutionary programming that is suitable in this regard is known as genetic programming. In this type of programming, data pertaining to the attributes of messages

programming, the analysis technique known as genetic algo 35

rithms can be employed. This technique differs from genetic programming by virtue of the fact that pre-de?ned param eters pertaining to the items of information are employed, rather than more general programming statements. For example, the particular attributes of a message which are to be utilized to de?ne the prediction formula can be estab

purposes. Subsequently, when a user accesses the system, the feed back table 42 and the correlation matrix 44 are used as another factor in the prediction of the likelihood that the user

lished ahead of time, and employed in the algorithms. For further information regarding this technique, reference is made to Goldberg, David E., Genetic Algorithms in Search,

will be interested in any given document. As one example of an algorithm that can be used for this purpose, a prediction

score, Pi]- for the i-th user regarding the j-th document, can be

Optimization and Machine Learning, Addison-Wesley 1989.

computed as: 45

Pij = z Rikaj

In addition to content and correlation scores, other attributes can be employed. For example, event times can be

used in the ranking equation, where older items might get lower scores. If a message is a call for submitting papers to a

where Rik is the correlation of users i and k, the Vlg- is the weight indicating the feedback of user k on document j.

conference, its score might rise as the deadline approached, then fall when it had passed. These various types of data can 50

be combined using any of the data analysis techniques described previously, as well as any other well-known analy

Thus, for the corresponding data in FIG. 6, the prediction

sis technique.

score for User C regarding Document 1 is as follows:

From the foregoing, it can be seen that the present inven 55

tion provides a system for ranking information which is not based on only one factor, namely content. Rather, a determi

In this formula, each parenthetical product pertains to one of the other users, i.e., A, B and D, respectively. Within each product, the ?rst value represents the degree of correlation

nation is made on the basis of a combination of factors. In a

between the other user and the current user in question, as

individual can bene?t from the experiences of others. A user

indicated by the matrix 44. The second value indicates whether the other user voted favorably (+1) or negatively (—1) after reading the document, as indicated in the table 42. The values of +1 and —l are merely exemplary. Any suitable range of values can be employed to indicate various users’ interests in retrieved items of information. In accordance with the invention, a combination of

attribute-based and correlation-based prediction is employed

preferred implementation, the present invention provides for social interaction within the community of users, since each 60

who has written about a particular topic is more likely to have other messages relating to that same topic presented to him or her, without awareness of the authors of these other items of information. The invention takes advantage of the fact that a commu

65

nity of users is participating in the presentation of informa tion to users. In current systems, if a large number of readers each believe a message is signi?cant, any given user is no

US RE41,899 E 9

10 11. The method of claim 9 wherein said evolutionary pro

more likely to see it than any other message. Conversely, the

gramming technique comprises genetic algorithms.

originator of a relatively uninteresting idea can easily broad cast it to a large number of people, even though they may

12. The method of claim 1 wherein said information access system is an electronic mail system, and said method

have no desire to see it. In the system of the present invention, however, the relevance score of a particular mes sage takes into account not only on the user’s own interests,

is employed to ?lter messages provided to subscribers of said system. 13. The method of claim 1 wherein said information

but also feedback from the community. To facilitate an understanding of the invention, its prin ciples have been explained with reference to speci?c embodiments thereof. It will be appreciated, however, that

topic category selected by a user.

the practical applications of the invention are not limited to these particular embodiments. The scope of the invention is

prising:

access system is an electronic bulletin board system, and said method is employed to rank items of information in a 14. A computer-based information access system, com

set forth in the following claims, rather than the foregoing description, and all equivalents which are consistent with the meaning of the claims are intended to be embraced therein. What is claimed:

a ?rst database containing items of information to be pro vided to users of said system; means for enabling users to indicate their degree of inter est in particular items of information stored in said ?rst

database;

1. In a computerized information access system, a method

for presenting items of information to users, comprising the steps of: a) storing user pro?les for users having access to the system, where each user pro?le is based, at least in part,

means for determining the correlation between the indi cated interests of respective users and for storing infor 20

mation related thereto; and means for predicting a given user’s likely degree of inter est in a particular item of information on the basis of

on the attributes of information the user ?nds to be of

said information relating to the determined correlation

interest; b) determining an attribute-based relevance factor for an item of information which is indicative of the degree to which an attribute of that item of information matches the pro?le for a particular user; c) determining a measure of correlation between the par ticular user’s interests and those of other users who have accessed said item of information;

and at least one attribute of the item of information. 15. The information access system of claim 14 further 25

regarding likely degree of interest for a given user. 30

d) combining said relevance factor and said degree of cor relation to produce a ranking score for said item of

information; e) repeating steps b, c and d for each item of information to be presented to said particular user; and

2. The method of claim 1, wherein said combining step comprises a regression analysis of attribute-based and 40

thereby provide said indication.

45

20. The information access system of claim 14 wherein

gramming techniques. 50

gramming technique comprises genetic programming.

21. The information access system of claim 20 wherein

the evolutionary programming techniques produce a formula which establishes a combination of attribute-based and

correlation-based factors that determine said prediction. 22. The information access system of claim 20 wherein 55

said evolutionary programming techniques comprise genetic programming. 23. The information access system of claim 20 wherein

said evolutionary programming techniques comprise genetic algorithms. 60

evolutionary programming techniques to generate a formula 10. The method of claim 9 wherein said evolutionary pro

said prediction is based on a regression analysis of data related to said attribute and stored correlation information pertaining to said given user.

said prediction is determined by means of evolutionary pro

9. The method of claim 1 wherein said relevance factor and said degree of correlation are combined by means of that is used to produce a ranking score for an item of infor mation.

given user and other users who have had access to said item

of information. 18. The information access system of claim 17 wherein each user pro?le comprises a vector and said attribute de?nes a vector for the item of information, and wherein said relationship is determined in accordance with the similarities between the vector for the item of information and the user 19. The information access system of claim 14 wherein

said degree of correlation includes the steps of obtaining feedback information from users regarding each user’s inter est in particular items of information when each such item is accessed by a user, and recording said feedback information. 6. The method of claim 5 further including the step of generating a correlation matrix which indicates the degree of correlation between respective users based upon commonly accessed items of information. 7. The method of claim 1 wherein said attribute is the contents of the item of information. 8. The method of claim 1 wherein said items of informa tion are displayed in order of their relative rankings to

and (ii) the correlation between indications provided by the

pro?le vector.

and said degree of correlation. 4. The method of claim 1, wherein said ranking score is also related to a date associated with each item of informa tion. 5. The method of claim 1 wherein said step of determining

16. The information access system of claim 14 wherein said attribute is the contents of the item of information. 17. The information access system of claim 14 further including a second database containing at least one pro?le of interests for each of a number of users of said system, and wherein said prediction is based on a combination of (i) the

relationship of said attribute to the pro?le for said given user 35

f) displaying the items of information to the user in accor dance with their ranking scores.

correlation-based factors for each item of information. 3. The method of claim 1 wherein said combining step comprises forming a weighted sum of said relevance factor

including a user interface for displaying plural items of information with an indication of their relative predictions

24. The system of claim 14, wherein said information access system comprises an electronic mail system. 25. The system of claim 14, wherein said information access system comprises an electronic bulletin board sys tem.

65

26. The system of claim 14, wherein said information access system comprises an electronic search and retrieval

system.

US RE41,899 E 11

12

27. The method of claim 1 wherein the items of informa tion are displayed With an indication of their ranking scores. 28. A method for displaying items of information to users,

34. The method ofclaim 32, wherein: storing information relating to the users' interest com prises generating a user interest matrix V where each

entry Vig- is the weight indicating thefeedback ofuser k

comprising the steps of: determining a relevance factor for an item of information, based upon an attribute of the item of information; de?ning a relationship between the interests of a given

5

on document j;

storing information relating to the degree of correlation comprises generating a correlation matrix R where

each entry Rjk is a measure of the degree of correlation

user and those of other users;

determining a correlation factor for the item of 10

between users i and k; and generating the correlation score comprises calculating a

prediction score Pi]. indicating a likelihood of user i's interest in documentj by carrying out an operation,

information, based upon said de?ned relationship; combining said relevance factor and said correlation fac tor to produce a ranking score for the item of informa

tion; and

Pi]- = z Rik vkj. 15

km

displaying the item of information to the given user in accordance With its ranking score. 29. The method of claim 28 further including the steps of determining a ranking score for multiple items of

35. The method of claim 3], wherein the relationship between the user pro?le vector and the document vector is a information, and displaying the items of information in 20 cosine of an angle between the document vector and the user accordance With their ranking scores. pro?le vector. 30. The method of claim 28 Wherein the item of informa 36. The method of claim 3], wherein the relationship tion is displayed With an indication of its ranking score. 3]. A method ofpresenting documentsfrom a document

between the user pro?le vector and the document vector is based on the similarity between the user pro?le vector and the document vector.

collection to a user, the method comprising: storing a user pro?le vector for the user, the user pro?le vector in a vector space derived from terms contained

37. A computer program product for presenting docu ments from a document collection to a user, the computer program product stored on a computer readable medium

in the document collection and including aplurality of

and adapted to perform a method comprising:

weights, each weight associated with a term in the

document collection; selecting a plurality of documents from the document

30

vector in a vector space derived from terms contained

in the document collection and including aplurality of

collection, each document associated with a document

weights, each weight associated with a term in the

vector in the term vector space;

document collection; selecting a plurality of documents from the document

for each selected document: determining a relevance score, the relevance score based on a relationship between the user pro?le vec

collection, each document associated with a document vector in the term vector space;

tor and the document vector associated with the

for each selected document:

selected document;

determining a relevance score, the relevance score based on a relationship between the user pro?le vec

determining a correlation score between the user and

tor and the document vector associated with the

other users corresponding to the selected document; and combining the relevance score and the correlation score to determine a ?nal ranking score for the

selected document; and presenting the selected documents to the user according to the?nal ranking scores. 32. The method ofclaim 3], wherein determining a corre lation score comprises: storing information relating to users' interest in the docu ments in the document collection;

selected document; determining a correlation score between the user and 45

50

correlation between the users' interest in the docu ments; and the correlation score is generated based upon the user interest matrix and the correlation matrix.

38. The computer program product ofclaim 37, wherein storing information relating to users' interest in the docu ments in the document collection;

55

storing information relating to the degree of correlation between the users' interest in documents; generating the correlation score based upon the informa tion relating to the users' interest and the information

the information relating to the users' interests in the docu

users' interests in particular documents; the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of

presenting the selected documents to the user according to the ?nal ranking scores. determining a correlation score comprises:

relating to the degree of correlation. 33. The method ofclaim 32, wherein: ments is stored in a user interest matrix indicating the

other users corresponding to the selected document; and combining the relevance score and the correlation score to determine a ?nal ranking score for the

selected document; and

storing information relating to the degree ofcorrelation between the users' interest in documents; generating the correlation score based upon the informa tion relating to the users' interest and the information

storing a user pro?le vector for the user, the user pro?le

60

relating to the degree of correlation. 39. The computer program product of claim 38, wherein: the information relating to the users' interests in the docu ments is stored in a user interest matrix indicating the

users' interests in particular documents; the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of correlation between the users' interest in the docu ments; and

US RE41,899 E 14

13 the correlation score is generated based upon the user interest matrix and the correlation matrix.

the server generates the correlation score based upon the user interest matrix and the correlation matrix.

40. The computer program product of claim 38, wherein:

46. The system ofclaim 44, wherein:

storing information relating to the users' interest com

the information relating to the users' interest is stored in a

prises generating a user interest matrix V where each

user interest matrix there each entry Vig- is the weight

entry Vig- is the weight indicating thefeedback ofuser k

indicating thefeedback ofuser k on documentj; the information relating to the degree of correlation is

on document j;

storing information relating to the degree ofcorrelation

stored in a correlation matrixR where each entry Rjk is a measure of the degree of correlation between users i

comprises generating a correlation matrix R where

each entry Rjk is a measure of the degree of correlation

and k; and

between users i and k; and generating the correlation score comprises calculating a prediction score Pi]. indicating a likelihood of user i's interest in documentj by carrying out an operation,

the server generates the correlation score by calculating a

prediction score Pi]- indicating a likelihood of user i's interest in documentj by carrying out an operation,

km

4]. The computer program product ofclaim 37, wherein

20

47. The system of claim 43, wherein the relationship

the relationship between the user pro?le vector and the document vector is a cosine of an angle between the docu

between the user pro?le vector and the document vector is a cosine of an angle between the document vector and the user

ment vector and the user pro?le vector.

pro?le vector. 48. The method of claim 43, wherein the relationship

42. The computer program product ofclaim 37, wherein the relationship between the user pro?le vector and the

25

document vector is based on the similarity between the user

pro?le vector and the document vector. 43. A system for presenting documents to a user, the docu

49. A method ofpresenting information items from an

ments each associated with a document vector in a vector

space and stored in a document database coupled to the

30

system, the system comprising:

information item collection to a user, the method compris

ing: storing a user pro?le vector for the user, the user pro?le

a user database storing a user pro?le vector for the user, the user pro?le vector in the vector space derivedfrom terms contained in the document database and includ

ing a plurality ofweights, each weight associated with

between the user pro?le vector and the document vector is based on the similarity between the user pro?le vector and the document vector.

vector in a vector space derived from attributes in the

information item collection and including aplurality of 35

a term in the document collection; and a server coupled to the user database and the document

database for selecting documents from the document

weights, each weight associated with an attribute in the

information item collection; selecting a plurality of information itemsfrom the infor mation item collection, each information item associ

database, wherein the server:

ated with an information item vector in the attribute

determines, for each selected document, a relevance

vector space;

score, the relevance score based on a relationship

for each selected information item:

between the user pro?le vector and the document vector associated with the selected document;

determining a relevance score, the relevance score based on a relationship between the user pro?le vec

determines, for each selected document, a correlation

tor and the information item vector associated with

score between the user and other users correspond

ing to the selected document;

45

the selected information item;

combines, for each selected document, the relevance

determining a correlation score between the user and

score and the correlation score to determine a ?nal

other users corresponding to the selected informa tion item; and combining the relevance score and the correlation

ranking score for the selected document; and presents the selected documents to the user according to the ?nal ranking scores. 44. The system ofclaim 43, wherein the server determines the correlation score by:

50

selected information item; and presenting the selected information items to the user

storing information relating to users' interest in the docu ments in the document collection;

storing information relating to the degree ofcorrelation

according to the ?nal ranking scores. 55

between the users' interest in documents; generating the correlation score based upon the informa tion relating to the users' interest and the information

relating to the degree of correlation. 45. The system ofclaim 44, wherein:

score to determine a ?nal ranking score for the

50. The method ofclaim 49, wherein determining a corre lation score comprises:

storing information relating to users' interest in the infor mation items in the information item collection;

storing information relating to the degree of correlation

ments is stored in a user interest matrix indicating the

between the users' interest in information items; generating the correlation score based upon the informa tion relating to the users' interest and the information

users' interests in particular documents; the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of

relating to the degree of correlation. 5]. The method ofclaim 50, wherein: the information relating to the users' interests in the infor

60

the information relating to the users' interests in the docu

correlation between the users' interest in the docu ments; and

65

mation items is stored in a user interest matrix indicat

ing the users' interests in particular information items;

US RE41,899 E 15

16 57. The computer program product of claim 56, wherein: the information relating to the users' interests in the infor

the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of correlation between the users' interest in the informa tion items; and

mation items is stored in a user interest matrix indicat

ing the users' interests in particular information items; the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of correlation between the users' interest in the informa tion items; and

the correlation score is generated based upon the user interest matrix and the correlation matrix.

52. The method ofclaim 50, wherein: storing information relating to the users' interest com prises generating a user interest matrix V where each

the correlation score is generated based upon the user interest matrix and the correlation matrix.

entry Vlg- is the weight indicating thefeedback ofuser k

58. The computer program product of claim 56, wherein:

on information itemj;

storing information relating to the degree ofcorrelation

storing information relating to the users' interest com

comprises generating a correlation matrix R where each entry Rik is a measure of the degree of correlation

prises generating a user interest matrix V where each

entry Vlg- is the weight indicating thefeedback ofuser k

between users i and k; and generating the correlation score comprises calculating a

on information itemj;

storing information relating to the degree of correlation

prediction score Pi]. indicating a likelihood of user i's interest in information item j by carrying out an

comprises generating a correlation matrix R where

each entry Rjk is a measure of the degree of correlation

operation, 20 km

between users i and k; and generating the correlation score comprises calculating a prediction score Pi]. indicating a likelihood of user i's interest in information item j by carrying out an

operation, 53. The method of claim 49, wherein the relationship

25

between the user pro?le vector and the document vector is a cosine of an angle between the document vector and the user

km

pro?le vector. 54. The method of claim 49, wherein the relationship between the user pro?le vector and the document vector is the distance between the user pro?le vector and the docu

30

ment vector.

55. A computer program product for presenting informa tion itemsfrom an information item collection to a user, the computer program product stored on a computer readable

medium and adapted to perform a method comprising:

ment vector and the user pro?le vector.

60. The computer program product ofclaim 55, wherein 35

pro?le vector and the document vector. 6]. A system for presenting information items to a user, the information items each associated with an information

vector in a vector space derived from attributes con

tained in the information item collection and including a plurality ofweights, each weight associated with an attribute in the information item collection;

item vector in the attribute vector space and stored in an

information item database coupled to the system, the system

selecting a plurality ofinformation itemsfrom the infor

comprising:

mation item collection, each information item associ

a user database storing a user pro?le vector for the user, the user pro?le vector in a vector space derived from

ated with an information item vector in the attribute vector space;

45

ciated with an attribute in the information item collec

tion; and

tor and the information item vector associated with

a server coupled to the user database and the information 50

determining a correlation score between the user and

selected information item; and

determines, for each selected information item, a rel evance score, the relevance score based on a rela 55

determines, for each selected information item, a corre

according to the ?nal ranking scores. 56. The computer program product ofclaim 55, wherein

lation score between the user and other users corre 60

storing information relating to users' interest in the infor mation items in the information item collection;

relating to the degree of correlation.

sponding to the selected information item; combines, for each selected information item, the rel evance score and the correlation score to determine

a ?nal ranking score for the selected information item; and

storing information relating to the degree ofcorrelation between the users' interest in information items; generating the correlation score based upon the informa tion relating to the users' interest and the information

tionship between the user pro?le vector and the information item vector associated with the selected

information item;

presenting the selected information items to the user

determining a correlation score comprises:

item database for selecting information items from the information item database, wherein the server:

other users corresponding to the selected informa tion item; and combining the relevance score and the correlation score to determine a ?nal ranking score for the

attributes contained in the information item database

and including aplurality ofweights, each weight asso

determining a relevance score, the relevance score based on a relationship between the user pro?le vec

the selected information item;

the relationship between the user pro?le vector and the document vector is based on the similarity between the user

storing a user pro?le vector for the user, the user pro?le

for each selected information item:

59. The computer program product ofclaim 55, wherein the relationship between the user pro?le vector and the document vector is a cosine of an angle between the docu

presents the selected information items to the user 65

according to the?nal ranking scores. 62. The system ofclaim 6], wherein the server determines the correlation score by:

US RE41,899 E 17

18 68. The method of claim 67, wherein the ?nal ranking

storing information relating to users' interest in the infor mation items in the information item collection;

score comprises a recommendation score.

69. The method ofclaim 68, wherein the recommendation

storing information relating to the degree ofcorrelation between the users' interest in information items; generating the correlation score based upon the informa tion relating to the users' interest and the information

relating to the degree of correlation. 63. The system of claim 62, wherein: the information relating to the users' interests in the infor

score comprises a movie recommendation score. 5

70. A method comprising: storing a userpro?lefor a user, the userpro?le including terms contained in a document collection and weights

10

respectively associated with the terms; selecting a plurality of documents from the document

mation items is stored in a user interest matrix indicat

collection, each document associated with a document

ing the users' interests in particular information items; the degree of correlation between the users' interest is stored in a correlation matrix indicating the degree of

pro?le, the document pro?le including terms contained

correlation between the users' interest in the informa tion items; and

in its associated document;

for each selected document: 15

determining a relevance score, the relevance score based on a relationship between the user pro?le and

the document pro?le associated with the selected

the server generates the correlation score based upon the user interest matrix and the correlation matrix.

document;

64. The system of claim 62, wherein: the information relating to the users' interest is stored in a

determining a correlation score between the user and 20

user interest matrix there each entry Vlg- is the weight

indicating thefeedback ofuser k on information itemj; the information relating to the degree of correlation is

selected document; and

stored in a correlation matrix R where each entry Rik is a measure of the degree of correlation between users i

presenting one or more recommendations to the user

based on the ?nal ranking scores.

and k; and

7]. The method of claim 70, wherein the recommenda tions comprise movie recommendations. 72. A method of presenting documents received from a

the server generates the correlation score by calculating a

prediction score Pi]. indicating a likelihood of user i's interest in information item j by carrying out an

operation,

other users corresponding to the selected document; and combining the relevance score and the correlation score to determine a ?nal ranking score for the

30

document collection to a user, the method comprising: retrieving a user pro?le vector associated with the user, the user pro?le vector in a vector space derived from

terms in the document collection;

km

receiving a plurality of documents from the document collection, each document having a document vector in the vector space;

65. The server of claim 6], wherein the relationship

for each received document:

between the user pro?le vector and the document vector is a cosine of an angle between the document vector and the user

pro?le vector. 66. The server of claim 6], wherein the relationship

40

determining a correlation score between the user and

between the user pro?le vector and the document vector is based on the similarity between the user pro?le vector and the document vector.

67. A method ofpresenting documentsfrom a document

45

collection to a user, the method comprising:

50

pro?le, the document pro?le including terms contained in its associated document;

document vector and the user pro?le vector. 55

determining a relevance score, the relevance score based on a relationship between the user pro?le and

the document pro?le associated with the selected

document; determining a correlation score between the user and 60

other users corresponding to the selected document; and combining the relevance score and the correlation score to determine a ?nal ranking score for the

selected document; and presenting the selected documents to the user according to the?nal ranking scores.

vector includes a plurality of vector components, each vec

tor component corresponding to a weight ofone ofthe terms. 74. The method ofclaim 72, wherein the vector operation is the determination of a cosine of an angle between the

collection, each document associated with a document

for each selected document:

other users corresponding to the document; and ranking the received documents based on a combination of each received document's relevance score and corre lation score for presentation to the user.

73. The method ofclaim 72, wherein the vector space is de?ned by a set of terms selectedfrom the terms in the docu ment collection, each user pro?le vector and each document

storing a user pro?le for the user, the user pro?le includ ing terms contained in the document collection and

weights respectively associated with the terms; selecting a plurality of documents from the document

determining a relevance score for the document by a vector operation comparing the user pro?le vector and the document vector; and

75. The method ofclaim 72, wherein the vector operation is a geometric operation determining a distance between the user pro?le vector and the document vector.

76. The method of claim 72, wherein each user pro?le vector and each document vector comprises a plurality of weights, each weight associated with a term. 77. The method of claim 72, wherein each user pro?le vector comprises a plurality of user pro?le vector weights derivedfrom the user's interest in documents and each docu ment vector comprises a plurality of document vector

weights indicating the frequency of occurrence of the terms associated with the document vector weights in the docu ment.

US RE41,899 E 19

20

78. The method ofclaim 72, further comprising

85. The computer program product ofclaim 82, wherein the vector operation is a geometric operation determining a distance between the user pro?le vector and the document

receiving a user rating of a document; responsive to positive user rating, modifying the user pro ?le vector of the user so that the user pro?le vector is

vector.

more similar to the document vector of the user rated 5

document; and

prises a plurality of weights, each weight associated with a

responsive to a negative user rating, modi?ing the user pro?le vector of the user so that the user pro?le vector is less similar to the document vector of the user rated document.

term.

87. The computer program product ofclaim 82, wherein each user pro?le vector comprises a plurality of user pro?le vector weights derivedfrom the user's interest in documents and each document vector comprises a plurality of docu ment vector weights indicating the frequency of occurrence of the terms associated with the document vector weights in the document.

79. The method ofclaim 72, further comprising: receiving a user rating of a document; and modifying the user pro?le vector as a function of the user rating and the document vector of the user rated docu ment.

88. The computer program product of claim 82, the

80. The method ofclaim 72, further comprising:

methodfurther comprising:

receiving a user rating ofa document indicating a user interest in the user rated document; and

modifying the user pro?le vector by determining which

receiving a user rating of a document; responsive to positive user rating, modifying the user pro 20

terms of the user rated document are significant and

increasing the weights corresponding to the significant

responsive to a negative user rating, modi?1ing the user pro?le vector of the user so that the user pro?le vector is less similar to the document vector of the user rated document.

8]. The method ofclaim 72, wherein the document collec tion includes a ?rst document database and a second docu

ment database separate from the ?rst document database, and the user pro?le vector associated with the user com

89. The computer program product of claim 82, the

prises a ?rst user pro?le vector and a second user pro?le

methodfurther comprising:

vector, the ?rst and second user pro?le vectors correspond

ing to the ?rst and second document databases, respectively, 30 the methodfurther comprising: updating the ?rst user pro?le vector in response to a user

receiving a user rating of a document; and

modifying the userpro?le vector as afunction ofthe user rating and the document vector of the user rated docu ment.

rating of a document from the ?rst document database;

90. The computer program product of claim 82, the

and

methodfurther comprising:

updating the second user pro?le vector in response to a

receiving a user rating ofa document indicating a user interest in the user rated document; and

user rating of a document from the second document database.

modifying the user pro?le vector by determining which

82. A computer program product for presenting docu

terms of the user rated document are significant and

ments received from a document collection to a user, the 40

medium and con?gured to perform a method comprising:

increasing the weights corresponding to the significant terms in the user pro?le vector.

9]. The computer program product ofclaim 82, wherein

retrieving a user pro?le vector associated with the user, the user pro?le vector in a vector space derived from

the document collection includes a ?rst document database and a second document database separate from the ?rst document database, and the user pro?le vector associated

terms in the document collection;

receiving a plurality of documents from the document

with the user comprises a ?rst user pro?le vector and a

collection, each document having a document vector in

second user pro?le vector, the ?rst and second user pro?le vectors corresponding to the ?rst and second document

the vector space;

for each received document:

databases, respectively, the methodfurther comprising:

determining a relevance score for the document by a vector operation comparing the user pro?le vector and the document vector; and

updating the ?rst user pro?le vector in response to a user

rating of a document from the ?rst document database; and

determining a correlation score between the user and

other users corresponding to the document; and ranking the received documents based on a combination ofeach received document's relevance score and corre lation score for presentation to the user.

?le vector of the user so that the user pro?le vector is more similar to the document vector of the user rated

document; and

terms in the user pro?le vector.

computer program product stored on a computer readable

86. The computer program product ofclaim 82, wherein each user pro?le vector and each document vector com

updating the second user pro?le vector in response to a 55

user rating of a document from the second document database. 92. A system for presenting documents to a user, the docu

83. The computer program product ofclaim 82, wherein

ments each having a document vector in a vector space and

84. The computer program product ofclaim 82, wherein the vector operation is the determination ofa cosine ofan

a server coupled to the document database and the user

stored in a document database coupled to the system, the the vector space is de?ned by a set ofterms selectedfrom the terms in the document collection, each user pro?le vector 60 system comprising: a user database storing a user pro?le vector associated and each document vector includes a plurality of vector with the user, the user pro?le vector in the vector space components, each vector component corresponding to a derivedfrom terms in the document database; weight ofone ofthe terms.

database, the server receiving documents from the

angle between the document vector and the user pro?le vec

document database and determining a relevance score

tor.

for each of the received documents by a vector opera

US RE41,899 E 21

22

tion comparing the user pro?le vector and the docu

updates the second user profile vector in response to a

ment vector and determining a correlation score for

each of the received documents between the user and other users corresponding to the document and ranking the received documents based on a combination ofeach

user rating of a document from the second document database.

102. A method of presenting information items from an 5

received document's relevance score and correlation score for presentation to the user.

ing: accessing a user profile associated with the user;

93. The system of claim 92, wherein the vector space is defined by a set of terms selectedfrom the terms in the docu ment database, each user profile vector and each document

for each information item in the information item collec tion:

vector includes a plurality of vector components, each vec

determining a relevance scorefor the information item

tor component corresponding to a weight ofone ofthe terms. 94. The system ofclaim 92, wherein the vector operation is the determination of a cosine of an angle between the

based on a relationship between the user profile and

the information item; and determining a correlation score between the user and

document vector and the user profile vector.

other users corresponding to the information item; and ranking the information items based on a combination of each information item's relevance score and correla

95. The system ofclaim 92, wherein the vector operation is a geometric operation determining a distance between the user profile vector and the document vector.

96. The system of claim 29, wherein each user profile vector and each document vector comprises a plurality of weights, each weight associated with a term. 97. The system of claim 92, wherein each user profile vector comprises a plurality of user profile vector weights derivedfrom the user's interest in documents and each docu ment vector comprises a plurality of document vector

weights indicating the frequency of occurrence of the terms

20

medium and configured to perform a method comprising: 25

tion:

98. The system of claim 92, wherein the server receives a

similar to the document vector of the user rated docu ment; and responsive to a negative user rating, modifies the user profile vector of the user so that the user profile vector is less similar to the document vector of the user rated document. 99. The system of claim 92, wherein the server receives a user rating of a document and modifies the user profile vec tor as a function of the user rating and the document vector of the user rated document. 100. The system ofclaim 92, wherein the server receives a user rating ofa document indicating a user interest in the user rated document and modifies the user profile vector by determining which terms of the user rated document are

accessing a user profile associated with the user;

for each information item in the information item collec

ment.

vector of the user so that the user profile vector is more

tion score for presentation to the user.

1 03. A computer program productfor presenting informa tion itemsfrom an information item collection to a user, the computer program product stored on a computer readable

associated with the document vector weights in the docu

user rating ofa document, and: responsive to positive user rating, modifies the user profile

information item collection to a user, the method compris

determining a relevance scorefor the information item based on a relationship between the user profile and 30

the information item; and determining a correlation score between the user and

35

other users corresponding to the information item; and ranking the information items based on a combination of each information item's relevance score and correla tion score for presentation to the user.

104. A system for presenting information items to a user, the information items stored in an information item database 40

coupled to the system, the system comprising: a user database storing a user profile associated with the user;

a server coupled to the information item database and the user database, the server identi?1ing information items

significant and increasing the weights corresponding to the

from the information item database and determining a relevance score for each of the identified information

significant terms in the user profile vector.

10]. The system ofclaim 92, wherein the document data base includes a first document database and a second docu

items based on a relationship between the user profile

ment database separate from the first document database,

and the information item and determining a correlation

and the user profile vector associated with the user com

50

score for each of the identified information items

prises a first user profile vector and a second user profile

between the user and other users corresponding to the

vector, the first and second user profile vectors correspond

information item and ranking the identified information

ing to the first and second document databases, respectively,

items based on a combination ofeach identified infor

and the server:

mation item's relevance score and correlation score for presentation to the user.

updates the first user profile vector in response to a user

rating of a document from the first document database; and

55

UNITED STATES PATENT AND TRADEMARK OFFICE

CERTIFICATE OF CORRECTION PATENT NO.

: RE41,899 E

APPLICATION NO.

: 10/388362 : October 26, 2010 : Rose et a1.

DATED INVENTOR(S)

Page 1 of 1

It is certified that error appears in the above-identi?ed patent and that said Letters Patent is hereby corrected as shown below:

On Title page 2, in column 1, under “Other Publications”, line 15-16, delete “Communicatons” and insert -- Communications --, therefor.

On Title page 2, in column 2, under “Other Publications”, line 41, delete “Journal f0” and insert -- Journal of --, therefor.

In column 1, line 20, delete “inversion” and insert -- invention --, therefor.

In column 12, line 8, in claim 34, delete “ jk” and insert -- Rik --, therefor. In column 13, line 10, in claim 40, delete “ jk” and insert -- Rik --, therefor. In column 14, line 8, in claim 46, delete “ jk” and insert -- Rik --, therefor.

In column 16, line 18, in claim 58, delete “ jk” and insert -- Rik --, therefor.

Signed and Sealed this

Twenty-second Day of November, 2011

David J. Kappos Director 0fthe United States Patent and Trademark O?ice

E a [:1

Oct 26, 2010 - portable computers 14, e.g., notebook computers, having the ability to ..... mation. 10. The method of claim 9 wherein said evolutionary pro.

2MB Sizes 1 Downloads 209 Views

Recommend Documents

E a [:1
Oct 26, 2010 - interest is regularly sent in bulk to lists of user accounts. In order to ..... indicate high interest, mediocre interest, or minimal interest. Preferably ...

E a [:1
Oct 26, 2010 - (73) Assignee: Apple Inc., Cupertino, CA (US). OTHER PUBLICATIONS. _ ...... CERTIFICATE OF CORRECTION. PATENT NO. : RE41,899 E.

Set No.1 - E-Books
Common to Information Technology and Computer Science & Systems ... Discuss the pros and cons of this method compared to first-next and best fit. (b) What is ...

E-1.pdf
incumplimiento del Estado para solucionar la problemática de origen, que radica ... económicos o de dependencia. Page 3 of 46. E-1.pdf. E-1.pdf. Open. Extract.

Set No.1 - E-Books
( Common to Information Technology and Computer Science & Systems. Engineering). Time: 3 hours. Max Marks: 80. Answer any FIVE Questions. All Questions ...

fE~'iiE~ih~~~~E:~ ····=a"1;'
perspective of narrative theory and how much it When we evoke the I guage of hope as a dynam matters how we tell the story of religious life ic movement, we also ~ouch the suffering in resis today. tance to which hope ri~es. We do not require a Ian-.

E-1 Agape.pdf
Page 2 of 12. Overview. This publication is an Existemetrics E-1 Psycho-Social Guide for. Quadrant 1 (Agape) Type. SCIENTIFIC METHODOLOGY Existemetrics is the applied super- science of the Normal Species Set. It is a method of surface analysis. based

1[FORM 1-A
business. (7). (8). (9). (10). (11). Details of immovables. Survey No. (for land) .... area whom the department may contact to ascertain his standing and status.

1[FORM 1-A
business whose particulars are given below hereby apply for registration under Section 10 of the Karnataka. Sales Tax Act, 1957 and Section 4 of the Karnataka ...

Page 1 S E C T O N SEISMOLOGICAL R. E S E A R C H ETTERS Earth ...
Sonic of the Ines- sages or phone calls have an emotional content. In these communications, people can express their fear or their anxi- ety when dealing with a ...

Page 1 .. a a late all as a It is a E 3. it astralia area as a A All E els O ...
B. As a last a case are sale as at a liter a. D HER ... All I a as at they. II. C - to see a late a t E. ar. All to the perminion of your PT. A hold. O not ha a steel alled leader so a a ... List. B. Os Trail Relaterial. A relate tead. A has By stri

MAGISTERIUM_prologo e cap. 1.pdf
There was a problem loading more pages. MAGISTERIUM ... cap. 1.pdf. MAGISTERIUM ... cap. 1.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying ...

79 E 1.pdf
Loading… Whoops! There was a problem loading more pages. Retrying... Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. 79 E 1.pdf. 79 E 1.pdf. Open.

1. E-Book Advanced_Accounting Beams.pdf
Page 3 of 8. ADVANCED. ACCOUNTING. Page 3 of 8. 1. E-Book Advanced_Accounting Beams.pdf. 1. E-Book Advanced_Accounting Beams.pdf. Open. Extract.

1 STATUTO E REGOLAMENTO AIDO.pdf
Page 1. Whoops! There was a problem loading more pages. 1 STATUTO E REGOLAMENTO AIDO.pdf. 1 STATUTO E REGOLAMENTO AIDO.pdf. Open. Extract.

1-E&Y Cloud computing.pdf
Loading… Page 1. Whoops! There was a problem loading more pages. 1-E&Y Cloud computing.pdf. 1-E&Y Cloud computing.pdf. Open. Extract. Open with.

Appendix E.1.pdf
Loading… Whoops! There was a problem loading more pages. Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Appendix E.1.pdf. Appendix E.1.pdf. Open.

1.e. Formulir Putusan.pdf
Pengadilan Agama/Mahkamah Syariah______________, yang. memeriksa, mengadili dan memutus perkara gugatan sederhana pada. pengadilan tingkat ...

Worksheet E pt 1.pdf
Page 1. Whoops! There was a problem loading more pages. Retrying... Worksheet E pt 1.pdf. Worksheet E pt 1.pdf. Open. Extract. Open with. Sign In. Main menu.

1-E&Y Cloud computing.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps. ... 1-E&Y Cloud computing.pdf. 1-E&Y Cloud computing.pdf. Open.

Appendix E.1.pdf
constitution" for future development (California Supreme Court). Questions ... 164; see also Section 10.69 of the League of Cities Municipal Law Handbook).

MAGISTERIUM_prologo e cap. 1.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item.

toxen-e 1..14 -
the Book of the Covenant. These written texts shaped the theology of revelation and the idea of the Divine presence symbolized by the Ark of the Covenant in the ...

G#m(2) Verse: B(1) Bmaj7(1) I lift my voice E(1)
Still my song to You remains. F#(3). Only You will I adore. Interlude: B(1) B/Eb(1) E(1) F#(1) B(1) B/Eb(1) E(1) F#(1). Verse. Pre-Chorus. Chorus. Intro. Bridge: B/Eb(1). E(1) F#(1) G#m(1). Oh I love You always. B/Eb(1). E(1) F#(1) G#m(1). Oh I love