Szeged, 2009. december 3–4.
3
F˝ on´ evi csoportok azonos´ıt´ asa magyar-angol p´ arhuzamos korpuszban Recski G´abor, Varga D´aniel, Zs´eder Attila, Kornai Andr´ as BME M´edia Oktat´ o ´es Kutat´ o K¨ ozpont, e-mail: {recski,daniel,zseder,kornai}@mokk.bme.hu
1.
Bevezet´ es
Cikk¨ unkben egy magyar-angol sz¨ ovegfeldolgoz´ o rendszert mutatunk be. Els˝ ok´ent a maxim´ alis f˝ on´evi csoportok magyar, illetve angol nyelvre t¨ ort´en˝ o azonos´ıt´ as´ at v´egz˝o hunchunk komponenst ´ırjuk le. A 3. r´eszben egy sz´ot´ ar´ep´ıt˝ o m´ odszert ismertet¨ unk, a 4. r´eszben pedig le´ırjuk korpuszfeldolgoz´ o rendszer¨ unk n´eh´ any technikai r´eszlet´et, melyek lehet˝ov´e teszik, hogy nagy mennyis´eg˝ u nyers k´etnyelv˝ u sz¨oveg birtok´ aban hat´ekonyan – ak´ ar t¨ obb szerveren p´ arhuzamosan – v´egezz¨ uk el elemzett bikorpusz ´ep´ıt´es´et, ´es az adatok webes mondatt´arunkba integr´ al´ as´ at. Tov´abbi terveinkr˝ ol az 5. r´eszben sz´amolunk be. A cikkben bemutatott k´etnyelv˝ u k´ıs´erletekhez a Hunglish Korpusz [1] mondatszinten p´ arhuzamos´ıtott, magyar-angol nyelv˝ u bikorpuszt haszn´ altuk. A korpuszban sz´epirodalom, jogszab´ alyok sz¨ ovegei, h´ırlapok ´es magazinok cikkei, filmsz¨ ovegek, szoftverdokument´ aci´ ok, valamint p´enz¨ ugyi jelent´esek tal´alhat´ ok. A cikk tov´abbi r´esz´eben bemutatott elemz´esi elj´ ar´asok elv´egz´es´et k¨ ovet˝ oen a Hunglish Korpuszr´ ol az 1. t´ abl´ azatban l´ athat´ o statisztik´ at k´esz´ıthetj¨ uk. 1. t´ abl´ azat. A Hunglish korpusz sz´ amai nyelv token t´ıpus t˝ o-t´ıpus mondat NP magyar 31.4M 941k 342k 2.07M 7.6M angol 37.1M 311k 248k 2.07M 5.2M
Magyar sz¨ ovegre a morfol´ ogiai egy´ertelm˝ us´ıt´est ´es t¨ovez´est a hundisamb eszk¨oz v´egezi. Ez a hunmorph morfol´ ogiai elemz˝o a´ltal felaj´ anlott elemz´esek k¨oz¨ ul v´ alaszt, a hunpos HMM-alap´ u morfol´ ogiai c´ımk´ez˝o algoritmust alkalmazva. A hunmorph-ot ehhez t˝ okital´ al´o u ¨zemm´odban haszn´ alja, amely heurisztikus elemz´esi javaslatokkal ´el, ha az elemz´es a sz´ot´ ar´ aban megtal´ alhat´ o szavakra nem vezethet˝o vissza. A hunpos c´ımk´ez˝ o m˝ uk¨ od´es´ehez sz¨ uks´eges modelleket magyar nyelvre a Szeged Treebank [2], angol nyelvre a Penn Treebank [3] seg´ıts´eg´evel tan´ıtottuk. Angol nyelvre a hundisamb eszk¨ ozt nem alkalmazhattuk, mert a hunpos angol modellje Penn Treebank c´ımk´eket bocs´at ki, amelyek k¨ ozvetlen¨ ul nem feleltethet˝ ok meg a hunmorph angol morfol´ ogiai c´ımk´einek. (Terveink k¨ oz¨ ott szerepel ennek a kellemetlen inkonzisztenci´ anak az orvosl´ asa.) Itt az angol t¨ ovez˝onk
4
VI. Magyar Sz´ am´ıt´ og´epes Nyelv´eszeti Konferencia
a´ltal javasolt alternat´ıv´ ak k¨ oz¨ ul mindig a legr¨ ovidebbet v´ alasztottuk. Sz´ oszint˝ u p´arhuzamos´ıt´ ashoz ´es ford´ıt´ ashoz a legr¨ ovidebb lehets´eges sz´ot˝ o ´es a Penn Treebank c´ımke egy¨ uttese j´ol haszn´alhat´ o mint a token norm´ alform´ aja, b´ ar id˝ onk´ent nem teljesen helyes, pl. a grind ´es ground f˝ onevek norm´ alalakja e heurisztika szerint egybeesik.
2.
F˝ on´ evi csoportok azonos´ıt´ asa
A morfol´ ogiai inform´ aci´ ok birtok´ aban elv´egezhetj¨ uk a sz´on´ al magasabb szint˝ u egys´egek azonos´ıt´ as´ at. A f˝ on´evi csoportok azonos´ıt´ as´ ahoz (NP-chunking) az itt bemutat´ asra ker¨ ul˝ o hunchunk eszk¨oz¨ unket [4] haszn´ aljuk, mely a szegment´ al´ asi feladatot sz´ oszint˝ u c´ımk´ez´esi feladatt´ a alak´ıtva v´egzi. Els˝osorban a szavak elemz´es´ere t´ amaszkod´ o jegyek seg´ıts´eg´evel maximum entr´ opia modellt tan´ıt, majd c´ımk´ez´eskor a tan´ıt´ okorpuszban megfigyelt a´tmenetval´osz´ın˝ us´egeket figyelembe v´eve mondatonk´ent azonos´ıtja a legval´ osz´ın˝ ubb c´ımkesorokat.
2.1.
A tanul´ oadatok el˝ o´ all´ıt´ asa
A magyar nyelv˝ u tanul´ oadatokat a Szeged Treebankb˝ ol nyerj¨ uk ki: a korpuszban tal´alhat´ o maxim´ alis NP-ket feleltetj¨ uk meg chunkoknak, teh´ at azokat a f˝ on´evi csoportokat, melyeket m´ as NP nem domin´ al. B´ ar az NP-chunkok azonos´ıt´ asa a szakirodalomban leggyakrabban valamennyi minim´ alis NP megkeres´es´et jelenti, ot alkalmazni, mivel ´ıgy lehet˝ os´eg¨ unk ny´ılik c´elszer˝ ubbnek l´ attuk a fenti defin´ıci´ a mondatok k¨ ozvetlen ¨ osszetev˝oinek elk¨ ul¨ on´ıt´es´ere ´es az ig´ek argumentumszerkezet´enek felt´erk´epez´es´ere. A tokenek c´ımk´ez´esekor a Start/End [5] konvenci´ ot alkalmazzuk, mely az elterjedtebb IO ´es IOB konvenci´ okn´ al [6] t¨ obb c´ımk´et ig´enyel, ugyanakkor lehet˝ ov´e teszi t¨obbf´ele chunkbeli poz´ıci´o megk¨ ul¨ onb¨ oztet´es´et: m´ıg az el˝ obbi megold´ asok vagy egy c´ımk´evel (I-NP) jel¨ olik a chunkhoz tartoz´ o szavakat, vagy ezen fel¨ ul m´eg a chunkot kezd˝ o sz´ot jel¨ olik k¨ ul¨ on szimb´ olummal (B-NP), addig az a´ltalunk haszn´ alt jel¨ ol´es a chunkhoz nem tartoz´ o szavakon (O) k´ıv¨ ul n´egy c´ımk´et haszn´ al (B-NP, I-NP, E-NP, 1-NP), melyek rendre a chunk elej´en, k¨ ozep´en ´es v´eg´en a´ll´ o, valamint az ¨ onmag´ aban chunkot alkot´ o szavakat jel¨ olik. Az adatok kinyer´esekor feljegyezz¨ uk azt is, hogy az adott NP-be milyen m´elyen ´ agyaz´ odnak tov´ abbi NP-k, ´ıgy lehet˝ os´eg¨ unk ny´ılik egyfajta komplexit´ asfogalom alapj´ an t¨ obb chunkt´ıpust megk¨ ul¨ onb¨ oztetni. Az effajta inform´ aci´ ok kinyer´es´et nem tekintj¨ uk a c´ımk´ez˝o feladat´ anak, csup´ an a g´epi tanul´ asi feladatot k¨onny´ıtj¨ uk meg vele: optim´ alisnak az a c´ımk´ez´es bizonyult, ahol csup´ an a legalacsonyabb – teh´ at tov´ abbi NP-t nem tartalmaz´ o – chunkokat k¨ ul¨ onb¨ oztett¨ uk meg (N 1) a komplexebbekt˝ ol (N 2+). A fenti chunkdefin´ıci´ o ´es c´ımk´ez´es eredm´enyek´epp a Szeged Treebank az 1. ´ abr´ an l´ athat´ o mondata a chunkkorpuszban a 2. a´bra szerinti reprezent´ aci´ ot kapja.
Szeged, 2009. december 3–4.
5
A f¨ oldreng´es nemcsak a M´ arv´ any-tenger menti t´ers´eget r´ azta meg B-N 1 E-N 1 O B-N 2+ I-N 2+ I-N 2+ E-N 2+ O O
1. ´ abra.
2. ´ abra. Az angol nyelv˝ u tanul´ oadatok kinyer´es´ehez a Penn Treebanket haszn´ aljuk. Itt NP-chunknak tekintj¨ uk a maxim´ alis f˝ on´evi csoportok mellett azon prepoz´ıci´ os fr´ azisokat is, melyek tartalmaznak f˝ onevet, nem tartalmaznak ig´et ´es nem k´epezik r´esz´et magasabb szint˝ u NP-nek. Ezzel [7] defin´ıci´ oj´ at k¨ ovetj¨ uk, melyet a szerz˝o azzal motiv´ al, hogy az NP ´es PP szerkezetek k¨ozti hat´ art a k¨ ul¨ onf´ele nyelvek nem ugyanott h´ uzz´ ak meg, illetve a k´et kateg´ oria sz´ amos nyelvben nem is k¨ ul¨ on¨ ul el egym´ast´ ol ´elesen. Fontosnak tartjuk megeml´ıteni, hogy az NP-chunk defin´ıci´ o mindk´et nyelv eset´eben csup´an a korpuszt el˝ o´ all´ıt´ o rendszer be´ all´ıt´ asait´ ol f¨ ugg, ´ıgy amennyiben elt´er˝ o egys´egeket tekint¨ unk chunknak – ´ıgy p´eld´aul a fent eml´ıtett m´ odon a minim´ alis NP-ket szeretn´enk azonos´ıtani – u ´gy ahhoz egyszer˝ uen ´ all´ıthat´ o el˝ o megfelel˝o tan´ıt´ okorpusz. 2.2.
A jegyek
o jegy´enek teA tan´ıt´ as els˝osorban sz´oszint˝ u jegyek alapj´ an t¨ ort´enik: egy sz´ kintj¨ uk a sz´ ot¨ ovet ´es valamennyi morfol´ ogiai jegyet. A Szeged Treebank MSDkonvenci´ o szerinti annot´ aci´ oj´ at ´ atalak´ıtottuk a KR-formalizmusra, mivel az ´altalunk haszn´ alt morfol´ ogiai c´ımk´ez˝o, elemz˝o ´es egy´ertelm˝ us´ıt˝ o egyar´ ant ezt a form´atumot k¨ oveti. Jegyk´ent vett¨ uk fel az ´ıgy el˝ o´ all´ıtott KR-k´ odok valamennyi elemi ¨osszetev˝oj´et. A Penn Treebank eset´eben ezt nem tehett¨ uk meg, mivel az abban haszn´ alatos morfol´ ogiai c´ımk´ek nem kompozicion´ alisak, ´ıgy ott a teljes c´ımke mellett csup´an annak els˝ o karakter´et – mely a sz´ofajt azonos´ıtja – vessz¨ uk fel ¨on´ all´ o jegyk´ent. A sz´ oszint˝ u jegyeket minden tokenre annak 5 szavas k¨ ornyezet´eben ´ert´ekelj¨ uk ki. Bevezett¨ unk tov´ abb´ a egy jegyet, mely egy sz´o adott hossz´ us´ ag´ u k¨ ornyezet´eben az egym´ast k¨ ovet˝ o szavak sz´ofaji c´ımk´einek sorozatait ´ırja le a k¨ ovet-
6
VI. Magyar Sz´ am´ıt´ og´epes Nyelv´eszeti Konferencia
kez˝o m´odon: ha a jegy sugar´ at r-rel, egy mondat i-edik poz´ıci´ oj´ aban a´ll´ o sz´ot wi -vel, sz´ofaji c´ımk´ej´et pedig pi -vel jel¨ olj¨ uk, u ´gy, u ´gy b´ armely wi sz´ora jegyk´ent ugg˝o r´eszintervallum´ at. A KRvessz¨ uk fel a pi−r . . . pi+r sorozat o¨sszes ¨osszef¨ mint´ akat kiv´ alaszt´ o jegy sugar´ at n¨ ovelve a chunkol´ as F-pontsz´ama is n˝o, 3-n´ al magasabb sug´ ar mellett azonban a jegyek magas sz´ama nem teszi lehet˝ov´e a modell tan´ıt´ as´ at. 2.3.
A statisztikus modell
A c´ımk´ez´esi feladat modellez´es´ehez rejtett Markov Modellt (HMM, [8]) tan´ıtottunk, melynek kibocs´ at´asi modellj´et Maximum Entr´ opia modellb˝ ol [9] nyert¨ uk. Az al´ abbiakban ismertetj¨ uk modell¨ unket, ´es a m¨og¨otte ´all´ o statisztikai el˝ofeltev´eseket. Jel¨ olje p(i, u) annak val´ osz´ın˝ us´eg´et, hogy az i poz´ıci´ oban a´ll´ o sz´o az u c´ımk´et kapja. Felt´etelezz¨ uk, hogy p(i, u) ´ert´eke kiz´ar´ olag annak wi−k . . . wi+k k¨ornyezet´et˝ ol f¨ ugg. Ekkor p(i, u) ´ert´ek´et pˆ(i, u) kisz´ am´ıt´ as´ aval becs¨ ulj¨ uk, melyet a kor´abban ismertetett jegyeken tan´ıtott ME modell szolg´ altat. Jel¨ olje t(i, u, v) annak felt´eteles val´osz´ın˝ us´eg´et, hogy az i poz´ıci´ oban a´ll´ o sz´o u c´ımk´et kap, felt´eve hogy az i − 1 poz´ıci´ oban a´ll´ o sz´o a v c´ımk´et kapta. Felt´etelezz¨ uk, hogy ez a val´osz´ın˝ us´eg f¨ uggetlen i-t˝ ol ´es a tan´ıt´ okorpuszban megfigyelt felt´eteles relat´ıv gyakoris´ aggal (tˆ(u, v)) adunk r´ a becsl´est. A c´ımk´ez´es sor´an a rendszer egy adott mondatra adhat´ o legval´ osz´ın˝ ubb c´ımkesorozatot keresi. Ha pˆ(i, u) csup´ an wi -t˝ ol f¨ uggne (teh´ at nem sz´am´ıtana a k¨ornyezet), akkor egy sorozat val´osz´ın˝ us´ege a felt´eteles f¨ uggetlens´egnek k¨osz¨onhet˝ oen szorzatk´ent ´ allna el˝ o ´es az al´abbi k´eplettel lenne ar´ anyos: ! pˆ(i, ui )tˆ(i, ui , ui−1 ) i
P (ui )
.
Ezen k´eplet maximuma, teh´ at a legjobb c´ımkesorozat megtal´alhat´ o a Viterbi algoritmus seg´ıts´eg´evel. Ez a modell val´ oj´ aban a ‘megfigyel´esek az ´allapotokban ´es nem az ´atmenetekben’ v´ altozata a Maximum Entr´ opia Markov Modellnek, ahogy [10] javasolja. Modell¨ unket u ´gy ´ırhatjuk le, mint ennek a modellnek az egyszer˝ u ´altal´ anos´ıt´ as´at: megengedj¨ uk, hogy pˆ(i, u) egy wi−k . . . wi+k (k > 0) k¨ ornyezett˝ ol f¨ uggj¨ on ´es a fenti k´eplet seg´ıts´eg´evel becs¨ ulj¨ uk a t´enyleges val´osz´ın˝ us´eget. A tekintetbe vett k¨ornyezet k sugara optimaliz´ aland´ o param´eter, a cikk¨ unkben eml´ıtett ¨ osszes feladaton az 5 sug´ar bizonyult optim´ alis v´alaszt´ asnak. Rendszer¨ unknek m´eg egy szabad param´etere a nyelvi modell s´ ulyoz´ asa. Ez standard megold´ as a HMM szakirodalomban. Eset¨ unkben a fenti k´epletet ez u ´gy ´altal´anos´ıtja, hogy egy pozit´ıv λ kitev˝ ot alkalmazunk a pˆ(i, ui )-re ´es a P (ui )-re. A λ param´etert kism´eret˝ u r´eszkorpuszon optimaliz´ altuk egy-egy feladathoz. 2.4.
A magyar ´ es angol NP-chunking ki´ ert´ ekel´ ese
A f˝ on´evi csoport azonos´ıt´ o ki´ert´ekel´es´ehez NP-korpuszainkat mindk´et nyelven egy 1000000 token hossz´ us´ ag´ u tan´ıt´ o- ´es egy 500000 token hossz´ us´ag´ u teszt-
Szeged, 2009. december 3–4.
7
korpuszra osztottuk v´eletlenszer˝ uen. A tesztkorpuszon lefolytatott c´ımk´ez´esek ¨ kimenet´et a [11]-beli szab´ alyokat k¨ ovetve ´ert´ekelt¨ uk ki. Osszehasonl´ ıt´ asi alapm´odszerk´ent (baseline) magyar nyelvre minden sz´ onak a sz´ ofaji c´ımk´eje alapj´ an legval´ osz´ın˝ ubb c´ımk´et osztottuk ki. A legegyszer˝ ubb c´ımk´ez´esi m´odszert k¨ ovetve, amely csup´ an az I-NP ´es O c´ımk´eket haszn´ alja, a rendszer csup´ an 51.03%-os F-pontsz´ amot ´ert el. Egy kev´es bonyol´ıt´ assal - harmadikk´ent bevezetve a BNP c´ımk´et – az eredm´eny 60.37%-ra n˝ ott. Rendszer¨ unk eredm´enyei magyarra a 2. t´abl´ azatban l´ athat´ oak. 2. t´ abl´ azat. Pontoss´ ag Fed´es F-pontsz´ am baseline 60.24% 60.50% 60.37% hunchunk 89.40% 89.97% 89.68%
Felh´ıvjuk a figyelmet arra, hogy az NP chunk a´ltalunk adott, a szakirodalomban legelterjedtebbt˝ ol elt´er˝ o defin´ıci´ oja jelent˝ osen hosszabb ´es szerkezet¨ uket tekintve komplexebb NP-ket eredm´enyezett, mint pl. a [11] szerinti, u ´n. alap NP ( base NP”). Ez magyar´ azza a szakirodalomban szok´ asosan l´ athat´ on´ al alacso” nyabb pontsz´ amokat. Noha c´elunk a maxim´ alis NP-k azonos´ıt´ asa volt, algoritmusunkat egy minim´ alis NP-feladaton is kipr´ ob´ altuk, hogy teljes´ıtm´eny´et ¨ osszevethess¨ uk a legkorszer˝ ubbnek tartott statisztikus szegment´ al´ oalgoritmusok´eval. A CoNLL 2000 Shared Taskon, melynek tanul´ o- ´es tesztadata r¨ogz´ıtett, ´es a szegment´al´ oalgoritmusok ¨osszehasonl´ıt´ as´ anak standard terepek´ent szolg´ al, eszk¨oz¨ unk 93.79%-os F-pontsz´amot ´ert el. Ez k¨ or¨ ulbel¨ ul f´el sz´azal´ekkal alacsonyabb, mint a modelltan´ıt´ askor egy nagys´ agrenddel nagyobb sz´ am´ıt´ asig´eny˝ u CRF algoritmusok eredm´enye: [12] 94.34%, [13] pedig 94.29% F-pontsz´ amot publik´ alt a feladaton. A hunchunk k´etfajta feladaton el´ert eredm´enyeit a 3. t´ abl´ azat tartalmazza. 3. t´ abl´ azat. Feladat Pontoss´ ag Fed´es F-pontsz´ am max NP 79.33% 79.87% 79.60% base NP 93.61% 93.85% 93.73%
3.
Sz´ ot´ ar´ ep´ıt´ es
Az al´ abbiakban egy egyszer˝ u iterat´ıv sz´ ot´ ar´ep´ıt˝ o algoritmust mutatunk be, amely az egy¨ uttes el˝ ofordul´ asok ar´ anya alapj´ an rangsorolja a sz´ ot´ ari t´eteleket. A mi´enkhez hasonl´ o, u ´gynevezett Competitive Linkingen alapul´ o algoritmust
8
VI. Magyar Sz´ am´ıt´ og´epes Nyelv´eszeti Konferencia
els˝ok´ent Melamed [14] publik´ alt. Ezut´ an bemutatjuk, hogy a Competitive Linking elj´ ar´ as pontoss´ aga n¨ ovelhet˝ o, ha kiakn´ azunk egy automatikus sz´ oszint˝ u p´arhuzamos´ıt´ ast. 3.1.
Az algoritmus
Sz´ot´ar´ep´ıt´esi elj´ ar´ asunk alapja a Dice egy¨ utthat´ o n´even ismert m´er˝ osz´am egy magyar-angol sz´ op´ ar egy¨ utt-el˝ ofordul´ as´ anak m´ert´ek´ere: ennek defin´ıc´ oja D = uttes el˝ ofordul´ asainak sz´ama, oh ´es oe az ohe /(oh + oe ), ahol ohe a sz´op´ar egy¨ egynyelvi el˝ ofordul´ asok sz´ama. Ha egy bimondatban t¨ obb el˝ofordul´ as is van, akkor a k´et el˝ ofordul´ assz´am mondatbeli minimum´ aval (´es nem szorzat´aval) j´ arul hozz´ a a mondat az ohe mennyis´eghez. Az algoritmus els˝ o l´ep´esk´ent ¨ osszegy˝ ujti az o¨sszes olyan magyar-angol sz´op´art, amelyre D egy t k¨ usz¨ ob felett van, ahol t az algoritmus param´etere. Ha egy sz´o egyn´el t¨ obb ´ıgy azonos´ıtott sz´ ot´ ari t´etelben is szerepel, akkor csak a legnagyobb hasonl´ os´ agi m´ert´ek˝ ut tartjuk meg. Az iter´ aci´ o kimenete az ´ıgy ¨osszegy˝ ujt¨ ott t´etelek halmaza. Ezut´ an a korpusz bimondataiban o¨sszek¨otj¨ uk azokat a magyar-angol sz´ op´arokat, melyek megtal´alt sz´ ot´ ari t´etelnek felel meg, ´es t¨or¨olj¨ uk a korpuszb´ ol az ¨ osszes ¨osszek¨ot¨ ott sz´ot. Ezen a ponton u ´jrakezdhetj¨ uk az iter´ aci´ ot a Dice egy¨ utthat´ ok kisz´ am´ıt´ as´ aval, ´es joggal rem´elhetj¨ uk, hogy a kor´abbi t´etelek elimin´ al´ asa ut´ an egyes u ´j t´etelek hasonl´ os´ aga a k¨ usz¨ ob f¨ ol´e l´ep. Az ov¨ ul tov´ abb – k´ıs´erleteinkben iter´aci´ ot addig folytatjuk, am´ıg a sz´ot´ar m´ ar nem b˝ ehhez 10-15 iter´ aci´ ora volt sz¨ uks´eg, egyre cs¨okken˝ o hossz´ us´ ag´ u iter´ aci´ ok mellett. A most ismertetett elj´ar´ ast ItCo-nak fogjuk nevezni az al´ abbiakban. Az elj´ar´asnak megvizsg´aljuk majd azt az ItCo+GIZA v´ altozat´ at is, amely (az alapv´ altozattal ellent´etben) felt´etelezi egy sz´oszint˝ u p´ arhuzamos´ıt´ as megl´et´et. Ez a v´altozat csak azokat az egy¨ uttes el˝ ofordul´ asokat veszi sz´am´ıt´ asba, amelyekn´el a k´et sz´o k¨ oz¨ ott kapcsolat van a p´ arhuzamos´ıt´ asban. A sz´oszint˝ u p´ arhuzamos´ıt´as ´ep´ıt´es´ehez a szakirodalomban teljesen standardnak tekinthet˝ o GIZA++ ´es Moses eszk¨oz¨ oket v´ alasztottuk. Az IBM tanul´ oalgoritmus´ anak [15] GIZA++ [16] a´ltal adott implement´ aci´ oja egy u ´n. IBM Model 5 ford´ıt´ asi modellt ´ep´ıt a tokeniz´ alt p´ arhuzamos korpuszb´ ol, amib˝ ol egy asszimetrikus sz´oszint˝ u p´ arhuzamos´ıt´ ast nyerhet¨ unk ki. Ezt l´ep´est a magyarangol ´es angol-magyar ford´ıt´ asi ir´ anyokra egyar´ ant elv´egezve k´et f´elk´esz” ” p´arhuzamos´ıt´ ast kapunk. Ezeket a Moses [17] fr´ azisalap´ u g´epi ford´ıt´ ohoz mell´ekelt heurisztikus algoritmus f´es¨ uli o¨ssze min´el konzisztensebb szimmetrikus sz´oszint˝ u p´ arhuzamos´ıt´ ass´a. 3.2.
Az elj´ ar´ as ki´ ert´ ekel´ ese
M´er´eseinkhez a Hunglish Korpusz t¨ ovezett, sz´oszinten p´ arhuzamos´ıtott v´altozat´ at alkalmaztuk. A szavak halmaz´ an sz´ ot´ ar´ep´ıt´es el˝ott h´ aromf´ele sz˝ ur´est is v´egezt¨ unk: elhagytuk a funkci´ oszavakat, azokat a szavakat, amelyek nem szerepeltek legal´ abb 10-szer a korpuszban, tov´ abb´ a azokat a szavakat (sz´ot¨ oveket) is, amelyek nem szerepeltek magyar, illetve angol t¨ovezett gyakoris´ agi
Szeged, 2009. december 3–4.
9
sz´ot´arainkban. (El˝ obbinek a forr´ asa a Sz´ oszablya Webkorpusz, ut´ obbi´e a Google 1T webkorpusz [18], mindkett˝ ot a hunmorph eszk¨ozzel [19] t¨ ovezt¨ uk.) A sz´ot´ ar´ep´ıt´es elv´egz´ese ut´an pedig elhagytuk a nagy kezd˝ obet˝ us t´eteleket is, hiszen ezek nagy pontoss´ aggal megfeleltek a tulajdonneveknek. Az automatikusan l´etrehozott sz´ot´ arakr´ ol automatikus eszk¨ oz¨ okkel igaz´ an pontos min˝ os´egi inform´ aci´ okat kinyerni nem lehet. De hogy m´ ar az el˝ ozetes k´ıs´erletek sor´ an fogalmat nyerhess¨ unk a sz´ ot´ arak relat´ıv min˝ os´eg´er˝ ol k¨ ul¨ onb¨ oz˝ o param´eterbe´ all´ıt´ asok mellett, el˝osz¨or m´egis a Vony´ o Attila sz´ ot´ ar´ aval val´ o sz´azal´ekos ´atfed´es¨ uket vizsg´ altuk. Ezen m´er´esek alapj´ an u ´gy v´ alasztottuk meg a sz´ot´ ar´ep´ıt˝ o algoritmus Dice param´eter´et (0.095-nek), hogy egyens´ ulyt ott. Az optim´ alisnak tal´ alt val´os´ıtsunk meg a sz´ot´ ar pontoss´ aga ´es m´erete k¨oz¨ param´eterbe´ all´ıt´ as mellett 21846 m´eret˝ u sz´ ot´ arunk t´eteleinek 53.9%-a szerepelt a Vony´ o-sz´ot´ arban, amely ar´ any 71.5%-ra n˝ ott, ha a szavaknak csak az 5 hossz´ u kezd˝ oszeleteit illesztett¨ uk. Hangs´ ulyozzuk, hogy ez glob´ alis pontoss´ agi m´ert´ekk´ent f´elrevezet˝o, amennyiben a Vony´ o-sz´ot´ arban nem szerepl˝ o t´etelek t¨obbs´ege is legitim tal´alat. A param´eterhangol´ as ut´ an elv´egezt¨ uk a manu´ alis ki´ert´ekel´eseinket. A hibafajt´ ak k¨ oz¨ ott nem meglep˝o m´odon a domin´ ans az volt, amikor a sz´ op´ ar k´epz˝ ot˝ ol eltekintve helyes volt. Ez el˝o´allhat akkor, amikor a magyar ´es angol sz¨oveg k¨ ul¨ onb¨ oz˝ o sz´ofaj´ u konstrukci´ oval fejez ki egy adott fogalmat, illetve ha a k´et t¨ovez˝o m´ ask´ent d¨ ont egy k´epzett sz´o lexikaliz´ alt mivolt´ ar´ ol, pl. vall´ asos-religion, szerencse-lucky, forgat´ as-rotate, sz¨ ok¨ ott-escape, tov´ abbfejleszt-development. A ul¨ on jel¨ olt¨ uk. K´etf´ele pontoss´ agmanu´ alis ki´ert´ekel´eskor ezt a hibaoszt´alyt k¨ m´ert´eket alkalmaztunk egy sz´ot´ ar min˝ os´eg´enek manu´ alis sz´amszer˝ us´ıt´es´ere: a teljesen helyes t´etelek ar´any´ at, illetve a k´epz´esi hib´ at´ ol esetlegesen eltekintve helyes t´etelek ar´ any´ at, amit nemhelytelen-nek nevezt¨ unk. 3.3.
Eredm´ enyek
A ki´ert´ekel´es alapj´ anak [20]-gyel azonos m´ odon a GIZA++ IBM Model 5 sz´ot´ ar´ep´ıt˝ oj´et v´ alasztottuk, amely a Model 5 ford´ıt´ asi modellb˝ ol nyeri ki a sz´ot´ arat. A rendszer minden sz´ ot´ ari t´etelhez egy 0 ´es 1 k¨oz¨ otti konfidencia´ert´eket ad. Ezek cs¨okken˝ o sorrendje szerint rendezz¨ uk a sz´ ot´ ari t´eteleket, ´ıgy tetsz˝oleges ar´anyt megc´elozhatunk m´eret ´es pontoss´ag k¨ oz¨ ott. Egy a´ltalunk ´ep´ıtett sz´ot´ arral val´ o pontoss´ agi ¨ osszehasonl´ıt´ askor a GIZA++ sz´ ot´ ar akkora m´eret˝ u kezd˝ oszelet´et v´ alasztottuk, amekkora az ¨ osszehasonl´ıtand´ o sz´ot´ ar. A baseline sz´ot´ ar ´ep´ıt´esekor ugyanazokat a sz˝ ur˝ oket alkalmaztuk, mint saj´ at sz´ot´ araink eset´eben. Az eredm´enyek sz´ot´ arank´ent 200 v´eletlen minta v´etele alapj´ an ki´ert´ekelve a 4. t´ abl´ azatban l´ athat´ ok. Az ´ep¨ ul˝ o sz´ot´ ar m´erete az algoritmus param´etereit˝ ol f¨ ugg. Az algoritmus fut´ asa j´ ol elk¨ ul¨ on¨ ul˝ o iter´ aci´ okb´ ol a´ll (10-15 egyre cs¨okken˝ o m´eret˝ u iter´ aci´ o). Egy iter´aci´ on bel¨ ul fokozatosan cs¨okken a konfidencia ´es a t´enyleges pontoss´ag is. K´et iter´ aci´o k¨oz¨ ott azonban felugrik a konfidencia ´es pontoss´ag, hiszen a helyesen azonos´ıtott sz´ ot´ ari t´eteleknek megfelel˝o sz´op´ arok elhagy´ asa cs¨okkenti a f´elrevezet˝o kollok´ aci´ ok halmaz´at. Ez egy f˝ ur´esszer˝ u pontoss´ agi grafikonhoz ve-
10
VI. Magyar Sz´ am´ıt´ og´epes Nyelv´eszeti Konferencia 4. t´ abl´ azat. Baseline helyes % 68.5 nemhelytelen % 76.5 sz´ ot´ am´eret 25422
ItCo Baseline ItCo+GIZA 77.0 69.2 81.5 87.5 76.7 92.5 25422 21846 21846
zet, ha az x-tengelyen azt ´abr´ azoljuk, hogy a t´etel hanyadikk´ent lett azonos´ıtva, az y-tengelyen pedig a sim´ıtott pontoss´ agot. Ahhoz, hogy bemutathassuk ezeket a pontoss´ agi grafikonokat, mintav´etelez´esre volt sz¨ uks´eg, hiszen 25000 sz´ot´ ari t´etel manu´ alis ellen˝ orz´ese t´ uls´agosan id˝ oig´enyes feladat. A grafikon egy adatpontj´ at ez´ert a k¨ ovetkez˝o m´odon hoztuk l´etre. Az x poz´ıci´ o mintav´etelez´es´ehez v´eletlenszer˝ uen kiv´ alasztottunk a sz´ ot´ ar (x,x+1000) intervallum´ ab´ ol 100 t´etelt. Ezeket manu´ alisan klasszifik´ altuk a m´ ar eml´ıtett (helyes, k´epz´est˝ol eltekintve helyes, helytelen) kateg´ ori´ akba. Ez az adott x sz´ ot´ arpoz´ıci´ ohoz k´et k¨ ul¨ onb¨ oz˝ o sz´azal´ekos pontoss´ agi ´ert´eket rendelt: az egyik a helyes t´etelek ar´anya, a m´ asik a nemhelytelen t´etelek´e.
3. ´ abra.
A 3. ´abr´ an l´ athat´ o, hogy a mintav´etelez´es a GIZA++ ´ altal ´ep´ıtett sz´ot´ arak eset´eben szab´ alyos l´ep´esenk´ent t¨ ort´ent, a saj´ at sz´ot´ araink eset´eben viszont nem. Ennek oka a grafikonok m´ ar eml´ıtett f˝ ur´esz-alakja. A l´ep´esk¨ozt u ´gy v´ alasztottuk, hogy az els˝o k´et, 1000-n´el m´eg nagyobb m´eret˝ u f˝ ur´eszfog (azaz iter´aci´ o) belsej´eben k´et mintav´etelez´esi pont legyen: az iter´ aci´ o elej´er˝ ol illetve v´eg´er˝ ol. Az els˝o, domin´ ans m´eret˝ u iter´ aci´ onak a k¨ ozep´er˝ ol is mintav´etelez¨ unk. Az a´br´ akr´ ol leolvashat´ o, hogy line´ arisan interpol´ alva a mintav´etelez´esi pontokat, a GIZA+ItCo m´odszer pontoss´aga a GIZA m´ odszer´e felett van minden pontban, a ItCo m´odszer´e pedig a legt¨ obb pontban.
Szeged, 2009. december 3–4.
4.
11
Implement´ aci´ o
Ebben a szakaszban sz¨ ovegfeldolgoz´ o rendszer¨ unk n´eh´ any m˝ uszaki r´eszlet´er˝ ol sz´amolunk be. 4.1.
Keretrendszer
Els˝osorban az a keretrendszer ´erdemel eml´ıt´est, amelyet az adatok feldolgoz´as´ ara ki´ep´ıtett¨ unk. Ennek feladata az egyes feldolgoz´ o modulok (pl. tokeniz´ al´as, sz´ofaji elemz´es) hat´ekony futtat´ asa nagy m´eret˝ u adathalmazokon. A rendszer nagyon rugalmas keretet ad az ´ altala futtatott moduloknak, nem k¨ otelezi el mag´at p´eld´ aul abban sem, hogy milyen programoz´ asi nyelven kell implement´ alnunk azokat. A keretrendszer haszn´ alat´ ahoz az elv´egzend˝ o feladatok ir´ any´ıtott aciklikus gr´afj´ at kell defini´ alnunk, megadva, hogy a cs´ ucsokhoz tartoz´ o feladatok milyen parancsnak felelnek meg. A keretrendszer feldolgozand´ o f´ajlok egy halmaz´ ara alkalmazza ezt a pipeline-t vagy valamely kijel¨ olt r´eszgr´afj´ at, egy standardiz´ alt strukt´ ur´ aj´ u k¨ onyvt´ arhierarchi´ at hozva l´etre. K´et specializ´alt szolg´ altat´ ast ny´ ujt a rendszer, amelyek gyors´ıtj´ ak a feladat elv´egz´es´et, ezek ak´ar egyszerre is kiakn´ azhat´ oak: – P´ arhuzamos´ıt´ as: A rendszer k´epes felhaszn´ alni a feladatok p´ arhuzamos elv´egz´es´ehez egy sz´am´ıt´ og´ep-klasztert, a klaszterben r´eszt vev˝o sz´am´ıt´ og´epek egyes processzorait p´arhuzamosan terhelve. Ehhez csup´ an arra van sz¨ uks´eg, hogy a klaszter egyes tagjai hozz´af´erjenek az adatokat ´es modulokat tartalmaz´o f´ajlrendszerhez. Az u ¨temez´es alapegys´ege a dokumentum, teh´ at egyetlen nagym´eret˝ u dokumentumot m´ ar nem t¨ ordel kisebbekre az u ¨temez˝o. – Daemon: A hunchunkhoz ´es hunnerhez hasonl´ o g´epi tanul´ o rendszerek statisztikus modelleket tartalmaz´o, sok megab´ ajtos er˝ oforr´ asf´ajlokat olvasnak be indul´ askor. Ez´ert ha sok kis dokumentumra futtatn´ ank ezeket, akkor a fut´ asid˝ o nagy r´esz´et inicializ´ al´ assal t¨ olten´ek. A keretrendszer daemon u ¨zemm´odja ezt a probl´em´at u ´gy orvosolja, hogy a munka kezdet´en egyetlen alkalommal ind´ıtja csak el a c´ımk´ez˝o/szegment´al´ o programot, majd az u ¨temezett f´ajlokat unix socketokon kereszt¨ ul kommunik´ alva egym´ as ut´ an k¨ uldi el annak. A becsomagol´askor” a keretrendszer a daemonk´ent elind´ıtott ” programr´ ol nagyon kev´es el˝ofeltev´essel ´el. Ez a megold´as alkalmazand´ o akkor is, ha a c´ımk´ez˝o/szegment´al´ okat p´eld´ aul webszolg´ altat´ as r´eszek´ent k´ıv´ anjuk alkalmazni. A Hunglish Korpusz ´ep´ıt´es´et u ´jraimplement´ altuk a keretrendszerben, teh´ at az elemz´esi l´ep´esek kiindul´ opontja lehet nyers, form´ azatlan sz¨ oveg k´et nyelven. A megfelel˝o elemz´esi l´ep´esek elv´egz´ese ut´an a Hunglish Mondatt´ ar webes keres˝orendszer indexel˝ oj´ehez vagy a Moses ford´ıt´ orendszer modell´ep´ıt˝ oj´ehez vagy dek´oder´ehez tov´ abb´ıthat´ oak a feldolgozott adatok.
12 4.2.
VI. Magyar Sz´ am´ıt´ og´epes Nyelv´eszeti Konferencia Huntag
A hunchunk a kor´ abban publik´ alt hunner rendszerhez [21] algoritmikusan nagyon hasonl´ o – egyetlen k¨ ul¨ onbs´eg¨ uk, hogy a hunchunk a szegmentumok k¨ ozti ´atmenet-val´osz´ın˝ us´egeket tanulja. A hunner rendszert ez´ert u ´jraimplement´ altuk, ´es a k´et szegment´al´ ot egyetlen k¨ oz¨ os, huntag-nek nevezett eszk¨ozben val´ os´ıtottuk meg, amelyet csak a jegy-sz´am´ıt´ as´ert ´es param´eterez´es´ert felel˝os le´ır´ of´ ajlok adapt´ alnak egyik vagy m´ asik feladathoz. A reimplement´ aci´ o nem volt komoly hat´assal a hunner pontoss´ ag´ ara, 96.35%/95.05%-r˝ ol 96.53%/94.81%-re v´ altozott a Szeged NER fejleszt˝o, illetve tesztel˝o adathalmazain.
5.
Tov´ abbi terveink
Els˝odleges tov´ abbi terv¨ unk olyan elj´ ar´ as publik´ al´ asa, ´es teljes´ıtm´eny´enek sz´amszer˝ us´ıt´ese, amely az azonos´ıtott maxim´ alis NP-ket p´arhuzamos´ıtja a k´etnyelv˝ u sz¨ oveg bimondataiban. (Ilyen jelleg˝ u rendszert el˝ osz¨or Pohl [22] publik´ alt magyar nyelvre, magyar-angol ford´ıt´ omem´oria ´ep´ıt´ese c´elj´ ab´ ol.) B´ ar sz´amszer˝ us´ıthet˝ o adataink a k´ezirat lead´ asakor m´eg nincsenek, azt gondoljuk, hogy a maxim´ alis NP-k k¨ ozt j´ oval nagyobb ar´ any´ u az 1-1 p´ arhuzamoss´ ag mint a szavak vagy alap NP-k k¨ ozt, ´es hogy az NP-p´ arhuzamos´ıt´ asi feladat hat´ekony megold´ asa nemcsak a g´epi ford´ıt´ ast, hanem a mondatok argumentumszerkezet´enek meg´ert´es´et is seg´ıteni fogja. A keretrendszer ´es a huntag rendszer m´ as technol´ ogi´ ainkhoz hasonl´oan szabad forr´ ask´ od´ uak. A cikk ´ır´ as´ anak id˝ opontj´ aban a :pserver:anonymous:
[email protected]:/local/cvs cvs-szerver tcg, illetve huntaggers moduljaik´ent m´ ar b´ arki sz´ am´ara el´erhet˝ oek, de c´elunk, hogy a rendszert a konferencia idej´ere megfelel˝o min˝os´eg˝ u dokument´ aci´ oval is ell´ assuk.
Hivatkoz´ asok 1. Varga, D., N´emeth, L., Hal´ acsy, P., Kornai, A., Tr´ on, V., Nagy, V.: Parallel corpora for medium density languages. In: Proceedings of the Recent Advances in Natural Language Processing 2005 Conference, Borovets. Bulgaria (2005) 590–596 2. Csendes, D., Csirik, J., Gyim´ othy, T., Kocsor, A.: The Szeged Treebank. In: Lecture Notes in Computer Science: Text, Speech and Dialogue. (2005) 123–131 3. Marcus, M.P., Santorini, B., Marcinkiewicz, M.A.: Building a large annotated corpus of english: The Penn Treebank. Computational Linguistics 19 (1994) 313– 330 ´ 4. Recski, G., Varga, D.: Magyar f˝ on´evi csoportok azonos´ıt´ asa. Altal´ anos Nyelv´eszeti Tanulm´ anyok (2010) 5. Uchimoto, K., Ma, Q., Murata, M., Ozaku, H., Isahara, H.: Named entity extraction based on a maximum entropy model and transformation rules. In: ACL ’00: Proceedings of the 38th Annual Meeting on Association for Computational Linguistics, Morristown, NJ, USA, Association for Computational Linguistics (2000) 326–335 6. Sang, E.F.T.K., Veenstra, J.: Representing text chunks. In: EACL. (1999) 173–179
Szeged, 2009. december 3–4.
13
7. Koehn, P., Knight, K.: Feature-rich statistical translation of noun phrases. In: In Proc. of the 41st Annual Meeting of the ACL. (2003) 311–318 8. Rabiner, R.L.: A tutorial on Hidden Markov Models and selected applications in speech recognition. In: Proc. IEEE. Volume 77. (1989) 257–286 9. Ratnaparkhi, A.: Maximum entropy models for natural language ambiguity resolution. Technical report (1998) 10. Mccallum, A., Freitag, D., Pereira, F.: Maximum entropy markov models for information extraction and segmentation. In: Proc. 17th International Conf. on Machine Learning. (2000) 591–598 11. Sang, E.F.T.K., Buchholz, S., Sang, K.: Introduction to the CoNLL-2000 shared task: Chunking (2000) 12. Sun, X., Morency, L.P., Okanohara, D., Tsujii, J.: Modeling latent-dynamic in shallow parsing: a latent conditional model with improved inference. In: COLING ’08: Proceedings of the 22nd International Conference on Computational Linguistics, Morristown, NJ, USA, Association for Computational Linguistics (2008) 841–848 13. Sha, F., Pereira, F.: Shallow parsing with conditional random fields. In: NAACL ’03: Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology, Morristown, NJ, USA, Association for Computational Linguistics (2003) 134–141 14. Melamed, I.: (Empirical methods for exploiting parallel texts) 15. Brown, P.F., Pietra, V.J.D., Pietra, S.A.D., Mercer, R.L.: The mathematics of statistical machine translation: parameter estimation. Computational Linguistics 19 (1993) 263–311 16. Och, F.J., Ney, H.: A systematic comparison of various statistical alignment models. Computational Linguistics 29 (2003) 19–51 17. Koehn, P., Hoang, H., Birch, A., Callison-Burch, C., Federico, M., Bertoldi, N., Cowan, B., Shen, W., Moran, C., Zens, R., Dyer, C., Bojar, O., Constantin, A., Herbst, E.: Moses: Open source toolkit for statistical machine translation. In: Proceedings of the ACL’07, The Association for Computer Linguistics (2007) 18. Brants, T., Franz, A.: Web 1t 5-gram corpus version 1. Technical report, Google Research (2006) 19. Tr´ on, V., Gyepesi, G., Hal´ acsy, P., Kornai, A., N´emeth, L., Varga, D.: Hunmorph: open source word analysis. In: Proceedings of the ACL 2005 Workshop on Software. (2005) 20. Karlgren, J., Sahlgren, M.: Automatic bilingual lexicon acquisition using random indexing of parallel corpora. Natural Language Engineering 11 (2005) 327–341 21. Varga, D., Simon, E.: Hungarian named entity recognition with a maximum entropy approach. Acta Cybernetica 16 (2006) 293–301 22. Pohl, G.: English-hungarian np alignment in metamorpho tm. In: Proceedings of the EAMT. (2006)