System and method for selecting and presenting advertisements based on natural language processing of voice-based input

Information

  • Patent Grant
  • 8145489
  • Patent Number
    8,145,489
  • Date Filed
    Friday, July 30, 2010
    14 years ago
  • Date Issued
    Tuesday, March 27, 2012
    12 years ago
Abstract
A system and method for selecting and presenting advertisements based on natural language processing of voice-based inputs is provided. A user utterance may be received at an input device, and a conversational, natural language processor may identify a request from the utterance. At least one advertisement may be selected and presented to the user based on the identified request. The advertisement may be presented as a natural language response, thereby creating a conversational feel to the presentation of advertisements. The request and the user's subsequent interaction with the advertisement may be tracked to build user statistical profiles, thus enhancing subsequent selection and presentation of advertisements.
Description
FIELD OF THE INVENTION

The present invention relates to selecting and presenting advertisements based on natural language processing of voice-based input.


BACKGROUND OF THE INVENTION

As technology advances, consumer electronics devices tend to play larger roles due to increased functionality and mobility. For example, mobile phones, navigation devices, embedded devices, and other such devices provide a wealth of functionality beyond core applications. However, increased functionality adds difficulty to the learning curve associated with using electronic devices, and increased mobility intensifies the demand for simple mechanisms to interact with devices on the go. For example, existing systems tend to have complex human to machine interfaces, which may inhibit mass-market adoption for various technologies. For example, when a user wishes to perform a relatively simple task on a mobile phone, such as purchasing a ring tone, the user often is forced to navigate through a series of menus and press a series of buttons. In some instances, this may result in the transaction not necessarily occurring, as the user may prefer to avoid the hassles altogether. As such, there is ever-growing demand for ways to exploit technology in intuitive ways.


Voice recognition software may enable a user to exploit applications and features of a device that may otherwise be unfamiliar, unknown, or difficult to use. However, many existing voice user interfaces (when they actually work) still require significant learning on the part of the user. For example, users often cannot directly issue a request for a system to retrieve information or perform an action without having to memorize specific syntaxes, words, phrases, concepts, semantic indicators, or other keywords/qualifiers. Similarly, when users are uncertain of particular needs, many existing systems do not engage the user in a productive, cooperative dialogue to resolve requests and advance a conversation. Instead, many existing speech interfaces force users to use a fixed set commands or keywords to communicate requests in ways that systems can understand. Using existing voice user interfaces, there is virtually no option for dialogue between the user and the system to satisfy mutual goals.


The lack of adequate voice user interfaces results in missed opportunities for providing valuable and relevant information to users. Not only does this potentially leave user requests unresolved, in certain instances, providers of goods and services may lose out on potential business. In an increasingly global marketplace, where marketers are continually looking for new and effective ways to reach consumers, the problems with existing voice user interfaces leaves a large segment of consumer demand unfulfilled. Furthermore, existing techniques for marketing, advertising, or otherwise calling consumers to action fail to effectively utilize voice-based information, which is one of the most natural, intuitive methods of human interaction.


Existing systems suffer from these and other problems.


SUMMARY OF THE INVENTION

According to various aspects of the invention, a system and method for selecting and presenting advertisements based on natural language processing of voice-based inputs is provided. A natural language voice-based input may be received by a voice user interface. The voice-based input may include a user utterance, and a request may be identified from the utterance. Appropriate action may be taken to service the request, while one or more advertisements may be selected and presented to the user. Advertisements may be selected based on various criteria, including content of the input (e.g., concepts, semantic indicators, etc.), an activity related to the input (e.g., a relation to a request, a requested application, etc.), user profiles (e.g., demographics, preferences, location, etc.), or in other ways. A user may subsequently interact with the advertisement (e.g., via a voice-based input), and action may be taken in response to the interaction. Furthermore, the interaction may be tracked to build statistical profiles of user behavior based on affinities or clusters among advertisements, user profiles, contexts, topics, semantic indicators, concepts, or other criteria.


According to various aspects of the invention, advertisers may create advertisements, which may be stored in an advertisement repository. For example, advertisements may include sponsored messages, calls to action, purchase opportunities, trial downloads, or any other marketing communication, as would be apparent to those skilled in the art. Advertisers may specify various parameters to associate with the advertisements, such as various contexts or topic concepts (e.g., semantic indicators for a “music” concept may include words such as “music,” “tunes,” “songs,” etc.), target demographics (e.g., a preferred audience), marketing criteria or prices for insertion (e.g., dynamic or static pricing based on various marketing criteria), or other information, as would be apparent. The advertisement repository may be associated with a server, where in response to a voice-based input from a user (e.g., at a voice-enabled device), a communications link may be established with the server. Information may be extracted from the voice-based input (e.g., words in the input, applications requested by the input, etc.), and the extracted information may be correlated with user profiles, advertisement parameters, or other information to determine which advertisements to select in relation to the voice-based input. The server may subsequently communicate the selected advertisements to the user, and the server may track the user's subsequent interaction with the selected advertisements.


Other objects and advantages of the invention will be apparent based on the following drawings and detailed description.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates a block diagram of an exemplary system for implementing a voice user interface according to various aspects of the invention.



FIG. 2 illustrates a block diagram of an exemplary advertising system according to various aspects of the invention.



FIG. 3 illustrates a flow diagram of an exemplary method for selecting and presenting advertisements based on voice-based inputs according to various aspects of the invention.





DETAILED DESCRIPTION

Referring to FIG. 1, an exemplary system 100 for implementing a voice user interface is illustrated according to various aspects of the invention. System 100 may enable users to perform various tasks on a voice-enabled device. For example, users may control navigation devices, media devices, personal computers, personal digital assistants, or any other device supporting voice-based inputs. System 100 may enable users to request voice-enabled devices to retrieve information or perform various tasks, among other things, using natural language voice-based inputs. For example, system 100 may interpret natural language voice-based inputs and generate responses using, among other things, techniques described in U.S. patent application Ser. No. 10/452,147, entitled “Systems and Methods for Responding to Natural Language Speech Utterance,” filed Jun. 3, 2003, which issued as U.S. Pat. No. 7,398,209 on Jul. 8, 2008, and U.S. patent application Ser. No. 10/618,633, entitled “Mobile Systems and Methods for Responding to Natural Language Speech Utterance,” filed Jun. 15, 2003, which issued as U.S. Pat. No. 7,693,720 on Apr. 6, 2010, both of which are hereby incorporated by reference in their entirety. For example, as described in U.S. patent application Ser. No. 10/452,147, the system 100 may include a speech recognition engine (e.g., an Automatic Speech Recognizer 110) that may recognize words and phrases in an utterance using entries in one or more dictionary and phrase tables. In addition, as further described therein, fuzzy set possibilities or prior probabilities for the words in the dictionary and phrase tables may be dynamically updated to maximize the probability of correct recognition at each stage of the dialog (e.g., the probabilities or possibilities may be dynamically updated based on application domains, questions or commands, contexts, user profiles and preferences, user dialog histories, recognizer dictionary and phrase tables, word spellings, and/or other criteria).


