Subject matter disclosed herein may relate to estimating inventory for a display advertising system utilized, for example, in Web-based advertising.
With networks such as the Internet gaining tremendous popularity and with the vast multitude of pages and/or other documents and/or other media content becoming available to users via the World Wide Web (web), for example, Web-based display advertising has increased in importance and prominence as industry seeks to take better advantage of the opportunities potentially afforded by these networks, including the Internet. In Web-based advertising systems, advertisements may be embedded in web pages that may be accessed by users via web browser applications executed on any of a number of electronic device types. In such systems, it may be advantageous to present particular advertisements to particular users or types of users.
Claimed subject matter is particularly pointed out and distinctly claimed in the concluding portion of the specification. However, both as to organization and/or method of operation, together with objects, features, and/or advantages thereof, it may best be understood by reference to the following detailed description when read with the accompanying drawings in which:
Reference is made in the following detailed description to the accompanying drawings, which form a part hereof, wherein like numerals may designate like parts throughout to indicate corresponding or analogous elements. It will be appreciated that for simplicity and/or clarity of illustration, elements illustrated in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, it is to be understood that other embodiments may be utilized and structural and/or logical changes may be made without departing from the scope of claimed subject matter. It should also be noted that directions and references, for example, up, down, top, bottom, and so on, may be used to facilitate the discussion of the drawings and are not intended to restrict the application of claimed subject matter. Therefore, the following detailed description is not to be taken in a limiting sense and the scope of claimed subject matter defined by appended claims and their equivalents.
In the following detailed description, numerous specific details are set forth to provide a thorough understanding of claimed subject matter. However, it will be understood by those skilled in the art that claimed subject matter may be practiced without these specific details. In other instances, methods, apparatuses or systems that would be known by one of ordinary skill have not been described in detail so as not to obscure claimed subject matter.
Reference throughout this specification to “one embodiment” or “an embodiment” may mean that a particular feature, structure, or characteristic described in connection with a particular embodiment may be included in at least one embodiment of claimed subject matter. Thus, appearances of the phrase “in one embodiment” or “an embodiment” in various places throughout this specification are not necessarily intended to refer to the same embodiment or to any one particular embodiment described. Furthermore, it is to be understood that particular features, structures, or characteristics described may be combined in various ways in one or more embodiments. In general, of course, these and other issues may vary with the particular context of usage. Therefore, the particular context of the description or the usage of these terms may provide helpful guidance regarding inferences to be drawn for that context.
Likewise, the terms, “and,” “and/or,” and “or” as used herein may include a variety of meanings that also is expected to depend at least in part upon the context in which such terms are used. Typically, “or” as well as “and/or” if used to associate a list, such as A, B or C, is intended to mean A, B, and C, here used in the inclusive sense, as well as A, B or C, here used in the exclusive sense. In addition, the term “one or more” as used herein may be used to describe any feature, structure, or characteristic in the singular or may be used to describe some combination of features, structures or characteristics. Though, it should be noted that this is merely an illustrative example and claimed subject matter is not limited to this example.
Some portions of the detailed description which follow are presented in terms of algorithms or symbolic representations of operations on data bits or binary digital signals stored within a computing platform memory, such as a computer memory. These algorithmic descriptions or representations are examples of techniques used by those of ordinary skill in the data processing arts to convey the substance of their work to others skilled in the art. An algorithm here, and generally, is considered to be a self-consistent sequence of operations or similar processing leading to a desired result. In this context, operations or processing involve physical manipulation of physical quantities. Typically, although not necessarily, such quantities may take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared or otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to such signals as bits, data, values, elements, symbols, characters, terms, numbers, numerals or the like. It should be understood, however, that all of these and similar terms are to be associated with appropriate physical quantities and are merely convenient labels. Unless specifically stated otherwise, as apparent from the following discussion, it is appreciated that throughout this specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining” or the like refer to actions or processes of a computing platform, such as a computer or a similar electronic computing device, that manipulates or transforms data represented as physical electronic or magnetic quantities within memories, registers, or other information storage devices, transmission devices, or display devices of the computing platform. Further, unless specifically stated otherwise, processes described herein, with reference to flow diagrams or otherwise, may also be executed and/or controlled, in whole or in part, by such a computing platform.
As discussed above, in Web-based advertising systems, advertisements (“ads”) may be embedded in web pages that may be accessed over the Internet by users via web browser applications executed on any of a number of electronic device types. Such network-based advertising may be referred to as “display advertising.” In display advertising systems, ads may include text or graphical information such as logos, photographs, or other images, for example. Ads may provide links to other web sites so that if a user clicks on or otherwise selects an ad, the user may be directed to a web site associated with the ad. Ads may further include any of a wide range of digital content types, including, but not limited to, text, static images, video, or audio elements. However, these are merely examples of possible types of display advertisements, and the scope of claimed subject matter is not limited in these respects.
As also mentioned above, it may be advantageous in some circumstances for an advertiser to present particular advertisements to particular users or types of users. For example, an advertiser may wish to target an ad at men in particular, and may therefore specify to a web page publisher to display the ad whenever particular web pages thought to be of interest to men are accessed. For example, an advertiser for shaving products may think it advantageous to target an ad at men, and may specify that the ad be displayed whenever a page related to “sports” is accessed. Similarly, for another example, an advertiser for cosmetics may think it advantageous to target a particular ad at women specifically, and may specify that the ad be displayed whenever a page related to women's clothing is accessed.
If display advertising platform 300 determines that sufficient inventory will be available to satisfy the terms of the contract request, the contract may be accepted, or booked. Display advertising platform 300 may track booked contracts and may also track projected inventory availability so that newly received contract requests may be evaluated and available inventory may be determined. Display advertising platform 300 may provide an appropriate advertisement at least in part in accordance with the term of the booked contract to web server 120, and if a user access, or impression, to a web site on web server 120 is determined to match the terms of the booked contract, web server 120 may display the advertisement to the user.
As mentioned above, it may be advantageous to target advertisements more narrowly by targeting particular ads to particular desired demographic groups. Display advertising platform 300 may collect information related to users as the users browse around the web server's web pages, and such information may be collected and/or stored in a database. For an embodiment, the database may comprise a scalable multi-dimensional database with a bit-mapped indexing technique. The stored information may be utilized in some cases to identify particular users and/or user computing platforms and to gather information related to that user, perhaps by analyzing the user's browsing behavior. For example, if the user, perhaps identified by some sort of user identification (user ID), is observed to access a sports site, or is observed to access web pages related to men's clothing, the web page publisher may assume that the user associated with that particular ID is male. In some cases, web page publishers may gather information related to users by explicitly asking the users to provide the information, perhaps as part of a registration process.
Whether obtained by the user directly, or obtained through observation and analysis of the user's browsing behaviors, web page publishers and/or display advertising providers may store a range of information related to the users. For one or more embodiments, the stored information may be organized at least in part as one or more stored impressions. Examples of the types of information that may be associated with a user may include, but are not limited to, user ID, Internet Protocol (IP) address, name, gender, age, country, state/province and/or city of residence, subject areas of interest to the user, income level, occupation, birth date, education level, language, etc. Of course, these are merely examples of the types of information that may be associated with a user, and the scope of claimed subject matter is not limited in this respect. Also, as mentioned above, impressions may be generated by a forecasting engine or other system element, for one or more embodiments. Such generated impressions may comprise similar types of information as that of stored impressions, discussed above. The generated impressions may be based, at least in part, on mathematical models that may attempt to create impressions that may approximate, at least in part, impressions formed from actual user accesses to web pages.
As previously described, the term “impression” is meant to denote an access of a web page by a user. The term “impression” may further relate to information associated with the user and/or with the accessed web page. Example information types are mentioned above, although the scope of claimed subject matter is not limited in these respects. An impression may further be thought of as a customized advertising “opportunity”. If a user accesses a web page located on web server 120, which may happen millions of time a day in some cases, there may exist one or more opportunities to display one or more advertisements. The opportunities may be customized by analyzing or identifying demographic characteristics or target attributes of the users accessing the web pages, and decisions may be made with regard to which advertisements, if any, to display to the users by embedding the advertisements in the accessed web page. Advertisers may contract with web page publishers to show particular ads to specified categories of users a specified number of times over a specified period of time, for one or more embodiments, for example.
For one or more embodiments, display advertising platform 300 may track booked contracts and may also track projected inventory so that newly received contract requests may be evaluated and decisions can bee made with regard to capabilities to fulfill the contract request. For an embodiment, display advertising platform 300 may store information for a number of impressions. For another embodiment, a number of impressions may be generated from mathematical models, as mentioned previously. The stored and/or generated impressions may be analyzed in conjunction with future demand information gleaned from previously booked contracts to determine available future inventory. However, the issue of determining available inventory may become relatively complex for systems serving relatively large numbers of impressions with potentially wide ranges of demographic attributes for the impressions.
Further, individual impressions may be able to satisfy, at least in part, more than one contract in many cases. For example, an impression may include attributes identifying a particular user as being male and also as residing in California. Thus this impression may be applied to contracts with a target attribute specifying that a particular ad be displayed to a number of Californians, or may also be applied to a contract with a target attribute that specifies that an ad be displayed to a number of males. For some embodiments, hundreds or thousands of different, overlapping targeting attributes in a high-dimensional targeting space may potentially need to be managed because different advertisers may specify different overlapping targeting combinations, and it may be advantageous to ensure that sufficient inventory exists to satisfy all previously accepted, and in some cases guaranteed, contracts.
For one relatively simple example, consider a case where display advertising platform 300 estimates an available inventory comprising a total of 2,000 impressions. For this example, assume that a previous contract has been received specifying that an ad be displayed to 1,000 males. Also for this example, a new contract request may be received specifying that another ad be displayed to 1,000 Californians. If the 2,000 impressions that make up the available inventory include 1,000 males and 1,000 Californians with no overlap between the males and the Californians, it may be determined that the display advertising platform is capable of satisfying the new contract request. However, if it is determined that the set of impressions representing the 1,000 Californians includes, for example, 500 males, the intersection between “males” and “Californians” may be determined to be 500, and there would be insufficient inventory to satisfy the previously booked contract and the new contract, because to satisfy the previously booked contract would mean to use 500 of the 1,000 impressions representing “Californians”. Thus, it may be seen from this simple example the importance of tracking and determining intersections between contracts to determine whether sufficient inventory exists to satisfy a contact request.
The estimates of future inventory may comprise estimates related to the number of impressions expected to be received over a period of time, and also may comprise information related to the expected demographic attributes for those impressions. The sampled impressions may be analyzed in conjunction with future demand information gleaned from booked contract information 203, that is, information related to previously booked contracts, to estimate the possible available future inventory. A capability determination 207 may be communicated to a computing platform or perhaps to a sales agent, for one or more embodiments.
Although not depicted in
For the example embodiment depicted in
For one or more embodiments, display advertising platform 300 may comprise a supply forecasting unit 330 that may determine what inventory may be available in the future. The types and amounts of impressions that may be available looking forward may be based, at least in part, on the types and amounts of impressions observed in the past. For-an embodiment, supply forecasting unit 330 may store a number of impressions for use in inventory availability determination operations, for example. For another embodiment, supply forecasting unit 330 may generate samples based, at least in part, on mathematical models. The models used may be selected based on observed, predicted, or desired impression attributes, and the scope of claimed subject matter is not limited to any particular mathematical model in generating impressions.
Admission control and pricing unit 310 may query supply forecasting unit 330 to obtain sets of samples of impressions from which determinations may be made regarding estimated inventory availability along with information from previously booked contracts, as describe above in connection with
For one or more embodiments, display advertising platform 300 may also include a guaranteed demand forecasting unit 340 that may forecast the demand for guaranteed inventory. In short, for one or more embodiments, guaranteed demand forecasting unit 340 seeks to estimate the amount of different contract types to expect looking forward. For one or more embodiments, whenever an advertiser or sales agent submits a contract request, the advertiser may specify guaranteed service of a specified number and type of impressions, or the advertiser may select perhaps lesser quality impressions, that is, impressions that might not be as specifically targeted as might otherwise be the case with guaranteed inventory, or the advertiser may select non-guaranteed amounts of impressions in exchange for lower pricing. If a display advertising platform is to accept contract requests for both guaranteed and non-guaranteed inventory, it may be advantageous to estimate the future demand for guaranteed inventory in order to help ensure that the more valuable, or high demand, inventory is not sold to quickly or at too low a cost. For example, guaranteed demand forecasting unit 340 may observe that in the past, a number of contracts specified guaranteed impressions identifying particular financial web sites, for example, and it may be expected that more contract requests may be expected that specify target attributes identifying the financial web pages. Admission control and pricing unit 310 may base its pricing decisions at least in part on the information from guaranteed demand forecasting unit 310.
Also for an embodiment, display advertising platform 300 may comprise non-guaranteed demand forecasting unit 350. For the present embodiment, non-guaranteed demand forecasting unit 350 may determine or estimate a future demand for non-guaranteed inventory. As mentioned previously, non-guaranteed inventory may be lower cost than guaranteed inventory, and may be of a lower quality in that the advertiser may not be able to as specifically target particular demographic categories or may not receive guarantees as to the amount of impressions to be serviced.
Also included in display advertising platform 300 for this embodiment is optimization unit 320. In general, optimization unit 320 may determine an approximate or estimated “optimal” plan of action based on one or more business goals and/or what the various units estimate will happen in the future. Optimization unit 320 may provide information to admission control and pricing unit 310 and to a plan distribution and statistics gathering unit 360, for one or more embodiments. Plan distribution and statistics gathering unit 360 may communicate optimization information to ad server 370, and may also track information communicated by ad server 370 such as, for example, impression information and information related to which ads have been displayed, for example.
As described above, admission control and pricing unit 310 may maintain a list of previously booked contracts. If a new contract request such as contract request 301 is received, a set of samples for the contract request may be obtained from supply forecasting unit 330. For the sample impressions, individual determinations may be made with regard to which of the previously booked contracts may be satisfied by the impression to estimate intersection sizes and to determine any overlap among the new contract request and the previously booked contracts. For merely one simple example, assume that a previous contract booked 1,000,000 impressions with the attribute “male”. Also for this example, assume that a new contract request comprises a target attribute of “Californian”. For an embodiment, 100 impressions of “Californians” may be sampled. In analyzing the samples, it may be determined, for this example, that the set of 100 Californians includes 52 males. If supply forecasting unit 330 reports a total estimated available inventory of 3,000,000 males, it may be estimated that the 3,000,000 impressions with the attribute “male” may include 1,560,000 impression that also share the attribute “Californian”. In this manner, the intersection sizes may be estimated, and admission control and pricing unit 310 may determine whether the new contract may be accommodated. Of course, the numbers and types of impressions described in this example are merely examples, and the scope of claimed subject matter is not limited in these respects.
As described above, for one or more embodiments, supply forecasting unit 330 may provide admission control and pricing unit 310 sets of sampled impressions for use in inventory estimation and/or determination operations. For various embodiments, any of a number of techniques may be used for the sampling of impressions. For one example, samples matching a specified target attribute may be chosen with equal probability. In this case, all of the samples have the same weight, which reflects the total number of available impressions. For another example, samples may be taken from a set of representative impressions, perhaps pre-computed or generated and stored, and the impressions may be given a weight. Samples matching the specified target attribute may be chosen from the set of representative impressions with a probability proportional to the weight of the impression. In this example, the samples again have the same weight, which may reflect the total number of available impressions. Alternatively, the samples may be chosen with equal probability, in which case the weight of the samples are proportional to the weight of the representative impression.
In an additional example embodiment, sample impressions matching the specified target attribute may be selected with a probability related to the number and/or importance of contracts for which the impression is eligible. The impressions may receive weightings that are inversely proportional to the expected number of times they are sampled. Similarly, for another example, other techniques for determining and quantifying the importance of an impression may be utilized, and as with the previous example, impressions matching the specified target attribute may be selected with a probability related to the importance of those impressions. Again, the sampled impressions may receive a weight that is inversely proportional to the expected number of time it is sampled. Of course, the techniques described herein for sampling impressions are merely examples, and the scope of claimed subject matter is not limited in these respects.
First device 502, second device 504 and third device 506, as shown in
Similarly, network 508, as shown in
It is recognized that all or part of the various devices and networks shown in system 500, and the processes and methods as further described herein, may be implemented using or otherwise include hardware, firmware, software, or any combination thereof.
Thus, by way of example but not limitation, second device 504 may include at least one processing unit 520 that is operatively coupled to a memory 522 through a bus 528.
Processing unit 520 is representative of one or more circuits configurable to perform at least a portion of a data computing procedure or process. By way of example but not limitation, processing unit 520 may include one or more processors, controllers, microprocessors, microcontrollers, application specific integrated circuits, digital signal processors, programmable logic devices, field programmable gate arrays, and the like, or any combination thereof.
Memory 522 is representative of any data storage mechanism. Memory 522 may include, for example, a primary memory 524 and/or a secondary memory 526. Primary memory 524 may include, for example, a random access memory, read only memory, etc. While illustrated in this example as being separate from processing unit 520, it should be understood that all or part of primary memory 524 may be provided within or otherwise co-located/coupled with processing unit 520.
Secondary memory 526 may include, for example, the same or similar type of memory as primary memory and/or one or more data storage devices or systems, such as, for example, a disk drive, an optical disc drive, a tape drive, a solid state memory drive, etc. In certain implementations, secondary memory 526 may be operatively receptive of, or otherwise configurable to couple to, a computer-readable medium 540. Computer-readable medium 540 may include, for example, any medium that can carry and/or make accessible data, code and/or instructions for one or more of the devices in system 500. Computer readable medium 540 may also be referred to as a storage medium.
Second device 504 may include, for example, a communication interface 530 that provides for or otherwise supports the operative coupling of second device 504 to at least network 508. By way of example but not limitation, communication interface 530 may include a network interface device or card, a modem, a router, a switch, a transceiver, and the like.
Second device 504 may include, for example, an input/output 532. Input/output 532 is representative of one or more devices or features that may be configurable to accept or otherwise introduce human and/or machine inputs, and/or one or more devices or features that may be configurable to deliver or otherwise provide for human and/or machine outputs. By way of example but not limitation, input/output device 532 may include an operatively configured display, speaker, keyboard, mouse, trackball, touch screen, data port, etc.
Embodiments claimed may include one or more apparatuses for performing the operations herein. These apparatuses may be specially constructed for the desired purposes, or they may comprise a general purpose computing platform selectively activated and/or reconfigured by a program stored in the device. The processes and/or displays presented herein are not inherently related to any particular computing platform and/or other apparatus. Various general purpose computing platforms may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized computing platform to perform the desired method. The desired structure for a variety of these computing platforms will appear from the descriptions herein.
Embodiments disclosed herein may be implemented in hardware, such as implemented to operate on a device or combination of devices, whereas another embodiment may be implemented in software. Likewise, an embodiment may be implemented in firmware, or as any combination of hardware, software, and/or firmware, for example.
Likewise, although the scope of claimed subject matter is not limited in this respect, one embodiment may comprise one or more articles, such as a storage medium or storage media. This storage media may have stored thereon instructions that if executed by a computing platform, such as a computer, a computing system, an electronic computing device, a cellular phone, a personal digital assistant, and/or other information handling system, for example, may result in an embodiment of a method in accordance with claimed subject matter being executed, for example. The terms “storage medium” and/or “storage media” as referred to herein relate to media capable of maintaining expressions which are perceivable by one or more machines. For example, a storage medium may comprise one or more storage devices for storing machine-readable instructions and/or information. Such storage devices may comprise any one of several media types including, but not limited to, any type of magnetic storage media, optical storage media, semiconductor storage media, disks, floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and/or programmable read-only memories (EEPROMs), flash memory, magnetic and/or optical cards, and/or any other type of media suitable for storing electronic instructions, and/or capable of being coupled to a system bus for a computing platform. However, these are merely examples of a storage medium, and the scope of claimed subject matter is not limited in this respect.
The term “instructions” as referred to herein relates to expressions which represent one or more logical operations. For example, instructions may be machine-readable by being interpretable by a machine for executing one or more operations on one or more data objects. However, this is merely an example of instructions, and the scope of claimed subject matter is not limited in this respect. In another example, instructions as referred to herein may relate to encoded commands which are executable by a processor having a command set that includes the encoded commands. Such an instruction may be encoded in the form of a machine language understood by the processor. For an embodiment, instructions may comprise run-time objects, such as, for example, Java and/or Javascript and/or PHP objects. However, these are merely examples of an instruction, and the scope of claimed subject matter is not limited in this respect.
It should also be understood that, although particular embodiments have just been described, the claimed subject matter is not limited in scope to a particular embodiment or implementation. For example, one embodiment may be in hardware, such as implemented to operate on a device or combination of devices, for example, whereas another embodiment may be in software. Likewise, an embodiment may be implemented in firmware, or as any combination of hardware, software, and/or firmware, for example. Such software and/or firmware may be expressed as machine-readable instructions which are executable by a processor. Likewise, although the claimed subject matter is not limited in scope in this respect, one embodiment may comprise one or more articles, such as a storage medium or storage media. This storage media, such as one or more CD-ROMs and/or disks, for example, may have stored thereon instructions, that when executed by a system, such as a computer system, computing platform, or other system, for example, may result in an embodiment of a method in accordance with the claimed subject matter being executed, such as one of the embodiments previously described, for example. As one potential example, a computing platform may include one or more processing units or processors, one or more input/output devices, such as a display, a keyboard and/or a mouse, and/or one or more memories, such as static random access memory, dynamic random access memory, flash memory, and/or a hard drive, although, again, the claimed subject matter is not limited in scope to this example.
In the preceding description, various aspects of claimed subject matter have been described. For purposes of explanation, specific numbers, systems and/or configurations were set forth to provide a thorough understanding of claimed subject matter. However, it should be apparent to one skilled in the art having the benefit of this disclosure that claimed subject matter may be practiced without the specific details. In other instances, well-known features were omitted and/or simplified so as not to obscure claimed subject matter. While certain features have been illustrated and/or described herein, many modifications, substitutions, changes and/or equivalents will now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and/or changes as fall within the true spirit of claimed subject matter.