Team Second Ask John Doe Tutorial Version 1.0 2/15/2016 2006 Team Second <Drive:\Directory\Filename.ext> Tutorial TABLE OF CONTENTS 1. DESCRIPTION OF THE PROJECT .................................................................................................. 1 2. NATURAL LANGUAGE PROCESSING (NLP) ............................................................................... 3 2.1. 2.2. 2.3. 2.4. 2.5. MORPHOLOGICAL ANALYSIS: ........................................................................................................ 3 SYNTACTIC ANALYSIS: ................................................................................................................... 3 SEMANTIC ANALYSIS:..................................................................................................................... 3 DISCOURSE INTEGRATION: ............................................................................................................ 3 DISCOURSE AND PRAGMATIC PROCESSING .................................................................................. 4 3. DEDUCTIVE REASONING SYSTEMS ............................................................................................ 5 4. CONCLUSION ...................................................................................................................................... 6 5. REFERENCES ...................................................................................................................................... 7 Tutorial Team Second Date Page 2/15/2016 4:16 PM ii Tutorial 1. Description of the Project The technologically driven world in which we live in has increased the necessity for human interaction with systems, particularly with computer-based systems that are used to accomplish a vast variety of tasks with the aim of helping the user in achieving a goal. This interaction is not always an easy one because of the unfortunate disconnect between how humans function and how technology responds. Especially important is the complex relationship between thought and language because a meaning or understanding has to be drawn from what is being said. That is why it is desired to integrate intelligence into these systems in order for them to become more efficient. For a system to be intelligent it should demonstrate some level of understanding, for instance a help system should understand what is being requested and respond appropriately. This kind of intelligent reaction or response between humans makes common sense, but it is more complex to implement it into machines that think. An important area in need for intelligent systems is the Internet. As it grows larger and more complex, users are taking advantage of what is has to offer to satisfy their need for searching information, commerce, and communication. Similarly businesses are relying on it in making their products or services available to customers. As business grows, it is likely that there will be a need to have some sort of customer service. In fact, according to Purdue University’s Center for Customer-Driven quality, Americans made 1.5 billion customerservice calls in 2004 and spent an average of 23 seconds per call on hold. This is not efficient or cost effective; that is why more and more corporations are relying in artificial intelligent help systems. Virtual assistants or help systems are being used to interact with users and to answer their questions with the added advantage of being available 24 hrs a day 7 days a week avoiding the dreaded “please hold” statement. Usually these virtual service agents are given a name and are represented by an animation of a patient and friendly company representative that is ready to assist the user. Some 300 corporations have incorporated such online virtual assistant during the past four years. In this project we’ll discuss IKEA’s ‘Ask Anna’, but of course there are plenty other examples. These assistants range from great to annoying. For example Comcast’s ‘Ask Comcast’ is a great faceless agent forgiving of misspelling and very capable, AT&T uses ‘Allie’ to help users browse the webpage more efficiently, Chrysler’s ‘Aisa’ helps regarding the Smart cars, Iams has ‘Anne’ to aid in pet supplies, Sprint’s PCS’s Claire who was retired in 2002 for annoying customers. Some of the worst ‘assistants’ basically just use keywords and lack memory as to understand follow-up questions; such is the case for GE appliances or Fidelity Investments ‘Anna’ is the new customer service representative of ikea.com, the website for major home furnishing company IKEA. In their website one can “Ask Anna” about IKEA’s products and services and she attempts to answer the most commonly asked questions. Tutorial Team Second Date Page 2/15/2016 4:16 PM 1 Tutorial “Talking” with Anna provides users with a comfortable level of interaction using a natural conversation style of communicating. She is a cheerful and patient animated drawing of a woman with a headset who blinks, smiles , makes gestures and even politely answers personal questions such as “who are you?” , “how are you?”, “where are you”, all in complete sentences. Anna relies on linguistic theory and a complex database to answer questions in natural language and when she doesn’t understand the query or is unable to answer it, she asks the users to direct their request to a human counterpart via e-mail. The problem with Anna is that she gives up extremely fast and frustrates users when she doesn’t meet her purpose of existence. Some of the agents mentioned here are developed using software applications such as Kiwilogic Lingubot, Graphico, and different Artificial Intelligence Markup Languages (AIML). The design and creation of these agents are based on using several artificial intelligence techniques dealing with natural language processing and deductive systems. These techniques are briefly discussed in the following sections of this tutorial. Tutorial Team Second Date Page 2/15/2016 4:16 PM 2 Tutorial 2. Natural Language Processing (NLP) In more detail, processing written text which is a subtask of NLP is completed by using lexical, syntactic, and semantic knowledge of the language as well as any required real world information. The steps in the process of natural language understanding are: 2.1. Morphological analysis: Words and special characters are analyzed and separated. 2.2. Syntactic analysis: Parsing process which determines and structures the functions of words in an input sentence. Some constraints like word order are used in the process. Usually a derivation tree is ideal for representing those structures. These trees own syntactical rules which are used to recognize combined words that form sentences that are part of the language. These rules are called grammar. 2.3. Semantic analysis: Once the structure is created, a meaning must be given to it. Individual words are mapped into objects in the knowledge base in order for the structure to now how the meanings of the individual words interact with each other. Semantic Analysis After doing this, syntactic processing semantic analysis can use two different approaches: a) Lexical Processing: Each word contained in the sentence being analyzed is searched in the dictionary. Since a word can have multiple meanings there are processes needed to choose the correct meaning within a context such as word sense disambiguation or lexical disambiguation. b) Sentence-Level Processing: This process includes semantic grammars, case grammars, and conceptual dependencies in order to determine the meaning of a sentence. 2.4. Discourse integration: Individual sentences are dependable to previous sentences and may influence those yet to come. The entities that structure those sentences may be related to entities that also were previous or may be introduced explicitly. The overall discourse must be coherent. Tutorial Team Second Date Page 2/15/2016 4:16 PM 3 Tutorial 2.5. Discourse and Pragmatic Processing To interpret the meaning of a sentence it is necessary for the program to know the context of goals and plans in which the sentences are provided. This is used to represent the programs interpretation with precision. Tutorial Team Second Date Page 2/15/2016 4:16 PM 4 Tutorial 3. Deductive reasoning systems Deductive reasoning refers to Aristotle logic. Inference is deductive reasoning in which the conclusion is of no greater generality than the premises. Is the inference in which the conclusion is just as certain as the premises, the conclusion of a deductive inference is necessitated by the premises: the premises can’t be true while the conclusion is false. Deductive reasoning systems use tools like Axiomatization. Axiomatization can be considered as sequence of statements such that every statement can be derived from those before it. The statement can be traduced into formal notation and the system can process and interpret them. Deductive reasoning systems provide a way to derive valid formulae without the need to inspect interpretations. Deductive systems use a general Framework. This method works by first translating sentences in modal logic into constraint logic. The framework converts an ordinary firstorder inference rules into inference rules for constraint logic. Additionally the relation between sets of inference rules for classical logic and inference rules for modal logic is made clear. Finally the special purpose-reasoner mechanism handles the constraints. Tutorial Team Second Date Page 2/15/2016 4:16 PM 5 Tutorial 4. Conclusion In order to create a virtual help system, the designer must pay special attention to different Artificial Intelligence techniques and be able to combine them. For a successful implementation, a knowledge base must be carefully created so that the knowledge-base agent uses its content and integrates it by processing the user’s queries accordingly. It is important to remember that the goal of creating a virtual assistant is to try to “humanize” the interaction between user and the technological system so it seems like a natural conversation is taking place. It is not advantageous to create an agent that -instead of providing help to the user - will become some sort of obstacle instead of a tool. Virtual assistant or help systems can make life easier for visitors on a web site by enabling them to quickly find exactly what they are looking for. They can also reduce the necessity for having a human entity answer all customer service calls. Help systems can provide an important role as part of the integrated e-commerce system by answering product questions as well as highlighting promotional opportunities. Tutorial Team Second Date Page 2/15/2016 4:16 PM 6 Tutorial 5. References [1] Russell Stuart, Norving Peter, "Artificial Intelligence A Modern Approach", Prentice Hall, Second Edition [2] Chin Paul, "Human-Centered Intranet Design", Intranet Journal, [Online Documents] 2005, [Cited 2006,Feb 18] Available HTTP: http://www.intranetjournal.com/articles/200511/pij_11_28_05a.html [3] Mount Ian, "Testing Online Service Reps", The Wall Street Journal, 2005 [Cited 2006,Feb 18] [4] Dr. Wallace Richard, "AIML Overview", [Online Documents] 2005 [Cited 2006,Feb 18] Available HTTP: http://www.pandorabots.com/pandora/pics/wallaceaimltutorial.html [5] Dr. Wallace Richard, "The Lying Game", Wired Magazine, Number 5.08, August 1997 [6] Doyle, Patrick. “Natural Language. AI Qual Summary” ” [Online Documents] 1997, [Cited 2006,Feb 20] Available HTTP: http://www.cs.dartmouth.edu/~brd/Teaching/AI/Lectures/Summaries/natlang.html [7] Baskiotis, Nicolas. Teytaud, Olivier. Sebag, Michele. Inductive-Deductive Systems: A mathematical logic and statistical learning perspective [Online Documents] 2006, [Cited 2006,Feb 20] Available HTTP : http://www.lri.fr/~teytaud/ds/ds.html [8] Bird,Steven. Klein, Ewan. Loper, Edward [Online Documents] 2005, [Cited 2006,Feb 20] Available HTTP http://nltk.sourceforge.net/tutorial/introduction/ Tutorial Team Second Date Page 2/15/2016 4:16 PM 7