WO2016046650A1 - Method of and server for processing a message to determine intent - Google Patents

Method of and server for processing a message to determine intent Download PDF

Info

Publication number
WO2016046650A1
WO2016046650A1 PCT/IB2015/050497 IB2015050497W WO2016046650A1 WO 2016046650 A1 WO2016046650 A1 WO 2016046650A1 IB 2015050497 W IB2015050497 W IB 2015050497W WO 2016046650 A1 WO2016046650 A1 WO 2016046650A1
Authority
WO
WIPO (PCT)
Prior art keywords
intent
targeted message
phrases
given
parameter
Prior art date
Application number
PCT/IB2015/050497
Other languages
French (fr)
Inventor
Sergey Yurievich ZELENKOV
Original Assignee
Yandex Europe Ag
Yandex Llc
Yandex 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 Yandex Europe Ag, Yandex Llc, Yandex Inc. filed Critical Yandex Europe Ag
Publication of WO2016046650A1 publication Critical patent/WO2016046650A1/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
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • G06Q30/0256User search

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Machine Translation (AREA)

Abstract

There is disclosed a method of processing a targeted message destined for a user of an electronic device, the electronic device being coupled via a communication network to a server. The method being can be executed on the server. The method comprises: appreciating an intent parameter associated with the targeted message, the intent parameter having been determined by 5 the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message; receiving a targeted message request, the targeted message request being associated with a request intent parameter; responsive to the intent parameter matching the request intent 10 parameter, selecting the targeted message for delivery to the electronic device; causing the electronic device to display to the user the targeted message.

Description

