Sistemi za strojno prevajanje na osnovi pravil plitkega prenosa\index{plitki prenos} uporabljajo pri izdelavi prevodov\index{prevod} iz izvornega v ciljni jezik enostavne metode analize, prenosa in sinteze. Sama analiza izvornih povedi temelji na oblikoskladenjskem označevanju, ki se izvaja s pomočjo oblikoskladenjsko označenih enojezičnih slovarjev. Transfer uporablja pravila plitkega prenosa\index{plitki prenos} in dvojezični slovar izvornega in ciljnega jezika. Pri sintezi je uporabljen enojezični slovar ciljnega jezika, ki je sestavljen na enak način kot slovar, uporabljen pri analizi, le da se ga uporablja za sintezo besed in ne za označevanje izvornih besed.

\section{Oblikoskladenjski slovar}
\label{section:enojezičnimorfoloskooznačenislovar}

Besedna oblika v slovenščini, tudi v večini ostalih indoevropskih jezikov, je sestavljena iz krna in končnice ter redkeje predpone. Besedne oblike z istim pomenom družimo v razrede -- lekseme. Tipični predstavnik takega razreda je lema -- kanonična oblika. Oblikoskladenjski slovar tako združuje vse besedne vrste v razrede s tipičnimi predstavniki -- lemami. Nadalje te razrede, oziroma njihove tipične predstavnike druži v paradigme, razrede ki združujejo vse vse leme, ki se spreminjajo po istih pravilih glede na oblikoskladenjske oznake. Definicija \ref{def:enojezicnislovar} vsebuje formalno definicijo oblikoskladenjskega slovarja.

\begin{definic}
\label{def:beseda}
Beseda $w$ je sestavljena iz predpone $pr$, krna $k$ in pripone $po$: $w = pr\circ k\circ po$. $\circ$ označuje stik dveh nizov.
\end{definic}
\begin{definic}
\label{def:oblikoskladenjskaoznaka}
Oblikoskladenjska oznaka (morphosyntactic description) $MSD$ vsaki besedni obliki pripiše njen razred. Vsaki besedi $w$ pripada oblikoskladenjska oznaka $MSD$, torej beseda pripada množici, ki jo opisuje ta oznaka: $w \in MSD_i$.
\end{definic}
\begin{definic}
\label{def:leksem}
Leksem $Le$ je sestavljen iz besed z istim pomenom, oblika besed je definirana z množico pravil $Le_p$. Množico pravil $Le_p$ sestavljajo pravila oblike $p_i \in Le_p; p_i \equiv pr_i\circ k_i\circ po_i \Rightarrow MSD_i$.
\end{definic}
\begin{definic}
\label{def:lema}
Tipični predstavnik leksema $Le$ je beseda v kanonski obliki, imenujemo jo lema $lm$.
\end{definic}
\begin{definic}
\label{def:besedapripadaleksemu}
Beseda $w$ pripada določenemu leksemu $Le$, če obstaja vsaj eno pravilo $p_i \in Le_p$, za katero velja:\\
 $w \in Le  \Rightarrow \exists p_i \in Le_p;w = pr\circ k\circ po;p_i \equiv pr_i\circ k_i\circ po_i \Rightarrow MSD_i;pr_i=pr;k_i=k;po_i=po;w \in MSD_i$.
\end{definic}
\begin{definic}
\label{def:paradigma}
Paradigma $P$ združuje lekseme, ki vsebujejo nabor pravil, ki se razlikujejo le po krnih:
$Le \in P \Rightarrow \forall p_i \equiv pr_i\circ k_i\circ po_i \Rightarrow MSD_i \in Le_i \in P \exists p_j \equiv pr_j\circ k_j\circ po_j \Rightarrow MSD_j \in Le: pr_i = pr_j;po_i = po_j;MSD_i = MSD_j;$
\end{definic}
\begin{definic}
\label{def:oklikoskladenjskislovar}
Oblikoskladenjski slovar sestavljajo paradigme iz definicije \ref{def:paradigma} ter leme iz definicije \ref{def:lema} s povezavo na paradigme:
$lm \in P_i$.
\end{definic}

Oblikoskladenjski slovar, ki ga uporablja Apertium\index{Apertium} -- lahko pa bi takšne slovarje z manjšimi spremembami uporabljali tudi drugi prevajalni sistemi -- temelji na lemah, ki so zbrane v paradigmah. Posamezna paradigma združuje vse leme, ki se spreminjajo po istih pravilih glede na oblikoskladenjske oznake.

\begin{table}[h]
\centering
\caption{\small Razlaga značk in atributov zapisa slovarjev v formatu Apertium.}
\begin{tabular}{|l|l|}
\hline
\hline
značka & opis\\
\hline
<pardef> & definicija paradigme\\
<e> & element for entry -- zapis v slovarju in paradigmi\\
<p> & string pair -- par nizov\\
<par> & reference to paradigm -- povezava na paradigmo\\
<re> & reference to regular expression -- povezava na regularni izraz\\
<s> & reference to regular symbol -- povezava na simbole\\& oblikoskladenjskih oznak\\
<i> & reference to inentity transduction -- način za zapis para nizov\\& z isto vsebino\\
<l> & left part -- leva stran zapisa besedila s slovničnimi simboli\\
<r> & right part -- desna stran zapisa besedila s slovničnimi simboli\\
<lm> & lema\\
\hline
\hline
atribut & opis\\
\hline
n & dejanska vsebina značke <s>\\
\hline
\end{tabular}
\label{tab:opisznackslovarapertium}
\end{table}

