340 likes | 451 Views
Gépi tanulás. 2007. szeptember 26. Mesterséges Intelligencia. „A számítógépes tudományok egy ága, amely az intelligens viselkedés automatizálásával foglalkozik” (Luger 1993)
E N D
Gépi tanulás 2007. szeptember 26.
Mesterséges Intelligencia • „A számítógépes tudományok egy ága, amely az intelligens viselkedés automatizálásával foglalkozik” (Luger 1993) • Annak tanulmányozása, hogy hogyan lehet a számítógéppel olyan dolgokat művelni amiben pillanatnyilag az emberek a jobbak” (Rich 1991)
Gépi tanulás Algoritmusok vs. Mest. Int. Gépi tanulás = Statisztikai tanulás Ma, a gyakorlati problémák megoldására hatékony Mest. Int. a gépi tanulás Ez intelligencia?
Osztályozási feladat Adott egyedek egy halmaza és azok osztályba tartozási függvénye (tanító halmaz), találjuk meg a szabályosságokat, mintázatokat ami alapján korábban nem látott egyedeket be tudjuk az adott osztályokba.
Gépi tanulás Legfontosabb részfeladatok: • egyed-jellemzők megtalálása • megfelelő tanuló módszer kiválasztása, hangolása • kiértékelés és visszacsatolás
Jellemzők Cél minden olyan jellemző összegyűjtése ami segítheti a predikciót (manuális) Tartsuk szem előtt a problémát! Típusai: • diszkrét: értékek véges halmaza, nincs rendezés • folytonos
Kiértékelés és visszacsatolás Kiértékelési metrika: a jelölés jóságának (gold standard címkékhez viszonyított) leképezése egyetlen értékre. Feladatonként más és más Visszacsatolás: elemzzük a hibáinkat! Lehetőségek: új jellemzők felvétele, paraméterek hangolása, stb.
Adatbázisok, versenyek • Tanító adatbázis • Fejlesztői adatbázis • Kiértékelési adatbázis • Versenyeken: • tanító és fejlesztői adatbázis: 1-2 hónap • Kiértékelési adatbázis: 1-2 nap
UFO példa • egyedek: emberek • osztályok: férfi/nő • adott egy tanuló adatbázis és ismeretlen elemek egy halmaza (teszt) • feladat: tesztegyedek osztályba sorolása • jellemzők: haj hossza, derékbőség … • tanuló algoritmus: C4.5 döntési fa • Kiértékelés: hányszor találta el • visszacsatolás…
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, tezauruszból • Osztályozási modellek alkalmazhatók (előre egyértelműsített példák szükségesek) • Word sense discrimination: 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 wordsA cél az összes szóalak egyértelműsítése, folyó szövegben • Lexical sampleA cél bizonyos szóalakok egyértelműsítése, minden szóalakra önálló modell
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ó Pro és Kontra
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, … „An electric guitar and bass player stand off to one side, not really part of the scene, just as a sort of nod to gringo expectations perhaps.” • Surrounding context (local features) • [ (guitar, NN1), (and, CJC), (player, NN1), (stand, VVB) ] • Frequent co-occurring words (topical features) • [fishing, big, sound, player, fly, rod, pound, double, runs, playing, guitar, band] • [0,0,0,1,0,0,0,0,0,0,1,0] • Other features: • [followed by "player", contains "show" in the sentence,…] • [yes, no, … ]
Lexical sample • Az előző dián látottak szerint építsünk egy tanuló modellt (tetszőleges osztályozó használható) • 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) www.senseval.org http://nlp.cs.swarthmore.edu/semeval/
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 Discrimination • 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 • Naná, ha értelmes a szöveg… • 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 (IR-ben jó így ahogy van; WSD-hez, képezzük rá ezeket a jelentéshalmazra)
HyperLex • Nagyon jó eredmények IR-ben, a nemreleváns lapok kidobálására • Jó eredmények Lexical Sample WSD-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
Projektmunka • Tanító adatbázis: • 33 szóalak • ~ 5 ezer HVG cikk (pontosan 1 célszó) • automatikusan szótövesített, szófajilag egyértelműsített elemzés adott • Kiértékelés1: • Ugyanezen szóalakokra ~ 2 ezer HVG cikk • Kiértékelés2: • 6 újabb szóalak Végeredmény: a kettő számtani átlaga
Leggyakoribb jelentés baseline.cpp >evaluation.exe cimke_test predicated Correctly classified: 1667 Incorrectly classified: 517 Accuracy: 0.763278 Ezt le kell tudni győzni! Kiértékelés: evaluation.exe (pontosság)
Projektmunka menetrend • Tanító adatbázis, evaluation.exe: mostantól • Kiértékelő1 adatbázis kiadása: okt. 24. • Kiértékelő1 beküldési határidő: nov. 6. • Kiértékelő2 adatbázis kiadása: nov. 28. • Kiértékelő2 beküldési határidő: dec. 2. • Projektmunkák prezentálása (eredményhirdetés): dec. 4. • Szóbeli vizsga: dec. 11.
Projektmunka tippek • Automatikusan keressünk „indikáló” szavakat • Milyen környezet lehet jó? • egész cikk / bekezdés / mondat • Szótövek, szófaji kódok segíthetnek • Jó stratégia lehet: • Ha biztosan tudunk dönteni tegyük meg, • egyébként használjuk a leggyakoribb jelentést