Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20070288444 A1
Publication typeApplication
Application numberUS 11/843,972
Publication dateDec 13, 2007
Filing dateAug 23, 2007
Priority dateMay 6, 2003
Also published asUS20050187913
Publication number11843972, 843972, US 2007/0288444 A1, US 2007/288444 A1, US 20070288444 A1, US 20070288444A1, US 2007288444 A1, US 2007288444A1, US-A1-20070288444, US-A1-2007288444, US2007/0288444A1, US2007/288444A1, US20070288444 A1, US20070288444A1, US2007288444 A1, US2007288444A1
InventorsYoram Nelken, Randy Jessee, Steve Kirshner
Original AssigneeInternational Business Machines Corporation
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Web-based customer service interface
US 20070288444 A1
Abstract
A system and method for processing a web-based query is provided. The system comprises a web server for transmitting a web form having a text field box for entering a natural language query, and a language analysis server for extracting concepts from the natural language query and classifying the natural language query into predefined categories via computed match scores based upon the extracted concepts and information contained within an adaptable knowledge base. In various embodiments, the web server selectively transmits either a resource page or a confirmation page to the client, based upon the match scores. The resource page may comprise at least one suggested response corresponding to at least one predefined category. The language analysis server may adapt the knowledge base in accordance with a communicative action received from the client after the resource page is transmitted.
Images(7)
Previous page
Next page
Claims(13)
1-10. (canceled)
11. A method for processing a web-based query, comprising:
transmitting a web page to a client for display, the web page including at least one user-interactable element for entering a natural language query and the web form including meta-data that is not associated with the natural language query's content;
receiving the natural language query and the meta-data from the client;
analyzing the natural language query and the meta-data to classify the natural language query into at least one predefined category using information contained within a knowledge base; and
selectively transmitting a resource page to the client for display, the resource page including at least one suggested response and optionally other data corresponding to the at least one predefined category.
12. The method of claim 11, further comprising:
receiving a communicative action from the client; and
adapting the knowledge base in accordance with the communicative action.
13. The method of claim 11, further comprising:
calculating a set of match scores, each match score of the set of match scores corresponding to one of a plurality of predefined categories and being representative of a confidence level that the natural language query is relevant to the one of the plurality of predefined categories; and
classifying the natural language query into the at least one predefined category based on a match score associated therewith.
14. The method of claim 13, further comprising routing the natural language query to an agent if none of the match scores of the set of match scores meet a predetermined threshold level.
15. The method of claim 13, further comprising routing the natural language query to an agent based upon an analysis of the set of match scores according to a predetermined logic.
16. The method of claim 15, further comprising transmitting to the client a confirmation page confirming that the natural language query has been routed to the agent.
17. The method of claim 15, further comprising updating the knowledge base according to the agent's response to the natural language query.
18. The method of claim 13, further comprising transmitting a solution page to the client if at least one match score of the set of match scores meet a predetermined high-threshold level.
19. The method of claim 13, further comprising transmitting a solution page to the client based upon an analysis of the set of match scores according to a predetermined logic.
20. The method of claim 11, wherein the other data comprises one or more links to web resources.
21. A computer-readable storage medium having embodied thereon a program, the program being executable by a computer to perform a method for processing a web-based query, the method comprising:
transmitting a web page to a client for display, the web page including at least one user-interactable element for entering a natural language query and the web form including meta-data that is not associated with the natural language query's content;
receiving the natural language query and the meta-data from the client;
analyzing the natural language query and the meta-data to classify the natural language query into at least one predefined category using information contained within a knowledge base; and
selectively transmitting a resource page to the client for display, the resource page including at least one suggested response and optionally other data corresponding to the at least one predefined category.
22. A method for processing a web-based query, comprising:
means for transmitting a web page to a client for display, the web page including at least one user-interactable element for entering a natural language query and the web form including meta-data that is not associated with the natural language query's content;
means for receiving the natural language query and the meta-data from the client;
means for analyzing the natural language query and the meta-data to classify the natural language query into at least one predefined category using information contained within a knowledge base; and
means for selectively transmitting a resource page to the client for display, the resource page including at least one suggested response and optionally other data corresponding to the at least one predefined category.
Description
CROSS-REFERENCE TO RELATED APPLICATION

