Trend and Technology
The trend I will discuss is towards natural language
interfaces both in hardware devices and in software programs including
apps. The underlying technology I will
discuss is neural networks. There may be
several technologies which implement natural language interfaces, but in many
instances neural networks are a key component of the natural language interface
technology.
Natural Language Interfaces
By 'natural language interface," is meant an interface
that allows you to communicate with a device or program using natural language. This may mean using English-like sentences
(or native language sentences) rather than keywords. The device or program may
"understand" what you mean by the sentence and bring up the
appropriate result (natural language understanding is related to natural
language interfaces). Part of a natural
language interface may be voice recognition, so that you may speak to your
device rather than type something in.
This technology is already somewhat deployed. For example, your iPhone includes Siri which
understands you when you ask it a question.
What it actually does is use voice recognition hardware/software to
convert your spoken sentence into a string which can then be sent to search
engine, which then finds websites and content on the web related to the string
in the search. Siri's answer may also
involve voice synthesis, i.e., may give you a spoken response, as a person
would in addition to the website content.
However, many computer devices and programs still use the old text based
query system and do not have a natural language interface. Imagine if Google added a natural language
interface to its search engine website.
The horizon website (link above) talks about educational
technology. It would behoove many
on-line learning websites to incorporate natural language interfaces into their
software for a more user friendly student experience. Natural language interfaces (NLI) also may
involve reading facial expressions or processing gesturing. NLI may also use linguistic phenomena such as
verbs, nouns, phrases to control aspects of a program.
Neural Networks
There are a number of technologies that create NLIs. However, this blog will focus on one
underlying technology: neural networks. As indicated above speech recognition may be
part of a NLI. Speech recognition often
uses a neural network to recognize a person's speech (and convert it into a set
of strings or words). A neural network
is a statistical pattern recognition machine.
Review of Neural Networks
A neural network is a topology of processing elements which
convert inputs into outputs and in the process do statistical pattern
recognition. A neural network does not
use a programming model or traditional deductive artificial intelligence (AI)
techniques. Rather it uses a
statistically based inductive approach to recognize patterns. A neural network is not programmed but
trained. A neural network may be implemented
in hardware or software (I have written neural networks in C++). A sample neural network is given below. There is an input layer, and output layer,
and hidden layers in between (Hecht-Nielsen,
1990). Neurodes, or processing
elements (indicated by circles on the diagram) are interconnected to other
neurodes in a topology. There are many
neural network topologies. The sample
neural network topology below is called a feed forward linear associator
network.
Figure 1: A Sample Neural Network: The Feed Forward Linear Associator Network
(My Powerpoint Diagram).
The neural net above involves only 6 neurodes (or processing
elements). This would be a very simple
neural net. In the real world a neural
net may involve thousands of processing elements with many hidden layers. This neural net has exactly two layers: an input layer, and an output layer, with no
hidden layers. In this topology every
neurode is connected to every other neurode.
Each input, x1 ... xn forwards its signal to every neurode in the output
layer. The neurodes in the output layer
are weighted. I.e., the output layer of
neurodes weight the input signals to create the weighted output vector. Each neurode or processing element performs the weighted
statistical function that performs the pattern recognition. So, let's look more closely at the processing
element.
Figure 2: The Neurode or Processing Element (My
Powerpoint Diagram).
The neurode transforms multiple input signals into an output
signal, through the application of a transfer function which modifies weights
(statistically) stored in the local memory of the neurode (Hecht-Nielsen, 1990). The input signals may be of specified
mathematical type: integer, real,
complex,, or a fuzzy number between a range.
Input signals, as in natural neural circuits, may be excitatory or
inhibitory, i.e., add or subtract from the occurrence of the output
signal.
Neural nets are trained (not programmed). A training regimen would involve presenting a
number of samples to the neural net and simultaneously applying the transfer
function or learning law to the net.
Then, once trained, the neural net is provided novel samples which it
then can recognize or categorize through its trained statistical pattern
recognition capability.
Two Technological
Forces that Impact the Development of NLI's and Neural Networks
There are several factors influencing the development of
NLI's and their underlying neural networks.
I will talk about two technological drivers: Mobile Devices, and the Semantic Net.
Mobile Computing Devices.
The explosive growth in mobile computing devices that has
occurred since the invention of the iPhone (a paradigm shifter) has a big
influence on the development of NLI's and neural networks. Most mobile smartphones now include voice
recognition hardware/software to interact with the device, to initiate
functions on the phone, or to look up things on the web through a search engine
(notably Siri for Apple's iPhone). Possible
future features of NLI/neural nets in smartphones may be a universal
translator. One would speak one's native
language into the phone and select the target language and a speech synthesizer
would generate the sentence or phrase in the target foreign language. You want that capability on a mobile device,
so you can use it while traveling in foreign countries.
Semantic Web
Another technological driver of NLI's and neural nets is the
semantic net or semantic web. The next
generation of the web will be semantic. The
initial form of this is to create greater data sharing and integration with
technologies such as Resource Description Framework (RDF). In the first implementation a common
framework will exist that allows data to be shared and resused across
heterogeneous data sources, databases, and applications. But the long term driver is to make the web
more semantic, involving natural language processing (for example of queries in
search engines) and to do automated reasoning on web content. Particularly, today, search engines like
Google are driving the need for NLI's.
References
New Media Consortium. (n.d.). NMC horizon. Retrieved
from http://www.nmc.org/nmc-horizon/
New Media Consortium. (n.d.). NMC horizon report: 2016
higher education edition wiki. Retrieved from http://horizon.wiki.nmc.org/
Hecht-Nielsen, R. (1990).
Neurocomputing. Addison-Wesley
Publishing Company, Reading, Massachusetts.


No comments:
Post a Comment