miből tanulnak a számítógépek magyar nyelvtant?
DESCRIPTION
Miből tanulnak a számítógépek magyar nyelvtant?. Alexin Zoltán, PhD. Szegedi Tudományegyetem, Informatikai Tanszékcsoport. Tartalom. A számítógépes tanulás Természetes nyelvi alkalmazások Magyar nyelvészeti adatbázis: a Szeged korpusz Az elmúlt években elért eredmények. - PowerPoint PPT PresentationTRANSCRIPT
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Miből tanulnak a számítógépekmagyar nyelvtant?
Alexin Zoltán, PhD.Szegedi Tudományegyetem,
Informatikai Tanszékcsoport
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Tartalom
A számítógépes tanulásTermészetes nyelvi alkalmazásokMagyar nyelvészeti adatbázis:
a Szeged korpuszAz elmúlt években elért eredmények
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Számítógépes tanulás I.
Definíció (Tom Mitchel): Egy számítógépes program tanul a (gyakorlati) tapasztalatokból, ha a programot a tapasztalati példák feldolgozása után ismételten lefuttatva bizonyos teszt feladatokon, a program teljesítménye javul.
Informálisan: a program figyelembe tud venni korábbi tapasztalatokat a működése során, úgy hogy saját működését módosítja. Ehhez szükség van egy tanárra (oracle), aki meg tudja mondani, hogy a program által kiszámított eredmény helyes volt-e.
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Számítógépes tanulás II.
Tanuló algoritmus
E: Tapasztalati tények
Számítógépes program
T: Input Output
Z
P: Kiértékelés
Háttér tudás
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Szabályok tanulása
Szabályok: (diszkrét függvények értékeire)HA <feltétel> AKKOR eredmény=ck
A szabályokon belül különösen fontos az ún. fogalomtanulás: (logikai értékű függvények, predikátumok)HA <feltétel> THEN eredmény=igazKitüntetett szerepe van a szabályok tanulásának, mert a szabályok az ember által olvashatók, értelmezhetők vö. vannak nem szabály alapú rendszerek pl. mesterséges neurális hálók, sztochasztikus automaták, stb.
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Számítógépes tanulás III.
1
2 3 4
5
6 7
8 9
10
A számozott síkidomok közül melyik fér át a lyukon?Van-e jó szabály erre?
Pl. Minden téglalap átfér ( téglalap(X) → átfér(X) )?Mit mondhatunk a zöld tárgyakról ( zöld(X) → átfér(X) –ről?
tréning adatok
negatív példák
pozitív példák
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Predikátumok tanulása
Az előző példában bemutatott az átfér egy logikai értékű egyváltozós függvény (predikátum)
A számítógép által kiszámított klózok jóságának mérése:(hibának számítanak: a hamisan elfogadott negatív esetek, és a nem elfogadott pozitív esetek)
a példák közül hányra alkalmazható (lefedő képesség)
a szabály mérete (mennyire bonyolult)
azokban az esetekben, amikor alkalmazható, mennyire pontos (mennyire egyezik meg az értéke a tréninggel).
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Szabályalapú tanuló algoritmusok
Kitüntetett szerepe van a szabályok tanulásának, mert a szabályok az ember által olvashatók, értelmezhetők vö. vannak nem szabály alapú rendszerek pl. neurális hálók
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Tanuló algoritmusok Prologban
A tapasztalati tények (változómentes tényállítások). Vannak pozitív és negatív tapasztalati tények.Induktív tanulásCsak tapasztalati tények vannak, ebből állít elő az algoritmus szabályokatAbduktív tanulásLétezik kezdeti program, amelyet meg kell javítani úgy, hogy a tapasztalati tények alapján jobban működjön
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A természetesnyelvi-feldolgozásfontosabb problémái
Szegmentálás (mondatok, szavak/tokenek)Szófaji elemzésTöbb lehetséges szófajú szavaknál az elemzés egyértelműsítéseNévszói szerkezetek meghatározása (részleges elemzés)Teljes (mély) mondatelemzésFogalmak egyértelműsítése a szövegkörnyezet és egy fogalomháló alapjánSzövegek tartalmi tömörítése (kivonatolása)Információnyerés részleges elemzésselAnafóra feloldás
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A számítógépes tanulás felhasználásának területei
Szófaji egyértelműsítésNévszói szerkezet szintaxisának tanulásaJelentés egyértelműsítés
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A ”Szeged korpusz” tanulási adatbázis I.
A korpusz főbb ismérvei:- 1,2 millió szövegszó és 300 ezer írásjel- 6 releváns témakör (modern nyelv, kivéve egy témakört, a szépirodalmat)- a témakörök: tizenévesek nyelvhasználata szépirodalom, újságszövegek, jogi szövegek, MTI rövidhírek, számítástechnikával kapcsolatos szövegek- kézi annotálás, többszöri ellenőrzéssel
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A ”Szeged korpusz” tanulási adatbázis II.
A korpusz további ismérvei:- http://www.inf.u-szeged.hu/lll/szegedcorpus.html- XML fájlok (14 db témakörönként 2-3)- TEI DTD- a szöveg bekezdésekre, mondatokra bontott, mindegyiknek egyedi azonosítója van- az 1.0 verzióban a mondatokban minden egyes szóhoz hozzá van rendelve a szófaji kódja- a 2.0 verzióban minden főnévi szerkezet meg van jelölve, a több szóból álló tulajdonnevek egy szóként vannak bejelölve
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Magyar természetes nyelvi projektek I.
Az IKTA 27/2000 projekt: magyar tanulási korpusz és egy szófaji egyértelműsítő program prototípus kifejlesztése Partnerek: Szeged Tudományegyetem,
MorphoLogic kft. Budapest Időtartam: 2000. szeptember 1. - 2002.
június 30. Cél: 1 millió szót tartalmazó tanulási
adatbázis kialakítása, kutatási-oktatási célokra ingyenes
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Magyar természetes nyelvi projektek II.
NKFP 2/017 projekt: Információnyerés rövid (üzleti) hírekből Partnerek: MorphoLogic Kft.,
SZTE Informatikai Tanszékcsoport,MTA Nyelvtudományi Intézet Budapest,Magyar Gallup Intézet Kft. Budapest
Időtartam: 2001. július 1 - 2003. június 30. Magyar „tree-bank”, 1,2 millió szavas
mondatelemzési korpusz, magyar névszói szerkezet felismerő program prototípusa
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Magyar természetes nyelvi projektek III.
Az IKTA 37/2002 projekt: Mondatszintaxis gépi tanulása (gépi tanulási módszerek a magyar nyelv szintaktikai szabályainak létrehozására) Partnerek: Szeged Tudományegyetem,
MTA Nyelvtudományi Intézet Budapest,MorphoLogic Kft. Budapest
Időtartam: 2002. október 1. - 2004. október 31.
Cél: Magyar mondatelemzés megvalósítása
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Szófaji egyértelműsítés I.
A „házaitokkal”: 1 szófaji kód: főnév, többes szám, eszközhatározós eset,
birtokos személyrag(többes szám, második személy)
A „fognak” 3 lehetséges szófaji kóddal is elláthatósegédige (jövő idő), többes szám 3. sz.vagy főnév birtokos esetben,vagy főnév részeshatározós esetben
Az egyértelműsítés feladata a folyamatosan érkező szöveg szavaihoz a helyes címke (annotáció) meghatározása.
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A morpho-szintaktikai kódolás
CTAG rendszer (MTA Nyelvtudományi Intézet), 125 lehetséges kód (osztály)MSD kódolás („MULTEXT-East” COPERNICUS projekt egyik eredménye a magyar nyelvre és más közép-kelet-európai nyelvekre kidolgozott egységes rendszer, 10000 lehetséges kód (osztály)HuMor (MorphoLogic Kft.) kódolás, teljes lemmatizálás, összetett szavak, képzők, jelek, ragok kezelése (több mint 10000 lehetséges kód)Redukált HuMor kódok, a képzőket nem veszi figyelembe (nagyon hasonlít az MSD-re)
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Az MSD lexikális kódolás
Az ablakokban szó kódja: Nc-p2 (Noun, common, - (gender), plural, inessive (-ban, -ben rag)A legeslegnagyobbaké melléknév kódja: Afe-pn------s (Adjective, type, degree, - (gender), plural, nominative, - (definiteness), - (clitic), - (animate), - (formation), - (owner number), - (owner person), owned numberA HuMor kódokat egy táblázat segítségével alakítja át a MorphoLogic kft. elemző rendszere MSD kódokkáA képzők és a szóösszetételekkel kapcsolatos információk elvesznekSok MSD kód csak „elvben” létezik, előfordulása az írott és beszélt nyelvben lényegében nulla
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Példa CTAG és MSD kódolásra
Derült, áprilisi idő volt, az órák éppen tizenhármat ütöttek.
s('Ohu.1.2.1.1', [(asn, [asn, vmis3s]), wpunct, asn, nsn, (vmis3s, [asn, nsn, vmis3s]), wpunct, (t, [psn, t]), npn, rg, ms, (vmis3p, [apn, vmis3p]), spunct]).
s('Ohu.1.2.1.1', [('Afp-sn', ['Afp-sn', 'Vmis3s---n']), 'WPUNCT', 'Afp-sn', 'Nc-sn', ('Vmis3s---n', ['Afp-sn', 'Nc-sn', 'Vmis3s---n']), 'WPUNCT', ('Tf', ['P---sn', 'Tf']), 'Nc-pn', 'Rg', 'Mc-sa', ('Vmis3p---n', ['Afp-pn', 'Vmis3p---n']), 'SPUNCT']).
Tanulási példák a szófaji egyértelműsítésre
positive 'choose_Afp-sn_Vmis3s---n'((látott,'Afp-sn'), (látott,[(látott,'Afp-sn'), (lát,'Vmis3s---n')]), [(szívesen,szívesen,'Rxp'),('A',a,'Tf')],[(barátok,barát,'Nc-pn'), (kedvéért,kedv,'Nc-sc---s3'),(hatalmas,hatalmas,'Afp-sn'), (áldozatokat,áldozat,'Nc-pa'),(hoznak,hoz,'Vmip3p---n'), ('.','.','SPUNCT')], _).
positive 'choose_Afp-sn_Vmis3s---n'((tetszik,'Vmis3s---n'), (tetszett,[(tetszett,'Afp-sn'),(tetszik,'Vmis3s---n')]), [(nagyon,nagyon,'Rx'),(mindkettőnknek,mindkettő,'Mc-sdl----p1'),(ami,ami,'Pr3-sn'),(',',',','WPUNCT'),(könyvből,könyv,'Nc-se') ,(egy,egy,'Ti'),(felolvastunk,felolvas,'Vmis1p---n'), (és,és,'Ccsp'), ('Beszélgettünk',beszélget,'Vmis1p---n')], [('.','.','SPUNCT')], _).
positive 'choose_Afp-sn_Vmis3s---n'((nyüzsög,'Vmis3s---n'), (nyüzsgött,[(nyüzsgött,'Afp-sn'),(nyüzsög,'Vmis3s---n')]), [(domboldal,domboldal,'Nc-sn'),(egész,egész,'Afp-sn'), ('Az',az,'Tf')], [(az,az,'Tf'),(emberektől,ember,'Nc-pb'), (',',',','WPUNCT'),(de,de,'Ccsp'), (ahogy,ahogy,'Rr'), (a,a,'Tf'), (mise,mise,'Nc-sn'), (elkezdődött,elkezdődik,'Vmis3s---n'), (',',',','WPUNCT'), (lecsillapodott,lecsillapodik,'Vmis3s---n'), (a,a,'Tf'),(tömeg,tömeg,'Nc-sn'), ('.','.','SPUNCT')], _).
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Eredmények
C 4.5 AGLEARN Progol PHM RIBL (listák)Relatív pontosság(%)
81,0 84,8 82,8 84,6 84,8
Szavankéntipontosság (%)
97,60 98,03 97,80 98,00 98,03
Progol RIBL PHM RIBL PHM RIBLRelatív pontosság (%) 85,7 86,5 86,0
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Az NP-szerkezet tanulása I.
NP NP
NP
NP Ritkán vette (tudomásul) {[(az ablak) előtt ülő asszony]
jelenlétét}.
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Az NP-annotált XML szövegrészlet vázlata
1 Ritkán 2 vette
<NP>3 tudomásul
</NP><NP>
<NP><NP>
4 az5 ablak
</NP>6 előtt7 ülő8 asszony
</NP>9 jelenlétét
</NP>10 .
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
1. menetKiírás a környezeti fájlba:[az ‘a’ szó környezete], NP2[a ‘győri’ szó környezete], NONE[az ‘és’ szó környezete], NONE[az ‘a’ szó környezete], NP3[a ‘kecskeméti’ szó környezete], NONE[a ‘CB-fiók’ szó környezete], NONE[a ‘munkatársainak’ szó környezete], NONEA behelyettesítés eredménye:<NP>
NPés [Ccsw]NP munkatársainak [Nc-pg---s3]
</NP>2. menetKiírás a környezeti fájlba:[‘NP’ környezete], NP4A behelyettesítés eredménye:NP3. menetNincs legalsó szintű NP.
Tanulási példák előállítása I.<NP>
<NP>a [Tf]győri [Afp-sn]
</NP>és [Ccsw]<NP>
a [Tf]kecskeméti [Afp-sn]CB-fiók [Nc-sn]
</NP>munkatársainak [Nc-pg---
s3]</NP>
Tanulási példák előállítása II.
s('MTI.113198.1.1',[cp([np([np(['Afp-sn',np([np('Nc-pn'),'Ccsw',np('Nc-pn')])]),'Nc-ss---s3']),'Ccsp',np(['Afp-sn', 'Afp-sn', 'Afp-sn','Nc-sa']),'Vmis3s---n',np(['Tf','Np-sn']),'Vmis3s---y','Rp',np(['Np-sn']),np([np(['Tf','Np-sn']),'Nc-sn---s3']),np(['Tf','Afp-sn','Nc-sp'])])]).s('MTI.113346.1.1',[cp([np(['Mo-snl','Nc-si']),'Rd',np(['Mc-snd','Mc-snl','Nc-si']),'Vmip3s---y',np(['Tf','Np-sn']),'Tf','X',np([np([np(['Nc-sn']),'Afp-sn','Afp-sn','Nc-sg---s3']),'Nc-s2---s3'])])]).s('MTI.113505.1.1',[cp([np(['Tf','Afp-sn','Rxp','Afp-sn','Nc-sd']), 'Ccsp','Vmip3s---n',np([np(['Tf','Nc-sn']),'Ccsw',np(['Tf','Nc-sn'])])])]).s('MTI.113505.1.2',[cp([np(['Tf',np(['Np-sn']),'Nc-sa']),np(['Tf','Afp-sn','Np-sn']),np(['Tf',np(['Np-sn']),'Nc-sn']),'St','Vmcp3s---y', np(['Afp-sn','Nc-ss']),'Vmn'])]).s('MTI.113505.2.1',[cp([np(['Tf',np(['Np-sn']),'Nc-si']),np(['Afp-sn','Afp-sn','Nc-sn']),'St',np(['Tf',np(['Np-sn']),'Nc-s3']), np(['Tf','Nc-pb']),'Afp-sw','Rm',np([np([np(['Tf','Nc-sn']),'Ccsw', np(['Tf','Nc-sn'])]),'Ccsw',np([np(['Tf','Nc-sn']),'Afp-sn','Ccsw','Afp-sn','Nc-sn---s3'])]),'Vmip3s---n',np(['Tf','Nc-s2'])])]).s('MTI.113505.2.2',[cp([np(['Tf','Nc-sn']),np([np(['Nc-sn']),'Nc-sb---s3']), np(['Afp-sn']),np([np(['Tf','Nc-s2']),'Ccsw',np(['Tf','Afp-sn','Nc-s2']) ])])]).s('MTI.113760.1.1',[cp([np([np(['Tf','Np-sn']),'Afp-sn','Nc-sp---s3']),np(['Tf','Np-sn'])])]).
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Az NP tanulás eredményei
A teljes 1,2 millió szavas korpusz feldolgozása még folyamatban van.
Kisebb anyagon többféle szabályrendszer is keletkezett:
Szabályrendszer Pontosság
Szakértői NP szabályok 65%Környezetfüggetlen NP szabályok
80%-85%Környezetfüggő NP szabályok
85%-90%
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Az elmúlt évek eredményei, összefoglalás
Tanuló rendszerek alkalmazása szófaji egyértelműsítő programok készítésére Tanuló rendszerek alkalmazása az NP szerkezetek felismerésére Az NP felismerő modul alkalmazása információnyerésre üzleti hírekből (prototípus) Nagy élőmunkaigényű nyelvészeti háttér adatbázis és tanulási korpusz
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
Méret
Fájlnév500
mondatosfájlokszáma
Fájl Szavak Írásjelek Többértelműszavak
Többje-lentésűszavakaránya
Szavakszáma
témakör-önként
10elb.pl 19 6696576 104818 22329 62705
10erv.pl 15 5837983 97786 20705 52837
8oelb.pl 4 1305470 20454 4174 12279 57.30% 223058
utas.pl 11 3858926 60202 15946 33719
pfred.pl 13 3028319 46578 14391 24284
1984.pl 14 5011830 80411 17631 42965 53.94% 187191
CWSzt.pl 14 7129539 124043 21018 57159
Win2000.pl 6 3365219 57937 10888 25539 45.44% 181980
np.pl 10 3794470 63966 11980 31463
nv.pl 3 1332442 22630 3900 11244
hvg.pl 6 3345649 57647 9810 27990
mh.pl 6 2535555 43091 7258 20678 48.78% 187334
gazdtar.pl 15 7893363 134872 22908 64165
szerz.pl 9 5174260 87314 15807 42416 47.97% 222186
Összesen: 145 60309601 1001749 198745 509443 50.86% 1001749
Dr. Alexin Zoltán, Magyar Tudomány Napja, 2003. november 4.
A Szeged corpus 3.0 változatamagyar treebank
ADVP V’ NP* NP**
HEAD CHILDREN NP
v NODE NODE ADJP
NP NP** PP
NP
Ritkán vette (tudomásul) {[(az ablak) előtt ülő asszony] jelenlétét}.