METHOD OF AND SERVER FOR PROCESSING A MESSAGE TO DETERMINE
INTENT
CROSS-REFERENCE
[01] The present application claims convention priority to Russian Patent Application No. 2014138609, filed September 25, 2014, entitled "METHOD OF AND SERVER FOR PROCESSING A MESSAGE TO DETERMINE INTENT" which is incorporated by reference herein in its entirety.
FIELD
[02] The present technology relates to search engines in general, and to a method of and a server for processing a message to determine intent.
BACKGROUND
[03] Various global or local communications networks (the Internet, the World Wide Web, local area networks and the like) offer a user a vast amount of information. The information includes a multitude of contextual topics, such as but not limited to, news and current affairs, maps, company information, financial information and resources, traffic information, games and entertainment related information. Users use a variety of client devices (desktop, laptop, notebook, smartphone, tablets and the like) to have access to rich content (like images, audio, video, animation, and other multimedia content from such networks). [04] Generally speaking, a given user can access a resource on the communications network by two principle means. The given user can access a particular resource directly, either by typing an address of the resource (typically an URL or Universal Resource Locator, such as www.webpage.coin) or by clicking a link in an e-mail or in another web resource. Alternatively, the given user may conduct a search using a search engine to locate a resource of interest. The latter is particularly suitable in those circumstances, where the given user knows a topic of interest, but does not know the exact address of the resource she is interested in. [05] There are numerous search engines available to the user. Some of them are considered to be general purpose search engines (such as Yandex™, Google™, Yahoo™ and the like). Others are considered to be vertical search engines - i.e. search engines dedicated to a particular topic of search - such as Momondo™ search engine dedicated to searching flights. [06] Irrespective of which search engine is used, the search engine is generally configured to receive a search query from a user, to perform a search and to return a ranked search engine results page (SERP) to the user. Now, generally, the search engines do not charge users for performing searches. As most search engines are commercial enterprises - they need to generate revenue streams to support their commercial operations. Most search engines generate revenue through advertising - i.e. a placement of ads within the SERP or providing ads to other entities (such as web sites) for paid placements. Naturally, the search engines strive to make the ads as relevant to the user as possible to increase the chances that the user will actually click on the ads and the search engine will actually get paid by the provider of the ad (pay-per-click concept). [07] For example, if the user is looking for to buy a kitten and, as such, the user has submitted a search query "purchase kittens in Moscow", the user can be presented with an ad of a veterinary clinic in Moscow region. As the user is inherently interested in kitten and may require a vet, the ad associated with the veterinary clinic may have a higher chance of being clicked. [08] This is what is known in the art as "targeted advertising" - selecting a particular targeted message based on explicit or implicit user interests ad presenting the particular targeted message within the SERP are known.
[09] US patent application 2012/0059708 teaches a method that includes constructing an intent map for a plurality of products, the intent map comprising intent topics and each intent topic comprising intents, and then deriving a plurality of keywords from the intent map based on keyword templates.
[10] US patent application 2010/161411 discloses a system and method for generating display advertisements from search based keyword advertisements. The system includes a keyword generation unit for generating one or more advertising keywords from a received category profile defining a classification hierarchy, for use in selecting one or more candidate advertisement messages from a plurality of advertisement messages, an advertisement selection unit for receiving one or more candidate advertisement messages comprising a text message selected from the plurality of advertisement messages and selecting one advertisement message from the one or more received candidate advertisement messages based upon one or more characteristics associated with the received one or more candidate advertisement messages and a creative advertisement assembly unit for generating an advertisement image based on the text advertisement of the selected one advertisement message for display in network based content.
[11] US patent application 2011/0295688 discloses methods and computer-readable media for defining user intent so that user intent can be determined and advertisements and other information can be provided to a user based on that user's intent. A topical expression is identified and is associated with attributes and actions. Actions indicate steps that can be performed to achieve a task associated with the topical expression. An intent structure is then generated. The intent structure illustrates a relationship between the identified topical expression and other topical expressions. User data may then be received and mapped to the intent structures to determine present and future user intent.
[12] US patent application 2008/0114607 teaches system and method for generating advertisements based on search intent. The system includes a query engine, and an advertisement engine. The query engine receives a query from the user. The query engine analyzes the query to determine a query intent that is matched to a predetermined domain. A translated query is generated including the domain type. Once a domain is selected, the query may be further analyzed to determine generic domain information. The domain and associated information may then be matched to a list of advertisements. The advertisement may be assigned an ad match score based on a correlation between the query information and various listing information provided in the advertisement.
SUMMARY
[13] It is an object of the present technology to ameliorate at least some of the inconveniences present in the prior art.
[14] According to a first broad aspect of the present technology, there is provided a method of processing a targeted message destined for a user of an electronic device, the electronic device being coupled via a communication network to a server. The method is executable on the server. The method comprises: appreciating an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message; receiving a targeted message request, the targeted message request being associated with a request intent parameter; responsive to the intent parameter matching the request intent parameter, selecting the targeted message for delivery to the electronic device; causing the electronic device to display to the user the targeted message.
[15] In some implementations of the method, the method further comprises determining the intent parameter associated with the targeted message at a point in time prior to the appreciating.
[16] In some implementations of the method, the step of determining comprises parsing the text content of the targeted message.
[17] In some implementations of the method, the step of parsing comprises breaking up text content into a plurality of phrases.
[18] In some implementations of the method, the step of parsing comprises removing a given one of the plurality of phrases, the given one being determined to be non-meaningful. [19] In some implementations of the method, the step of determining further comprises responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter.
[20] In some implementations of the method, the step of determining further comprises retrieving a plurality of key words associated with the targeted message; comparing each of the plurality of phrases to each of the plurality of key words; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter.
[21] In some implementations of the method, the step of determining comprises comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database; responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter.
[22] In some implementations of the method, the step of determining comprises comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter.
[23] In some implementations of the method, the step of determining comprises selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases.
[24] In some implementations of the method, the step of determining comprises a./ responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter; b./ retrieving a plurality of key words associated with the targeted message, comparing each of the plurality of phrases to each of the plurality of key words and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter; c./ comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database and responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter; d./ comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter; e./ selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a predetermined sequence and a random place within the plurality of phrases; wherein b./ is executed responsive to a./ not rendering the intent parameter; wherein c./ is executed responsive to b./ not rendering the intent parameter; wherein d./ is executed responsive to c./ not rendering the intent parameter; and wherein e./ is executed responsive to d./ not rendering the intent parameter. [25] In some implementations of the method, the step of receiving the targeted message request comprises receiving the targeted message request associated with a search query submitted by the user of the electronic device.
[26] In some implementations of the method, the method further comprising comparing the intent parameter to the request intent parameter.
[27] In some implementations of the method, the request intent parameter comprises the search query.
[28] In some implementations of the method, the request intent parameter comprises a normalized version of the search query. [29] In some implementations of the method, the step receiving the targeted message request comprises receiving the targeted message request associated with the user of the electronic device accessing a web site.
[30] In some implementations of the method, the method further comprises comparing the intent parameter to the request intent parameter. [31] In some implementations of the method, the request intent parameter is based on a browsing history associated with the user.
[32] According to another broad aspect of the present technology, there is provided a method of processing a new targeted message. The method can be executable at a server. The method comprises: receiving, via a communication network, the new targeted message; appreciating a text content associated with the new targeted message; performing a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message; accessing a database storing a plurality of targeted messages and an associated plurality of intent parameters; comparing the new intent parameter with the plurality of intent parameters; responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieving a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters; using the CTR parameter, determining a predicted CTR parameter for the new targeted message.
[33] According to another broad aspect of the present technology, there is provided a server. The server comprises: a communication interface for communication with an electronic device via a communication network, a processor operationally connected with the communication interface, the processor configured to process a targeted message destined for a user of an electronic device, the processor being further configures to: appreciate an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message; receive a targeted message request, the targeted message request being associated with a request intent parameter; responsive to the intent parameter matching the request intent parameter, select the targeted message for delivery to the electronic device; cause the electronic device to display to the user the targeted message.
[34] In some implementations of the sever, the processor is further operable to determine the intent parameter associated with the targeted message at a point in time prior to the appreciating. [35] In some implementations of the sever, to determine, the processor is further operable to: parse the text content of the targeted message.
[36] In some implementations of the sever, to process the processor is further operable to: break up text content into a plurality of phrases.
[37] In some implementations of the sever, to parse, the processor is further operable to: remove a given one of the plurality of phrases, the given one being determined to be non- meaningful.
[38] In some implementations of the sever, to determine the processor is further operable to: responsive to the plurality of phrases having a single phrase, select the single phrase as the intent parameter. [39] In some implementations of the sever, to determine, the processor is further operable to: retrieve a plurality of key words associated with the targeted message; compare each of the plurality of phrases to each of the plurality of key words; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, select the given one of the plurality of key words as the intent parameter. [40] In some implementations of the sever, to determine, the processor is further operable to: compare each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database; responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, select the given one of the one or more intent phrases as the intent parameter.
[41] In some implementations of the sever, to determine, the processor is further operable to: compare each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, select the given one of the plurality of previous intent parameters as the intent parameter.
[42] In some implementations of the sever, to determine, the processor is further operable to: select a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases. [43] In some implementations of the sever, to determine, the processor is further operable to: a./ responsive to the plurality of phrases having a single phrase, select the single phrase as the intent parameter; b./ retrieve a plurality of key words associated with the targeted message, comparing each of the plurality of phrases to each of the plurality of key words and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, select the given one of the plurality of key words as the intent parameter; c./ compare each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database and responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, select the given one of the one or more intent phrases as the intent parameter; d./ compare each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, select the given one of the plurality of previous intent parameters as the intent parameter; e./ select a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases; wherein b./ is executed responsive to a./ not rendering the intent parameter; wherein c./ is executed responsive to b./ not rendering the intent parameter; wherein d./ is executed responsive to c./ not rendering the intent parameter; and wherein e./ is executed responsive to d./ not rendering the intent parameter.
[44] In some implementations of the sever, to receive the targeted message request, the processor is configured to receive the targeted message request associated with a search query submitted by the user of the electronic device.
[45] In some implementations of the sever, the processor is operable to compare the intent parameter to the request intent parameter.
[46] In some implementations of the sever, the request intent parameter comprises the search query. [47] In some implementations of the sever, the request intent parameter comprises a normalized version of the search query.
[48] In some implementations of the sever, to receive the targeted message request, the processor is configured to receive the targeted message request associated with the user of the electronic device accessing a web site. [49] In some implementations of the sever, the processor is further operable to compare the intent parameter to the request intent parameter.
[50] In some implementations of the sever, the request intent parameter is based on a browsing history associated with the user.
[51] According to another broad aspect of the present technology, there is provided a server. The server comprises: a communication interface for communication with an electronic device via a communication network, a processor operationally connected with the communication interface, the processor configured to process a new targeted message, the processor being further configures to: receive, via the communication interface, the new targeted message; appreciate a text content associated with the new targeted message; perform a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message; access a database storing a plurality of targeted messages and an associated plurality of intent parameters; compare the new intent parameter with the plurality of intent parameters; responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieve a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters; using the CTR parameter, determine a predicted CTR parameter for the new targeted message.
[52] In the context of the present specification, unless expressly provided otherwise, a "server" is a computer program that is running on appropriate hardware and is capable of receiving requests (e.g. from electronic devices) over a network, and carrying out those requests, or causing those requests to be carried out. The hardware may be one physical computer or one physical computer system, but neither is required to be the case with respect to the present technology. In the present context, the use of the expression a "server" is not intended to mean that every task (e.g. received instructions or requests) or any particular task will have been received, carried out, or caused to be carried out, by the same server (i.e. the same software and/or hardware); it is intended to mean that any number of software elements or hardware devices may be involved in receiving/sending, carrying out or causing to be carried out any task or request, or the consequences of any task or request; and all of this software and hardware may be one server or multiple servers, both of which are included within the expression "at least one server".
[53] In the context of the present specification, unless expressly provided otherwise, "electronic device" is any computer hardware that is capable of running software appropriate to the relevant task at hand. Thus, some (non-limiting) examples of electronic devices include personal computers (desktops, laptops, netbooks, etc.), smartphones, and tablets, as well as network equipment such as routers, switches, and gateways. It should be noted that a device acting as a electronic device in the present context is not precluded from acting as a server to other electronic devices. The use of the expression "a electronic device" does not preclude multiple electronic devices being used in receiving/sending, carrying out or causing to be carried out any task or request, or the consequences of any task or request, or steps of any method described herein.
[54] In the context of the present specification, unless expressly provided otherwise, a "database" is any structured collection of data, irrespective of its particular structure, the database management software, or the computer hardware on which the data is stored, implemented or otherwise rendered available for use. A database may reside on the same hardware as the process that stores or makes use of the information stored in the database or it may reside on separate hardware, such as a dedicated server or plurality of servers. [55] In the context of the present specification, unless expressly provided otherwise, the expression "information" includes information of any nature or kind whatsoever capable of being stored in a database. Thus information includes, but is not limited to audiovisual works (images, movies, sound records, presentations etc.), data (location data, numerical data, etc.), text (opinions, comments, questions, messages, etc.), documents, spreadsheets, etc.
[56] In the context of the present specification, unless expressly provided otherwise, the expression "relevance factor of the search query result set" shall mean the likelihood that the user submitting the search query was intending to see data maintained within the search query result set. [57] In the context of the present specification, unless expressly provided otherwise, the expression "component" is meant to include software (appropriate to a particular hardware context) that is both necessary and sufficient to achieve the specific function(s) being referenced.
[58] In the context of the present specification, unless expressly provided otherwise, the expression a "search query result set" is a listing of results returned by a search engine, which may encompass one or more general or specialized search modules, in response to a search query. Search query result set may contain a listing of results returned by a web search module, or by one or more vertical search modules, or by combination of results returned by web module and one or more vertical modules. The search query result set may also contain no results.
[59] In the context of the present specification, unless expressly provided otherwise, the expression a "search engine result page" is a listing of results to be displayed to a client on an electronic device, the listing generated by combining a search query result set with targeted messages. [60] In the context of the present specification, unless expressly provided otherwise, the expression "computer usable information storage medium" is intended to include media of any nature and kind whatsoever, including RAM, ROM, disks (CD-ROMs, DVDs, floppy disks, hard drivers, etc.), USB keys, solid state-drives, tape drives, etc.
[61] In the context of the present specification, unless expressly provided otherwise, the words "first", "second", "third", etc. have been used as adjectives only for the purpose of allowing for distinction between the nouns that they modify from one another, and not for the purpose of describing any particular relationship between those nouns. Thus, for example, it should be understood that, the use of the terms "first server" and "third server" is not intended to imply any particular order, type, chronology, hierarchy or ranking (for example) of/between the server, nor is their use (by itself) intended imply that any "second server" must necessarily exist in any given situation. Further, as is discussed herein in other contexts, reference to a "first" element and a "second" element does not preclude the two elements from being the same actual real-world element. Thus, for example, in some instances, a "first" server and a "second" server may be the same software and/or hardware, in other cases they may be different software and/or hardware.
[62] Implementations of the present technology each have at least one of the above- mentioned object and/or aspects, but do not necessarily have all of them. It should be understood that some aspects of the present technology that have resulted from attempting to attain the above-mentioned object may not satisfy this object and/or may satisfy other objects not specifically recited herein.
[63] Additional and/or alternative features, aspects and advantages of implementations of the present technology will become apparent from the following description, the accompanying drawings and the appended claims.
BRIEF DESCRIPTION OF THE DRAWINGS [64] For a better understanding of the present technology, as well as other aspects and further features thereof, reference is made to the following description which is to be used in conjunction with the accompanying drawings, where:
[65] Figure 1 depicts a diagram of a system 100 being implemented in accordance with non-limiting embodiments of the present technology. [66] Figure 2 depicts schematic examples of a first targeted message 152, a second targeted message 154, a third targeted message 156 and a fourth targeted message 158 as they may be rendered on a Search Engine Results Page (SERP) presented to a user executing a search using a search application 104 on an electronic device 102 of the system 100 of Figure 1. [67] Figure 3 depicts a flow chart of a non-limiting embodiment of a method 300, the method 300 being executed by a targeted message server 140 of the system 100 of Figure 1.
[68] Figure 4 depicts a non-limiting embodiment of a flow chart of a method 400, the method 400 being executed by the targeted message server 140 of the system 100 of Figure 1.
DETAILED DESCRIPTION
[69] Referring to Figure 1, there has been shown a diagram of a system 100. It is to be expressly understood that the system 100 is merely one possible implementation of the present technology. Thus, the description thereof that follows is intended to be only a description of illustrative examples of the present technology. This description is not intended to define the scope or set forth the bounds of the present technology. In some cases, what are believed to be helpful examples of modifications to computer system 100 may also be set forth below.
[70] This is done merely as an aid to understanding, and, again, not to define the scope or set forth the bounds of the present technology. These modifications are not an exhaustive list, and, as a person skilled in the art would understand, other modifications are likely possible. Further, where this has not been done (i.e. where no examples of modifications have been set forth), it should not be interpreted that no modifications are possible and/or that what is described is the sole manner of implementing that element of the present technology. As a person skilled in the art would understand, this is likely not the case. In addition it is to be understood that the system 100 may provide in certain instances a simple implementation of the present technology, and that where such is the case they have been presented in this manner as an aid to understanding. As persons skilled in the art would understand, various implementations of the present technology may be of a greater complexity. [71] Figure 1 illustrates the system 100 in accordance with one implementation of the present technology. The system 100 comprises an electronic device 102. The electronic device 102 is typically associated with a user (not depicted) and, as such, can sometimes be referred to as a "client device". It should be noted that the fact that the electronic device 102 is associated with the user does not need to suggest or imply any mode of operation - such as a need to log in, a need to be registered or the like. [72] The implementation of the electronic device 102 is not particularly limited, but as an example, the electronic device 102 may be implemented as a personal computer (desktops, laptops, netbooks, etc.), a wireless electronic device (a cell phone, a smartphone, a tablet and the like), as well as network equipment (a router, a switch, or a gateway). The general implementation of the electronic device 102 is known in the art and, as such, will not be described here at much length. Suffice it to say that the electronic device 102 comprises a user input interface (such as a keyboard, a mouse, a touch pad, a touch screen and the like) for receiving user inputs; a user output interface (such as a screen, a touch screen, a printer and the like) for providing visual or audible outputs to the user; a network communication interface (such as a modem, a network card and the like) for two-way communication over a communications network 112; and a processor coupled to the user input interface, the user output interface and the network communication interface, the processor being configured to execute various routines, including those described herein below. To that end the processor may store or have access to computer readable commands which commands, when executed, cause the processor to execute the various routines described herein.
[73] The electronic device 102 comprises hardware and/or software and/or firmware (or a combination thereof), to execute a search application 104. Generally speaking, the purpose of the search application 104 is to enable the user to execute a search. How the search application 104 is implemented is not particularly limited. One example of the search application 104 may be embodied in a user accessing a web site associated with a search engine to access the search application 104 using a web browser. For example, the search application can be accessed by typing in an URL associated with Yandex search engine at www.yandex.rLi into the web browser. It should be expressly understood that the search application 104 can be accessed using any other commercially available or proprietary search engine.
[74] In alternative non-limiting embodiments of the present technology, the search application 104 may be implemented as a browser application on a portable device (such as a wireless communication device). For example (but not limited) to those implementations, where the electronic device 102 is implemented as a portable device, such as for example, Samsung™ Galaxy™ SIII, the electronic device may be executing a Yandex browser application. It should be expressly understood that any other commercially available or proprietary browser application can be used for implementing non-limiting embodiments of the present technology.
[75] Generally, speaking, the search application 104 comprises a web browser interface 106 and an omnibox 108. The general purpose of the omnibox 108 is to enable the user 140 to enter her query or a "search string" or an URL associated with the web resource she is desirous of visiting. The general purpose of the web browser interface 106 is to provide search results that are responsive to the user query entered into the omnibox 108 or to display the web resource which URL is entered into the omnibox 108. How the user query is processed and how the search results are presented will be described in detail herein below. [76] Furthermore, the system 100 comprises the above-mentioned communications network 112. In some non-limiting embodiments of the present technology, the communications network 112 can be implemented as the Internet. In other embodiments of the present technology, the communications network 112 can be implemented differently, such as any wide-area communications network, local-area communications network, a private communications network and the like.
[77] The system 100 further comprises a server 114 coupled to the communications network 112 via a communication link (not separately numbered). The server 114 can be implemented as a conventional computer server. In an example of an embodiment of the present technology, the server 114 can be implemented as a Dell™ PowerEdge™ Server running the Microsoft™ Windows Server™ operating system. Needless to say, the server 114 can be implemented in any other suitable hardware and/or software and/or firmware or a combination thereof. In the depicted non-limiting embodiment of present technology, the server 114 is a single server. In alternative non-limiting embodiments of the present technology, the functionality of the server 114 may be distributed and may be implemented via multiple servers.
[78] The implementation of the server 114 is well known. However, briefly speaking, the server 114 comprises a communication interface (not depicted) structured and configured to communicate with various entities (such as the electronic device 102, for example and other devices potentially coupled to the communications network 112) via the communications network 112. The server 114 further comprises at least one computer processor (not depicted) operationally connected with the communication interface and structured and configured to execute various processes to be described herein.
[79] In some embodiments, the server 114 can be operated by the same entity that has provided the afore-described search application 104. In alternative embodiments, the server 114 can be operated by an entity different from the one who has provided the aforementioned search application 104.
[80] The server 114 is communicatively coupled (or otherwise has access) to a search cluster 118. As such, the server 114 can be sometimes referred to as a "search server" or a "search front-end server". Even though the search cluster 118 is depicted as a separate server from the server 114, in alternative embodiments, the functionality of the search cluster 118 can be implemented by the server 114. In alternative non-limiting embodiments of the present technology, the functionality of the search cluster 118 may be distributed and may be implemented via multiple servers.
[81] The general purpose of the search cluster 118 is to perform searches in response to the user queries inputted via the omnibox 108 and to output search results to be presented to the user using the web browser interface 106. What follows is a description of one non-limiting embodiment of the implementation for the search cluster 118. However, it should be understood that there is a number of alternative non-limiting implementations of the search cluster 118 possible. It should be also expressly understood that in order to simplify the description presented herein below, the configuration of the search cluster 118 has been greatly simplified. It is believed that those skilled in the art will be able to appreciate implementational details for the search cluster 118 and for components thereof that may have been omitted for the purposes of simplification of the description.
[82] Generally speaking the purpose of the search cluster 118 is to (i) conduct searches (details will be explained herein below); (ii) execute analysis of search results and perform ranking of search results; (iii) group search results and compile the search result page (SERP) to be outputted to the electronic device 102 as the SERP. How the search cluster 118 is configured to execute searches is not particularly limited. Those skilled in the art will appreciate several ways and means to execute the search using the search cluster 118 and as such, several structural components of the search cluster 118 will only be described at a high level. [83] In some embodiments of the present technology, the search cluster 118 can execute several searches, including but not limited to, a general search and a vertical search. Thus, in some non-limiting embodiments of the present technology, the search cluster 118 comprises (or, otherwise, has access to) a web search module 120 and a vertical search module 122. The web search module 120 is configured to perform general web searches, as is known to those of skill in the art. The vertical search module 122 is configured to execute one or more vertical searches, such as an images vertical search, a music vertical search, a video vertical search, a news vertical search, a maps vertical search and the like.
[84] In some non-limiting embodiments of the present technology, the search cluster 118 can execute what is known as a multi-level search. These non-limiting embodiments can be implemented, for example, to increase the speed of the search and to obtain more relevant search results. Briefly, the search cluster 118 can execute some or all of a top level meta search, a middle level meta search and a bottom level search of the indexed web resources, an indication of which is stored in an index (not depicted) associated with the web search module 120. To that end, the search cluster 118 is also configured to, as is known to those of skill in the art, execute a crawler algorithm - which algorithm causes the search cluster 118 to "crawl" the Internet and index visited web sites into one or more of the index databases (not depicted).
[85] In parallel or in sequence with the general web search executed by the web search module 120, the vertical search module 122 is configured to perform one or more vertical searches within the respective vertical databases (not depicted). For the purposes of the description presented herein, the term "vertical" (as in vertical search) is meant to connote a search performed on a subset of a larger set of data, the subset having been grouped pursuant to an attribute of data. For example, to the extent that the one of the vertical searches performed by the vertical search module 122 is an image service, the vertical search module 122 can be the to search a subset (i.e. images) of the set of data (i.e. all the data potentially available for searching), the subset of data being stored in the database (not depicted) associated with the vertical search module 122. Needless to say that even though a single one of the vertical search module 122 is depicted in Figure 1, the search cluster 118 can implement multiple instances of the vertical search modules 122, each of the vertical search modules 122 being responsible for executing a respective vertical search. [86] Now, once the web search module 120 and the vertical search module 122 return their respective search results, the search cluster 118 is configured to generate a ranked search results list, including the results from the web search module 120 and the vertical search module 122. Multiple algorithms for ranking the search results are known and can be implemented by the search cluster 118.
[87] Just as an example and not as a limitation, some of the known techniques for ranking search results by relevancy to the user-submitted search query are based on some or all of: (i) how popular a given search query or a response thereto is in searches conducted by either the web search module 120 or the vertical search module 122; (ii) how many results have been returned by either the web search module 120 or the vertical search module 122; (iii) whether the search query contains any determinative terms (such as "images", "movies", "weather" or the like), (iv) how often a particular search query is typically used with determinative terms by other users; and (v) how often other uses performing a similar search have selected a particular resource or a particular vertical search results when results were presented using the SERP.
[88] Within this description, the term "determinative term" shall mean a word or a string of words indicative of the fact that a given search result is more likely to have the most relevant response to the user search query. For example, if the search query contains the term "images" it can be determined, by the search cluster 118 that the vertical search module 122 executing the images vertical search is likely to be the service that contains the most relevant results to the user query.
[89] Needless to say, only a sub set of these, or these combined to others or any combination of other factors may be taken into account when raking the search results for relevancy. [90] The search cluster 118 is then configured to transmit ranked search results to the server 114. The server 114 can then transmit, via the communications network 112, the ranked search results to the electronic device 102 for display to the user as the SERP. Typically, the server 114 can be configured to generate a JavaScript Object Notation (JSON) message, the JSON message containing information that is instrumental for causing the electronic device 102 to display the SERP containing the ranked search results produced by the search cluster 118. Needless to say the message can be in formats other than JSON, such as Extensible Markup Language (XML) format and the like.
[91] Within the architecture of the system 100, there is also provided a targeted message server 140. Akin to the server 114, the targeted message server 140 can be implemented as a conventional computer server. In an example of an embodiment of the present technology, the targeted message server 140 can be implemented as a Dell™ PowerEdge™ Server running the Microsoft™ Windows Server™ operating system. Needless to say, the targeted message server 140 can be implemented in any other suitable hardware and/or software and/or firmware or a combination thereof. In the depicted non-limiting embodiment of present technology, the targeted message server 140 is a single server. In alternative non- limiting embodiments of the present technology, the functionality of the targeted message server 140 may be distributed and may be implemented via multiple servers.
[92] The implementation of the targeted message server 140 is well known. However, briefly speaking, the targeted message server 140 comprises a communication interface (not depicted) structured and configured to communicate with various entities (such as the server 114 and other devices potentially coupled to the communications network 112) via the communications network 112. The targeted message server 140 further comprises at least one computer processor (not depicted) operationally connected with the communication interface and structured and configured to execute various processes to be described herein. [93] Even though the server 114 and the targeted message server 140 have been described as implemented using the same hardware and software, this does not need to be so in every embodiment of the present technology. As such, the targeted message server 140 can be implemented in different hardware / software than the server 114. On the other end of the spectrum of embodiments, the server 114 and the targeted message server 140 can be implemented in a single computing apparatus.
[94] Also provided within the illustration of Figure 1, is a first source 130, a second source 132 and a third source 134, all coupled to the communications network 112. The first source 130, the second source 132 and the third source 134 are representative of a plurality of sources of targeted message potentially interested in placing targeted messages with the ad service provided by the server 114 and the targeted message server 140. [95] The targeted message server 140 has access to a targeted messages database 142. The targeted message database 142 stores a plurality of targeted messages from several respective sources (i.e. one of the first source 130, the second source 132 and the third source 134), including a first targeted message 152, a second targeted message 154, a third targeted message 156 and a fourth targeted message 158.
[96] The first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 have been uploaded to the targeted message database 142 by their respective sources (i.e. one of the first source 130, the second source 132 and the third source 134) by using an ad service provided by the targeted message server 140.
[97] In some embodiments, the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 have been created by operators of their respective sources (i.e. one of the first source 130, the second source 132 and the third source 134). While in other embodiments, the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 have been created by operators of the targeted message server 140 based on instructions (and/or information) provided from respective sources of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 (i.e. one of the first source 130, the second source 132 and the third source 134). [98] With reference to Figure 2, there are depicted schematic examples of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 as they may be rendered on the SERP presented to the user executing a search using the search application 104 on the electronic device 102. It should be understood, that the illustration of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 is provided as an example only and that in alternative embodiments the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 can be rendered differently. For example, it is possible that one or more of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 can have images, animation, hyperlinks and the like. [99] Let it be assumed that the first source 130 is associated with a seller of hardware fasteners, such as nut and bolts. To that end, the first source 130 has provisioned the first targeted message 152 to read: "Bolts and nuts, Bolts and nuts in bulk. Large assortment. Free shipping, Call now for specials and promotions.". [100] The second source 132 is associated with a spare part supplier for Mitsubishi® cars. To that end, the second source 132 has provisioned the second targeted message 154 to read: "Mitsubishi MZ312823. Muffler for Mitsubishi MZ312823. 2-year warranty. Direct from distributor".
[101] Finally, the third source 134 is associated with a supplier of industrial equipment. To that end, the third source 134 has provisioned the third targeted message 156 and the fourth targeted message 158. The third targeted message 156 reads: "Forklifts. New and secondhand. Other industrial equipment available. We have more than 500 items in stock. Call now!" and the fourth targeted message 158 reads: "Bulk material handlers. Leading brand stackers. Large inventory. Immediate delivery. Call us now!". [102] Using the examples of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158, each of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 can contain several portions.
[103] For example, using the example of the first targeted message 152, each of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 can comprise a title portion 202 and a body portion 204. In some embodiments, the title portion 202 and the body portion 204 are separated by a "period" and a "space". In alternative embodiments, the title portion 202 and the body portion 204 can be separated by a different character, such a return character, a special character (such as "< >") and the like.
[104] The body portion 204 can contain text representative of the targeted message to be delivered to the user. The text contained within the body portion 204 can have semantically linked portions. For example, the body portion 204 can contain a brand and a model associated with the goods being promoted with the associated one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158. Just as an illustration, let's say the text portion contains "Sony TV kdl- 42W817b". Within this example, "SONY" is the brand, "TV" is an identifier of the goods and "kdl-42W817b" is the model. As will be described in greater detail herein below, the semantically linked portions of the text within the body portion 204 can be used to create model intent parameters. [105] In some embodiments of the present technology, the body portion 204 may contain several phrases that have vague meaning, broad meaning, be non-descriptive of the actual product the targeted message is associated with or that are otherwise non-contributing to the process of determining the intent parameter. Some examples of such non-meaningful phrases include: "e-money", "fully assembled", "purchase in Moscow", "best prices", "super cheap", "only available here" and the like. In some embodiments, a given body portion 204 will end with an "action verb" to entice the user to take an action. Such action verbs may include: "click!", "call!", "purchase now" and the like. In some embodiments of the present technology, all these action words can be considered to be non-meaningful phrases.
[106] In some embodiments of the present technology, each (or at least some) of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 is associated with a respective list of keywords, each respective list of keywords containing one or more keywords. In some embodiments of the present technology, the respective list of key words is provisioned by the associated one of the first source 130, the second source 132, the third source 134 and the fourth source 136. In alternative embodiments, the respective list of key words is provisioned by the targeted message server 140.
[107] In some other embodiments of the present technology, the list of key words is stored by the targeted message server 140 in association with respective one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158. In some other embodiments of the present technology, the list of key words is stored by the targeted message server 140 as part of meta data of the respective one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158.
[108] Generally speaking, the purpose of the list of key words is to identify which ones of the search terms potentially entered by users, such as the user of the electronic device 102 and the search application 104, a given one of the targeted messages should be selected for displaying for. Alternatively, the purpose of the key words may be to identify which type of web sites the given one of the targeted messages is to be displayed on.
[109] For example, the above provided example of the first targeted message 152 can have the following list of key words: "bolts and nuts", "nuts for bolts" and the like. This means if a given user submits a search query "purchase nuts and bolts", the first targeted message 152 will be selected as a candidate for displaying on the SERP presented to the given user in response to her query. The actual selection of the candidate from a plurality of candidates is executed by use of known techniques, such as Click- Through Rate (or CTR, for short) parameter and the like. [110] In some embodiments of the present technology, in order to select one or more of the targeted messages (the targeted message server 140 for placing the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) for placement onto SERPs provided by the server 114 or for placement on other web sites associated with the ad service provided by the targeted message server 140, the targeted message server 140 is configured to execute a targeted message selection routine.
[I l l] In some embodiments of the present technology, as part of the targeted message selection routine, the targeted message server 140 is configured to assign, to each of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 (and other targeted messages potentially maintained within targeted message database 142) a click- through rate (CTR) estimation. Generally speaking, the click-through rate (CTR) of a given targeted message is defined as the number of clicks on the given targeted message divided by the number of times the given targeted message is shown to the user (impressions) on either a SERP or another web site media, expressed as a percentage. [112] For example, if a given targeted message is delivered 100 times (100 impressions) and receives one click, then the click-through rate for the given targeted message would be 1%.
[113] The purpose of click-through rates is to capture customers' initial response to the given targeted message. Most commercial targeted messages placed on the SERP or another web site media are designed to elicit some sort of action from the user viewing the given targeted message - whether it be to buy a book, book an airline ticket, watch a music video, or apply for a new credit card. [114] Marketers (both people placing the given ad and people administering the on-line targeted message system) want to know the reaction of the users to the given targeted message. The click-through rate is used as a proxy for the user reaction to the given targeted message. The click-through rate measures the proportion of visitors who initiated action with respect to the given targeted message that redirected them to another page where they might purchase an item or learn more about a product or service. The higher the click-through rate for the given targeted message, the more successful it can be said to be. Continuing with our example of the given targeted message with 100 impressions, if 50 people clicked on it and executed the action that the given targeted message was meant to solicit, the CTR would be 50% - denoting a much higher success rate than the above 1 % example.
[115] Above numbers were provided purely for illustration. Nowadays, it is reported, that click-through rates for banner ads (being an example of a targeted message) average between 0.2% and 0.3%. In most cases, a 2% click-through rate would be considered very successful. Since advertisers typically pay more for a high click-through rate, getting many click- throughs with few purchases is undesirable to advertisers. Similarly, by selecting an appropriate advertising site with high affinity (e.g., a on-line movie magazine for placement of a movie advertisement), the same given targeted message can achieve a substantially higher CTR.
[116] Naturally, each of the sources of the respective first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 may have entered into an agreement with the targeted message server 140 for placing the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158 onto SERPs provided by the server 114 or for placement on other web sites associated with the ad service provided by the targeted message server 140. [117] In some embodiments of the present technology, the targeted message server 140 is configured to maintain a model phrase database 160. Within some embodiments, the model phrase database 160 contains an indication of one or more intent phrases that have been previously determined to be indicative of the intent parameter associated with a given targeted message being analyzed (such as one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158). [118] In some embodiments, one of the given intent phrases has been generated using one or more heuristics. In alternative embodiments, one of the given intent phrases has been pre- populated by an operator of the targeted message server 140. In yet further embodiments, one of the given intent phrases has been generated using various machine learning techniques. [119] For example, let's assume that the one of the given intent phrases has been generated using one or more heuristics. One of the heuristics used can be: "if a brand name and a product name are co-located within 2 words, the combination is deemed to be an intent phrase". For example, if the text of a previously analyzed targeted message being organized contains "LG® DVD players", the targeted message server 140 can store "LG® DVD players" as an intent phrase indicative of this intent phrase being correlated to the intent parameter of the previously analyzed targeted message.
[120] In some embodiments of the present technology, the targeted message server 140 is configured to maintain a model intent parameter database 170. Within some embodiments, the model intent parameter database 170 contains an indication of all previous intent parameters that the targeted message server 140 has established for one or more previously analyzed targeted messages (i.e. previously analyzed targeted messages similar to the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158).
[121] In some embodiments of the present technology, the targeted message server 140 is configured to store an indication of every previously determined intent parameter within the model intent parameter database 170. In some alternative non-limiting embodiments of the present technology, the targeted message server 140 is configured to store an indication of non-semantically-repetitive previously determined intent parameter within the model intent parameter database 170. The targeted message server 140 can determine that a given targeted message is non-semantically-repetitive relative to a previously stored intent parameter if the two have substantially different meaning. For example, the targeted message server 140 can determine that "LG® DVD players" and "LG® players (DVD)" are semantically-repetitive and store only an indication of one of the intent parameters.
[122] In alternative embodiments, the targeted message server 140 can maintain a normalized form of the previously determined intent parameter. [123] Upon receipt (or at some point in time thereafter) of each of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158, the targeted message server 140 is configured to determine an intent parameter associated with each of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158.
[124] According to embodiments of the present technology, the targeted message server 140 is configured to implement a multi-stage intent determination routine. In some embodiments of the present technology, the targeted message server 140 can pick some or all of the steps 1- 5 for execution in any order. [125] In some alternative embodiments of the present technology, the targeted message server 140 starts with step 1 and proceeds to each of the next steps 2-5 if the determination at a given step has not rendered the determination of the intent parameter associated with the respective one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158. [126] Within embodiments of the present technology, the intent parameter determination routine can be implemented as follows.
[127] Step 1
[128] In some embodiments of the present technology, the targeted message server 140 executes the first stage of a linguistic analysis of the text of the targeted message being analyzed (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158).
[129] As part of this stage of the linguistic analysis, the targeted message server 140 parses the title portion 202 and/or the body portion 204. In some embodiments, the targeted message server 140 first parses the title portion 202 and/or the body portion 204 to normalize phrases contained therein.
[130] The targeted message server 140 then parses the title portion 202 and/or the body portion 204 into separate phrases. In some embodiments, the separate phrases can be separate sentences. In some embodiments, the targeted message server 140 detects all punctuation marks within the text of the title portion 202 and/or the body portion 204 and, using some of the detected punctuation marks (such as the period, the exclamation mark or the question mark) to split the text of the title portion 202 and/or the body portion 204 into separate phrases.
[131] In some embodiments, the targeted message server 140 then parses the title portion 202 and/or the body portion 204 to remove non-meaningful words and/or phrases. In some embodiments, the removal of the non-meaningful words and/or phrases can be executed by means of performing a regular expressions analysis. Naturally, any other suitable pattern recognition approach or lexical analysis approach can be used.
[132] Using the above targeted messages as examples, the targeted message server 140 may have executed the following step 1 processing (as an example only). In the following examples, crossed-out phrases denote non-meaningful phrases that the targeted message server 140 has filtered out as non-meaningful phrases.
[133] For the first targeted message 152:
<Message lxBolts and nutsxBolts and nuts in bulkxLarge assortmentxftee shippingxCall now for specials and promotions
[134] For the second targeted message 154:
<Message 2x Mitsubishi MZ312823xMuffler for Mitsubishi MZ312823x2-year warrantyxDirect from distributor
[135] For the third targeted message 156:
<Message 3><Forklifts><New and second-hand. Other industrial equipment availablexWe have more than 500 items in stockxCall now!>
[136] For the fourth targeted message 158:
<Message 4><"Bulk material handlersxLeading brand stackersxLargc inventory. Immediate dolivoryxCall us now!>
[137] In some embodiments of the present technology, if the targeted message server 140 determines that the so-parsed targeted message contains a single phrase (after the non- meaningful phrases have been removed or if the targeted message apriori contained a single phrase), the targeted message server 140 can determine that the single phrase is the intent parameter associated with the targeted message being analyzed.
[138] Step 2 [139] As part of step 2, the targeted message server 140 implements a second stage of the linguistic analysis of the targeted message being analyzed (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158). In some embodiments, the targeted message server 140 executes step 2 if step 1 has not rendered a result for identifying the intent parameter. [140] More specifically, the targeted message server 140 can then analyze the so-parsed targeted message being under analysis (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158). At this stage, the targeted message server 140 determines if the parsed text of the given targeted message being analyzed (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) contains any of the key words associated with the given targeted message being analyzed.
[141] If the targeted message server 140 determines that the parsed text contains any of the key words associated with the given targeted message, the targeted message server 140 determines that the so-contained key words form the intent parameter associated with the given targeted message.
[142] Continuing using the above example of the first targeted message, the targeted message server 140 compares the key words with the parsed content of the first targeted message 152.
<Message lxBolts and nutsxBolts and nuts in bulkxLarge assortmentxftee shippingxCall now for specials and promotions>
<Message 1 key wordsxbolts and nutsonuts for bolts>
[143] Since the targeted message server 140 determines that the key words "bolts and nuts" are contained in the text of the first targeted message 152, the targeted message server 140 determines that the intent parameter associated with the first targeted message 152 is "bolts and nuts".
[144] In some embodiments, a single instance of the key words may match a phrase in the parsed text. Within these scenarios, the targeted message server 140 selects the single instance of the key words as the intent parameter. Alternatively, it may happen that there is more than a single match between key words and the parsed text of the targeted message being analyzed. Within these scenarios, the targeted message server can select the first- appearing match as the intent parameter, the last- appearing match, a random one of the matches or the like. Alternatively, the targeted message server 140 can apply a weighting algorithm, based on historical data and the like.
[145] Step 3
[146] At step 3, the targeted message server 140 performs a third stage of the linguistic analysis of the parsed targeted message being analyzed. In some embodiments, the targeted message sever 140 executes step 3 if step 2 has not rendered a result for identifying the intent parameter.
[147] Within this stage, the targeted message server 140 compares each of the parsed phrases of the parsed targeted message being analyzed to the one or more intent phrases stored within the model phrase database 160. Responsive to one of the parsed phrases of the parsed targeted message matching one of the stored intent phrases within the model phrase database 160, the targeted message server 140 determines that the matched intent phrase is the intent parameter for the targeted message being analyzed.
[148] It may so happen that for the given targeted message being analyzed, has more than one phrase that matches the stored intent phrases. Within some of these embodiments, the targeted message server 140 selects the first-appearing phrase of the targeted message being analyzed that matches the stored intent phrases as the intent parameter. Within some others of these embodiments, the targeted message server 140 selects the last-appearing phrase of the targeted message being analyzed that matches the stored intent phrases as the intent parameter. Within yet some others of these embodiments, the targeted message server 140 selects a random one of the targeted message being analyzed that matches the stored intent phrases as the intent parameter. [149] Using the above example of the second targeted message 154, the targeted message server 140 can match a parsed phrase Mitsubishi MZ312823 from the second targeted message 154 to a previously stored intent phrase from the model phrase database 160.
<Message 2><Mitsubishi MZ312823><Muffler for Mitsubishi MZ312823x2-year warrantyxDircct from distributor
<Intent Phrase 27889X Mitsubishi MZ312823>
[150] As such, the targeted message server 140 can determine that the intent parameter associated with the second targeted message 154 is < Mitsubishi MZ312823>.
[151] Step 4 [152] The targeted message server 140 can then execute step 4, where it performs a fourth stage of the linguistic analysis of the parsed targeted message being analyzed. In some embodiments of the present technology, the targeted message server 140 executes step 4 if step 3 has not rendered a result for identifying the intent parameter.
[153] Within this stage, the targeted message server 140 compares each of the parsed phrases of the parsed targeted message being analyzed to the one or more previously assigned intent parameters stored within the model intent parameter database 170. Responsive to one of the parsed phrases of the parsed targeted message matching one of the stored previously assigned intent parameters stored within the model intent parameter database 170, the targeted message server 140 determines that the matched previously assigned intent parameter is the intent parameter for the targeted message being analyzed.
[154] It may so happen that the given targeted message being analyzed has more than one phrase that matches the stored previously assigned intent parameters. Within some of these embodiments, the targeted message server 140 selects the first-appearing phrase of the targeted message being analyzed that matches the previously assigned intent parameter as the intent parameter. Within some others of these embodiments, the targeted message server 140 selects the last- appearing phrase of the targeted message being analyzed that matches the previously assigned intent parameter as the intent parameter. Within yet some others of these embodiments, the targeted message server 140 selects a random phrase of the targeted message being analyzed that matches the previously assigned intent parameter as the intent parameter.
[155] Using the example of the third targeted message 156, the targeted message server 140 can execute the following match with the previously assigned intent parameters stored in the model intent parameter database 170.
<Message 3><Forklifts><New and second-handxOther industrial equipment availablexWe have more than 500 items in stockxCall now!>
<Assigned intent parameter 840><Forklifts>
[156] Within this example, the targeted message server 140 can determine that the intent parameter associated with the third targeted message 156 is <Forklifts>.
[157] Step 5
[158] The targeted message server 140 then executes step 5, where it performs a fifth stage of the linguistic analysis of the parsed targeted message being analyzed. In some embodiments of the present technology, the targeted message server 140 executes step 5, if step 4 has not rendered a result for identifying the intent parameter.
[159] At this stage, the targeted message server 140 analyzes the parsed phrases of the targeted message being analyzes. Recalling that the parsed phrase may have been processed to remove all non-meaningful phrases thereform, the targeted message server 140 can pick the first-appearing parsed phrase as the intent parameter. Alternatively, the targeted message server 140 picks the last-appearing parsed phrase as the intent parameter. Yet in some other embodiments, the targeted message server 140 can pick a random one of the parsed phrase as the intent parameter.
[160] In some embodiments, where the targeted message server 140 has not executed removal of the non-meaningful phrases prior to execution of step 5, the targeted message server 140 can remove non-meaningful phrases as part of executing step 5 prior to selecting a given one of the parsed phrases as the intent parameter.
[161] Using the above mentioned example of the fourth targeted message 158, the targeted message server 140 can analyze the parsed phrases of the fourth targeted message 158. <Message 4><"Bulk material handlersxLeading brand stackersxfcarge inventory. Immediate dclivcryxCall us now!>
[162] Using this example, the targeted message server can determine that the intent parameter associated with the fourth targeted message 158 is <Bulk material handlers>. [163] In some embodiments of the present technology, the targeted message server 140 is configured to store the indication of the intent parameter in association with the respective targeted message (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158). Alternatively, the targeted message server 140 is configured to store the indication of the intent parameter as metadata for the respective targeted message (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158).
[164] At some point thereafter, the targeted message server 140 can receive a request for the targeted message. The request for the targeted message can be received from the server 114 in response to the user submitting a search query, the targeted message for inclusion into the SERP presented to the user in response to the search query. Alternatively, the request for the targeted message can be received from a web site server (not depicted) hosting a web site that the user accesses, the targeted message being, in this case, for inclusion into the web site accessed by the user. [165] SERP embodiments
[166] When a given user performs a search using the search application 104, the server 114 can transmit a targeted message request 180 to the targeted message server 140. The targeted message request 180 can contain a request intent parameter.
[167] In some embodiments of the present technology, the request intent parameter is generated based on the search query entered by the user. The request intent parameter can contain the whole of the search query. Alternatively, the request intent parameter can include a normalized version of the search query. In yet alternative embodiments, the request intent parameter can include the search query or the normalized version of the search query with the non-meaningful words or phrases removed (much akin to what was described above). [168] In yet further embodiments, the request intent parameter is generated based on pre-stored list mapping a given one of the request intent parameters to potential search queries associated therewith (this mapping may be stored by the server 114 or by the targeted message server 140 itself). [169] Upon receipt of the targeted message request 180, the targeted message server 140 accesses the targeted message database 142 are retrieves a respective targeted message (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) that is associated with the intent parameter that matches the request intent parameter. [170] It may happen that for the given request intent parameter, the targeted message database 142 contains more than one of the targeted messages (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) that are associated with the intent parameter that matches the given request intent parameter. Within these embodiments, the targeted message server 140 can select a specific one of the more than one of the targeted messages (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) based on standard techniques, such as using predicted CTR and the like.
[171] The targeted message server 140 then generates a targeted message trigger 182 and sends the targeted message trigger 182 to the server 114 for transmission to the electronic device 102. The targeted message trigger 182 is for causing the electronic device 102 to display the selected targeted message more than one of the targeted messages (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) as part of the SERP, the SERP containing search results generated by the server 114 in response to the search query.
[172] In some embodiments, the server integrates the selected targeted message into the SERP and then transmits the SERP to the electronic device 102. In alternative embodiments, the server 114 can send the SERP and the targeted message trigger 182 to the electronic device 102 and the search application 104 can integrated the selected targeted message into the SERP based on instructions contained in the targeted message trigger 182.
[173] Web site embodiments [174] In alternative embodiments, when a given user accesses a web site using the search application 104 (or just a browser executed on the electronic device), the hosting server (not depicted) associated with the web site or the server 114 can transmit the targeted message request 180 to the targeted message server 140. The targeted message request 180 can contain a request intent parameter. The request intent parameter can be based on a pre-defined request intent parameter for the web site. Alternatively, the request intent parameter can be based on the user's browsing history. Alternatively, the request intent parameter can be based on a user profile associated with the user.
[175] Given the architecture of system 100 presented above and given the examples provided above, it is possible to execute a method of processing a targeted message destined for a user of the electronic device 102. With reference to Figure 3, there is depicted a flow char of a non-limiting embodiment of a method 300. The method 300 can be conveniently executed by the targeted message server 140.
[176] Step 302 - appreciating an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message
[177] The method starts at step 302, where the targeted message server 140 appreciates an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message.
[178] In some embodiments of the present technology, the method 300 further comprises, prior to executing step 302, determining (by the targeted message server 140) the intent parameter associated with the targeted message.
[179] In some embodiments of the present technology, the determining of the intent parameter comprises parsing the text content of the targeted message. In some embodiments of the present technology, the step of parsing optionally includes removing a given one of the plurality of phrases, the given one being determined to be non-meaningful. [180] In some embodiments of the present technology, the determining of the intent parameter comprises breaking up text content into a plurality of phrases.
[181] In some embodiments of the present technology, the determining of the intent parameter comprises responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter.
[182] In some embodiments of the present technology, the determining of the intent parameter comprises retrieving a plurality of key words associated with the targeted message; comparing each of the plurality of phrases to each of the plurality of key words; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter.
[183] In some embodiments of the present technology, the determining of the intent parameter comprises comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database; responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter.
[184] In some embodiments of the present technology, the determining of the intent parameter comprises comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter.
[185] In some embodiments of the present technology, the determining of the intent parameter comprises selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases. [186] In some embodiments of the present technology, the determining of the intent parameter comprises a./ responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter; b. / retrieving a plurality of key words associated with the targeted message, comparing each of the plurality of phrases to each of the plurality of key words and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter. c. / comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database and responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter; d. / comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter. e. / selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases; wherein b./ is executed responsive to a./ not rendering the intent parameter; wherein c./ is executed responsive to b./ not rendering the intent parameter; wherein d./ is executed responsive to c./ not rendering the intent parameter; and wherein e./ is executed responsive to d./ not rendering the intent parameter.
[187] Step 304 - receiving a targeted message request, the targeted message request being associated with a request intent parameter [188] Next, at step 304, the targeted message server 140 receives a targeted message request, the targeted message request being associated with a request intent parameter. [189] As has been described above, the targeted message request can be generated in response to the user executing a search, in response to the user entering a web site and the like. As part of this step, the targeted message server 140 receives the above-mentioned targeted message request 180. [190] Step 306 - responsive to the intent parameter matching the request intent parameter, selecting the targeted message for delivery to the electronic device
[191] Next, at step 306, the targeted message server 140, responsive to the intent parameter matching the request intent parameter, selects the targeted message for delivery to the electronic device. [192] In some embodiments, as part of step 306, the targeted message server 140 compares each of the intent parameters associated with the plurality of targeted messages stored in the targeted messages database 142 (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) with the request intent parameter received as part of the targeted message request 180. [193] If the targeted message server 140 determines more than one of the plurality of targeted messages stored in the targeted messages database 142 (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) matching with the request intent parameter received as part of the targeted message request 180, the targeted message server 140 can select a specific one of the more than one of the plurality of targeted messages based on known techniques, such as based on the predicted CTR and the like.
[194] Step 308 - causing the electronic device to display to the user the targeted message
[195] Next, at step 308, the targeted message server 140 causes the electronic device to display to the user the targeted message. [196] In some embodiments, the targeted message server 140 generates the aforementioned targeted message trigger 182 and releases same to the requesting entity (such as the server 114 or the host server, which is not depicted).
[197] In alternative embodiments of the present technology, the intent parameter stored in association with the plurality of targeted messages stored in the targeted message database (i.e. one of the first targeted message 152, the second targeted message 154, the third targeted message 156 and the fourth targeted message 158) can be used to predict a parameter (such as the predicted CTR and the like) associated with a new targeted message.
[198] Imagine a scenario, where one of the sources for targeted messages (i.e. one of the first source 130, the second source 132 and the third source 134 or any other source potentially present within the system 100) has provisioned a new targeted message. The new targeted message contains a text portion that does not match any of the text portions of the plurality of targeted messages stored in the targeted messages database 142. Within these embodiments, the new targeted message is analyzed to determine its respective intent parameter (as has been previously described). The respective intent parameter is then compared with all intent parameters for all targeted messages stored within the targeted messages database 142. Upon the targeted message server 142 determining one or more of the targeted messages stored in the targeted messages database 142 having the same intent parameter as the new targeted message, the targeted message server 140 can use information associated with the one or more of the targeted messages to determine parameters (such as predicted CTR) of the new targeted message.
[199] As such in alternative embodiments, a method of processing a new targeted message can be implemented. With reference to Figure 4, there is depicted a non-limiting embodiment of a flow chart of a method 400. The method 400 can be conveniently executed by the targeted message server 140.
[200] Step 402 - receiving the new targeted message
[201] The method 400 starts at step 402, where the targeted message server 140 receives the new targeted message. In some embodiments, the targeted message server 140 receives the new targeted message via the communication network 112 from one of the first source 130, the second source 132 and the third source 134.
[202] Step 404 - appreciating a text content associated with the new targeted message
[203] Next, at step 404, the targeted message server 140 appreciates a text content associated with the new targeted message. [204] Step 406 - performing a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message
[205] Next, at step 406, the targeted message server 140 performs a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message. [206] Step 408 - accessing a database storing a plurality of targeted messages and an associated plurality of intent parameters
[207] Next, at step 408, the targeted message server 140 accesses a database storing a plurality of targeted messages and an associated plurality of intent parameters. More specifically, the targeted message server 140 accesses the aforementioned targeted messages database 142.
[208] Step 410 - comparing the new intent parameter with the plurality of intent parameters
[209] Next, at step 410, the targeted message server 140 compares the new intent parameter with the plurality of intent parameters. [210] Step 412 - responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieving a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters
[211] Next, at step 412, the targeted message server 140, responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieves a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters
[212] Step 414 - using the CTR parameter, determining a predicted CTR parameter for the new targeted message
[213] Next, at step 414, the targeted message server 140, using the CTR parameter, determines a predicted CTR parameter for the new targeted message.
[214] The nature of the targeted message is not particular limited. In some embodiments of the present technology, the targeted message can be a banner ad. The targeted message can be

