US20040039657A1 - Automatic recommendation of products using latent semantic indexing of content - Google Patents
Automatic recommendation of products using latent semantic indexing of content Download PDFInfo
- Publication number
- US20040039657A1 US20040039657A1 US10/600,669 US60066903A US2004039657A1 US 20040039657 A1 US20040039657 A1 US 20040039657A1 US 60066903 A US60066903 A US 60066903A US 2004039657 A1 US2004039657 A1 US 2004039657A1
- Authority
- US
- United States
- Prior art keywords
- items
- document
- item
- purchaser
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000011524 similarity measure Methods 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 43
- 238000012545 processing Methods 0.000 description 32
- 239000013598 vector Substances 0.000 description 32
- 230000004044 response Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 239000008186 active pharmaceutical agent Substances 0.000 description 11
- 238000000354 decomposition reaction Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000005111 flow chemistry technique Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 231100000773 point of departure Toxicity 0.000 description 2
- 101000958041 Homo sapiens Musculin Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 102000046949 human MSC Human genes 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012109 statistical procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3347—Query execution using vector based model
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/917—Text
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
Definitions
- This invention relates generally to a procedure for selecting a product by a customer and, more particularly, to methodologies and concomitant circuitry for using latent semantic structure of content ascribed to the products to provide automatic recommendations to the customer.
- the current state of the art with respect to item (1) above is composed of two techniques for providing recommendations.
- the first is to use a domain expert to handcraft recommendations for a specific item.
- an expert proceeds through a series of items, and notates for each item which additional items should be recommended when a customer chooses the original item.
- This technique is laborious and is not automatic; for instance, when a new item is introduced, the expert must be consulted again to generate recommendations for the new item.
- An expert can also provide recommendations to be given for a set of items. While this is possible to consider in the case of a small number of sets, an expert will be quickly overwhelmed in any attempt to provide a comprehensive set of recommendations given the large number of possible combinations of items.
- the second prior art technique in recommendations manipulates customer preference data to provide a recommendation.
- U.S. Pat. No. 4,348,740 entitled “Method and portable apparatus for comparison of stored sets of data,” provides a method for sharing preference data
- U.S. Pat. No. 4,870,579 entitled “System and method of predicting subjective reactions,” describes a method of using that shared preference data to provide recommendations.
- Other techniques have built upon this latter reference to promote alternative techniques of using preference data to provide recommendations. There are a number of situations in which using preference data does not generate reasonable recommendations. The first is when, for some reason, preference data is not obtainable, such as for a newly introduced item.
- the second is when the recommendation is for a task or a situation where preferences are not the overriding concern. For instance, no matter how well-liked a “bicycle” is, if the task is moving furniture, a less preferred “truck” would be a more appropriate recommendation than any type of “bicycle”.
- the second thread of pertinent background subject matter is the use of relevance feedback in information retrieval tasks.
- Relevance feedback consists of the idea of modifying a subsequent information query by using feedback from the user as to the relevance of information retrieved in a previous query. For instance, a user enters a query, and an information retrieval system returns a set of responses. The user then indicates which of these responses is most relevant to the query, and the query is modified to use this relevance information in producing another query.
- the first use of relevance feedback is attributed to Rocchio in the reference “Document retrieval systems—optimization and evaluation”, a Doctoral Dissertation by Rocchio J. J. Jr.
- the prior art is devoid of a method such that the two threads of pertinent prior art coalesced whereby relevance feedback is used to automatically provide recommendations.
- a method for automatically recommending textual items stored in a database to a user of a computer-implemented service, the user having selected one of the items includes: (a) applying a latent semantic algorithm to the textual items to establish a conceptual similarity among the textual items and the selected item; and (b) outputting to the user a recommended set of nearest items to the selected item based upon the conceptual similarity.
- a system for automatically recommending textual items stored in a database to a user of a computer-implemented service includes: (a) a processor for applying a latent semantic algorithm to the textual items to establish a conceptual similarity among the textual items and one of the items selected by the user; and (b) means for outputting to the user a recommended set of nearest items to the selected item with reference to the conceptual similarity among the textual items and the selected item.
- FIG. 1 depicts a screen display, presented to the customer by the system in accordance with the present invention, the screen display facilitating input by a customer to initiate a search for an item using keywords;
- FIG. 2 depicts a screen display presenting the response by the system to the search request of FIG. 1 as initiated by the customer;
- FIG. 3 depicts a screen display presenting the response by the system to the customer's request for more detailed information about one item displayed in FIG. 2;
- FIG. 4 depicts a screen display presenting the response by the system to the customer's request to add the item detailed in FIG. 3 to the customer's shopping cart, including recommendations presented by the system based upon the item so selected by the customer;
- FIG. 5 depicts a flow diagram of the method in accordance with the present invention to thereby determine the recommendations presented to the customer in FIG. 4;
- FIG. 6 is a plot of the “term” coordinates and the “document” coordinates based on a two-dimensional singular value decomposition of an original “term-by-document” matrix
- FIG. 7 depicts a flow diagram of the method in accordance with one illustrative embodiment of the present invention relating to document abstracts to generate recommendations of pertinent items to the customer based upon the customer's selection actions;
- FIG. 8 is a flow diagram of the method of the present invention in its most generic form for generating and storing a “nearest” items file;
- FIG. 9 is a flow diagram of the method of the present invention in its most generic form for generating a “nearest” items file useful for real-time and non real-time applications.
- FIG. 10 is a high-level block diagram of hardware components for an illustrative embodiment of the present invention.
- the system should be visualized as a Web server accessible from a purchaser's personal computer (PC) over the Internet; the PC includes a monitor for displaying Web pages on the monitor's screen, a keyboard, and a “mouse”.
- the system is configured with a set of application programs for servicing the purchaser's on-line inputs to the system from the PC.
- screen display 100 which appears on the purchaser's PC monitor in response to a request by the purchaser to access the Search aspect of the system (such as by clicking on a “SEARCH” request button on the on-line merchandiser's home Web page (not shown)).
- the Web page shown on display 100 results from clicking on a “SEARCH WITH KEYWORDS” region of such merchandiser's home page, as repeated for reminder purposes on display 100 .
- the purchaser is prompted to enter keywords into “boxed” display area 102 , which is empty when initially displayed by the system.
- the words “network equipment building system” are keywords typed by the purchaser into display area 102 .
- FIG. 2 there is shown screen display 200 which results from submitting the Search request of FIG. 1 to the system.
- box area 201 repeats the keywords input by the purchaser for ready reference.
- Document category titles 210 , 220 , and 230 show, respectively, the documents located in the search and categorized according to the category titles. For instance, referring now to document title category 220 “Family of Requirements”, 2 documents were located as a result of the search, namely, FR-440 entitled “Transport Systems Generic Requirements—April 1999”, and FR-64CD-1-1USER entitled ” Lata Switching Systems Generic Requirements—January 1999”. Similarly, under document title category 230 , reference numeral 231 identifies the single document located in the search, namely, GR-2930 entitled “Network Equipment . . . and Data Centers—November, 1996.”
- each document is presented on screen display 200 as a hypertext link, so that the purchaser needs only to “click on” the document, either its document reference number (e.g., GR-2930) or its title (e.g., “Network Equipment . . . and Data Centers—November 1996”). It is further supposed that the purchaser calls into view the details of the single document under the “Generic Requirements” document category 230 by clicking on GR-2930.
- FIG. 3 The detailed information pertaining to this document presented to the purchaser as a result of clicking on GR-2930 is shown in screen display 300 of FIG. 3.
- the ABSTRACT of the document referred to by reference numeral 301
- the ABSTRACT of the document is displayed in the upper portion of screen display 300 .
- the lower portion of display 300 is ORDERING INFORMATION for this document.
- Reference numeral 311 points to the MEDIA box, and an associated box filled-in with the term “Paper”, which summarize the medium in which the document is available.
- reference numeral 312 points to the PRICE box, and an associated box filled-in with the term $150.00”, which summarize the cost of the document.
- Reference numeral 313 points to the PAGES box, and an associated box filled-in with the term “300”, which summarize the size of the document.
- reference numeral 314 points to the ACTION box, and an associated box having the term “Add Item to Shopping Basket” displayed, which summarize a possible action which may be taken by the purchaser.
- the bottom half of screen display 400 having the heading RELATED ITEMS YOU MAY WISH TO CONSIDER (reference numeral 420 ), displays three system-recommended documents as generated by an algorithm carried out by the on-line merchandiser's system—the algorithm being transparent to the purchaser.
- the recommendation for this illustration is based upon the latest document placed into the shopping basket by the purchaser. The method to arrive at the recommendation is discussed in detail in the sequel.
- FIG. 5 there is shown flow diagram 500 which summarizes the sequence of steps carried out to present and display the information of FIGS. 1 - 4 .
- the processing blocks 510 - 570 are described as follows.
- Processing Block 510 decide whether to use the content or text surrogates for the content.
- the products/items are documents. If the system implementers do not have the full text of the documents, it is possible to use the abstracts of the documents as surrogates for the documents themselves.
- Processing Block 520 decide what, if any, criteria will be used to determine if a given product will be indexed.
- not all documents may be deemed as “good” recommendations. For instance, it may not be advantageous to recommend free sales material.
- certain products may be available under different licensing terms—for instance, there may be separate products with different right-to-use clauses, e.g., there are separate product numbers for use by one person, use by 2-5 people, use by 10-100 people, and so forth, so it may be desirable to only recommend the use-by-one-person product.
- Processing Block 530 Assemble the Content or Text Surrogates for the Content for Indexing.
- the abstracts of the documents were embedded in a software file, which was a representation of the catalog available to purchasers.
- the criteria as arrived at via processing block 520 are then used to filter out any documents that did not meet the criteria, that is, to arrive at “good” candidates for recommendations. All desired abstracts were then stored into another software file that is a useful format for indexing by the Latent Semantic Index (LSI) algorithm, which will be discussed in more detail in the sequel.
- LSI Latent Semantic Index
- Processing Block 540 Index, Verify, and Determine a Threshold
- the abstracts were indexed using the LSI algorithm.
- the LSI algorithm generates a new vector space with vector positions for all the indexed terms and documents, where the cosine distance between item vectors is a measure of the items' semantic distance.
- the set of documents is then sampled, and checked for the closest documents, to make sure that the parameter choices led to “reasonable” results. As part of this sampling process it was noted that items with a distance, or score below 0.6 were unlikely to be relevant to the item, so a threshold of 0.6 was established.
- Processing Block 550 Generate a Recommendations Table
- a set of the ten closest items for each item in the catalog was generated. To this set the threshold determined in Step 4 was applied, with any items with a threshold below 0.6 being eliminated. Next, a table was compiled where each row contained the item and the recommended items. For this example, one file for each item was compiled in the scaling that contains the recommended items. This file serves as the database of recommended items for the interface.
- Processing Block 560 Decide where in Shopping Experience to Provide Recommendations and Format of Recommendations
- Processing Block 570 Implement Recommendations
- the recommendation files are accessed to retrieve the compiled recommendations from the stored files.
- the recommendations are filtered to not repeat any items already in the basket, and trimmed to show at most 4 items.
- Table 1 The contents of Table 1 are used to illustrate how semantic structure analysis works and to point out the differences between this method and conventional keyword matching.
- TABLE 1 c1: Human machine interface for Lab ABC computer applications c2: A survey of user opening of computer response time c3: The EPS user interface management system c4: Systems and human systems engineering testing of EPS-2 c5: Relation of user-perceived response time to error measurement m1: The generation of random, binary, unordered trees m2: The intersection graph of paths in trees m3: Graph minors TV: widths of tress and well-quasi-ordering m4: Graph minors: a survey
- a file of text objects is composed of nine technical documents with titles c1-c5 concerned with human/computer interactions, and titles m1-m4 concerned with mathematical graph theory.
- titles c1-c5 concerned with human/computer interactions
- titles m1-m4 concerned with mathematical graph theory.
- Table 2 depicts the “term-by-document” matrix for the nine technical document titles. Each cell, (i,j), is the frequency of occurrence of term i in document j. This basic term-by-document matrix or a mathematical transformation thereof is used as input to the statistical procedure described below.
- FIG. 6 is a two-dimensional graphical representation of the two largest dimensions resulting from the statistical processing via singular value decomposition (SVD). Both document titles and the terms used in them are fit into the same space. Terms are shown as circles and labeled by number. Document titles are represented by squares with the numbers of constituent terms indicated parenthetically. The cosine or dot product between two objects (terms or documents) describes their estimated similarity. In this representation, the two types of documents form two distinct groups: all the mathematical graph theory documents (m1-m4) occupy the same region in space (basically along Dimension 1 of FIG. 6), whereas a quite distinct group is formed for human/machine interaction titles (c1-c5) (essentially along Dimension 2 of FIG. 6).
- the query is first folded into this two-dimensional space using those terms that occur in the space (namely, “human” and “computer”).
- the query vector is located in the direction of the weighted average of these constituent terms, and is denoted by a directional arrow labeled “Q” in FIG. 6.
- a measure of the closeness or similarity is related to the angle between the query vector and any given term or document vector.
- One such measure is the cosine between the query vector and a given term or document vector.
- the cosine between the query vector and each of the c1-c5 titles is greater than 0.90; the angle corresponding to the cosine value of 0.90 with the query vector is shown by dashed lines in FIG. 6.
- documents c3 and c5 would be returned as matches to the user query, even though they share no common terms with the query. This is because the latent semantic structure, as captured by the depiction of FIG. 6, fits the overall pattern of usage across documents.
- the “term-by-document” matrix of Table 2 is decomposed using Singular Value Decomposition (SVD).
- SVD Singular Value Decomposition
- a reduced SVD is employed to approximate the original matrix in terms of a much smaller number of orthogonal dimensions. This reduced SVD is used for retrieval; it describes major associational structures in the matrix but it ignores small variations in word usage.
- the number of dimensions to adequately represent a particular domain is largely an empirical matter. If the number of dimensions is too large, random noise or variations in word usage will be remodeled. If the number of dimensions is too small, significant semantic distinctions will remain un-captured. For diverse information sources, 100 or more dimensions may be needed.
- the “term by-document” matrix denoted Y
- Y is decomposed into three other matrices, namely, the term matrix (TERM), the document matrix (DOCUMENT), and a diagonal matrix of singular values (DIAGONAL), as follows:
- Y is the original t-by-d matrix
- TERM is the t-by-m term matrix with unit-length orthogonal columns
- DOCUMENT is the m-by-d document matrix with unit-length orthogonal columns
- DIAGONAL is the m-by-m diagonal matrix of singular values typically ordered by magnitude.
- the dimensionality of the full solution, denoted m is the rank of the t-by-d matrix, that is, m ⁇ min(t,d).
- Tables 3, 4, and 5 below show the TERM and DOCUMENT matrices and the diagonal elements of the DIAGONAL matrix, respectively, as found via SVD.
- Any rectangular matrix Y of t rows and d columns can be decomposed into a product of three other matrices:
- This is called the Singular Value Decomposition (SVD) of Y.
- SVD Singular Value Decomposition
- T o and D o are the matrices of left and right singular vectors and S o is the diagonal matrix of singular values. By convention, the diagonal elements of S o are ordered in decreasing magnitude.
- k is chosen for each application; it is generally such that k ⁇ 100 for a collection of 100-3000 text objects (e.g., documents).
- the rows of the reduced matrices T and D may be taken as vectors representing terms and documents, respectively, in a k-dimensional space. With appropriate resealing of the axes, by quantities related to the associated diagonal values of S, dot products between points in the space can be used to access and compare objects. (A simplified approach which did not involve rescaling was used to plot the data of FIG. 6, but this was strictly for expository purposes). These techniques are now described.
- comparisons of interest There are basically three types of comparisons of interest; (i) those comparing two terms; (ii) those comparing two documents or text objects; and (iii) those comparing a term and a document or text object.
- a text object or a data object As used throughout, the notion of a text object or a data object is general, whereas a document is a specific instance of a text object or a data object. Also, text or data objects are stored in the computer system in files.
- the dot product between the i-th row and the j-th row of Y R can be obtained by calculating the dot product between the i-th and j-th rows of the TS matrix. That is, considering the rows of TS as vectors representing the terms, dot products between these vectors give the comparison between terms.
- the relation between taking the rows of T as vectors and those of TS is simple since S is a diagonal matrix; each vector element has been stretched our shrunk by the corresponding element of S.
- the dot product is between two column vectors of Y.
- the document-by-document dot product is approximated by:
- the rows of the DS matrix are taken as vectors representing the documents, and the comparison is via the dot product between the rows of the DS matrix.
- D q may be used like any row of D and, appropriately scaled by S or S 1/2 , can be used like a usual document vector for making “within” and “between” comparisons. It is to be noted that if the measure of similarity to be used in comparing the query against all documents is one in which only the angle between the vectors is important (such as the cosine measure), there is no difference for comparison purposes between placing the query at the vector average or the vector sum of the terms.
- FIG. 7 amplifies on and/or encapsulates certain method steps of FIG. 5 that are particular to the illustrative example of FIGS. 1 - 4 .
- Processing block 710 depicts that the starting point in the process of FIG. 7 is a catalog of abstracts, with each abstract being representative of a corresponding item (e.g., a full document).
- processing block 720 is executed to filter the catalog of abstracts to yield a reduced set of abstracts for processing by the latent semantic indexing algorithm—recall that documents are culled so that only “good” recommendations are offered to the purchaser.
- processing block 730 is invoked apply the latent semantic indexing algorithm to the reduced set of abstracts to produce a vector space representation of the reduced set of abstracts.
- the “term-by-document” matrix Y is formed from the terms in the reduced set of abstracts (which are now the documents). Then Singular Value Decomposition is applied, and the dimensionality of the space is selected to generate the vector space representation of the reduced set of abstracts, that is, the k largest singular values are selected to yield the approximation matrix Y R .
- processing block 740 is used to find so-called “nearest” abstracts for each abstract in the reduced set of abstracts.
- the type of comparison utilized is the “Two Documents” comparison already discussed above. Recall in this case, the dot product is between two column vectors of Y.
- the document-by-document dot product is approximated by:
- the rows of the DS matrix are taken as vectors representing the documents, and the comparison is via the dot product between the rows of the DS matrix.
- the cosine measure is used to gauge the closeness of all other abstracts to the given abstract under consideration, that is, one-by-one each abstract is taken as a reference document and the cosine measure of all other abstracts to the given abstract is computed.
- the “nearest” abstracts are determined based upon pre-determined criteria, such as, the cosine being no less than 0.6 and selection of only the four closest abstracts.
- the “nearest” abstracts are stored in a file for later recall during the actual “search” activity by the purchaser, as evidenced by processing block 750 .
- Recommendations to a purchaser are expedited because the “nearest” abstracts file is generated off-line and stored, that is, the only real-time execution activity required of the on-line system is an access to the file of stored “nearest” abstracts when a purchaser, for example, adds an item to the shopping basket.
- the system is scalable in that the abstract of the new document can be considered as a pseudo-object and the abstracts “nearest” the pseudo-object can serve as recommendations to the purchaser.
- the final processing step is that of outputting to the purchaser the recommended list of “nearest” abstracts as an item is added to the shopping basket.
- flow diagram 800 of FIG. 8 depicts the most general processing in accordance with the method aspect of the present invention when a file of “nearest” items is generated, usually off-line, and then stored.
- Processing block 810 applies a latent semantic algorithm to the items to determine a conceptual similarity among the items. It is implicit that the items form a catalog in the generic sense, and that each of the items has an associated textual description. Thus the catalog of items is not necessarily composed of documents, but can be composed of, as suggested earlier, audio tape listings, video tape listings, works-of-art, electronic product listings, and so forth; however, each item has an associated written description that can be used with a latent semantic algorithm to find the conceptual similarity among the items (e.g., inner product or dot product with the cosine measure).
- processing block 820 is invoked to find, for each item, the “nearest” items using the conceptual similarity as a measure of “nearness”.
- the file is stored for later recall during the shopping experience of an on-line purchaser.
- processing block 830 is executed so that, whenever each on-line purchaser adds a “latest” item to the shopping cart, the file of “nearest” items determined by processing block 820 is accessed to provide a recommendation of items “nearest” to the item added to the shopping cart. (Of course it is possible to return the “nearest” items to the purchaser at other points in the shopping experience, not just at the time the purchaser selects a “latest” items. For example, the “nearest” items for each item in the shopping basket could be displayed if there is sufficient screen display area to accomplish this display).
- flow diagram 900 of FIG. 9 depicts the most general processing in accordance with the method aspect of the present invention when a list of “nearest” items is dynamically generated in response to a purchaser's request—the processing by flow diagram 900 does not require storing a file of conceptual similarity among textual items.
- Processing block 910 applies, whenever the on-line purchaser adds a “latest” item to the shopping cart, a latent semantic algorithm is applied to the items to determine a conceptual similarity among the items and the “latest” item. It is implicit that the items form a catalog in the generic sense, and that each of the items has an associated textual description.
- the matrix Y R is computed off-line and stored; when a customer adds the “latest” item, this item is used as a pseudo-object to produce the nearest items based on the conceptual similarity between the “latest” item and all of the items.
- Processing block 920 is then executed so that a recommendation of items “nearest” to the item added to the shopping cart is generated. (Of course it is possible to return the “nearest” items to the purchaser at other points in the shopping experience, not just at the time the purchaser selects a “latest” items. For example, the “nearest” items for each item in the shopping basket could be displayed if there is sufficient screen display area to accomplish this display).
- FIG. 10 there is shown high-level hardware diagram 1000 of components that comprise an illustrative embodiment of the system in accordance with the present invention.
- the components of system 1000 include: (a) Web server 1010 ; (b) application server 1020 ; and (c) storage file 1030 .
- System 1000 is coupled to conventional Internet network or “cloud” 1005 .
- Internet 1005 access to Internet 1005 by a customer is via PC 1001 .
- Web server 1010 passes the purchaser's input information, such as “search” keywords entered or a Web page link clicked upon by the purchaser, depending upon the stage of the shopping experience, to input web page processor 1011 which parses the Web page to obtain information to pass along to application server 1020 . If the purchaser has entered “search” keywords, then application server 1020 consults storage file 1030 to obtain data to return a response Web page.
- Output Web page processor 1021 receives the response data, and prepares a Web page in HTML format for transmission, via server 1010 and Internet 1005 , to PC 1001 as Web page 1003 .
- application server 1020 accesses that part of storage file 1030 that stores the file of “nearest” items to the clicked-upon item.
- the output of application server 1020 is a set of “nearest” items, which is again placed in HTML format and delivered to PC 1001 , via Web server 1010 and Internet 1005 , as response Web page 1003 .
- system 1000 is illustrated as operating in the Internet environment with only a single server, and initially elucidates the set of services embodied in the product-purchase experience.
- a general computer network implementation imbued with the structure and characteristics heretofore described can effect the applications in accordance with the present invention.
- the product-purchase experience can be implemented locally as well, that is, the client-server may be interconnected, for example, via a local area network (LAN) which is not coupled to the Internet. All of the aforementioned benefits apply to this local system so as to realize a product selection experience.
- LAN local area network
- filtering may be imposed so as to generate the recommendations provided to the purchaser; such filtering may be accomplished, illustratively, by processing blocks 830 or 920 .
- additional filtering may be imposed so as to generate the recommendations provided to the purchaser; such filtering may be accomplished, illustratively, by processing blocks 830 or 920 .
- items below a certain price may not warrant a recommendation, e.g., the price of the item placed in the basket.
- the “nearest” items list could be filtered based on something known about the purchaser, e.g., no “adult” content for kids, or only content written in languages x and y but not language z.
- This post-filer processing complements the pre-filtering processing already discussed.
- an extension to the illustrative embodiment is that of using all the items in the shopping basket or a subset of items in the shopping basket, in contrast to the latest item, to generate a recommendation.
- the technique for accommodating multiple items as input is normally implemented in real-time since it would be virtually impossible to generate and store a “nearest” items file using permutations of all items in the catalog to form composite pseudo-objects.
- the recommended list could be e-mailed to the purchaser rather than displaying the list immediately on the screen. This may occur when, for example, the recommended list may be too large to be conveniently displayed on the screen display. Also, a recommendation could be e-mailed to the purchaser when a new item is added to the catalog and such added item, if available during the time of the prior interaction with the purchaser, would have been included in the list of recommended items.
- the e-mail functionality may be implemented by application server 1020 .
Abstract
Description
- 1. Field of the Invention
- This invention relates generally to a procedure for selecting a product by a customer and, more particularly, to methodologies and concomitant circuitry for using latent semantic structure of content ascribed to the products to provide automatic recommendations to the customer.
- 2. Description of the Background
- There are two threads of pertinent subject matter which serve as points of departure for the present invention, namely: (1) work in manipulating personal preferences for recommendations of items; and (2) work in using relevance feedback in information retrieval tasks for items.
- The current state of the art with respect to item (1) above is composed of two techniques for providing recommendations. The first is to use a domain expert to handcraft recommendations for a specific item. In this technique, an expert proceeds through a series of items, and notates for each item which additional items should be recommended when a customer chooses the original item. This technique is laborious and is not automatic; for instance, when a new item is introduced, the expert must be consulted again to generate recommendations for the new item. Also, in situations with large sets of items, it becomes less likely that any expert would be familiar with all the items, and so would be less likely to produce a correctly tailored list for all the items that need recommendations. An expert can also provide recommendations to be given for a set of items. While this is possible to consider in the case of a small number of sets, an expert will be quickly overwhelmed in any attempt to provide a comprehensive set of recommendations given the large number of possible combinations of items.
- The second prior art technique in recommendations manipulates customer preference data to provide a recommendation. For example, U.S. Pat. No. 4,348,740, entitled “Method and portable apparatus for comparison of stored sets of data,” provides a method for sharing preference data, and U.S. Pat. No. 4,870,579, entitled “System and method of predicting subjective reactions,” describes a method of using that shared preference data to provide recommendations. Other techniques have built upon this latter reference to promote alternative techniques of using preference data to provide recommendations. There are a number of situations in which using preference data does not generate reasonable recommendations. The first is when, for some reason, preference data is not obtainable, such as for a newly introduced item. The second is when the recommendation is for a task or a situation where preferences are not the overriding concern. For instance, no matter how well-liked a “bicycle” is, if the task is moving furniture, a less preferred “truck” would be a more appropriate recommendation than any type of “bicycle”.
- The second thread of pertinent background subject matter (item (2) above) is the use of relevance feedback in information retrieval tasks. Relevance feedback consists of the idea of modifying a subsequent information query by using feedback from the user as to the relevance of information retrieved in a previous query. For instance, a user enters a query, and an information retrieval system returns a set of responses. The user then indicates which of these responses is most relevant to the query, and the query is modified to use this relevance information in producing another query. The first use of relevance feedback is attributed to Rocchio in the reference “Document retrieval systems—optimization and evaluation”, a Doctoral Dissertation by Rocchio J. J. Jr. (1966), Harvard University, in Report ISR-10, to the National Science Foundation, Harvard Computational Laboratory, Cambridge, Mass. This is the seminal document referred to in modern relevance feedback literature such as the “Improving Retrieval Performance by Relevance Feedback” chapter by Salton and Buckley (1988) in “Readings in Information Retrieval”, edited by Jones and Willett, 1997.
- The prior art is devoid of a method such that the two threads of pertinent prior art coalesced whereby relevance feedback is used to automatically provide recommendations.
- Shortcomings and limitations of the prior art are obviated, in accordance with the present invention, by a methodology and concomitant circuitry wherein the customer (alternatively, purchaser, consumer, or user, as the case may be) is allowed to find items using either a search engine or by browsing a catalog of items. Then the act of placing an item in the customer's electronic shopping basket (alternatively, shopping cart) is used as an indication that the customer prefers that item. Finally, the basket item provides relevance feedback upon which to build a query to find items like the item in the basket. Thus, in accordance with the present invention, relevance feedback serves as the basis whereby the relevance feedback is modified and then applied to supply a recommendation.
- Broadly, in accordance with a method aspect of the present invention, a method for automatically recommending textual items stored in a database to a user of a computer-implemented service, the user having selected one of the items, includes: (a) applying a latent semantic algorithm to the textual items to establish a conceptual similarity among the textual items and the selected item; and (b) outputting to the user a recommended set of nearest items to the selected item based upon the conceptual similarity.
- Broadly, in accordance a one system aspect of the present invention, a system for automatically recommending textual items stored in a database to a user of a computer-implemented service includes: (a) a processor for applying a latent semantic algorithm to the textual items to establish a conceptual similarity among the textual items and one of the items selected by the user; and (b) means for outputting to the user a recommended set of nearest items to the selected item with reference to the conceptual similarity among the textual items and the selected item.
- The teachings of the present invention can be readily understood by considering the following detailed description in conjunction with the accompanying drawings, in which:
- FIG. 1 depicts a screen display, presented to the customer by the system in accordance with the present invention, the screen display facilitating input by a customer to initiate a search for an item using keywords;
- FIG. 2 depicts a screen display presenting the response by the system to the search request of FIG. 1 as initiated by the customer;
- FIG. 3 depicts a screen display presenting the response by the system to the customer's request for more detailed information about one item displayed in FIG. 2;
- FIG. 4 depicts a screen display presenting the response by the system to the customer's request to add the item detailed in FIG. 3 to the customer's shopping cart, including recommendations presented by the system based upon the item so selected by the customer;
- FIG. 5 depicts a flow diagram of the method in accordance with the present invention to thereby determine the recommendations presented to the customer in FIG. 4;
- FIG. 6 is a plot of the “term” coordinates and the “document” coordinates based on a two-dimensional singular value decomposition of an original “term-by-document” matrix;
- FIG. 7 depicts a flow diagram of the method in accordance with one illustrative embodiment of the present invention relating to document abstracts to generate recommendations of pertinent items to the customer based upon the customer's selection actions;
- FIG. 8 is a flow diagram of the method of the present invention in its most generic form for generating and storing a “nearest” items file;
- FIG. 9 is a flow diagram of the method of the present invention in its most generic form for generating a “nearest” items file useful for real-time and non real-time applications; and
- FIG. 10 is a high-level block diagram of hardware components for an illustrative embodiment of the present invention.
- To facilitate understanding, identical reference numerals have been used, where possible, to designate elements that are common to the figures.
- It is instructive to first consider a “guided tour” on the manner in which a purchaser of documents interacts with the inventive system; this guided tour is best illustrated by viewing a sequence of personal computer screen displays that depicts purchaser inputs and then responses by the system as configured with the features of the present invention. This guided tour has the advantage of introducing terminology useful for later describing details of: (a) the methodology in terms of a flow diagram; and (b) the system in terms of a high-level block diagram.
- For the sake of specificity, but without loss of generality, it is presumed that the system is configured for merchandising documents on-line over the Internet. The principles of the inventive subject matter can be readily applied to other merchandising applications, either on-line or even in a non-Internet application, such as the sale of physical, non-textual items or products which have a corresponding written description. For instance, electronic components could be summarized by a written description with such summary description forming the basis for a “document search”. In addition, audio materials, video tapes, works-of-art, electronic products, and so forth, could be described in terms of a summary, and again such a summary forms the basis for a document search.
- For purposes of the immediate discussion, the system should be visualized as a Web server accessible from a purchaser's personal computer (PC) over the Internet; the PC includes a monitor for displaying Web pages on the monitor's screen, a keyboard, and a “mouse”. The system is configured with a set of application programs for servicing the purchaser's on-line inputs to the system from the PC.
- The particular set of screen displays selected for the guided tour traces only one path of purchaser interaction through the system. However, this path is typical of the use of the system and, moreover, immediately and explicitly highlights the major differences between the present inventive subject matter and the prior art systems discussed in the Background Section. Because the present inventive system is versatile so as to accommodate the needs of many different types of purchasers, this path of the guided tour is but one of many potential paths through the system. Later, a detailed flow diagram of the methodology of the present invention will be presented which depicts the full versatility of the present invention.
- Also, in order to ensure that the guided tour is truly informative of the major point-of-departure of the inventive subject matter from the prior art, certain presumptions are made about the status of the system as the purchaser logs-on to the system. Thus, for the guided tour, it is presumed that the purchaser has already viewed the merchandiser's home Web page and has navigated to the point of accessing the merchandiser's Web page to search for items available from the merchandiser.
- With reference to FIG. 1, there is shown
screen display 100 which appears on the purchaser's PC monitor in response to a request by the purchaser to access the Search aspect of the system (such as by clicking on a “SEARCH” request button on the on-line merchandiser's home Web page (not shown)). The Web page shown ondisplay 100 results from clicking on a “SEARCH WITH KEYWORDS” region of such merchandiser's home page, as repeated for reminder purposes ondisplay 100. As then shown byreference numeral 101, the purchaser is prompted to enter keywords into “boxed”display area 102, which is empty when initially displayed by the system. Here, the words “network equipment building system” are keywords typed by the purchaser intodisplay area 102. - Now with reference to FIG. 2, there is shown
screen display 200 which results from submitting the Search request of FIG. 1 to the system. In particular with reference to display 200,box area 201 repeats the keywords input by the purchaser for ready reference.Document category titles title category 220 “Family of Requirements”, 2 documents were located as a result of the search, namely, FR-440 entitled “Transport Systems Generic Requirements—April 1999”, and FR-64CD-1-1USER entitled ” Lata Switching Systems Generic Requirements—January 1999”. Similarly, underdocument title category 230,reference numeral 231 identifies the single document located in the search, namely, GR-2930 entitled “Network Equipment . . . and Data Centers—November, 1996.” - It is now supposed that the purchaser desires to learn more details about the document having
reference numeral 231. To facilitate access to such details, each document is presented onscreen display 200 as a hypertext link, so that the purchaser needs only to “click on” the document, either its document reference number (e.g., GR-2930) or its title (e.g., “Network Equipment . . . and Data Centers—November 1996”). It is further supposed that the purchaser calls into view the details of the single document under the “Generic Requirements”document category 230 by clicking on GR-2930. - The detailed information pertaining to this document presented to the purchaser as a result of clicking on GR-2930 is shown in
screen display 300 of FIG. 3. In particular, the ABSTRACT of the document, referred to byreference numeral 301, is displayed in the upper portion ofscreen display 300. In the lower portion ofdisplay 300, as shown byreference numeral 310, is ORDERING INFORMATION for this document.Reference numeral 311 points to the MEDIA box, and an associated box filled-in with the term “Paper”, which summarize the medium in which the document is available. In addition,reference numeral 312 points to the PRICE box, and an associated box filled-in with the term $150.00”, which summarize the cost of the document.Reference numeral 313 points to the PAGES box, and an associated box filled-in with the term “300”, which summarize the size of the document. Finally,reference numeral 314 points to the ACTION box, and an associated box having the term “Add Item to Shopping Basket” displayed, which summarize a possible action which may be taken by the purchaser. - Next, it is supposed that the purchaser does, in fact, decide to add document GR-2930 to the shopping basket by clicking on “Add Item to Shopping Basket” in FIG. 3;
screen display 400 of FIG. 4 depicts the result of this click-on activity.Reference numeral 401 indicates that the screen display is the SHOPPING BASKET for reminder purposes. The portion below the heading SHOPPING BASKET displays the contents of the shopping basket, which to this point is the single document shown by its title “Network Equipment . . . and Data Centers—January 1996”, along with the price (reference numeral 412) of each item (reference numeral 411) for each item displayed; for this single document, the price is $150.00 (reference numeral 413), as also displayed earlier in FIG. 3. - The bottom half of
screen display 400, having the heading RELATED ITEMS YOU MAY WISH TO CONSIDER (reference numeral 420), displays three system-recommended documents as generated by an algorithm carried out by the on-line merchandiser's system—the algorithm being transparent to the purchaser. The recommendation for this illustration is based upon the latest document placed into the shopping basket by the purchaser. The method to arrive at the recommendation is discussed in detail in the sequel. - Illustrative Flow Diagram of the Method Effected by the System
- With reference to FIG. 5, there is shown flow diagram500 which summarizes the sequence of steps carried out to present and display the information of FIGS. 1-4. The processing blocks 510-570 are described as follows.
- Processing Block510: decide whether to use the content or text surrogates for the content.
- For instance, in one illustrative example of the system, the products/items are documents. If the system implementers do not have the full text of the documents, it is possible to use the abstracts of the documents as surrogates for the documents themselves.
- Processing Block520: decide what, if any, criteria will be used to determine if a given product will be indexed.
- In the example, not all documents may be deemed as “good” recommendations. For instance, it may not be advantageous to recommend free sales material. Additionally, certain products may be available under different licensing terms—for instance, there may be separate products with different right-to-use clauses, e.g., there are separate product numbers for use by one person, use by 2-5 people, use by 10-100 people, and so forth, so it may be desirable to only recommend the use-by-one-person product.
- Processing Block530: Assemble the Content or Text Surrogates for the Content for Indexing.
- For the exemplary system, the abstracts of the documents were embedded in a software file, which was a representation of the catalog available to purchasers. The criteria as arrived at via
processing block 520 are then used to filter out any documents that did not meet the criteria, that is, to arrive at “good” candidates for recommendations. All desired abstracts were then stored into another software file that is a useful format for indexing by the Latent Semantic Index (LSI) algorithm, which will be discussed in more detail in the sequel. - Processing Block540: Index, Verify, and Determine a Threshold
- The abstracts were indexed using the LSI algorithm. There are a number of parameters that can be specified in the indexing process, such as word weighting, and number of dimensions for the scaling. For example, log entropy weighting was used since the implementer's experience with the LSI algorithm leads to the best results. The LSI algorithm generates a new vector space with vector positions for all the indexed terms and documents, where the cosine distance between item vectors is a measure of the items' semantic distance. The set of documents is then sampled, and checked for the closest documents, to make sure that the parameter choices led to “reasonable” results. As part of this sampling process it was noted that items with a distance, or score below 0.6 were unlikely to be relevant to the item, so a threshold of 0.6 was established.
- Processing Block550: Generate a Recommendations Table
- A set of the ten closest items for each item in the catalog was generated. To this set the threshold determined in Step4 was applied, with any items with a threshold below 0.6 being eliminated. Next, a table was compiled where each row contained the item and the recommended items. For this example, one file for each item was compiled in the scaling that contains the recommended items. This file serves as the database of recommended items for the interface.
- Processing Block560: Decide where in Shopping Experience to Provide Recommendations and Format of Recommendations
- It was determined for this illustrative example to provide a recommendation to the customer each time this customer added an item to their shopping basket. The recommendation set determined by the newly added item was filtered to not include any items that were already in the customer's shopping basket. The recommendations are displayed on the same screen display as the shopping basket and show the titles of the recommended items (e.g.,421-423 in FIG. 4), which are implemented as hyperlinks. Clicking on the link takes the customer to more information and the opportunity to purchase the recommended item. Based on space constraints on the shopping basket screen display (e.g., a web page), a reasonable compromise was to display at most four recommended items; this number is arbitrary and configurable based upon the application environment of the invention.
- Processing Block570: Implement Recommendations
- When the customer adds an item to their shopping basket, the recommendation files are accessed to retrieve the compiled recommendations from the stored files. The recommendations are filtered to not repeat any items already in the basket, and trimmed to show at most 4 items.
- Before discussing the principles and operational characteristics of this invention in detail, it is helpful to present a motivating example of a Latent Semantic Indexing algorithm (with reference to U.S. Pat. No. 4,839,853).
- The contents of Table 1 are used to illustrate how semantic structure analysis works and to point out the differences between this method and conventional keyword matching.
TABLE 1 c1: Human machine interface for Lab ABC computer applications c2: A survey of user opining of computer response time c3: The EPS user interface management system c4: Systems and human systems engineering testing of EPS-2 c5: Relation of user-perceived response time to error measurement m1: The generation of random, binary, unordered trees m2: The intersection graph of paths in trees m3: Graph minors TV: widths of tress and well-quasi-ordering m4: Graph minors: a survey - In this example, a file of text objects is composed of nine technical documents with titles c1-c5 concerned with human/computer interactions, and titles m1-m4 concerned with mathematical graph theory. Using conventional keyword retrieval, if a user requested papers dealing with “human computer interaction”, titles c1, c2, and c4 would be returned since these titles contain at least one keyword from the user request. However, c3 and c5, while related to the query, would not be returned since they share no words in common with the request. It is now shown how latent semantic structure analysis treats this request to return titles c3 and c5.
- Table 2 depicts the “term-by-document” matrix for the nine technical document titles. Each cell, (i,j), is the frequency of occurrence of term i in document j. This basic term-by-document matrix or a mathematical transformation thereof is used as input to the statistical procedure described below.
TABLE 2 DOCUMENTS TERMS c1 c2 c3 c4 c5 m1 m2 m3 m4 human 1 0 0 1 0 0 0 0 0 interface 1 0 1 0 0 0 0 0 0 computer 1 1 0 0 0 0 0 0 0 user 0 1 1 0 1 0 0 0 0 system 0 1 1 2 0 0 0 0 0 response 0 1 0 0 1 0 0 0 0 time 0 1 0 0 1 0 0 0 0 EPS 0 0 1 1 0 0 0 0 0 survey 0 1 0 0 0 0 0 0 1 tree 0 0 0 0 0 1 1 1 0 graph 0 0 0 0 0 0 1 1 1 minor 0 0 0 0 0 0 0 1 1 - For this example, the documents and terms have been carefully selected to yield a “good” approximation in just two dimensions for expository purposes. FIG. 6 is a two-dimensional graphical representation of the two largest dimensions resulting from the statistical processing via singular value decomposition (SVD). Both document titles and the terms used in them are fit into the same space. Terms are shown as circles and labeled by number. Document titles are represented by squares with the numbers of constituent terms indicated parenthetically. The cosine or dot product between two objects (terms or documents) describes their estimated similarity. In this representation, the two types of documents form two distinct groups: all the mathematical graph theory documents (m1-m4) occupy the same region in space (basically along
Dimension 1 of FIG. 6), whereas a quite distinct group is formed for human/machine interaction titles (c1-c5) (essentially alongDimension 2 of FIG. 6). - To respond to a user query about “human computer interaction”, the query is first folded into this two-dimensional space using those terms that occur in the space (namely, “human” and “computer”). The query vector is located in the direction of the weighted average of these constituent terms, and is denoted by a directional arrow labeled “Q” in FIG. 6. A measure of the closeness or similarity is related to the angle between the query vector and any given term or document vector. One such measure is the cosine between the query vector and a given term or document vector. In FIG. 6, the cosine between the query vector and each of the c1-c5 titles is greater than 0.90; the angle corresponding to the cosine value of 0.90 with the query vector is shown by dashed lines in FIG. 6. With this technique, documents c3 and c5 would be returned as matches to the user query, even though they share no common terms with the query. This is because the latent semantic structure, as captured by the depiction of FIG. 6, fits the overall pattern of usage across documents.
- Description of Singular Value Decomposition
- To obtain the data to plot FIG. 6, the “term-by-document” matrix of Table 2 is decomposed using Singular Value Decomposition (SVD). A reduced SVD is employed to approximate the original matrix in terms of a much smaller number of orthogonal dimensions. This reduced SVD is used for retrieval; it describes major associational structures in the matrix but it ignores small variations in word usage. The number of dimensions to adequately represent a particular domain is largely an empirical matter. If the number of dimensions is too large, random noise or variations in word usage will be remodeled. If the number of dimensions is too small, significant semantic distinctions will remain un-captured. For diverse information sources, 100 or more dimensions may be needed.
- To illustrate the decomposition technique, the “term by-document” matrix, denoted Y, is decomposed into three other matrices, namely, the term matrix (TERM), the document matrix (DOCUMENT), and a diagonal matrix of singular values (DIAGONAL), as follows:
- Y t,d=TERMt,mDIAGONALm,mDOCUMENTm,d,
- where Y is the original t-by-d matrix, TERM is the t-by-m term matrix with unit-length orthogonal columns, DOCUMENT is the m-by-d document matrix with unit-length orthogonal columns, and DIAGONAL is the m-by-m diagonal matrix of singular values typically ordered by magnitude. The dimensionality of the full solution, denoted m, is the rank of the t-by-d matrix, that is, m≦min(t,d). Tables 3, 4, and 5 below show the TERM and DOCUMENT matrices and the diagonal elements of the DIAGONAL matrix, respectively, as found via SVD.
TABLE 3 TERM MATRIX (12 terms by 9 documents) human 0.22 −0.11 0.29 −0.41 −0.11 −0.34 −0.52 −0.06 −0.41 inter- 0.20 −0.07 0.14 −0.55 0.28 0.50 −0.07 −0.01 −0.11 face com- 0.24 0.04 −0.16 −0.59 −0.11 −0.25 −0.30 0.06 0.49 puter user 0.40 0.06 −0.34 0.10 0.33 0.38 0.00 0.00 0.01 system 0.64 −0.17 0.36 0.33 −0.16 −0.21 −0.16 0.03 0.27 re- 0.26 0.11 −0.42 0.07 0.08 −.017 0.28 −0.02 −0.05 sponse time EPS 0.30 −0.14 0.33 0.19 0.11 0.27 0.03 −0.02 −0.16 survey 0.20 0.27 −0.18 −0.03 −0.54 0.08 −0.47 −0.04 −0.58 tree 0.01 0.49 0.23 0.02 0.59 −0.39 −0.29 0.25 −0.22 graph 0.04 0.62 0.22 0.00 −0.07 0.11 0.16 −0.68 0.23 minor 0.03 0.45 0.14 −0.01 −0.30 0.28 0.34 0.68 0.18 -
TABLE 4 DOCUMENT MATRIX (9 terms by 9 documents) c1 0.20 −0.06 0.11 −0.95 0.04 −0.08 0.18 −0.01 −0.06 c2 0.60 0.16 0.50 −0.03 −0.21 −0.02 −0.43 0.05 0.24 c3 0.46 −0.13 0.21 0.04 0.38 0.07 −0.24 0.01 0.02 c4 0.54 −0.23 0.57 0.27 −0.20 −0.04 0.26 −0.02 −0.08 c5 0.28 0.11 0.50 0.15 0.33 0.03 0.67 −0.06 −0.26 m1 0.00 0.19 0.10 0.02 0.39 −0.30 −0.34 0.45 −0.62 m2 0.01 0.44 0.19 0.02 0.35 −0.21 −0.15 −0.76 0.02 m3 0.02 0.62 0.25 0.01 0.15 0.00 0.25 0.45 0.52 m4 0.08 0.53 0.08 −0.02 −0.60 0.36 0.04 −0.07 −0.45 -
TABLE 5 DIAGONAL (9 singular values) 3.34 2.54 2.35 1.64 1.50 1.31 0.84 0.56 0.36 - As alluded to earlier, data to plot FIG. 6 was obtained by presuming that two-dimensions are sufficient to capture the major associational structure of the t-by-d Y matrix, that is, m is set to two in the expression for Yt,d, yielding an approximation of the original matrix. Only the first two columns of the TERM and DOCUMENT matrices are considered with the remaining columns being ignored for illustrative purposes. Thus, the term data point corresponding to “human” in FIG. 6 is plotted with coordinates (0.22,−0.11), which are extracted from the first row and the two left-most columns of the TERM matrix. Similarly, the document data point corresponding to title m1 has coordinates (0.00,0.19), coming from row six and the two left-most columns of the DOCUMENT matrix.
- General Model Details
- It is now elucidating to describe in somewhat more detail the mathematical model underlying the latent structure, singular value decomposition technique.
- Any rectangular matrix Y of t rows and d columns, for example, a t-by-d matrix of terms and documents, can be decomposed into a product of three other matrices:
- Y=T o S o D o t, (1)
- where Do t is the transpose of Do, and such that To and Do have unit-length orthogonal columns, (i.e., To tTo=I and Do tDo=I) and So is diagonal. This is called the Singular Value Decomposition (SVD) of Y. (A procedure for SVD is described in the text “Numerical Recipes—The Art of Scientific Computing”, especially
Chapter 2, by Press, Flannery, Teukolsky, and Vetterling, 1986, Cambridge University Press, Cambridge, England). To and Do are the matrices of left and right singular vectors and So is the diagonal matrix of singular values. By convention, the diagonal elements of So are ordered in decreasing magnitude. - With SVD, it is possible to devise a simple strategy for an optimal approximation to Y using smaller matrices. The k largest singular values and their associated columns in To and Do may be kept and the remaining entries set to zero. The product of the resulting matrices is a matrix YR which is approximately equal to Y, and is of rank k. The new matrix YR is the matrix of rank k closest in the least squares sense to Y. Since zeros were introduced into So, the representation of So can be simplified by deleting the rows and columns having these zeros to obtain a new diagonal matrix S, and then deleting the corresponding columns of To and Do to define new matrices T and D, respectively. The result is a reduced model such that
- YR=TSDt. (2)
- The value of k is chosen for each application; it is generally such that k≧100 for a collection of 100-3000 text objects (e.g., documents).
- For discussion purposes, it is useful to interpret the SVD geometrically. The rows of the reduced matrices T and D may be taken as vectors representing terms and documents, respectively, in a k-dimensional space. With appropriate resealing of the axes, by quantities related to the associated diagonal values of S, dot products between points in the space can be used to access and compare objects. (A simplified approach which did not involve rescaling was used to plot the data of FIG. 6, but this was strictly for expository purposes). These techniques are now described.
- Fundamental Comparisons
- There are basically three types of comparisons of interest; (i) those comparing two terms; (ii) those comparing two documents or text objects; and (iii) those comparing a term and a document or text object. As used throughout, the notion of a text object or a data object is general, whereas a document is a specific instance of a text object or a data object. Also, text or data objects are stored in the computer system in files.
- Two Terms: In the data, the dot product between two row vectors of YR tells the extent to which two terms have a similar pattern of occurrence across the set of documents. The matrix YRYR t is the square symmetric matrix approximation containing all the term-by-term dot products. Using equation (2),
- Y R Y R t=(TSD t)(TSD t)t =TS 2 T t=(TS)(TS)t. (3)
- This means that the dot product between the i-th row and the j-th row of YR can be obtained by calculating the dot product between the i-th and j-th rows of the TS matrix. That is, considering the rows of TS as vectors representing the terms, dot products between these vectors give the comparison between terms. The relation between taking the rows of T as vectors and those of TS is simple since S is a diagonal matrix; each vector element has been stretched our shrunk by the corresponding element of S.
- Two Documents: In this case, the dot product is between two column vectors of Y. The document-by-document dot product is approximated by:
- Y R t Y R=(TSD t)t(TSD t)=DS 2 D t=(DS)(DS)t. (4)
- Thus the rows of the DS matrix are taken as vectors representing the documents, and the comparison is via the dot product between the rows of the DS matrix.
- Term and Document: This comparison is somewhat different. Instead of trying to estimate the dot product between rows or between columns of Y, the fundamental comparison between a term and a document is the value of the individual cell in Y. The approximation of Y is simply equation (2), i.e., YR=TSDt. The i,j cell of YR may therefore be obtained by taking the dot product between the i-th row of the matrix TS1/2. While the “within” (terms or documents) comparisons involved using rows of TS and DS as vectors, the “between” comparisons requires TS1/2 or DS1/2 for coordinates. Thus it is not possible to make a single configuration of points in a space that will allow both “between” and “within” comparisons. They will be similar, however, differing only by a stretching or shrinking of the dimensional elements by a factor S1/2.
- Representations of Pseudo-Objects
- The previous results show how it is possible to compute comparisons between the various objects associated with the rows or columns of Y. It is very important in information retrieval applications to compute similar comparison quantities for objects such as queries that do not appear explicitly in Y. For example, it is necessary to be able to take a completely novel query, find a location in k-dimensional latent semantic space for it, and then evaluate its cosine or inner product with respect to terms or objects in the space. Another example would be trying, after-the-fact, to find a representations for documents that did not appear in the original space. The new objects for both these examples are equivalent to objects in the matrix Y in that they may be represented as vectors of terms. For this reason, they are called “pseudo-documents” specifically or “pseudo-objects” generically. In order to compare pseudo-documents to other documents, the starting point is defining a pseudo-document vector, designated Yq. Then the representation Dq is derived such that Dq can be used just like a row of D in the comparison relationships described in the foregoing sections. One criterion for such a derivation is that the insertion of a real document Yi should give Di when the model is ideal (i.e., Y=YR) With this constraint,
- Yq=TSDq t
- or, since TtT equals the identity matrix,
- D q t =S −1 T t Y q
- or, finally,
- D q =Y q t TS −1. (5)
- Thus, with appropriate resealing of the axes, this amounts to placing the pseudo-objects at the vector sum of its corresponding term points. Then Dq may be used like any row of D and, appropriately scaled by S or S1/2, can be used like a usual document vector for making “within” and “between” comparisons. It is to be noted that if the measure of similarity to be used in comparing the query against all documents is one in which only the angle between the vectors is important (such as the cosine measure), there is no difference for comparison purposes between placing the query at the vector average or the vector sum of the terms.
- Methodology of an Illustrative Embodiment
- The foundational principles presented in the foregoing sections are now applied to describe the methodology, with reference to FIG. 7, used to generate the screens displays of FIGS.1-4—FIG. 7 amplifies on and/or encapsulates certain method steps of FIG. 5 that are particular to the illustrative example of FIGS. 1-4.
Processing block 710 depicts that the starting point in the process of FIG. 7 is a catalog of abstracts, with each abstract being representative of a corresponding item (e.g., a full document). Next,processing block 720 is executed to filter the catalog of abstracts to yield a reduced set of abstracts for processing by the latent semantic indexing algorithm—recall that documents are culled so that only “good” recommendations are offered to the purchaser. Then, processingblock 730 is invoked apply the latent semantic indexing algorithm to the reduced set of abstracts to produce a vector space representation of the reduced set of abstracts. - With reference to the foundational principles of the previous Sections, the “term-by-document” matrix Y is formed from the terms in the reduced set of abstracts (which are now the documents). Then Singular Value Decomposition is applied, and the dimensionality of the space is selected to generate the vector space representation of the reduced set of abstracts, that is, the k largest singular values are selected to yield the approximation matrix YR.
- Once the vector space representation is generated by processing
block 730,processing block 740 is used to find so-called “nearest” abstracts for each abstract in the reduced set of abstracts. To accomplish this, the type of comparison utilized is the “Two Documents” comparison already discussed above. Recall in this case, the dot product is between two column vectors of Y. The document-by-document dot product is approximated by: - Y R t Y R=(TSD t)t(TSD t)=DS 2 D t=(DS)(DS)t.
- Thus the rows of the DS matrix are taken as vectors representing the documents, and the comparison is via the dot product between the rows of the DS matrix. To determine the “nearest” abstracts, the cosine measure is used to gauge the closeness of all other abstracts to the given abstract under consideration, that is, one-by-one each abstract is taken as a reference document and the cosine measure of all other abstracts to the given abstract is computed. The “nearest” abstracts are determined based upon pre-determined criteria, such as, the cosine being no less than 0.6 and selection of only the four closest abstracts.
- Once generated, the “nearest” abstracts are stored in a file for later recall during the actual “search” activity by the purchaser, as evidenced by processing
block 750. Recommendations to a purchaser are expedited because the “nearest” abstracts file is generated off-line and stored, that is, the only real-time execution activity required of the on-line system is an access to the file of stored “nearest” abstracts when a purchaser, for example, adds an item to the shopping basket. It is also clear that if a new document is entered into the system and made available to the purchaser, the system is scalable in that the abstract of the new document can be considered as a pseudo-object and the abstracts “nearest” the pseudo-object can serve as recommendations to the purchaser. There is no need to immediately rebuild the stored file for additional documents so that system rebuilds can be scheduled on an as-needed basis. Moreover, in yet another implementation, because of the pseudo-object capability, it may be possible to provide the purchaser with a list of documents “closest” to a set of keywords, and then for each one of the “closest” documents provide a set of recommended “nearest” documents. - The final processing step, as exhibited by processing
block 760, is that of outputting to the purchaser the recommended list of “nearest” abstracts as an item is added to the shopping basket. - Generic Flow Processing (Generation and Storage of “Nearest” Items File)
- By way of abstracting the teachings and suggestions of FIGS. 5 and 7, flow diagram800 of FIG. 8 depicts the most general processing in accordance with the method aspect of the present invention when a file of “nearest” items is generated, usually off-line, and then stored.
-
Processing block 810 applies a latent semantic algorithm to the items to determine a conceptual similarity among the items. It is implicit that the items form a catalog in the generic sense, and that each of the items has an associated textual description. Thus the catalog of items is not necessarily composed of documents, but can be composed of, as suggested earlier, audio tape listings, video tape listings, works-of-art, electronic product listings, and so forth; however, each item has an associated written description that can be used with a latent semantic algorithm to find the conceptual similarity among the items (e.g., inner product or dot product with the cosine measure). - Next,
processing block 820 is invoked to find, for each item, the “nearest” items using the conceptual similarity as a measure of “nearness”. The file is stored for later recall during the shopping experience of an on-line purchaser. - Finally,
processing block 830 is executed so that, whenever each on-line purchaser adds a “latest” item to the shopping cart, the file of “nearest” items determined by processingblock 820 is accessed to provide a recommendation of items “nearest” to the item added to the shopping cart. (Of course it is possible to return the “nearest” items to the purchaser at other points in the shopping experience, not just at the time the purchaser selects a “latest” items. For example, the “nearest” items for each item in the shopping basket could be displayed if there is sufficient screen display area to accomplish this display). - Generic Flow Processing (Dynamic Generation of “Nearest” Items File)
- By way of abstracting the teachings and suggestions of FIGS. 5 and 7, flow diagram900 of FIG. 9 depicts the most general processing in accordance with the method aspect of the present invention when a list of “nearest” items is dynamically generated in response to a purchaser's request—the processing by flow diagram 900 does not require storing a file of conceptual similarity among textual items.
-
Processing block 910 applies, whenever the on-line purchaser adds a “latest” item to the shopping cart, a latent semantic algorithm is applied to the items to determine a conceptual similarity among the items and the “latest” item. It is implicit that the items form a catalog in the generic sense, and that each of the items has an associated textual description. Illustratively, to carry out processing ofblock 910, the matrix YR is computed off-line and stored; when a customer adds the “latest” item, this item is used as a pseudo-object to produce the nearest items based on the conceptual similarity between the “latest” item and all of the items. -
Processing block 920 is then executed so that a recommendation of items “nearest” to the item added to the shopping cart is generated. (Of course it is possible to return the “nearest” items to the purchaser at other points in the shopping experience, not just at the time the purchaser selects a “latest” items. For example, the “nearest” items for each item in the shopping basket could be displayed if there is sufficient screen display area to accomplish this display). - System Hardware of an Illustrative Embodiment
- With reference to FIG. 10, there is shown high-level hardware diagram1000 of components that comprise an illustrative embodiment of the system in accordance with the present invention. In particular, the components of
system 1000 include: (a)Web server 1010; (b)application server 1020; and (c)storage file 1030.System 1000 is coupled to conventional Internet network or “cloud” 1005. Moreover, access toInternet 1005 by a customer is viaPC 1001. - In operation, upon log-in and during various stages of the request-response interaction with
system 1000, the purchaser is presented with a Web page in HTML format on the display ofPC 1001—depicted asWeb page 1002 which conveys purchaser input tosystem 1000, and asWeb page 1003 which conveys a system response to the purchaser. When the purchaser requests information fromsystem 1000 such as by typing and/or clicking on links oninput Web page 1002, the request for information is transmitted using the “https” protocol tosystem 1000. In effect, the purchaser requests system responses in the usual manner by typing, pointing and/or clicking on HTML Web pages. -
Web server 1010 passes the purchaser's input information, such as “search” keywords entered or a Web page link clicked upon by the purchaser, depending upon the stage of the shopping experience, to inputweb page processor 1011 which parses the Web page to obtain information to pass along toapplication server 1020. If the purchaser has entered “search” keywords, thenapplication server 1020 consultsstorage file 1030 to obtain data to return a response Web page. OutputWeb page processor 1021 receives the response data, and prepares a Web page in HTML format for transmission, viaserver 1010 andInternet 1005, toPC 1001 asWeb page 1003. - On the other hand, if the purchaser has clicked upon a item to add to the shopping basket,
application server 1020 accesses that part ofstorage file 1030 that stores the file of “nearest” items to the clicked-upon item. The output ofapplication server 1020 is a set of “nearest” items, which is again placed in HTML format and delivered toPC 1001, viaWeb server 1010 andInternet 1005, asresponse Web page 1003. - Generalizations to the System
- For purposes of specificity, but not by way of limitation,
system 1000 is illustrated as operating in the Internet environment with only a single server, and initially elucidates the set of services embodied in the product-purchase experience. However, it is equally clear that a general computer network implementation imbued with the structure and characteristics heretofore described can effect the applications in accordance with the present invention. For instance, the product-purchase experience can be implemented locally as well, that is, the client-server may be interconnected, for example, via a local area network (LAN) which is not coupled to the Internet. All of the aforementioned benefits apply to this local system so as to realize a product selection experience. - It is possible that additional filtering may be imposed so as to generate the recommendations provided to the purchaser; such filtering may be accomplished, illustratively, by processing
blocks - In addition, it is possible to use multiple items as input to the latent semantic algorithm to generate a recommendation. To accomplish this, terms from each of the multiple items may be employed to generate a pseudo-object, that is, the pseudo-object is a composite of the terms in the multiple items. Accordingly, an extension to the illustrative embodiment is that of using all the items in the shopping basket or a subset of items in the shopping basket, in contrast to the latest item, to generate a recommendation. The technique for accommodating multiple items as input is normally implemented in real-time since it would be virtually impossible to generate and store a “nearest” items file using permutations of all items in the catalog to form composite pseudo-objects.
- Finally, the recommended list could be e-mailed to the purchaser rather than displaying the list immediately on the screen. This may occur when, for example, the recommended list may be too large to be conveniently displayed on the screen display. Also, a recommendation could be e-mailed to the purchaser when a new item is added to the catalog and such added item, if available during the time of the prior interaction with the purchaser, would have been included in the list of recommended items. The e-mail functionality may be implemented by
application server 1020. - Although various embodiments which incorporate the teachings of the present invention have been shown and described in detail herein, those skilled in the art can readily devise many other varied embodiments that still incorporate these teachings.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/600,669 US20040039657A1 (en) | 2000-09-01 | 2003-06-20 | Automatic recommendation of products using latent semantic indexing of content |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/653,917 US6615208B1 (en) | 2000-09-01 | 2000-09-01 | Automatic recommendation of products using latent semantic indexing of content |
US10/600,669 US20040039657A1 (en) | 2000-09-01 | 2003-06-20 | Automatic recommendation of products using latent semantic indexing of content |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/653,917 Continuation US6615208B1 (en) | 2000-09-01 | 2000-09-01 | Automatic recommendation of products using latent semantic indexing of content |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040039657A1 true US20040039657A1 (en) | 2004-02-26 |
Family
ID=27766448
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/653,917 Expired - Lifetime US6615208B1 (en) | 2000-09-01 | 2000-09-01 | Automatic recommendation of products using latent semantic indexing of content |
US10/600,669 Abandoned US20040039657A1 (en) | 2000-09-01 | 2003-06-20 | Automatic recommendation of products using latent semantic indexing of content |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/653,917 Expired - Lifetime US6615208B1 (en) | 2000-09-01 | 2000-09-01 | Automatic recommendation of products using latent semantic indexing of content |
Country Status (1)
Country | Link |
---|---|
US (2) | US6615208B1 (en) |
Cited By (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030033294A1 (en) * | 2001-04-13 | 2003-02-13 | Walker Jay S. | Method and apparatus for marketing supplemental information |
US20030126144A1 (en) * | 2001-08-10 | 2003-07-03 | O'halloran Sharyn | Method and apparatus for access, integration, and analysis of heterogeneous data sources via the manipulation of metadata objects |
US20040054673A1 (en) * | 2002-09-12 | 2004-03-18 | Dement William Sanford | Provision of search topic-specific search results information |
US20040133574A1 (en) * | 2003-01-07 | 2004-07-08 | Science Applications International Corporaton | Vector space method for secure information sharing |
US20060250358A1 (en) * | 2005-05-04 | 2006-11-09 | Hillcrest Laboratories, Inc. | Methods and systems for scrolling and pointing in user interfaces |
US20070185839A1 (en) * | 2006-02-09 | 2007-08-09 | Ebay Inc. | Methods and systems to communicate information |
US20070192794A1 (en) * | 2006-02-16 | 2007-08-16 | Hillcrest Laboratories, Inc. | Systems and methods for placing advertisements |
US20070198501A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Methods and systems to generate rules to identify data items |
US20070198498A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Method and system to analyze rules based on aspect coverage |
US20070198496A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Method and system to analyze rules based on domain coverage |
US20070200850A1 (en) * | 2006-02-09 | 2007-08-30 | Ebay Inc. | Methods and systems to communicate information |
US20070250407A1 (en) * | 1999-10-27 | 2007-10-25 | Ebay, Inc. | Method For Listing Goods For Sale By Telephone |
US20080005137A1 (en) * | 2006-06-29 | 2008-01-03 | Microsoft Corporation | Incrementally building aspect models |
US20080016152A1 (en) * | 2003-11-20 | 2008-01-17 | Canon Kabushiki Kaisha | Method of controlling server apparatus which stores image data received via network in memory, program for causing computer apparatus to execute the method, storage medium which stores the program, and compuer apparatus |
US20080016019A1 (en) * | 2006-02-09 | 2008-01-17 | Ebay Inc. | Method and system to analyze rules based on popular query coverage |
US20080255966A1 (en) * | 1999-10-27 | 2008-10-16 | Ebay | Method and Apparatus For Facilitating Sales of Goods By Independent Parties |
US20080270250A1 (en) * | 2007-04-26 | 2008-10-30 | Ebay Inc. | Flexible asset and search recommendation engines |
US20090089314A1 (en) * | 2007-09-28 | 2009-04-02 | Cory Hicks | Duplicate item detection system and method |
US20090248674A1 (en) * | 2008-03-27 | 2009-10-01 | Kabushiki Kaisha Toshiba | Search keyword improvement apparatus, server and method |
US20090248682A1 (en) * | 2008-04-01 | 2009-10-01 | Certona Corporation | System and method for personalized search |
US20090281895A1 (en) * | 2008-05-06 | 2009-11-12 | David Selinger | System and process for improving recommendations for use in providing personalized advertisements to retail customers |
US20090281923A1 (en) * | 2008-05-06 | 2009-11-12 | David Selinger | System and process for improving product recommendations for use in providing personalized advertisements to retail customers |
US20100017398A1 (en) * | 2006-06-09 | 2010-01-21 | Raghav Gupta | Determining relevancy and desirability of terms |
US20100017396A1 (en) * | 2008-07-16 | 2010-01-21 | Sony Computer Entertainment Inc. | Related Information Presentation System, Related Information Presentation Method, and Information Storage Medium |
US7716221B2 (en) | 2006-06-02 | 2010-05-11 | Behrens Clifford A | Concept based cross media indexing and retrieval of speech documents |
US7739225B2 (en) | 2006-02-09 | 2010-06-15 | Ebay Inc. | Method and system to analyze aspect rules based on domain coverage of an aspect-value pair |
US20100229120A1 (en) * | 2006-11-15 | 2010-09-09 | Tsuyoshi Inoue | Operation assisting apparatus and operation assisting method |
US7831476B2 (en) | 2002-10-21 | 2010-11-09 | Ebay Inc. | Listing recommendation in a network-based commerce system |
US20110131147A1 (en) * | 2009-11-30 | 2011-06-02 | Electronics And Telecommunications Research Institute | Method and system for recommendation based on locational and societal relation |
US20110153613A1 (en) * | 2009-12-21 | 2011-06-23 | Electronics And Telecommunications Research Institute | Information search apparatus and method using locational/societal relation-based automatic category generation |
US8051040B2 (en) | 2007-06-08 | 2011-11-01 | Ebay Inc. | Electronic publication system |
US8275673B1 (en) | 2002-04-17 | 2012-09-25 | Ebay Inc. | Method and system to recommend further items to a user of a network-based transaction facility upon unsuccessful transacting with respect to an item |
US20120278821A1 (en) * | 2011-04-30 | 2012-11-01 | Samsung Electronics Co., Ltd. | Middle partners |
US20130097052A1 (en) * | 2002-10-07 | 2013-04-18 | Amazon Technologies, Inc. | User interface and methods for recommending items to users |
US20130117147A1 (en) * | 2011-11-07 | 2013-05-09 | Nathan J. Ackerman | Similarity and Relatedness of Content |
US8491384B2 (en) | 2011-04-30 | 2013-07-23 | Samsung Electronics Co., Ltd. | Multi-user discovery |
US8533094B1 (en) | 2000-01-26 | 2013-09-10 | Ebay Inc. | On-line auction sales leads |
CN104462327A (en) * | 2014-12-02 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | Computing method, search processing method, computing device and search processing device for sentence similarity |
CN104462323A (en) * | 2014-12-02 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | Semantic similarity computing method, search result processing method and search result processing device |
US20150278910A1 (en) * | 2014-03-31 | 2015-10-01 | Microsoft Corporation | Directed Recommendations |
US9311046B1 (en) | 2007-09-27 | 2016-04-12 | Amazon Technologies, Inc. | System for detecting associations between items |
US20170076299A1 (en) * | 2015-09-14 | 2017-03-16 | Adobe Systems Incorporated | Extracting relevant features from electronic marketing data for training analytical models |
US20170083965A1 (en) * | 2014-06-10 | 2017-03-23 | Huawei Technologies Co., Ltd. | Item Recommendation Method and Apparatus |
CN107016066A (en) * | 2017-03-17 | 2017-08-04 | 南方电网科学研究院有限责任公司 | Measuring point matching process and device in a kind of electric network model modeling process |
US9772979B1 (en) * | 2012-08-08 | 2017-09-26 | Amazon Technologies, Inc. | Reproducing user browsing sessions |
Families Citing this family (135)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
US7152031B1 (en) * | 2000-02-25 | 2006-12-19 | Novell, Inc. | Construction, manipulation, and comparison of a multi-dimensional semantic space |
US7197451B1 (en) | 1998-07-02 | 2007-03-27 | Novell, Inc. | Method and mechanism for the creation, maintenance, and comparison of semantic abstracts |
US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
US6862710B1 (en) * | 1999-03-23 | 2005-03-01 | Insightful Corporation | Internet navigation using soft hyperlinks |
WO2001035667A1 (en) | 1999-11-10 | 2001-05-17 | Launch Media, Inc. | Internet radio and broadcast method |
US6389467B1 (en) | 2000-01-24 | 2002-05-14 | Friskit, Inc. | Streaming media search and continuous playback system of media resources located by multiple network addresses |
US7162482B1 (en) | 2000-05-03 | 2007-01-09 | Musicmatch, Inc. | Information retrieval engine |
US8352331B2 (en) * | 2000-05-03 | 2013-01-08 | Yahoo! Inc. | Relationship discovery engine |
US7653530B2 (en) | 2000-07-13 | 2010-01-26 | Novell, Inc. | Method and mechanism for the creation, maintenance, and comparison of semantic abstracts |
US7286977B1 (en) * | 2000-09-05 | 2007-10-23 | Novell, Inc. | Intentional-stance characterization of a general content stream or repository |
US7672952B2 (en) | 2000-07-13 | 2010-03-02 | Novell, Inc. | System and method of semantic correlation of rich content |
US7389225B1 (en) * | 2000-10-18 | 2008-06-17 | Novell, Inc. | Method and mechanism for superpositioning state vectors in a semantic abstract |
US7177922B1 (en) | 2000-09-05 | 2007-02-13 | Novell, Inc. | Policy enforcement using the semantic characterization of traffic |
US20100122312A1 (en) * | 2008-11-07 | 2010-05-13 | Novell, Inc. | Predictive service systems |
US20090234718A1 (en) * | 2000-09-05 | 2009-09-17 | Novell, Inc. | Predictive service systems using emotion detection |
US8271333B1 (en) | 2000-11-02 | 2012-09-18 | Yahoo! Inc. | Content-related wallpaper |
US7707221B1 (en) | 2002-04-03 | 2010-04-27 | Yahoo! Inc. | Associating and linking compact disc metadata |
US6847966B1 (en) * | 2002-04-24 | 2005-01-25 | Engenium Corporation | Method and system for optimally searching a document database using a representative semantic space |
US7047488B2 (en) | 2002-07-19 | 2006-05-16 | Open Invention Network | Registry driven interoperability and exchange of documents |
US8255263B2 (en) * | 2002-09-23 | 2012-08-28 | General Motors Llc | Bayesian product recommendation engine |
ATE378759T1 (en) | 2003-05-06 | 2007-11-15 | Cvon Innovations Ltd | MESSAGE TRANSMISSION SYSTEM AND INFORMATION SERVICE |
US9552354B1 (en) * | 2003-09-05 | 2017-01-24 | Spoken Traslation Inc. | Method and apparatus for cross-lingual communication |
CN1875377A (en) | 2003-09-10 | 2006-12-06 | 音乐匹配公司 | Music purchasing and playing system and method |
US20050210042A1 (en) * | 2004-03-22 | 2005-09-22 | Goedken James F | Methods and apparatus to search and analyze prior art |
US7949666B2 (en) | 2004-07-09 | 2011-05-24 | Ricoh, Ltd. | Synchronizing distributed work through document logs |
CN100550014C (en) * | 2004-10-29 | 2009-10-14 | 松下电器产业株式会社 | Information indexing device |
WO2006075032A1 (en) * | 2005-01-05 | 2006-07-20 | Musicstrands, S.A.U. | System and method for recommending multimedia elements |
US7693887B2 (en) * | 2005-02-01 | 2010-04-06 | Strands, Inc. | Dynamic identification of a new set of media items responsive to an input mediaset |
US7734569B2 (en) * | 2005-02-03 | 2010-06-08 | Strands, Inc. | Recommender system for identifying a new set of media items responsive to an input set of media items and knowledge base metrics |
WO2006084269A2 (en) | 2005-02-04 | 2006-08-10 | Musicstrands, Inc. | System for browsing through a music catalog using correlation metrics of a knowledge base of mediasets |
JP4622589B2 (en) * | 2005-03-08 | 2011-02-02 | ソニー株式会社 | Information processing apparatus and method, program, and recording medium |
US20060224584A1 (en) * | 2005-03-31 | 2006-10-05 | Content Analyst Company, Llc | Automatic linear text segmentation |
US7720792B2 (en) * | 2005-04-05 | 2010-05-18 | Content Analyst Company, Llc | Automatic stop word identification and compensation |
US7580910B2 (en) * | 2005-04-06 | 2009-08-25 | Content Analyst Company, Llc | Perturbing latent semantic indexing spaces |
EP1926027A1 (en) * | 2005-04-22 | 2008-05-28 | Strands Labs S.A. | System and method for acquiring and aggregating data relating to the reproduction of multimedia files or elements |
US8214264B2 (en) | 2005-05-02 | 2012-07-03 | Cbs Interactive, Inc. | System and method for an electronic product advisor |
US20090070267A9 (en) * | 2005-09-30 | 2009-03-12 | Musicstrands, Inc. | User programmed media delivery service |
US7877387B2 (en) * | 2005-09-30 | 2011-01-25 | Strands, Inc. | Systems and methods for promotional media item selection and promotional program unit generation |
EP1949218A4 (en) * | 2005-10-04 | 2009-12-02 | Strands Inc | Methods and apparatus for visualizing a music library |
BRPI0620084B1 (en) | 2005-12-19 | 2018-11-21 | Apple Inc | method for identifying individual users in a defined user community, based on comparing the first user's profile with other user profiles, for a first community member, and method for measuring individual user similarity for a first user in a defined user community. users |
US20070162546A1 (en) * | 2005-12-22 | 2007-07-12 | Musicstrands, Inc. | Sharing tags among individual user media libraries |
US7849053B2 (en) * | 2005-12-29 | 2010-12-07 | Ricoh Co. Ltd. | Coordination and tracking of workflows |
US8015194B2 (en) * | 2005-12-29 | 2011-09-06 | Ricoh Co., Ltd. | Refining based on log content |
US8095537B2 (en) * | 2005-12-29 | 2012-01-10 | Ricoh Co., Ltd. | Log integrity verification |
US7970738B2 (en) * | 2005-12-29 | 2011-06-28 | Ricoh Co., Ltd. | Always on and updated operation for document logs |
US20070244880A1 (en) * | 2006-02-03 | 2007-10-18 | Francisco Martin | Mediaset generation system |
BRPI0621315A2 (en) * | 2006-02-10 | 2011-12-06 | Strands Inc | dynamic interactive entertainment |
WO2007095272A2 (en) * | 2006-02-10 | 2007-08-23 | Strands, Inc. | Systems and methods for prioritizing mobile media player files |
US8521611B2 (en) | 2006-03-06 | 2013-08-27 | Apple Inc. | Article trading among members of a community |
US8285595B2 (en) * | 2006-03-29 | 2012-10-09 | Napo Enterprises, Llc | System and method for refining media recommendations |
US7809685B2 (en) | 2006-04-21 | 2010-10-05 | Ricoh Co., Ltd. | Secure and efficient methods for logging and synchronizing data exchanges |
US8903843B2 (en) | 2006-06-21 | 2014-12-02 | Napo Enterprises, Llc | Historical media recommendation service |
US8059646B2 (en) | 2006-07-11 | 2011-11-15 | Napo Enterprises, Llc | System and method for identifying music content in a P2P real time recommendation network |
US7970922B2 (en) | 2006-07-11 | 2011-06-28 | Napo Enterprises, Llc | P2P real time media recommendations |
US7680959B2 (en) * | 2006-07-11 | 2010-03-16 | Napo Enterprises, Llc | P2P network for providing real time media recommendations |
US9003056B2 (en) | 2006-07-11 | 2015-04-07 | Napo Enterprises, Llc | Maintaining a minimum level of real time media recommendations in the absence of online friends |
US8327266B2 (en) | 2006-07-11 | 2012-12-04 | Napo Enterprises, Llc | Graphical user interface system for allowing management of a media item playlist based on a preference scoring system |
US8805831B2 (en) * | 2006-07-11 | 2014-08-12 | Napo Enterprises, Llc | Scoring and replaying media items |
US8090606B2 (en) * | 2006-08-08 | 2012-01-03 | Napo Enterprises, Llc | Embedded media recommendations |
US8620699B2 (en) | 2006-08-08 | 2013-12-31 | Napo Enterprises, Llc | Heavy influencer media recommendations |
US8479004B2 (en) | 2006-08-31 | 2013-07-02 | Ricoh Co., Ltd | Paper-based document logging |
US20100328312A1 (en) * | 2006-10-20 | 2010-12-30 | Justin Donaldson | Personal music recommendation mapping |
US8874655B2 (en) * | 2006-12-13 | 2014-10-28 | Napo Enterprises, Llc | Matching participants in a P2P recommendation network loosely coupled to a subscription service |
US8006094B2 (en) | 2007-02-21 | 2011-08-23 | Ricoh Co., Ltd. | Trustworthy timestamps and certifiable clocks using logs linked by cryptographic hashes |
US20080243688A1 (en) * | 2007-03-28 | 2008-10-02 | Hart Peter E | Method and Apparatus for Recording Transactions with a Portable Logging Device |
US8996483B2 (en) | 2007-03-28 | 2015-03-31 | Ricoh Co., Ltd. | Method and apparatus for recording associations with logs |
US9224427B2 (en) * | 2007-04-02 | 2015-12-29 | Napo Enterprises LLC | Rating media item recommendations using recommendation paths and/or media item usage |
US8112720B2 (en) | 2007-04-05 | 2012-02-07 | Napo Enterprises, Llc | System and method for automatically and graphically associating programmatically-generated media item recommendations related to a user's socially recommended media items |
US8671000B2 (en) | 2007-04-24 | 2014-03-11 | Apple Inc. | Method and arrangement for providing content to multimedia devices |
EP2153388A1 (en) * | 2007-04-30 | 2010-02-17 | Jime Sa | Method of intermediation within a social network of users of a service/application to expose relevant media items |
US8839141B2 (en) | 2007-06-01 | 2014-09-16 | Napo Enterprises, Llc | Method and system for visually indicating a replay status of media items on a media device |
US20080301187A1 (en) * | 2007-06-01 | 2008-12-04 | Concert Technology Corporation | Enhanced media item playlist comprising presence information |
US20090049045A1 (en) * | 2007-06-01 | 2009-02-19 | Concert Technology Corporation | Method and system for sorting media items in a playlist on a media device |
US9037632B2 (en) * | 2007-06-01 | 2015-05-19 | Napo Enterprises, Llc | System and method of generating a media item recommendation message with recommender presence information |
US8285776B2 (en) * | 2007-06-01 | 2012-10-09 | Napo Enterprises, Llc | System and method for processing a received media item recommendation message comprising recommender presence information |
US9164993B2 (en) * | 2007-06-01 | 2015-10-20 | Napo Enterprises, Llc | System and method for propagating a media item recommendation message comprising recommender presence information |
US20090048992A1 (en) * | 2007-08-13 | 2009-02-19 | Concert Technology Corporation | System and method for reducing the repetitive reception of a media item recommendation |
US20090049030A1 (en) * | 2007-08-13 | 2009-02-19 | Concert Technology Corporation | System and method for reducing the multiple listing of a media item in a playlist |
US7865522B2 (en) * | 2007-11-07 | 2011-01-04 | Napo Enterprises, Llc | System and method for hyping media recommendations in a media recommendation system |
US9060034B2 (en) | 2007-11-09 | 2015-06-16 | Napo Enterprises, Llc | System and method of filtering recommenders in a media item recommendation system |
US9224150B2 (en) * | 2007-12-18 | 2015-12-29 | Napo Enterprises, Llc | Identifying highly valued recommendations of users in a media recommendation network |
US9734507B2 (en) * | 2007-12-20 | 2017-08-15 | Napo Enterprise, Llc | Method and system for simulating recommendations in a social network for an offline user |
US8396951B2 (en) * | 2007-12-20 | 2013-03-12 | Napo Enterprises, Llc | Method and system for populating a content repository for an internet radio service based on a recommendation network |
US8060525B2 (en) | 2007-12-21 | 2011-11-15 | Napo Enterprises, Llc | Method and system for generating media recommendations in a distributed environment based on tagging play history information with location information |
US8117193B2 (en) | 2007-12-21 | 2012-02-14 | Lemi Technology, Llc | Tunersphere |
US8316015B2 (en) | 2007-12-21 | 2012-11-20 | Lemi Technology, Llc | Tunersphere |
US8725740B2 (en) | 2008-03-24 | 2014-05-13 | Napo Enterprises, Llc | Active playlist having dynamic media item groups |
US20090259621A1 (en) * | 2008-04-11 | 2009-10-15 | Concert Technology Corporation | Providing expected desirability information prior to sending a recommendation |
US8484311B2 (en) | 2008-04-17 | 2013-07-09 | Eloy Technology, Llc | Pruning an aggregate media collection |
EP2288986A4 (en) * | 2008-04-28 | 2013-01-09 | Strands Inc | Method for providing personalized recommendations of financial products based on user data |
WO2009151814A1 (en) * | 2008-04-30 | 2009-12-17 | Strands, Inc. | Scaleable system and method for distributed prediction markets |
EP2304597A4 (en) * | 2008-05-31 | 2012-10-31 | Apple Inc | Adaptive recommender technology |
US20090299945A1 (en) * | 2008-06-03 | 2009-12-03 | Strands, Inc. | Profile modeling for sharing individual user preferences |
WO2010021530A1 (en) * | 2008-08-20 | 2010-02-25 | Instituto Tecnologico Y De Estudios Superiores De Monterrey | System and method for displaying relevant textual advertising based on semantic similarity |
US8601003B2 (en) | 2008-09-08 | 2013-12-03 | Apple Inc. | System and method for playlist generation based on similarity data |
US8185733B2 (en) * | 2008-10-02 | 2012-05-22 | Ricoh Co., Ltd. | Method and apparatus for automatically publishing content based identifiers |
US8332406B2 (en) | 2008-10-02 | 2012-12-11 | Apple Inc. | Real-time visualization of user consumption of media items |
US8880599B2 (en) | 2008-10-15 | 2014-11-04 | Eloy Technology, Llc | Collection digest for a media sharing system |
US8484227B2 (en) | 2008-10-15 | 2013-07-09 | Eloy Technology, Llc | Caching and synching process for a media sharing system |
US8386475B2 (en) * | 2008-12-30 | 2013-02-26 | Novell, Inc. | Attribution analysis and correlation |
WO2010075888A1 (en) * | 2008-12-30 | 2010-07-08 | Telecom Italia S.P.A. | Method and system of content recommendation |
US8296297B2 (en) * | 2008-12-30 | 2012-10-23 | Novell, Inc. | Content analysis and correlation |
US8301622B2 (en) * | 2008-12-30 | 2012-10-30 | Novell, Inc. | Identity analysis and correlation |
US9916381B2 (en) * | 2008-12-30 | 2018-03-13 | Telecom Italia S.P.A. | Method and system for content classification |
US20100169328A1 (en) * | 2008-12-31 | 2010-07-01 | Strands, Inc. | Systems and methods for making recommendations using model-based collaborative filtering with user communities and items collections |
US8200602B2 (en) * | 2009-02-02 | 2012-06-12 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
US8214370B1 (en) * | 2009-03-26 | 2012-07-03 | Crossbow Technology, Inc. | Data pre-processing and indexing for efficient retrieval and enhanced presentation |
US20100250479A1 (en) * | 2009-03-31 | 2010-09-30 | Novell, Inc. | Intellectual property discovery and mapping systems and methods |
US8166032B2 (en) * | 2009-04-09 | 2012-04-24 | MarketChorus, Inc. | System and method for sentiment-based text classification and relevancy ranking |
US20100332539A1 (en) * | 2009-06-30 | 2010-12-30 | Sunil Mohan | Presenting a related item using a cluster |
US20110060738A1 (en) | 2009-09-08 | 2011-03-10 | Apple Inc. | Media item clustering based on similarity data |
US9251524B2 (en) * | 2009-11-25 | 2016-02-02 | Telefonaktiebolaget L M Ericsson (Publ) | System and methods for updating user profiles and providing selected documents to users |
CN102467709B (en) | 2010-11-17 | 2017-03-01 | 阿里巴巴集团控股有限公司 | A kind of method and apparatus sending merchandise news |
US9230014B1 (en) * | 2011-09-13 | 2016-01-05 | Sri International | Method and apparatus for recommending work artifacts based on collaboration events |
US8832655B2 (en) | 2011-09-29 | 2014-09-09 | Accenture Global Services Limited | Systems and methods for finding project-related information by clustering applications into related concept categories |
US8983905B2 (en) | 2011-10-03 | 2015-03-17 | Apple Inc. | Merging playlists from multiple sources |
US8909667B2 (en) | 2011-11-01 | 2014-12-09 | Lemi Technology, Llc | Systems, methods, and computer readable media for generating recommendations in a media recommendation system |
US10620822B2 (en) * | 2011-11-09 | 2020-04-14 | Adventures Gmbh | Method and system for selecting and providing content of interest |
US10331785B2 (en) * | 2012-02-17 | 2019-06-25 | Tivo Solutions Inc. | Identifying multimedia asset similarity using blended semantic and latent feature analysis |
US11928606B2 (en) | 2013-03-15 | 2024-03-12 | TSG Technologies, LLC | Systems and methods for classifying electronic documents |
US9298814B2 (en) | 2013-03-15 | 2016-03-29 | Maritz Holdings Inc. | Systems and methods for classifying electronic documents |
US9348898B2 (en) * | 2014-03-27 | 2016-05-24 | Microsoft Technology Licensing, Llc | Recommendation system with dual collaborative filter usage matrix |
US10049102B2 (en) | 2014-06-26 | 2018-08-14 | Hcl Technologies Limited | Method and system for providing semantics based technical support |
US11257115B2 (en) | 2014-09-02 | 2022-02-22 | Gil Emanuel Fuchs | Providing additional digital content or advertising based on analysis of specific interest in the digital content being viewed |
US10019143B1 (en) * | 2014-09-29 | 2018-07-10 | Amazon Technologies, Inc. | Determining a principal image from user interaction |
WO2017180977A1 (en) * | 2016-04-15 | 2017-10-19 | Wal-Mart Stores, Inc. | Systems and methods for facilitating shopping in a physical retail facility |
MX2018012578A (en) | 2016-04-15 | 2019-03-01 | Walmart Apollo Llc | Systems and methods for providing content-based product recommendations. |
MX2018012574A (en) | 2016-04-15 | 2019-03-06 | Walmart Apollo Llc | Partiality vector refinement systems and methods through sample probing. |
US10373464B2 (en) | 2016-07-07 | 2019-08-06 | Walmart Apollo, Llc | Apparatus and method for updating partiality vectors based on monitoring of person and his or her home |
US10169331B2 (en) * | 2017-01-29 | 2019-01-01 | International Business Machines Corporation | Text mining for automatically determining semantic relatedness |
US10936653B2 (en) | 2017-06-02 | 2021-03-02 | Apple Inc. | Automatically predicting relevant contexts for media items |
US11004135B1 (en) * | 2017-08-18 | 2021-05-11 | Amazon Technologies, Inc. | Artificial intelligence system for balancing relevance and diversity of network-accessible content |
US11853306B2 (en) * | 2018-06-03 | 2023-12-26 | Apple Inc. | Techniques for personalizing app store recommendations |
CN112085251B (en) * | 2020-08-03 | 2022-04-22 | 广州数说故事信息科技有限公司 | Consumer product research and development combined concept recommendation method and system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266649B1 (en) * | 1998-09-18 | 2001-07-24 | Amazon.Com, Inc. | Collaborative recommendations using item-to-item similarity mappings |
US20010014868A1 (en) * | 1997-12-05 | 2001-08-16 | Frederick Herz | System for the automatic determination of customized prices and promotions |
US6349309B1 (en) * | 1999-05-24 | 2002-02-19 | International Business Machines Corporation | System and method for detecting clusters of information with application to e-commerce |
US20030208407A1 (en) * | 2000-04-11 | 2003-11-06 | Arcufutures, Inc. | System and Method for Commodity Futures Contract Trading Risk Management |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4348740A (en) | 1978-04-04 | 1982-09-07 | White Edward A | Method and portable apparatus for comparison of stored sets of data |
US4870579A (en) | 1987-10-01 | 1989-09-26 | Neonics, Inc. | System and method of predicting subjective reactions |
US4839853A (en) | 1988-09-15 | 1989-06-13 | Bell Communications Research, Inc. | Computer information retrieval using latent semantic structure |
US5301109A (en) * | 1990-06-11 | 1994-04-05 | Bell Communications Research, Inc. | Computerized cross-language document retrieval using latent semantic indexing |
US5278980A (en) | 1991-08-16 | 1994-01-11 | Xerox Corporation | Iterative technique for phrase query formation and an information retrieval system employing same |
US5675819A (en) * | 1994-06-16 | 1997-10-07 | Xerox Corporation | Document information retrieval using global word co-occurrence patterns |
US5758257A (en) * | 1994-11-29 | 1998-05-26 | Herz; Frederick | System and method for scheduling broadcast of and access to video programs and other data using customer profiles |
US5987446A (en) | 1996-11-12 | 1999-11-16 | U.S. West, Inc. | Searching large collections of text using multiple search engines concurrently |
US6356864B1 (en) * | 1997-07-25 | 2002-03-12 | University Technology Corporation | Methods for analysis and evaluation of the semantic content of a writing based on vector length |
-
2000
- 2000-09-01 US US09/653,917 patent/US6615208B1/en not_active Expired - Lifetime
-
2003
- 2003-06-20 US US10/600,669 patent/US20040039657A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010014868A1 (en) * | 1997-12-05 | 2001-08-16 | Frederick Herz | System for the automatic determination of customized prices and promotions |
US6266649B1 (en) * | 1998-09-18 | 2001-07-24 | Amazon.Com, Inc. | Collaborative recommendations using item-to-item similarity mappings |
US6349309B1 (en) * | 1999-05-24 | 2002-02-19 | International Business Machines Corporation | System and method for detecting clusters of information with application to e-commerce |
US20030208407A1 (en) * | 2000-04-11 | 2003-11-06 | Arcufutures, Inc. | System and Method for Commodity Futures Contract Trading Risk Management |
Cited By (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110004535A1 (en) * | 1999-10-27 | 2011-01-06 | Ebay Inc. | Method and Apparatus For Listing Goods For Sale |
US8600826B2 (en) | 1999-10-27 | 2013-12-03 | Ebay Inc. | Method and apparatus for presenting information relating to a good |
US20080255966A1 (en) * | 1999-10-27 | 2008-10-16 | Ebay | Method and Apparatus For Facilitating Sales of Goods By Independent Parties |
US20070250407A1 (en) * | 1999-10-27 | 2007-10-25 | Ebay, Inc. | Method For Listing Goods For Sale By Telephone |
US20080183489A1 (en) * | 1999-10-27 | 2008-07-31 | Ebay | Method and Apparatus For Listing Goods For Sale |
US7813967B2 (en) | 1999-10-27 | 2010-10-12 | Ebay Inc. | Method and apparatus for listing goods for sale |
US7983953B2 (en) | 1999-10-27 | 2011-07-19 | Ebay Inc. | Method and apparatus for listing goods for sale |
US20110178898A1 (en) * | 1999-10-27 | 2011-07-21 | Ebay Inc. | Method and apparatus for presenting information relating to a good |
US7953641B2 (en) | 1999-10-27 | 2011-05-31 | Ebay Inc. | Method for listing goods for sale by telephone |
US8533094B1 (en) | 2000-01-26 | 2013-09-10 | Ebay Inc. | On-line auction sales leads |
US10657585B2 (en) | 2000-01-26 | 2020-05-19 | Ebay Inc. | On-line auction sales leads |
US20030033294A1 (en) * | 2001-04-13 | 2003-02-13 | Walker Jay S. | Method and apparatus for marketing supplemental information |
US20050154727A1 (en) * | 2001-08-10 | 2005-07-14 | O'halloran Sharyn | Method and apparatus for access, integration, and analysis of heterogeneous data sources via the manipulation of metadata objects |
US8171050B2 (en) | 2001-08-10 | 2012-05-01 | Datavine Research Services | Method and apparatus for access, integration, and analysis of heterogeneous data sources via the manipulation of metadata objects |
US20030126144A1 (en) * | 2001-08-10 | 2003-07-03 | O'halloran Sharyn | Method and apparatus for access, integration, and analysis of heterogeneous data sources via the manipulation of metadata objects |
US20080270456A1 (en) * | 2001-08-10 | 2008-10-30 | David Epstein | Method and Apparatus for Access, Integration, and Analysis of Heterogeneous Data Sources Via the Manipulation of Metadata Objects |
US9165300B2 (en) | 2002-04-17 | 2015-10-20 | Ebay Inc. | Generating a recommendation |
US10074127B2 (en) | 2002-04-17 | 2018-09-11 | Ebay Inc. | Generating a recommendation |
US8275673B1 (en) | 2002-04-17 | 2012-09-25 | Ebay Inc. | Method and system to recommend further items to a user of a network-based transaction facility upon unsuccessful transacting with respect to an item |
US20040054673A1 (en) * | 2002-09-12 | 2004-03-18 | Dement William Sanford | Provision of search topic-specific search results information |
US20130097052A1 (en) * | 2002-10-07 | 2013-04-18 | Amazon Technologies, Inc. | User interface and methods for recommending items to users |
US8712868B2 (en) | 2002-10-21 | 2014-04-29 | Ebay Inc. | Listing recommendation using generation of a user-specific query in a network-based commerce system |
US20110055040A1 (en) * | 2002-10-21 | 2011-03-03 | Ebay Inc. | Listing recommendation in a network-based commerce system |
US7831476B2 (en) | 2002-10-21 | 2010-11-09 | Ebay Inc. | Listing recommendation in a network-based commerce system |
US8024344B2 (en) * | 2003-01-07 | 2011-09-20 | Content Analyst Company, Llc | Vector space method for secure information sharing |
US20090328226A1 (en) * | 2003-01-07 | 2009-12-31 | Content Analyst Company. LLC | Vector Space Method for Secure Information Sharing |
US20040133574A1 (en) * | 2003-01-07 | 2004-07-08 | Science Applications International Corporaton | Vector space method for secure information sharing |
US20080016152A1 (en) * | 2003-11-20 | 2008-01-17 | Canon Kabushiki Kaisha | Method of controlling server apparatus which stores image data received via network in memory, program for causing computer apparatus to execute the method, storage medium which stores the program, and compuer apparatus |
US8204894B2 (en) * | 2003-11-20 | 2012-06-19 | Canon Kabushiki Kaisha | Controlling a server apparatus which stores image data received via a network in memory |
US20060250358A1 (en) * | 2005-05-04 | 2006-11-09 | Hillcrest Laboratories, Inc. | Methods and systems for scrolling and pointing in user interfaces |
US20100217741A1 (en) * | 2006-02-09 | 2010-08-26 | Josh Loftus | Method and system to analyze rules |
US20110119246A1 (en) * | 2006-02-09 | 2011-05-19 | Ebay Inc. | Method and system to identify a preferred domain of a plurality of domains |
US7725417B2 (en) | 2006-02-09 | 2010-05-25 | Ebay Inc. | Method and system to analyze rules based on popular query coverage |
US20100145928A1 (en) * | 2006-02-09 | 2010-06-10 | Ebay Inc. | Methods and systems to communicate information |
US7739225B2 (en) | 2006-02-09 | 2010-06-15 | Ebay Inc. | Method and system to analyze aspect rules based on domain coverage of an aspect-value pair |
US7739226B2 (en) | 2006-02-09 | 2010-06-15 | Ebay Inc. | Method and system to analyze aspect rules based on domain coverage of the aspect rules |
US20070198496A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Method and system to analyze rules based on domain coverage |
US20070185839A1 (en) * | 2006-02-09 | 2007-08-09 | Ebay Inc. | Methods and systems to communicate information |
US20100250535A1 (en) * | 2006-02-09 | 2010-09-30 | Josh Loftus | Identifying an item based on data associated with the item |
US7640234B2 (en) | 2006-02-09 | 2009-12-29 | Ebay Inc. | Methods and systems to communicate information |
US8521712B2 (en) | 2006-02-09 | 2013-08-27 | Ebay, Inc. | Method and system to enable navigation of data items |
US10474762B2 (en) | 2006-02-09 | 2019-11-12 | Ebay Inc. | Methods and systems to communicate information |
US7849047B2 (en) | 2006-02-09 | 2010-12-07 | Ebay Inc. | Method and system to analyze domain rules based on domain coverage of the domain rules |
US8688623B2 (en) | 2006-02-09 | 2014-04-01 | Ebay Inc. | Method and system to identify a preferred domain of a plurality of domains |
US8244666B2 (en) | 2006-02-09 | 2012-08-14 | Ebay Inc. | Identifying an item based on data inferred from information about the item |
US20110082872A1 (en) * | 2006-02-09 | 2011-04-07 | Ebay Inc. | Method and system to transform unstructured information |
US8909594B2 (en) | 2006-02-09 | 2014-12-09 | Ebay Inc. | Identifying an item based on data associated with the item |
US20070198498A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Method and system to analyze rules based on aspect coverage |
US20070198501A1 (en) * | 2006-02-09 | 2007-08-23 | Ebay Inc. | Methods and systems to generate rules to identify data items |
US9747376B2 (en) | 2006-02-09 | 2017-08-29 | Ebay Inc. | Identifying an item based on data associated with the item |
US9443333B2 (en) | 2006-02-09 | 2016-09-13 | Ebay Inc. | Methods and systems to communicate information |
US20070200850A1 (en) * | 2006-02-09 | 2007-08-30 | Ebay Inc. | Methods and systems to communicate information |
US20080016019A1 (en) * | 2006-02-09 | 2008-01-17 | Ebay Inc. | Method and system to analyze rules based on popular query coverage |
US8055641B2 (en) | 2006-02-09 | 2011-11-08 | Ebay Inc. | Methods and systems to communicate information |
US8046321B2 (en) | 2006-02-09 | 2011-10-25 | Ebay Inc. | Method and system to analyze rules |
US8396892B2 (en) | 2006-02-09 | 2013-03-12 | Ebay Inc. | Method and system to transform unstructured information |
US8380698B2 (en) * | 2006-02-09 | 2013-02-19 | Ebay Inc. | Methods and systems to generate rules to identify data items |
WO2007098206A3 (en) * | 2006-02-16 | 2007-12-13 | Hillcrest Lab Inc | Systems and methods for placing advertisements |
US8180672B2 (en) | 2006-02-16 | 2012-05-15 | Hillcrest Laboratories, Inc. | Systems and methods for placing advertisements |
US20070192794A1 (en) * | 2006-02-16 | 2007-08-16 | Hillcrest Laboratories, Inc. | Systems and methods for placing advertisements |
WO2007106403A3 (en) * | 2006-03-10 | 2008-04-17 | Ebay Inc | Methods and systems to generate rules to identify data items |
US7716221B2 (en) | 2006-06-02 | 2010-05-11 | Behrens Clifford A | Concept based cross media indexing and retrieval of speech documents |
US8200683B2 (en) | 2006-06-09 | 2012-06-12 | Ebay Inc. | Determining relevancy and desirability of terms |
US20100017398A1 (en) * | 2006-06-09 | 2010-01-21 | Raghav Gupta | Determining relevancy and desirability of terms |
US20080005137A1 (en) * | 2006-06-29 | 2008-01-03 | Microsoft Corporation | Incrementally building aspect models |
US7945864B2 (en) * | 2006-11-15 | 2011-05-17 | Panasonic Corporation | Operation assisting apparatus and operation assisting method |
US20100229120A1 (en) * | 2006-11-15 | 2010-09-09 | Tsuyoshi Inoue | Operation assisting apparatus and operation assisting method |
US8050998B2 (en) | 2007-04-26 | 2011-11-01 | Ebay Inc. | Flexible asset and search recommendation engines |
US20080270250A1 (en) * | 2007-04-26 | 2008-10-30 | Ebay Inc. | Flexible asset and search recommendation engines |
US8051040B2 (en) | 2007-06-08 | 2011-11-01 | Ebay Inc. | Electronic publication system |
US9311046B1 (en) | 2007-09-27 | 2016-04-12 | Amazon Technologies, Inc. | System for detecting associations between items |
US20090089314A1 (en) * | 2007-09-28 | 2009-04-02 | Cory Hicks | Duplicate item detection system and method |
US7827186B2 (en) * | 2007-09-28 | 2010-11-02 | Amazon Technologies, Inc. | Duplicate item detection system and method |
US9146999B2 (en) * | 2008-03-27 | 2015-09-29 | Kabushiki Kaisha Toshiba | Search keyword improvement apparatus, server and method |
US20090248674A1 (en) * | 2008-03-27 | 2009-10-01 | Kabushiki Kaisha Toshiba | Search keyword improvement apparatus, server and method |
US20090248682A1 (en) * | 2008-04-01 | 2009-10-01 | Certona Corporation | System and method for personalized search |
US8903811B2 (en) * | 2008-04-01 | 2014-12-02 | Certona Corporation | System and method for personalized search |
US8364528B2 (en) * | 2008-05-06 | 2013-01-29 | Richrelevance, Inc. | System and process for improving product recommendations for use in providing personalized advertisements to retail customers |
US20130198007A1 (en) * | 2008-05-06 | 2013-08-01 | Richrelevance, Inc. | System and process for improving product recommendations for use in providing personalized advertisements to retail customers |
US8924265B2 (en) * | 2008-05-06 | 2014-12-30 | Richrelevance, Inc. | System and process for improving product recommendations for use in providing personalized advertisements to retail customers |
US20090281895A1 (en) * | 2008-05-06 | 2009-11-12 | David Selinger | System and process for improving recommendations for use in providing personalized advertisements to retail customers |
US20090281923A1 (en) * | 2008-05-06 | 2009-11-12 | David Selinger | System and process for improving product recommendations for use in providing personalized advertisements to retail customers |
US8583524B2 (en) | 2008-05-06 | 2013-11-12 | Richrelevance, Inc. | System and process for improving recommendations for use in providing personalized advertisements to retail customers |
US20100017396A1 (en) * | 2008-07-16 | 2010-01-21 | Sony Computer Entertainment Inc. | Related Information Presentation System, Related Information Presentation Method, and Information Storage Medium |
US8423540B2 (en) * | 2008-07-16 | 2013-04-16 | Sony Corporation | Related information presentation system, related information presentation method, and information storage medium |
US20110131147A1 (en) * | 2009-11-30 | 2011-06-02 | Electronics And Telecommunications Research Institute | Method and system for recommendation based on locational and societal relation |
US20110153613A1 (en) * | 2009-12-21 | 2011-06-23 | Electronics And Telecommunications Research Institute | Information search apparatus and method using locational/societal relation-based automatic category generation |
US20120278821A1 (en) * | 2011-04-30 | 2012-11-01 | Samsung Electronics Co., Ltd. | Middle partners |
US8943514B2 (en) * | 2011-04-30 | 2015-01-27 | Samsung Electronics Co., Ltd. | Middle partners |
US8491384B2 (en) | 2011-04-30 | 2013-07-23 | Samsung Electronics Co., Ltd. | Multi-user discovery |
US20130117147A1 (en) * | 2011-11-07 | 2013-05-09 | Nathan J. Ackerman | Similarity and Relatedness of Content |
US9772979B1 (en) * | 2012-08-08 | 2017-09-26 | Amazon Technologies, Inc. | Reproducing user browsing sessions |
US20150278910A1 (en) * | 2014-03-31 | 2015-10-01 | Microsoft Corporation | Directed Recommendations |
US20170083965A1 (en) * | 2014-06-10 | 2017-03-23 | Huawei Technologies Co., Ltd. | Item Recommendation Method and Apparatus |
CN104462323A (en) * | 2014-12-02 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | Semantic similarity computing method, search result processing method and search result processing device |
CN104462327A (en) * | 2014-12-02 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | Computing method, search processing method, computing device and search processing device for sentence similarity |
US20170076299A1 (en) * | 2015-09-14 | 2017-03-16 | Adobe Systems Incorporated | Extracting relevant features from electronic marketing data for training analytical models |
US10515378B2 (en) * | 2015-09-14 | 2019-12-24 | Adobe Inc. | Extracting relevant features from electronic marketing data for training analytical models |
CN107016066A (en) * | 2017-03-17 | 2017-08-04 | 南方电网科学研究院有限责任公司 | Measuring point matching process and device in a kind of electric network model modeling process |
Also Published As
Publication number | Publication date |
---|---|
US6615208B1 (en) | 2003-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6615208B1 (en) | Automatic recommendation of products using latent semantic indexing of content | |
WO2002021335A1 (en) | Automatic recommendation of products using latent semantic indexing of content | |
KR100601578B1 (en) | Summarizing and Clustering to Classify Documents Conceptually | |
US5987446A (en) | Searching large collections of text using multiple search engines concurrently | |
Oren et al. | Extending faceted navigation for RDF data | |
US7756879B2 (en) | System and method for estimating user ratings from user behavior and providing recommendations | |
EP1034489B1 (en) | Online database mining | |
US20100274753A1 (en) | Methods for filtering data and filling in missing data using nonlinear inference | |
US20010039544A1 (en) | Method for interactively creating an information database including preferred information elements, such as preferred authority, world | |
US20110040766A1 (en) | Methods for searching with semantic similarity scores in one or more ontologies | |
US20200265491A1 (en) | Dynamic determination of data facets | |
Zhu et al. | Evaluating and selecting web sources as external information resources of a data warehouse | |
CN101114287A (en) | Method and device for generating browsing paths for data and method for browsing data | |
US20160196593A1 (en) | System and method for tracking filter activity and monitoring trends associated with said activity | |
Salmani et al. | Hybrid movie recommendation system using machine learning | |
Jetter et al. | Hypergrid—accessing complex information spaces | |
AU2012272479A1 (en) | Preference-guided data exploration and semantic processing | |
CN111428100A (en) | Data retrieval method and device, electronic equipment and computer-readable storage medium | |
Amer-Yahia et al. | Exploring ratings in subjective databases | |
Yin et al. | A cold-start recommendation algorithm based on new user's implicit information and multi-attribute rating matrix | |
Bahrkazemi et al. | A strategy to estimate the optimal low-rank in incremental SVD-based algorithms for recommender systems | |
Chédin et al. | The tell-tale cube | |
Marchionini et al. | Extending retrieval strategies to networked environments: Old ways, new ways, and a critical look at WAIS | |
Mirizzi et al. | Linked Open Data for content-based recommender systems | |
Mukherji et al. | FIRE: a two-level interactive visualization for deep exploration of association rules |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SCIENCE APPLICATIONS INTERNATIONAL CORPORATION, CA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TELCORDIA TECHNOLOGIES, INC.;REEL/FRAME:015908/0379 Effective date: 20050408 |
|
AS | Assignment |
Owner name: CONTENT ANALYST COMPANY LLC, VIRGINIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SCIENCE APPLICATIONS INTERNATIONAL CORPORATION;REEL/FRAME:016097/0468 Effective date: 20050606 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |