WO2007126728A1 - Automatically generating ads and ad-serving index - Google Patents

Automatically generating ads and ad-serving index Download PDF

Info

Publication number
WO2007126728A1
WO2007126728A1 PCT/US2007/007367 US2007007367W WO2007126728A1 WO 2007126728 A1 WO2007126728 A1 WO 2007126728A1 US 2007007367 W US2007007367 W US 2007007367W WO 2007126728 A1 WO2007126728 A1 WO 2007126728A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
advertiser
ads
page
documents
Prior art date
Application number
PCT/US2007/007367
Other languages
French (fr)
Inventor
Mayur Datar
Ashutosh Garg
Original Assignee
Google, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google, Inc. filed Critical Google, Inc.
Publication of WO2007126728A1 publication Critical patent/WO2007126728A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0242Determining effectiveness of advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • G06Q30/0256User search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0276Advertisement creation

Definitions

  • the present invention concerns advertising, such as online advertising for example.
  • the present invention concerns helping to automatically generate advertisements ("ads") for Web pages selling products or services, along with an inverted index used to target the serving of these ads, using hypertext content and/or other attributes of the underlying product or service.
  • Internet search engines such as Google for example, support keyword-based online advertising.
  • Google for example, support keyword-based online advertising.
  • an advertiser has to provide an ad creative (what is actually rendered or displayed) for their ad, as well as a set of targeting keywords for the ad.
  • an online book seller may create a general ad like "Cheap books for sale” and target it with general keywords like "books,” “online,” “cheap”, where the general ad is meant to serve the bookseller's entire inventory.
  • Such an advertisement is not well-targeted for search phrases. For example, if a search engine user searches on phrases like "lord of the rings” or "dan brown,” the forgoing general advertisement above is not targeted to such popular book titles and authors — even though the bookseller may carry inventory related to these keywords. Even if a general ad creative is targeted to various products, it might not perform as well as a more specific ad creative.
  • templated ads may be used to help advertisers create multiple, but similar, ads with minimal effort.
  • an advertiser supplies a template that contains certain variables as an ad creative. For ease of exposition assume that there is only one variable in the template. This variable is substituted by a keyword to form an instance of the template. Having created the template, the advertiser simply supplies a list of keywords to create multiple instances of this template. For example, a template may look like "Cheap deal on «bookname»" where «bookname» is a variable that can take any book name.
  • templated ads may not generate good quality ads for every product in the inventory. Moreover, they do not solve the problem of generating targeting keywords for the ads. ⁇ >-
  • Embodiments consistent with the present invention may accept advertiser repository information (e.g., a list of HTML pages) and automatically generate a page-ad and associated ad information for each page using a subset of features of the page. Subsequently, a page-ad index for all pages from different advertisers may be created. After creating a page-ad index, if a client issues a query (e.g., from a search engine), embodiments consistent with the present invention may select candidate page-ads using the page-ads index. If necessary (e.g., if there are more candidate page-ads than requested ads), the candidate page-ads may be entered into an arbitration (e.g., auction).
  • advertiser repository information e.g., a list of HTML pages
  • a page-ad index for all pages from different advertisers may be created.
  • a client issues a query (e.g., from a search engine)
  • embodiments consistent with the present invention may select candidate page-ads
  • advertiser repository information may be a copy of the advertiser's inventory in hypertext format of products and/or services offered on their online Website.
  • the inventory could be a collection of pages in HTML, XML 5 pdf or other "index-able" format.
  • This inventory may be used to automatically generate an ad creative and associated page-ad information.
  • Such generation of an ad creative and associated page-ad information may be performed for each Web page (perhaps selected by, or not excluded by an advertiser) of the collection that corresponds to a product or service.
  • an ad creative and associated page-ad information may be generated for every page obtained from the repository.
  • the ad creative and associated page-ad information may be generated using a subset of features present within the pages. These features may include one or more of the following: the amount of money the advertiser is willing to spend on ads for a specific product or category of products, for every page a maximum cost per click (cpc) if the page is the landing page of the page-ad, additional keywords corresponding to this page, that the advertiser may not want displayed when the page is rendered using a browser or any other application, etc.
  • At least some embodiments consistent with the present invention may create and store a page-ad index using information from all the pages from different advertisers. This may be done by generating a first index mapping a page to terms (e.g., words, phrases, and/or n-grams, etc.) extracted from the page. The terms may be weighted. The first index may then be processed to generate an inverted index (referred to as a "page-ad index") mapping terms to pages (or "page-ads" associated with such pages), which may be weighted. Therefore, the page-ad index may contain information about a number of pages (e.g., an associated page-ad identifier) from different advertisers.
  • a first index mapping a page to terms (e.g., words, phrases, and/or n-grams, etc.) extracted from the page. The terms may be weighted.
  • the first index may then be processed to generate an inverted index (referred to as a "page-ad index”) mapping terms to pages (or "page
  • the page-ads index may be used to determine page-ads corresponding to pages that may include the terms from the search query.
  • Page-ads that include matching keywords or phrases may be considered as candidate page-ads and, if necessary entered into an arbitration (e.g., an auction) to determine a set of one or more winning page-ads.
  • an arbitration e.g., an auction
  • Candidate page-ads may have associated ad information (e.g., max offer per click, estimated click-through rate for the page-ad, budget constraints, etc.). Such parameters may be considered when selecting the winning ads.
  • Types of ads other than page-ad may compete with page ads in the arbitration, or in a subsequent arbitration. ⁇ 3.
  • Figure 1 is a diagram showing parties or entities that can interact with an advertising system.
  • Figure 2 is a diagram illustrating an exemplary environment in which, or with which, embodiments consistent with the present invention may operate.
  • Figure 3 is a flow diagram of an exemplary method for generating and using page-ad information and a page-ad index in a manner consistent with the present invention.
  • Figure 4 is a bubble diagram of exemplary operations that may be performed in a manner consistent with the present invention, as well as information that may be used and/or generated by such operations.
  • Figure 5 is a flow diagram of an exemplary method for generating an ad creative in a manner consistent with the present invention.
  • Figure 6 is flow diagram of an exemplary method for performing page-ad indexing operations in a manner consistent with the present invention.
  • Figure 7 is a flow diagram of an exemplary method for performing arbitration operations in a manner consistent with the present invention.
  • Figure 8 is a block diagram of an exemplary apparatus that may perform various operations and store various information in a manner consistent with the present invention.
  • Figure 9 illustrates a hierarchical navigation scheme of an illustrative Website.
  • Figure 10 is an example illustrating operations in an exemplary embodiment consistent with the present invention.
  • the present invention may involve novel methods, apparatus, message formats, and/or data structures for helping to automatically generate advertisements for Web pages along with an inverted index for targeting these advertisements based on hypertext content and other attributes of the underlying product or service.
  • the following description is presented to enable one skilled in the art to make and use the invention, and is provided in the context of particular applications and their requirements.
  • the following description of embodiments consistent with the present invention provides illustration and description, but is not intended to be exhaustive or to limit the present invention to the precise form disclosed.
  • Various modifications to the disclosed embodiments will be apparent to those skilled in the art, and the general principles set forth below may be applied to other embodiments and applications.
  • Online ads such as those used in the exemplary systems described below with reference to Figures 1 and 2, or any other system, may have various intrinsic features. Such features may be specified by an application and/or an advertiser. These features are referred to as "ad features" below.
  • ad features may include a title line, ad text, and an embedded link.
  • ad features may include images, executable code, and an embedded link.
  • ad features may include audio content.
  • the ad features may also include executable code (e.g., encoded as tones, provided in non-audio packets of an audio stream, etc.).
  • ad features may include one or more of the following: text, a link, an audio file, a video file, an image file, executable code, embedded information, etc.
  • some ad features may pertain to one type of media rendered to the user over one output, while other ad features may pertain to another type of media rendered to the user over another output.
  • an MP3 player includes a display
  • an ad to be rendered on such a player can have an audio component and/or a text component.
  • an ad to be rendered on such a telephone can have one or more of an audio component, a text component, an image component and executable code for dialing an encoded telephone number.
  • an audio component a text component
  • an image component an image component
  • executable code for dialing an encoded telephone number
  • Serving parameters may include, for example, one or more of the following: features of (including information on) a document on which, or with which, the ad was served, a search query or search results associated with the serving of the ad, a user characteristic (e.g., their geographic location, the language used by the user, the type of browser used, previous page views, previous behavior, user account, any Web cookies used by the system, user device characteristics, etc.), a host or affiliate site (e.g., America Online, Google, Yahoo) that initiated the request, an absolute position of the ad on the page on which it was served, an ad spot in which the ad was served (e.g., a position (spatial or temporal) of the ad relative to other ads served), an absolute size of the ad, a size of the
  • serving parameters may be extrinsic to ad features, they may be associated with an ad as serving conditions or constraints. When used as serving conditions or constraints, such serving parameters are referred to simply as "serving constraints" (or “targeting criteria"). For example, in some systems, an advertiser may be able to target the serving of its ad by specifying that it is only to be served on weekdays, no lower than a certain position, only to users in a certain location, etc. As another example, in some systems, an advertiser may specify that its ad is to be served only if a page or search query includes certain keywords or phrases.
  • an advertiser may specify that its ad is to be served only if a document, on which, or with which, the ad is to be served, includes certain topics or concepts, or falls under a particular cluster or clusters, or some other classification or classifications (e.g., verticals).
  • an advertiser may specify that its ad is to be served only to (or is not to be served to) user devices having certain characteristics.
  • an ad might be targeted so that it is served in response to a request sourced from a particular location, or in response to a request concerning a particular location.
  • Ad information may include any combination of ad features, ad serving constraints, information derivable from ad features or ad serving constraints (referred to as “ad derived information”), and/or information related to the ad (referred to as “ad related information”), as well as an extension of such information (e.g., information derived from ad related information).
  • the ratio of the number of selections (e.g., clickthroughs, dial-throughs, etc.) of an ad to the number of impressions of the ad (i.e., the number of times an ad is rendered) is defined as the "selection rate" (or "clickthrough rate” or "CTR" of the ad.
  • a "conversion" is said to occur when a user consummates a transaction related to a previously served ad. What constitutes a conversion may vary from case to case and can be determined in a variety of ways. For example, it maybe the case that a conversion occurs when a user clicks on an ad, is referred to the advertiser's Web page, and consummates a purchase there before leaving that Web page.
  • a conversion may be defined as a user being shown an ad, and making a purchase on the advertiser's Web page within a predetermined time (e.g., seven days), hi yet another alternative, a conversion may be defined by an advertiser to be any measurable/observable user action such as, for example, downloading a white paper, navigating to at least a given depth of a Website, viewing at least a certain number of Web pages, spending at least a predetermined amount of time on a Website or Web page, registering on a Website, dialing a telephone number, sending a product or service inquiry, etc. Often, if user actions don't indicate a consummated purchase, they may indicate a sales lead, although user actions constituting a conversion are not limited to this. Indeed, many other definitions of what constitutes a conversion are possible.
  • conversion rate The ratio of the number of conversions to the number of impressions of the ad (i.e., the number of times an ad is rendered) and the ratio of the number of conversions to the number of selections (or the number of some other earlier event) are both referred to as the "conversion rate" or "CR.”
  • conversion rate The type of conversion rate will be apparent from the context in which it is used. If a conversion is defined to be able to occur within a predetermined time since the serving of an ad, one possible definition of the conversion rate might only consider ads that have been served more than the predetermined time in the past.
  • a "property” is something on which ads can be presented.
  • a property may include online content (e.g., a Website, an MP3 audio program, a Webcast, apodcast, online games, etc.), offline content (e.g., a newspaper, a magazine, a theatrical production, a concert, a sports event, a radio broadcast, etc.), and/or offline objects (e.g., a billboard, a stadium score board, an outfield wall; the side of truck trailer, etc.).
  • online content e.g., a Website, an MP3 audio program, a Webcast, apodcast, online games, etc.
  • offline content e.g., a newspaper, a magazine, a theatrical production, a concert, a sports event, a radio broadcast, etc.
  • offline objects e.g., a billboard, a stadium score board, an outfield wall; the side of truck trailer, etc.
  • Properties with content may be referred to as "media properties.”
  • properties may themselves be offline, pertinent information about a property (e.g., attribute(s), topic(s), concept(s), category(ies), keyword(s), relevancy information, type(s) of ads supported, etc.) may be available online.
  • pertinent information about a property e.g., attribute(s), topic(s), concept(s), category(ies), keyword(s), relevancy information, type(s) of ads supported, etc.
  • an outdoor jazz music festival may have entered the topics "music" and "jazz", the location of the concerts, the time of the concerts, artists scheduled to appear at the festival, and types of available ad spots (e.g., spots in a printed program, spots on a stage, spots on seat backs, audio announcements of sponsors, etc.).
  • An "audio property” is a property that can be heard.
  • a "document” is to be broadly interpreted to include any machine-readable and machine-storable work product.
  • a document may be a file, a combination of files, one or more files with embedded links to other files, etc.
  • the files may be of any type, such as text, audio, image, video, etc.
  • Parts of a document to be rendered to an end user can be thought of as "content" of the document.
  • a document may include "structured data” containing both content (words, pictures, sound, conversations, etc.) and some indication of the meaning of that content (for example, e-mail fields and associated data, HTML tags and associated data, embedded song title and artist information, etc.)
  • Ad spots in the document may be defined by embedded information or instructions.
  • a common document is a Web page.
  • Web pages often include content and may include embedded information (such as meta information, hyperlinks, etc.) and/or embedded instructions (such as JavaScript, etc.).
  • embedded information such as meta information, hyperlinks, etc.
  • embedded instructions such as JavaScript, etc.
  • a document has an addressable storage location and can therefore be uniquely identified by this addressable location.
  • a universal resource locator (URL) is an address used to access information on the Internet.
  • a "Web document” includes any document published on the Web. Examples of Web documents include, for example, a Website, a Web page, a Webcast, etc.
  • "Document information" may include any information included in the document, information derivable from information included in the document (referred to as “document derived information”), and/or information related to the document (referred to as "document related information”), as well as an extensions of such information (e.g., information derived from related information).
  • An example of document derived information is a classification based on textual or audio content of a document. Examples of document related information include document information from other documents with links to the instant document, as well as document information from other documents to which the instant document links.
  • Content from a document may be rendered on a "content rendering application or device".
  • content rendering applications include an Internet browser (e.g., Explorer, Netscape, Opera, Firefox, etc.), a media player (e.g., an MP3 player, a streaming audio file player from Microsoft Corporation of Redmond, WA, or from RealNetworks, Inc., of Seattle, WA, etc.), a viewer (e.g., an Abobe Acrobat pdf reader), etc.
  • a "content owner” is a person or entity that has some property right in the content of a media property (e.g., document).
  • a content owner may be an author of the content.
  • a content owner may have rights to reproduce the content, rights to prepare derivative works of the content, rights to display or perform the content publicly, and/or other proscribed rights in the content.
  • a content server might be a content owner in the content of the documents it serves, this is not necessary.
  • a "Web publisher” is an example of a content owner.
  • User information may include user behavior information and/or user profile information.
  • E-mail information may include any information included in an e-mail (also referred to as "internal e-mail information”), information derivable from information included in the e-mail and/or information related to the e-mail, as well as extensions of such information (e.g., information derived from related information).
  • An example of information derived from e-mail information is information extracted or otherwise derived from search results returned in response to a search query composed of terms extracted from an e-mail subject line.
  • Examples of information related to e-mail information include e-mail information about one or more other e-mails sent by the same sender of a given e-mail, or user information about an e-mail recipient.
  • Information derived from or related to e-mail information may be referred to as "external e-mail information.”
  • FIG. 1 is a high level diagram of an advertising environment.
  • the environment may include an ad entry, maintenance and delivery system (simply referred to as an ad server) 120.
  • Advertisers 110 may directly, or indirectly, enter, maintain, and track ad information in the system 120.
  • the ads may be in the form of graphical ads such as so-called banner ads, text only ads, image ads, audio ads, video ads, ads combining one of more of any of such components, etc.
  • the ads may also include embedded information, such as a link, and/or machine executable instructions.
  • Ad consumers 130 may submit requests for ads to, accept ads responsive to their request from, and provide usage information to, the system 120.
  • An entity other than an ad consumer 130 may initiate a request for ads.
  • other entities may provide usage information (e.g., whether or not a conversion or click-through related to the ad occurred) to the system 120. This usage information may include measured or observed user behavior related to ads that have been served.
  • the ad server 120 may be similar to the one described in Figure 2 of U.S. Patent Application Serial No. 10/375,900 (incorporated herein by reference), entitled “SERVING ADVERTISEMENTS BASED ON CONTENT,” filed on February 26, 2003 and listing Darrell Anderson, Paul Buchheit, Alex Carobus, Marie Cui, Jeffrey A. Dean, Georges R. Harik, Deepak Jindal, and Narayanan Shivakumar as inventors.
  • An advertising program may include information concerning accounts, campaigns, creatives, targeting, etc.
  • the term "account” relates to information for a given advertiser (e.g., a unique e-mail address, a password, billing information, etc.).
  • a “campaign” or “ad campaign” refers to one or more groups of one or more advertisements, and may include a start date, an end date, budget information, geo-targeting information, syndication information, etc.
  • a “campaign” or “ad campaign” refers to one or more groups of one or more advertisements, and may include a start date, an end date, budget information, geo-targeting information, syndication information, etc.
  • Honda may have one advertising campaign for its automotive line, and a separate advertising campaign for its motorcycle line.
  • the campaign for its automotive line may have one or more ad groups, each containing one or more ads.
  • Each ad group may include targeting information (e.g., a set of keywords, a set of one or more topics, geolocation information, user profile information, etc.), and price information (e.g., maximum cost (cost per click-though, cost per conversion, etc.)).
  • each ad group may include an average cost (e.g., average cost per click-through, average cost per conversion, etc.). Therefore, a single maximum cost and/or a single average cost may be associated with one or more keywords, and/or topics.
  • each ad group may have one or more ads or "creatives" (That is, ad content that is ultimately rendered to an end user.).
  • Each ad may also include a link to a URL (e.g., a landing Web page, such as the home page of an advertiser, or a Web page associated with a particular product or server).
  • the ad information may include more or less information, and may be organized in a number of different ways.
  • FIG. 2 illustrates an environment 200 in which the present invention may be used.
  • a user device also referred to as a "client” or “client device”
  • a browser facility such as the Explorer browser from Microsoft, the Opera Web Browser from Opera Software of Norway, the Navigator browser from AOL/Time Warner, etc.
  • An e-mail facility e.g., Outlook from Microsoft
  • a search engine 220 may permit user devices 250 to search collections of documents (e.g., Web pages).
  • a content server 210 may permit user devices 250 to access documents.
  • An e-mail server (such as Hotmail from Microsoft Network, Yahoo Mail, etc.) 240 may be used to provide e-mail functionality to user devices 250.
  • An ad server 210 may be used to serve ads to user devices 250. The ads may be served in association with search results provided by the search engine 220. However, content-relevant ads may be served in association with content provided by the content server 230, and/or e-mail supported by the e- mail server 240 and/or user device e-mail facilities.
  • ads may be targeted to documents served by content servers.
  • an ad consumer 130 is a general content server 230 that receives requests for documents (e.g., articles, discussion threads, music, video, graphics, search results, Web page listings, etc.), and retrieves the requested document in response to, or otherwise services, the request.
  • the content server may submit a request for ads to the ad server 120/210.
  • Such an ad request may include a number of ads desired.
  • the ad request may also include document request information.
  • This information may include the document itself (e.g., page), a category or topic corresponding to the content of the document or the document request (e.g., arts, business, computers, arts-movies, arts-music, etc.), part or all of the document request, content age, content type (e.g., text, graphics, video, audio, mixed media, etc.), geo-location information, document information, etc.
  • a category or topic corresponding to the content of the document or the document request e.g., arts, business, computers, arts-movies, arts-music, etc.
  • content age e.g., text, graphics, video, audio, mixed media, etc.
  • geo-location information e.g., geo-location information, document information, etc.
  • the content server 230 may combine the requested document with one or more of the advertisements provided by the ad server 120/210. This combined information including the document content and advertisement(s) is then forwarded towards the end user device 250 that requested the document, for presentation to the user. Finally, the content server 230 may transmit information about the ads and how, when, and/or where the ads are to be rendered (e.g., position, click-through or not, impression time, impression date, size, conversion or not, etc.) back to the ad server 120/210. Alternatively, or in addition, such information may be provided back to the ad server 120/210 by some other means. [0044] Another example of an ad consumer 130 is the search engine 220. A search engine 220 may receive queries for search results.
  • the search engine may retrieve relevant search results (e.g., from an index of Web pages).
  • relevant search results e.g., from an index of Web pages.
  • An exemplary search engine is described in the article S. Brin and L. Page, "The Anatomy of a Large-Scale Hypertextual Search Engine," Seventh International World Wide Web Conference, Brisbane, Australia and in U.S. Patent No. 6,285,999 (both incorporated herein by reference).
  • search results may include, for example, lists of Web page titles, snippets of text extracted from those Web pages, and hypertext links to those Web pages, and may be grouped into a predetermined number of (e.g., ten) search results.
  • the search engine 220 may submit a request for ads to the ad server 120/210.
  • the request may include a number of ads desired. This number may depend on the search results, the amount of screen or page space occupied by the search results, the size and shape of the ads, etc. hi one embodiment, the number of desired ads will be from one to ten, and preferably from three to five.
  • the request for ads may also include the query (as entered or parsed), information based on the query (such as geolocation information, whether the query came from an affiliate and an identifier of such an affiliate, and/or as described below, information related to, and/or derived from, the search query), and/or information associated with, or based on, the search results.
  • Such information may include, for example, identifiers related to the search results (e.g., document identifiers or "docIDs"), scores related to the search results (e.g., information retrieval ("IR") scores such as dot products of feature vectors corresponding to a query and a document, Page Rank scores, and/or combinations of IR scores and Page Rank scores), snippets of text extracted from identified documents (e.g., Web pages), full text of identified documents, topics of identified documents, feature vectors of identified documents, etc.
  • the search engine 220 may combine the search results with one or more of the advertisements provided by the ad server 120/210. This combined information including the search results and advertisement(s) is then forwarded towards the user that submitted the search, for presentation to the user.
  • the search results are maintained as distinct from the ads, so as not to confuse the user between paid advertisements and presumably neutral search results.
  • the search engine 220 may transmit information about the ad and when, where, and/or how the ad was to be rendered (e.g., position, click-through or not, impression time, impression date, size, conversion or not, etc.) back to the ad server 120/210.
  • information may include information for determining on what basis the ad way determined relevant (e.g., strict or relaxed match, or exact, phrase, or broad match, etc.) Alternatively, or in addition, such information may be provided back to the ad server 120/210 by some other means.
  • the e-mail server 240 may be thought of, generally, as a content server in which a document served is simply an e-mail.
  • e-mail applications such as Microsoft Outlook for example
  • an e-mail server 240 or application may be thought of as an ad consumer 130.
  • e-mails may be thought of as documents, and targeted ads may be served in association with such documents. For example, one or more ads may be served in, under, over, or otherwise in association with an e-mail.
  • servers as (i) requesting ads, and (ii) combining them with content
  • a client device such as an end user computer for example
  • FIG. 3 is a flow diagram of an exemplary method 300 for generating and using page-ad information and a page-ad index in a manner consistent with the present invention.
  • the method 300 may accept advertiser repository information (e.g., a list of HTML pages) and automatically generate a page-ad and associated ad information for each page using a subset of features of the page. (Blocks 310 and 320) Subsequently, the method 300 may create a page-ad index for all pages from different advertisers (pages violating one or more policies (e.g., pages with sexual explicit material) may be filtered out). (Block 330) As indicated by the upper bracket, blocks 310, 320 and 330 can be considered to be a first phase.
  • the method 300 may select candidate page-ads using the page-ads index. If necessary (e.g., if there are more candidate page-ads than requested ads), the candidate page-ads may be entered into an arbitration (e.g., auction). (Block 340) Then, the arbitration may determine a set of one or more winning page-ads to be served for rendering. (Block 350) The method 300 may then be left. (Node 360) As indicated by lower bracket, blocks 340 and 350 can be considered to be a second phase.
  • an arbitration e.g., auction
  • the method 300 may accept advertiser repository information.
  • This information may be a copy of the advertiser's inventory in hypertext format of products and/or services offered on their online Website.
  • the inventory could be a collection of pages in HTML, XML, pdf or other "index-able" format.
  • the method 300 may use this inventory to automatically generate an ad creative and associated page-ad information.
  • Such generation of an ad creative and associated page-ad information may be performed for each Web page of the collection that corresponds to a product or service.
  • the method 300 may automatically generate an ad creative and associated page-ad information for every page obtained from the repository.
  • the advertiser might be able to specify a subset of pages of the Website (e.g., a path portion thereof) for which they want to ' have ads generated (and/or for which that don't want to have ads generated). For example, consider navigation pages in a Website hierarchy that are not appropriate as a landing page. The advertiser might not want to generate ads for these pages. In at least some embodiments consistent with the present invention, a default operation might be to have ads generated for every page, but the advertiser is given the ability to set a special tag to indicate that an ad should not be generated for a particular page. For example, setting the maximum offer for a page to zero might be used as such an indicator. This is just another way of the advertiser expressing that it is not paying for ads that have this as landing page or that it does not wish to have ads with this as landing page generated.
  • a default operation might be to have ads generated for every page, but the advertiser is given the ability to set a special tag to indicate that an ad should not be generated for a particular page
  • the ad creative and associated page-ad information may be generated using a subset of features of, or associated with, the pages. These features may include one or more of the following: the amount of money the advertiser is willing to spend on a specific product or category of products, for every page a maximum cost per click (cpc) if the page is the landing page of the page-ad, additional keywords corresponding to this page that the advertiser may not want displayed when the page is rendered using a browser or any other application, etc. [0054] Referring back to block 330, the method 300 may create a page-ad index using information from all the pages from different advertisers.
  • This may be done by generating a first index mapping a page to terms (e.g., words, phrases, and/or n-grams, etc.) extracted from the page.
  • the terms may be weighted.
  • the first index may then be processed to generate an inverted index (referred to as a "page-ad index") mapping terms to pages (or "page-ads" associated with such pages), which may be weighted.
  • the page-ad index may contain information about a number of pages (e.g., an associated page-ad identifier) from different advertisers. Indexing hypertext content is a well-known technology to those familiar to the field of search engines. Thus, techniques used to generate indexes and inverted indexes for search engines may be applied in the context of the present invention.
  • the method 300 may use the page-ads index to determine page-ads corresponding to pages that may include the terms from the search query.
  • Page-ads that include matching keywords or phrases may be considered as candidate page-ads and, if necessary entered into an arbitration (e.g., an auction) to determine a set of one or more winning page-ads.
  • Candidate page-ads may have associated ad information (e.g., max offer per click, estimated click-through rate for the page-ad, budget constraints, etc.). Such parameters may be considered when selecting the winning ads.
  • types of ads other than page-ad may compete with page ads in the arbitration, or in a subsequent arbitration.
  • Figure 4 is a bubble diagram of exemplary operations that may be performed in a manner consistent with the present invention, as well as information that may be used and/or generated by such operations. Advertisers can use a system 400 such as the one depicted in Figure 4 to automatically generate advertisements for their products and/or services, effectively sparing the advertisers from time consuming and laborious work. As shown, the exemplary system 400 of Figure 4 may include ad creative generation operations 420, product page inverting index generation/update operations 450, and page ad selection and arbitration (auction) operations 440.
  • Retailer Website information (e.g., with product pages) 410 may be supplied to the ad creative generation operations 420 and the product page inverting index generation/update operations 450.
  • the ad creative generation operations 420 may generate an ad creative (and perhaps other ad information) and save such generated information as ad information 430.
  • the product page inverting index generation/update operations 450 are responsible for generating/updating an inverted index of product pages ("the page-ad index").
  • the ad information 430 as well as the page-ad index 460 may be accessible to the page-ad selection and arbitration (auction) operations 440.
  • the page-ad selection and arbitration (auction) operations 440 may use the ad information 430, the page-ad index 460, and the search query information to select winning product page-ads 480 which may be served for rendering.
  • the retailer (which is the advertiser in this case) may have an online business with a great number of products which would make it tedious and laborious to manually create an ad for each and every product offered. Therefore, using a system such as the one 400 of Figure 4 for example, the advertiser may simply submit a copy of the repository of the hypertext context (e.g., a list of HTML pages that contain the description of different products), or more generally the Website information 410. The system 400 may then automatically generate a page-ad for every product-based page (or perhaps each selected, or non-excluded, page). In some instances, it may be assumed that the repository is arranged as a hierarchy according to product categories.
  • the repository is arranged as a hierarchy according to product categories.
  • Website information 410 may be in the form of a number of "indexable formats" e.g., a collection of pages in HTML, XML, PDF, PPT, DOC, MP3, AVI, FLASH, etc.
  • the ad creative generation operations 420 are responsible for automatically creating an ad creative for each page (or perhaps each selected, or non-excluded, page) in the repository using a subset of features of the corresponding pages. These features might include, for example, one or more of: (i) the name of the advertiser to which the page belongs; (ii) the name of the specific product or product-category corresponding to the page; (ii ⁇ ) the price range of the underlying product or product category; (iv) the URL corresponding to the landing page; (v) anchor-text that is obtained by looking at pages referring to the advertiser's Webpage; (v) additional text information that the advertiser may provide; etc.
  • the product page inverting index generation/update operations 450 may accept the retailer Website information 410 (e.g., a repository of product pages) and generate/update an inverted index of product pages 460.
  • the page-ad index 460 may be used to effectively treat (e.g., all) the terms of a page as targeting keywords for an associated page-ad.
  • Selection criteria e.g., term frequency on the page, term frequency in the collection of all pages, thresholds, meta data, tagged data, title words, terms with larger fonts, terms with bold fonts, etc.
  • the inverted index of product pages 460 may be used to select candidate page-ads that are associated with pages that have terms that match those of the search query.
  • the page-ad selection and arbitration operations 450 may calculate an estimated click-through rate for the page-ad.
  • these operations 440 may use certain parameters to determine the winning ads. Examples of such parameters might be a maximum offer per click (and/or some other offer information), the estimated click-through rate (and/or some other measure of ad performance), and budget constraints of the candidate page-ads.
  • the winning page-ads 480 may then be served for rendering.
  • types of ads other than page-ads may compete with page-ads in the arbitration.
  • such other types of ads may compete with winning page-ads in a subsequent arbitration.
  • FIG. 5 is a flow diagram of an exemplary method 500 for performing ad creative generation operations in a manner consistent with the present invention.
  • the method 500 may use a subset of features of the page to create an ad creative.
  • the method 500 may associate the ad creative (e.g., using a page-ad identifier) with the page-ad index.
  • the method 500 may then be left. (Node 560)
  • the method 500 may use a certain number of features of a given repository page to automatically create an advertisement without manual intervention.
  • the system may use information/features of a given page such as, for example, one or more of:
  • advertiser may specify (e.g., through the use of tags inserted on the page and/or inserted on a parent or ancestor page of a hierarchy of pages), information such as the amount of money the advertiser is willing to spend for a specific product or category of products to be advertised, a maximum offer-per-click (CPC) for every page-ad for which the page is the landing page, additional keywords corresponding to this page that the advertiser may not want displayed when the page is rendered using a browser or any other application (e.g., Meta data), etc.
  • CPC maximum offer-per-click
  • a department store may specify a maximum offer per click of $ 0.25 for all electronics page-ads, a maximum offer per click of $ 0.50 for all digital camera page-ads, a maximum offer per click of $ 0.90 for all HDTV page-ads, a maximum offer per click of $2.25 for a particular plasma HDTV page-ad, etc.
  • the offer information may be formulaic.
  • a department store may specify a maximum offer per click of 1.00% of product price for all electronics page-ads, a maximum offer per click of 3.00% of product price for all HDTV page-ads, etc.
  • the offer might be expressed procedurally (e.g., using rules, algorithms, etc.).
  • the procedure might include one or more formulas, though this is not necessary.
  • an advertiser can easily specify a price to pay for ads using estimates of conversion rates, profit margins, etc. Notice that the advertiser may be willing to pay a higher percentage of a product price for higher-margin items, and can easily express this desire.
  • FIG. 6 is a flow diagram of an exemplary method 600 for performing page-ad indexing operations in a manner consistent with the present invention. As shown, the method 600 may follow different branches based on different events that may occur. (Block 620) If page information (with a generated ad creative) is received, then the method 600 may generate and/or update the page-ads index.. (Block 640) If search query information is received, then the method 600 may select candidate page-ads from the page-ad index using the query information. (Block 660) Although not shown, a click-through rate for the ad creative corresponding to the candidate page-ad may be estimated. Subsequently, the method 600 may forward candidate page-ads to an arbitration (e.g., auction) facility. (Block 680)
  • an arbitration e.g., auction
  • the method 600 may generate and/or update the page-ad index upon the acceptance of page information with associated page-ad information.
  • the page-ad index is an inverted index which maps terms to page-ads (either directly using a page-ad identifier, or via a page associated with the page-ad).
  • the page-ad index is an index of terms which are associated with page-ads (e.g., via associated pages).
  • the terms of the repository pages are treated as potential targeting keywords for page-ads corresponding to these pages.
  • the method 600 may search the ads index to find terms that match terms of the search query. Therefore, based on the matching terms in the page-ad index, the method 600 may select candidate page-ads (either directly, or via associated pages) and perhaps estimate the click-through rate for the corresponding ad creatives. Recall that the page-ad index may weight the pages-ads mapped from the terms, for example to automatically give more weight to terms that were in boldface and/or bigger fonts, and more generally, based on the formatting of the page (e.g ⁇ , hypertext).
  • Stopwords may be removed from (or never stored in) the page-ad index.
  • information in the page-ad index may also be used compute an estimated click-through rate for the ad impressions.
  • the ad index may compute a score (e.g., an IR score) that measures how well a given page correlates with the search query. This score, along with the historical performance of the ad impression, could be used to calculate the estimated click- through rate (CTR) for the page-ad's creative.
  • CTR estimated click- through rate
  • Figure 7 is a flow diagram of an exemplary method for performing arbitration operations in a manner consistent with the present invention.
  • the method 700 may accept candidate page-ads and subsequently use parameters associated with each of the candidate page-ads (e.g., maximum offers per click, estimated click-through rate, budget constraints, etc.) to select winning page-ads. (Blocks 720 and 740) Then, the method 700 may serve the winning ad(s) for rendering, (Block 760) before the method 700 is left (Node 780).
  • types of ads besides page-ads may compete in the arbitration. Alternatively, such other types of ads can compete with winning page-ads in a subsequent arbitration.
  • FIG. 8 is high-level block diagram of a machine 800 that may perform one or more of the operations and store various information described above.
  • the machine 800 basically includes one or more processors 810, one or more input/output interface units 830, one or more storage devices 820, and one or more system buses and/or networks 840 for facilitating the communication of information among the coupled elements.
  • One or more input devices 832 and one or more output devices 834 may be coupled with the one or more input/output interfaces 830.
  • the one or more processors 810 may execute machine-executable instructions (e.g., C or C++ running ' on the Solaris operating system available from Sun Microsystems Inc. of Palo Alto, California or the Linux operating system widely available from a number of vendors such as Red Hat, Inc. of Durham, North Carolina) to effect one or more aspects of the present invention. At least a portion of the machine executable instructions may be stored (temporarily or more permanently) on the one or more storage devices 820 and/or may be received from an external source via one or more input interface units 830.
  • machine-executable instructions e.g., C or C++ running ' on the Solaris operating system available from Sun Microsystems Inc. of Palo Alto, California or the Linux operating system widely available from a number of vendors such as Red Hat, Inc. of Durham, North Carolina
  • the machine 800 may be one or more conventional personal computers.
  • the processing units 810 may be one or more microprocessors.
  • the bus 840 may include a system bus.
  • the storage devices 820 may include system memory, such as read only memory (ROM) and/or random access memory (RAM).
  • the storage devices 820 may also include a hard disk drive for reading from and writing to a hard disk, a magnetic disk drive for reading from or writing to a (e.g., removable) magnetic disk, and an optical disk drive for reading from or writing to a removable (magneto-) optical disk such as a compact disk or other (magneto-) optical media.
  • a user may enter commands and information into the personal computer through input devices 832, such as a keyboard and pointing device (e.g., a mouse) for example.
  • Other input devices such as a microphone, a joystick, a game pad, a satellite dish, a scanner, or the like, may also (or alternatively) be included.
  • These and other input devices are often connected to the processing unit(s) 810 through an appropriate interface 830 coupled to the system bus 840.
  • the output devices 834 may include a monitor or other type of display device, which may also be connected to the system bus 840 via an appropriate interface.
  • the personal computer may include other (peripheral) output devices (not shown), such as speakers and printers for example.
  • one or more machines 800 may be used as end user client devices 250, content servers 230, search engines 220, e-mail (or v-mail) servers 240, and/or ad servers 210.
  • the click-through rates used in an arbitration may be simply ad creative click-through rates, unadjusted for IR score.
  • other information may be used in an arbitration instead of, or in addition to, selection rates.
  • Such information may include one or more of other measures of ad performance, various offers or maximum offers for various user actions, etc.
  • a page-ad's score may correspond to an estimated revenue per page-ad impression.
  • the page-ad index need not index all the words of the repository product-based pages. Recall that stopwords may be removed.
  • the index may be limited to certain types of terms, such as only terms included in a product title, only terms provided with more conspicuous fonts (e.g., 12 point, bold face font terms included, 8 point font terms filtered out), terms having a certain minimum (relative or absolute) frequency of on the page, or inverse frequency across pages of a collection, etc.
  • the inverted-index may simply map terms to pages or page identifiers (rather than to page- ads). A separate mapping may be used to map the pages (identifiers) to associated page-ads. The term "page-ad index" is intended to cover both of these alternatives. [0077] Although many of the examples described above concerned product pages and associated ads for products, embodiments consistent with the present invention may also be applied to pages and ads for services.
  • offer information may be applied at different levels of the hierarchy.
  • offer information associated with the most specific and relevant level of the hierarchy is used. For example, suppose that a parent node digital camera page has an maximum offer of $ 0.20 per selection, a first child node page A has a maximum offer of $ 0.35 per selection, and a second child node page B has no offer information. A page-ad associated with page A would have a maximum offer of $0.35 per selection while a page-ad associated with page B would have a maximum offer of $0.20 per selection (inherited from parent node).
  • offer information associated with the ad is a function of the offer information associated with all pages in the hierarchy (path from the given node to the root) of the page for which this ad is created.
  • An example of such a function is one that takes the offer information that is available at the closest or most specific ancestor of the node.
  • products are to be interpreted to include anything that can be bought and sold.
  • products may include consumable items (such as restaurant menu items for example), property items (such as real estate listings for example), living items (such as livestock for example), temporary items (e.g., a song play, a pay-per-view event), etc.
  • consumable items such as restaurant menu items for example
  • property items such as real estate listings for example
  • living items such as livestock for example
  • temporary items e.g., a song play, a pay-per-view event
  • FIG. 9 illustrates a hierarchical navigation scheme of an illustrative Website 900.
  • the home page 910 includes a number of category pages 920, one of which is an HDTV category page.
  • category pages 920 one of which is an HDTV category page.
  • the merchant associated a maximum offer per click of $2.00 with the HDTV category page.
  • the HDTV category page has a number of sub-category pages — plasma, LCD and DPL ⁇ 930.
  • the merchant associated a maximum offer per click of $3.00 with the plasma category page, no offer information with the LCD category page, and a maximum offer per selection of $2,50 with the DLP category page.
  • the DLP sub-category page includes a number of product pages 940, one of which 940a is a product page for a Sony DLP 40" TV.
  • FIG. 10 is an example illustrating operations in an exemplary embodiment consistent with the present invention.
  • the product page 940a may include title (e.g., product name) information, meta information depicted within ⁇ brackets>, various product specification information, and product price information (e.g., $2499.00).
  • a page-ad generation process illustrated abstractly as arrow 1010, may be used to generate page-ad information 1020.
  • the page-ad information 1020 may include an identifier, creative information, landing page information (which may correspond to the address (e.g., URL) of the original product page 940a) and offer information.
  • page-ad index generation operations may be used to generate/update a page-ad index 1040.
  • the index 1040 includes various terms, some of which are found in pages corresponding to the identified page ad 1020.
  • weights may be provided (e.g., 3 for a title term, 2 for a bold term, and 1 otherwise).
  • the page-ad index would include some matches to the ad 1020. Accordingly the ad 1020 might be considered to be a candidate ad. If there were too many candidate ads, an arbitration operation (not shown) could score the ad 1020 using one or more of an IR score, its offer information (which is a maximum offer of $5.00 per selection (note that this is more than that of the parent DLP sub-category page)), ad performance information (not shown), etc. and sort or rank the candidate ads using their scores. ⁇ 4.5 CONCLUSIONS
  • the present invention may be used to automatically generate advertisements for product-based and/or service-based WebPages (i.e., HTML, XML, etc). These advertisements may be automatically targeted using an inverted index which .effectively uses terms found on the page as targeting keywords.
  • product-based and/or service-based WebPages i.e., HTML, XML, etc.
  • These advertisements may be automatically targeted using an inverted index which .effectively uses terms found on the page as targeting keywords.

Abstract

Advertiser repository information (e.g., a list of HTML pages) may be used to automatically generate a page-ad and associated ad information for each page using a subset of features of the page. Subsequently, a page-ad index for all pages from different advertisers may be created. After creating a page-ad index, if a client issues a query (e.g., from a search engine), candidate page-ads may be selected using the page-ads index. If necessary (e.g., if there are i • more candidate page-ads than requested ads), the candidate page-ads may be entered into an arbitration (e.g., auction). Then, the arbitration may determine a set of one or more winning page-ads to be served for rendering.

Description

AUTOMATICALLY GENERATING ADS AND AD-SERVING INDEX
§, 1. BACKGROUND OF THE INVENTION
§ 1.1 FIELD OF THE INVENTION
[0001] The present invention concerns advertising, such as online advertising for example. In particular, the present invention concerns helping to automatically generate advertisements ("ads") for Web pages selling products or services, along with an inverted index used to target the serving of these ads, using hypertext content and/or other attributes of the underlying product or service.
§ 1.2 BACKGROUND INFORMATION
[0002] Internet search engines, such as Google for example, support keyword-based online advertising. To advertise on these search engines an advertiser has to provide an ad creative (what is actually rendered or displayed) for their ad, as well as a set of targeting keywords for the ad.
[0003] Creating the ad creative and choosing the right set of targeting keywords that will give the maximum return on investment for an advertising budget can be a time consuming process. This is particularly true for e-retailers that have a large number of product offerings, especially if such product offerings fall under different product categories. Consider, for example, businesses like Amazon, and Walmart that might want to use online advertising. Such businesses can have an inventory of tens of thousands to millions of products or services (hereafter referred to in the specification as "products" without loss of generality) Because of the underlying efforts and money required, it is daunting for these types of businesses to manually create an advertisement, including an ad creative and a set of targeting keywords, for each of the products sold on their Websites. Consequently, businesses will often create a single advertisement or a small set of advertisements for their entire inventory. For example, an online book seller may create a general ad like "Cheap books for sale" and target it with general keywords like "books," "online," "cheap", where the general ad is meant to serve the bookseller's entire inventory. Such an advertisement is not well-targeted for search phrases. For example, if a search engine user searches on phrases like "lord of the rings" or "dan brown," the forgoing general advertisement above is not targeted to such popular book titles and authors — even though the bookseller may carry inventory related to these keywords. Even if a general ad creative is targeted to various products, it might not perform as well as a more specific ad creative.
[0004] As can be appreciated from the foregoing example, it would be very useful to help businesses, and especially business selling a large number of different products, to advertise online effectively, while allowing such businesses to avoid tedious and laborious ad creative authoring and targeting tasks.
[0005] So-called "templated ads" may be used to help advertisers create multiple, but similar, ads with minimal effort. Using templated ads technology, an advertiser supplies a template that contains certain variables as an ad creative. For ease of exposition assume that there is only one variable in the template. This variable is substituted by a keyword to form an instance of the template. Having created the template, the advertiser simply supplies a list of keywords to create multiple instances of this template. For example, a template may look like "Cheap deal on «bookname»" where «bookname» is a variable that can take any book name. However, templated ads may not generate good quality ads for every product in the inventory. Moreover, they do not solve the problem of generating targeting keywords for the ads. ~>-
[0006] As can be appreciated, better techniques for helping businesses to advertise online effectively, while allowing such businesses to avoid tedious and laborious ad creative authoring and targeting tasks, would be useful.
§ 2. SUMMARY OF THE INVENTION
[0007] Embodiments consistent with the present invention may accept advertiser repository information (e.g., a list of HTML pages) and automatically generate a page-ad and associated ad information for each page using a subset of features of the page. Subsequently, a page-ad index for all pages from different advertisers may be created. After creating a page-ad index, if a client issues a query (e.g., from a search engine), embodiments consistent with the present invention may select candidate page-ads using the page-ads index. If necessary (e.g., if there are more candidate page-ads than requested ads), the candidate page-ads may be entered into an arbitration (e.g., auction). Then, the arbitration may determine a set of one or more winning page-ads to be served for rendering. [0008] In at least some embodiments consistent with the present invention, advertiser repository information may be a copy of the advertiser's inventory in hypertext format of products and/or services offered on their online Website. The inventory could be a collection of pages in HTML, XML5 pdf or other "index-able" format. This inventory may be used to automatically generate an ad creative and associated page-ad information. Such generation of an ad creative and associated page-ad information may be performed for each Web page (perhaps selected by, or not excluded by an advertiser) of the collection that corresponds to a product or service. Thus, an ad creative and associated page-ad information may be generated for every page obtained from the repository.
[0009] In at least some embodiments consistent with the present invention, the ad creative and associated page-ad information may be generated using a subset of features present within the pages. These features may include one or more of the following: the amount of money the advertiser is willing to spend on ads for a specific product or category of products, for every page a maximum cost per click (cpc) if the page is the landing page of the page-ad, additional keywords corresponding to this page, that the advertiser may not want displayed when the page is rendered using a browser or any other application, etc.
[0010] At least some embodiments consistent with the present invention may create and store a page-ad index using information from all the pages from different advertisers. This may be done by generating a first index mapping a page to terms (e.g., words, phrases, and/or n-grams, etc.) extracted from the page. The terms may be weighted. The first index may then be processed to generate an inverted index (referred to as a "page-ad index") mapping terms to pages (or "page-ads" associated with such pages), which may be weighted. Therefore, the page-ad index may contain information about a number of pages (e.g., an associated page-ad identifier) from different advertisers.
[0011] In at least some embodiments consistent with the present invention, when a search query is received, the page-ads index may be used to determine page-ads corresponding to pages that may include the terms from the search query. Page-ads that include matching keywords or phrases may be considered as candidate page-ads and, if necessary entered into an arbitration (e.g., an auction) to determine a set of one or more winning page-ads. Candidate page-ads may have associated ad information (e.g., max offer per click, estimated click-through rate for the page-ad, budget constraints, etc.). Such parameters may be considered when selecting the winning ads. Types of ads other than page-ad may compete with page ads in the arbitration, or in a subsequent arbitration. § 3. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Figure 1 is a diagram showing parties or entities that can interact with an advertising system.
[0013] Figure 2 is a diagram illustrating an exemplary environment in which, or with which, embodiments consistent with the present invention may operate.
[001.4] Figure 3 is a flow diagram of an exemplary method for generating and using page-ad information and a page-ad index in a manner consistent with the present invention.
[0015] Figure 4 is a bubble diagram of exemplary operations that may be performed in a manner consistent with the present invention, as well as information that may be used and/or generated by such operations.
[0016] Figure 5 is a flow diagram of an exemplary method for generating an ad creative in a manner consistent with the present invention.
[0017] Figure 6 is flow diagram of an exemplary method for performing page-ad indexing operations in a manner consistent with the present invention.
[0018] Figure 7 is a flow diagram of an exemplary method for performing arbitration operations in a manner consistent with the present invention.
[0019] Figure 8 is a block diagram of an exemplary apparatus that may perform various operations and store various information in a manner consistent with the present invention.
[0020] Figure 9 illustrates a hierarchical navigation scheme of an illustrative Website.
[0021] Figure 10 is an example illustrating operations in an exemplary embodiment consistent with the present invention.
§ 4. DETAILED DESCRIPTION
[0022] The present invention may involve novel methods, apparatus, message formats, and/or data structures for helping to automatically generate advertisements for Web pages along with an inverted index for targeting these advertisements based on hypertext content and other attributes of the underlying product or service. The following description is presented to enable one skilled in the art to make and use the invention, and is provided in the context of particular applications and their requirements. Thus, the following description of embodiments consistent with the present invention provides illustration and description, but is not intended to be exhaustive or to limit the present invention to the precise form disclosed. Various modifications to the disclosed embodiments will be apparent to those skilled in the art, and the general principles set forth below may be applied to other embodiments and applications. For example, although a series of acts may be described with reference to a flow diagram, the order of acts may differ in other implementations when the performance of one act is not dependent on the completion of another act. Further, non-dependent acts may be performed in parallel. Also, as used herein, the article "a" is intended to include one or more items. Where only one item is intended, the term "one" or similar language is used. In the following, "information" may refer to the actual information, or a pointer to, identifier of, or location of such information. No element, act or instruction used in" the description should be construed as critical or essential to the present invention unless explicitly described as such. Thus, the present invention is not intended to be limited to the embodiments shown and the inventors regard their invention to include any patentable subject matter described.
[0023] In the following definitions of terms that may be used in the specification are provided in § 4.1. Then, environments in which, or with which, the present invention may operate are described in § 4.2. Exemplary embodiments of the present invention are described in § 4.3. Thereafter, specific examples illustrating the utility of exemplary embodiments of the present invention are provided in § 4.4. Finally, some conclusions regarding the present invention are set forth in § 4.5.
§ 4.1 DEFINITIONS
[0024] Online ads, such as those used in the exemplary systems described below with reference to Figures 1 and 2, or any other system, may have various intrinsic features. Such features may be specified by an application and/or an advertiser. These features are referred to as "ad features" below. For example, in the case of a text ad, ad features may include a title line, ad text, and an embedded link. In the case of an image ad, ad features may include images, executable code, and an embedded link. In the case of an audio ad, ad features may include audio content. The ad features may also include executable code (e.g., encoded as tones, provided in non-audio packets of an audio stream, etc.). Depending on the type of online ad, ad features may include one or more of the following: text, a link, an audio file, a video file, an image file, executable code, embedded information, etc. In devices that can render more than one type of media (devices that have different outputs), some ad features may pertain to one type of media rendered to the user over one output, while other ad features may pertain to another type of media rendered to the user over another output. For example, if an MP3 player includes a display, an ad to be rendered on such a player can have an audio component and/or a text component. As another example, if a mobile telephone includes a speaker, a display and telephony means, an ad to be rendered on such a telephone can have one or more of an audio component, a text component, an image component and executable code for dialing an encoded telephone number. Naturally, other types of ad features are possible.
[0025] When an online ad is served, one or more parameters may be used to describe how, when, and/or where the ad was served. These parameters are referred to as "serving parameters" below. Serving parameters may include, for example, one or more of the following: features of (including information on) a document on which, or with which, the ad was served, a search query or search results associated with the serving of the ad, a user characteristic (e.g., their geographic location, the language used by the user, the type of browser used, previous page views, previous behavior, user account, any Web cookies used by the system, user device characteristics, etc.), a host or affiliate site (e.g., America Online, Google, Yahoo) that initiated the request, an absolute position of the ad on the page on which it was served, an ad spot in which the ad was served (e.g., a position (spatial or temporal) of the ad relative to other ads served), an absolute size of the ad, a size of the ad relative to other ads, an absolute volume of the ad, a volume of the ad relative to other ads, an absolute temporal length of the ad, a relative temporal length of the ad, a color of the ad, a number of other ads served, types of other ads served, time of day served, time of week served, time of year served, etc. Naturally, there are other serving parameters that may be used in the context of the invention. [0026] Although serving parameters may be extrinsic to ad features, they may be associated with an ad as serving conditions or constraints. When used as serving conditions or constraints, such serving parameters are referred to simply as "serving constraints" (or "targeting criteria"). For example, in some systems, an advertiser may be able to target the serving of its ad by specifying that it is only to be served on weekdays, no lower than a certain position, only to users in a certain location, etc. As another example, in some systems, an advertiser may specify that its ad is to be served only if a page or search query includes certain keywords or phrases. As yet another example, in some systems, an advertiser may specify that its ad is to be served only if a document, on which, or with which, the ad is to be served, includes certain topics or concepts, or falls under a particular cluster or clusters, or some other classification or classifications (e.g., verticals). In some systems, an advertiser may specify that its ad is to be served only to (or is not to be served to) user devices having certain characteristics. Finally, in some systems, an ad might be targeted so that it is served in response to a request sourced from a particular location, or in response to a request concerning a particular location. [0027] "Ad information" may include any combination of ad features, ad serving constraints, information derivable from ad features or ad serving constraints (referred to as "ad derived information"), and/or information related to the ad (referred to as "ad related information"), as well as an extension of such information (e.g., information derived from ad related information).
[0028] The ratio of the number of selections (e.g., clickthroughs, dial-throughs, etc.) of an ad to the number of impressions of the ad (i.e., the number of times an ad is rendered) is defined as the "selection rate" (or "clickthrough rate" or "CTR") of the ad.
[0029] A "conversion" is said to occur when a user consummates a transaction related to a previously served ad. What constitutes a conversion may vary from case to case and can be determined in a variety of ways. For example, it maybe the case that a conversion occurs when a user clicks on an ad, is referred to the advertiser's Web page, and consummates a purchase there before leaving that Web page. Alternatively, a conversion may be defined as a user being shown an ad, and making a purchase on the advertiser's Web page within a predetermined time (e.g., seven days), hi yet another alternative, a conversion may be defined by an advertiser to be any measurable/observable user action such as, for example, downloading a white paper, navigating to at least a given depth of a Website, viewing at least a certain number of Web pages, spending at least a predetermined amount of time on a Website or Web page, registering on a Website, dialing a telephone number, sending a product or service inquiry, etc. Often, if user actions don't indicate a consummated purchase, they may indicate a sales lead, although user actions constituting a conversion are not limited to this. Indeed, many other definitions of what constitutes a conversion are possible.
[0030] The ratio of the number of conversions to the number of impressions of the ad (i.e., the number of times an ad is rendered) and the ratio of the number of conversions to the number of selections (or the number of some other earlier event) are both referred to as the "conversion rate" or "CR." The type of conversion rate will be apparent from the context in which it is used. If a conversion is defined to be able to occur within a predetermined time since the serving of an ad, one possible definition of the conversion rate might only consider ads that have been served more than the predetermined time in the past.
[0031] A "property" is something on which ads can be presented. A property may include online content (e.g., a Website, an MP3 audio program, a Webcast, apodcast, online games, etc.), offline content (e.g., a newspaper, a magazine, a theatrical production, a concert, a sports event, a radio broadcast, etc.), and/or offline objects (e.g., a billboard, a stadium score board, an outfield wall; the side of truck trailer, etc.). Properties with content (e.g., magazines, newspapers, Websites, email messages, audio programs, etc.) may be referred to as "media properties." Although properties may themselves be offline, pertinent information about a property (e.g., attribute(s), topic(s), concept(s), category(ies), keyword(s), relevancy information, type(s) of ads supported, etc.) may be available online. For example, an outdoor jazz music festival may have entered the topics "music" and "jazz", the location of the concerts, the time of the concerts, artists scheduled to appear at the festival, and types of available ad spots (e.g., spots in a printed program, spots on a stage, spots on seat backs, audio announcements of sponsors, etc.). An "audio property" is a property that can be heard. ■ [0032] A "document" is to be broadly interpreted to include any machine-readable and machine-storable work product. A document may be a file, a combination of files, one or more files with embedded links to other files, etc. The files may be of any type, such as text, audio, image, video, etc. Parts of a document to be rendered to an end user can be thought of as "content" of the document. A document may include "structured data" containing both content (words, pictures, sound, conversations, etc.) and some indication of the meaning of that content (for example, e-mail fields and associated data, HTML tags and associated data, embedded song title and artist information, etc.) Ad spots in the document may be defined by embedded information or instructions. In the context of the Internet, a common document is a Web page. Web pages often include content and may include embedded information (such as meta information, hyperlinks, etc.) and/or embedded instructions (such as JavaScript, etc.). In many cases, a document has an addressable storage location and can therefore be uniquely identified by this addressable location. A universal resource locator (URL) is an address used to access information on the Internet.
[0033] A "Web document" includes any document published on the Web. Examples of Web documents include, for example, a Website, a Web page, a Webcast, etc. [0034] "Document information" may include any information included in the document, information derivable from information included in the document (referred to as "document derived information"), and/or information related to the document (referred to as "document related information"), as well as an extensions of such information (e.g., information derived from related information). An example of document derived information is a classification based on textual or audio content of a document. Examples of document related information include document information from other documents with links to the instant document, as well as document information from other documents to which the instant document links. [0035] Content from a document may be rendered on a "content rendering application or device". Examples of content rendering applications include an Internet browser (e.g., Explorer, Netscape, Opera, Firefox, etc.), a media player (e.g., an MP3 player, a streaming audio file player from Microsoft Corporation of Redmond, WA, or from RealNetworks, Inc., of Seattle, WA, etc.), a viewer (e.g., an Abobe Acrobat pdf reader), etc.
[0036] A "content owner" is a person or entity that has some property right in the content of a media property (e.g., document). A content owner may be an author of the content. In addition, or alternatively, a content owner may have rights to reproduce the content, rights to prepare derivative works of the content, rights to display or perform the content publicly, and/or other proscribed rights in the content. Although a content server might be a content owner in the content of the documents it serves, this is not necessary. A "Web publisher" is an example of a content owner.
[0037] "User information" may include user behavior information and/or user profile information.
[0038] "E-mail information" may include any information included in an e-mail (also referred to as "internal e-mail information"), information derivable from information included in the e-mail and/or information related to the e-mail, as well as extensions of such information (e.g., information derived from related information). An example of information derived from e-mail information is information extracted or otherwise derived from search results returned in response to a search query composed of terms extracted from an e-mail subject line. Examples of information related to e-mail information include e-mail information about one or more other e-mails sent by the same sender of a given e-mail, or user information about an e-mail recipient. Information derived from or related to e-mail information may be referred to as "external e-mail information."
§ 4.2 EXEMPLARY ADVERTISING ENVIRONMENT IN WHICH, OR WITH WHICH, EMBODIMENTS CONSISTENT WITH THE PRESENT INVENTION MAY OPERATION
[0039] Figure 1 is a high level diagram of an advertising environment. The environment may include an ad entry, maintenance and delivery system (simply referred to as an ad server) 120. Advertisers 110 may directly, or indirectly, enter, maintain, and track ad information in the system 120. The ads may be in the form of graphical ads such as so-called banner ads, text only ads, image ads, audio ads, video ads, ads combining one of more of any of such components, etc. The ads may also include embedded information, such as a link, and/or machine executable instructions. Ad consumers 130 may submit requests for ads to, accept ads responsive to their request from, and provide usage information to, the system 120. An entity other than an ad consumer 130 may initiate a request for ads. Although not shown, other entities may provide usage information (e.g., whether or not a conversion or click-through related to the ad occurred) to the system 120. This usage information may include measured or observed user behavior related to ads that have been served.
[0040] The ad server 120 may be similar to the one described in Figure 2 of U.S. Patent Application Serial No. 10/375,900 (incorporated herein by reference), entitled "SERVING ADVERTISEMENTS BASED ON CONTENT," filed on February 26, 2003 and listing Darrell Anderson, Paul Buchheit, Alex Carobus, Claire Cui, Jeffrey A. Dean, Georges R. Harik, Deepak Jindal, and Narayanan Shivakumar as inventors. An advertising program may include information concerning accounts, campaigns, creatives, targeting, etc. The term "account" relates to information for a given advertiser (e.g., a unique e-mail address, a password, billing information, etc.). A "campaign" or "ad campaign" refers to one or more groups of one or more advertisements, and may include a start date, an end date, budget information, geo-targeting information, syndication information, etc. For example, Honda may have one advertising campaign for its automotive line, and a separate advertising campaign for its motorcycle line. The campaign for its automotive line may have one or more ad groups, each containing one or more ads. Each ad group may include targeting information (e.g., a set of keywords, a set of one or more topics, geolocation information, user profile information, etc.), and price information (e.g., maximum cost (cost per click-though, cost per conversion, etc.)). Alternatively, or in addition, each ad group may include an average cost (e.g., average cost per click-through, average cost per conversion, etc.). Therefore, a single maximum cost and/or a single average cost may be associated with one or more keywords, and/or topics. As stated, each ad group may have one or more ads or "creatives" (That is, ad content that is ultimately rendered to an end user.). Each ad may also include a link to a URL (e.g., a landing Web page, such as the home page of an advertiser, or a Web page associated with a particular product or server). Naturally, the ad information may include more or less information, and may be organized in a number of different ways. Indeed, embodiments consistent with the present invention may be used to automatically determine, and/or avoid the need for, various ad campaign information. [0041 ] Figure 2 illustrates an environment 200 in which the present invention may be used. A user device (also referred to as a "client" or "client device") 250 may include a browser facility (such as the Explorer browser from Microsoft, the Opera Web Browser from Opera Software of Norway, the Navigator browser from AOL/Time Warner, etc.), an e-mail facility (e.g., Outlook from Microsoft), etc. A search engine 220 may permit user devices 250 to search collections of documents (e.g., Web pages). A content server 210 may permit user devices 250 to access documents. An e-mail server (such as Hotmail from Microsoft Network, Yahoo Mail, etc.) 240 may be used to provide e-mail functionality to user devices 250. An ad server 210 may be used to serve ads to user devices 250. The ads may be served in association with search results provided by the search engine 220. However, content-relevant ads may be served in association with content provided by the content server 230, and/or e-mail supported by the e- mail server 240 and/or user device e-mail facilities.
[0042] As discussed in U.S. Patent Application Serial No. 10/375,900 (introduced above), ads may be targeted to documents served by content servers. Thus, one example of an ad consumer 130 is a general content server 230 that receives requests for documents (e.g., articles, discussion threads, music, video, graphics, search results, Web page listings, etc.), and retrieves the requested document in response to, or otherwise services, the request. The content server may submit a request for ads to the ad server 120/210. Such an ad request may include a number of ads desired. The ad request may also include document request information. This information may include the document itself (e.g., page), a category or topic corresponding to the content of the document or the document request (e.g., arts, business, computers, arts-movies, arts-music, etc.), part or all of the document request, content age, content type (e.g., text, graphics, video, audio, mixed media, etc.), geo-location information, document information, etc.
[0043] The content server 230 may combine the requested document with one or more of the advertisements provided by the ad server 120/210. This combined information including the document content and advertisement(s) is then forwarded towards the end user device 250 that requested the document, for presentation to the user. Finally, the content server 230 may transmit information about the ads and how, when, and/or where the ads are to be rendered (e.g., position, click-through or not, impression time, impression date, size, conversion or not, etc.) back to the ad server 120/210. Alternatively, or in addition, such information may be provided back to the ad server 120/210 by some other means. [0044] Another example of an ad consumer 130 is the search engine 220. A search engine 220 may receive queries for search results. In response, the search engine may retrieve relevant search results (e.g., from an index of Web pages). An exemplary search engine is described in the article S. Brin and L. Page, "The Anatomy of a Large-Scale Hypertextual Search Engine," Seventh International World Wide Web Conference, Brisbane, Australia and in U.S. Patent No. 6,285,999 (both incorporated herein by reference). Such search results may include, for example, lists of Web page titles, snippets of text extracted from those Web pages, and hypertext links to those Web pages, and may be grouped into a predetermined number of (e.g., ten) search results.
[0045] The search engine 220 may submit a request for ads to the ad server 120/210. The request may include a number of ads desired. This number may depend on the search results, the amount of screen or page space occupied by the search results, the size and shape of the ads, etc. hi one embodiment, the number of desired ads will be from one to ten, and preferably from three to five. The request for ads may also include the query (as entered or parsed), information based on the query (such as geolocation information, whether the query came from an affiliate and an identifier of such an affiliate, and/or as described below, information related to, and/or derived from, the search query), and/or information associated with, or based on, the search results. Such information may include, for example, identifiers related to the search results (e.g., document identifiers or "docIDs"), scores related to the search results (e.g., information retrieval ("IR") scores such as dot products of feature vectors corresponding to a query and a document, Page Rank scores, and/or combinations of IR scores and Page Rank scores), snippets of text extracted from identified documents (e.g., Web pages), full text of identified documents, topics of identified documents, feature vectors of identified documents, etc. [0046] The search engine 220 may combine the search results with one or more of the advertisements provided by the ad server 120/210. This combined information including the search results and advertisement(s) is then forwarded towards the user that submitted the search, for presentation to the user. Preferably, the search results are maintained as distinct from the ads, so as not to confuse the user between paid advertisements and presumably neutral search results.
[0047] The search engine 220 may transmit information about the ad and when, where, and/or how the ad was to be rendered (e.g., position, click-through or not, impression time, impression date, size, conversion or not, etc.) back to the ad server 120/210. As described below, such information may include information for determining on what basis the ad way determined relevant (e.g., strict or relaxed match, or exact, phrase, or broad match, etc.) Alternatively, or in addition, such information may be provided back to the ad server 120/210 by some other means.
[0048] Finally, the e-mail server 240 may be thought of, generally, as a content server in which a document served is simply an e-mail. Further, e-mail applications (such as Microsoft Outlook for example) may be used to send and/or.receive e-mail. Therefore, an e-mail server 240 or application may be thought of as an ad consumer 130. Thus, e-mails may be thought of as documents, and targeted ads may be served in association with such documents. For example, one or more ads may be served in, under, over, or otherwise in association with an e-mail.
[0049] Although the foregoing examples described servers as (i) requesting ads, and (ii) combining them with content, one or both of these operations may be performed by a client device (such as an end user computer for example).
§ 4.3 EXEMPLARY EMBODIMENTS
[0050] Figure 3 is a flow diagram of an exemplary method 300 for generating and using page-ad information and a page-ad index in a manner consistent with the present invention. Specifically, the method 300 may accept advertiser repository information (e.g., a list of HTML pages) and automatically generate a page-ad and associated ad information for each page using a subset of features of the page. (Blocks 310 and 320) Subsequently, the method 300 may create a page-ad index for all pages from different advertisers (pages violating one or more policies (e.g., pages with sexual explicit material) may be filtered out). (Block 330) As indicated by the upper bracket, blocks 310, 320 and 330 can be considered to be a first phase. [0051] After creating a page-ad index, if a client issues a query (e.g., from a search engine), the method 300 may select candidate page-ads using the page-ads index. If necessary (e.g., if there are more candidate page-ads than requested ads), the candidate page-ads may be entered into an arbitration (e.g., auction). (Block 340) Then, the arbitration may determine a set of one or more winning page-ads to be served for rendering. (Block 350) The method 300 may then be left. (Node 360) As indicated by lower bracket, blocks 340 and 350 can be considered to be a second phase.
[0052] Referring back to block 310, the method 300 may accept advertiser repository information. This information may be a copy of the advertiser's inventory in hypertext format of products and/or services offered on their online Website. The inventory could be a collection of pages in HTML, XML, pdf or other "index-able" format. Thus, referring to both blocks 310 and 320, the method 300 may use this inventory to automatically generate an ad creative and associated page-ad information. Such generation of an ad creative and associated page-ad information may be performed for each Web page of the collection that corresponds to a product or service. Thus, the method 300 may automatically generate an ad creative and associated page-ad information for every page obtained from the repository. Alternatively, the advertiser might be able to specify a subset of pages of the Website (e.g., a path portion thereof) for which they want to 'have ads generated (and/or for which that don't want to have ads generated). For example, consider navigation pages in a Website hierarchy that are not appropriate as a landing page. The advertiser might not want to generate ads for these pages. In at least some embodiments consistent with the present invention, a default operation might be to have ads generated for every page, but the advertiser is given the ability to set a special tag to indicate that an ad should not be generated for a particular page. For example, setting the maximum offer for a page to zero might be used as such an indicator. This is just another way of the advertiser expressing that it is not paying for ads that have this as landing page or that it does not wish to have ads with this as landing page generated.
[0053] The ad creative and associated page-ad information may be generated using a subset of features of, or associated with, the pages. These features may include one or more of the following: the amount of money the advertiser is willing to spend on a specific product or category of products, for every page a maximum cost per click (cpc) if the page is the landing page of the page-ad, additional keywords corresponding to this page that the advertiser may not want displayed when the page is rendered using a browser or any other application, etc. [0054] Referring back to block 330, the method 300 may create a page-ad index using information from all the pages from different advertisers. This may be done by generating a first index mapping a page to terms (e.g., words, phrases, and/or n-grams, etc.) extracted from the page. The terms may be weighted. The first index may then be processed to generate an inverted index (referred to as a "page-ad index") mapping terms to pages (or "page-ads" associated with such pages), which may be weighted. Therefore, the page-ad index may contain information about a number of pages (e.g., an associated page-ad identifier) from different advertisers. Indexing hypertext content is a well-known technology to those familiar to the field of search engines. Thus, techniques used to generate indexes and inverted indexes for search engines may be applied in the context of the present invention. [0055] Referring to block 340, when a search query is received, the method 300 may use the page-ads index to determine page-ads corresponding to pages that may include the terms from the search query. Page-ads that include matching keywords or phrases may be considered as candidate page-ads and, if necessary entered into an arbitration (e.g., an auction) to determine a set of one or more winning page-ads. Candidate page-ads may have associated ad information (e.g., max offer per click, estimated click-through rate for the page-ad, budget constraints, etc.). Such parameters may be considered when selecting the winning ads. Although not shown, types of ads other than page-ad may compete with page ads in the arbitration, or in a subsequent arbitration.
[0056] Figure 4 is a bubble diagram of exemplary operations that may be performed in a manner consistent with the present invention, as well as information that may be used and/or generated by such operations. Advertisers can use a system 400 such as the one depicted in Figure 4 to automatically generate advertisements for their products and/or services, effectively sparing the advertisers from time consuming and laborious work. As shown, the exemplary system 400 of Figure 4 may include ad creative generation operations 420, product page inverting index generation/update operations 450, and page ad selection and arbitration (auction) operations 440.
[0057] Retailer Website information (e.g., with product pages) 410 may be supplied to the ad creative generation operations 420 and the product page inverting index generation/update operations 450. The ad creative generation operations 420 may generate an ad creative (and perhaps other ad information) and save such generated information as ad information 430. The product page inverting index generation/update operations 450 are responsible for generating/updating an inverted index of product pages ("the page-ad index"). The ad information 430 as well as the page-ad index 460 may be accessible to the page-ad selection and arbitration (auction) operations 440. Upon the receipt of an ad request including search query information 470, the page-ad selection and arbitration (auction) operations 440 may use the ad information 430, the page-ad index 460, and the search query information to select winning product page-ads 480 which may be served for rendering.
[0058] The retailer (which is the advertiser in this case) may have an online business with a great number of products which would make it tedious and laborious to manually create an ad for each and every product offered. Therefore, using a system such as the one 400 of Figure 4 for example, the advertiser may simply submit a copy of the repository of the hypertext context (e.g., a list of HTML pages that contain the description of different products), or more generally the Website information 410. The system 400 may then automatically generate a page-ad for every product-based page (or perhaps each selected, or non-excluded, page). In some instances, it may be assumed that the repository is arranged as a hierarchy according to product categories. For instance, all the product pages for digital cameras could be the children of a page that describes digital cameras. This page in turn could be the child of a page corresponding to electronics and so on. m the absence of a hierarchy it may be assumed that all pages are the children of a single parent node which corresponds to a page that describes the advertiser's (online) shop. Note that the Website information 410 (product inventory) may be in the form of a number of "indexable formats" e.g., a collection of pages in HTML, XML, PDF, PPT, DOC, MP3, AVI, FLASH, etc.
[0059] The ad creative generation operations 420 are responsible for automatically creating an ad creative for each page (or perhaps each selected, or non-excluded, page) in the repository using a subset of features of the corresponding pages. These features might include, for example, one or more of: (i) the name of the advertiser to which the page belongs; (ii) the name of the specific product or product-category corresponding to the page; (iiϊ) the price range of the underlying product or product category; (iv) the URL corresponding to the landing page; (v) anchor-text that is obtained by looking at pages referring to the advertiser's Webpage; (v) additional text information that the advertiser may provide; etc.
[0060] The product page inverting index generation/update operations 450 may accept the retailer Website information 410 (e.g., a repository of product pages) and generate/update an inverted index of product pages 460. For example, the page-ad index 460 may be used to effectively treat (e.g., all) the terms of a page as targeting keywords for an associated page-ad. Selection criteria (e.g., term frequency on the page, term frequency in the collection of all pages, thresholds, meta data, tagged data, title words, terms with larger fonts, terms with bold fonts, etc.) may be used to reduce the number of targeting keywords.
[0061 ] Further, upon receiving a search query request 470, the inverted index of product pages 460 may be used to select candidate page-ads that are associated with pages that have terms that match those of the search query. Using information retrieval ("IR") scores that measure how well the product page correlates with the search query information, as well as historical performance information,, the page-ad selection and arbitration operations 450 may calculate an estimated click-through rate for the page-ad. Once candidate pages are obtained, these operations 440 may use certain parameters to determine the winning ads. Examples of such parameters might be a maximum offer per click (and/or some other offer information), the estimated click-through rate (and/or some other measure of ad performance), and budget constraints of the candidate page-ads. The winning page-ads 480 may then be served for rendering. Although not shown, types of ads other than page-ads may compete with page-ads in the arbitration. Alternatively, such other types of ads may compete with winning page-ads in a subsequent arbitration.
§ 4.3.1 EXEMPLARY METHODS
[0062] Figure 5 is a flow diagram of an exemplary method 500 for performing ad creative generation operations in a manner consistent with the present invention. In particular, for a given repository page, the method 500 may use a subset of features of the page to create an ad creative. (Block 520) Once an ad creative has been created, the method 500 may associate the ad creative (e.g., using a page-ad identifier) with the page-ad index. (Block 540) The method 500 may then be left. (Node 560)
[0063] Referring back to block 520, the method 500 may use a certain number of features of a given repository page to automatically create an advertisement without manual intervention. The system may use information/features of a given page such as, for example, one or more of:
(a) the name of the advertiser to which the page belongs to; (b) the title of the specific product or product-category corresponding to the page; (c) the price range of the underlying product or product category; (d) the URL corresponding to this page (landing page); (e) anchor-text that is obtained by looking at pages referring to advertiser's websites; (f) additional text information that advertiser may provide; etc. This information may be used by the method 500 to automatically generate an ad creative for a particular page. The advertiser may have selected or defined a particular page-ad template to be populated by information extracted from various pages of its Website.
[0064] Further, for a given repository page, more information may be provided. In particular, advertiser may specify (e.g., through the use of tags inserted on the page and/or inserted on a parent or ancestor page of a hierarchy of pages), information such as the amount of money the advertiser is willing to spend for a specific product or category of products to be advertised, a maximum offer-per-click (CPC) for every page-ad for which the page is the landing page, additional keywords corresponding to this page that the advertiser may not want displayed when the page is rendered using a browser or any other application (e.g., Meta data), etc. This additional information may be used in the arbitration operations. As one example, a department store may specify a maximum offer per click of $ 0.25 for all electronics page-ads, a maximum offer per click of $ 0.50 for all digital camera page-ads, a maximum offer per click of $ 0.90 for all HDTV page-ads, a maximum offer per click of $2.25 for a particular plasma HDTV page-ad, etc. The offer information may be formulaic. For example, a department store may specify a maximum offer per click of 1.00% of product price for all electronics page-ads, a maximum offer per click of 3.00% of product price for all HDTV page-ads, etc. The offer might be expressed procedurally (e.g., using rules, algorithms, etc.). The procedure might include one or more formulas, though this is not necessary. In this way, an advertiser can easily specify a price to pay for ads using estimates of conversion rates, profit margins, etc. Notice that the advertiser may be willing to pay a higher percentage of a product price for higher-margin items, and can easily express this desire.
[0065] Figure 6 is a flow diagram of an exemplary method 600 for performing page-ad indexing operations in a manner consistent with the present invention. As shown, the method 600 may follow different branches based on different events that may occur. (Block 620) If page information (with a generated ad creative) is received, then the method 600 may generate and/or update the page-ads index.. (Block 640) If search query information is received, then the method 600 may select candidate page-ads from the page-ad index using the query information. (Block 660) Although not shown, a click-through rate for the ad creative corresponding to the candidate page-ad may be estimated. Subsequently, the method 600 may forward candidate page-ads to an arbitration (e.g., auction) facility. (Block 680)
[0066] Referring back to block 640, the method 600 may generate and/or update the page-ad index upon the acceptance of page information with associated page-ad information. Recall that the page-ad index is an inverted index which maps terms to page-ads (either directly using a page-ad identifier, or via a page associated with the page-ad). Hence, the page-ad index is an index of terms which are associated with page-ads (e.g., via associated pages). In essence, the terms of the repository pages are treated as potential targeting keywords for page-ads corresponding to these pages.
[0067] Referring back to block 660, when search query information is received, the method 600 may search the ads index to find terms that match terms of the search query. Therefore, based on the matching terms in the page-ad index, the method 600 may select candidate page-ads (either directly, or via associated pages) and perhaps estimate the click-through rate for the corresponding ad creatives. Recall that the page-ad index may weight the pages-ads mapped from the terms, for example to automatically give more weight to terms that were in boldface and/or bigger fonts, and more generally, based on the formatting of the page (e.g~, hypertext). Stopwords (e.g., words conveying little meaning such as "a," "the," "for," etc.) may be removed from (or never stored in) the page-ad index. As mentioned earlier, information in the page-ad index may also be used compute an estimated click-through rate for the ad impressions. In particular, when a user issues a query, the ad index may compute a score (e.g., an IR score) that measures how well a given page correlates with the search query. This score, along with the historical performance of the ad impression, could be used to calculate the estimated click- through rate (CTR) for the page-ad's creative.
[0068] Figure 7 is a flow diagram of an exemplary method for performing arbitration operations in a manner consistent with the present invention. In particular, the method 700 may accept candidate page-ads and subsequently use parameters associated with each of the candidate page-ads (e.g., maximum offers per click, estimated click-through rate, budget constraints, etc.) to select winning page-ads. (Blocks 720 and 740) Then, the method 700 may serve the winning ad(s) for rendering, (Block 760) before the method 700 is left (Node 780). Although not shown, types of ads besides page-ads may compete in the arbitration. Alternatively, such other types of ads can compete with winning page-ads in a subsequent arbitration.
§ 4.3.2 EXEMPLARY APPARATUS
[0069] Figure 8 is high-level block diagram of a machine 800 that may perform one or more of the operations and store various information described above. The machine 800 basically includes one or more processors 810, one or more input/output interface units 830, one or more storage devices 820, and one or more system buses and/or networks 840 for facilitating the communication of information among the coupled elements. One or more input devices 832 and one or more output devices 834 may be coupled with the one or more input/output interfaces 830.
[0070] The one or more processors 810 may execute machine-executable instructions (e.g., C or C++ running'on the Solaris operating system available from Sun Microsystems Inc. of Palo Alto, California or the Linux operating system widely available from a number of vendors such as Red Hat, Inc. of Durham, North Carolina) to effect one or more aspects of the present invention. At least a portion of the machine executable instructions may be stored (temporarily or more permanently) on the one or more storage devices 820 and/or may be received from an external source via one or more input interface units 830.
[0071] In one embodiment, the machine 800 may be one or more conventional personal computers. In this case, the processing units 810 may be one or more microprocessors. The bus 840 may include a system bus. The storage devices 820 may include system memory, such as read only memory (ROM) and/or random access memory (RAM). The storage devices 820 may also include a hard disk drive for reading from and writing to a hard disk, a magnetic disk drive for reading from or writing to a (e.g., removable) magnetic disk, and an optical disk drive for reading from or writing to a removable (magneto-) optical disk such as a compact disk or other (magneto-) optical media.
[0072] A user may enter commands and information into the personal computer through input devices 832, such as a keyboard and pointing device (e.g., a mouse) for example. Other input devices such as a microphone, a joystick, a game pad, a satellite dish, a scanner, or the like, may also (or alternatively) be included. These and other input devices are often connected to the processing unit(s) 810 through an appropriate interface 830 coupled to the system bus 840. The output devices 834 may include a monitor or other type of display device, which may also be connected to the system bus 840 via an appropriate interface. In addition to (or instead of) the monitor, the personal computer may include other (peripheral) output devices (not shown), such as speakers and printers for example.
[0073] Referring back to Figure 2, one or more machines 800 may be used as end user client devices 250, content servers 230, search engines 220, e-mail (or v-mail) servers 240, and/or ad servers 210.
§ 4.3.3 REFINEMENTS, ALTERNATIVES AND EXTENSIONS
[0074] In at least some embodiments consistent with the present invention, the click-through rates used in an arbitration may be simply ad creative click-through rates, unadjusted for IR score. Naturally, other information may be used in an arbitration instead of, or in addition to, selection rates. Such information may include one or more of other measures of ad performance, various offers or maximum offers for various user actions, etc. In at least some embodiments consistent with the present invention, a page-ad's score may correspond to an estimated revenue per page-ad impression. [0075] As mentioned above, the page-ad index need not index all the words of the repository product-based pages. Recall that stopwords may be removed. The index may be limited to certain types of terms, such as only terms included in a product title, only terms provided with more conspicuous fonts (e.g., 12 point, bold face font terms included, 8 point font terms filtered out), terms having a certain minimum (relative or absolute) frequency of on the page, or inverse frequency across pages of a collection, etc.
[0076] The inverted-index may simply map terms to pages or page identifiers (rather than to page- ads). A separate mapping may be used to map the pages (identifiers) to associated page-ads. The term "page-ad index" is intended to cover both of these alternatives. [0077] Although many of the examples described above concerned product pages and associated ads for products, embodiments consistent with the present invention may also be applied to pages and ads for services.
[0078] In the case of a Website with a hierarchy of products, offer information may be applied at different levels of the hierarchy. In some embodiments consistent with the present invention, offer information associated with the most specific and relevant level of the hierarchy is used. For example, suppose that a parent node digital camera page has an maximum offer of $ 0.20 per selection, a first child node page A has a maximum offer of $ 0.35 per selection, and a second child node page B has no offer information. A page-ad associated with page A would have a maximum offer of $0.35 per selection while a page-ad associated with page B would have a maximum offer of $0.20 per selection (inherited from parent node). In at least some embodiments consistent with the present invention, offer information associated with the ad is a function of the offer information associated with all pages in the hierarchy (path from the given node to the root) of the page for which this ad is created. An example of such a function is one that takes the offer information that is available at the closest or most specific ancestor of the node.
[0079] The term "products" is to be interpreted to include anything that can be bought and sold. Thus, products may include consumable items (such as restaurant menu items for example), property items (such as real estate listings for example), living items (such as livestock for example), temporary items (e.g., a song play, a pay-per-view event), etc. § 4.4 EXAMPLE OF OPERATIONS IN AN EXEMPLARY EMBODIMENT CONSISTENT WITH THE PRESENT INVENTION
[0080] Figure 9 illustrates a hierarchical navigation scheme of an illustrative Website 900. The home page 910 includes a number of category pages 920, one of which is an HDTV category page. Assume that the merchant associated a maximum offer per click of $2.00 with the HDTV category page. Assume that the HDTV category page has a number of sub-category pages — plasma, LCD and DPL ~ 930. Assume that the merchant associated a maximum offer per click of $3.00 with the plasma category page, no offer information with the LCD category page, and a maximum offer per selection of $2,50 with the DLP category page. Finally, assume that the DLP sub-category page includes a number of product pages 940, one of which 940a is a product page for a Sony DLP 40" TV.
[0081] Figure 10 is an example illustrating operations in an exemplary embodiment consistent with the present invention. The product page 940a may include title (e.g., product name) information, meta information depicted within <brackets>, various product specification information, and product price information (e.g., $2499.00). A page-ad generation process, illustrated abstractly as arrow 1010, may be used to generate page-ad information 1020. As shown, the page-ad information 1020 may include an identifier, creative information, landing page information (which may correspond to the address (e.g., URL) of the original product page 940a) and offer information. As also shown, page-ad index generation operations, illustrated abstractly as arrow 1030, may be used to generate/update a page-ad index 1040. Notice that the index 1040 includes various terms, some of which are found in pages corresponding to the identified page ad 1020. Furthermore, weights may be provided (e.g., 3 for a title term, 2 for a bold term, and 1 otherwise).
[0082] As can be appreciated from the foregoing, if the search query "sony DLP HDTV" were entered, the page-ad index would include some matches to the ad 1020. Accordingly the ad 1020 might be considered to be a candidate ad. If there were too many candidate ads, an arbitration operation (not shown) could score the ad 1020 using one or more of an IR score, its offer information (which is a maximum offer of $5.00 per selection (note that this is more than that of the parent DLP sub-category page)), ad performance information (not shown), etc. and sort or rank the candidate ads using their scores. § 4.5 CONCLUSIONS
[0083] As can be appreciated from the foregoing, the present invention may be used to automatically generate advertisements for product-based and/or service-based WebPages (i.e., HTML, XML, etc). These advertisements may be automatically targeted using an inverted index which .effectively uses terms found on the page as targeting keywords.

Claims

WHAT IS CLAIMED IS:
1. A computer-implemented method comprising: a) accepting information from advertiser documents; b) generating ads, each ad including i) a creative, and ii) offer information, using the accepted information; and . d) generating an index mapping information extracted from the advertiser documents to one of (A) advertiser document identifiers for advertiser documents on which such information is found, and (B) ad identifiers for ads generated from advertiser documents on which such information is found.
2. The computer-implemented method of claim 1 wherein the advertiser documents are product Web pages. '
3. The computer-implemented method of claim 1 wherein the advertiser documents are product Web pages of an e-commerce Website.
4. The computer-implemented method of claim 1 wherein the advertiser documents are services Web pages.
5. The computer-implemented method of claim 1 wherein the offer information is one of (A) an offer per ad impression, (B) a maximum offer per ad impression, (C) an offer per ad selection, (D) a maximum offer per ad selection, (E) an offer per ad conversion and (F) a maximum offer per ad conversion.
6. The computer-implemented method of claim 1 wherein the offer information is expressed in terms of a set currency.
7. The. computer-implemented method of claim 1 wherein the offer information is expressed formulaically, and wherein the formula includes a product price extracted from the advertiser documents.
8. The computer-implemented method of claim 1 wherein the advertiser documents include unique addresses, wherein each of the generated ads is associated with a specified landing page to be loaded upon ad selection, and wherein the specified landing page is set to the unique address of the advertiser document from which the ad was generated.
9. The computer-implemented method of claim 1 wherein the advertiser documents are Web pages, each including a URL address, • wherein each ad further includes a specified landing page to be loaded upon ad selection, and wherein the specified landing page is set to the URL address of the Web page from which the ad was generated.
10. The computer-implemented method of claim 1 wherein each of the ad creatives is generated using accepted text from the advertiser documents by selecting only some of the accepted text using at least one of (A) font size, (B) font attributes, and (C) Meta information.
1 1. The computer-implemented method of claim 1 wherein, in the second index, the one of (A) advertiser document identifiers for advertiser documents on which such information is found, and (B) ad identifiers for ads generated from advertiser documents on which such information is found, includes weights.
12. The computer-implemented method of claim 11 wherein the information from the advertiser documents includes terms, wherein the second index maps terms extracted from the advertiser documents back to one of (A) advertiser document identifiers for advertiser documents on which such terms are found, and (B) ad identifiers for ads generated from advertiser documents on which such terms are found, and . wherein the weights are determined as a function of at least one of (A) font size, (B) font attributes, and (C) Meta information, of the terms in the advertiser document.
13. The computer-implemented method of claim 1 wherein, the advertiser documents are product Web pages of an e-commerce Website, which Web pages are arranged in a hierarchy defined by product categories.
14. The computer-implemented method of claim 13 wherein at least some of the information for a particular product Web page is inherited from an ancestor Web page.
15. The computer-implemented method of claim 13 wherein offer information for an ad associated with a particular product Web page is inherited from an ancestor Web page.
16. The computer-implemented method of claim 1 wherein the information from the advertiser documents includes terms, wherein the second index maps the terms extracted from the advertiser documents back to one of (A) advertiser document identifiers for advertiser documents on which such terms are found, and (B) ad identifiers for ads generated from advertiser documents on which such terms are found such that the terms are used as targeting keywords, wherein the advertiser documents are product Web pages of an e-commerce Website, which Web pages are arranged in a hierarchy defined by product categories, and wherein at least one of the terms is inherited from an ancestor Web page.
17. The computer-implemented method of claim 1 further comprising: d) accepting search query information; and e) finding one or more relevant ads using the second index and the search query information.
18. The computer-implemented method of claim 17 wherein the act of finding one or more relevant ads using the second index and the search query information includes using terms of the search query to lookup at least one of (A) advertiser document identifiers for advertiser documents on which such terms are found, and (B) ad identifiers for ads generated from advertiser documents on which such terms are found.
19. The computer-implemented method of claim 17 further comprising: f) determining a set of one or more ads using the found one or more relevant ads as candidate ads.
20. The computer-implemented method of claim 19 wherein the act of determining a set of one or more ads using the found one or more relevant ads as candidate ads includes - scoring the candidate ads, and - accepting a subset of the candidate ads based on their scores.
21. The computer-implemented method of claim 20 wherein the act of scoring candidate ads uses offer information associated with the ads.
22. The computer-implemented method of claim 20 wherein the act of scoring candidate ads uses performance information associated with the ads.
23. The computer-implemented method of claim 20 wherein the act of scoring candidate ads uses a degree of relevance associated with the ads.
24. The computer-implemented method of claim 20 wherein the act of scoring candidate ads uses information on other pages in the hierarchy of the page for which this ad was created.
25. The computer-implemented method of claim 1 further comprising: d) accepting document relevance information; and e) finding one or more relevant ads using the index and the document relevance information.
26. The computer-implemented method of claim 1 wherein the offer information is expressed procedurally.
27. The computer-implemented method of claim 1 wherein the offer information is expressed procedurally using JavaScript.
28. The computer-implemented method of claim 1 further comprising: d) generating another index mapping one of (A) advertiser document identifiers and (B) ad identifiers for ads generated from the advertiser document information, to information extracted from the advertiser documents.
29. Apparatus comprising: a) means for accepting information from advertiser documents; b) means for generating ads, each ad including i) a creative, and ii) offer information, using the accepted information; and c) means for generating an index mapping information extracted from the advertiser documents to one of (A) advertiser document identifiers for advertiser documents on which such information is found, and (B) ad identifiers for ads generated from advertiser documents on which such information is found.
30. A machine-readable medium having stored thereon: an index mapping information extracted from the advertiser documents to one of (A) advertiser document identifiers for advertiser documents on which such information is found, and (B) ad identifiers for ads generated from advertiser documents on which such information is found.
31. The machine-readable medium of claim 30 further having stored thereon: - another index mapping one of (A) advertiser document identifiers and (B) ad identifiers for ads generated from the advertiser document information, to information extracted from the advertiser documents.
PCT/US2007/007367 2006-03-30 2007-03-23 Automatically generating ads and ad-serving index WO2007126728A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/394,135 2006-03-30
US11/394,135 US8326686B2 (en) 2006-03-30 2006-03-30 Automatically generating ads and ad-serving index

Publications (1)

Publication Number Publication Date
WO2007126728A1 true WO2007126728A1 (en) 2007-11-08

Family

ID=38576601

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/007367 WO2007126728A1 (en) 2006-03-30 2007-03-23 Automatically generating ads and ad-serving index

Country Status (2)

Country Link
US (1) US8326686B2 (en)
WO (1) WO2007126728A1 (en)

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001084536A1 (en) * 2000-04-28 2001-11-08 Deutsche Telekom Ag Method for detecting a voice activity decision (voice activity detector)
US20090112698A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg System and method for brand affinity content distribution and optimization
US20090024409A1 (en) * 2002-02-06 2009-01-22 Ryan Steelberg Apparatus, system and method for a brand affinity engine using positive and negative mentions
US20090112715A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg Engine, system and method for generation of brand affinity content
US20090018922A1 (en) * 2002-02-06 2009-01-15 Ryan Steelberg System and method for preemptive brand affinity content distribution
US9251520B2 (en) * 2006-02-22 2016-02-02 Google Inc. Distributing mobile advertisements
US20080059285A1 (en) * 2006-09-01 2008-03-06 Admob, Inc. Assessing a fee for an ad
US7844591B1 (en) * 2006-10-12 2010-11-30 Adobe Systems Incorporated Method for displaying an image with search results
AU2006233245B2 (en) * 2006-10-30 2010-08-12 FeedOps Pty Ltd Web advertising management method
US20080201218A1 (en) * 2007-02-20 2008-08-21 Andrei Zary Broder Methods of dynamically creating personalized internet advertisements based on content
US8650265B2 (en) * 2007-02-20 2014-02-11 Yahoo! Inc. Methods of dynamically creating personalized Internet advertisements based on advertiser input
KR100881832B1 (en) * 2007-03-30 2009-02-03 엔에이치엔(주) Method and system for displaying keyword advertisement using searching optimum randing page
US20080249855A1 (en) * 2007-04-04 2008-10-09 Yahoo! Inc. System for generating advertising creatives
US9349134B1 (en) 2007-05-31 2016-05-24 Google Inc. Detecting illegitimate network traffic
US8688521B2 (en) 2007-07-20 2014-04-01 Yahoo! Inc. System and method to facilitate matching of content to advertising information in a network
US8666819B2 (en) * 2007-07-20 2014-03-04 Yahoo! Overture System and method to facilitate classification and storage of events in a network
US20090024467A1 (en) * 2007-07-20 2009-01-22 Marcus Felipe Fontoura Serving Advertisements with a Webpage Based on a Referrer Address of the Webpage
ITFI20070177A1 (en) * 2007-07-26 2009-01-27 Riccardo Vieri SYSTEM FOR THE CREATION AND SETTING OF AN ADVERTISING CAMPAIGN DERIVING FROM THE INSERTION OF ADVERTISING MESSAGES WITHIN AN EXCHANGE OF MESSAGES AND METHOD FOR ITS FUNCTIONING.
US20090112700A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg System and method for brand affinity content distribution and optimization
US8751479B2 (en) 2007-09-07 2014-06-10 Brand Affinity Technologies, Inc. Search and storage engine having variable indexing for information associations
US20100114701A1 (en) * 2007-09-07 2010-05-06 Brand Affinity Technologies, Inc. System and method for brand affinity content distribution and optimization with charitable organizations
US20110047050A1 (en) * 2007-09-07 2011-02-24 Ryan Steelberg Apparatus, System And Method For A Brand Affinity Engine Using Positive And Negative Mentions And Indexing
US20090112717A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg Apparatus, system and method for a brand affinity engine with delivery tracking and statistics
US20100030746A1 (en) * 2008-07-30 2010-02-04 Ryan Steelberg System and method for distributing content for use with entertainment creatives including consumer messaging
US7809603B2 (en) * 2007-09-07 2010-10-05 Brand Affinity Technologies, Inc. Advertising request and rules-based content provision engine, system and method
US20100274644A1 (en) * 2007-09-07 2010-10-28 Ryan Steelberg Engine, system and method for generation of brand affinity content
US20090112714A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg Engine, system and method for generation of brand affinity content
US8285700B2 (en) 2007-09-07 2012-10-09 Brand Affinity Technologies, Inc. Apparatus, system and method for a brand affinity engine using positive and negative mentions and indexing
US20100217664A1 (en) * 2007-09-07 2010-08-26 Ryan Steelberg Engine, system and method for enhancing the value of advertisements
US20100131337A1 (en) * 2007-09-07 2010-05-27 Ryan Steelberg System and method for localized valuations of media assets
US8725563B2 (en) * 2007-09-07 2014-05-13 Brand Affinity Technologies, Inc. System and method for searching media assets
US8452764B2 (en) 2007-09-07 2013-05-28 Ryan Steelberg Apparatus, system and method for a brand affinity engine using positive and negative mentions and indexing
US9633505B2 (en) * 2007-09-07 2017-04-25 Veritone, Inc. System and method for on-demand delivery of audio content for use with entertainment creatives
US9294727B2 (en) 2007-10-31 2016-03-22 Veritone, Inc. System and method for creation and management of advertising inventory using metadata
US8165985B2 (en) * 2007-10-12 2012-04-24 Palo Alto Research Center Incorporated System and method for performing discovery of digital information in a subject area
US8073682B2 (en) 2007-10-12 2011-12-06 Palo Alto Research Center Incorporated System and method for prospecting digital information
US8671104B2 (en) 2007-10-12 2014-03-11 Palo Alto Research Center Incorporated System and method for providing orientation into digital information
US20090299837A1 (en) * 2007-10-31 2009-12-03 Ryan Steelberg System and method for brand affinity content distribution and optimization
US10013536B2 (en) * 2007-11-06 2018-07-03 The Mathworks, Inc. License activation and management
US20090164296A1 (en) * 2007-12-20 2009-06-25 Yahoo! Inc. Scheduling transient online advertisements
US9117219B2 (en) * 2007-12-31 2015-08-25 Peer 39 Inc. Method and a system for selecting advertising spots
US20090187481A1 (en) 2008-01-22 2009-07-23 Bonzi Joe R Automatic generation of electronic advertising messages
ITPO20080002A1 (en) * 2008-01-22 2009-07-23 Riccardo Vieri SYSTEM AND METHOD FOR THE CONTEXTUAL ADVERTISING GENERATION DURING THE SENDING OF SMS, ITS DEVICE AND INTERFACE.
EP2257919A4 (en) * 2008-02-07 2012-12-12 Brand Affinity Tech Inc Qualitative and quantitative method for rating a brand using keywords
US20090210287A1 (en) * 2008-02-18 2009-08-20 Microsoft Corporation Advertisement space allocation
US20090287672A1 (en) * 2008-05-13 2009-11-19 Deepayan Chakrabarti Method and Apparatus for Better Web Ad Matching by Combining Relevance with Consumer Click Feedback
US20100107189A1 (en) * 2008-06-12 2010-04-29 Ryan Steelberg Barcode advertising
US20090327331A1 (en) * 2008-06-30 2009-12-31 Microsoft Corporation Ad system that interacts with plural ad engines
US20100030647A1 (en) * 2008-07-31 2010-02-04 Yahoo! Inc. Advertisement selection for internet search and content pages
US20100057536A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Community-Based Advertising Term Disambiguation
US20100057577A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Topic-Guided Broadening Of Advertising Targets In Social Indexing
US8209616B2 (en) * 2008-08-28 2012-06-26 Palo Alto Research Center Incorporated System and method for interfacing a web browser widget with social indexing
WO2010039860A1 (en) * 2008-09-30 2010-04-08 Brand Affinity Technologies, Inc. System and method for brand affinity content distribution and placement
EP2350883A4 (en) * 2008-10-14 2012-08-22 Brand Affinity Tech Inc Apparatus, system and method for a brand affinity engine using positive and negative mentions and indexing
US9002729B2 (en) * 2008-10-21 2015-04-07 Accenture Global Services Limited System and method for determining sets of online advertisement treatments using confidences
WO2010056545A1 (en) * 2008-10-29 2010-05-20 Brand Affinity Technologies, Inc. System and method for metricizing assets in a brand affinity content distribution
WO2010056866A1 (en) * 2008-11-14 2010-05-20 Brand Affinity Technologies, Inc. System and method for brand affinity content distribution and optimization
US8549016B2 (en) * 2008-11-14 2013-10-01 Palo Alto Research Center Incorporated System and method for providing robust topic identification in social indexes
US20100125523A1 (en) * 2008-11-18 2010-05-20 Peer 39 Inc. Method and a system for certifying a document for advertisement appropriateness
US20100125496A1 (en) * 2008-11-19 2010-05-20 Wong Victor K System and method for automated generation of advertising
US8239397B2 (en) * 2009-01-27 2012-08-07 Palo Alto Research Center Incorporated System and method for managing user attention by detecting hot and cold topics in social indexes
US8356044B2 (en) * 2009-01-27 2013-01-15 Palo Alto Research Center Incorporated System and method for providing default hierarchical training for social indexing
US8452781B2 (en) * 2009-01-27 2013-05-28 Palo Alto Research Center Incorporated System and method for using banded topic relevance and time for article prioritization
US20100250348A1 (en) * 2009-03-25 2010-09-30 Microsoft Corporation Platform or user sensitive advertising
US20100262607A1 (en) * 2009-04-10 2010-10-14 Sergei Vassilvitskii System and Method for Automatic Matching of Contracts to Impression Opportunities Using Complex Predicates and an Inverted Index
US20100299205A1 (en) 2009-05-20 2010-11-25 David Erdmann Protected serving of electronic content
US20110016109A1 (en) * 2009-07-14 2011-01-20 Sergei Vassilvitskii System and Method for Automatic Matching of Highest Scoring Contracts to Impression Opportunities Using Complex Predicates and an Inverted Index
US11164219B1 (en) 2009-08-06 2021-11-02 2Kdirect, Inc. Automatic generation of electronic advertising messages
US9436953B1 (en) 2009-10-01 2016-09-06 2Kdirect, Llc Automatic generation of electronic advertising messages containing one or more automatically selected stock photography images
US8849847B2 (en) * 2010-02-03 2014-09-30 Get Smart Content, Inc. Rules-based targeted content message serving systems and methods
US8244701B2 (en) * 2010-02-12 2012-08-14 Microsoft Corporation Using behavior data to quickly improve search ranking
US8244700B2 (en) * 2010-02-12 2012-08-14 Microsoft Corporation Rapid update of index metadata
US20110213659A1 (en) * 2010-02-26 2011-09-01 Marcus Fontoura System and Method for Automatic Matching of Contracts in an Inverted Index to Impression Opportunities Using Complex Predicates and Confidence Threshold Values
US9129300B2 (en) * 2010-04-21 2015-09-08 Yahoo! Inc. Using external sources for sponsored search AD selection
US9031944B2 (en) 2010-04-30 2015-05-12 Palo Alto Research Center Incorporated System and method for providing multi-core and multi-level topical organization in social indexes
US20120016741A1 (en) * 2010-07-19 2012-01-19 Google Inc. Targeting content without keywords
US20120030015A1 (en) * 2010-07-29 2012-02-02 Google Inc. Automatic abstracted creative generation from a web site
US9171311B2 (en) 2010-08-31 2015-10-27 Microsoft Technology Licensing, Llc Maintaining targetable user inventory for digital advertising
US8719007B2 (en) * 2010-09-27 2014-05-06 Hewlett-Packard Development Company, L.P. Determining offer terms from text
US20120198056A1 (en) * 2011-01-31 2012-08-02 Yaacov Shama Techniques for Analyzing Website Content
US20130013425A1 (en) * 2011-07-05 2013-01-10 Marchex, Inc. Method and system for automatically generating advertising creatives
US20130166389A1 (en) * 2011-12-23 2013-06-27 Dennis Paul MICHALOPOULOS List-based advertisement serving
US9304985B1 (en) 2012-02-03 2016-04-05 Google Inc. Promoting content
US9471551B1 (en) 2012-02-03 2016-10-18 Google Inc. Promoting content
US9378191B1 (en) * 2012-02-03 2016-06-28 Google Inc. Promoting content
US9146993B1 (en) * 2012-03-16 2015-09-29 Google, Inc. Content keyword identification
US20140046756A1 (en) * 2012-08-08 2014-02-13 Shopzilla, Inc. Generative model for related searches and advertising keywords
US9460451B2 (en) 2013-07-01 2016-10-04 Yahoo! Inc. Quality scoring system for advertisements and content in an online system
WO2015066891A1 (en) * 2013-11-08 2015-05-14 Google Inc. Systems and methods for extracting and generating images for display content
US10134053B2 (en) 2013-11-19 2018-11-20 Excalibur Ip, Llc User engagement-based contextually-dependent automated pricing for non-guaranteed delivery
US10275804B1 (en) * 2013-12-06 2019-04-30 Twitter, Inc. Ad placement in mobile applications and websites
CN106462588B (en) * 2015-01-14 2020-04-10 微软技术许可有限责任公司 Content creation from extracted content
US11080755B1 (en) * 2015-04-14 2021-08-03 Twitter, Inc. Native advertisements
US20170116649A1 (en) * 2015-10-22 2017-04-27 Andrew Phillip Gordon Systems and Methods for Dynamic Creation of Customized Image
US20180012258A1 (en) * 2016-07-05 2018-01-11 Dealer Teamwork, Llc Networked advertisement distribution and compliance
US20180239516A1 (en) * 2017-02-23 2018-08-23 Usablenet Inc. Methods for generating and publishing microsites and devices thereof
CN110020325B (en) * 2018-08-17 2023-04-11 深圳壹账通智能科技有限公司 Page loading method, device, equipment and readable storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040093327A1 (en) * 2002-09-24 2004-05-13 Darrell Anderson Serving advertisements based on content

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082426B2 (en) * 1993-06-18 2006-07-25 Cnet Networks, Inc. Content aggregation method and apparatus for an on-line product catalog
US5724521A (en) * 1994-11-03 1998-03-03 Intel Corporation Method and apparatus for providing electronic advertisements to end users in a consumer best-fit pricing manner
US5740549A (en) * 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US6026368A (en) * 1995-07-17 2000-02-15 24/7 Media, Inc. On-line interactive system and method for providing content and advertising information to a targeted set of viewers
CA2240009A1 (en) 1995-12-08 1997-06-12 Bell Communications Research, Inc. Method and system for placing advertisements in a computer network
US5848397A (en) * 1996-04-19 1998-12-08 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US6078914A (en) * 1996-12-09 2000-06-20 Open Text Corporation Natural language meta-search system and method
US6044376A (en) * 1997-04-24 2000-03-28 Imgis, Inc. Content stream analysis
US6144944A (en) * 1997-04-24 2000-11-07 Imgis, Inc. Computer system for efficiently selecting and providing information
US7039599B2 (en) * 1997-06-16 2006-05-02 Doubleclick Inc. Method and apparatus for automatic placement of advertising
US6167382A (en) * 1998-06-01 2000-12-26 F.A.C. Services Group, L.P. Design and production of print advertising and commercial display materials over the Internet
US6985882B1 (en) * 1999-02-05 2006-01-10 Directrep, Llc Method and system for selling and purchasing media advertising over a distributed communication network
US6269361B1 (en) * 1999-05-28 2001-07-31 Goto.Com System and method for influencing a position on a search result list generated by a computer network search engine
US6401075B1 (en) * 2000-02-14 2002-06-04 Global Network, Inc. Methods of placing, purchasing and monitoring internet advertising

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040093327A1 (en) * 2002-09-24 2004-05-13 Darrell Anderson Serving advertisements based on content

Also Published As

Publication number Publication date
US8326686B2 (en) 2012-12-04
US20070239530A1 (en) 2007-10-11

Similar Documents

Publication Publication Date Title
US8326686B2 (en) Automatically generating ads and ad-serving index
US11037198B2 (en) Suggesting targeting information for ads, such as websites and/or categories of websites for example
AU2004279061B2 (en) Generating information for online advertisements from internet data and traditional media data
AU2009213081B2 (en) Using concepts for ad targeting
US8571932B2 (en) Using search query information to determine relevant ads for a landing page of an ad
AU2003275252B2 (en) Serving advertisements using information associated with e-mail
US20140122235A1 (en) Determining ad targeting information and/or ad creative information using past search queries
US20070078707A1 (en) Controlling the serving of advertisements, such as cost per impression advertisements for example, to improve the value of such serves
US20130304572A1 (en) Providing links to related advertisements
US20150154636A1 (en) Determining online ad targeting information, such as keyword-targeting suggestions
US8788336B1 (en) Estimating cost and/or performance information for an advertisement in an advertising system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07753951

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07753951

Country of ref document: EP

Kind code of ref document: A1