Over the years, since computer science evolutions, Artificial Intelligence principles demanded
the Natural Language Processing so that machines or software could communicate efficiently
with human.
Today we will make an introduction to Natural Language Processing and furthermore we will
present chat bots, which are directly connected to Natural Language Processing.
So what is Artificial Intelligence exactly?
John McCarthy in 1956 stated that Artificial Intelligence is “the science and engineering
of making intelligence machines”.
In simple words, Artificial Intelligence is the Computer Science sector that has to do
with the design and implementation of software that are capable to imitate the human cognitive
skills, showing characteristics that are normally attributed to human behavior.
Some examples are the problems solution, vision, learning, conclusions and understanding the
natural language.
Natural Language Processing is a field of computer science and more specifically is
a field of artificial intelligence but also is included in linguistics concerned with
the interactions between computers and human languages.
The main purpose is to create and implement computational models, that are able to extract
meaningful information from natural language input and furthermore to produce a natural
language output.
Some aspects of Natural language processing have to do with communicating with the computer,
the machine translation and the browsing and filtering of texts, written in natural language
from an agent.
Natural Language Processing is actually identical to the field of computational linguistics
which is divided to theoretical and applied part.
The theoretical computational linguistic, deals with how people acquire and use knowledge,
to produce and understand natural language.
The applied part focuses on the practical results of modeling the use, of human language.
After processing the natural language we can understand more about the world.
And if scientists manage to succeed in the creation of a computational language model,
we will own an extremely strong communication tool.
Natural language is divided to the written and oral language.
In order to conquer oral language, it is essential to understand how written word is used and
structured.
Alan Turing is a famous scientist that is known as the “father” of computer science
and artificial intelligence.
In 1950 he published his famous article titled: Computing Machinery and Intelligence which
introduced a criterion of machine intelligence, what today is called Turing Test.
The idea was to test if a human could not tell apart if he/she was communicating with
a machine or a human.
Practical work began with the Georgetown-IBM experiment in 1954, which was developed by
the Georgetown University and IBM.
This experiment involved fully automatic translation of more than sixty Russian sentences into
English.
Although at first, scientists were very optimistic about the results of the experiment and thought
that the machine translation would be a solved problem within three of five years, real progress
was actually a lot slower than expected.
Moving forward in 1972, T. Winograd created the system SHRDLU, using the language Lisp.
This is a natural language system working in restricted “blocks worlds” with restricted
vocabularies.
Examples of its aspects are interpretation of questions, states and directions, also
ability of entailment and learning new words.
During the 70’s many programmers began to write “conceptual ontologies” which structured
real world information into computer understandable data.
Up to the 80’s most of Natural Language Processing systems used hand written rules.
In the late 80’s though, of machine learning algorithms were introduce so the systems could
use decision trees or statistical models which make soft, probabilistic decisions based on
attaching real-valued weights to the input data.
Nowadays systems focus on unsupervised or semi-supervised learning algorithms that are
able to learn from data that has not been hand-annotated.
In order to achieve natural language processing it is useful to divide the process to some
steps and parts.
First, a morphological analysis has to be done, where separate words are analyses to
their components and the non verbal symbols.
Then, we proceed to syntactic analysis where linear sequences of words are converted into
structures that illustrate how words are connected to each other.
Some sequences may be rejected by the system, if they violate some of the language rules.
Semantic Analysis follows, which gives meaning to the structures that are produced from the
syntactic analysis.
Then we must do a discourse Integration, which analyzes the meaning of a single sentence
compared with the meaning of the previous and the next sentences.
And at last we apply a pragmatic analysis in order to define the real meaning of the
structure that represents what it has been said.
During Natural Language Processing several problems may have to be encountered.
These problems have to do with the fact that people often use natural language in a certain
way expressing feelings or questions without using the official language and without satisfy
every rule of the language.
For example, the sentences of natural language contain incomplete description of the information
that intends to transfer.
We may say, “I called Maria to go to the movies and she agreed” but we actually mean,
“Maria was at home when I called her.
She answered the phone and I asked her to go to the movies.
She said ok.”
Another example is that the same sentence may be used for different occasions and meanings
and on the other hand there are a lot of ways to say the same thing.
For example we may say “Maria’s birthday is on the 1st of September” or “Maria
was born on the 1st of September”.
And also there is the fact that none program of natural language can be ever complete since
new words, new phrases or meanings are often created by people.
Natural Language processing in our times is widely spread and used.
A lot of application, software and machines all over the world use this kind of processing
in order to achieve high quality communication.
There is machine translation that automatically translates text from one human language to
another.
Also Natural language generation and understanding systems exist, that have to convert information
from computer databases into readable human language and understand several input from
users.
Optical character recognition has to determine a corresponding text given an image representing
printed text.
Question answering has to do with answering human language questions.
There are specific answers to some questions if we ask for example the capital of a country.
But some questions can have different answers for example “what is the meaning of life”.
Speech recognition where given a sound clip of a person speaking, the system has to determine
the textual representation of the speech.
As you can see, natural language processing is really important for today’s applications
and further evolution of technology.
It helps simple and more complex systems to achieve their goals.