According to various aspects of the invention, system 100 may receive a user input, including at least a voice-based user utterance, at an input device 105. Input device 105 may include any suitable device, or combination of devices, for receiving a voice-based input (e.g., a microphone). In various implementations, input device 105 may include a multi-modal input, such as a touch-screen interface, keypad, or other input. The received utterance may be processed by the Automatic Speech Recognizer 110. Automatic Speech Recognizer 110 may generate one or more preliminary interpretations of the utterance using various techniques. For example, Automatic Speech Recognizer 110 may interpret the utterance using techniques of phonetic dictation to recognize a stream of phonemes. Further, Automatic Speech Recognizer 110 may perform post-processing to enhance the preliminary interpretations. For example, Automatic Speech Recognizer 110 may vary interpretations of an utterance, or components of an utterance, from one context to another. Other techniques for enhancing an interpretation of a user utterance may be used, such as those described in U.S. patent application Ser. No. 11/513,269, entitled “Dynamic Speech Sharpening,” filed Aug. 31, 2006, which issued as U.S. Pat. No. 7,634,409 on Dec. 15, 2009, and which is hereby incorporated by reference in its entirety.


The one or more preliminary interpretations may be provided to a conversational language processor 120. Conversational language processor 120 may include a voice search engine 125, a context determination module 130, and one or more agents 135, among other things, to enable cooperative, conversational interaction between the user and system 100. Conversational language processor 120 may be communicatively coupled to one or more data repositories 140 and one or more applications 150. Conversational language processor 120 may generate a domain-specific conversational response, which may be returned to the user as an output 180. Output 180 may include a multi-modal output (e.g., by simultaneously returning a voice-based response and displaying information on a display device).


System 100 may further include an interaction with one or more applications 150 to service one or more requests in the utterance. For example, the utterance may include one or more requests for performing an action, retrieving information, or various combinations thereof. Output 180 may include a conversational response to advance a conversation to service requests by invoking one or more applications 150, as appropriate. For example, applications 150 may include a navigation application 155, an advertising application 160, a music application, an electronic commerce application 170, and/or other applications 175. Furthermore, Automatic Speech Recognizer 110, conversational language processor 120, data repositories 140, and/or applications 150 may reside locally (e.g., on a user device), remotely (e.g., on a server), and/or hybrid local/remote processing models may be used (e.g., lightweight applications may be processed locally while computationally intensive applications may be processed remotely).


Conversational language processor 120 may build long-term and/or short-term shared knowledge in one or more knowledge source. For example, shared knowledge sources may include information about previous utterances, requests, and other user interactions to inform generating an appropriate response to a current utterance. The shared knowledge may include public/non-private (i.e., environmental) knowledge, as well as personal/private (i.e., historical) knowledge. For example, conversational language processor 120 may use context determination module 130 to establish a context for a current utterance by having domain agents 135 competitively generate a context-based interpretation of the utterance (e.g., by scoring possible interpretations and selecting a highest scoring interpretation). As such, agents 135 may model various domains (e.g., navigation, music, a specific user, global users, advertising, e-commerce, etc.), and conversational language processor 120 may interpret and/or respond to a voice-based input accordingly. For example, context-based interpretations and responses to a voice-based input may be generated using techniques described in U.S. patent application Ser. No. 11/197,504, entitled “Systems and Methods for Responding to Natural Language Speech Utterance,” filed Aug. 5, 2005, which issued as U.S. Pat. No. 7,640,160 on Dec. 29, 2009, and U.S. patent application Ser. No. 11/212,693, entitled “Mobile Systems and Methods of Supporting Natural Language Human-Machine Interactions,” filed Aug. 29, 2005, which issued as U.S. Pat. No. 7,949,529 on May 24, 2011, both of which are hereby incorporated by reference in their entirety.


Furthermore, conversational language processor 120 may support adaptive misrecognition to reinterpret a current utterance and/or one or more previous utterances. For example, information contained in a current utterance may indicate that interpretations for one or more previous utterances were incorrect, and therefore, the previous utterances may be reinterpreted to improve subsequent interpretations. Accordingly, conversational language processor 120 may use the techniques described herein, along with various other techniques, to interpret and respond to conversational, natural language utterances. Conversational language processor 120 may use various other techniques as will be apparent, such as those described in U.S. patent application Ser. No. 11/200,164, entitled “System and Method of Supporting Adaptive Misrecognition in Conversational Speech,” filed Aug. 10, 2005, which issued as U.S. Pat. No. 7,620,549 on Nov. 17, 2009, and U.S. patent application Ser. No. 11/580,926, entitled “System and Method for a Cooperative Conversational Voice User Interface,” filed Oct. 16, 2006, both of which are hereby incorporated by reference in their entirety. For example, as described in U.S. patent application Ser. No. 11/200,164, an environmental model may be accessed to determine user location, user activity, track user actions, and/or other environmental information to invoke context, domain knowledge, preferences, and/or other cognitive qualities to enhance the interpretation of questions and/or commands. In addition, as further described therein, based on information received from a general cognitive model, the environmental model, and/or a personalized cognitive model, which provide statistical abstracts of user interaction patterns, the system 100 may enhance responses to commands and questions by including a prediction of user behavior.


Referring to FIG. 2, an exemplary advertising system 200 is illustrated according to various aspects of the invention. System 200 may include a server 230 for receiving one or more advertisements from an advertiser 220, wherein the advertisements may be stored in a data repository 260 associated with server 230. For example, advertisements may include sponsored messages or marketing communications, calls to action, purchase opportunities, trial downloads, coupons, or any other suitable marketing, advertising, campaign, or other information, as would be apparent to those skilled in the art. A voice-enabled device 210 may receive a voice-based input and establish communications with advertising server 230. Subsequently, advertising server 230 may select one or more advertisements from among the advertisements stored in data repository 260, and the selected advertisements may be provided to the voice-enabled device for presentation to a user.


Advertiser 220 may access advertising server 230 via an advertiser interface 245. Advertisers 220 may upload targeted advertisements to server 230 via advertiser interface 245, and server 230 may store the advertisements in data repository 260. The advertisements may include graphically-based advertisements that include banners, images, audio, video, or any suitable combination thereof. Furthermore, the advertisements may include interactive or embedded information, such as links, metadata, or computer-executable instructions, or any suitable combination thereof. Advertisers may specify criteria for a campaign or targeting information for an advertisement (e.g., a start date, an end date, budget information, geo-targeting information, conceptual or contextual information, or any other suitable criteria), which may be used to facilitate selecting an advertisement in relation to a particular voice-based input.


In addition to providing interface 245 for advertisers, server 230 may include a content/action identification module 235, a user profile module 240, an advertisement selection module 250, and a tracking module 255. Users may submit voice-based requests to voice-enabled device 210, and voice-enabled device 210 may communicate information about the voice-based input to server 230. Server 230 may invoke advertisement selection module 250 to extract relevant information from about the voice-based input, where advertisement selection module 250 may select one or more advertisements relevant to the voice-based input based on information extracted using content/action identification module 235 and/or user profile module 240.


For example, content/action identification module 235 may identify content of the voice-based input (e.g., words in the input), requested information (e.g., search results, a web page, music, video, graphics, or other information), requested actions (e.g., calculating a navigation route, placing a telephone call, playing a song, etc.), a category or topic related to the input (e.g., music, business, stocks, sports, navigation, movies, etc.), or other criteria to use in selecting an advertisement. Further, user profile module 240 may identify characteristics of a specific user (e.g., demographics, personal preferences, location-based information, etc.), global user profiles (e.g., demographic profiles, click-through rates, etc.), or other criteria to use in selecting an advertisement. Moreover, advertisement selection module 250 may account for where a request originates from. For example, advertisements may be selected based on a default user location (e.g., identified from a user profile), current geolocation information (e.g., identified from a navigation device), whether an affiliate or partner of server 230 initiated the request, or other criteria.


