Natural language processing (NLP) is a subfield of artificial intelligence and computational linguistics.
The goal of the Natural Language Processing (NLP) is to design and build software that will analyze, understand, and generate languages that humans use naturally, so that eventually you will be able to address your application as though you were addressing another person.
Word sense disambiguation: Many words have more than one meaning; we have to select the meaning which makes the most sense in context.
Projects like wordNet , WordFreak are important tools which can remove ambiguity
WordNet is a semantic lexicon for the English language. It groups English words into sets of synonyms called synsets, provides short, general definitions, and records the various semantic relations between these synonym sets. http://wordnet.princeton.edu/
Syntactic ambiguity The grammar for natural languages is ambiguous, i.e. there are often multiple possible parse trees for a given sentence. Choosing the most appropriate one usually requires semantic and contextual information. Specific problem components of syntactic ambiguity include sentence boundary disambiguation.
Speech segmentation / Lexical Analysis : Lexical analysis is the process of converting a sequence of characters into a sequence of tokens. Programs performing lexical analysis are called lexical analyzers or lexers. A lexer consists of a scanner and a tokenizer.
A token is a categorized block of text, usually consisting of indivisible characters known as lexemes
sum=3+2; Tokenized in the following table
Tokenization is the process of demarcating and possibly classifying sections of a string of input characters
ALICE uses AIML or Artificial Intelligence Markup Language, is an XML dialect for creating natural language software agents.
Efficiency of ALICE is directly proportional to number of elements in its AIM L files
ALICE is academic like other similar its ultimate aim is to pass turner test , its answers are human like but may not be relevant also it only answers what its already in database look at samples below
Human: how will be weather today ? ALICE: Ah. A lot of practise. Human: whats the stock prize of microsoft ? ALICE: Is there only one? Human: where is mount fuji ? ALICE: Where it is hard to find. There might be more than one.
Categories :Categories in AIML are the fundamental unit of knowledge. A category consists of at least two further elements: the pattern and template elements. Here is a simple category: <category> <pattern>WHAT IS YOUR NAME</pattern> <template>My name is John.</template> </category> Patterns : A pattern is a string of characters intended to match one or more user inputs. A literal pattern like
WHAT IS YOUR * will match an infinite number of inputs, including "what is your name", "what is your shoe size", "what is your purpose in life", etc.
ALICE... A Peek at AIML … A template specifies the response to a matched pattern. A template may be as simple as some literal text, like My name is John. A template may use variables, such as the example My name is <bot name="name"/>. which will substitute the bot's name into the sentence, or example: <category> <pattern>WHAT IS YOUR NAME</pattern> <template>My name is <bot name="name"/>.</template> </category> <category> <pattern>WHAT ARE YOU CALLED</pattern> <template> <srai>what is your name</srai> </template> </category> www.alabot.com
We realized human conversation are dynamic and you can’t have generic statements to give relevant replies.
Also you need to take decisions (does a customer qualify for a discount?) on the fly.
Alabots algorithm custom solution (GFA) which consists of rule engine , NLP engine and parser , helper API hooks etc understands these queries and smoothens the process .
Ala was designed to work as Rapid Application development platform , one can put all business rules and configure NLP and phonetic engine and you can have an application running in matter days or few weeks in all connected mediums.
Ajax Web client that can be integrated on any website
Alabot ....User Cases - Travel Vertical Live user example 1 (4:18 PM) gp: bby to del on 21 nov 1 adult (4:18 PM) alabot: Please wait a moment while I do a search .... .... (4:18 PM) alabot: For the 21 of November from mumbai to delhi I suggest the following - Indigo Rs 6000 ( Departure 7am , Arrival 10 am ), Jet Airways Rs 5500 ( Departure 9pm to Arrival 10:30 am ) Live user example 2 gp: i want a tickt bombay deli on 21 nov (4:22 PM) alabot: How many Travellers ? eg 2 adult 1 kid (4:22 PM) gp: 2 (4:22 PM) alabot: Please wait a moment while I do a search .... .... (4:22 PM) alabot: For the 21 of November from mumbai to delhi I suggest the following - Deccan Rs 7800 ( Departure 7am , Arrival 10 am ), King Fisher Rs 7800 ( Departure 9pm to Arrival 10:30 am ) www.alabot.com
Case Study for AI / NLP based SMS chat for a suburban railway line. User: Wht time kandivili chrchgte - Ala : The Kandivili to Churchgate local is 2.5 minutes late and will reach Churchgate at 1030 AM. Have a good day. User : Church kand morning Ala : The morning local (8:45 am) from Kandivili to Churchgate is on time and will reach Churchgate at 1030 AM. Have a good day. User : Aft chrch knd time Ala : The afternoon local (12:25 pm) from Kandivili to Churchgate is on time and will reach Churchgate at 1:45 pm. Have a pleasant day. User : Chch knd morn time Ala : The morning local (8:45 am) from Kandivili to Churchgate is on time and will reach Churchgate at 1030 AM. Have a good day. User : Chrch knd on time Ala : Yes, the Churchgate to Kandivili local is on time. User : Kitne baje knd chrh local hai (Hindi) Ala : Kandivili to Churchgate samay par hai. Wo Churchgate 10 30 pahunchegi. www.alabot.com
The basic sentence being: When is the Churchgate / Kandivili local coming? The rest are iterations of the same sentence which Alabots GFA engine will comprehend. Aft / Morn – Denotes time of day (afternoon or morning) These are live user tests done on gtalk. We have entered wrong spellings for cities and also jumbled up the order of buying the ticket to make the tests more life like. Questions like these will be thrown at Ala in the real world. www.alabot.com
www.alabot.com User : Whn This Over? Ala : NOW...!! Have a Good Day