This application claims the priority and benefit of U.S. Provisional Patent Application Ser. No. 60/468,576 entitled “Web-Based Customer Service Interface,” filed on May 6, 2003, which is hereby incorporated by reference. This application is related to patent application Ser. No. ______, entitled, “System and Method for Electronic Communication Management,” herein incorporated by reference, filed on an even date herewith.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to electronic communications and relates more particularly to a system and method for a web-based customer service interface.

2. Description of the Background Art

In a typical organization, communications with customers and others may occur via a variety of different channels. In addition to traditional channels such as letters and telephone calls, customers may also communicate with an organization via electronic mail, facsimile, web-based forms, web-based chat, and wireless communication and voice. An organization will most likely incorporate these and any other newly developed communication channels to allow customers to communicate in a way they find most convenient.

Many of the communication channels mentioned above contain information that is unstructured in nature, usually expressed in natural language. Different customers may make identical requests each in a unique way, using different communication channels, different words and expressions, or both. Human agents are usually required to review each natural language communication to evaluate the customer's intent, and to determine what information or action would be responsive to that intent.

Agents typically must look to various sources to gather all of the information required to respond appropriately to a customer communication. The information may be retrieved from a variety of sources, such as legacy systems, databases, back office systems, and front office systems. Each of these sources may store data in a unique structure or format. An agent typically gathers and organizes the required information from one or more of these information sources and uses the information to compose an appropriate content-rich reply that is responsive to the customer's intent.

Utilizing people to respond to customer communications is often inefficient. In addition, an increase in the number of communications received by an organization typically requires an even larger increase in the number of people required to provide an acceptable level of customer service.

Several types of automatic systems exist for responding to customer communications. Rule-based systems, keyword-based systems, and statistical systems typically do not perform with the necessary accuracy to substantially automate business processes, such as responding to customer inquiries, and require a large investment in resources to keep them up-to-date. Many learning systems utilize a training set of data that is a poor representation of the system's world, which reduces the accuracy of the system and makes the process of updating the system very cumbersome.

SUMMARY OF THE INVENTION

The present invention provides a system and method for processing a web-based query. In one embodiment of the invention, the system comprises a web server for transmitting a web form having at least one text field box for entering a natural language query to a client, and a language analysis server for analyzing the natural language query and optional meta-data received from the client to classify the natural language query into at least one predefined category based on information contained within a knowledge base. The web server is further configured to selectively transmit a resource page to the client, where the resource page includes at least one suggested response and optionally other data corresponding to at least one predefined category. In addition, the web server is further configured to receive a communicative action from the client after the resource page is transmitted, wherein the language analysis server may adapt the knowledge base in accordance with the communicative action.

In one embodiment of the invention, the language analysis server classifies the natural language query into predefined categories based on computed match scores, where each match score corresponds to one of the predefined categories. Furthermore, each match score is representative of a confidence level that the natural language query is relevant to a corresponding predefined category. The language analysis server calculates each match score based upon a comparison of concepts extracted from the natural language query to concepts associated with the predefined categories. Each match score is representative of a statistical likelihood of the natural language query being correctly classified to the corresponding predefined category

In another embodiment of the invention, the language analysis server routes the natural language query to an agent based upon an analysis of the computed match scores according to a predetermined logic (e.g., if none of the computed match scores meet a predetermined threshold level). In yet another embodiment, the language analysis server transmits a solution page to the client based upon an analysis of the computed match scores according to the predetermined logic (e.g., if at least one match score meets a predetermined high-threshold level).

In accordance with the invention, the method comprises transmitting a web page having at least one user-interactable element for entering a natural language query and optional meta-data to a client, receiving the natural language query and the optional meta-data, analyzing the natural language query to classify the natural language query into at least one predefined category using information contained within a knowledge base, and selectively transmitting a resource page to the client. The resource page includes at least one suggested response and optionally other data corresponding to at least one predefined category.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an exemplary block diagram of a customer service network for processing an electronic query, according to one embodiment of the invention;

FIG. 2 is an exemplary embodiment of the customer service interface illustrated in FIG. 1, according to one embodiment of the invention;

FIG. 3A illustrates an exemplary embodiment of a contact-us page, according to the invention;

FIG. 3B illustrates an exemplary embodiment of the drop-down box component illustrated in FIG. 3A, according to one embodiment of the invention;

