RULE BASED NATURAL LANGUAGE PROCESSING

estonianmelonAI and Robotics

Oct 24, 2013 (3 years and 9 months ago)

108 views

Journal of Information, Control and Management Systems, Vol. 2, (2006), No.1


1

RULE BASED NATURAL L
ANGUAGE PROCESSING

Viktor
Jandák,
Pavol Selep

University of Žilina, Faculty of Management Science and Informatics

Abstract

In this paper we describe a usage of rule b
ased engine in text processing. The method is
used to annotate text written in Slovak language

and

is experimentally applied and used
in natural language processing part of text to speech engine for Slovak language.


Keywords
:
rule based engine,
text
-
to
-
spee
ch
system, text processing,
SSML

1

INTRODUCTION


Methods which try to apply rule based engines are already known for some time.
They are being used in variety of research and comme
rcial fields. Also in terms of
natural language processing some efforts
have been

reported or published.

The natural language processing part is an important part of speech synthesis.

Languages differ in
way
how a written text is transformed into speech audio.
To handle
these
transcription
problems we have developed a system based on rules based engine
to transform general alpha
-
numerical text into grapheme and consequently into
phonetic
transcription that can be directly used in
part of text to speech system

called

DSP
1
.

The t
ext
-
to
-
speech system (TTS
-
KIS) for the Slovak language developed at the
Department of InfoCom Networks (KIS)

includes these features.

Speech Synthesis Markup Language (SSML
[1]
) was taken as a solid basis for
the
general text format.
.


2

TTS
SY
STEM OVERVIEW


The TTS
-
KIS system is a diphon
e
-
based speech system. The diphone synthesis is
a method of the concatenate synthesis, which uses diphones as the elementary units to
concatenate.
This type of synthesis requires a large database to store the units. The
basic idea of building a diphone dat
abase is to determine all of the possible phone
-
to
-
phone transitions in given language. Building the diphone database has required




1

Digital Signal Processing

Rule based natural language processing

2

diphone pairs and carrier words
.
For the recording was purposefully selected the
minimal number of carrier words from the pho
netic vocabulary.

The system uses the synthesis kernel developed at KIS and the diphone database
created for Slovak language. The kernel itself was created
for

better control and use of
various approaches during the phase of the diphone concatena
tion and prosody
application.

For the system requirement
tools for the analysis and diphone creation
have been developed
. [
4]


The block architecture of the system consists of two main parts, as shown in Fig. 1.
:

NLP



Natural Language Processing; it is re
sponsible for the transformation

of a
general input text which is subject to the phonetic transcription. It also

converts
numbers, abbreviations, dates etc. into a phonetic text.
The principle of text
processin
g is based on RBE
-

Rule Based Engine
.

DSP



D
igital Signal Processing; it is responsible for creating audio
-
data from a
phonetic text.
[4]




Figure
1
:


TTS

architecture

DSP

audi
o

Data based signal
modeling

Diphone concatenation

Prosody application

Waveform coding

NLP




RBE

SSML

TTS syste
m

Journal of Information, Control and Management Systems, Vol. 2, (2006), No.1


3

3

RULE BASE
D

ENGINES IN TEXT PROC
ESSING


In this section is described the rule base
d

used in text processing
.

Main function
of RBE
0

is

seq
u
ent
ial

text transformation into phonetic transcription.

Abstract
structure of RBE is on
Figure
1
.


RBE consists from
independ
en
t parts called “
blocks
” as you can see on
Figure
2
.

1

Rule Based Engine


Figure
1

Detail
abstract
structure of RBE

Rule based natural language processing

4



RBE

is formed into blocks:
SSML checking, structure analysis and text
normalization, text
-
to
-
phoneme conversion, syllable

and

prosody analysi
s
.


Each block

has it
s own

specific function

or

functions which

execute :

-

SSML checking

check and control input format

-

s
tructure analysis and text
normalization

conversion non
-
alphabetical letters,
abbreviations, dates etc.


defi
ne type of sentences and
compounds


divide sentences into words


Figure
2

Blocks of
rule based engine

