Szemantikai elemzés okt. 4.
Mi a szemantika Eddig tárgyalt problémák / technológiák: –A szöveg / mondat szerkezetével, nyelvtani jellemzőivel foglalkoztak –Szintaxis Mi a helyzet a szöveg értelmével? –A morfológiai kódok, szintaxis fa, stb. nem árulják el „miről szól a szöveg” –SZEMANTIKA (jelentéstan): A nyelv elemeinek (szöveg, mondat, szó, szimbólumok) tartalmi elemzése, jelentésének vizsgálata /értelmezés/.
Jelentés A jelentés a nyelvben időben is változó fejlődő tulajdonsága a nyelvi elemeknek /amelyek idővel el is tűnhetnek a nyelvből/. –„IV. Béla az Árpád-ház egyik legkiemelkedőbb királya volt.” –„Hö, király!” –„némber” („nem ember”=asszony)
Számítógépes szemantika? Az előbb említett, időben (térben) is változó valamit kellene tudnia kezelni a számítógépnek… „Fából vaskarika…” A nyelvtechnológia egyik legintenzívebben kutatott területe Alkalmazásoldalról óriási igény lenne rá Számítógéppel a legkevésbé jól modellezhető része a nyelvnek (a nyelvmegértéshez az emberi agy működését kellene utánozni)
Miért kell tartalmi / jelentéstani elemzés? A mondatszerkezet, morfológiai információk ismerete nem nyújt elég információt A forrás szempontjából egyértelmű üzenet többértelműségek, melyeket a vevőnek kell feloldani Ezt az egyértelműsítést olyan gyorsan képes elvégezni az agy, hogy egyszerre akár 2 forrást is értelmezni tudunk, valós időben –„Miért fejt több ember keresztrejtvényt, mint szenet?”
A többértelműség megjelenései a nyelvben Szavak szintjén –Homonímia (azonos alakúság), Poliszémia (többértelműség) „vár”, „vírus” –Szinonímia (rokonértelműség) „humoros, vicces, tréfás, mókás, poénos, mulatságos, kacagtató, mulattató, szórakoztató, komikus stb.” Mondat szintjén –Szerkezeti többértelműség Szöveg szintjén –A közlés szándéka, a forrás/vevő viszonya befolyásolja az üzenet jelentését „De szeretlek” Általában sem mindegy egy adott szöveg milyen helyzetben kerül közlésre / hangzik el.
Szemantikai problémák A jelentések „tárolása” Jelentés-egyértelműsítés (Word Sense Disambiguation, WSD) Gépi fordítás, Információ kinyerés Szemantikus (vagy fogalmi) indexezés Intelligens(ebb) keresők
Ontológiák
Szemantikus hálók Quillian, 1968 Tudásreprezentáció eszköze Fogalmak, relációk, tulajdonságok ábrázolására Kiválóan alkalmas strukturált tudás ábrázolására as évektől népszerű AI területén is
Mi is az a szemantikus háló?? Tulajdonképpen egy címkézett gráf (irányított és irányítatlan élek is lehetnek) Csúcsaiban objektumok Csúcsokhoz rendelt attribútumok Csúcsok között különféle lehetséges relációk (különböző színű élek) Az attribútumokat egyes relációk közvetíthetik a relációk mentén (redundancia mentes információ tárolás)
Ontológiák (filozófia) Ontológia: „A felfogás leírása” Filozófiai tudományág, a létezést, létező dolgokat vizsgálja –Megadja a vizsgált univerzumban létező fogalmak kategóriáit, metafizikai kereteket (pl. 4 dimenzióban gondolkodunk, az időbeliséget ábrázolva, stb.) ontológia: A fentiek megvalósulása –Fogalmak felsorolása, illeszkedve az elméleti modellhez
Formális ontológia Informatika több területén népszerű (nem csak nyelvtechnológia) A cél a világ (legtöbbször egy alkalmazás szemszögéből történő) formális leírása –A világ alkotóelemei, viszonyuk (relációk) –Tudás beépítése az adatstruktúrába (minél kevesebb legyen az alkalmazásba égetve!) –Informatikai rendszerek összekapcsolásában lehet nagy jelentősége –Elsődleges a gépi felolvashatóság –Az ontológia értelmezésével érvényes logikai következtetések végezhetők
Formális ontológia Egy alkalmazás megosztja –Outputját –Az ontológiát amit használ Egy másik alkalmazás –Felolvassa az outputot –Felolvassa az ontológiát, ami alapján interpretálni tudja a másik rendszer kimenetét –Feldolgozza a másik rendszertől kapott inputot Ideális esetben a két alkalmazás, ha azonos vagy hasonló területen működnek közös tudásreprezentációt használ
Ontológiák (nyelvészet) A természetes nyelv elemeinek felsorolása –Mik az elemek?? Nyilván szavak (WORD forms)… de a szavakon túlmutatva (nem a szavak a nyelvben létező egységek, hanem „fogalmak” – formális nyelvvel ellentétben nem értelmes jelsorozatok közvetítése a cél, hanem értelmes jelsorozatokkal kommunikáció, a szavak értelmének átadása) Fogalom (CONCEPT): absztrakt, egy jelentés… amit kifejez egy vagy több szó (Ezeknek az absztrakt „valamiknek” a leírása, gyűjteménye az ontológia)
Ontológiák (nyelvészet) Nyelvi (lexikai) adatbázisok A nyelv fogalmait tartalmazzák Tartalmaznak az egyes fogalmakról: –információkat, hogyan épülnek be a nyelvbe, mint elem –Sokszor egy glosszát – a jelentés szöveges magyarázata
Mi is az az ontológia?? Adatbázis (nem formátumra értve) Szemantikai tudásbázis –Ideális formátum reprezentációra a szem. háló Hasznos eszköz szinte minden nyelvtechnológiai alkalmazás számára (mint erőforrás – gépileg feldolgozható) –Legalapvetőbb haszon Szinonimitás ábrázolása Lehetőség a szóalak/jelentés összekapcsolás megvalósítására Sok más
Ontológiák a világban Sok létezik világszerte – főként angol Magyar nyelvre is De facto standard világszerte – WordNet –Princeton WordNet (angol) –EuroWordNet (soknyelvű) Holland, spanyol, olasz, német, francia, cseh, észt, angol –BalkaNet (soknyelvű) Bolgár, román, török, görög, szerb
Princeton WordNet A legelső WordNet (1990) –Ma: WordNet 2.1 Legfőbb jellemzők: –Szemantikus háló reprezentáció –Jelentések, mint szinonima halmazok - csúcsok –Leggyakoribb lexikai relációk – élek –Főnevek, igék, melléknevek, határozószók, „function words” –Impresszív mére
Princeton Wordnet Eredetileg az emberi agy nyelvi tudásreprezentációjának modellje –Ennek szánták (inkább elméleti nyelvészeti / filozófiai indíttatás) –Más mint egy szótár – szavak szintjén redundancia A legnagyobb, egységes lexikai adatbázis Ingyenes Gépileg feldolgozható információ –Számítógépes nyelvészet egyik legalapvetőbb eszköze lett
PWN mérete (2.0) POSUnique stringsSynsets Total Word- Sense Pairs Noun Verb Adjective Adverb Totals
PWN poliszémia (2.0) POSAverage Polysemy Including Monosemous Words Excluding Monosemous Words Noun Verb Adjective Adverb
Wordnet relációi Szinonímia (szóalakok közt) [N, V, Adj, Adv] két szóalak legalább egy jelentése közös Pl. ész – értelem – tudat – stb. Antonímia (szóalakok közt) [N, V, Adj, Adv] szoros ellentét jelentésben Pl. győzelem/vereség, száraz/nedves Hiponímia (Hipernímia) (synsetek közt) [N] /subclass-superclass/ „X az egy Y” – tartalmazás kategóriák között Tranzitív, hierarchikus reláció Pl. bárány -> emlős -> állat -> élő dolog -> elsőrendű entitás Meronímia (Holonímia) (synsetek közt) [N] része reláció Pl. „kar” része „izom”, „hús”, „csont”, stb…
Wordnet relációi Troponímia (synsetek közt) [V] /subclass-superclass/ Ugyanaz igék közt, mint a hipo/hipernímia főneveknél Pl. menetel, ballag -> jár -> mozog … Következés (synsetek közt) [V] X maga után vonja Y-t Pl. „elválik” maga után vonja, hogy „megházasodtak”…
EuroWordnet Többnyelvű ontológia, a WordNet modellje alapján A nyelvek közti kapcsolódást egy nyelvközi index-szel oldják meg (Inter Lingual Index, ILI) Maximalizálni akarták az átfedést a különböző nyelvi hálózatok topológiája közt (alapfogalmak, Base Concepts, BCs) Óriási lehetőségeket nyit a nyelvtechnológiában pl. fordítás Már informatikai motivációval indult el a fejlesztése
Inter Lingual Index, ILI A nyelvek közti kapcsolat megteremtéséhez az angol synseteket használták EuroWordnet Core – PWN különböző nyelvi synsetet nyelvközi (ekvivalencia) reláció köt össze, ha mindkettő ugyanahhoz a PWN synsethez van csatolva (ilyen nyelvközi relációval) Jelentések közti ekvivalenciáról van szó –Értelemszerűen az ekvivalensnek tekintett synseteket alkotó szóalakok használhatók egymás fordításaira
Base Concepts, BCs Olyan alapfogalmak, melyeket minden EUWN tag kötelező jelleggel megvalósít a saját hálózatában Egy minimális átjárhatóságot biztosít a nyelvek közt BC-k kiválasztása: ha két ország akart egy adott fogalmat bevezetni, mint BC-t, akkor a többire kötelezővé vált 1059 db synset (796 N, 263 V)
EUWN Top Ontology Egy felső ontológia az EUWN-ben, a különböző WN-ek hasonlóságának maximalizálására A BC-k fölé, illetve azokból A TOP ontológia nyelvfüggetlen –Minden célnyelvre azonos –Legabsztraktabb fogalomosztályok közösek A BC-k és a TOP ontológia kialakításával értelemszerűen az angol WN-t is bővíteni/módosítani kellett levált a Princetoni vonalról a fejlődése
Még néhány szó a EUWN-ről Néhány új reláció a PWN-hez képest Az előzőekben áttekintett kötelező részeken felül szabad továbbfejlesztés –További synsetek –További relációk (pl igei vonzatkeretek /cseh, román/) Korlátozott nyilvánosság: –Fizetni kell érte
BalkaNet Balkáni nyelvek csatlakozása a EuroWordNet rendszerbe Az EUWN követelményein túlmutató fejlesztések –Bővített BC halmaz –Módosított ILI –Minőségbiztosítás – konzisztensebb adatbázis –XML adatformátum
BalkaNet Inter Lingual Index, BILI Áttértek a PWN 1.5-ös ILI-ről, amit az EUWN használt, a PWN 2.0-s verzióra –Sokkal konzisztensebb alap –Problémák a EUWN kompatibilitással (nem nagy, a konverzió 90+ %-ban automatikus) –Bővíteni is kellett (pl. ételek neveivel) –Semantic interlingual validation (validálták a nyelvek közti összefüggéseket a hálóban)
Balkanet Common Base Concepts, BCBC Alap: –Átvették a EUWN alapfogalmait –Kiterjesztették (8516 fogalom a BILIben) Közös javaslatok alapján PWN-ben sok relációban szereplő csomópontokkal –A kiterjesztés 1.5ös WN alapján indult, csak azokat tartották meg ami átképezhető volt 2.0 BCBC-k kompatibilisek a EUWN-tel!!! Vették az egész hiperním és holoním lezártját
WordNet Fejlesztés Többé kevésbé automatikus előmunkálatok Kézi validálás, javítás Automatikus WN építés forrásai –Idegen nyelvűek (pl. másik WordNet) –Kétnyelvűek (pl. elektronikus szótárak) –Egynyelvűek (pl. ÉKSZ, szinonima szótárak, stb.) Domain ontológiák fejlesztése –Sokkal automatizáltabb, gépi tanuló megközelítések is
Domain ontológia fejlesztés automatikusan Terminológia kinyerés –korpuszból Taxonomikus relációk kinyerése –ÉKSZ-ből, más elektronikus anyagokból –Korpuszból Nem taxonomikus relációk kinyerése –Kevesebb próbálkozás, de van Domain ontológia építéskor erdőt kapunk –Beköthetők az általános ontológiába, a megfelelő helyen (a hierarchiában alulra)
Dokumentációk, eszközök, stb. EUWN, BALKANET két nagy projekt –Reportok elérhetőek a projektek honlapjain –Ingyenesen letölthetők eszközök, amiket az építéshez használtak (BalkaNet)
Magyar WordNet 2007-ben fejeződött be a fejlesztése –MorphoLogic Kft. –MTA Nyelvtudományi Intézet –Szegedi Tudományegyetem fogalom, a BalkaNet specifikációját (ILI, BCS, stb.) követve 5000 elem (csúcsontológia) ingyenesen hozzáférhető
Jelentés-egyértelműsítés Word sense disambiguation: Egy szóalak jelentésének kiválasztása, egy előre megadott (lehetséges jelentés-) halmazból –A lehetséges jelentések ált. egy szótárból –Osztályozási modellek alkalmazhatók (előre egyértelműsített példák szükségesek) Word sense induction: Az adott szóalak különböző használati eseteit (~jelentés) elkülöníteni, anélkül, hogy a lehetséges jelentéseket kívülről megadnánk /és így címkézett példáink sem lehetnek/ –Felügyelet nélküli statisztikai modellek
A többértelműség a nyelvben Az agyunk optimalizál –Nagyobb többértelműség kisebb lexikon kevesebb memória bonyolultabb feldolgozás –Kisebb többértelműség nagyobb lexikon lassabb tanulás könnyebb értelmezés A nyelvben gyakori a többértelműség –Az embernek mégis elvétve okoz gondot a fogadott jelsorozat értelmezése –A nyelv hatékony az ember számára A számítógép számára szinte teljesen kezelhetetlen a többértelműség
WSD Típusai –All words A cél az összes szóalak egyértelműsítése, folyó szövegben –Lexical sample A cél bizonyos szóalakok egyértelműsítése, minden szóalakra önálló modell
Pro és Kontra All words –Nagyon kevés erőforrás áll rendelkezésre –Olyan mintákat kell tanulni, melyek függetlenek az adott szóalaktól –Nincs kielégítő megoldás még –Gyakorlatban ez lenne jól használható Lexical sample –Több erőforrás van, és olcsóbban előállítható 1-1 új szóalakra –Az adott szóra jellemző mintákat tanulhatunk, könnyebb feladat –Tűrhető (nem jó!) megoldások vannak –Gyakorlatban ritkán használható
Lexical Sample Hipotézis: egy szóalak, adott jelentésben hasonló szavakkal fordul elő együttesen használjuk a kontextust az egyértelműsítésre (nem nagy ötlet, mi mást tudnánk használni? ) Vegyünk egy N széles ablakot a szóelőfordulás körül Írjuk le a szó környezetében található (remélhetőleg hasznos) információt Tipikus jellemzők: szavak, lemmák, szófaji kód, gyakoriságok, …
Lexical sample Az előző dián látottak szerint építsünk egy gépi tanuló modellt Eredmények: Senseval-3 legjobb:72.9% Baseline (leggyakoribb j.):55.2% Emberi egyetértési ráta: ~67%
Lexical sample feladat tanulságai Ilyen megközelítésben építhetők jó rendszerek (jelentősen túllépték a basline-t) A feladat nehéz, ha nem a megértés, hanem a döntés a feladat (alacsony egyetértés az emberi bejelölők közt). Túl barokkos jelentésmegkülönböztetés (még embernek is nehéz elhatárolni a jelentéseket)
All words Senseval-3 –on legsikeresebb modellek minimális felügyelettel tanított osztályozók Senselearner Senseval-3 all word task:64.6% Leggyakoribb jelentés:60.9% Ez a feladat még nem ért el arra a szintre, hogy alkalmazásokba építve javítson azok működésén (nyitott terület)
Word Sense Induction Nincs előre definiált jelentéshalmaz HyperLex –Szó szövegkörnyezeteire együttelőfordulási (co- occurence) gráfot épít –Egy szó körül nem véletlenszerűen jelennek meg (vagy nem) együtt a szavak –Ezek a gráfok speciális szerkezetet mutatnak Ezen a gráfon keressünk kiemelten fontos csomópontokat Ezek tükrözni fogják az adott szóalak különböző használati eseteit Használjuk fel őket
HyperLex Jó eredmények Lexical Sample WSI-re /főnevekre a jelenlegi legjobb felügyelet nélküli modell/ Senseval-3, főnevek:64.6% Leggyakoribb jelentés: 54.5%
WSD magyarra A WordNet építése mellett elkészült Szegeden az első (Lexical Sample) tanítókorpusz magyarra melléknév: anyagi, élő, erős, képes, pontos, szociális főnév: civil, család, élet, ház, helyzet, intézmény, iskola, kép, képviselő, kormány, nap, oldal, ország, perc, pont, program, század, személy, szervezet, tanár, világ, víz ige: függ, hat, jár, kap, kerül, marad, rendelkezik, szerepel, tart, tartozik, tud, válik
Magyar WSD statisztikák
Selectional preferencies Az igék argumentuma speciális szemantikus típusból kerülhetnek ki tegnap ettem egy almát, levest, tyúkot, teherautót vezettem egy Opelt, traktort, távirányítót Felügyelet nélküli tanulás
A Szemantikus WEB…
Szemantikus WEB A World Wide Web egy kialakulóban/kifejlődőben lévő kiterjesztése Tim Berners-Lee – Web as a universal medium for data, information, and knowledge exchange A webes tartalom nemcsak természetes nyelven, hanem formális eszközökkel is jelenjen meg a weblapokon Számítógépes alkalmazások könnyebben –Megtalálják –Megosztják –Értelmezik –Integrálják az információt… pl. Szegeden a DVD ára? A szemantikus WEB még csak egy vízió…
Tim Berners-Lee víziója Mire használ(hat)juk a Webet? –Pl. fordítás (szótár) –Pl. foglalások (jegyrendelés) –Pl. legolcsóbb DVD megkeresése, megvásárlása Képes ezt egy gép elvégezni nekünk? –Miért nem? Sok oka van –Az információt emberi feldolgozásra tervezték a weblapokon –Az információ közlésében nem érdekelt a forrás A szemantikus weben egy alkalmazás ezeket a feladatokat el tudná végezni helyettünk
Mesterséges Intelligencia oldaláról Ez egy korlátozott szintű MI! –A gép képes lesz értelmezni ember alkotta fogalmakat!? –De képes elvégezni Megoldani sok, jól definiálható problémát –Jól definiálható lépések sorozatával –Jól definiált adatok feldolgozásával Ez is futurisztikus lehet mai szemmel –Fizesd be a csekkeket! Ha megadom (1x) azokat a szolgáltatókat akikkel kapcsolatban vagyok Azokat eléri a weben Le tudja kérdezni az adataim Eléri a bankomat a weben (ezt ma is meg tudja tenni), de tudna egy alkalmazás a netbankon utalni? Ezt akár el is lehetne végezni automatikusan addig a szintig mindenképp, hogy feldobná a kitöltött formokat, és nekem csak jóváhagyni kellene
A szemantikus WEB építőelemei Egységes tudásreprezentáció –Formális ontológiák, pl.: SUMO - –Szabványos leírásban, pl.: OWL - A metainformációt feldolgozni képes keresők, gépek
Weboldalak szemantikus leírása Az oldal készítője látja el szemantikus jegyekkel –Technológia adott –Folksonómiák Automatikusan elemzi az oldalt –Nyelvtechnológia –Jogosultságok, számításigény