FIG. 3C illustrates an exemplary embodiment of the text field box illustrated in FIG. 3A, according to one embodiment of the invention;

FIG. 4 illustrates one embodiment of the language analysis server illustrated in FIG. 2, according to one embodiment of the invention;

FIG. 5 illustrates an exemplary communication-flow diagram for processing an electronic query as implemented by the customer service network illustrated in FIG. 1, according to one embodiment of the invention; and

FIG. 6 illustrates exemplary method steps for processing an electronic query, according to one embodiment of the invention.

DETAILED DESCRIPTION

FIG. 1 is an exemplary block diagram of a customer service network 100 for processing an electronic query, according to one embodiment of the present invention. The customer service network 100 comprises a client 105, a network 110 (e.g., the Internet), and a customer service interface 115. The client 105 may comprise a browser 120 for browsing Internet web sites. According to one embodiment of the invention, the customer service interface 115 receives, classifies, and automatically responds to electronic queries submitted by the client 105 via the network 110. The customer service interface 115 is discussed further below in conjunction with FIG. 2.

FIG. 2 is an exemplary embodiment of the customer service interface 115 illustrated in FIG. 1, according to one embodiment of the invention. The customer service interface 115 comprises a server 205, a language analysis server 210, and a knowledge base 215. In an alternate embodiment, the language analysis server 210 and the knowledge base 215 may be integrated in a single module. The server 205 preferably comprises a web-server 220 for providing web services to the client 105 (FIG. 1). For example, the web-server 220 may submit a contact-us page to the client 105. The contact-us page allows a user to address an electronic query to the customer service interface 115, and is discussed further below in conjunction with FIGS. 3A-3C. In addition, the server 205 utilizes a script 225 for processing communications (i.e., queries) from the client 105. The script 205 may be any configurable or non-configurable mechanism for routing information between various components of the customer service interface 115. The communications received by the server 205 contain data or information that is structured and unstructured in nature. For example, the communications typically contain unstructured information expressed in natural language. Each individual client correspondent may compose a communication in a unique way, even when requesting the same type of information from the customer service interface 115. In addition, the communications may contain structured information, such as meta-data associated with the communication, and queries in which the client correspondent selects structured text displayed in drop-down menu boxes. Meta-data may additionally include, for example, information not explicitly provided by the client correspondent, and information regarding client correspondent attributes accessible to the customer service interface 115. In one embodiment of the invention, the script 225 parses the received communications, and sends the parsed information to the language analysis server 210 for further analysis.

The language analysis server 210 analyzes and classifies the electronic query comprising any combination of natural language text, structured text, and structured data (e.g., meta-data) into predefined categories stored in the knowledge base 215, based upon linguistic modeling rules and concepts associated with the predefined categories. In one embodiment, the language analysis server 210 linguistically analyzes the query based upon content and context of the query, and classifies the query to one or more of the predefined categories stored in the knowledge base 215 based upon a match score derived from a statistical comparison of concepts extracted from the query to concepts associated with the one or more predefined categories. In another embodiment, the language analysis server 210 analyzes the query (i.e., extracts concepts from the query) to match the query to the one or more predefined categories using standard search techniques. The language analysis server 210 is discussed further below in conjunction with FIG. 4.

The knowledge base 215 is a branching network of nodes arranged in a vertically structured hierarchy (i.e., tree hierarchy) that represent the various predefined categories. Logically related predefined categories are associated with a branch, which in turn may be associated with a branch of larger scope. Creation of the hierarchies can be either manual (via a configuration tool or an API), automatic by monitoring feedback received via the client 105 or an agent, or a combination, whereby an automatic tool displays suggestions according to performance of the customer service interface 115. A user may then create the hierarchies based upon the suggestions. The knowledge base 215 may also include flat hierarchies as a special case of tree hierarchies. An embodiment of the language analysis server 210 and the knowledge base 215 are discussed in more detail in patent application Ser. No. ______, entitled, “System and Method for Electronic Communication Management,” herein incorporated by reference, filed on an even date herewith.

FIG. 3A illustrates an exemplary embodiment of a contact-us page 310, as composed by the customer service interface 115 (FIG. 2) and transmitted to the client 105 (FIG. 1) via the network 110 (FIG. 1). The contact-us page 310 may include a selectable text box 320 and a text field box 330 for insertion of natural language text. In other embodiments, the contact-us page 310 comprises multiple fields.