\begin{figure}[h!]
\footnotesize
\begin{verbatim}
<e lm="cepljen"><i>cepljen</i><par n="žveplen/__pridevnik"/></e>
<e lm="procesija"><i>procesij</i><par n="žog/a__samostalnik"/></e>
<e lm="cerkev"><i>cerk</i><par n="cerk/ev__samostalnik"/></e>

lema: cerkev
krn: cerk
paradigma: cerk/ev__samostalnik
\end{verbatim}
\normalsize
\caption{\small Del zapisov v enojezičnem slovarju. Lema je zapisana v atributu \emph{lm} značke \emph{e}, nato sledi krn ter značka \emph{par}, ki označuje paradigmo. Zapis \emph{cerkev} je predstavljen z lemo, krnom ter paradigmo. Značke so obširneje predstavljene v tabeli \ref{tab:opisznackslovarapertium}.}
\label{fig:monolingualdictionaryentries}
\end{figure}

Slika \ref{fig:monolingualdictionaryentries} kaže primere lem in njihovo članstvo v paradigmah. Lema je predstavljena s svojim imenom (ime leme), krnom, najdaljšim delom, ki je skupen vsem besednim oblikam leme, in z imenom paradigme, v kateri so opisana vsa pravila sprememb glede na oblikoskladenjske kategorije. Posamezen zapis v slovarju je predstavljen z oznako XML \emph{e}, atribut te oznake \emph{lm} predstavlja ime leme, gnezdena oznaka \emph{i} krn besede, oznaka \emph{par} pa ime paradigme.

\begin{figure}[h!]
\footnotesize
\begin{quote}
\begin{verbatim}
<pardef n="cerk/ev__samostalnik">
  <e>
    <p>
      <l>
        ev
      </l>
      <r>
        ve
        <s n="samostalnik"/>
        <s n="ženski"/>
        <s n="ednina"/>
        <s n="imenovalnik"/>
      </r>
    </p>
  </e>
  <e>
    <p>
      <l>
        ev
      </l>
      <r>
        ev
        <s n="samostalnik"/>
        <s n="ženski"/>
        <s n="ednina"/>
        <s n="rodilnik"/>
      </r>
    </p>
  </e>
  ...
</pardef> 
\end{verbatim}
\end{quote}
\normalsize
\caption{\small Del paradigme\index{paradigma} za samostalnike ženskega spola v slovenščini. Tipični predstavnik je lema \emph{cerkev}. Končnica \emph{-ev} se spreminja v skladu z različnimi MSD. Značke so obširneje predstavljene v tabeli \ref{tab:opisznackslovarapertium}.}
\label{fig:paradigm}
\end{figure}

Primer za lemo \emph{cerkev} je predstavljen na sliki \ref{fig:monolingualdictionaryentries}. Posamezna gesla enojezičnega slovarja so združena v oblikoskladenjske paradigme\index{paradigma}, kot so definirane v \citep{spencer1991}. Oblikoskladenjske paradigme\index{paradigma} predstavljajo razrede lem, ki se spreminjajo na isti način (glede na vse možne besedne oblike). Z drugimi besedami: vsebujejo vse leme, katerih vse besedne oblike se spreminjajo na enak način za vse oblikoskladenjske oznake MSD, ki so obširneje predstavljene v razdelku \ref{section:msd}.

\begin{table}[h]
\centering
\caption{\small Vse besedne oblike za slovensko lemo mesto.}
\begin{tabular}{|l|l|l|l|}
  \hline
  besedna oblika & število & sklon \\
  \hline
mest-o & ednina & imenovalnik \\
mest-a & ednina & rodilnik \\
mest-u & ednina & dajalnik \\
mest-o & ednina & tožilnik \\
mest-u & ednina & mestnik  \\
mest-om & ednina & orodnik \\
mest-a & množina & imenovalnik \\
mest- & množina & rodilnik     \\
mest-om & množina & dajalnik   \\
mest-a & množina & tožilnik    \\
mest-ih & množina & mestnik    \\
mest-i & množina & orodnik     \\
mest-i & dvojina & imenovalnik \\
mest- & dvojina & rodilnik     \\
mest-oma &  dvojina & dajalnik \\
mest-i & dvojina & tožilnik    \\
mest-ih & dvojina & mestnik    \\
mest-oma & dvojina & orodnik   \\
  \hline
\end{tabular}
\label{tab:mesto}
\end{table}

Slika \ref{fig:paradigm} kaže primer paradigme\index{paradigma} za ženski samostalnik v slovenščini.