Claims

embodied in any other kind of a targeted message: a promotional message, an informational message, a banner ad, a text ad, and the like. [215] One skilled in the art will appreciate when the instant description refers to "receiving data" from a user that the electronic device executing receiving of the data from the user may receive an electronic (or other) signal from the user. One skilled in the art will further appreciate that displaying data to the user via a user-graphical interface (such as the screen of the electronic device and the like) may involve transmitting a signal to the user-graphical interface, the signal containing data, which data can be manipulated and at least a portion of the data can be displayed to the user using the user-graphical interface. [216] Some of these steps and signal sending-receiving are well known in the art and, as such, have been omitted in certain portions of this description for the sake of simplicity. The signals can be sent-received using optical means (such as an optical connection), electronic means (such as using wired or wireless connection), and mechanical means (such as pressure- based, temperature based or any other suitable physical parameter based). [217] Modifications and improvements to the above-described implementations of the present technology may become apparent to those skilled in the art. The foregoing description is intended to be exemplary rather than limiting. The scope of the present technology is therefore intended to be limited solely by the scope of the appended claims. CLAIMS
1. A method of processing a targeted message destined for a user of an electronic device, the electronic device being coupled via a communication network to a server, the method being executable on the server, the method comprising: appreciating an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message; receiving a targeted message request, the targeted message request being associated with a request intent parameter; responsive to the intent parameter matching the request intent parameter, selecting the targeted message for delivery to the electronic device; causing the electronic device to display to the user the targeted message.
2. The method of claim 1 , further comprising determining the intent parameter associated with the targeted message at a point in time prior to the appreciating.
3. The method of claim 2, wherein the determining comprises: parsing the text content of the targeted message.
4. The method of claim 3, wherein the parsing comprises: breaking up text content into a plurality of phrases.
5. The method of claim 4, wherein the parsing further comprises: removing a given one of the plurality of phrases, the given one being determined to be non-meaningful.
6. The method of any one of claims 4 and 5, wherein the determining further comprises: responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter.
7. The method of any one of claims 4 and 5, wherein the determining further comprises: retrieving a plurality of key words associated with the targeted message; comparing each of the plurality of phrases to each of the plurality of key words; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter.
8. The method of any one of claims 4 and 5, wherein the determining comprises: comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database; responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter.
9. The method of any one of claims 4 and 5, wherein the determining comprises: comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter.
10. The method of any one of claims 4 and 5, wherein the determining comprises: selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases.
11. The method of any one of claims 4 and 5, wherein the determining further comprises: a. / responsive to the plurality of phrases having a single phrase, selecting the single phrase as the intent parameter; b. / retrieving a plurality of key words associated with the targeted message, comparing each of the plurality of phrases to each of the plurality of key words and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, selecting the given one of the plurality of key words as the intent parameter; c. / comparing each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database and responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, selecting the given one of the one or more intent phrases as the intent parameter; d. / comparing each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, selecting the given one of the plurality of previous intent parameters as the intent parameter; e. / selecting a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases; wherein b./ is executed responsive to a./ not rendering the intent parameter; wherein c./ is executed responsive to b./ not rendering the intent parameter; wherein d./ is executed responsive to c./ not rendering the intent parameter; and wherein e./ is executed responsive to d./ not rendering the intent parameter.
12. The method of claim 1, wherein the receiving the targeted message request comprises receiving the targeted message request associated with a search query submitted by the user of the electronic device.
13. The method of claim 12, further comprising comparing the intent parameter to the request intent parameter.
14. The method of claim 13, wherein the request intent parameter comprises the search query.
15. The method of claim 13, wherein the request intent parameter comprises a normalized version of the search query.
16. The method of claim 1, wherein the receiving the targeted message request comprises receiving the targeted message request associated with the user of the electronic device accessing a web site.
17. The method of claim 16, further comprising comparing the intent parameter to the request intent parameter.
18. The method of claim 17, wherein the request intent parameter is based on a browsing history associated with the user.
19. A method of processing a new targeted message, the method being executable at a server, the method comprising: receiving, via a communication network, the new targeted message; appreciating a text content associated with the new targeted message; performing a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message; accessing a database storing a plurality of targeted messages and an associated plurality of intent parameters; comparing the new intent parameter with the plurality of intent parameters; responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieving a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters; using the CTR parameter, determining a predicted CTR parameter for the new targeted message.
20. A server comprising: a communication interface for communication with an electronic device via a communication network, a processor operationally connected with the communication interface, the processor configured to process a targeted message destined for a user of an electronic device, the processor being further configures to: appreciate an intent parameter associated with the targeted message, the intent parameter having been determined by the steps of: appreciating a text content associated with the targeted message; performing a linguistic analysis of the text content to determine an intent parameter associated with the targeted message; storing the intent parameter in association with the targeted message; receive a targeted message request, the targeted message request being associated with a request intent parameter; responsive to the intent parameter matching the request intent parameter, select the targeted message for delivery to the electronic device; cause the electronic device to display to the user the targeted message.
21. The server of claim 20, the processor being further operable to determine the intent parameter associated with the targeted message at a point in time prior to the appreciating.
22. The server of claim 21, wherein to determine, the processor is further operable to: parse the text content of the targeted message.
23. The server of claim 22, wherein to process the processor is further operable to: break up text content into a plurality of phrases.
24. The server of claim 23, wherein to parse, the processor is further operable to: remove a given one of the plurality of phrases, the given one being determined to be non-meaningful.
25. The server of any one of claims 23 and 24, wherein to determine the processor is further operable to: responsive to the plurality of phrases having a single phrase, select the single phrase as the intent parameter.
26. The server of any one of claims 23 and 24, wherein to determine, the processor is further operable to: retrieve a plurality of key words associated with the targeted message; compare each of the plurality of phrases to each of the plurality of key words; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, select the given one of the plurality of key words as the intent parameter.
27. The server of any one of claims 23 and 24, wherein to determine, the processor is further operable to: compare each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database; responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, select the given one of the one or more intent phrases as the intent parameter.
28. The server of any one of claims 23 and 24, wherein to determine, the processor is further operable to: compare each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database; responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, select the given one of the plurality of previous intent parameters as the intent parameter.
29. The server of any one of claims 23 and 24, wherein to determine, the processor is further operable to: select a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases.
30. The server of any one of claims 23 and 24, wherein to determine, the processor is further operable to: a./ responsive to the plurality of phrases having a single phrase, select the single phrase as the intent parameter; b./ retrieve a plurality of key words associated with the targeted message, comparing each of the plurality of phrases to each of the plurality of key words and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of key words, select the given one of the plurality of key words as the intent parameter; c./ compare each of the plurality of phrases to an indication of one or more intent phrases that have been stored in a phrase database and responsive to a given phrase of the plurality of phrases matching a given one of the one or more intent phrases, select the given one of the one or more intent phrases as the intent parameter; d. / compare each of the plurality of phrases to an indication of a plurality of previous intent parameters stored in a model intent parameter database and responsive to a given phrase of the plurality of phrases matching a given one of the plurality of previous intent parameters, select the given one of the plurality of previous intent parameters as the intent parameter; e. / select a given one of the plurality of phrases as the intent parameter, the given one appearing at one of a pre-determined sequence and a random place within the plurality of phrases; wherein b./ is executed responsive to a./ not rendering the intent parameter; wherein c./ is executed responsive to b./ not rendering the intent parameter; wherein d./ is executed responsive to c./ not rendering the intent parameter; and wherein e./ is executed responsive to d./ not rendering the intent parameter.
31. The server of claim 20, wherein to receive the targeted message request, the processor is configured to receive the targeted message request associated with a search query submitted by the user of the electronic device.
32. The server of claim 31, the processor being further operable to compare the intent parameter to the request intent parameter.
33. The server of claim 32, wherein the request intent parameter comprises the search query.
34. The server of claim 32, wherein the request intent parameter comprises a normalized version of the search query.
35. The server of claim 20, wherein to receive the targeted message request, the processor is configured to receive the targeted message request associated with the user of the electronic device accessing a web site.
36. The server of claim 35, the processor being further operable to compare the intent parameter to the request intent parameter.
37. The server of claim 36, wherein the request intent parameter is based on a browsing history associated with the user.
38. A server comprising: a communication interface for communication with an electronic device via a communication network, a processor operationally connected with the communication interface, the processor configured to process a new targeted message, the processor being further configures to: receive, via the communication interface, the new targeted message; appreciate a text content associated with the new targeted message; perform a linguistic analysis of the text content to determine a new intent parameter associated with the new targeted message; access a database storing a plurality of targeted messages and an associated plurality of intent parameters; compare the new intent parameter with the plurality of intent parameters; responsive to the new intent parameter matching a specific one of the plurality of intent parameters, retrieve a CTR parameter associated with a specific targeted message associated with the specific one of the plurality of intent parameters; using the CTR parameter, determine a predicted CTR parameter for the new targeted message.
PCT/IB2015/050497 2014-09-25 2015-01-22 Method of and server for processing a message to determine intent WO2016046650A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2014138609 2014-09-25
RU2014138609/08A RU2589856C2 (en) 2014-09-25 2014-09-25 Method of processing target message, method of processing new target message and server (versions)