FIG. 3B illustrates an exemplary embodiment of the selectable text box 320 illustrated in FIG. 3A, according to one embodiment of the invention. The selectable text box 320 may include a plurality of drop-down boxes 322 that comprise predefined questions or statements, selectable by a user. For example, if the customer service interface 1 15 services a financial institution, then the drop-down boxes 322 may include statements corresponding to customer service issues such as loans, new accounts, PIN numbers, monetary transfers, among others.

FIG. 3C illustrates an exemplary embodiment of the text field box 330 illustrated in FIG. 3A, according to one embodiment of the invention. The text field box 330 comprises a selectable area in which the user may compose a natural language message to the customer service interface 115. For example, the user may not be able to access an electronic application for financial aid, partially completed and saved on a server of the financial institution during a previous session. The user may compose a message in the text field box 330, comprising, for example, “A PIN number was sent to me when I electronically applied for financial aid. However, that PIN number does not allow me access to my financial aid account. Could you please rectify the situation?” As described in more detail below in conjunction with FIGS. 5-6, the customer service interface 115 classifies and responds to the message, either via a list of suggested responses, a direct link to a “solutions page,” or a confirmation page to the client that the query is being routed to an agent for further analysis.

FIG. 4 illustrates one embodiment of the language analysis server 210 as illustrated in FIG. 2, according to one embodiment of the invention. The language analysis server 210 comprises a modeling application 410 and a language modeling engine 415. The modeling application serves as an interface to the server 205 for receiving and transmitting communications. In addition, the modeling application 410 may compare match scores (computed by the language modeling engine 415 in classifying the query to predefined categories) with various predefined threshold scores to determine the nature of the automated response to the client 105. The basis of the automated response to the client's query is discussed below in further detail in association with FIGS. 5-6.

The language modeling engine 415 analyzes and classifies natural language text, structured text, and meta-data into predefined categories stored in the knowledge base 215. For example, the language modeling engine 415 analyzes the text and the meta-data by application of linguistic and morphological models to extract concepts. The language modeling engine 415 then computes match scores based upon a comparison of the extracted concepts with rules and concepts associated with the predefined categories stored in the knowledge base 215. The computation of the match scores and further details of the knowledge base 215 are discussed below in conjunction with FIGS. 5-6.

FIG. 5 is an exemplary communication-flow diagram for processing an electronic query as implemented by the customer service network 100 illustrated in FIG. 1, according to one embodiment of the invention. First, the web-server 220 (FIG. 2) serves a contact-us page 310 (FIG. 3A) to the client 105 (FIG. 1) via a communication 510. The client 105 responds to the contact-us page 310 via a communication 512. For example, the client 105 may respond to the contact-us page 310 (hereinafter referred to as a client query, or simply a query) by selecting specific choices displayed in the drop-down boxes 322 (FIG. 3B), by composing a natural language text in the text field box 330 (FIG. 3C), or both. The web-server 220 receives the client query and routes the query to the script 225 (FIG. 2). The script 225 processes the query, and routes the query to the language analysis server 210 (FIG. 2) via a communication 514.

The language analysis server 210 linguistically and/or morphologically analyzes the query based upon content and context of the query, and classifies the query to one or more of the predefined categories stored in the knowledge base 215 (FIG. 2) via a communication 516. In one embodiment of the invention, the language analysis server 210 classifies the query into the one or more predefined categories based upon a match score derived from a statistical comparison of concepts extracted from the query to concepts associated with the one or more predefined categories. The language analysis server 210 may utilize meta-data in addition to conceptual data extracted from the query to classify the query to the one or more predefined categories. For example, meta-data includes peripheral data not typically associated with content of the query (i.e., with the natural language text and/or drop-down box selections). For example, if the customer service interface 115 (FIG. 2) services a financial institution, then the peripheral data may include user name, user account number, or customer service plan afforded the user. In accordance with a preferred embodiment of the invention, the language analysis server 210 comprises classification techniques as disclosed in patent application Ser. No. ______, entitled, “System and Method for Electronic Communication Management,” herein incorporated by reference, filed on an even date herewith. However, the scope of the present invention covers standard classification techniques well known in the art.

