A portion of the disclosure of this patent document includes material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
The invention relates generally to data processing systems and methods. More specifically, an embodiment of the invention relates to systems and methods for associating unvalued search terms with valued search terms and for assigning monetary values to search terms.
The World Wide Web is a distributed database comprising billions of data records accessible through the Internet. Search engines are commonly used to search the information available on computer networks, such as the World Wide Web, to enable users to locate data records of interest. A typical prior art search engine 100 is shown in
To use search engine 100, a user 430 typically enters one or more search terms or keywords, which are sent to a dispatcher 110. Dispatcher 110 compiles a list of search nodes in cluster 106 to execute the query and forwards the query to those selected search nodes. The search nodes in search node cluster 106 search respective parts of the primary index produced by indexer 104 and return sorted search results along with a document identifier and a score to dispatcher 110. Dispatcher 110 merges the received results to produce a final result set displayed to user 430 sorted by relevance scores. The relevance score is a function of the query itself and the type of document produced. Factors that affect the relevance score may include: a static relevance score for the document such as link cardinality and page quality, placement of the search terms in the document, such as titles, metadata, and document web address, document rank, such as a number of external data records referring to the document, on how deeply a certain data record is embedded in the document, and document statistics such as query term frequency in the document, global term frequency, and term distances within the document. For example, Term Frequency Inverse Document Frequency (TFIDF) is a statistical method that is suitable for evaluating how important a word is to a document. The importance increases proportionally to the number of times a word appears in the document but is offset by how common the word is in all of the documents in the collection.
Referring to
In addition to displaying search results 124e-f sorted by a relevance score shown in
Focusing on sponsored result 124a, each sponsor listing may include a clickable hyperlink title 126a, including anchor text “MP3 CD Walkman®,” descriptive text 127a, and a uniform resource locator (URL)128a. Search engine 100 may store such sponsor listings, each associated with an advertiser or a web page operator, in database 108.
Search engine operators have developed various tools suitable for use in sponsored systems to help the advertisers manage their bids and attract traffic. Such tools and methods are described, for example, in a commonly assigned U.S. patent application Ser. No. 10/372,637, filed Feb. 21, 2003 and entitled METHOD AND APPARATUS FOR DETERMINING A MINIMUM PRICE PER CLICK FOR A TERM IN AN AUCTION BASED INTERNET SEARCH, which is hereby incorporated by reference in its entirety. Referring to
Keyword 302 is a term, such as a word, a phrase, or a description, that relates to advertiser's business and describes its products or services. The words “keyword,” “term,” “phrase,” and “description” are used interchangeably herein. Category 304 defines a grouping of keywords that are similar in a particular way (e.g., product type). Monthly search volume 306 is a statistic indicating a number of monthly searches the advertiser can expect on a particular keyword based on historical data. Maximum bids 308 determine the maximum price the advertiser is willing to pay per click for a particular keyword. Positions 310 indicate the current position of the advertiser's listing in the search results based on the advertiser's max bid amount. Top 5 max bids 312 indicate the bid amounts for the top five bids on a particular keyword. Estimated monthly clicks 314 indicate the estimated number of total clicks the advertiser will receive from a keyword based on the advertiser's max bid. Estimated monthly CPC 316 indicates the advertiser's estimated average cost-per-click on a particular keyword based on the advertiser's max bid. Estimated monthly cost 318 indicates the advertiser's estimated total monthly cost on a particular keyword based on the estimated monthly clicks and estimated CPC.
Focusing on the search term “mp3 players” 302a, which belongs to category mp3 304a, an advertiser using a bidding tool 300 may observe that search term 302a has been searched for by YAHOO! users approximately 540,000 times in the preceding month, as indicated by the corresponding monthly search volume 306a. As further indicated by top five max bids 312a, top five maximum bid for search term 302a range from $0.53 to $2.00 per click. As further indicated by maximum bid 308, the advertiser must bid at least $2.01 for search term 302a to secure the most prominent placement of the advertiser's web site, among the sponsored search results. As further indicated by estimated clicks 314a, the most prominent placement position for search term 302a, may lead to approximately 18,000 clicks-through per month, with an associated monthly cost 318a for the advertiser of approximately $35,000.
Thus, when a user performs a search on a sponsored search engine, the sponsored results are conventionally sorted and displayed based, at least in part, on how much each advertiser has bid on the user's search term. Because different users will use different keywords to find the same information, it is important for an advertiser to bid on a wide variety of search terms in order to maximize the traffic to the advertiser's website. The methods and systems for identifying one or more alternative search terms for a particular search terms are disclosed in commonly assigned U.S. patent application Ser. No. 11/200,851, filed Aug. 10, 2005 and entitled SYSTEM AND METHOD FOR DETERMINING ALTERNATIVE SEARCH QUERIES, and in commonly assigned U.S. patent application Ser. No. 11/202,388, filed Aug. 10, 2005 and entitled ALTERNATIVE SEARCH QUERY PROCESSING IN A TERM BIDDING SYSTEM, both of which are hereby incorporated by reference in their entirety.
As a result of identifying alternative search terms, advertisers may attempt to place high bids on more than one search term to increase the likelihood that their websites will be seen as a result of a search for those alternative terms. For example, the advertiser may decide to place bids on all search terms 302a-e shown in
Accordingly, there is a need for a system and method that would allow to associate unbidded search terms with search terms already bid upon by advertisers.
There is also a need for a system and method for delivering advertisements associated with bidded search terms to a search engine user in response to the user entering unbidded search terms.
There is further a need for a system and method for assigning monetary values to unbidded search terms.
This invention relates generally to data processing systems and methods, particularly, to systems and methods for associating data records, for example, search terms, and for assigning monetary values to search terms based on the associating. The systems and methods of the present invention are suitable for associating data records embodied in or transmitted over any existing or future medium, such as wireline, wireless, narrowband, or broadband networks, for example, the Internet, or any interactive media, for example, video-on-demand, podcasting, streaming video and audio, instant messaging, and/or voice messaging. The systems and methods of the present invention may be implemented on any suitable centralized or distributed computer hardware and/or software in various combinations. The systems and methods of the present invention are also suitable for various kinds of search engines, including search engines used by Internet users to find records of interest on the World Wide Web. The methods of the present invention may be embodied in a computer readable medium including computer executable instructions stored thereon.
In one aspect of the invention, a method for associating a first term with a second term is provided. Such terms may be any data records, such as keywords used to identify records of interest, including various kinds of electronic data records, such as text documents of various formats, e-mails, webpages, video and audio files, and any other data records. In operation, the method selects a first set of search engine results for the first term, selects a second set of search engine results for the second term, compares the first and second sets, and associates the first and the second terms based on the comparison. Based on the comparison, a monetary value may be assigned to the first term based on the monetary value assigned to the second term. In some embodiments, the first term may be received from the user and the second term may be associated with an advertisement, which is then communicated to the user based on the associating of the first and second terms. Such advertising may be communicated via various kinds of media, such as wireline and wireless telephone, radio, and TV systems, the Internet and e-mail, podcasting, instant messaging, and/or chat.
In another aspect of the invention, a method for associating a first term with a second term and a third term is provided. In operation, the method selects a first set of search engine results for the first term, selects a second set of search engine results for the second term, selects a third set of search engine results for the third term, compares the first set with the second set, compares the first set with the third set, associates the first term and the second term based on the comparison of the first set with the second set, and associates the first term and third term based on the comparison of the first set with the third set.
In yet another aspect of the present invention, a system for associating a first term with a second term is provided. The system includes a crawler effective to collect data records from an information source, a data store connected to the crawler and effective to store the data records, an indexer connected to the data store and effective to index the data records stored in the data store to produce indexed data records, a search node effective to search the indexed data records, a receiver effective to receive a query with an unbidded search term, and a processor connected to the receiver and the search node and effective to process the query and to associate the unbidded search term with a bidded search term.
In yet another aspect of the present invention, a method for assigning a monetary value to a search term is provided. In operation, the method provides at least one first search term to at least one advertiser, receives at least one bid from the advertiser on the first search term, derives a similarity function between the first term and at least one second term, and assigns a monetary value to the second term based at least in part on the bid and the similarity function. In one embodiment, the similarity function may be derived by selecting a first set of search engine results for the first term, selecting a second set of search engine results for the second term, comparing said first and second sets, and associating the first and second terms based on the comparing. The search engine results for either the first set or the second set or both may be ranked based on various factors, such as click-through rates, bidding rates, bid amounts, user-assigned weights. In another embodiment, the similarity function may be determined as an intersection of the result sets divided by a union of the result sets. In further embodiments, the similarity function may be determined by using a suitable statistical method, for example, Term Frequency Inverse Document Frequency (TFIDF) or cosine TFIDF functions. In further embodiments, the method may further adjust the similarity function based on the feedback received from either the advertiser or user or both. As the similarity function is adjusted, the monetary value assigned to the second term may also be adjusted. The feedback may include bidding rates, bid amounts, and any other suitable input providing additional information regarding the similarity between the terms. The method may also include statistically analyzing the feedback, using, for example, a regression analysis. This method may be suitable for monetizing search terms and any other suitable data records used to identify records of interest. In some embodiments, the first term and/or second term may be associated with an advertisement, which is then communicated to the user. Such advertising may be communicated via various kinds of media, such as wireline and wireless telephone, radio, and TV systems, the Internet and e-mail, podcasting, instant messaging, and/or chat.
In other aspects of the present invention, a system for assigning a monetary value to a search term is provided. The system includes a computer interface effective to provide at least one first search term to at least one advertiser; a receiver effective to receive at least one bid from the advertiser on the first search term, and a processor connected to the receiver and effective to derive a similarity function between the first term and at least one second term and to assign a monetary value to the second term based at least in part on the bid and the derived similarity function.
The foregoing description of the preferred embodiments has been provided only by way of introduction. Nothing in this section should be taken as a limitation of the claims, which define the scope of the invention.
The invention is illustrated in the figures of the accompanying drawings which are meant to be exemplary and not limiting, in which like references are intended to refer to like or corresponding parts, and in which:
Referring to
A crawler 402 collects data records from source 101 and stores the collected data records in database 408. Thereafter, these data records are indexed by indexer 404. Indexer 404 builds a searchable index of the data records in database 408. To use search engine 400, user 430 typically enters one or more search terms or keywords, which are sent to dispatcher 410. Dispatcher 410 compiles a list of search nodes in cluster 406 to execute the query and forwards the query to those selected search nodes. The search nodes in search node cluster 406 search respective parts of the primary index produced by indexer 404 and return sorted search results along with a document identifier and a score to dispatcher 410. Dispatcher 410 merges the received results to produce a final result set displayed to user 430 via user terminal 418 sorted by relevance scores. System 400 may include a bidding tool 420, which will be discussed in detail below, connected to database 108 and processor 412.
Referring now also to
The size of result sets {URL1-URLM} 504a-e and result set {URL1-URLL} 604 may be reduced by using various processing techniques, such as Latent Semantic Indexing or Probabilistic Latent Semantic Analysis.
Result sets {URL1-URLM} 504a-e and result set {URL1-URLL} 604 may be determined or retrieved using various techniques based on various ranking factors or various combination thereof. Such ranking factors may include a relevance score that is a function of the query itself and the type of document produced. Factors that affect the relevance score may include a static relevance score for the document such as link cardinality and page quality, placement of the search terms in the document, such as titles, metadata, and document web address, document rank, such as a number of external data records referring to the document and on how deeply a certain data record is embedded in the document, and document statistics such as query term frequency in the document, global term frequency, and term distances within the document. For example, Term Frequency Inverse Document Frequency (TFIDF) is a statistical technique that is suitable for ranking. The ranking increases proportionally to the number of times a word appears in the document but is offset by how common the word is in all of the documents in the collection.
As shown in
To efficiently match URLs in result sets {URL1-URLL} 604 with URLs in result sets {URL1-URLM} 504a-e, system 400 may assign a unique binary or other numeric identifier to each URL stored in database 408. The use of such identifiers may help to reduce search space and correspondingly, the size of database 408. Processor 412 may then match such numeric identifiers. Alternatively, a hash function, for example, Message Digest Algorithm 5, may be used for mapping each URL in result sets {URL1-URLL} 604 and in result sets {URL1-URLM} 504a-e to a unique 128-bit number. After such URL hash numbers or codes are assigned to each URL, each URL hash code may be indexed by, for example, indexer 404 in the same way as words in documents are indexed. Processor 412 may then use any suitable technique, for example, TFIDF, to determine a similarity between the URLs in result sets {URL1-URLL} 604 and the URLs in result sets {URL1-URLM} 504a-e. The term frequency rates may be assigned by a function or based on historical click-through rates as described in detail below. The TFIDF scoring may also include such additional variables as a total search volume, value, or character length of query.
Processor 412 may also determine the similarity between the two sets of URLs by comparing the content of the documents that are identified by the URLs in result sets {URL1-URLL} 604 and {URL1-URLM} 504a-e. To effect such comparison, processor 412 may employ various information retrieval and processing techniques, for example, Latent Semantic Indexing or Probabilistic Latent Semantic Analysis, described elsewhere in this application.
The similarity between the two sets of URLs may also be determined as an intersection of the result sets over a union of the result sets. For example,
Another technique for determining the similarity between the two sets of URLs is to assign a value to each URL based on the rank of the URL in its respective result set. For example, Term Frequency Inverse Document Frequency (TFIDF) is a statistical method that is suitable for ranking URLs. The ranking increases proportionally to the number of times an URL appears in the result set but is offset by how common the URL is in all of the result sets. For example, in result set {URL1-URLM} 504a-e, URL1 with a highest rank may get a value of 10, URL2 a value of 9, and URLM may get a value of 1. Similar value assignments may be performed for URLs in result set {URL1-URLL} 604. One may then multiply the value of each URL in each result set by a distance d between result sets {URL1-URLM} 504a-e and {URL1-URLL} 604. The URLs from result set {URL1-URLM} 504a-e, corresponding to the top n values may then be used to determine which bidded terms 502a-e are similar to unbidded term 416.
The distance d between two result sets may be determined, for example, using the following formula:
where x and y are the result sets being compared, ti is the set of URLs in result sets {URL1-URLM} 504a-e and {URL1-URLL} 604, tf is the term frequency and idf is the inverse document frequency for a particular URL.
Using the determined similarity between the two sets, system 400 may associate unbidded search term kU 416 with one or more of bidded search term in set {k1-kN} 502a-e in any number of ways. In the example shown in
System 400 may rank bidded search term k125 502d higher than bidded search term k3 502 based on URLs ranking. System 400 may associate unbidded search term kU 416 with bidded search term k125 502d because the matching URLs in matching pair 702a are ranked higher than the URLs in matching pairs 702b-c. For example, system 400 may assign a weight to each URL in result sets {URL1-URLL} 604 and in result sets {URL1-URLM} 504a-e. Such weights may be assigned, for example, based on actual click-through rates for each URL in result sets {URL1-URLL} 604 and in result sets {URL1-URLM} 504a-e. If, for example, the users who entered search term k3 502c consistently clicked on URLM more often than on URL6 in result set {URL1-URLM}504c, URLM may be assigned a higher weight than URL6. Similarly, if the users who conducted a search for a keyword kU 416, clicked more often on URL7 in search results {URL1-URLL} 604, a higher click-through rate, and correspondingly, a higher weight, may be assigned to URL7 than to other URLs in search results {URL1-URLL} 604. System 400 may collect various statistics, including, click-through rates for each URL associated with a term entered by the user. Such collected statistics may then be analyzed using any suitable statistical techniques, for example, regression analysis, to adjust ranking of URLs.
Alternatively, or in the absence of actual click-through rates, linear or logarithmic weights may be assigned to each URL in result sets {URL1-URLL} 604 and in result sets {URL1-URLM} 504a-e. Further still, various weights may be assigned to bidded search terms based on their respective ranking, which may depend on the frequency with which advertisers bid upon a particular term, the bid amount, or on the frequency with which the users request a particular term or a combination thereof. For example, system 400 may rank bidded search term k3 higher than k125. When associating unbidded search term kU 416 with bidded search terms {k1-kN} 502a-e, processor 412 may employ any combination of weights assigned to each URL in result sets {URL1-URLL} 604 and in result sets {URL1-URLM} 504a-e.
Referring again to
Thus, when a user performs a search on system 400, using a query including unbidded search term kU 416, system 400 will display sponsored results including either bidded search term k3 502c or bidded search term k125 502d or both, thereby increasing traffic to the advertisers websites and increasing revenues the operator of search engine 400 receives from the advertisers.
Referring now to
Referring now to
Referring now to
Referring back to
As described above, system 400 may comprise bidding tool 420 used to price an unbidded search term based upon the determined similarity between the unbidded term and bidded terms. In some embodiments, bidding tool 420 may be implemented as a stand-alone system 1100 in
While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as are to be evident to those of skill in the art may be made without departing from the spirit and scope of the invention, and the invention is thus not to be limited to the precise details of methodology or construction set forth above, as such variations and modifications are intended to be included within the scope of the invention. For example, in some embodiments, not only URLs and search terms, but any other data records may be associated with one another using the systems and methods disclosed herein. It is to be understood by those of ordinary skill in the art that the various data processing tasks described herein may be implemented in a wide variety of ways, many of which are known and many more of which are doubtless to be hereafter developed. For example, a wide variety of computer programs and languages are now known, and are likely to be developed, which are suitable for storing, retrieving, and processing data, as well as for searching, indexing, and comparing search results and other tasks disclosed herein. Furthermore, a wide variety of media are now known, and are likely to be developed, which are suitable for transmitting data records, searching, indexing, and comparing search results and other tasks disclosed herein. Still further, the systems and methods of the present invention may be implemented using any suitable centralized or distributed computer hardware and/or software in various combinations. Except to the extent necessary or inherent in the processes themselves, no particular order to steps or stages of methods or processes described in this disclosure, including the figures, is implied.