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 numberUS20050187913 A1
Publication typeApplication
Application numberUS 10/839,930
Publication dateAug 25, 2005
Filing dateMay 5, 2004
Priority dateMay 6, 2003
Also published asUS20070288444, US20160063126
Publication number10839930, 839930, US 2005/0187913 A1, US 2005/187913 A1, US 20050187913 A1, US 20050187913A1, US 2005187913 A1, US 2005187913A1, US-A1-20050187913, US-A1-2005187913, US2005/0187913A1, US2005/187913A1, US20050187913 A1, US20050187913A1, US2005187913 A1, US2005187913A1
InventorsYoram Nelken, Randy Jessee, Steve Kirshner
Original AssigneeYoram Nelken, Randy Jessee, Steve Kirshner
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Web-based customer service interface
US 20050187913 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(22)
1. A system for processing a web-based query, comprising:
a web server for transmitting a web form to a client, the web form having at least one user-interactable element by which a user enters a natural language query and optional meta-data;
a language analysis server, coupled to the web server, for analyzing the natural language query and the optional meta-data to classify the natural language query into at least one predefined category based on information contained within a knowledge base; and
the web server selectively transmitting a resource page to the client, the resource page including at least one suggested response and optionally other data corresponding to the at least one predefined category.
2. The system of claim 1, wherein the web server is further configured to receive a communicative action from the client after the resource page is transmitted, the language analysis server adapting the knowledge base in accordance with the communicative action.
3. The system of claim 1, wherein the language analysis server calculates a set of match scores, each match score of the set of match scores corresponding to one predefined category of a plurality of predefined categories and being representative of a confidence level that the natural language query is relevant to the one predefined category of the plurality of predefined categories, and wherein the language analysis server classifies the natural language query into the at least one predefined category based on a match score associated therewith.
4. The system of claim 3, wherein the language analysis server calculates each match score of the set of match scores based upon a comparison of concepts extracted from the natural language query to concepts associated with the plurality of predefined categories, and wherein each match score of the set of match scores is representative of a statistical likelihood of the natural language query being correctly classified to the plurality of predefined categories.
5. The system of claim 3, wherein the language analysis server routes the natural language query to an agent if none of the match scores of the set of match scores meet a predetermined threshold level.
6. The system of claim 5, wherein the web server transmits to the client a confirmation page confirming that the natural language query has been routed to the agent.
7. The system of claim 5, wherein the language analysis server updates the knowledge base based upon the agent's response to the natural language query.
8. The system of claim 3, wherein the web server transmits a solution page to the client if at least one match score of the set of match scores meet a predetermined high-threshold level.
9. The system of claim 3, wherein the web server transmits a solution page to the client based upon an analysis of the set of match scores according to a predetermined logic.
10. The system of claim 1, wherein the other data comprises one or more links to web resources.
11. A method for processing a web-based query, comprising:
transmitting a web page to a client, the web page including at least one user-interactable element for entering a natural language query and optional meta-data;
receiving the natural language query and the optional meta-data;
analyzing the natural language query and the optional 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, 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. An electronic-readable medium having embodied thereon a program, the program being executable by a machine to perform a method for processing a web-based query, the method comprising:
transmitting a web page to a client, the web page including at least one user-interactable element for entering a natural language query and optional meta-data;
receiving the natural language query and the optional meta-data;
analyzing the natural language query and the optional 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, 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, the web page including at least one user-interactable element for entering a natural language query and optional meta-data;
means for receiving the natural language query and the optional meta-data;
means for analyzing the natural language query and the optional 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, 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
  • [0001]
    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
  • [0002]
    1. Field of the Invention
  • [0003]
    This invention relates generally to electronic communications and relates more particularly to a system and method for a web-based customer service interface.
  • [0004]
    2. Description of the Background Art
  • [0005]
    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.
  • [0006]
    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.
  • [0007]
    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.
  • [0008]
    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.
  • [0009]
    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
  • [0010]
    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.
  • [0011]
    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.
  • [0012]
    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).
  • [0013]
    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
  • [0014]
    FIG. 1 is an exemplary block diagram of a customer service network for processing an electronic query, according to one embodiment of the invention;
  • [0015]
    FIG. 2 is an exemplary embodiment of the customer service interface illustrated in FIG. 1, according to one embodiment of the invention;
  • [0016]
    FIG. 3A illustrates an exemplary embodiment of a contact-us page, according to the invention;
  • [0017]
    FIG. 3B illustrates an exemplary embodiment of the drop-down box component illustrated in FIG. 3A, according to one embodiment of the invention;
  • [0018]
    FIG. 3C illustrates an exemplary embodiment of the text field box illustrated in FIG. 3A, according to one embodiment of the invention;
  • [0019]
    FIG. 4 illustrates one embodiment of the language analysis server illustrated in FIG. 2, according to one embodiment of the invention;
  • [0020]
    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
  • [0021]
    FIG. 6 illustrates exemplary method steps for processing an electronic query, according to one embodiment of the invention.
  • DETAILED DESCRIPTION
  • [0022]
    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.
  • [0023]
    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.
  • [0024]
    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.
  • [0025]
    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.
  • [0026]
    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.
  • [0027]
    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 115 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.
  • [0028]
    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.
  • [0029]
    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.
  • [0030]
    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.
  • [0031]
    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.
  • [0032]
    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.
  • [0033]
    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.
  • [0034]
    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.
  • [0035]
    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.
  • [0036]
    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.
  • [0037]
    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.
  • [0038]
    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.
  • [0039]
    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.
  • [0040]
    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.
  • [0041]
    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.
  • [0042]
    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).
  • [0043]
    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.
  • [0044]
    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.
  • [0045]
    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.
  • [0046]
    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.
  • [0047]
    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).
  • [0048]
    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.
  • [0049]
    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