In one embodiment of the invention, the language analysis server 210 computes, for each predefined category, a match score based upon concepts associated with the predefined categories, concepts extracted from the query, and metadata. In an exemplary embodiment of the invention, suppose that the customer service interface 115 services a motorcycle parts and equipment distribution house. Additionally, suppose that the knowledge base 215 has the following three predefined categories: a first predefined category entitled “new parts order,” a second predefined category entitled “complaints,” and a third predefined category entitled “suggestions.” A client correspondent submits to the server 205 a query comprising a natural language text that states, for example, “I am unhappy with the head gasket that you shipped me for my 1955 BMW R50/2. The surface of the replacement gasket is cross-hatched (unlike the original), leading to reduced power and oil leakage. Please either refund my purchase, credit my account or send me the correct gasket.” In response to this query, the language analysis server 210 computes a first, a second, and a third match score in classifying the query to the first, the second, and the third predefined categories, respectively, where the second match score is greater than the first match score, and the first match score is greater than the third match score. For example, the second match score may be 95, the first match score may be 42, and the third match score may be 16.

In one embodiment of the invention, each of the predefined categories has a corresponding resource, or linked suggested response in the knowledge base 215, and the relative values of the computed match scores are indicative of a level of confidence of the corresponding suggested responses to answer the query or of the relevancy of the resource to the query. For example, the second match score of 95 (relative to the first and third match scores of 42 and 16, respectively) indicates that the query is more likely to be resolved by the suggested response associated with the second predefined category than the suggested responses associated with the first or third predefined categories.

Next, the language analysis server 210 sends the suggested responses and corresponding match scores to the server 205 via a communication 518. In one embodiment of the invention, the customer service interface 115 is configured to respond to the communication 518 via either a first set of communications (i.e., communications 520, 522, and 524) or a second set of communications initiated by a communication 526, depending upon the corresponding match scores as described below.

If each of the corresponding match scores is less than a predetermined threshold score (where each predefined category may have a different predetermined threshold score), or based upon an analysis of the match scores according to a predetermined logic, then the customer service interface 115 responds via the first set of communications. The predetermined logic includes any functional analysis of the match scores, exemplary embodiments of which include, but are not limited to, computations of an average match score, a median match score, a match score standard deviation, or other types of statistical and/or numerical functional analyses. In an exemplary embodiment of the first set of communications, the server 205 sends a confirmation page to the client 105 via a communication 520. The confirmation page informs the client 105 that the query will be routed to an agent for further analysis. The communication 520 may comprise additional information such as when the client 105 may expect to receive a reply from the agent, for example. In addition, the language analysis server 210 routes the query to the agent for further analysis via a communication 522. The agent may then reply to the client's query, preferably via an electronic message. However the agent may also respond to the query via alternate communication channels, such as a telephone, a Web-based reply, or other means of electronic communication. Optionally, the language analysis server 210 may analyze the agent's reply, and, based upon the analysis, update the knowledge base 215 via a communication 524.

If, however, at least one of the corresponding match scores received by the server 205 via the communication 518 is greater than or equal to the predetermined threshold score (also referred to as a predetermined threshold level), then the customer service interface 115 responds with the communication 526. In one embodiment of the invention, the communication 526 comprises a solution page. The communication 526 comprises a solution page when at least one of the computed match scores has a very high value. Alternatively, the customer service interface 115 may respond with the communication 526 that comprises the solution page based upon an analysis of the match scores according to the predetermined logic as described above. For example, if the customer service interface 115 services a financial institute, a client correspondent may submit a query to the server 205 via the communication 512 that recites, “I want to change my password.” If the customer service interface 115 classifies the query to a “change password” predefined category with a high degree of certainty (e.g., the customer service interface 115 classifies the query to the “change password” predefined category with a match score the meets a predetermined high-threshold score), then the server 205 sends the client 105 a “password changing” web page (i.e., the solution page). In another embodiment, the server 205 re-directs the client 105 to the solution page corresponding to the “password changing” web page. The client 105 may then utilize the solution page to resolve the query.

In another embodiment of the invention, the communication 526 may comprise a resource page. For example, the server 205 sends the resource page to the client 105 comprising the suggested responses having corresponding match scores greater than or equal to the predetermined threshold level via the communication 526. The resource page may also comprise other data (such as links to web resources) having corresponding match scores greater than or equal to the predetermined threshold level. In one embodiment of the invention, the client 105 may utilize one of several communicative actions (i.e., communicative actions 528, 534, or 540) to respond to the resource page.

