Natural Language Processing
NLP is a technique in which machine can become human and reducing the distance between human being and the machine can be reduced. Thats why in simple sense NLP makes human to communicate with machine easily. There are so many applications developed in past few years in NLP. these are very useful in everyday life for example a machine that takes instructions by voice. There are lots of research groups working on this topic to develop more practical are useful systems. NLP holds these for making computer interfaces that are easier to use for people, since people will hopes that it can be able to talk to the computer in their own language, rather than learn a computer commands. For programming, we know that the necessity of a formal programming language for communicating with a computer has always been taken for granted. We would like to challenge this assumption. We believe that NLP techniques can make possible the use of natural language to express programming ideas, thus drastically increasing the accessibility of programming to non-expert users. To express the feasibility of Natural Language Programming, this paper kut what are perceived to be some of the hardest cases.
Natural Language Processing is a technique in which machine can become more human and therefore it reducing the distance between human being and the machine. Therefore in simple word NLP makes human to communicate with the machine easily. There are many applications developed in past few years in NLP. Most of these are very useful in everyday life for example a machine that takes instructions by voice. There are lots of research groups working on this topic to develop more practical useful systems.
2. CHALLENGES IN NLP:
Many times the word boundaries are mixed and the sentence understood are totally different. At the next level, the syntax of the language helps us to decide how the words are being combined to make larger meanings. These are the main challenges faced in natural language processing systems. Developing a program that understands natural language is a dificult problem. Number of natural languages are more, they posses in?nitely many sentences. Also there is much ambiguity in natural language. Many words have several meanings and sentences have meanings different in different contexts. This makes creation of programs that understands a natural language, a challenging task.
There is large amounts of data on Internet at least around 20 billion pages. Applications for processing large amounts of texts require Natural Language Processing expertise. Some requirements are as follows.
• Classify text into categories
• Index and search large texts
• Automatic translation
• Speech understanding: Understand phone conversations
• Extract useful information from resumes
• Automatic summarization
• Question answering
• Knowledge acquisition
• Text generations / dialogues.
4. COMPUTATIONAL LINGUISTICS:
A simple sentence is consist of a subject followed with predicate. For English sentence, the parts of speech are pronouns, nouns, adjectives, prepositions, verb, adverb, conjunctions, and interjections. Most of us understand both written and spoken language, but reading is learned much later, so let us start with spoken language. We can divide the problem into three areas like acoustic, phonetic, morphological – syntactic, and semantic – pragmatic processes.
4.1. LEVELS OF KNOWLEDGE IN LANGUAGE UNDERSTANDING
A language understanding program must have knowledge about the structure & scope of the language including what the commands are and how they combine into phrases and sentences. It must also know meaning of the words, how to contribute meaning of the sentence and to the context in which they are being used.The components of the knowledge needed to understand the language are following:
• Phonological: Relates sounds to the words we recognize. Phoneme is smallest unit of sound, and the phones are aggregated into word sounds.
• Morphological: This is lexical knowledge, which relates to word construction from basic units called morphemes. A morpheme is the smallest unit of meaning, for example, the construction of friendly from friend and Ly.
• Syntactic: It is knowledge about how the commands are organized to construct meaningful and correct.
• Pragmatics: It is high level knowledge about how to use sentences in different contexts and how the contexts affect the meanings of the sentences.
• World: It is useful in understanding the sentence and to carry out the conversation. It includes the other person’s beliefs and goals.
5. GRAMMARS AND LANGUAGES:
A language can be generated given its grammar G = (V,_,.0 S, P), where V is set of variables, _ is set of terminal symbols, which appear at the end of generation, S is start symbol, and P is set of production rules. The corresponding language of G is L(G). To generate a sentence, the rules from P are applied sequentially starting from the beginning. However, we note that a grammar does not guarantee the generation of meaningful sentences, but generate only those are structurally correct as per the rules of the grammar.
6. TRANSFORMATIONAL GRAMMARS:
The grammar discussed above produces different structures for different sentences, even though they have same meaning. For example, Ram gave Shyam a book. A book was given by ram to Shyam.
In the above, the subject and object roles are switched. In the first, subject is RAM and object is Book, while in second sentence they are other way round. This is undesirable feature for machine processing of a language. In fact, sentences having same meaning should map to the same internal structures. By adding some extra components, we can produce a single representation for sentences having the same meaning, through a series of transformations. This extended grammar is called Transformational grammar. Using transformational generative grammar, a sentence is analyzed in two stages,
(1) Basic structure of the sentence is analyzed to determine the grammatical constitutional parts, which provides the structure of the sentence.
(2) This is transformed into another form, where deeper semantic structure is determined. The application of transformations is to produce a change from passive voice form of the sentence into active voice, change a question to declarative form, handle negations, and provide subject-verb agreement.
Parsing is nothing but the process of converting a input sentence into a hierarchical structure that corresponds to the units of meaning in the sentence. There are different formalisms and algorithms. The parse-trees are useful for:
1. Grammar checking of the sentence
2. Parsing is an important intermediate stage in semantic analysis.
3. The parsing plays an important role in:
(a) Mechanical translation
(b) Question answering
(c) Information Extraction
7.1 PARSING IS SEARCH
we can find the correct parse-tree of all possible parse-trees by syntactic parser that can be viewed as searching through the space.
NLP’s future will be redefined as it faces new technological challenges and a push from the market to create more user-friendly systems. Market’s influence is prompting competition among existing NLP based companies. It is also pushing NLP more towards Open Source Development.The systems will also be built as easily replaceable components, which take less time to build and more userfriendly.
There are a number of benefits associated with NLP program.The benefits of programming are many, addressing the needs of every segment of society.This method continues to help to improve and generate highly profitable interactions within the business community.In business, NLP has played a vital role and improving management skills in communication, leadership and employee motivation. In the health care sector, this powerful tool has helped in treatment and recovery of many patients.
Well there are so many applications we can imagine with NLP techniques.Imagine we have a computer system that can follow simple human instructions and do whatever we want it to do. How convenient will it be? But let’s leave all that to the FUTURE………