Uporaba paradigme\index{paradigma} omogoča izdelavo kompaktnejšega zapisa podatkov, kot je prikazano na sliki \ref{fig:paradigm}. Za paradigmo \emph{cerk/ev\_\_samostalnik} v slovenskem jeziku velja: vsi samostalniki prve ženske sklanjatve paradigme\index{paradigma} \emph{-ev}, kot so cerkev, breskev, podkev, se sklanjajo po istem vzorcu in jih združimo v isto paradigmo. Enostavno pravilo\index{pravilo} določa spremembo besede iz imenovalnika v rodilnik s spremembo končnice iz cerkev v cerkve, torej $-ev \leftarrow -ve$. Eno pravilo\index{pravilo} tako zadošča za celo skupino besed in ne le za en osamljen primer.

Pri indoevropskih jezikih, ki večinoma uporabljajo konkatenativno oblikoslovje,\footnote{Besede so sestavljene iz več združenih (\gls{concatenated}) morfemov, ki so predstavljeni v razdelku \ref{section:morfem}} besedne oblike določajo menjave obrazil, najpogosteje pripon ter včasih predpon. V to družino spada večina evropskih jezikov. Primer iz češčine: pridevnik {\it sladk\'y} (sladek) lahko spremenimo v {\it nej-slad-\v{s}\'i-ho} (najslajši -- moški ali srednji spol imenovalnik ali tožilnik) z dodajanjem pripone \emph{nej-}, ki predstavlja presežnik, in z menjavo pripone \emph{-k\'y} (komparativ) s pripono \emph{-\v{s}\'i} ter z dodajanjem pripone \emph{-ho} moški ali srednji spol imenovalnik ali tožilnik.

V tabeli \ref{tab:mesto} je predstavljen primer iz slovenščine za lemo \emph{mesto}, ki vsebuje 18 besednih oblik, za tri števila in 6 sklonov.

\section{Dvojezični slovar}
\label{section:dvojezicnislovar}

\begin{definic}
\label{def:leksikalnakategorija}
Leksikalne kategorije $Lk$ predstavljajo poljubne podnize oblikoskladenjskih oznak $MSD$ (definirane v definiciji \ref{def:oblikoskladenjskaoznaka}). 
\end{definic}
\begin{definic}
\label{def:lemaniz}
 Par $\langle lema, oznaka\rangle ;oznaka \in Lk;lema \in Lm$; kjer je $Lk$ definirana v definiciji \ref{def:leksikalnakategorija} in $Lm$ definirana v definiciji \ref{def:lema}; označuje lemo s pripadajočim nizom leksikalnih kategorij.
\end{definic}
\begin{definic}
\label{def:smerveljavnosti}
 Smer veljavnosti $smer \in \left\{{LR, RL}\right\};LR \equiv$ od izvora k cilju; $LR \equiv$ od cilja k izvoru; določa kateri prevajalni smeri je namenjen zapis. Izpuščeni operator smeri dopušča poljubno smer.
\end{definic}

\begin{definic}
\label{def:prevajalnipar}
 Prevajalni par $pp \equiv smer<<lI,oI>,<lC,oC>> \leftrightarrow <lC,oC>;lI,lC \in Le;oI,oC \in Lk$. Lema izvornega jezika s pripadajočo oznako se prevaja v lemo ciljnega jezika s pripadajočo oznako.
\end{definic}

\begin{definic}
\label{def:dvojezicnislovar}
Dvojezični slovar $Ds: x \in Ds \Rightarrow x \in pp$ je množica parov iz definicije \ref{def:prevajalnipar}.
\end{definic}

Definicija \ref{def:dvojezicnislovar} opisuje zapise dvojezičnega slovarja. Oznaka izvorne leme se ponavadi ujema z oznako ciljne leme, še posebej pri sorodnih jezikih. Uporaba oznak omogoča razdvoumljanje lem z istim imenom in različnim pomenom. Dvojezični slovar z menjavo oznak omogoča opisovanje leksikalnih razlik med jezikoma.

\begin{figure}[h!]
\begin{quote}
\footnotesize
\begin{verbatim}
<e><p>
  <l>okno<s n="samostalnik"/><s n="srednji"/></l>
  <r>prozor<s n="samostalnik"/><s n="moški"/></r>
</p></e>
<e><p>
  <l>okolica<s n="samostalnik"/><s n="ženski"/></l>
  <r>okolina<s n="samostalnik"/><s n="ženski"/></r>
</p></e>
<e><p>
  <l>okoli<s n="predlog"/></l>
  <r>oko<s n="predlog"/></r>
</p></e>
<e><p>
  <l>okoliščina<s n="samostalnik"/><s n="ženski"/></l>
  <r>prilika<s n="samostalnik"/><s n="ženski"/></r>
</p></e>
\end{verbatim}
\end{quote}
\normalsize
\caption{\small Primeri dvojezičnih prevodov\index{prevod} lem iz slovenščine v srbščino. Značke so obširneje predstavljene v tabeli \ref{tab:opisznackslovarapertium}.}
\label{fig:bilingualexamples}
\end{figure}
Dvojezični slovarji temeljijo na parih \emph{izvorna lema -- ciljna lema} oziroma na poravnanih besednih zvezah v lematizirani obliki, torej na dobesednih prevodih\index{prevod} lem. Primeri dvojezičnih prevodov\index{prevod} lem iz slovenščine v srbščino so predstavljeni na sliki \ref{fig:bilingualexamples}.

Poleg samega prenosa iz izvornega v ciljni jezik lahko opišemo še prenos oblikoskladenjskih oznak, ki se spremenijo pri samem prevodu\index{prevod}. Primer \ref{example:bilingualchangegender} kaže prevod\index{prevod} slovenske besede \emph{okno} v srbsko besedo \emph{prozor}, pri čemer se spremeni tudi spol iz srednjega v moški.

\begin{example}
\gll okno prozor
     \emph{samostalnik,srednji} \emph{samostalnik, moški}
\glt ``okno''
\glt ``prozor''
\glend
\label{example:bilingualchangegender}
\end{example}

\section{Metode}
\label{section:metode}
Vsak modul s slike \ref{fig:changed_system} je sestavljen iz osnovne programske opreme in jezikovnoodvisnih podatkov. Podatki so v ogrodju Apertium\index{Apertium} strukturirani v formatu XML \citep{xml2008}. Naslednji razdelki predstavljajo opis metod za samodejno izdelavo jezikovnih podatkov iz razdelka \ref{section:pregleduporabljenihpodatkovnihtipov}.

\subsection{Izdelava enojezičnih oblikoskladenjskih slovarjev izvornega in ciljnega jezika}
\label{section:monolingual}
Iz oblikoskladenjsko označenega in lematiziranega korpusa najprej izluščimo vse besedne oblike ter jih razdelimo po lemah. Uporabili smo korpus ,,1984'', ki je natančneje predstavljen v razdelku \ref{section:multexteast}. Primer označene povedi iz tega korpusa je na sliki \ref{fig:corpus}. Leme družimo v paradigme, kar nam omogoča sestavljanje manjkajočih besednih oblik; izdelava paradigem je razložena v razdelku \ref{section:paradigmcreation}. 

\begin{figure}[h!]
\begin{quote}
\small
\begin{verbatim}
lema: cerkev
krn: cerk
primeri besednih oblik:
  besedna oblika: cerkev
  pripona: ev
  MSD: samostalnik ženski spol ednina imenovalnik
  besedna oblika: cerkvah
  pripona: vah
  MSD: samostalnik ženski spol ednina+mestnik
\end{verbatim}
\end{quote}
\caption{\small Del paradigme\index{paradigma} \emph{cerk-ev}. Lema: cerkev, krn: cerk, dve besedni obliki \emph{cerkev} in \emph{cerkvah}.}
\normalsize
\label{fig:paradigmexample}
\end{figure}

Jezikovna gradiva projekta MULTEXT-EAST vsebujejo tudi oblikoskladenjsko označene lek\-sikone vseh podprtih jezikov, med njimi tudi slovenščine in v novi različici tudi srbščine. Metoda omogoča gradnjo takšnih leksikonov, preizkušena pa je bila na jezikovnem paru, ki takšen leksikon sicer vsebuje, vendar jo lahko uporabljamo tudi za ostale jezikovne pare, ki takšnih leksikonov nimajo. Ko je bila izdelana metoda, tudi srbščina še ni imela leksikona. Predstavljena je bila v članku \citep{vicic2009d}.

\subsubsection{Izdelava paradigem}
\label{section:paradigmcreation}

\begin{algorithm}[h]
\begin{quote}
\begin{algorithmic}
\State input: $paradigme$
\ForAll{$p1 \in paradigme$}
 \ForAll{$p2 \in paradigme$}
  \If{$p1\ldotp besednaVrsta = p2\ldotp besednaVrsta \;\;\wedge $\\
      $\;\;\;\;\;\;\;\;\;\;\;\;\;\; \nexists z1 \in p1.zapisi \;\;\wedge $\\
      $\;\;\;\;\;\;\;\;\;\;\;\;\;\; z2 \in p2.zapisi \;\;\wedge $\\
      $\;\;\;\;\;\;\;\;\;\;\;\;\;\; z1.MSD = z2.MSD \;\;\wedge $\\
      $\;\;\;\;\;\;\;\;\;\;\;\;\;\; z1\ldotp koncnica \neq z2\ldotp koncnica$\\
      $\;\;\;\;\;\;\;\;\;\;$}
   \State združi paradigmi $p1$ in $p2$ v paradigmo $p1$
   \State $paradigme \gets paradigme \setminus p2$ \Comment{brišemo p2 iz množice paradigem}
  \EndIf
 \EndFor
\EndFor
\State output: $paradigme$
\end{algorithmic}
\caption{\small Algoritem za gradnjo paradigem\index{paradigma}.}
\label{alg:algoritemzaparadigme}
\end{quote}
\end{algorithm}
\normalsize

Leme z enakimi spremembami družimo v paradigme\index{paradigma}; vsaka \index{paradigma} ima naslednje elemente:
\begin{itemize}
\item tipična lema -- iz te leme izpeljemo začetno paradigmo;
\item krn -- najdaljši skupni del vseh besednih oblik v lemi;
\item množica vseh besednih oblik, razdeljenih na krn, ter obrazila -- k vsaki besedni obliki je zapisana oblikoskladenjska oznaka (MSD) po \citep{erjavec2010}.
\end{itemize}

Primer paradigme\index{paradigma} je prikazan na sliki \ref{fig:paradigmexample}.

Označene leksikone, zbirke besednih oblik s pripisanimi lemami in MSD izvlečemo iz označenega korpusa, kot je ,,1984''. Paradigme\index{paradigma} izdelamo z algoritmom \ref{alg:algoritemzaparadigme}.

  
Vse besedne oblike za vsako lemo združimo v razred, ki predstavlja to lemo. Za vsak razred izdelamo paradigmo, ki vsebuje na začetku le zapise ene leme. Sledi združevanje paradigem\index{paradigma} po algoritmu \ref{alg:algoritemzaparadigme}: dve paradigmi združimo v eno, če pripadata isti besedni vrsti (prva kategorija MSD) in če se noben par zapisov ne izključuje. Dva zapisa se izključujeta, če imata MSD in različna obrazila, kot kaže primer na sliki \ref{fig:paradigmnotagree}. Torej dve paradigmi družimo, če ena predstavlja popolno podmnožico druge paradigme\index{paradigma}. Vsaka paradigma\index{paradigma} ima shranjen celoten seznam vseh lem, ki jo sestavljajo; ta seznam pri združevanju vsebuje leme obeh paradigem.

Oblikoskladenjski slovarji izvornega in ciljnega jezika so bili zgrajeni s pomočjo paradigem\index{paradigma}; leme z manjkajočimi besednimi oblikami v originalnih leksikonih so bile dopolnjene, velikost končnega leksikona je bila približno dvajset krat večja od začetnega \citep{vicic2009d}.

\begin{figure}[hb]
\begin{quote}
\small
\begin{verbatim}
lema: cerkev
krn: cerk
	besedna oblika: cerkev
	pripona: ev
	MSD: samostalnik ženski spol ednina imenovalnik
	lema: ana
	krn: an
	besedna oblika: ana
	pripona: a
	MSD: samostalnik ženski spol ednina imenovalnik
ev != a
\end{verbatim}
\end{quote}
\caption{\small Besedni obliki se ne ujemata, kar pomeni, da paradigmi ne združimo.}
\label{fig:paradigmnotagree}
\end{figure}

\subsection{Izdelava dvojezičnih prevajalnih slovarjev}
\label{section:bilingual}
Dvojezični prevajalni slovar lahko izdelamo iz poravnanega dvojezičnega korpusa s pomočjo stohastičnih metod oziroma modelov \citep{vicic2008c}. Poseben problem pri uporabi stohastičnih modelov je v redkih podatkih (\gls{sparse data problem}) \citep{katz1987}. Osnovni korpus ima določeno število dovolj dobro opisanih pravil\index{pravilo} in dovolj pogosto zastopanih besed, vsebuje pa tudi velik odstotek slabo predstavljenih besed in pravil\index{pravilo}. Z večanjem korpusa uvajamo tudi nove besede. Tako se odstotek slabo opisanih besed in pravil\index{pravilo} z večanjem korpusa ne manjša. Problem redkih (pomanjkljivih) podatkov rešujemo s pomočjo naprednih algoritmov, ki upoštevajo predhodno znanje o problemu, izkušnje s sorodnih področij ali pa celo povsem tujih področij. Šumne podatke izločamo s pomočjo zakonitosti v podatkih, z izločanjem ekstremov. Paziti moramo, da pri izločanju napačnih podatkov ne pretiravamo in korpusa preveč ne "porežemo", poenostavimo.

Opisanega problema smo se lotili z dvema na novo razvitima metodama \citep{vicic2010b}, ki sta predstavljeni v naslednjih razdelkih:
\begin{itemize}
\item \emph{poravnava lematiziranih besed}: iskanje poravnav med lemami jezikovnega para učnega korpusa namesto iskanje povezav med vsemi besednimi vrstami;
\item \emph{razširitev dvojezičnega slovarja s podobnicami in iskanje najprimernejših paradigem v ciljnem enojezičnem slovarju}: pri tej metodi se zanašamo na podobnice, kot so predstavljene v razdelku \ref{section:podobnice}. Leme so prenesene v ciljni jezik brez prevoda, v ciljnem slovarju pa je novi lemi poiskana najprimernejša paradigma.
\end{itemize}

\subsubsection{Poravnava lematiziranih besed}
\label{section:poravnavalem}

Dvojezični prevajalni slovar, opisan je v definiciji \ref{def:dvojezicnislovar}, je sestavljen iz parov \emph{izvorna lema z oznako besedne vrste -- ciljna lema z oznako besedne vrste}, ki omogočajo prevajanje v ciljni jezik. Oznake besednih vrst v dvojezičnih slovarjih omogočajo enostavno izogibanje dvoumnostim enako imenovanih lem različnih besednih vrst.

\begin{figure}[h]
\begin{quote}
\small
\begin{verbatim}
priti_SAMOSTALNIK biti_GLAGOLP do_PREDLOG 
podrt_PRIDEVNIK drevo_SAMOSTALNIK . 

o_PREDLOG kateri_ZAIMEK on_ZAIMEK biti_GLAGOLP 
praviti_GLAGOL .

...
\end{verbatim}
\end{quote}
\normalsize
\caption{\small Pripravljeni učni podatki: leme in besedne vrste za vsako besedo v korpusu.}
\label{fig:lemmata}
\end{figure}

Besede v enojezičnih slovarjih so zapisane v lematizirani obliki, besedne oblike pa so zabeležene v paradigmah, kar je natančneje razloženo v razdelku \ref{section:enojezičnimorfoloskooznačenislovar}. Metoda poravnave lem omogoča boljše rezultate v primerjavi s poravnavo besed v korpusu zaradi zmanjšanja prostora iskanja. Omejitev prostora iskanja poveča natančnost modela poravnave besed, vendar v njem ni več informacije o besednih oblikah. To informacijo smo ohranili prek povezave s paradigmami v enojezičnih slovarjih.

Za samo učenje poravnave lem lahko uporabimo poljuben statistični algoritem za iskanje poravnave besed v dvojezičnih, povedno poravnanih korpusih (SMT word-to-word model).

Uporabili smo orodje GIZA++ \citep{och2003}, ki temelji na algoritmu, prikazanem v \citep{brown1993}. Model je bil naučen na vzporednem, povedno poravnanem seznamu lem z oznakami besednih vrst, ki je bil izluščen iz korpusa ,,1984''. Del seznama pripravljenih učnih podatkov je prikazan na sliki \ref{fig:lemmata}. V korpusu je vsaki besedi dopisana še njena MSD in lema. Vzporedno povedno poravnan seznam je bil izdelan tako, da so bile za vsako besedo iz korpusa izluščene samo leme in besedne vrste, ki so prva kategorija MSD.

Oglejmo si še empirični dokaz, da je število besednih oblik v besedilu veliko večje od števila lem, še posebej za visoko pregibne jezike, kot so slovanski. Tabela \ref{tab:lemmata} kaže razliko v številu besednih oblik za isti korpus ,,1984'' v petih jezikih, in sicer v treh visoko pregibnih slovanskih jezikih, slovenščini\index{slovenščina}, srbščini\index{srbščina} in češčini, ter v angleškem in estonskem jeziku, ki sta uporabljena kot referenci.

\begin{table}[ht]
\centering
\caption{\small Primerjava števila lem s številom besednih oblik v korpusu MULTEXT-EAST \citep{erjavec2010}. Stolpec razmerje kaže količnik med številom besednih oblik ter lemami.}
\begin{tabular}{|l|l|l|l|}
  \hline
  jezik & število besednih oblik & leme & razmerje\\
  \hline
slovenščine\index{slovenščina}&	20,923&	7,895& 2.65\\
srbščina\index{srbščina}&	21,505&	8,392& 2.56\\
češčina&	    22,273&	9,060& 2.46\\
angleščina&	11,078&	7,020& 1.58\\
estonščina&	18,853&	8,679& 2.17\\
  \hline
\end{tabular}
\label{tab:lemmata}
\end{table}

S predpostavko, da je korpus ,,1984'' dober vzorec opazovanega jezika, v našem primeru slovenščine, dobimo vrednosti števila besednih oblik in lem, kot so predstavljene v tabeli \ref{tab:lemmata}. Preiskovalni prostor se je za slovenščino v primeru tega korpusa zmanjšal iz 20,923 besednih oblik na 7,895 lem.

\subsubsection{Razširitev dvojezičnega slovarja s podobnicami in iskanje najprimernejših paradigem v ciljnem enojezičnem slovarju}
\label{section:iskanjeparadigem}
Ta metoda razširja število vpisov v dvojezični slovar in ustrezno popravi enojezični oblikoskladenjski slovar. Metode, opisane v razdelkih \ref{section:bilingual} in \ref{section:monolingual}, ne zagotavljajo popolne pokritosti enojezičnih slovarjev z dvojezičnim slovarjem. Leme izvornega enojezičnega slovarja, ki po izvajanju teh metod nimajo prevodov, poskušamo prevesti s pomočjo metode, ki temelji na podobnicah. Podobnice so obširneje predstavljene v razdelku \ref{section:podobnice}. in predstavljajo besede izvornega in ciljnega jezika, ki so si podobne po obliki in pomenu.

\begin{algorithm}[h]
\begin{quote}
\begin{algorithmic}
\State input: $izvorniSlovar, ciljniSlovar, dvojezicniSlovar$
\ForAll{$k \in izvorniSlovar$}
 \If{$k \not \in dvojezicniSlovar$}
  \State $pIzvorna \gets izvorniSlovar.paradigma(k)$
  \State $par \gets <k, k>$ \Comment{sestavimo par, ki je sestavljen na obeh straneh iz izvorne leme}
  \State $pCiljna \gets ciljniSlovar.minimumDistance(pIzvorna)$ \Comment{najdi ustrezno paradigmo v ciljnem slovarju}
  \State $dvojezicniSlovar \gets dvojezicniSlovar \cup \left\{{par}\right\}$ \Comment{vstavimo par v dvojezični slovar}
  \State $ciljniSlovar \gets ciljniSlovar \cup \left\{{<pCiljna, k>}\right\}$ \Comment{vstavimo izvorno lemo z najverjetnejšo lemo v ciljni slovar}
 \EndIf
\EndFor
\State output: $izvorniSlovar, ciljniSlovar, dvojezicniSlovar$
\end{algorithmic}
\caption{\small Dodajanje manjkajočih zapisov v dvojezični slovar in posledično popravljanje enojezičnih slovarjev.}
\label{alg:razsiritevbilialgorithm}
\normalsize
\end{quote}
\end{algorithm}

 Algoritem \ref{alg:razsiritevbilialgorithm} doda manjkajoče zapise v dvojezični slovar: za vsak vnos izvornega slovarja, ki nima pokritja v dvojezičnem slovarju, tj. nima ustreznega prevoda, vstavimo v dvojezični slovar nov par \emph{izvorna lema -- izvorna lema}, kar pomeni, da prevajamo lemo v enako lemo v ciljnem jeziku. Poleg same leme je novemu zapisu dodan tudi del MSD; pri primeru na sliki \ref{fig:siritevslovarja} je zapisana besedna vrsta in spol. Nov vnos se v ciljni enojezični slovar doda, če nove leme z enako besedno vrsto ne najdemo v ciljnem slovarju. V ciljnem slovarju je dodana nova lema in zanjo izbrana paradigma, ki najbolj ustreza novo dodani lemi; to je paradigma, ki omogoča generiranje besednih oblik z ustreznimi MSD in vsebuje najdaljšo pripono, ki ustreza novi lemi. Algoritem ponovimo še za ciljni slovar, trenutni izvorni slovar postane v drugem delu metode ciljni.

Slika \ref{fig:siritevslovarja} s tremi primeri kaže potek dodajanja novih vnosov v dvojezični slovar in v ciljni slovar. Prvi primer kaže slovensko lemo \emph{list} z označeno paradigmo \emph{žvenket/\_\_samostalnik}, ki je prisotna v izvornem slovarju in nima prevoda v dvojezičnem slovarju. Drugi primer kaže nov vnos v dvojezični slovensko-srbski slovar; vpis prevaja slovensko lemo \emph{list} v srbsko lemo \emph{list}. Poleg same leme je zapisan še del MSD, v tem primeru še besedna vrsta (samostalnik) in spol (moški), ki bi se lahko tudi zamenjal, vendar se pri pomanjkanju dodatnih informacij zanašamo na podobnost besed. Tretji primer opisuje nov vpis  v ciljnem slovarju. Dodana je nova lema \emph{list} in poiskana najustreznejša paradigma \emph{um /\_\_samostalnik}. 
\begin{figure}[h]
\begin{quote}
\small
\begin{verbatim}
slovenski slovar:
lema: list
krn list
paradigma žvenket/__samostalnik

slovensko-srbski dvojezični slovar:
list samostalnik moški spol se prevaja v
list samostalnik moški spol

srbski slovar:
lema: list
krn list
paradigma um/__samostalnik
\end{verbatim}
\end{quote}
\normalsize
\caption{\small Razširitev dvojezičnega slovarja. Prvi primer kaže slovensko lemo \emph{list}, ki je prisotna v izvornem slovarju in nima prevoda v dvojezičnem slovarju. Naslednja dva primera kažeta novo dodan vnos v dvojezični slovar in nov vnos v ciljni slovar.}
\label{fig:siritevslovarja}
\end{figure}

\subsection{Izdelava statističnega jezikovnega modela ciljnega jezika}
\label{section:target}
Statistični jezikovni model uporablja za prevode v zadnjem delu prevajalnega cevovoda modul za rangiranje kandidatov. Arhitektura omogoča uporabo poljubnega modela, ki ocenjuje kakovost povedi. Zaradi enostavne implementacije algoritmov za izdelavo modela in njegove enostavne uporabe smo se odločili za uporabo statističnega modela jezika, temelječega na trigramih (trigramski model). Teoretične osnove modela so natančneje predstavljene v razdelku \ref{section:statisticnimodeljezika}, sama implementacija pa v razdelku \ref{section:predlaganaspremenjenaarhitektura}. 
Za izdelavo takšnih modelov obstajajo tudi prosto dostopna orodja, kot je CMU Statistical Modelling Toolkit \citep{clarkson1}. To orodje smo uporabili pri prvih testih, kasneje pa smo implementirali lastno različico, ki omogoča večjo fleksibilnost in izdelavo popolnoma enakih modelov. Za izdelavo modela smo uporabili lastno učno množico, sestavljeno iz korpusa naključno izbranih člankov iz Wikipedije. Korpus je obširneje predstavljen v razdelku \ref{section:wikipedia}.

\subsection{Modeliranje oblikoskladenjskih oznak izvornega jezika}
\label{section:modelled}
Oblikoskladenjska analiza s pomočjo oblikoskladenjskega slovarja izvornim besedam pripiše MSD in leme, vendar so rezultati tega procesa dvoumni. Ponavadi to dvoumnost odpravljamo s pomočjo oblikoskladenjskih označevalcev, ki izberejo najprimernejšo MSD glede na okolico besede. Na ta način je predstavljena večina arhitektur prevajalnih sistemov na osnovi pravil. Naša spremenjena arhitektura \citep{vicic2009b} opušča oblikoskladenjski označevalnik, izbiro najboljših prevodov pa prepušča poznejšim fazam prevajalnega sistema. Število možnih kandidatov za prevode, če upoštevamo vse dvoumnosti, lahko naraste do neobvladljivih števil; ta pojav je natančneje predstavljen v razdelku \ref{section:predlaganaspremenjenaarhitektura}.

\begin{algorithm}[h]
\begin{quote}
\begin{algorithmic}
\State{$kandidati \gets$ izdelajKandidate(poved)} \Comment{izdelaj vse kandidate za izvorno poved}
\ForAll{$k \in kandidati$}
 \State $sprememba \gets $uporabi pravila na $k$
 \If{$sprememba = k$}
  \State $koncniKandidati \gets k$ \Comment{shrani k med končne kandidate}
 \EndIf
\EndFor
\end{algorithmic}
\caption{\small Izločitev vseh nemogočih kandidatov za prevode\index{prevod} z uporabo pravil\index{pravilo} lokalnega ujemanja\index{ujemanje}.}
\normalsize
\label{alg:rulesalgorithm}
\end{quote}
\end{algorithm}

Veliko parov oziroma trojk MSD je nemogočih, oznake se glede na okolico medsebojno izključujejo. To dejstvo izkoriščamo pri omejevanju števila kandidatov za prevode. Ujemanje\index{ujemanje} oblikoskladenjskih kategorij lahko modeliramo s pravili, ki temeljijo na regularnih izrazih. Pravila so naučena na enojezičnem označenem korpusu; uporabili smo korpus ,,1984''. Samodejna izdelava teh pravil\index{pravilo} je predstavljena v razdelku \ref{section:samodejnalocalagreementrules}. Pravila\index{pravilo} so opisana v razdelku \ref{section:thefinitestaterules}. Uporabljena je bila ista oblika pravil\index{pravilo} kot v Apertium\index{Apertium}u. Mehanizem za odkrivanje nemogočih kandidatov prevoda\index{prevod} je prikazan v algoritmu \ref{alg:rulesalgorithm}.

Uporabijo se vsa pravila\index{pravilo}, katerih regularni izraz lahko apliciramo na kandidata prevoda\index{prevod}. Če neko pravilo\index{pravilo} kandidata spremeni, pomeni, da kandidat ni idealno sestavljen in modul ga zavrže. Tako izbrišemo vse kandidate, ki jih pravila spreminjajo, kar pomeni, da so sestavljeni iz delov, pri katerih se pojavljajo nizi MSD, ki se ne ujemajo, v učnem korpusu pa obstaja dovolj veliko število primerov, ko se enaki nizi ujemajo.

\section{Krnjenje besednih oblik}
\label{section:krnjenjealgoritem}

Krnjenje -- predstavljeno je v razdelku \ref{section:krn} -- besedi pripiše njen krn, del besede, ki je skupen vsem besednim oblikam leme. Jezikovna gradiva, ki jih potrebuje prevajalni sistem na osnovi pravil plitkega prenosa, kot je opisan v razdelku \ref{section:strbmt1}, vsebujejo tudi vsa gradiva, ki jih potrebujemo za izdelavo sistema za krnenje besed.
Proces krnenja opišemo z naslednjim postopkom:
\begin{itemize}
\item s pomočjo oblikoskladenjskega slovarja analiziramo besedo,
\item s pomočjo označevalnika MSD izberemo najprimernejšo oblikoskladenjsko obliko ter njeno lemo,
\item v oblikoskladenjskem slovarju pogledamo kakšen krn pripada izbrani lemi.
\end{itemize}

\begin{algorithm}[h]
\begin{quote}
\begin{algorithmic}
\State{$oznacenaPoved \gets$ analiziraj in razdvoumi izvorno poved} \Comment{uporabi orodja Apertium}
\ForAll{$beseda \in oznacenaPoved$}
  \State $l \gets $ poišči lemo za $beseda$ v slovarju
  \State $krn \gets $ poišči krn za $l$ v slovarju
\EndFor
\end{algorithmic}
\caption{\small Postopek izdelave krnov.}
\normalsize
\label{alg:krnjenjealgorithm}
\end{quote}
\end{algorithm}

Postopek izdelave krnov je predstavljen na sliki \ref{alg:krnjenjealgorithm}.
Oblikoskladenjski slovar za vsako lemo vsebuje tudi njen krn in pregibno paradigmo. Kombinacija teh dveh informacij omogoča izdelavo vseh besednih oblik leme. Paradigma krnu dodaja končnice in tako tvori besedne oblike, vsaka besedna oblika v paradigmi ima tudi svojo oblikoskladenjsko oznako. Uporaba oblikoskladenjskega slovarja v prevajalnem sistemu je dvojna, na začetku prevajalnega procesa je uporabljen za oblikoskladenjsko analizo izvornega besedila, vsaki izvorni besedi pripiše vse možne oblikoskladenjske oznake (MSD), ki jih uspe sestaviti iz krnov in obrazil na takšen način, da dobi izvorno besedo. Na koncu prevajalnega procesa je uporabljen oblikoskladenjski slovar za generiranje pravilne besedne oblike glede na lemo in MSD.

Po oblikoskladenjski analizi besedila moramo opraviti le še razdvoumljanje, tj. izbrati najverjetnejšo MSD.

Opisan sistem za krnjenje je bil uporabljen pri evalvaciji sistema s pomočjo metrike METEOR, vrednotenje je predstavljeno v razdelku \ref{section:metrikameteor}.