For example, the client 105 may select a suggested response on the resource page, respond to an embedded form on the resource page, or click on a link to a web resource, via a first communicative action 528. The first communicative action 528 is received and processed by the server 205, and the server 205 then routes the processed first communicative action to the language analysis server 210 for linguistic analysis via a communication 530. The language analysis server 210 may optionally update the knowledge base 215 via a communication 532 based upon the linguistic analysis of the first communicative action 528.

Alternatively, the client 105 may respond to the resource page via a second communicative action 534. The second communicative action 534 comprises a non-response to the resource page. More specifically, the client 105 does not respond to the resource page (i.e., the client is non-responsive). For example, in one embodiment of the invention, if the client 105 does not respond to the resource page within a given time limit, or if the client 105 disconnects from the server 205, for example, the second communicative action 534 comprising a non-response is sent to the server 205. The server 205 then sends a communication 536 to the language analysis server 210 indicating the non-response. The language analysis server 210 may update the knowledge base 215 based upon the non-responsiveness of the client 105 via an optional communication 538.

As an additional alternative, the client 105 may respond to the resource page via a third communicative action 540 comprising a communicative escalation. For example, the client 105 may select (e.g., by mouse-clicking) a “request for help” button embedded in the resource page, or request more information regarding a particular suggested response. The server 205 receives the third communicative action 540 comprising the communicative escalation, and routes the communicative escalation to the language analysis server 210 via a communication 542. The language analysis server 210 then sends the communicative escalation to the agent for further analysis via a communication 544. The language analysis server 210 may optionally update the knowledge base 215 based upon the agent's reply to the communicative escalation via a communication 546.

FIG. 6 illustrates exemplary method steps for processing an electronic query, according to one embodiment of the invention. In step 610, the client 105 (FIG. 1) submits an electronic query to a web-site. In one embodiment, the query may be in response to a page served to the client 105 by the web-server 220 (FIG. 2) associated with the web site. The client 105 may be running the browser 120 (FIG. 1) to view the page served by the web-server 220. Next, in step 615, the server 205 (FIG. 2) intercepts and routes the query. For example, the server 205 may run the script 225 (FIG. 2) that processes the query and routes the processed query to the language analysis server 210 (FIG. 2).

In step 620, the language analysis server 210 analyzes the query using the language modeling engine 415 (FIG. 4) and the knowledge base 215 (FIG. 2) to compute match scores and classify the query to predefined categories stored in the knowledge base 215 based upon the match scores, where each predefined category is associated with a suggested response. In one embodiment of the invention, the knowledge base 215 is configured as a rule-oriented/concept-oriented database. For example, the knowledge base 215 may comprise a plurality of nodes configured in a hierarchically structured branching network, where each node is configured as either a rule-oriented or a concept-oriented node. Each concept-oriented node is typically associated with a predefined category. In one embodiment of the invention, the language analysis server 210 utilizes a statistical process to compute the match scores. For example, the language modeling engine 415 analyzes the natural language text of the query to generate concepts associated with the query. The language modeling engine 415 then statistically compares the query-derived concepts with rules associated with the rule-oriented nodes and with concepts associated with the concept-oriented nodes stored in the knowledge base 215. The language modeling engine 415 then computes a match score for one or more concept-oriented nodes (i.e., for one or more predefined categories). In one embodiment, a high match score for a particular predefined category indicates that a suggested response corresponding to the predefined category is more likely to be a correct response than a suggested response corresponding to a predefined category with a low match score. Based upon the computed match scores, the modeling application 410 (FIG. 4) determines if the query meets any of the predetermined threshold levels for an automated response.

For example, if each match score associated with each predefined category is less than a corresponding predetermined threshold level, then in step 625, the modeling application 410 routes the query to an agent for further analysis. Preferably, the agent is a human agent. However, in alternate embodiments, the agent may be an automated service, such as an automated phone service or an automated computer system. Next, in step 630, the server 205 sends the client 105 a confirmation page. In one embodiment, the confirmation page comprises a communication confirming that the client's query is being routed to the agent for further analysis. Next, in step 635, the agent replies to the query. In one embodiment of the invention, the agent replies to the client 105 via an electronic mail system. However, the scope of the present invention covers alternate agent-reply methods, such as web-based, telephonic, or facsimile methods.