Publications (1)

Publication Number Publication Date
WO2016046650A1 true WO2016046650A1 (en) 2016-03-31

Family

ID=55580373

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2015/050497 WO2016046650A1 (en) 2014-09-25 2015-01-22 Method of and server for processing a message to determine intent

Country Status (2)

Country Link
RU (1) RU2589856C2 (en)
WO (1) WO2016046650A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7177591B2 (en) 2017-12-19 2022-11-24 キヤノン株式会社 WIRELESS TERMINAL, SERVER, CONTROL METHOD THEREOF, PROGRAM AND SYSTEM

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060212350A1 (en) * 2005-03-07 2006-09-21 Ellis John R Enhanced online advertising system
WO2008056358A2 (en) * 2006-11-10 2008-05-15 Media Layers Ltd Method and computer program product for providing advertisements to a mobile user device
US20120109758A1 (en) * 2007-07-16 2012-05-03 Vanessa Murdock Method For Matching Electronic Advertisements To Surrounding Context Based On Their Advertisement Content
US20120316972A1 (en) * 2010-03-04 2012-12-13 Yahoo! Inc. Intelligent feature expansion of online text ads

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7596568B1 (en) * 2004-04-12 2009-09-29 Microsoft Corporation System and method to resolve ambiguity in natural language requests to determine probable intent
CA2652150A1 (en) * 2006-06-13 2007-12-21 Microsoft Corporation Search engine dash-board

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060212350A1 (en) * 2005-03-07 2006-09-21 Ellis John R Enhanced online advertising system
WO2008056358A2 (en) * 2006-11-10 2008-05-15 Media Layers Ltd Method and computer program product for providing advertisements to a mobile user device
US20120109758A1 (en) * 2007-07-16 2012-05-03 Vanessa Murdock Method For Matching Electronic Advertisements To Surrounding Context Based On Their Advertisement Content
US20120316972A1 (en) * 2010-03-04 2012-12-13 Yahoo! Inc. Intelligent feature expansion of online text ads

