Lõplik muundur

Lõplik muundur või lõplik olekumuundur on Turingi masinate terminoloogia kohaselt kahe mälulindiga (sisend- ja väljundlint) lõplik automaat. Tavalisel lõplikul automaadil on ainult üks mälulint. Lõplik muundur on lõplik automaat, mis seab omavahel vastavusse kaks hulka sümboleid. Lõpliku muunduri mõiste on üldisem kui lõpliku automaadi oma. Lõplik automaat defineerib formaalse keele aktsepteeritavate sõnede hulga abil, samas kui lõplik muundur defineerib seosed sõnede hulkade vahel. Lõplik muundur loeb sisendlingilt sõnede hulga ning loob väljundlindile hulga seoseid. Lõplikku muundurit võib vaadata kui sõnedevahelist tõlki või sidujat. Morfoloogilisest parsimisest võib näiteks tuua olukorra, kus muundurisse sisestatakse tähtedest koosnev sõne ning saadakse väljundiks morfeemidest koosnev sõne. Öeldakse, et automaat tuvastab sõne, kui vaatame selle lindi sisu sisendina. Teisisõnu leiab automaat funktsiooni, mis vastendab sõned hulga { 0 , 1 } {\displaystyle \{0,1\}} väärtustega. Samuti võime vaadelda automaadi linti väljundina ning öelda, et automaat genereerib sõnesid. Sel juhul loob automaat konkreetse sõnede hulga ehk formaalse keele. Need kaks viisi automaadi kirjeldamiseks on samaväärsed: automaadi genereeritud funktsioon on enda loodud sõnede hulga karakteristlik funktsioon. Lõpliku automaadi loodud keelte klassi nimetatakse regulaarsete keelte klassiks. Muunduri kahte linti vaadeldakse tavaliselt kui sisend- ja väljundlinti. Öeldakse, et muundur muundab ehk tõlgib sisendlindil olevad väärtused väljundlindile - sisendlindile antud sõne jaoks genereeritakse väljundlindile uus sõne. Muundur võib seda teha mittedeterministlikult ning ühele sisendsõnele võib vastata mitu väljundsõne. Muundur võib sisendsõne ka tagasi lükata - sel juhul sisendsõnele vastavat väljundsõne ei genereerita. Üldsõnaliselt võib öelda, et muundur arvutab välja suhte kahe formaalse keele vahel. Iga sõnest-sõneks-tüüpi lõplik muundur vastendab sisendtähestiku Σ {\displaystyle \Sigma } väljundtähestikuga Γ {\displaystyle \Gamma } . Relatsioone R {\displaystyle R} hulgal Σ ∗ × Γ ∗ {\displaystyle \Sigma *\times \Gamma *} , mis on rakendatavad lõplike muunduritena, nimetatakse ratsionaalrelatsioonideks. Ratsionaalrelatsioone, mis on ühtlasi ka osafunktsioonid (ehk mis vastendavad iga sisendsõne hulgast Σ ∗ {\displaystyle \Sigma *} kõige enam ühe sõnega hulgast Γ ∗ {\displaystyle \Gamma *} ), nimetatakse ratsionaalfunktsioonideks. Lõplikud muundurid leiavad sageli kasutust keeletehnoloogias fonoloogilise ning morfoloogilise analüüsi juures. Formaalse kirjelduse järgi on lõplik muundur T {\displaystyle T} viiekohaline ennik ( Q , Σ , Γ , I , F , δ ) {\displaystyle (Q,\Sigma ,\Gamma ,I,F,\delta )} , kus Q {\displaystyle Q} on olekute hulk (lõplik hulk); Σ {\displaystyle \Sigma } on sisendtähestik (lõplik hulk); Γ {\displaystyle \Gamma } on väljundtähestik (lõplik hulk); I {\displaystyle I} on algolekute hulk ( Q {\displaystyle Q} alamhulk); F {\displaystyle F} on lõppolekute hulk ( Q {\displaystyle Q} alamhulk); kehtib δ ⊆ Q × ( Σ ∪ { ϵ } ) × ( Γ ∪ { ϵ } ) × Q {\displaystyle \delta \subseteq Q\times (\Sigma \cup \{\epsilon \})\times (\Gamma \cup \{\epsilon \})\times Q} , kus ϵ {\displaystyle \epsilon } on siirderelatsioonis tühi sõne. Võime vaadata paari ( Q , δ ) {\displaystyle (Q,\delta )} kui sildistatud suunatud graafi ehk T {\displaystyle T} siirdegraafi. Q {\displaystyle Q} on tippude hulk ning ( q , a , b , r ) ∈ δ {\displaystyle (q,a,b,r)\in \delta } tähendab, et leidub sildistatud kaar tipust q tippu r. Ütleme, et a on selle kaare sisendi ning b väljundi silt. Defineerime laiendatud siirderelatsiooni δ ∗ {\displaystyle \delta *} kui vähima hulga, mille puhul kehtivad järgmised tingimused: δ ⊆ δ ∗ {\displaystyle \delta \subseteq \delta \ast } ; ( q , ϵ , ϵ , q ) ∈ δ ∗ {\displaystyle (q,\epsilon ,\epsilon ,q)\in \delta *} iga q ∈ Q {\displaystyle q\in Q} korral; alati kui kehtivad ( q , x , y , r ) ∈ δ ∗ {\displaystyle (q,x,y,r)\in \delta *} ja ( r , a , b , s ) ∈ δ ∗ {\displaystyle (r,a,b,s)\in \delta *} , siis kehtib ka ( q , x a , y b , s ) ∈ δ ∗ {\displaystyle (q,xa,yb,s)\in \delta *} . Laiendatud siirderelatsioon on olemuslikult siirdegraafi refleksiivne transitiivne sulund, mis võtab arvesse ka servade silte. Ühe tee sildi leidmiseks konkateneeritakse seda teed moodustavate servade sildid kindlas järjekorras. Muunduri T {\displaystyle T} käitumine on ratsionaalrelatsioon [ T ] {\displaystyle [T]} , mida defineeritakse järgnevalt: x [ T ] y {\displaystyle x[T]y} siis ja ainult siis, kui leiduvad i ∈ I {\displaystyle i\in I} ja f ∈ F {\displaystyle f\in F} selliselt, et ( i , x , y , f ) ∈ δ ∗ {\displaystyle (i,x,y,f)\in \delta *} . See tähendab, et T {\displaystyle T} muundab sõne x ∈ Σ ∗ {\displaystyle x\in \Sigma *} sõneks y ∈ Γ ∗ {\displaystyle y\in \Gamma *} , kui algolekust lõppolekuni viib tee, mille sisendi silt on x ning väljundi silt y. Lõplikud muundurid võivad olla kaalutud. Sellised juhul on igal siirdel lisaks sisend- ja väljundsildile ka kaalu tähistav silt. Kaalutud lõplik muundur üle kaalude hulga K defineeritakse sarnaselt kaalumata muunduriga kaheksakohalise ennikuna T = ( Q , Σ , Γ , I , F , E , λ , ρ ) {\displaystyle T=(Q,\Sigma ,\Gamma ,I,F,E,\lambda ,\rho )} , kus Q , Σ , Γ , I , F {\displaystyle Q,\Sigma ,\Gamma ,I,F} defineeritakse samamoodi, kui ülalpool näidatud; E ⊆ Q × ( Σ ∪ { ϵ } ) × ( Γ ∪ { ϵ } ) × Q × K {\displaystyle E\subseteq Q\times (\Sigma \cup \{\epsilon \})\times (\Gamma \cup \{\epsilon \})\times Q\times K} , kus ε tähistab tühisõnet, on lõplik siirete hulk; λ : I → K {\displaystyle \lambda :I\rightarrow K} vastendab algolekud kaaludega; ρ : F → K {\displaystyle \rho :F\rightarrow K} vastendab lõppolekud kaaludega. Võimaldamaks kaalutud lõpliku muunduri operatsioonide täpset defineerimist, kehtib nõue, et kaalude hulk peab moodustama poolringi. Kaks kõige tavalisemat poolringi varianti on log-poolring ja troopiline poolring. Kaalumata automaati võib vaadelda kui juhtu, mil kõik kaalud kuuluvad Booleani poolringi. Järgnevad lõplikel automaatidel defineeritud tehted kehtivad ka lõplike muundurite puhul. Ühend. Kui on antud muundurid T {\displaystyle T} ja S {\displaystyle S} , siis eksisteerib muundur T ∪ S {\displaystyle T\cup S} nii, et x [ T ∪ S ] y {\displaystyle x[T\cup S]y} kehtib siis ja ainult siis, kui kehtib x [ T ] y {\displaystyle x[T]y} või x [ S ] y {\displaystyle x[S]y} . Konkatenatsioon. Kui on antud muundurid T {\displaystyle T} ja S {\displaystyle S} , siis eksisteerib muundur T ⋅ S {\displaystyle T\cdot S} nii, et x [ T ⋅ S ] y {\displaystyle x[T\cdot S]y} siis ja ainult siis, kui leiduvad x 1 , x 2 , y 1 , y 2 {\displaystyle x_{1},x_{2},y_{1},y_{2}} nii, et x = x 1 x 2 , y = y 1 y 2 , x 1 [ T ] y 1 , x 2 [ S ] y 2 {\displaystyle x=x_{1}x_{2},y=y_{1}y_{2},x_{1}[T]y_{1},x_{2}[S]y_{2}} . Kleene sulund. Kui on antud muundurid T {\displaystyle T} ja S {\displaystyle S} , siis eksisteerib muundur T*, mille kohta kehtivad järgmised omadused: ϵ [ T ∗ ] ϵ {\displaystyle \epsilon [T*]\epsilon } (k1) kui w [ T ∗ ] y {\displaystyle w[T*]y} ja x [ T ] z {\displaystyle x[T]z} siis w x [ T ∗ ] y z {\displaystyle wx[T*]yz} (k2) ei kehti x [ T ∗ ] y {\displaystyle x[T*]y} , kui just (k1) või (k2) vastupidist ei nõua. Kompositsioon. Kui on antud muundur T {\displaystyle T} üle tähestike Σ {\displaystyle \Sigma } ja Γ {\displaystyle \Gamma } ning muundur S {\displaystyle S} üle tähestike Γ {\displaystyle \Gamma } ja Δ {\displaystyle \Delta } , siis eksisteerib muundur T ∘ S {\displaystyle T\circ S} üle tähestike Σ {\displaystyle \Sigma } ja Δ {\displaystyle \Delta } nii, et x [ T ∘ S ] z {\displaystyle x[T\circ S]z} siis ja ainult siis, kui leidub sõne y ∈ Γ ∗ {\displaystyle y\in \Gamma *} nii, et x [ T ] y {\displaystyle x[T]y} ja y [ S ] z {\displaystyle y[S]z} . See tehe kehtib ka kaalutud juhu korral. See definitsioon järgib tähistust, mis on kasutusel matemaatikas relatsioonide kompositsiooni märkimiseks. Traditsiooniliselt loetakse relatsioonide kompositsiooni aga teisiti: kui on antud relatsioonid T {\displaystyle T} ja S {\displaystyle S} , siis ( x , z ) ∈ T ∘ S {\displaystyle (x,z)\in T\circ S} , kui leidub y selliselt, et ( x , y ) ∈ S {\displaystyle (x,y)\in S} ja ( y , z ) ∈ T {\displaystyle (y,z)\in T} . Projektsioon automaadiks. On antud kaks projektsiooni funktsiooni: π 1 {\displaystyle \pi _{1}} säilitab sisendlinti ning π 2 {\displaystyle \pi _{2}} väljundlinti. Funktsiooni π 1 {\displaystyle \pi _{1}} projektsioon defineeritakse järgnevalt: Kui on antud muundur T {\displaystyle T} , siis leidub lõplik automaat π 1 T {\displaystyle \pi _{1}T} selliselt, et π 1 T {\displaystyle \pi _{1}T} aktsepteerib sõne x siis ja ainult siis, kui leidub sõne y, mille puhul kehtib x [ T ] y {\displaystyle x[T]y} . Teine projektsioon π 2 {\displaystyle \pi _{2}} defineeritakse analoogselt. Determineerimine. Kui on antud muundur T {\displaystyle T} , soovime luua ekvivalentse muunduri, millel on ainult üks algolek ning mille puhul ei välju ühestki olekust mitu sama sisendsildiga kaart. Kaalutud muunduri minimeerimine. Epsilonsiirete eemaldamine. On võimalik otsustada, kas muunduri T {\displaystyle T} relatsioon [ T ] {\displaystyle [T]} on tühi. On võimalik otsustada, kas leidub sõne y selliselt, et antud sõne x puhul kehtiks x [ T ] y {\displaystyle x[T]y} . Ei ole võimalik otsustada, kas kaks muundurit on ekvivalentsed. Ekvivalentsuse üle on võimalik otsustada erijuhul, kus muunduri T {\displaystyle T} relatsioon [ T ] {\displaystyle [T]} on osafunktsioon. Kaalutud lõplikud muundurid on kasutusel keeletehnoloogias, muuhulgas masintõlke ning masinõppe juures. Jurafsky, Daniel (2009). Speech and Language Processing. Pearson. ISBN 9789332518414. "Speech and Language Technology. Morphology &Transducers" (PDF). Vaadatud 25.11.2018. Blackburn, P; Striegnitz, K. "Finite State Transducers". Vaadatud 24.11.2018.{{netiviide}}: CS1 hooldus: mitu nime: autorite loend (link) Qasmi, A (14.06.2014). "Formal Language and Automata". Vaadatud 28.11.2018. Koskenniemi, K. "Two-level morphology: A general computational model of word-form recognition and production" (PDF). Originaali (PDF) arhiivikoopia seisuga 21.12.2018. Vaadatud 23.11.2018. Holzer, M; Kutrib, M. "Implementation and Application of Automata". Vaadatud 24.11.2018.{{netiviide}}: CS1 hooldus: mitu nime: autorite loend (link) Mohri,M; Pereira, F; Riley, M. "Weighted Finite-State Transducers in Speech Recognition" (PDF). Vaadatud 26.11.2018.{{netiviide}}: CS1 hooldus: mitu nime: autorite loend (link) Berstel, Jean; Reutenauer, Cristophe (2011). Noncommutative rational series with applications. Encyclopedia of Mathematics and Its Applications. Cambridge: Cambridge University Press. Lk 16. ISBN 978-0-521-19022-0.{{raamatuviide}}: CS1 hooldus: mitu nime: autorite loend (link) Lothaire, M (2005). Applied combinatorics on words. Encyclopedia of Mathematics and Its Applications. A collective work by Jean Berstel, Dominique Perrin, Maxime Crochemore, Eric Laporte, Mehryar Mohri, Nadia Pisanti, Marie-France Sagot, Gesine Reinert, Sophie Schbath, Michael Waterman, Philippe Jacquet, Wojciech Szpankowski, Dominique Poulalhon, Gilles Schaeffer, Roman Kolpakov, Gregory Koucherov, Jean-Paul Allouche and Valérie Berthé. Cambridge: Cabridge University Press. Lk 211. ISBN 0-521-84802-4. Mohri, M. "Formal Languages and Applicarions. Weighted Finite-State Transducer Algorithms: An Overview" (PDF). Vaadatud 23.11.2018. Griffiths, T.V (1968). The unsolvability of the Equivalence Problem for Λ-Free nondeterministic generalized machines. Knight, Kevin; May, Jonathan (2009). Applications of Weighted Automata in Natural Language Processing". In Manfred Droste; Werner Kuich; Heiko Vogler. Handbook of Weighted Automata. Springer Science & Business Media. ISBN 978-3-642-01492-5.{{raamatuviide}}: CS1 hooldus: mitu nime: autorite loend (link) "Learning with Weighted Transducers (PDF)" (PDF). Vaadatud 11.11.2018.