Next, in optional step 640, the language analysis server 210 processes the agent's reply to the client to generate agent-based feedback. The language analysis server 210 may then update the knowledge base 215 based upon the agent-based feedback. The agent-based feedback may comprise positive or negative feedback. The language analysis server 210 uses the feedback to modify the knowledge base. For example, the language analysis server 210 may modify concepts, add new concepts, eliminate concepts, or modify weights assigned to different concepts associated with concept-oriented nodes. The language analysis server 210 may also modify relationships between nodes, such as structural relationships defined by branching structures, for example. In alternate embodiments, the language analysis server 210 may modify classification rules associated with rule-oriented nodes stored in the knowledge base 215.

Referring back to step 620, if at least one match score associated with at least one predefined category is greater than or equal to a corresponding predetermined threshold level, then in step 645, the server 205 submits a resource page to the client 105. The resource page may comprise a suggested response page, where each suggested response corresponds to a predefined category with an associated match score greater than or equal to the corresponding threshold level. A suggested response may include a message that recites, for example, “no response was found.” Alternatively, if an associated match score is greater than or equal to a corresponding high-threshold level, then the resource page comprises a solution page that provides either a link or a web page to the client 105 that may directly resolve the query. Each predefined category may have different threshold levels and high-threshold levels. Next, in step 650, the client 105 responds to the resource page and the server 205 determines whether the client query is resolved based upon the client response. In one embodiment of the invention, the query is not resolved if the client 105 escalates (e.g., the client 105 responds with a request for help), and the process then continues at step 625.

However, if in step 650 the query is resolved, then in optional step 655, the language analysis server 210 receives client-based feedback (i.e., feedback based upon the client's response). In one embodiment of the invention, the query is considered resolved if the client 105 selects a suggested response, or if the client 105 does not select any response (i.e., the client 105 is non-responsive).

In optional step 655, the language analysis server 210 updates. the knowledge base 215 based upon the client-based feedback. For example, a selection of a suggested response corresponding to a high match score generates a positive client-based feedback that may strengthen the concept-oriented nodes of the knowledge base 215 that generated the suggested responses. In one embodiment of the invention, a concept-oriented node may be strengthened by redistributing weights assigned to concepts associated with the node. However, if the client 105 selects a suggested response corresponding to a low match score, then the client 105 generates negative client-based feedback that may modify the concept-oriented nodes and branching structures that generated the selected suggested response.

The present invention has been described above with reference to exemplary embodiments. Other embodiments will be apparent to those skilled in the art in light of this disclosure. The present invention may readily be implemented using configurations other than those described in the exemplary embodiments above. Therefore, these and other variations upon the exemplary embodiments are covered by the present invention.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US20040064554 *Sep 26, 2002Apr 1, 2004Kuno Harumi AnneNetwork service system and mechanism for searching service registries
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7580923 *May 10, 2005Aug 25, 2009Microsoft CorporationBinding for multi-part identifiers
US7702642 *Dec 7, 2005Apr 20, 2010Precise Software Solutions, Inc.Method, system and computer-readable code for instrumenting code for logging database-related strings
US8161028 *Dec 5, 2008Apr 17, 2012International Business Machines CorporationSystem and method for adaptive categorization for use with dynamic taxonomies
US8438276Dec 2, 2010May 7, 2013Precise Software Solutions, Inc.Method of monitoring network and application performance by analyzing web clients and web servers
US8688253May 24, 2012Apr 1, 2014Soundhound, Inc.Systems and methods for sound recognition
US8694534Aug 23, 2010Apr 8, 2014Soundhound, Inc.Systems and methods for searching databases by sound input
US8694537 *May 24, 2012Apr 8, 2014Soundhound, Inc.Systems and methods for enabling natural language processing
US20120233207 *May 24, 2012Sep 13, 2012Keyvan MohajerSystems and Methods for Enabling Natural Language Processing
WO2013177213A2 *May 21, 2013Nov 28, 2013Soundhound, Inc.Systems and methods for enabling natural language processing
Classifications
U.S. Classification1/1, 707/E17.108, 707/E17.015, 707/999.003
International ClassificationG06F17/30
Cooperative ClassificationG06F17/30864
European ClassificationG06F17/30W1