Also Published As

Publication number Publication date
RU2014138609A (en) 2016-04-20
RU2589856C2 (en) 2016-07-10

Similar Documents

Publication Publication Date Title
US9767182B1 (en) Classification of search queries
US10325033B2 (en) Determination of content score
US9798820B1 (en) Classification of keywords
US9262766B2 (en) Systems and methods for contextualizing services for inline mobile banner advertising
US9411890B2 (en) Graph-based search queries using web content metadata
JP5458181B2 (en) System and method for providing advanced search result page content
WO2018149115A1 (en) Method and apparatus for providing search results
US8417692B2 (en) Generalized edit distance for queries
US20160299899A1 (en) Generating a user-specific ranking model on a user electronic device
US20130110628A1 (en) Advertisement determination system and method for clustered search results
US20100324991A1 (en) System and method for associating queries and documents with contextual advertisements
US20070239452A1 (en) Targeting of buzz advertising information
US20110082850A1 (en) Network resource interaction detection systems and methods
US20110093331A1 (en) Term Weighting for Contextual Advertising
KR20130016339A (en) Infinite browse
JP2013505503A (en) System and method for providing advanced search results page content
US20110258529A1 (en) Systems and methods for excluding serving an advertisement campaign to undesired web pages
US20130144719A1 (en) Using image match technology to improve image advertisement quality
US10909196B1 (en) Indexing and presentation of new digital content
US20180096067A1 (en) Creation and optimization of resource contents
US20170186035A1 (en) Method of and server for selection of a targeted message for placement into a search engine result page in response to a user search request
US20110029384A1 (en) System and method for dynamic targeting advertisement based on content-in-view
US10339191B2 (en) Method of and a system for processing a search query
US20130110594A1 (en) Ad copy determination
US8819029B1 (en) Tie breaking rules for content item matching

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: 15844899

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: 15844899

Country of ref document: EP

Kind code of ref document: A1