Finite-state transducer
   HOME

TheInfoList



OR:

A finite-state transducer (FST) is a
finite-state machine A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
with two memory ''tapes'', following the terminology for
Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
s: an input tape and an output tape. This contrasts with an ordinary
finite-state automaton A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
, which has a single tape. An FST is a type of finite-state automaton (FSA) that maps between two sets of symbols. An FST is more general than an FSA. An FSA defines a
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of sy ...
by defining a set of accepted strings, while an FST defines relations between sets of strings. An FST will read a set of strings on the input tape and generates a set of relations on the output tape. An FST can be thought of as a translator or relater between strings in a set. In morphological parsing, an example would be inputting a string of letters into the FST, the FST would then output a string of
morphemes A morpheme is the smallest meaningful constituent of a linguistic expression. The field of linguistic study dedicated to morphemes is called morphology. In English, morphemes are often but not necessarily words. Morphemes that stand alone a ...
.


Overview

An
automaton An automaton (; plural: automata or automatons) is a relatively self-operating machine, or control mechanism designed to automatically follow a sequence of operations, or respond to predetermined instructions.Automaton – Definition and More ...
can be said to ''recognize'' a string if we view the content of its tape as input. In other words, the automaton computes a function that maps strings into the set . Alternatively, we can say that an automaton ''generates'' strings, which means viewing its tape as an output tape. On this view, the automaton generates a
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of sy ...
, which is a set of strings. The two views of automata are equivalent: the function that the automaton computes is precisely the indicator function of the set of strings it generates. The class of languages generated by finite automata is known as the class of
regular language In theoretical computer science and formal language theory, a regular language (also called a rational language) is a formal language that can be defined by a regular expression, in the strict sense in theoretical computer science (as opposed to ...
s. The two tapes of a transducer are typically viewed as an input tape and an output tape. On this view, a transducer is said to ''transduce'' (i.e., translate) the contents of its input tape to its output tape, by accepting a string on its input tape and generating another string on its output tape. It may do so nondeterministically and it may produce more than one output for each input string. A transducer may also produce no output for a given input string, in which case it is said to ''reject'' the input. In general, a transducer computes a relation between two formal languages. Each string-to-string finite-state transducer relates the input alphabet Σ to the output alphabet Γ. Relations ''R'' on Σ*×Γ* that can be implemented as finite-state transducers are called rational relations. Rational relations that are
partial function In mathematics, a partial function from a set to a set is a function from a subset of (possibly itself) to . The subset , that is, the domain of viewed as a function, is called the domain of definition of . If equals , that is, if is de ...
s, i.e. that relate every input string from Σ* to at most one Γ*, are called rational functions. Finite-state transducers are often used for
phonological Phonology is the branch of linguistics that studies how languages or dialects systematically organize their sounds or, for sign languages, their constituent parts of signs. The term can also refer specifically to the sound or sign system of a ...
and morphological analysis in natural language processing research and applications. Pioneers in this field include
Ronald Kaplan Ronald M. Kaplan (born 1946) has served as a Vice President at Amazon.com and Chief Scientist for Amazon Search ( A9.com). He was previously Vice President and Distinguished Scientist at Nuance Communications and director of Nuance' Natural Lan ...
,
Lauri Karttunen Lauri Juhani Karttunen was an adjunct professor in linguistics at Stanford and an ACL Fellow. He died in 2022. Career Karttunen received his Ph.D. in Linguistics in 1969 from Indiana University in Bloomington. At the University of Texas at Aus ...
,
Martin Kay Martin Kay (1935 – 8 August 2021) was a computer scientist, known especially for his work in computational linguistics. Born and raised in the United Kingdom, he received his M.A. from Trinity College, Cambridge, in 1961. In 1958 he started ...
and
Kimmo Koskenniemi Kimmo Matti Koskenniemi (born 7 September 1945) is the inventor of finite-state two-level models for computational phonology and morphology. He was a professor of Computational Linguistics at the University of Helsinki, Finland. In the early 1980 ...
. A common way of using transducers is in a so-called "cascade", where transducers for various operations are combined into a single transducer by repeated application of the composition operator (defined below).


Formal construction

Formally, a finite transducer ''T'' is a 6-tuple () such that: * is a
finite set In mathematics, particularly set theory, a finite set is a set that has a finite number of elements. Informally, a finite set is a set which one could in principle count and finish counting. For example, :\ is a finite set with five elements. T ...
, the set of ''states''; * is a finite set, called the ''input alphabet''; * is a finite set, called the ''output alphabet''; * is a subset of , the set of ''initial states''; * is a subset of , the set of ''final states''; and * \delta \subseteq Q \times (\Sigma\cup\) \times (\Gamma\cup\) \times Q (where ε is the
empty string In formal language theory, the empty string, or empty word, is the unique string of length zero. Formal theory Formally, a string is a finite, ordered sequence of characters such as letters, digits or spaces. The empty string is the special cas ...
) is the ''transition relation''. We can view (''Q'', ''δ'') as a labeled
directed graph In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs. Definition In formal terms, a directed graph is an ordered pa ...
, known as the ''transition graph'' of ''T'': the set of vertices is ''Q'', and (q,a,b,r)\in\delta means that there is a labeled edge going from vertex ''q'' to vertex ''r''. We also say that ''a'' is the ''input label'' and ''b'' the ''output label'' of that edge. NOTE: This definition of finite transducer is also called ''letter transducer'' (Roche and Schabes 1997); alternative definitions are possible, but can all be converted into transducers following this one. Define the ''extended transition relation'' \delta^* as the smallest set such that: * \delta\subseteq\delta^*; * (q,\epsilon,\epsilon,q)\in\delta^* for all q\in Q; and * whenever (q,x,y,r) \in \delta^* and (r,a,b,s) \in \delta then (q,xa,yb,s) \in \delta^*. The extended transition relation is essentially the reflexive
transitive closure In mathematics, the transitive closure of a binary relation on a set is the smallest relation on that contains and is transitive. For finite sets, "smallest" can be taken in its usual sense, of having the fewest related pairs; for infinite ...
of the transition graph that has been augmented to take edge labels into account. The elements of \delta^* are known as ''paths''. The edge labels of a path are obtained by concatenating the edge labels of its constituent transitions in order. The ''behavior'' of the transducer ''T'' is the rational relation 'T''defined as follows: x
if and only if In logic and related fields such as mathematics and philosophy, "if and only if" (shortened as "iff") is a biconditional logical connective between statements, where either both statements are true or both are false. The connective is b ...
there exists i \in I and f \in F such that (i,x,y,f) \in \delta^*. This is to say that ''T'' transduces a string x\in\Sigma^* into a string y\in\Gamma^* if there exists a path from an initial state to a final state whose input label is ''x'' and whose output label is ''y''.


Weighted automata

Finite State Transducers can be weighted, where each transition is labelled with a weight in addition to the input and output labels. A Weighted Finite State Transducer (WFST) over a set ''K'' of weights can be defined similarly to an unweighted one as an 8-tuple , where: * are defined as above; * E \subseteq Q \times (\Sigma\cup\) \times (\Gamma\cup\) \times Q \times K (where ''ε'' is the
empty string In formal language theory, the empty string, or empty word, is the unique string of length zero. Formal theory Formally, a string is a finite, ordered sequence of characters such as letters, digits or spaces. The empty string is the special cas ...
) is the finite set of transitions; * \lambda: I \rightarrow K maps initial states to weights; * \rho: F \rightarrow K maps final states to weights. In order to make certain operations on WFSTs well-defined, it is convenient to require the set of weights to form a
semiring In abstract algebra, a semiring is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse. The term rig is also used occasionally—this originated as a joke, suggesting that rigs ar ...
. Two typical semirings used in practice are the
log semiring In mathematics, in the field of tropical analysis, the log semiring is the semiring structure on the logarithmic scale, obtained by considering the extended real numbers as logarithms. That is, the operations of addition and multiplication are d ...
and
tropical semiring In idempotent analysis, the tropical semiring is a semiring of extended real numbers with the operations of minimum (or maximum) and addition replacing the usual ("classical") operations of addition and multiplication, respectively. The tropical ...
: nondeterministic automata may be regarded as having weights in the
Boolean semiring In abstract algebra, a semiring is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse. The term rig is also used occasionally—this originated as a joke, suggesting that rigs a ...
.


Stochastic FST

Stochastic FSTs (also known as probabilistic FSTs or statistical FSTs) are presumably a form of weighted FST.


Operations on finite-state transducers

The following operations defined on finite automata also apply to finite transducers: *
Union Union commonly refers to: * Trade union, an organization of workers * Union (set theory), in mathematics, a fundamental operation on sets Union may also refer to: Arts and entertainment Music * Union (band), an American rock group ** ''Un ...
. Given transducers and , there exists a transducer T\cup S such that x \cup S if and only if x or x . *
Concatenation In formal language theory and computer programming, string concatenation is the operation of joining character strings end-to-end. For example, the concatenation of "snow" and "ball" is "snowball". In certain formalisations of concatenat ...
. Given transducers and , there exists a transducer T\cdot S such that x \cdot S if and only if there exist x_1, x_2, y_1, y_2 with x=x_1x_2, y =y_1y_2, x_1 _1 and x_2 _2. *
Kleene closure In mathematical logic and computer science, the Kleene star (or Kleene operator or Kleene closure) is a unary operation, either on sets of strings or on sets of symbols or characters. In mathematics, it is more commonly known as the free monoid ...
. Given a transducer , there might exist a transducer T^* with the following properties: :: and x ^* does not hold unless mandated by () or (). *
Composition Composition or Compositions may refer to: Arts and literature *Composition (dance), practice and teaching of choreography *Composition (language), in literature and rhetoric, producing a work in spoken tradition and written discourse, to include v ...
. Given a transducer on alphabets Σ and Γ and a transducer on alphabets Γ and Δ, there exists a transducer T \circ S on Σ and Δ such that x \circ S if and only if there exists a string y\in\Gamma^* such that x and y . This operation extends to the weighted case. :This definition uses the same notation used in mathematics for
relation composition In the mathematics of binary relations, the composition of relations is the forming of a new binary relation from two given binary relations ''R'' and ''S''. In the calculus of relations, the composition of relations is called relative multiplic ...
. However, the conventional reading for relation composition is the other way around: given two relations and , (x,z)\in T\circ S when there exist some such that (x,y)\in S and (y,z)\in T. * Projection to an automaton. There are two projection functions: \pi_1 preserves the input tape, and \pi_2 preserves the output tape. The first projection, \pi_1 is defined as follows: : Given a transducer , there exists a finite automaton \pi_1 T such that \pi_1 T accepts ''x'' if and only if there exists a string ''y'' for which x . :The second projection, \pi_2 is defined similarly. * Determinization. Given a transducer , we want to build an equivalent transducer that has a unique initial state and such that no two transitions leaving any state share the same input label. The
powerset construction In the theory of computation and automata theory, the powerset construction or subset construction is a standard method for converting a nondeterministic finite automaton (NFA) into a deterministic finite automaton (DFA) which recognizes the sa ...
can be extended to transducers, or even weighted transducers, but sometimes fails to halt; indeed, some non-deterministic transducers do not admit equivalent deterministic transducers.
Characterizations Characterization or characterisation is the representation of persons (or other beings or creatures) in narrative and dramatic works. The term character development is sometimes used as a synonym. This representation may include direct methods ...
of determinizable transducers have been proposed along with efficient algorithms to test them: they rely on the
semiring In abstract algebra, a semiring is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse. The term rig is also used occasionally—this originated as a joke, suggesting that rigs ar ...
used in the weighted case as well as a general property on the structure of the transducer (the twins property). * Weight pushing for the weighted case. * Minimization for the weighted case. * Removal of epsilon-transitions.


Additional properties of finite-state transducers

* It is decidable whether the relation 'T''of a transducer ''T'' is empty. * It is decidable whether there exists a string ''y'' such that ''x'' 'T'''y'' for a given string ''x''. * It is undecidable whether two transducers are equivalent. Equivalence is however decidable in the special case where the relation 'T''of a transducer ''T'' is a (partial) function. * If one defines the alphabet of labels L=(\Sigma\cup\) \times (\Gamma\cup\), finite-state transducers are isomorphic to NDFA over the alphabet L, and may therefore be determinized (turned into
deterministic finite automata In the theory of computation, a branch of theoretical computer science, a deterministic finite automaton (DFA)—also known as deterministic finite acceptor (DFA), deterministic finite-state machine (DFSM), or deterministic finite-state automa ...
over the alphabet L= \Sigma\cup\) \times \Gamma\cup Sigma \times (\Gamma\cup\)/math>) and subsequently minimized so that they have the minimum number of states.


Applications

FSTs are used in the
lexical analysis In computer science, lexical analysis, lexing or tokenization is the process of converting a sequence of characters (such as in a computer program or web page) into a sequence of ''lexical tokens'' ( strings with an assigned and thus identified ...
phase of
compilers In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
to associate semantic value with the discovered tokens. Context-sensitive rewriting rules of the form ''a'' → ''b'' / ''c'' _ ''d'', used in
linguistics Linguistics is the science, scientific study of human language. It is called a scientific study because it entails a comprehensive, systematic, objective, and precise analysis of all aspects of language, particularly its nature and structure ...
to model
phonological rule A phonological rule is a formal way of expressing a systematic phonological or morphophonological process or diachronic sound change in language. Phonological rules are commonly used in generative phonology as a notation to capture sound-related o ...
s and sound change, are computationally equivalent to finite-state transducers, provided that application is nonrecursive, i.e. the rule is not allowed to rewrite the same substring twice. Weighted FSTs found applications in natural language processing, including
machine translation Machine translation, sometimes referred to by the abbreviation MT (not to be confused with computer-aided translation, machine-aided human translation or interactive translation), is a sub-field of computational linguistics that investigates t ...
, and in
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
. An implementation for
part-of-speech tagging In corpus linguistics, part-of-speech tagging (POS tagging or PoS tagging or POST), also called grammatical tagging is the process of marking up a word in a text (corpus) as corresponding to a particular part of speech, based on both its definitio ...
can be found as one component of the OpenGrmOpenGrm
/ref> library.


See also

*
Mealy machine In the theory of computation, a Mealy machine is a finite-state machine whose output values are determined both by its current state and the current inputs. This is in contrast to a Moore machine, whose output values are determined solely by its cu ...
*
Moore machine In the theory of computation, a Moore machine is a finite-state machine whose current output values are determined only by its current state. This is in contrast to a Mealy machine, whose output values are determined both by its current state and ...
* Morphological dictionary *
foma (software) Foma is a free and open source ''finite-state toolkit'' created and maintained by Mans Hulden. It includes a compiler, programming language, and C library for constructing finite-state automata and transducers (FST's) for various uses, most typic ...
* Tree transducer


Notes


References

* * * *


External links


OpenFst
an open-source library for FST operations.

XFST/ LEXC, a description of Xerox's implementation of finite-state transducers intended for linguistic applications.
The Helsinki open source implementation and extension of the Xerox fst

FOMA
an open-source implementation of most of the capabilities of the Xerox XFST/ LEXC implementation.
Stuttgart Finite State Transducer Tools
another open-source FST toolkit
java FST Framework
an open-source java FST Framework capable of handling OpenFst text format.
Vcsn
an open-source platform (C++ & IPython) platform for weighted automata and rational expressions.


Further reading

* * * * * *

{{DEFAULTSORT:Finite State Transducer Finite automata