dokumentum vektor modell, dokumentumok előfeldolgozása. pca redukció
DESCRIPTION
Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció. Szódokumentum mátrix előfordulás alapján. Szó-dokumentum mátrix előfordulás alapján. Eddig a szavak gyakoriságát nem vettük figyelembe Egy terminus előfordulásainak száma egy dokumentumban : szózsákmodell - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/1.jpg)
Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció
![Page 2: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/2.jpg)
SZÓDOKUMENTUM MÁTRIX ELŐFORDULÁS ALAPJÁN
![Page 3: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/3.jpg)
Szó-dokumentum mátrix előfordulás alapján
• Eddig a szavak gyakoriságát nem vettük figyelembe• Egy terminus előfordulásainak száma egy
dokumentumban: – szózsákmodell– a dokumentum egy vektor az ℕv térben (egy oszlop)
Antony and Cleopatra Julius Caesar The Tempest Hamlet Othello Macbeth
Antony 157 73 0 0 0 0
Brutus 4 157 0 1 0 0
Caesar 232 227 0 2 1 1
Calpurnia 0 10 0 0 0 0
Cleopatra 57 0 0 0 0 0
mercy 2 0 3 5 5 1
worser 2 0 1 1 1 0
![Page 4: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/4.jpg)
Előfordulás vs. gyakoriság
• Nézzük ismét a ides of march keresést– Julius Caesar-ban 5-ször fordul elő az ides– Más darabban nem fordul elő az ides– march néhány tucat alkalommal fordul elő (több
darabban)– Minden daraban szerepel az of
• Ez alapján a legrelevánsabb a legtöbb of-ot tartalmazó darab lenne
![Page 5: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/5.jpg)
Terminus gyakoriság tf
• További gond, hogy az előző mérték a hosszú dokumentumokat előnyben részesíti, mivel azok több szót tartalmaznak
• Első javítás: előfordulás (támogatottság) helyett gyakoriság (frekvencia)– tft,d = a t terminus előfordulásainak száma d-ben osztva
d szavainak számával• Jó hír – a tf-ek szummája egy dokumentumra 1 lesz– A dokumentumvektor L1 normája egy lesz
• Kérdés, hogy a nyers tf megfelel-e mértéknek?
![Page 6: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/6.jpg)
A terminus gyakoriság súlyozása: tf
• Mi a relatív fontossága, ha egy szó egy dokumentumban– 0-szor v. 1-szer fordul elő– 1-szer v. 2-szer fordul elő– 2-szer v. 3-szor fordul elő …
• Nem triviális: nyilván minél többször szerepel, annál jobb, de ez nem arányosan növekszik (márpedig a nyers tf-nél ez arányos)– Használhatjuk mégis a nyers tf-et
– De vannak más, a gyakorlatban sokszor alkalmazott lehetőségek
0:log1?0 ,,, dtdtdt tftfwf
![Page 7: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/7.jpg)
Skalárszorzat szerinti illeszkedés
• Az illeszkedést a dokumentum és a keresőkifejezés skalárszorzataként határozzuk meg:
• [Megj: 0, ha merőlegesek (nincsenek közös szavak)]• Az illeszkedés mértéke szerint rangsorolunk• Alkalmazhatjuk a logaritmikus súlyozást (wf ) is a szorzatbana tf
helyett• Továbbra sem veszi figyelembe:
– A szó ritkaságát (megkülönböztető képességét) a dokumentumgyűjteményben (ides vs. of)
i diqi tftfdq ,,
![Page 8: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/8.jpg)
A szó fontossága függjön a korpuszbeli támogatottságától
• Melyik informatívabb a dokumentum tartalmáról?– Az adóalany szó 10 előfordulása?– Az is 10 előfordulása?
• Korlátozni szeretnénk a gyakori szavak súlyát– De mi számít gyakorinak?
• Ötlet: korpusztámogatottság (collection frequency - cf )– A terminus összes előfordulásainak száma a teljes
gyűjteményben
![Page 9: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/9.jpg)
Dokumentumtámogatottság (df)
• Azonban a dokumentumtámogatottság (df ) jobbnak tűnik:
Szó cf dfferrari 10422 17insurance 10440 3997
• A két mérőszám megadása csak ismert (statikus) korpuszok esetén lehetséges.
• Hogyan használjuk ezután a df-et?
![Page 10: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/10.jpg)
tf-idf súlyozás
• tf-idf mérték komponensei:– szógyakoriság (tf )• vagy wf, a szó sűrűségét határozza meg a dokumentumban
– inverz dokumentumtámogatottság (idf ) • a szó megkülönböztető képességéet adja meg a korpuszbeli
ritkasága alapján• számolható egyszerűen a szót tartalmazó dokumentumok
száma alapján (idfi = 1/dfi)• de a leggyakoribb verzió:
dfnidf
i
i log
![Page 11: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/11.jpg)
Összefoglalás: tf-idf
• Minden i szóhoz minden d dokumentumban rendeljük az alábbi súlyt
• Növekszik a dokumentumon belüli előfordulásokkal• Növekszik a korpuszon belüli ritkasággal
)/log(,, ididi dfntfw
rmcontain te that documents ofnumber the
documents ofnumber total
document in termoffrequency ,
idf
n
jitf
i
di
Mi annak a szónak a súlya,amely minden
doksiban szerepel
![Page 12: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/12.jpg)
Valós értékű szó-dokumentum mátrix
• A szóelőfordulások függvénye: – szózsákmodell– Minden dokumentumok egy valós reprezentál ℝv -
ben – Logaritmikusan skálázott tf.idf
Antony and Cleopatra Julius Caesar The Tempest Hamlet Othello Macbeth
Antony 13.1 11.4 0.0 0.0 0.0 0.0
Brutus 3.0 8.3 0.0 1.0 0.0 0.0
Caesar 2.3 2.3 0.0 0.5 0.3 0.3
Calpurnia 0.0 11.2 0.0 0.0 0.0 0.0
Cleopatra 17.7 0.0 0.0 0.0 0.0 0.0
mercy 0.5 0.0 0.7 0.9 0.9 0.3
worser 1.2 0.0 0.6 0.6 0.6 0.0
Nagyobb lehet 1-nél!
![Page 13: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/13.jpg)
Szózsákmodell-reprezentációról
• Nem tesz különbséget aNitzsche mondta: Isten halottés az Isten mondta: Nitzsche halottmondatok között. Gondot jelent ez nekünk?
![Page 14: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/14.jpg)
VEKTORTÉR MODELL
![Page 15: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/15.jpg)
![Page 16: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/16.jpg)
Dokumentumvektorok
• Minden dokumentumot egy vektornak tekintünk wfidf értékek alapján, ahol az elemek a szavakhoz tartoznak
• Van tehát egy vektorterünk– Ennek a tengelyei a szavak/terminusok– Dokumentumok a vektortér pontjai– Még szótövezéssel is bőven 20,000-nél nagyobb lesz a
vektortér dimenziója• (Ha a mátrixot a másik irányból nézzük, akkor a
dokumentumok lehetnek a tengelyek, és a szavak vannak a vektortér elemei)
![Page 17: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/17.jpg)
Dokumentumvektorok (2)
• Minden q keresőkifejezés is a vektortér vektoraként fogható fel (általában nagyon ritka)
• Az illeszkedést a vektorok közelsége alapján határozzuk meg– Ezután minden dokumentumhoz hozzárendelhető
egy relevanciaérték a q keresőkifejezés esetén
![Page 18: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/18.jpg)
Miért jó, ha dokumentumvektoraink vannak?
• Egy lehetséges alkalmazás: mintadokumentum alapján keresünk– Adott egy D dokumentum, keresünk hasonlókat
(pl. plágiumkeresés)• Ekkor tehát D egy vektor, és hasonló (közeli)
vektorokat keresünk
![Page 19: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/19.jpg)
És a hipotézis ami mögötte van
Hipotézis: azok a dokumentumok, amelyek a vektortérben vannak egymáshoz hasonló témájúak
t1
d2
d1
d3
d4
d5
t3
t2
θ
φ
![Page 20: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/20.jpg)
A vektortérmodell
A keresőkifejezés egy vektor• Rövid dokumentumnak tekintjük• Azok a dokumentumok lesznek találatok,
amelyek – vektorként – közel helyezkednek el a keresőkifejezéshez
• Első alkalmazása a Salton féle SMART rendszerben - Salton's Magical Automatic Retriever of Text (1970)
![Page 21: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/21.jpg)
Objektumok hasonlósága
• A szövegfeldolgozás során szükség lehet a leíró elemek hasonlóságának mérésére– Tipikus műveletek:
• a mintához hasonlító dokumentumok keresése• a dokumentumok rangsorolása• dokumentumok csoportosítása• dokumentumok osztályozása• hasonlóság alapú szó keresés• dokumentumok tisztítása
• A hasonlóság mérése távolság alapon történi– Euklédeszi távolság az euklédeszi térben:
![Page 22: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/22.jpg)
Közelség fogalmának követelményei
• Ha d1 közel van d2-höz, akkor d2 közel legyend1-hez (szimmetria).
• Ha d1 közeli d2-höz, és d2 közeli d3-hoz, akkor d1 ne legyen messze d3-tól (kvázi háromszög-egyenlőtlenség)
• Nincs olyan dokumentum, amely közelebb lenne d-hez mint önmaga (reflexív).
![Page 23: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/23.jpg)
Első megközelítés
• A d1 és d2 vektorok távolsága legyen a különségük hossza|d1 – d2|.– Euklideszi-távolság
• Mi a baj ezzel?• Nem foglalkoztunk még a hossz-normalizálással– Hosszú dokumentumok a hosszuk miatt
hasonlóbbak lesznek egymáshoz témától függetlenül
• Könnyen elvégezhetjük a hossznormalizálást, ha a vektorok által bezárt szöget tekintjük
![Page 24: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/24.jpg)
Koszinuszhasonlóság
• Két vektor, d1 és d2 hasonlóságát a köztük lévő szög koszinusza adja meg.
• Megjegyzés – ez nem távolság, hanem hasonlóság, mivel a háromszög-egyenlőtlenség nem teljesül rá
t 1
d 2
d 1
t 3
t 2
θ
![Page 25: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/25.jpg)
Koszinuszhasonlóság (2)
• A vektorok által bezárt szög koszinusza• A nevező tartalmazza a hossznormalizálást.
n
i ki
n
i ji
n
i kiji
kj
kjkj
ww
ww
dd
ddddsim
1
2,1
2,
1 ,,),(
![Page 26: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/26.jpg)
Koszinuszhasonlóság (3)
• A dokumentumvektor hosszát az alábbiak szerint definiáljuk
• Egy vektor úgy normalizálható normalized (a hossza 1), ha minden elemét elosztjuk a hosszával – itt L2 normát használunk
• Ez a vektorokat az egységgömbre képezi le:
• Azaz, • Hosszabb dokumentumoknak nem lesz nagyobb súlya
n
i idd1
2Length
11 ,
n
i jij wd
![Page 27: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/27.jpg)
Normalizált vektorok
• Normalizált vektorok esetében a koszinuszhasonloság a skalárszorzattal egyezik meg.
kjkj dddd
),cos(
![Page 28: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/28.jpg)
DIMENZIÓ REDUKCIÓ
![Page 29: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/29.jpg)
Dokumentum reprezentáció redukálása• A nagy méret, összetettség több problémát is okoz• Cél: a dokumentumok feldolgozási költéségnek
csökkentése, a feldolgozás minőségének javítása• Megoldás: az elhagyható elemek redukálása.• A elem elhagyható, ha– nem független másoktól– nem diszkriminatív (nem releváns a probléma szempontjából)
![Page 30: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/30.jpg)
Redukciós eljárások
• statisztikai eljárások a vektormodellre– PCA– SVD
• relevancia alapú, discrimination analysis – TFIDF tartomány– stop words
• domain specifikus szűrés– szótár alapú szűrés
• nyelv alapú szűrés– szótövezés– szinonímák használata
![Page 31: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/31.jpg)
PCA módszer• A módszer lényege, hogy báziscserével az objektumokat
egy alacsonyabb dimenziószámú vektortérbe viszi át• Cél a minimális információ veszteség biztosítása• A lényegesnek tekintett információ klaszterezéshez,
osztályozáshoz: az objektumok egymás közötti távolság viszonyai
• Olyan új koordinátatengelyek kellenek, ahol a nagy az objektumok távolság értékeinek szórása
• nem csak dimenzió elhagyás történik, hanem új dimenzió tengely kijelölés
![Page 32: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/32.jpg)
Vektortérmodell
• Egy {v1,v2,...,vn} vektorrendszer függő, ha valamely eleme lineráisan kombinálható a többi elemtől
• Vektorér bázisa: azon független {v1,v2,...,vn} , melyből a tér összes eleme lineárisan kombinálható
• A tér minden bázisa azonos dimenziójú• Vektortér dimenziója: a bázisainak dimenziószáma• Vektor koordinátái egy adott bázis esetén: a bázisra
vonatkozó lineáris kombinációban szereplő együtthatók
![Page 33: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/33.jpg)
Lineáris leképzés
• Ha V1, V2 két vektortér, akkor a– Φ:V1 →V2 lineáris leképezés, ha
– teljesül.• Ha {v1,..,vn} a V1 bázisa, {u1,..,um} a V2
bázisa, akkor a lineáris transzformáció egy mátrixszal adható meg.
![Page 34: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/34.jpg)
PCA fő komponens elemzés
• PCA matematikai hátterének több ekvivalens megközelítése van, a legegyszerűbbek:– azon tengelyt keressük, ahol a vetületek szórása a
legnagyobb– azon tengelyt keressük, amelytől mért távolságok
összege minimális
![Page 35: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/35.jpg)
A PCA módszer
• Dokumentum leíró mátrix• az igényelt új bázis egy tengelyének
egység irányvektora: w• a választás célfüggvénye: a vetületek
varianciája (négyzetösszege) maximális legyen
![Page 36: Dokumentum vektor modell, dokumentumok előfeldolgozása. PCA redukció](https://reader030.vdocuments.pub/reader030/viewer/2022032805/568132f5550346895d99b026/html5/thumbnails/36.jpg)