For instance, a user may request airline reservations via voice-enabled device 210, and content/action identification module 235 may identify specific words used in the request, a category related to the request (e.g., travel, airlines, hotels, etc.), or other information. Furthermore, user profile module 240 may identify relevant characteristics of the user (e.g., user-specific demographics, location information, preferred airlines or hotels, etc.), as well as global user characteristics (e.g., most popular airlines). In various implementations, advertisements may be selected by assigning a score to each advertisement (e.g., based on click-through rates, relevance metrics, target audiences, etc.). As such, advertisement selection module 250 may correlate the information about the request to select advertisements stored in data repository 260, and server 230 may communicate the selected advertisements to voice-enabled device 210. Furthermore, selected advertisements may be presented according to a predetermined ordering or ranking (e.g., based on a ranking of relevance to an advertisement).


In various implementations, advertisement selection module 250 may retrieve a predetermined number of advertisements for any given request. Furthermore, the selected advertisements may depend upon a presentation format. For example, advertisements may be selected based on an amount of available space on a display of voice-enabled device 210 and/or a size/shape of the selected advertisements. In another example, voice-based advertisements may be selected and presented to the user audibly (e.g., a “hands-free” advertisement may be preferred when voice-enabled device 210 is a telematics device).


Furthermore, the user's subsequent interaction with an advertisement may be tracked using tracking module 255. For example, tracking module 255 may determine whether a conversion or click-through occurs for each advertisement presented to users. Further, tracking module 255 may maintain accounting and/or billing information associated with advertisers 220. For example, advertisers 220 may specify a maximum insertion cost, a cost-per-click-through, an average insertion cost, or other criteria specifying a budget constraint for an advertisement. As such, tracking module 255 may track which advertisements are selected and/or presented, which advertisements result in a conversion or click-through, whether a click-through or conversion results in a transaction or sale, associations between advertisements and users, requests, concepts, semantic indicators, and/or other criteria. For example, tracking user interaction with advertisements may be used to build user-specific and/or global statistical profiles that map or cluster advertisements to topics, semantic indicators, contexts, concepts, etc. based on user behavior, demographics, targeting constraints, content of advertisements, content of requests, actions associated with requests, or other statistically relevant information. Accordingly, the tracking information may be used to bill or invoice advertisers 220, as well as to improve subsequent performance and relevance of advertisements selected using advertisement selection module 250. Other techniques and features of selecting and presenting advertisements based on voice-based inputs may suitably be employed, as would be apparent.


Referring to FIG. 3, an exemplary method for selecting and presenting advertisements based on a voice-based input is illustrated according to various aspects of the invention. The method may begin in an operation 305, where a voice-based input, including at least a user utterance, may be received at a voice user interface. The voice user interface may include any suitable mechanism for receiving the utterance (e.g., a microphone), and may interface with any suitable voice-enabled device, as would be apparent, including personal navigation devices, personal digital assistants, media devices, telematics devices, personal computers, mobile phones, or others.


Subsequently, one or more requests included in the voice-based input may be identified in an operation 310. For example, the requests may include requests to retrieve information, perform tasks, explore or gather information, or otherwise interact with a system or device. For example, a voice-based input to a navigation device may include a request to calculate a route or retrieve location-based information. In another example, a voice-based input to a mobile phone may include a request to place a telephone call, purchase a ringtone, or record a voice-memo. Furthermore, in various implementations, voice-based inputs may include multiple requests, multi-modal requests, cross-device requests, cross-application requests, or other types of requests. For example, an utterance received in operation 305 may be: “Get me a route to Chang's Restaurant, and call them so I can make a reservation.” The utterance may thus include multiple requests, including cross-device requests (e.g., calculate a route using a navigation device, and make a telephone call using a mobile phone), as well as cross-application requests (e.g., search for an address and/or phone number using a voice search engine, and calculate a route using a navigation application).


The requests may be part of a conversational interaction between a user and a system or device, whereby an interpretation of requests in a current utterance may be based upon previous utterances in a current conversation, utterances in previous conversations, context-based information, local and/or global user profiles, or other information. For example, a previous request may be reinterpreted based on information included in subsequent requests, a current request may be interpreted based on information included in previous requests, etc. Furthermore, the conversational interaction may take various forms, including query-based conversations, didactic conversations, exploratory conversations, or other types of conversations. For example, the conversational language processor may identify a type of conversation, and information may be extracted from the utterance accordingly to identify the one or more requests in operation 310. Moreover, the conversational language processor may determine whether any of the requests are incomplete or ambiguous, and action may be taken accordingly (e.g., a system response may prompt a user to clarify an incomplete and/or ambiguous request). The conversational language processor may therefore use various techniques to identify a conversation type, interpret utterances, identify requests, or perform other tasks, such as those described in the aforementioned U.S. Patent Applications and U.S. Patents, which are hereby incorporated by reference in their entirety.


Upon identifying the one or more requests, action may be taken based on the identified requests in an operation 315, while one or more advertisements may be selected in an operation 320 (described in greater detail below). For example, one or more context-appropriate applications may be invoked to service the requests in operation 315 (e.g., a voice search engine, a navigation application, an electronic commerce application, or other application may be invoked depending upon the request). Furthermore, in operation 320, information may be communicated to an advertising server to select one or more advertisements related to the request. Thus, as shown in FIG. 3, taking action in operation 315 and selecting advertisements in operation 320 may be related operations (e.g., advertisements may be selected to help in interpreting incomplete and/or ambiguous requests).


Upon taking action in operation 315 (e.g., to service the request) and selecting one or more advertisements in operation 320 (e.g., in relation to the request), an output may be presented to the user in operation 325. The output may indicate a result of the action associated with operation 315. For example, the output may include requested information, an indication of whether a requested task was successfully completed, whether additional information is needed to service the request (e.g., including a prompt for the information), or other information relating to an action based on the request. Furthermore, the output may include advertisements, as selected in operation 320. For example, the output may include text-based, graphic-based, video-based, audio-based, or other types of advertisements, as would be apparent to those skilled in the art. Further, the output may include other types of advertisements, including calls to action (e.g., a location-based coupon or purchase opportunity, trial downloads, or other actionable advertising or marketing).


Advertisements may be selected in relation to a request based on various criteria. For example, an advertisement may be selected based on words or other content of the request, relevant words or content related to the words or content of the request, etc. In another example, the advertisement may be selected based on requested tasks/information (e.g., a request for movie showtimes may result in an advertisement being selected for a particular theater). In yet another example, the advertisement may be selected based on a topic or category associated with the requested tasks/information (e.g., a request to purchase airline tickets may result in an advertisement being selected for a hotel in a destination associated with a reserved flight). In still other examples, the advertisement may be selected based on location information, (e.g., advertisements may be selected based on a proximity to a user geolocation identified using a navigation device), user-specific and/or global user profiles (e.g., advertisements may be selected based on user-specific and/or global preferences, advertiser campaign criteria, etc.).