Journal of Information, Control and Management Systems, Vol. 2, (2006), No.1


5


transformation some specifics SSML
marks




-

text
-
to
-
phoneme conversion


replace written text its phonetic
transcription


divide words into syllables

and gradually
into phonemes




-

pro
sody analysis

expand pronunciation

of

pro
s
odic

language properties ( volume, rate,
emphasis,

F


慰灬á捡íá潮o捯cí潵r猠潦 獥湴敮e敳Ⱐwor摳



B
l潣o

ás 摩vá摥搠á湴o 獭慬l敲 灡rís 捡ll敤e

modules


to execute its jobs
. Block
consists of
one or more
standalo
ne
modules. It depends on
requests which block must
execu
t
e.

Bl
o
ck determine in what way modules
are
execute
d
.

Modules can run in two
ways :

-

once



block consists
from
ordered modules
{
M
1

… M
n
}
. T
he order of
modules is strictly defined

M
i
<M
j

i<j


i,j = 1..n
.

Modules run in this order.

Output from one module is used as an input for the next module. Output from
module does not need to be proce
ssed again by module that
already

finished
.

-

cyclic



block consists from non
-
ordered
modules

{M
1

… M
n
}.

The modules
are executed

in

cycles

until
at least one of
module
s

do
es

not
modif
y

in
put
.
Output
from one module might be needed to process in module which
already
finished

in the same cycle. Modules
run

sequentially only once in
the

cycle.



We talk about
explicit

execution logic in case the order is strictly defined. On
the
other hand the second case is known as
implicit

execution logic.

When the block finish
es

its work, it is ensured that the block e.g.
text
-
to
-
phoneme

conversion
is

applied to the whole output. By cyclic module running, the cycle is
started again
un
til

any

module

do
es not

modify
input in the cycle.


The way how to decide if the module
runs

and what its output looks like is
defined by conditions (each module has specific contract). The conditions are
pre
-
condition

and
pos
t
-
condition

:

Rule based natural language proces
sing

6

-

pre
-
condition

-

set of rules which describe
when

is necessary to
run

the
module

-

post
-
condition

-

set of rules which describe what
the rational effect of
executing the module
is


On experimental base we developed an abstract language which allows to write
the pre/post conditions. Till now it is not part of implementation, however it is used as
a formalization

language. It is based on first order predicate logic; it contains set of
predicates, modifiers, relation operands, quantificators and logical functions.


4

CONCLUSION AND FUTUR
E WORK

In this paper we presented a concept of natural language processing based
on rule
based engines.
Th
e RBE method
gives us

a

strong tool for developing
robust and
flexible systems
. The development
process
of
adding
new text proces
s
in
g

modules

and
updating existing
ones
doesn’t
affect

other modules and the
speech
system itself.

REFERENCES

[1]

Speech Synthesis Markup Language (SSML) Version 1.0, W3C

Recommendation 7 September 2004,

h
ttp://www.w3.org/TR/speech
-
synthesis
/

[2]

Ozgul Salor, Bryan Pellom, and Mubeccel Demirekler: Implementation

and
Evaluation of a Text
-
to
-
Speech Synthesis System for Turkish,

Center for Spoken
Language Research

[3]

M. Beutnagel, A. Conkie, J. Schroeter, Y. Stylian
ou, and A. Syrdal:

THE
AT
\
&T NEXT
-
GEN TTS SYSTEM,

http://www.research.att.com/projects/tts

[4]

Peter Čaky, Martin Klimo, Igor Mihálik, Radovan Mladšík: Text
-
to
-
Speech for
Slovak Language,
TDS Brno,
2004




Addr
ess
:



Ing. Viktor Jandák,

Katedra informačných sietí
, Fakulta riadenia a informatiky
univerzita v Žiline, 01026 Žilina, e
-
mail viktor.jandak
@siemens.com


Ing.
Pavol

Selep
, Katedra informačných sietí, Fakulta riadenia a informatiky
univerzita v Žiline, 01026 Žilina, e
-
mail
pavol.selep@kis.fri.utc.sk