US27463 *Mar 13, 1860 George e
US42090 *Mar 29, 1864 Improvement in window-sash weights
US52907 *Feb 27, 1866 Improvement in paper shirt-bosoms
US73129 *Jan 7, 1868 Franklin r
US78119 *May 19, 1868 Barak t
US87618 *Mar 9, 1869 Improved compound for renewing hair
US87623 *Mar 9, 1869 Improved pinion
US254904 *Oct 27, 1881Mar 14, 1882 Process of producing barbed fencing material
US3648253 *Dec 10, 1969Mar 7, 1972Burroughs CorpProgram scheduler for processing systems
US4586160 *Apr 5, 1983Apr 29, 1986Tokyo Shibaura Denki Kabushiki KaishaMethod and apparatus for analyzing the syntactic structure of a sentence
US4642756 *Mar 15, 1985Feb 10, 1987S & H Computer Systems, Inc.Method and apparatus for scheduling the execution of multiple processing tasks in a computer system
US4658370 *Jun 7, 1984Apr 14, 1987Teknowledge, Inc.Knowledge engineering tool
US4724523 *Jul 1, 1985Feb 9, 1988Houghton Mifflin CompanyMethod and apparatus for the electronic storage and retrieval of expressions and linguistic information
US4805107 *Apr 15, 1987Feb 14, 1989Allied-Signal Inc.Task scheduler for a fault tolerant multiple node processing system
US4814974 *Mar 28, 1986Mar 21, 1989American Telephone And Telegraph Company, At&T Bell LaboratoriesProgrammable memory-based arbitration system for implementing fixed and flexible priority arrangements
US4908865 *Dec 22, 1988Mar 13, 1990Texas Instruments IncorporatedSpeaker independent speech recognition method and system
US4918735 *Jan 9, 1989Apr 17, 1990Oki Electric Industry Co., Ltd.Speech recognition apparatus for recognizing the category of an input speech pattern
US4984178 *Feb 21, 1989Jan 8, 1991Texas Instruments IncorporatedChart parser for stochastic unification grammar
US5099425 *Sep 11, 1989Mar 24, 1992Matsushita Electric Industrial Co., Ltd.Method and apparatus for analyzing the semantics and syntax of a sentence or a phrase
US5101349 *Mar 12, 1990Mar 31, 1992Canon Kabushiki KaishaNatural language processing system
US5278942 *Dec 5, 1991Jan 11, 1994International Business Machines CorporationSpeech coding apparatus having speaker dependent prototypes generated from nonuser reference data
US5287430 *Apr 14, 1992Feb 15, 1994Mirsubishi Denki Kabushiki KaishaSignal discrimination device using neural network
US5483466 *Nov 15, 1993Jan 9, 1996Hitachi, Ltd.Client/server system and mail reception/display control method
US5487100 *May 17, 1994Jan 23, 1996Motorola, Inc.Electronic mail message delivery system
US5493677 *Jun 8, 1994Feb 20, 1996Systems Research & Applications CorporationGeneration, archiving, and retrieval of digital images with evoked suggestion-set captions and natural language interface
US5493692 *Dec 3, 1993Feb 20, 1996Xerox CorporationSelective delivery of electronic messages in a multiple computer system based on context and environment of a user
US5506787 *Aug 31, 1992Apr 9, 1996Siemens AktiengesellschaftConfigurable man-machine communication structure for machine tool or robot control systems
US5594641 *Jun 8, 1994Jan 14, 1997Xerox CorporationFinite-state transduction of related word forms for text indexing and retrieval
US5596502 *Nov 14, 1994Jan 21, 1997Sunoptech, Ltd.Computer system including means for decision support scheduling
US5610812 *Jun 24, 1994Mar 11, 1997Mitsubishi Electric Information Technology Center America, Inc.Contextual tagger utilizing deterministic finite state transducer
US5615360 *Sep 21, 1994Mar 25, 1997International Business Machines CorporationMethod for interfacing applications with a content addressable memory
US5708829 *Sep 25, 1996Jan 13, 1998Wang Laboratories, Inc.Text indexing system
US5715371 *May 31, 1996Feb 3, 1998Lucent Technologies Inc.Personal computer-based intelligent networks
US5721770 *Jul 2, 1996Feb 24, 1998Lucent Technologies Inc.Agent vectoring programmably conditionally assigning agents to various tasks including tasks other than handling of waiting calls
US5724481 *Mar 30, 1995Mar 3, 1998Lucent Technologies Inc.Method for automatic speech recognition of arbitrary spoken words
US5737621 *Jun 6, 1995Apr 7, 1998Xerox CorporationFinite-state encoding system for hyphenation rules
US5737734 *Sep 15, 1995Apr 7, 1998Infonautics CorporationQuery word relevance adjustment in a search of an information retrieval system
US5745652 *May 31, 1995Apr 28, 1998International Business Machines CorporationAdaptive resource allocation using neural networks
US5745736 *Mar 6, 1996Apr 28, 1998U.S. Philips CorporationInformation processing system wherein processing tasks are prioritized and performed in order of priority
US5860059 *Mar 5, 1997Jan 12, 1999U.S. Philips CorporationTransaction system based on a bidirectional speech channel by status graph building and problem detection for a human user
US5864848 *Jan 31, 1997Jan 26, 1999Microsoft CorporationGoal-driven information interpretation and extraction system
US5864863 *Aug 9, 1996Jan 26, 1999Digital Equipment CorporationMethod for parsing, indexing and searching world-wide-web pages
US5867495 *Nov 18, 1996Feb 2, 1999Mci Communications CorporationsSystem, method and article of manufacture for communications utilizing calling, plans in a hybrid network
US5878385 *Sep 16, 1996Mar 2, 1999Ergo Linguistic TechnologiesMethod and apparatus for universal parsing of language
US5878386 *Jun 28, 1996Mar 2, 1999Microsoft CorporationNatural language parser with dictionary-based part-of-speech probabilities
US5884032 *Sep 25, 1995Mar 16, 1999The New Brunswick Telephone Company, LimitedSystem for coordinating communications via customer contact channel changing system using call centre for setting up the call between customer and an available help agent
US5884302 *Jan 17, 1997Mar 16, 1999Ho; Chi FaiSystem and method to answer a question
US5890142 *Feb 9, 1996Mar 30, 1999Kabushiki Kaisha MeidenshaApparatus for monitoring system condition
US5890147 *Mar 7, 1997Mar 30, 1999Microsoft CorporationScope testing of documents in a search engine using document to folder mapping
US5895447 *Jan 28, 1997Apr 20, 1999International Business Machines CorporationSpeech recognition using thresholded speaker class model selection or model adaptation
US6012053 *Jun 23, 1997Jan 4, 2000Lycos, Inc.Computer system with user-controlled relevance ranking of search results
US6018735 *Aug 22, 1997Jan 25, 2000Canon Kabushiki KaishaNon-literal textual search using fuzzy finite-state linear non-deterministic automata
US6021403 *Jul 19, 1996Feb 1, 2000Microsoft CorporationIntelligent user assistance facility
US6025843 *May 21, 1997Feb 15, 2000Peter SklarClustering user interface
US6026388 *Aug 14, 1996Feb 15, 2000Textwise, LlcUser interface and other enhancements for natural language information retrieval system and method
US6032111 *Jun 23, 1997Feb 29, 2000At&T Corp.Method and apparatus for compiling context-dependent rewrite rules and input strings
US6035104 *Jun 28, 1996Mar 7, 2000Data Link Systems Corp.Method and apparatus for managing electronic documents by alerting a subscriber at a destination other than the primary destination
US6038535 *Mar 23, 1998Mar 14, 2000Motorola, Inc.Speech classifier and method using delay elements
US6038560 *May 21, 1997Mar 14, 2000Oracle CorporationConcept knowledge base search and retrieval system
US6055528 *Jul 25, 1997Apr 25, 2000Claritech CorporationMethod for cross-linguistic document retrieval
US6169986 *Oct 1, 1999Jan 2, 2001Amazon.Com, Inc.System and method for refining search queries
US6182029 *Aug 6, 1999Jan 30, 2001The Trustees Of Columbia University In The City Of New YorkSystem and method for language extraction and encoding utilizing the parsing of text data in accordance with domain parameters
US6182039 *Mar 24, 1998Jan 30, 2001Matsushita Electric Industrial Co., Ltd.Method and apparatus using probabilistic language model based on confusable sets for speech recognition
US6182059 *May 8, 1997Jan 30, 2001Brightware, Inc.Automatic electronic message interpretation and routing system
US6182063 *Mar 31, 1997Jan 30, 2001Sun Microsystems, Inc.Method and apparatus for cascaded indexing and retrieval
US6182065 *Apr 22, 1998Jan 30, 2001International Business Machines Corp.Method and system for weighting the search results of a database search engine
US6182120 *Sep 11, 1998Jan 30, 2001International Business Machines CorporationMethod and system for scheduling queued messages based on queue delay and queue priority
US6185603 *Mar 13, 1997Feb 6, 2001At&T Corp.Method and system for delivery of e-mail and alerting messages
US6199103 *Jun 23, 1998Mar 6, 2001Omron CorporationElectronic mail determination method and system and storage medium
US6212544 *Oct 23, 1997Apr 3, 2001International Business Machines CorporationAltering thread priorities in a multithreaded processor
US6223201 *Aug 27, 1996Apr 24, 2001International Business Machines CorporationData processing system and method of task management within a self-managing application
US6349295 *Dec 31, 1998Feb 19, 2002Walker Digital, LlcMethod and apparatus for performing supplemental searches over a network
US6353667 *Aug 27, 1998Mar 5, 2002Avaya Technology Corp.Minimum interruption cycle time threshold for reserve call center agents
US6353827 *Aug 28, 1998Mar 5, 2002British Telecommunications Public Limited CompanyMethods and/or systems for selecting data sets
US6360243 *Mar 10, 1998Mar 19, 2002Motorola, Inc.Method, device and article of manufacture for implementing a real-time task scheduling accelerator
US6363373 *Oct 1, 1998Mar 26, 2002Microsoft CorporationMethod and apparatus for concept searching using a Boolean or keyword search engine
US6363377 *Dec 22, 1998Mar 26, 2002Sarnoff CorporationSearch data processor
US6366910 *Dec 7, 1998Apr 2, 2002Amazon.Com, Inc.Method and system for generation of hierarchical search results
US6370526 *May 18, 1999Apr 9, 2002International Business Machines CorporationSelf-adaptive method and system for providing a user-preferred ranking order of object sets
US6374221 *Jun 22, 1999Apr 16, 2002Lucent Technologies Inc.Automatic retraining of a speech recognizer while using reliable transcripts
US6377949 *Sep 18, 1998Apr 23, 2002Tacit Knowledge Systems, Inc.Method and apparatus for assigning a confidence level to a term within a user knowledge profile
US6505158 *Jul 5, 2000Jan 7, 2003At&T Corp.Synthesis-based pre-selection of suitable units for concatenative speech
US6507872 *Jun 7, 1995Jan 14, 2003David Michael GeshwindClass of methods for improving perceived efficiency of end-user interactive access of a large database such as the world-wide web via a communication network such as “The Internet”
US6513026 *Jun 17, 2000Jan 28, 2003Microsoft CorporationDecision theoretic principles and policies for notification
US6535795 *Aug 9, 1999Mar 18, 2003Baker Hughes IncorporatedMethod for chemical addition utilizing adaptive optimization
US6542889 *Jan 28, 2000Apr 1, 2003International Business Machines CorporationMethods and apparatus for similarity text search based on conceptual indexing
US6675159 *Jul 27, 2000Jan 6, 2004Science Applic Int CorpConcept-based search and retrieval system
US6701400 *Aug 12, 2002Mar 2, 2004Dell Products L.P.Adaptive card-sensitive bus slot method and system
US6704728 *May 2, 2000Mar 9, 2004Iphase.Com, Inc.Accessing information from a collection of data
US6711561 *May 2, 2000Mar 23, 2004Iphrase.Com, Inc.Prose feedback in information access system
US6714643 *Feb 24, 2000Mar 30, 2004Siemens Information & Communication Networks, Inc.System and method for implementing wait time estimation in automatic call distribution queues
US6714905 *May 2, 2000Mar 30, 2004Iphrase.Com, Inc.Parsing ambiguous grammar
US6850513 *Dec 30, 1999Feb 1, 2005Intel CorporationTable-based packet classification
US6862710 *Mar 22, 2000Mar 1, 2005Insightful CorporationInternet navigation using soft hyperlinks
US20030004706 *Jun 27, 2001Jan 2, 2003Yale Thomas W.Natural language processing system and method for knowledge management
US20030028564 *Dec 19, 2001Feb 6, 2003Lingomotors, Inc.Natural language method and system for matching and ranking documents in terms of semantic relatedness
US20030046297 *Oct 22, 2001Mar 6, 2003Kana Software, Inc.System and method for a partially self-training learning system
US20040010491 *Mar 13, 2003Jan 15, 2004Markus RiedingerUser interface framework
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
US7752159Aug 23, 2007Jul 6, 2010International Business Machines CorporationSystem and method for classifying text
US7756810Aug 23, 2007Jul 13, 2010International Business Machines CorporationSoftware tool for training and testing a knowledge base
US7849030May 31, 2006Dec 7, 2010Hartford Fire Insurance CompanyMethod and system for classifying documents
US8001135 *Feb 27, 2008Aug 16, 2011Kabushiki Kaisha ToshibaSearch support apparatus, computer program product, and search support system
US8082151 *Sep 18, 2007Dec 20, 2011At&T Intellectual Property I, LpSystem and method of generating responses to text-based messages
US8255347Oct 29, 2010Aug 28, 2012Hartford Fire Insurance CompanyMethod and system for classifying documents
US8290768Mar 27, 2002Oct 16, 2012International Business Machines CorporationSystem and method for determining a set of attributes based on content of communications
US8296140Nov 21, 2011Oct 23, 2012At&T Intellectual Property I, L.P.System and method of generating responses to text-based messages
US8364467 *Mar 31, 2006Jan 29, 2013Google Inc.Content-based classification
US8495002Apr 29, 2004Jul 23, 2013International Business Machines CorporationSoftware tool for training and testing a knowledge base
US8566096Oct 10, 2012Oct 22, 2013At&T Intellectual Property I, L.P.System and method of generating responses to text-based messages
US8738552Aug 24, 2012May 27, 2014Hartford Fire Insurance CompanyMethod and system for classifying documents
US9177051 *Apr 18, 2011Nov 3, 2015Noblis, Inc.Method and system for personal information extraction and modeling with fully generalized extraction contexts
US9317592Jan 29, 2013Apr 19, 2016Google Inc.Content-based classification
US20040249796 *Jun 6, 2003Dec 9, 2004Microsoft CorporationQuery classification
US20060259465 *May 10, 2005Nov 16, 2006Microsoft CorporationBinding for multi-part identifiers
US20070198871 *Apr 25, 2007Aug 23, 2007International Business Machines CorporationSystem and method for optimizing timing of responses to customer communications
US20070282594 *Jun 2, 2006Dec 6, 2007Microsoft CorporationMachine translation in natural language application development
US20070282824 *May 31, 2006Dec 6, 2007Ellingsworth Martin EMethod and system for classifying documents
US20070294199 *Aug 23, 2007Dec 20, 2007International Business Machines CorporationSystem and method for classifying text
US20080215550 *Feb 27, 2008Sep 4, 2008Kabushiki Kaisha ToshibaSearch support apparatus, computer program product, and search support system
US20090076795 *Sep 18, 2007Mar 19, 2009Srinivas BangaloreSystem And Method Of Generating Responses To Text-Based Messages
US20110047168 *Oct 29, 2010Feb 24, 2011Ellingsworth Martin EMethod and system for classifying documents
US20110258213 *Apr 18, 2011Oct 20, 2011Noblis, Inc.Method and system for personal information extraction and modeling with fully generalized extraction contexts
US20130232204 *Mar 1, 2012Sep 5, 2013International Business Machines CorporationIdentifying and processing previously sent and received messages
US20160004696 *Jul 6, 2014Jan 7, 2016Hristo TrenkovCall and response processing engine and clearinghouse architecture, system and method
US20160062988 *Aug 27, 2014Mar 3, 2016International Business Machines CorporationGenerating responses to electronic communications with a question answering system
US20160063381 *Sep 19, 2014Mar 3, 2016International Business Machines CorporationGenerating responses to electronic communications with a question answering system
WO2015183975A1 *May 27, 2015Dec 3, 2015Genesys Telecommunications Laboratories, Inc.System and method for controlled knowledge system management
Classifications
U.S. Classification1/1, 707/E17.108, 707/999.003
International ClassificationG06F17/30
Cooperative ClassificationG06F17/3053, G06F17/30654, G06F17/30867, G06F17/30882, G06F17/30684, G06F17/30864, G06F17/30528, G06F17/30598
European ClassificationG06F17/30W1
Legal Events
DateCodeEventDescription
May 5, 2004ASAssignment
Owner name: IPHRASE TECHNOLOGIES, INC., MASSACHUSETTS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:NELKEN, YORAM;JESSEE, RANDY;KIRSHNER, STEVE;REEL/FRAME:015311/0182
Effective date: 20040504
Mar 13, 2006ASAssignment
Owner name: 2005 KEEL COMPANY, INC., NEW YORK
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:IPHRASE TECHNOLOGIES, INC.;REEL/FRAME:017325/0840
Effective date: 20051031
Aug 10, 2006ASAssignment
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:2005 KEEL COMPANY, INC.;REEL/FRAME:018075/0831
Effective date: 20060718