Content of a voice-based input may be determined based on various criteria, including contextual or conceptual information (e.g., semantic indicators, qualifiers, or other information). For example, a given concept may include various semantically equivalent indicators having an identical meaning. Thus, for instance, a voice-based input may be “Play some tunes!” or “Play some music!” or other variants thereof, each of which may be interpreted as relating to a specific idea (or concept) of “Music.” Thus, concept or content information in a request may be used to select an advertisement. For example, a user may request to calculate a route in Seattle, Washington (e.g., “How do I get to the Space Needle?”). Based on a context of the requested task (e.g., “Navigation,” “Seattle,” etc.), a voice search engine may retrieve an address of the Space Needle and a navigation application may calculate the route. Furthermore, user profile information may indicate that the user is visiting Seattle from out-of-town (e.g., the profile may indicate that the user's home is Sacramento), and therefore, an advertisement for popular points-of-interest in Seattle may be selected. In another example, the user may request information about a sporting event (e.g., “Get me the kickoff time for the Eagles game on Sunday”). Based on a context of the requested information (e.g., “Search,” “Sports,” “Philadelphia,” etc.), the requested information may be retrieved, while an advertisement for Eagles apparel or memorabilia may be selected.


In various instances, concepts, semantic indicators, qualifiers, or other information included in, or inferred from, a request may indicate an exploratory nature for the request. In other words, the exploratory request may identify a goal for a conversation, instead of a particular task to perform or information to retrieve. As such, in various implementations, an advertisement may be selected in operation 320 in an effort to advance the conversation towards the goal. For example, an exploratory request may include a request for a navigation route (e.g., “I feel like going to a museum, find me something interesting”). Based on a context of the requested task (e.g., “Navigation,” “Points of Interest,” etc.), the goal of the conversation may be identified, and the request may be serviced in operation 315 (e.g., a voice search engine may locate nearby points of interest based on user preferred topics). Further, the advertising application may select an appropriate advertisement in operation 320, where the advertisement may be selected in an attempt to advance the conversation towards the goal. For example, statistical profiles (e.g., user profiles, global profiles, topic-based profiles, etc.) may reflect an affinity between an advertisement for a particular museum and other users sharing similar demographics or other characteristics with the requesting user. Thus, in addition to retrieving information about museums in operation 315, an advertisement for a museum likely to be of interest to the user may be selected in operation 320.


In various instances, a request may include incomplete, ambiguous, unrecognized, or otherwise insufficient semantic indicators, context, qualifiers, or other information needed to identify the request. In other words, the request may include inadequate information to identify or infer a task to perform, information to retrieve, or a goal for a conversation. Thus, as much information as possible may be extracted and/or inferred from the request based on shared knowledge such as context, user or global profile information, previous utterances, previous conversations, etc. As such, servicing the request may include generating a response and/or communicating with an advertising application to advance a conversation toward a serviceable request. For example, servicing the request in operation 315 and selecting an advertisement in operation 320 may include generating a response and/or selecting an advertisement to frame a subsequent user input, thereby advancing the conversation.


For example, the request may include incomplete, ambiguous, or unrecognized information (e.g., “Do you know [mumbled words] Seattle?”). A context of the requested task may be identified (e.g., “Seattle”), yet the identified context may be insufficient to adequately take action to service the request. Additional information may be inferred based on previous utterances in the conversation, profile information, or other information. However, when the additional information fails to provide adequate information to infer a reasonable hypothesis, servicing the request in operation 315 may include generating a response to frame a subsequent user input and advance the conversation (e.g., information about various topics may be retrieved based on a user's preferred topics). Further, the advertising application may select an advertisement in operation 320 to advance the conversation (e.g., advertisements may be selected based on user and/or global profiles reflecting an affinity between certain advertisements associated with Seattle and user preferences, profiles, etc.). Thus, by selecting an advertisement, indicating dissatisfaction with an advertisement, or otherwise interacting with an advertisement, the interaction may be used to build context and shared knowledge for a subsequent course of the conversation. For example, a user may select an advertisement, and an interpretation of a subsequent voice-based input (e.g., “Call them,” “What's the price range?” etc.) may be interpreted with shared knowledge of the advertisement that the voice-based input relates to. Thus, advertisements may be used in a way that enables advertisers to market to consumers, while also improving the consumers' interaction with a device. Other advantages will be apparent to those skilled in the art.


It will be apparent that operation 320 may use various techniques to select advertisements based on voice-based inputs and/or requests included therein. For example, an advertiser may specify a target audience, marketing criteria, campaign strategies, budget constraints, concepts, semantic indicators, related topics, categories, and/or any other suitable information to associate with an advertisement. For instance, advertisers may pay a premium to prioritize an advertisement in relation to similar advertisements (e.g., advertisements associated with competitors). In another example, various statistical profiles may define affinities between advertisements, topics, users, etc. (e.g., based on click-through or conversion rates, or other tracking information, as described in more detail below). Thus, advertisements may be selected in operation 320 using various techniques, including content of the request, an activity/action associated with the request, user profiles, user preferences, statistical metrics, advertiser-specified criteria, to advance a conversation, to resolve ambiguous requests, or in various other ways, as will be apparent.


The output presented to the user in operation 325 may be provided to the user in various ways. For example, in various implementations, the output may include a voice-based or otherwise audible response. In another example, when an associated device includes a display mechanism, the output may be displayed on the display device. It will be apparent that many combinations or variants thereof may be used, such as augmenting a voice-based response with information on a display device. For example, a user may request information about restaurants, and an advertisement may be selected based on a user preference indicating a favorite type of restaurant (e.g., a Chinese restaurant may be selected based on a user profile indicating a preference for Chinese). Therefore, in one example, the output presented in operation 325 may display information about various restaurants matching the requested information, while a voice-based advertisement for the Chinese restaurant may be played to the user (e.g., via a speaker or other suitable mechanism for playing voice back to the user). Many other variations will be apparent (e.g., a graphical advertisement may be displayed on a display device, while a corresponding or different voice-based advertisement may be played audibly).


Subsequent interaction between the user and the presented advertisements may be monitored in a decisional operation 330. For instance, when the user elects to interact with the advertisement, action may be taken based on the interaction in an operation 335. The interaction may take various forms, including additional voice-based inputs or other suitable mechanisms for interacting with advertisements (e.g., clicking on an advertisement displayed on a personal digital assistant using an associated stylus). For example, a user may initially request information from a voice-enabled media device (e.g., a satellite radio player) about a song currently playing (e.g., “What is this song?”). In addition to outputting the requested information about the song (e.g., “This song is Double Barrel by Dave and Ansel Collins.”), a selected advertisement may enable the user to purchase a ringtone for a mobile phone that corresponds to the song. In this example, the interaction may include a request to purchase the ringtone (e.g., “Yeah, I'll buy that”), and action taken in operation 335 may include completing a transaction for the ringtone and/or downloading the ringtone to the mobile phone. Furthermore, additional advertisements may be selected in an operation 340 based on the interaction, using similar techniques as described in connection with operation 320 (e.g., advertisements for additional ringtones, similar musicians, etc. may be selected). Processing may subsequently return to operation 325 to present output resulting from the interaction.


User advertisement interaction may be tracked in an operation 345. For example, operation 345 may track historical data about users, conversations, topics, contexts, or other criteria to associate information with the selected advertisement. The tracking information may therefore be used to build statistical profiles defining affinities, click-through or conversion rates, or other information about various advertisements, topics, or other criteria on a user-specific and/or a global-user level. Thus, clusters or mappings may be created between advertisements, topics, concepts, demographics, or other criteria based on user behavior with the advertisements (e.g., whether a user interacts with the advertisement in operation 330).


For instance, certain advertisements may experience high click-through rates in relation to a first context and/or topic, but low click-through rates in relation to a second context and/or topic, and therefore, when requests relate to the first context and/or topic, the advertisement may be more likely to be selected in subsequent operations 320/340. In another example, global statistical profiles may indicate that an advertisement experiences more click-throughs by users of a particular demographic, and therefore, the advertisement may be more likely to be selected for users falling within the demographic. Many different techniques for tracking and building statistical profiles will be apparent.


Implementations of the invention may be made in hardware, firmware, software, or any combination thereof. The invention may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). For example, a machine-readable storage medium may include read only memory, random access memory, magnetic disk storage media, optical storage media, flash memory devices, and others, and a machine-readable transmission media may include forms of propagated signals, such as carrier waves, infrared signals, digital signals, and others. Further, firmware, software, routines, or instructions may be described in the above disclosure in terms of specific exemplary aspects and implementations of the invention, and performing certain actions. However, it will be apparent that such descriptions are merely for convenience and that such actions in fact result from computing devices, processors, controllers, or other devices executing the firmware, software, routines, or instructions.


Aspects and implementations may be described as including a particular feature, structure, or characteristic, but every aspect or implementation may not necessarily include the particular feature, structure, or characteristic. Further, when a particular feature, structure, or characteristic is described in connection with an aspect or implementation, it will be apparent to effect such feature, structure, or characteristic in connection with other aspects or implementations whether or not explicitly described. Thus, various changes and modifications may be made, without departing from the scope and spirit of the invention. The specification and drawings are to be regarded as exemplary only, and the scope of the invention is to be determined solely by the appended claims.

Claims
  • 1. A method for selecting and presenting advertisements in response to processing natural language utterances, comprising: recognizing, at a server, one or more words or phrases in a natural language utterance that contains a request, wherein the server includes a speech recognition engine that recognizes the one or more words or phrases in the natural language utterance;interpreting the recognized words or phrases at a conversational language processor coupled to the server and the speech recognition engine to establish a context associated with the natural language utterance;delivering an advertisement in the established context associated with the natural language utterance from the server to an electronic device in communication with the server, wherein the advertisement relates to one or more of the recognized words or phrases, an action associated with the request, a personalized cognitive model derived from an interaction pattern associated with a specific user, a generalized cognitive model derived from an interaction pattern associated with a plurality of users, or an environmental model derived from environmental conditions or surroundings associated with the specific user;tracking, at the server, an interaction pattern associated with the advertisement delivered to the electronic device;updating, at the server, the personalized cognitive model, the generalized cognitive model, and the environmental model based on the tracked interaction pattern associated with the advertisement;building, at the server, long-term shared knowledge and short-term shared knowledge from the updated personalized cognitive model, the updated generalized cognitive model, and the updated environmental model; andinterpreting a subsequent natural language utterance at the conversational language processor using the long-term shared knowledge and the short-term shared knowledge.
  • 2. The method of claim 1, wherein the updated personalized cognitive model, the updated generalized cognitive model, and the updated environmental model provide statistical profiles to select one or more subsequent advertisements in response to the subsequent natural language utterance.
  • 3. The method of claim 2, wherein the statistical profiles identify one or more affinities between the advertisement delivered to the electronic device and one or more of the recognized words or phrases, the action associated with the request, the updated personalized cognitive model, the updated generalized cognitive model, or the updated environmental model.
  • 4. The method of claim 1, wherein the tracked interaction pattern associated with the advertisement includes information associated with a subsequent request in which the electronic device interacts with the advertisement.
  • 5. The method of claim 4, wherein the subsequent request in which the electronic device interacts with the advertisement includes the electronic device initiating a task or initiating a query relating to the advertisement.
  • 6. The method of claim 1 further comprising using, at the conversational language processor, the tracked interaction pattern associated with the advertisement to resolve the request in response to determining that the natural language utterance includes incomplete or ambiguous information.
  • 7. The method of claim 1, wherein the speech recognition engine recognizes the one or more words or phrases in the natural language utterance using a plurality of dictionary and phrase entries that are dynamically updated based on a history of a current dialog and one or more prior dialogs.
  • 8. The method of claim 7, wherein the plurality of dictionary and phrase entries are further dynamically updated based on one or more dynamic fuzzy set probabilities or prior probabilities derived from the history of the current dialog and the prior dialogs.
  • 9. A system to select and present advertisements in response to natural language utterances, comprising: a speech recognition engine configured to recognize one or more words or phrases in a natural language utterance that contains a request;a conversational language processor configured to interpret the recognized words or phrases to establish a context associated with the natural language utterance; anda server associated with the speech recognition engine and the conversational language processor, wherein the server is configured to: deliver an advertisement in the established context associated with the natural language utterance to an electronic device in communication with the server, wherein the advertisement relates to one or more of the recognized words or phrases, an action associated with the request contained in the utterance, a personalized cognitive model derived from an interaction pattern associated with a specific user, a generalized cognitive model derived from an interaction pattern associated with a plurality of users, or an environmental model derived from environmental conditions or surroundings associated with the specific user;track an interaction pattern associated with the advertisement delivered to the electronic device;update the personalized cognitive model, the generalized cognitive model, and the environmental model based on the tracked interaction pattern associated with the advertisement; andbuild long-term shared knowledge and, short-term shared knowledge from the updated personalized cognitive model, the updated generalized cognitive model, and the updated environmental model, wherein the conversational language processor is further configured to use the long-term shared knowledge and the short-term shared knowledge to interpret a subsequent natural language utterance.
  • 10. The system of claim 9, wherein the updated personalized cognitive model, the updated generalized cognitive model, and the updated environmental model provide statistical profiles to select one or more subsequent advertisements in response to the subsequent natural language utterance.
  • 11. The system of claim 10, wherein the statistical profiles identify one or more affinities between the advertisement delivered to the electronic device and one or more of the recognized words or phrases, the action associated with the request, the updated personalized cognitive model, the updated generalized cognitive model, or the updated environmental model.
  • 12. The system of claim 9, wherein the tracked interaction pattern associated with the advertisement includes information associated with a subsequent request in which the electronic device interacts with the advertisement.
  • 13. The system of claim 12, wherein the subsequent request in which the electronic device interacts with the advertisement includes a task that the electronic device initiated or a query that the electronic device initiated in relation to the advertisement.
  • 14. The system of claim 9 wherein the conversational language processor is further configured to use the tracked interaction pattern associated with the advertisement to resolve the request in response to the natural language utterance including incomplete or ambiguous information.
  • 15. The system of claim 9 wherein the speech recognition engine is configured to use a plurality of dictionary and phrase entries that are dynamically updated based on a history of a current dialog and one or more prior dialogs to recognize the one or more words or phrases in the natural language utterance.
  • 16. The system of claim 15 wherein the plurality of dictionary and phrase entries are further dynamically updated based on one or more dynamic fuzzy set probabilities or prior probabilities derived from the history of the current dialog and the prior dialogs.
  • 17. A method for selecting and presenting advertisements in response to processing natural language utterances, comprising: recognizing, at a speech recognition engine that executes on a server, one or more words or phrases in a natural language utterance;interpreting the one or more recognized words or phrases at a conversational language processor that executes on the server to establish a context associated with the natural language utterance;delivering an advertisement in the established context associated with the natural language utterance from the server to an electronic device in communication with the server;tracking, at the server, an interaction pattern associated with the advertisement delivered to the electronic device;updating, at the server, one or more models based on the tracked interaction pattern associated with the advertisement, wherein the one or more updated models include updated information associated with a specific user, updated information associated with a plurality of users, and updated information relating to environmental conditions or surroundings associated with the specific user; andinterpreting a subsequent natural language utterance at the conversational language processor using long-term shared knowledge and short-term shared knowledge derived from the updated information associated with the one or more updated models.
  • 18. A system to select and present advertisements in response to natural language utterances, comprising: a speech recognition engine configured to recognize one or more words or phrases in a natural language utterance;a conversational language processor configured to interpret the one or more recognized words or phrases to establish a context associated with the natural language utterance; anda server associated with the speech recognition engine and the conversational language processor, wherein the server is configured to: deliver an advertisement in the established context associated with the natural language utterance to an electronic device in communication with the server;track an interaction pattern associated with the advertisement delivered to the electronic device; andupdate, based on the tracked interaction pattern associated with the advertisement, one or more models to include updated information associated with a specific user, updated information associated with a plurality of users, and updated information relating to environmental conditions or surroundings associated with the specific user, wherein the conversational language processor is further configured to use long-term shared knowledge and short-term shared knowledge derived from the updated information associated with the one or more updated models to interpret a subsequent natural language utterance.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 11/671,526, entitled “System and Method for Selecting and Presenting Advertisements Based on Natural Language Processing of Voice-Based Input,” filed Feb. 6, 2007, which issued as U.S. Pat. No. 7,818,176 on Oct. 19, 2010, the contents of which are hereby incorporated by reference in their entirety.

US Referenced Citations (408)
Number Name Date Kind
4430669 Cheung Feb 1984 A
5027406 Roberts et al. Jun 1991 A
5155743 Jacobs Oct 1992 A
5208748 Flores et al. May 1993 A
5274560 LaRue Dec 1993 A
5357596 Takebayashi et al. Oct 1994 A
5377350 Skinner Dec 1994 A
5386556 Hedin et al. Jan 1995 A
5424947 Nagao et al. Jun 1995 A
5471318 Ahuja et al. Nov 1995 A
5475733 Eisdorfer et al. Dec 1995 A
5488652 Bielby et al. Jan 1996 A
5499289 Bruno et al. Mar 1996 A
5500920 Kupiec Mar 1996 A
5517560 Greenspan May 1996 A
5533108 Harris et al. Jul 1996 A
5537436 Bottoms et al. Jul 1996 A
5539744 Chu et al. Jul 1996 A
5557667 Bruno et al. Sep 1996 A
5563937 Bruno et al. Oct 1996 A
5577165 Takebayashi et al. Nov 1996 A
5590039 Ikeda et al. Dec 1996 A
5617407 Bareis Apr 1997 A
5633922 August et al. May 1997 A
5675629 Raffel et al. Oct 1997 A
5696965 Dedrick Dec 1997 A
5708422 Blonder et al. Jan 1998 A
5721938 Stuckey Feb 1998 A
5722084 Chakrin et al. Feb 1998 A
5740256 Castello Da Costa et al. Apr 1998 A
5742763 Jones Apr 1998 A
5748841 Morin et al. May 1998 A
5748974 Johnson May 1998 A
5752052 Richardson et al. May 1998 A
5754784 Garland et al. May 1998 A
5761631 Nasukawa Jun 1998 A
5774859 Houser et al. Jun 1998 A
5794050 Dahlgren et al. Aug 1998 A
5794196 Yegnanarayanan et al. Aug 1998 A
5797112 Komatsu et al. Aug 1998 A
5799276 Komissarchik et al. Aug 1998 A
5802510 Jones Sep 1998 A
5832221 Jones Nov 1998 A
5839107 Gupta et al. Nov 1998 A
5867817 Catallo et al. Feb 1999 A
5878385 Bralich et al. Mar 1999 A
5878386 Coughlin Mar 1999 A
5892813 Morin et al. Apr 1999 A
5895464 Bhandari et al. Apr 1999 A
5895466 Goldberg et al. Apr 1999 A
5897613 Chan Apr 1999 A
5902347 Backman et al. May 1999 A
5911120 Jarett et al. Jun 1999 A
5918222 Fukui et al. Jun 1999 A
5926784 Richardson et al. Jul 1999 A
5933822 Braden-Harder et al. Aug 1999 A
5953393 Culbreth et al. Sep 1999 A
5960397 Rahim Sep 1999 A
5960399 Barclay et al. Sep 1999 A
5960447 Holt et al. Sep 1999 A
5963894 Richardson et al. Oct 1999 A
5963940 Liddy et al. Oct 1999 A
5987404 Della Pietra et al. Nov 1999 A
5991721 Asano et al. Nov 1999 A
5995119 Cosatto et al. Nov 1999 A
5995928 Nguyen et al. Nov 1999 A
6009382 Martino et al. Dec 1999 A
6014559 Amin Jan 2000 A
6018708 Dahan et al. Jan 2000 A
6021384 Gorin et al. Feb 2000 A
6035267 Watanabe et al. Mar 2000 A
6044347 Abella et al. Mar 2000 A
6049602 Foladare et al. Apr 2000 A
6049607 Marash et al. Apr 2000 A
6058187 Chen May 2000 A
6067513 Ishimitsu May 2000 A
6078886 Dragosh et al. Jun 2000 A
6081774 De Hita et al. Jun 2000 A
6085186 Christianson et al. Jul 2000 A
6101241 Boyce et al. Aug 2000 A
6108631 Ruhl Aug 2000 A
6119087 Kuhn et al. Sep 2000 A
6134235 Goldman et al. Oct 2000 A
6144667 Doshi et al. Nov 2000 A
6144938 Surace et al. Nov 2000 A
6154526 Dahlke et al. Nov 2000 A
6160883 Jackson et al. Dec 2000 A
6167377 Gillick et al. Dec 2000 A
6173266 Marx et al. Jan 2001 B1
6173279 Levin et al. Jan 2001 B1
6175858 Bulfer et al. Jan 2001 B1
6185535 Hedin et al. Feb 2001 B1
6188982 Chiang Feb 2001 B1
6192110 Abella et al. Feb 2001 B1
6192338 Haszto et al. Feb 2001 B1
6195634 Dudemaine et al. Feb 2001 B1
6195651 Handel et al. Feb 2001 B1
6208964 Sabourin Mar 2001 B1
6208972 Grant et al. Mar 2001 B1
6219346 Maxemchuk Apr 2001 B1
6219643 Cohen et al. Apr 2001 B1
6226612 Srenger et al. May 2001 B1
6233556 Teunen et al. May 2001 B1
6233559 Balakrishnan May 2001 B1
6233561 Junqua et al. May 2001 B1
6246981 Papineni et al. Jun 2001 B1
6266636 Kosaka et al. Jul 2001 B1
6269336 Ladd et al. Jul 2001 B1
6272455 Hoshen et al. Aug 2001 B1
6275231 Obradovich Aug 2001 B1
6278968 Franz et al. Aug 2001 B1
6288319 Catona Sep 2001 B1
6292767 Jackson et al. Sep 2001 B1
6308151 Smith Oct 2001 B1
6314402 Monaco et al. Nov 2001 B1
6362748 Huang Mar 2002 B1
6366882 Bijl et al. Apr 2002 B1
6366886 Dragosh et al. Apr 2002 B1
6374214 Friedland et al. Apr 2002 B1
6377913 Coffman et al. Apr 2002 B1
6381535 Durocher et al. Apr 2002 B1
6385596 Wiser et al. May 2002 B1
6385646 Brown et al. May 2002 B1
6393428 Miller et al. May 2002 B1
6397181 Li et al. May 2002 B1
6404878 Jackson et al. Jun 2002 B1
6405170 Phillips et al. Jun 2002 B1
6408272 White et al. Jun 2002 B1
6411810 Maxemchuk Jun 2002 B1
6415257 Junqua et al. Jul 2002 B1
6418210 Sayko Jul 2002 B1
6420975 DeLine et al. Jul 2002 B1
6429813 Feigen Aug 2002 B2
6430285 Bauer et al. Aug 2002 B1
6430531 Polish Aug 2002 B1
6434523 Monaco Aug 2002 B1
6434524 Weber Aug 2002 B1
6442522 Carberry et al. Aug 2002 B1
6446114 Bulfer et al. Sep 2002 B1
6453153 Bowker et al. Sep 2002 B1
6453292 Ramaswamy et al. Sep 2002 B2
6456711 Cheung et al. Sep 2002 B1
6466654 Cooper et al. Oct 2002 B1
6466899 Yano et al. Oct 2002 B1
6470315 Netsch et al. Oct 2002 B1
6498797 Anerousis et al. Dec 2002 B1
6499013 Weber Dec 2002 B1
6501833 Phillips et al. Dec 2002 B2
6501834 Milewski et al. Dec 2002 B1
6510417 Woods et al. Jan 2003 B1
6513006 Howard et al. Jan 2003 B2
6522746 Marchok et al. Feb 2003 B1
6523061 Halverson et al. Feb 2003 B1
6532444 Weber Mar 2003 B1
6539348 Bond et al. Mar 2003 B1
6549629 Finn et al. Apr 2003 B2
6553372 Brassell et al. Apr 2003 B1
6556970 Sasaki et al. Apr 2003 B1
6556973 Lewin Apr 2003 B1
6560576 Cohen et al. May 2003 B1
6567778 Chao Chang et al. May 2003 B1
6567797 Schuetze et al. May 2003 B1
6570555 Prevost et al. May 2003 B1
6570964 Murveit et al. May 2003 B1
6574597 Mohri et al. Jun 2003 B1
6574624 Johnson et al. Jun 2003 B1
6581103 Dengler Jun 2003 B1
6587858 Strazza Jul 2003 B1
6591239 McCall et al. Jul 2003 B1
6594257 Doshi et al. Jul 2003 B1
6594367 Marash et al. Jul 2003 B1
6598018 Junqua Jul 2003 B1
6604075 Brown et al. Aug 2003 B1
6604077 Dragosh et al. Aug 2003 B2
6606598 Holthouse et al. Aug 2003 B1
6611692 Raffel et al. Aug 2003 B2
6614773 Maxemchuk Sep 2003 B1
6615172 Bennett et al. Sep 2003 B1
6622119 Ramaswamy et al. Sep 2003 B1
6629066 Jackson et al. Sep 2003 B1
6631346 Karaorman et al. Oct 2003 B1
6633846 Bennett et al. Oct 2003 B1
6643620 Contolini et al. Nov 2003 B1
6650747 Bala et al. Nov 2003 B1
6658388 Kleindienst et al. Dec 2003 B1
6678680 Woo Jan 2004 B1
6681206 Gorin et al. Jan 2004 B1
6691151 Cheyer et al. Feb 2004 B1
6701294 Ball et al. Mar 2004 B1
6704708 Pickering Mar 2004 B1
6708150 Hirayama et al. Mar 2004 B1
6721001 Berstis Apr 2004 B1
6721706 Strubbe et al. Apr 2004 B1
6735592 Neumann et al. May 2004 B1
6741931 Kohut et al. May 2004 B1
6742021 Halverson et al. May 2004 B1
6751591 Gorin et al. Jun 2004 B1
6751612 Schuetze et al. Jun 2004 B1
6754485 Obradovich et al. Jun 2004 B1
6757718 Halverson et al. Jun 2004 B1
6795808 Strubbe et al. Sep 2004 B1
6801604 Maes et al. Oct 2004 B2
6801893 Backfried et al. Oct 2004 B1
6829603 Chai et al. Dec 2004 B1
6832230 Zilliacus et al. Dec 2004 B1
6833848 Wolff et al. Dec 2004 B1
6856990 Barile et al. Feb 2005 B2
6865481 Kawazoe et al. Mar 2005 B2
6868380 Kroeker Mar 2005 B2
6877134 Fuller et al. Apr 2005 B1
6901366 Kuhn et al. May 2005 B1
6910003 Arnold et al. Jun 2005 B1
6912498 Stevens et al. Jun 2005 B2
6934756 Maes Aug 2005 B2
6937977 Gerson Aug 2005 B2
6944594 Busayapongchai et al. Sep 2005 B2
6950821 Faybishenko et al. Sep 2005 B2
6954755 Reisman Oct 2005 B2
6959276 Droppo et al. Oct 2005 B2
6968311 Knockeart et al. Nov 2005 B2
6973387 Masclet et al. Dec 2005 B2
6975993 Keiller Dec 2005 B1
6980092 Turnbull et al. Dec 2005 B2
6983055 Luo Jan 2006 B2
6990513 Belfiore et al. Jan 2006 B2
6996531 Korall et al. Feb 2006 B2
7003463 Maes et al. Feb 2006 B1
7016849 Arnold et al. Mar 2006 B2
7020609 Thrift et al. Mar 2006 B2
7024364 Guerra et al. Apr 2006 B2
7027975 Pazandak et al. Apr 2006 B1
7035415 Belt et al. Apr 2006 B2
7043425 Pao May 2006 B2
7054817 Shao May 2006 B2
7058890 George et al. Jun 2006 B2
7062488 Reisman Jun 2006 B1
7069220 Coffman et al. Jun 2006 B2
7072834 Zhou Jul 2006 B2
7082469 Gold et al. Jul 2006 B2
7092928 Elad et al. Aug 2006 B1
7107210 Deng et al. Sep 2006 B2
7110951 Lemelson et al. Sep 2006 B1
7127400 Koch Oct 2006 B2
7136875 Anderson et al. Nov 2006 B2
7137126 Coffman et al. Nov 2006 B1
7143037 Chestnut Nov 2006 B1
7146319 Hunt Dec 2006 B2
7165028 Gong Jan 2007 B2
7197069 Agazzi et al. Mar 2007 B2
7203644 Anderson et al. Apr 2007 B2
7206418 Yang et al. Apr 2007 B2
7228276 Omote et al. Jun 2007 B2
7231343 Treadgold et al. Jun 2007 B1
7236923 Gupta Jun 2007 B1
7277854 Bennett et al. Oct 2007 B2
7289606 Sibal et al. Oct 2007 B2
7301093 Sater et al. Nov 2007 B2
7305381 Poppink et al. Dec 2007 B1
7337116 Charlesworth et al. Feb 2008 B2
7340040 Saylor et al. Mar 2008 B1
7366669 Nishitani et al. Apr 2008 B2
7376645 Bernard May 2008 B2
7386443 Parthasarathy et al. Jun 2008 B1
7398209 Kennewick et al. Jul 2008 B2
7406421 Odinak et al. Jul 2008 B2
7415414 Azara et al. Aug 2008 B2
7424431 Greene et al. Sep 2008 B2
7447635 Konopka et al. Nov 2008 B1
7461059 Richardson et al. Dec 2008 B2
7472020 Brulle-Drews Dec 2008 B2
7472060 Gorin et al. Dec 2008 B1
7478036 Shen et al. Jan 2009 B2
7487088 Gorin et al. Feb 2009 B1
7493259 Jones et al. Feb 2009 B2
7493559 Wolff et al. Feb 2009 B1
7502738 Kennewick et al. Mar 2009 B2
7516076 Walker et al. Apr 2009 B2
7536297 Byrd et al. May 2009 B2
7536374 Au May 2009 B2
7558730 Davis et al. Jul 2009 B2
7574362 Walker et al. Aug 2009 B2
7606708 Hwang Oct 2009 B2
7620549 Di Cristo et al. Nov 2009 B2
7634409 Kennewick et al. Dec 2009 B2
7640160 Di Cristo et al. Dec 2009 B2
7676365 Hwang et al. Mar 2010 B2
7676369 Fujimoto et al. Mar 2010 B2
7693720 Kennewick et al. Apr 2010 B2
7729918 Walker et al. Jun 2010 B2
7788084 Brun et al. Aug 2010 B2
7809570 Kennewick et al. Oct 2010 B2
7818176 Freeman et al. Oct 2010 B2
7831433 Belvin et al. Nov 2010 B1
7873523 Potter et al. Jan 2011 B2
7902969 Obradovich Mar 2011 B2
7917367 Di Cristo et al. Mar 2011 B2
7949529 Weider et al. May 2011 B2
7949537 Walker et al. May 2011 B2
7983917 Kennewick et al. Jul 2011 B2
8015006 Kennewick et al. Sep 2011 B2
8069046 Kennewick et al. Nov 2011 B2
8073681 Baldwin et al. Dec 2011 B2
8086463 Ativanichayaphong et al. Dec 2011 B2
20010041980 Howard et al. Nov 2001 A1
20010049601 Kroeker et al. Dec 2001 A1
20020015500 Belt et al. Feb 2002 A1
20020022927 Lemelson et al. Feb 2002 A1
20020035501 Handel et al. Mar 2002 A1
20020049805 Yamada et al. Apr 2002 A1
20020065568 Silfvast et al. May 2002 A1
20020069059 Smith Jun 2002 A1
20020082911 Dunn et al. Jun 2002 A1
20020087525 Abbott et al. Jul 2002 A1
20020120609 Lang et al. Aug 2002 A1
20020124050 Middeljans Sep 2002 A1
20020138248 Corston-Oliver et al. Sep 2002 A1
20020143535 Kist et al. Oct 2002 A1
20020188602 Stubler et al. Dec 2002 A1
20020198714 Zhou Dec 2002 A1
20030014261 Kageyama Jan 2003 A1
20030016835 Elko et al. Jan 2003 A1
20030046346 Mumick et al. Mar 2003 A1
20030064709 Gailey et al. Apr 2003 A1
20030088421 Maes et al. May 2003 A1
20030097249 Walker et al. May 2003 A1
20030110037 Walker et al. Jun 2003 A1
20030112267 Belrose Jun 2003 A1
20030115062 Walker et al. Jun 2003 A1
20030120493 Gupta Jun 2003 A1
20030135488 Amir et al. Jul 2003 A1
20030144846 Denenberg et al. Jul 2003 A1
20030158731 Falcon et al. Aug 2003 A1
20030182132 Niemoeller Sep 2003 A1
20030204492 Wolf et al. Oct 2003 A1
20030206640 Malvar et al. Nov 2003 A1
20030212550 Ubale Nov 2003 A1
20030236664 Sharma Dec 2003 A1
20040006475 Ehlen et al. Jan 2004 A1
20040025115 Sienel et al. Feb 2004 A1
20040044516 Kennewick et al. Mar 2004 A1
20040098245 Walker et al. May 2004 A1
20040166832 Portman et al. Aug 2004 A1
20040167771 Duan et al. Aug 2004 A1
20040193408 Hunt Sep 2004 A1
20040193420 Kennewick et al. Sep 2004 A1
20040199375 Ehsani et al. Oct 2004 A1
20040205671 Sukehiro et al. Oct 2004 A1
20040243417 Pitts, III et al. Dec 2004 A9
20050015256 Kargman Jan 2005 A1
20050021334 Iwahashi Jan 2005 A1
20050021826 Kumar Jan 2005 A1
20050033574 Kim et al. Feb 2005 A1
20050043940 Elder Feb 2005 A1
20050114116 Fiedler May 2005 A1
20050137850 Odell Jun 2005 A1
20050137877 Oesterling et al. Jun 2005 A1
20050143994 Mori et al. Jun 2005 A1
20050246174 DeGolia Nov 2005 A1
20060206310 Ravikumar et al. Sep 2006 A1
20070033005 Cristo et al. Feb 2007 A1
20070033020 (Kelleher) Francois et al. Feb 2007 A1
20070038436 Cristo et al. Feb 2007 A1
20070043574 Coffman et al. Feb 2007 A1
20070050191 Weider et al. Mar 2007 A1
20070055525 Kennewick et al. Mar 2007 A1
20070073544 Millett et al. Mar 2007 A1
20070118357 Kasravi et al. May 2007 A1
20070179778 Gong et al. Aug 2007 A1
20070186165 Maislos et al. Aug 2007 A1
20070214182 Rosenberg Sep 2007 A1
20070250901 McIntire et al. Oct 2007 A1
20070265850 Kennewick et al. Nov 2007 A1
20070299824 Pan et al. Dec 2007 A1
20080065386 Cross et al. Mar 2008 A1
20080091406 Baldwin et al. Apr 2008 A1
20080103761 Printz et al. May 2008 A1
20080115163 Gilboa et al. May 2008 A1
20080133215 Sarukkai Jun 2008 A1
20080140385 Mahajan et al. Jun 2008 A1
20080177530 Cross et al. Jul 2008 A1
20080189110 Freeman et al. Aug 2008 A1
20080235023 Kennewick et al. Sep 2008 A1
20080235027 Cross Sep 2008 A1
20080319751 Kennewick et al. Dec 2008 A1
20090117885 Roth May 2009 A1
20090144271 Richardson et al. Jun 2009 A1
20090150156 Kennewick et al. Jun 2009 A1
20090171664 Kennewick et al. Jul 2009 A1
20090216540 Tessel et al. Aug 2009 A1
20090271194 Davis et al. Oct 2009 A1
20090299745 Kennewick et al. Dec 2009 A1
20100023320 Di Cristo et al. Jan 2010 A1
20100049501 Kennewick et al. Feb 2010 A1
20100049514 Kennewick et al. Feb 2010 A1
20100057443 Di Cristo et al. Mar 2010 A1
20100063880 Atsmon et al. Mar 2010 A1
20100145700 Kennewick et al. Jun 2010 A1
20100204986 Kennewick et al. Aug 2010 A1
20100204994 Kennewick et al. Aug 2010 A1
20100217604 Baldwin et al. Aug 2010 A1
20100286985 Kennewick et al. Nov 2010 A1
20110112827 Kennewick et al. May 2011 A1
20110112921 Kennewick et al. May 2011 A1
20110131036 Di Cristo et al. Jun 2011 A1
20110131045 Cristo et al. Jun 2011 A1
20110231182 Weider et al. Sep 2011 A1
20110231188 Kennewick et al. Sep 2011 A1
20120022857 Baldwin et al. Jan 2012 A1
Foreign Referenced Citations (16)
Number Date Country
1 320 043 Jun 2003 EP
1 646 037 Apr 2006 EP
WO 9946763 Sep 1999 WO
WO 0021232 Apr 2000 WO
WO 0046792 Aug 2000 WO
WO 2004072954 Aug 2001 WO
WO 0178065 Oct 2001 WO
WO 2007019318 Feb 2007 WO
WO 2007021587 Feb 2007 WO
WO 2007027546 Mar 2007 WO
WO 2007027989 Mar 2007 WO
WO 2008098039 Aug 2008 WO
WO 2008118195 Oct 2008 WO
WO 2009075912 Jun 2009 WO
WO 2009145796 Dec 2009 WO
WO 2010096752 Aug 2010 WO
Related Publications (1)
Number Date Country
20100299142 A1 Nov 2010 US
Continuations (1)
Number Date Country
Parent 11671526 Feb 2007 US
Child 12847564 US