duomenų vizualizavimas daugiamačių duomenų vizualizavimas · pca metodo taikymo pvz., iris...
Post on 05-Oct-2019
3 Views
Preview:
TRANSCRIPT
Duomenų vizualizavimas
Daugiamačių duomenų vizualizavimas: projekcijos metodai
Aušra Mackutė-Varoneckienė Tomas Krilavičius
1
Projekcijos metodai
• Analizuojant daugiamačius objektus , kuriuos apibūdina n atributų, norima vizualiai įvertinti jų išsidėstymą n-matėje erdvėje. Kai n > 3 , tiesiogiai pamatyti šių taškų neįmanoma. Tačiau yra galimybė rasti jų projekciją į dvimatę ar trimatę erdvę, t. y. sumažinti matmenų skaičių iki mums įprasto.
• Pvz., – turime aibę taškų – dešinėje ir viršuje padėti ekranai. – įsivaizduokime, kad kitoje pusėje šviečia ryški šviesa – ant ekranų matomi duomenų taškų šešėliai – linijos sujungia taškus su jų projekcijomis – iš pirmo paveikslo matyti, kad dvimatėje projekcijoje išlieka du klasteriai, tačiau antrame paveiksle neišsiskiria klasteriai.
2
• Iš pvz. akivaizdu, kad skirtingomis projekcijomis gaunami skirtingi rezultatai. Be to, ne visada projekcijoje matome tikrąją duomenų struktūrą – klasterius, taškus atsiskyrėlius, taškų išsidėstymą. Todėl aukščiau minėto ekrano padėties pasirinkimo uždavinys nėra trivialus.
• Vizualizuojant daugiamačius duomenis susiduriama su dviem dažnai vienas kitam prieštaraujančiais tikslais:
– siekiama supaprastinti uždavinį mažinant duomenų matmenų skaičių,
– siekiama išlaikyti kiek galima daugiau originalios informacijos turinio, t. y. kuo mažiau iškraipyti analizuojamus duomenis
• Daugiamačiams duomenims transformuoti į mažesnio skaičiaus matmenų (dimensionalumo) erdvę taikomi projekcijos metodai. Jie dar vadinami matmenų skaičiaus mažinimo metodais (angl., dimensional reduction techniques). Jų tikslas – pateikti daugiamačius duomenis mažesnio skaičiaus matmenų erdvėje taip, kad būtų kiek galima tiksliau išlaikyta duomenų struktūra.
• Projekcijos metodai naudojami daugiamačiams duomenims vizualizuoti, kai pasirinktas pakankamai mažas projekcinės erdvės Rd matmenų skaičius (d = 2 arba d = 3 ). Erdvė Rd dar vadinama vaizdo erdve, nes dažniausiai jos elementus galima stebėti vizualiai. 3
• Tarkime, kad analizuojamų duomenų aibė yra matrica
X = {X1 ,X2 ,..., Xn } = {xij, i = 1, …, m, j = 1, …, n}
kurios i-oji eilutė yra vektorius Xi ∈ Rn , čia Xi = (xi1, xi2, …, xin), i ∈{1, …, m}, xij yra duomenų i-ojo vektoriaus Xi j-oji komponentė, atitinkanti j-ąjį atributą, n – vektoriaus Xi komponenčių skaičius, t. y. erdvės, kuriai priklauso vektorius Xi, matmenų skaičius, m – nalizuojamų objektų (vektorių) skaičius
• Reikia rasti vektoriaus Xi = (xi1, xi2, …, xin) transformaciją Yi = (yi1, yi2, …, yin) mažesnio skaičiaus matmenų projekcinėje, arba vaizdo, erdvėje Rd, d < n
• Jeigu projekcijos metodo tikslas – vizualizuoti duomenis, tai d = 2 arba d = 3 . Galima nagrinėti ir atvejį, kai d = 1, tačiau tada vizualizuojant prarandama daugiau informacijos ir vaizdumo, turimo stebint taškus plokštumoje (d = 2) ar erdvėje (d = 3) lyginant su tų pačių taškų išsidėstymu tiesėje (d = 1)
4
• Projekcijos metoduose taikomi formalūs matematiniai projekcijos kokybės kriterijai, kurie optimizuojami siekiant:
– gauti kiek galima tikslesnę daugiamačių duomenų projekciją mažesnio skaičiaus matmenų erdvėje, t. y. kuo mažiau iškraipyti duomenis pasirinkto kriterijaus atžvilgiu
– išsaugoti vizualizuojamų daugiamačių vektorių tarpusavio atstumų ar kitų artimumo įverčių proporcijas
– išsaugoti ar net išryškinti kitas sprendimams priimti svarbias analizuojamos duomenų aibės X charakteristikas, pavyzdžiui, klasterius
• Projekcijos metodai: – Tiesinės projekcijos metodais – ieškoma tiesinės analizuojamų duomenų
transformacijos. Yra įvairių tiesinės transformacijos galimybių: pasukimas, postūmis, atspindys, suspaudimas, ...
– Netiesinės projekcijos metodais – ieškoma netiesinės transformacijos.
5
Tiesinė/netiesinė transformacijos • Pasukimo tipo tiesinė transformacija yra aprašoma tiesinių lygčių sistema Yi = XiA Bendru atveju Yi = (yi1, yi2, …, yin), Xi = (xi1, xi2, …, xin), A – kvadratinė matrica,
sudaryta iš n eilučių ir n stulpelių. Jei tiesinė transformacija naudojama duomenų matmenų skaičiui mažinti, tada Yi = (yi1, yi2, …, yid), d < n, A – matrica, sudaryta iš n eilučių ir d stulpelių
• Netiesinė projekcija yra aprašoma šia forma: Y = f ( X )
čia f yra netiesinė transformacija. Netiesinė projekcija yra sudėtingesnė, reikalauja kur kas didesnių skaičiavimų – čia formuluojami ir sprendžiami daugelio kintamųjų optimizavimo uždaviniai, kurie dažniausiai būna daugiaekstremiai.
6
Tiesinė transformacija
Pvz., tiesinė projekcija, kai n = 2 . Tegul turime tašką Xi = (xi1, xi2) Transformuokime jį į tašką Yi = (yi1, yi2) tiesine transformacija
Matricos A elementai šiuo atveju priklauso tik nuo pasukimo kampo ir gali būti išreikšti per trigonometrines funkcijas:
čia α yra kampas tarp ašių x1 ir y1, tuo pačiu ir tarp ašių x2 ir y2, t. y. koordinačių sistemą (x1, x2) kampu α pasukame prieš laikrodžio rodyklę kad gautume koordinačių sistemą (y1, y2)
Koordinačių pradžios taškas nepasikeičia. Taško Xi koordinatės sistemoje (x1, x2) yra (xi1, xi2), o naujoje sistemoje yra (yi1, yi2): yi1 = xi1 cos α + xi2 sin α;
yi2 = xi2 cos α – xi1 sin α.
Faktiškai Yi = (yi1, yi2) ir yra taško Xi tiesinė
transformacija į koordinačių sistemą (y1, y2). Jei
tikslas yra sumažinti duomenų matmenų skaičių,
tai vektorių Yi galime sudaryti tik iš vienos
koordinatės, pvz., Yi = (yi1). Tada gausime taško
Xi transformaciją į vienmatę erdvę. 7
=
2221
1211
aaaa
A
−=
αααα
cossinsincos
A
• Pvz., paveiksluose pavaizduotos tiesinė (pav. kairėje) ir netiesinė (pav. dešinėje) projekcijos. Dvimačiai taškai X1, X2, …, X8 išdėstyti taip, kad tarp artimiausių taškų yra vienodi atstumai:
d(Xi, Xi+1) = d(Xi+1, Xi+2), i=1, …, 6 – tiesinės projekcijos atveju atvaizdavusį vienmatę erdvę (į tiesę y1) atstumai tarp
taškų nebus išlaikyti
– netiesinės – radus tinkamą transformaciją, atstumai tarp artimiausių taškų išliks vienodi
8
Pagrindinių komponenčių analizė (tiesinės projekcijos metodas) • Pagrindinių komponenčių analizė (angl., principal component analysis, PCA) yra klasikinis
statistikos metodas. Tai tiesinė duomenų transformacija, plačiai naudojama duomenų analizei kaip daugiamačių duomenų matmenų skaičiaus mažinimo metodas.
• PCA idėja – sumažinti duomenų matmenų skaičių atliekant tiesinę transformaciją ir atsisakant dalies po transformacijos gautų naujų komponenčių, kurių dispersijos yra mažiausios.
• Iš pradžių ieškoma krypties, kuria dispersija yra didžiausia. – Didžiausią dispersiją turinti kryptis vadinama pirmąja pagrindine komponente (PC1). Ji eina per
duomenų centrinį tašką. Tai taškas, kurio komponentės yra
analizuojamą duomenų aibę sudarančių taškų atskirų
komponenčių vidurkiai. Visų taškų vidutinis atstumas iki šios
tiesės yra minimalus, t. y. ši tiesė yra kiek galima arčiau visų
duomenų taškų.
– Antrosios pagrindinės komponentės (PC2) ašis taip pat turi
eiti per duomenų centrinį tašką ir ji turi būti statmena
pirmosios pagrindinės komponentės ašiai. 9
Pvz.,
- turime duomenų aibę, kurios objektus aprašo 3 atributai (kintamieji)
- suprojektavus duomenis į pirmą pagrindinę komponentę, galima aptikti duomenų klasterius
Pvz.,
- kai projekcija į pirmą komponentę nepateikia informacijos apie duomenų aibę
10
PCA algoritmas:
Turime duomenų matricą: X = {X1, X2, …, Xm} = {xij, i = 1, …, m, j = 1, …, n}, kurios i-oji eilutė yra vektorius Xi = (xi1, xi2, …, xin. ), t.y., šios matricos eilutės žymi objektus, o stulpeliai – tuos objektus apibūdinančius parametrus (atributus) x1, x2, …, xn
- apskaičiuojame koreliacijos koeficientus rkl. Iš jų sudarome koreliacinę matricą R = {rkl, k,l = 1, …, n}. Matricos R įstrižainės elementai = 1
- apskaičiuojame kovariacijos koeficientą ckl. Suformuojam kovariacinę metricą C = {ckl, k, l = 1, …, n}. Matrica C – simetrinė
- koreliacijos koeficientai gali būti išreiškiami per kovariacijos koeficientus: r = ckl / (√(ckk cll)). Jei parametrai xk ir xl nekoreliuoti, tai jų kovariacijos koeficientas lygus 0: ckl = clk = 0, k ≠ l
- apibrėžiame kovariacinės matricos tikrinius vektorius Ek (angl., eigenvector) ir jų tikrines reikšmes λk (angl., eigenvalues) spresdami lygtį CEk = λk Ek. Šioje lygtyje Ek yra vektorius stulpelis, C – kovariacinė matrica, λk reikšmė randama iš charakteringos lygties |C − λkI| = 0. Čia I yra vienetinė matrica, kurios matmenys tokie pat kaip matricos C; ženklu |.| apibrėžtas determinantas. Tikrinių vektorių skaičius yra lygūs duomenų matricą X sudarančių vektoriųkomponenčių skaičiui n
11
- surūšiuojame tikrinius vektorius Ek juos atitinkančių tikrinių reikšmių mažėjimo tvarka (λ1 ≥ λ2 ≥ λ3 ≥ … ≥ λn ). Matrica A = (E1, E2, …, En) – pagrindinių komponenčių matrica. Jos stulpeliai yra tikriniai vektoriai Ek, k = 1, …, n, atitinkantys tikrines reikšmes λ1 ≥ λ2 ≥ λ3 ≥ … ≥ λn
- transformuojame duomenų vektorius Xi, i = 1, …, m, pagal formulę: Yi=(Xi – μ)A, čia Xi = (xi1, xi2, …, xin.), μ = (μ1, μ2, …, μn), A = (E1, E2, …, En)
- gauti Yi = (yi1, yi2, …, yin) yra vektoriai (taškai) naujoje ortogonalioje koordinačių sistemoje (y1, y2, …, yn), apibrėžtoje tikriniais vektoriais Ek, k = 1, …, n. Vektorių Yi, i = 1, …, m komponenčių y1, y2, ..., yn kovariacinė matrica:
- originalius duomenų vektorius Xi, i = 1, …, m, galima išreikšti per vektorius Yi: Xi = Yi AT + μ
- daugiamačių duomenų transformacijai galima naudoti ne visus tikrinius vektorius, o tik pirmuosius. Tegul matrica Ad yra sudaryta iš d pirmųjų tikrinių vektorių. Tada galima sukurti transformaciją: Y = (Xi – μ)Ad, i = 1, …, m
- tokiu būdu randama duomenų vektoriaus projekcija į d matmenų erdvę. Vizualizavimui pasirenkame d = 2 arba d = 3.
12
=
n
Aλ
λ
0
01
PCA metodo taikymo pvz., Iris (kairėje) ir krūties vėžio (dešinėje) duomenys atvaizduojami
plokštumoje. Irisų duomenų atveju matosi, kad pirmos veislės irisai (pažymėti juodai) „nutolę“ nuo
kitų dviejų veislių, ryškios ribos tarp kitų dviejų veislių nėra. Didžioji dalis taškų krūties vėžio duomenų atveju, atitinkančių nepiktybinio naviko
duomenis (juodi taškai), susikoncentruoja vienoje srityje, o kiti taškai, atitinkantys piktybinio naviko duomenis, pasiskirsto plačiai.
Abiem atvejais stebime aiškiai išskiriančias taškų sankaupos sritis. Pagrindinių komponenčių metodo privalumas yra jo idėjos paprastumas. Tai didžia dalimi nulėmė
jo populiarumą ir platų taikymą.
13
Jei egzistuoja tiesinės priklausomybės tarp parametrų x1, x2, ..., xn, tai, taikant pagrindinių komponenčių metodą, duomenų matmenų skaičius mažinamas su nedidelėmis paklaidomis. Tačiau bendru atveju gali egzistuoti netiesinės priklausomybės, kurių PCA metodas negali įvertinti, ir tai yra šio metodo trūkumas
Vizualizavimo rezultatai, gauti taikant PCA metodą, labai priklauso nuo taškų atsiskyrėlių, nes šie taškai n-matėje erdvėje yra ryškiai nutolę nuo kitų, ir tai daro didelę įtaką kovariacinės matricos C elementų reikšmėms, kartu ir nustatytoms pagrindinėms komponentėms bei duomenų projekcijos kokybei
14
Tiesinė diskriminantinė analizė (tiesinės projekcijos metodas) • Skirtingai nuo daugelio kitų projekcijos metodų, tiesinės diskriminantinės analizės (angl., linear
discriminant analysis, LDA), vadinamasis Fišerio diskriminantinės analizės metodas realizuoja mokymo su mokytoju (angl., supervised) strategiją.
• Mokymo su mokytoju metodais analizuojami duomenys, kurių savybės (pavyzdžiui, priklausymas kokiai nors klasei) yra žinomos ir jomis tiesiogiai yra pasinaudojama. LDA metodas transformuoja daugiamatės erdvės duomenis į mažesnio skaičiaus matmenų erdvę taip, kad klasių atskiriamumo kriterijaus reikšmė būtų optimali
• Turime analizuojamų duomenų matricą X = {X1, X2, …, Xm} = {xij, i = 1, …, m, j = 1, …, n}, kurios i-ojoje eilutėje yra vektorius Xi = (xi1, xi2, …, xin. ). Matricos stulpeliai – duomenis apibūdinantys atributai x1, x2, …, xn
• Tegul duomenų matrica X sudaryta iš kelių matricų X(1), X(2), ..., X(k), kurių eilutės yra vektoriai Xi
(j) , i = 1, …, mj, j ∈ {1, …, k}, atitinkantys objektus, priklausančius vienai iš k klasių, čia mj yra objektų, priklausančių j-ajai klasei, skaičius
15
LDA: – apskaičiuojamas analizuojamus objektus apibūdinančių atributų visos aibės X reikšmių vidurkių
vektorius μ = (μ1, μ2, …, μn) ir kiekvienos klasės aibės X(j) reikšmių vidurkių vektoriai μ(j) – apskaičiuojami kovariacijos koeficientai, suformuojama bendra kovariacinė matrica C ir atskirų
klasių kovariacinės matricos C(j), j = 1, …, k – apskaičiuojamas išsibarstymas klasių viduje (angl., within-class scatter) Sw = ∑j=1
k pj C(j), čia pj yra apriorinė klasių tikimybė (pj = mj / m, čia mj yra objektų, priklausančių j-ajai klasei, skaičius, m – visų analizuojamų objektų skaičius)
– apskaičiuojamas tarp klasinis išsibarstymas (angl., between-class scatter) Sb = C – Sw – randami matricos Sw
-1 Sb tikriniai vektoriai ir tikrinės reikšmės. Jie surūšiuojami tikrinių reikšmių mažėjimo tvarka. Išrenkami d didžiausias tikrines reikšmes atitinkantys tikriniai vektoriai (būtinai turi būti d < k )
– apskaičiuojama duomenų transformacija: Yi = (Xi – μ)Ad, i = 1, …, m, čia Ad yra matrica, sudaryta iš tikrinių vektorių, atitinkančių d didžiausių tikrinių reikšmių kaip vektorių stulpelių Tiesinės diskriminantinės analizės privalumas palyginti su pagrindinių komponenčių analize, yra tai, kad čia atsižvelgiama į duomenų klases Pvz., Iris duomenys atvaizduoti LDA metodu:
16
Projekcijos paieška (tiesinės projekcijos metodas)
• Projekcijos paieškos (angl., projection pursuit) metodo, kaip ir daugelio kitų projekcijų metodų, tikslas yra rasti tokias tiesines komponenčių kombinacijas (dažniausiai dvimates ar trimates), kad transformuoti duomenys išlaikytų pradinių duomenų struktūrą
• Tarkime, turime duomenų matricą X, kurios eilutėse yra n-mačiai vektoriai. Erdvės Rn taškų projekciją į erdvę Rd galima išreikšti taip: Y = XA, čia X = {X1, X2, …, Xm} = {xij, i = 1, …, m, j = 1, …, n}, A - matrica, sudaryta iš n eilučių ir d stulpelių, Y = {Y1, Y2, …, Ym} = {yij, i = 1, …, m, j = 1, …, d} yra duomenų, gautų po projekcijos, matrica
17
• Visų pirma reikia nuspręsti, kurią duomenų savybę norime išryškinti vizualizavimo metu. Tada reikia apsibrėžti matą, atspindintį šią savybę.
• Pavadinkime šį matą I(Y) . Dažnai jis vadinamas indekso funkcija (angl., index function). Tarkime, norime išryškinti duomenų klasterius. Tuo atveju galėtų būti naudojamas statistinis klasterizavimo matas – vidutinis atstumas iki artimiausio kaimyno (angl., mean nearest neighbour distance). Kuo mažesnė šio mato reikšmė viename klasteryje, tuo duomenys yra geriau suklasterizuoti.
• Tegul I(Y) yra vidutinis atstumas iki artimiausio kaimyno. Išraiška I(Y) gali būti pakeista į I(XA) . Projekcijos parinkimo uždavinys susiveda į optimizavimo uždavinį: reikia parinkti tokią matricą A, kad funkcijos I(XA) reikšmė būtų mažiausia. Iš esmės tai ir yra projekcijos paieškos procesas.
• Jeigu mus domina taškų atsiskyrėlių egzistavimas, tada uždavinys pakeičiamas taip, kad būtų ieškoma didžiausio vidutinio atstumo iki artimiausio kaimyno.
18
Daugiamatės skalės (netiesinės projekcijos metodas) • Daugiamačių skalių (angl., multidimensional scaling, MDS) metodas – tai
grupė metodų, plačiai naudojamų daugiamačių duomenų analizei įvairiose šakose, ypač ekonomikoje, socialiniuose moksluose ir kt. Gausu šio metodo realizacijų, kurios skiriasi naudojamais vizualizavimo kokybės kriterijais, optimizavimo algoritmais ar prielaidomis apie duomenis.
• Naudojantis MDS, ieškoma daugiamačių duomenų projekcijų mažesnio skaičiaus matmenų erdvėje (dažniausiai R2 arba R3), siekiant išlaikyti analizuojamos aibės objektų artimumus – panašumus arba skirtingumus.
• Gautuose vaizduose panašūs objektai išdėstomi arčiau vieni kitų, o skirtingi – toliau vieni nuo kitų.
19
• Pradiniai daugiamačių skalių metodo duomenys yra kvadratinė simetrinė matrica, kurios elementai nusako artimumą tarp analizuojamų objektų. Tai gali būti arba panašumų, arba skirtingumų matrica. Paprasčiausiu atveju tai yra Euklido atstumų tarp objektų matrica. Tačiau bendruoju atveju, tai nebūtinai turi būti atstumai griežtai matematine prasme.
• Vienas daugiamačių skalių metodų tikslų yra rasti optimalų daugiamačius objektus atitinkančių taškų (vektorių) vaizdą mažo skaičiaus matmenų erdvėje.
20
Tarkime, kiekvieną n-matį vektorių Xi ∈ R n, i ∈ {1, … , m}, atitinka mažesnio skaičiaus matmenų vektorius Y i ∈ Rd, n <d. Atstumą tarp vektorių Xi ir X j pažymėkime d(Xi,Xj), o atstumą tarp vektorių Yi ir Yj : d(Yi,Yj), i,j = 1, …, m.
Naudojantis MDS algoritmu, bandoma atstumus d(Yi, Yj) priartinti prie atstumų d(Xi, Xj). Jei naudojama kvadratinė paklaidos funkcija, tai minimizuojama tikslo funkcija EMDS gali būti užrašyta taip:
EMDS = ∑i<j wij (d (Xi, Xj) – d (Yi, Yj))2.
Paklaidos funkcija EMDS dar vadinama Stress funkcija. Dažnai naudojami tokie svoriai wij: wij = 1 / (∑i<j (d (Xi, Xj) ) )2 ;
wij = 1 / (d (Xi, Xj) ∑k<l (d (Xk, Xl) ) )
čia d(Xi, Xj) ≠ 0, t.y., tarp vektorių X1, X2, …, Xm nėra
sutampančių Pvz., MDS metodu gautas daugiamačių taškų išsidėstymas
dvimatėje plokštumoje vizualizuojant irisų duomenis.
Matome, kad taškai, atitinkantys pirmos klasės irisus (juodi),
sudaro atskirą grupę. Ryškios ribos tarp kitų dviejų grupių
nėra. 21
Kubų vaizdai gauti naudojant Euklido ir miesto kvartalo metrikas
• Euklido atstumai
• Miesto kvartalo atstumai
Sammono projekcija (netiesinės projekcijos metodas) • Sammono projekcija, dažnai vadinama Sammono metodu ar algoritmu,
yranetiesinis objektų, apibūdinamų daugeliu parametrų, atvaizdavimas mažesnio skaičiaus matmenų erdvėje Rd , dažniausiai d = 2 .
• Metodas priskiriamas prie daugiamačių skalių (MDS) metodų grupės.
• Metodo idėja – atvaizduoti daugiamačius objektus atitinkančius vektorius mažesnio skaičiaus matmenų erdvėje išlaikant panašius atstumus tarp vektorių.
• Sammono projekcija minimizuoja projekcijos iškraipymą (paklaidą) ES:
ES =(1 / (∑i<j (d(Xi, Xj) ) )) (∑i<j (((d(Xi, Xj) – d(Yi, Yj))2) / (d(Xi, Xj) )))
• Funkcija ES sutampa su EMDS , kai wij = 1 / (d (Xi, Xj) ∑k<l (d (Xk, Xl) ) )
• Sammono paklaida (angl., Sammon‘s stress (error)) ES – tai matas, kuris parodo, kaip tiksliai išlaikomi atstumai tarp vektorių pereinant iš didesnio skaičiaus matmenų erdvės į mažesnio skaičiaus matmenų erdvę. Pagrindinis uždavinys – minimizuoti paklaidos funkciją ES
28
Sammono algoritmas:
1. skaičiuojami atstumai tarp analizuojamų vektorių pradinėje erdvėje
2. atsitiktinai parenkamos vaizdo erdvės vektorių komponenčių reikšmės.
3. skaičiuojama projekcijos paklaida ES
4. atnaujinamos vaizdo erdvės vektorių komponenčių reikšmės pagal formulę: yik(t+1) = yik(t) – η(δEs(t) / δ yik(t)) / (|δ2Es(t) / δ2yik(t)|)
5. jeigu projekcijos paklaidos reikšmė mažesnė už pasirinktą slenkstį arba iteracijų skaičius viršija nustatytąjį,
tuomet algoritmas sustabdomas, priešingu
atveju grįžtama ir kartojama nuo 3 žingsnio
• Pvz., Sammono metodu gautas daugiamačių
taškų išsidėstymas dvimatėje plokštumoje
vizualizuojant krūties vėžio duomenis 29
ISOMAP (netiesinės projekcijos metodas)
• ISOMAP metodą taip pat galima laikyti daugiamačių skalių (MDS) grupės metodu, kuris skirtas daugiamačių duomenų matmenų skaičiui mažinti, tuo pačiu ir daugiamačiams duomenims vizualizuoti.
• Šis metodas skiriasi nuo įprastinio MDS metodo tuo, kad atstumų tarp analizuojamų objektų matas yra apibrėžiamas kitaip.
• Taikant ISOMAP metodą, daroma prielaida, kad pradinėje erdvėje analizuojamus duomenis atitinkantys taškai yra išsidėstę ant mažesnio skaičiaus matmenų netiesinės daugdaros, ir todėl skaičiavimuose naudojami geodeziniai atstumai.
30
• Daugdara (angl., manifold) – tai abstrakti topologinė matematinė erdvė, kurioje kiekvieno taško aplinka yra labai panaši į Euklido erdvę, tačiau šios erdvės globali struktūra daug sudėtingesnė. Kalbant apie daugdarą svarbi yra matmens sąvoka šiame kontekste. Pvz., linija yra vieno matmens, plokštuma – dviejų ir pan.
– Vienmatėje daugdaroje kiekvieno taško aplinka yra panaši į linijos segmentą. Linija, apskritimas, du atskiri apskritimai yra vienmatės daugdaros.
• Dvimatėje daugdaroje kiekvieno taško aplinka panaši į skritulį. Plokštuma, sferos paviršius, toro paviršius yra dvimatės daugdaros (toras, arba toroidas, geometrijoje yra sukimosi paviršius, kurį apibrėžia apskritimas, besisukantis aplink lygiagrečią su jo plokštuma ir jo neliečiančią ašį). Žemės paviršių taip pat galima laikyti dvimate daugdara.
• Anksčiau nagrinėtuose metoduose atstumams tarp vektorių skaičiuoti paprastai yra naudojami Euklido atstumai. Skaičiuojant atstumus neatsižvelgiama į daugdaros formą. Tuomet susiduriama su sunkumais atvaizduojant netiesines duomenų struktūras, kaip kad spiralę ar pan.
• ISOMAP metode artimumo tarp vizualizuojamų objektų (taškų) matas yra geodezinis atstumas. Geodezinis, arba kreivinis, atstumas – tai trumpiausio kelio ilgis einant daugdaros kreivu paviršiumi.
31
• Pvz., Euklido atstumas tarp dviejų taškų parodytas kairiame paveiksle, o geodezinis atstumas tarp tų pačių taškų - dešiniame
32
Norint apskaičiuoti geodezinius atstumus tarp duomenų taškų X1, X2, …, Xm, pirmiausia reikia nustatyti kiekvieno taško Xi, i ∈ {1, …, m}, artimiausius taškus, kuriuos vadinsime taškais kaimynais
Čia artimumo matas yra Euklido atstumas. Taškų kaimynų paieška gali būti organizuojama dvejopai: arba ieškoma nustatyto skaičiaus kaimynų, arba ieškoma kaimynų iš tam tikro fiksuoto dydžio spindulio hipersferos, kurios centras yra taškas Xi
Tuomet sudaromas svorinis grafas, kuris jungia kiekvieną tašką Xi, i ∈ {1, …, m}, su visais jo kaimynais. Grafo briaunų svoriai yra atstumai tarp taško Xi ir jo kaimynų. Naudojantis vienu iš trumpiausio kelio grafe radimo algoritmu, pvz., Dijkstros, randami trumpiausių kelių ilgiai tarp visų taškų porų. Šie ilgiai ir yra geodezinių atstumų tarp taškų porų įverčiai.
Tokiu būdu suformuojama geodezinių atstumų matrica, kuri yra laikoma skirtingumo tarp analizuojamų objektų matrica. Šią matricą galima analizuoti bet kuriuo daugiamačių skalių metodu.
Taikant ISOMAP metodą ieškoma tokios transformacijos į vaizdo erdvę, kur būtų geriausiai išlaikomi geodeziniai atstumai tarp vizualizuojamų objektų (taškų)
33
ISOMAP algoritmas: - daugiamatėje erdvėje randami kiekvieno taško kaimynai - skaičiuojami geodeziniai atstumai tarp visų taškų porų; suformuojama skirtingumų
matrica - daugiamačių skalių metodu randamos daugiamačių taškų projekcijos mažesnio skaičiaus
matmenų – vaizdo erdvėje Pvz., S raidės daugdara a) paveiksle, n = 3. Taškai, esantys ant daugdaros, pavaizduoti b) paveiksle
(m = 2000) - ISOMAP metodu gauta projekcija pavaizduota c) paveiksle - MDS metodu, kai skirtingumų matrica yra Euklido atstumų matrica – d) paveiksle ISOMAP metodu geriau išlaikoma daugdaros struktūra, S raidė tiesiog ištiesinama: tolimiausi
taškai ant daugdaros (tamsiai mėlyna spalva) išlieka tolimiausi ir projekcijoje . MDS metodu gautoje projekcijoje tolimiausi taškai yra šviesiai mėlynos spalvos, tie taškai ant
daugdaros yra tolimiausi Euklido atstumų prasme, bet ne geodezinių.
34
Lokaliai tiesinis vaizdavimas
• Dar vienas daugiamačių duomenų matmenų skaičiaus mažinimo metodas – lokaliai tiesinio vaizdavimo metodas (angl., locally linear embedding, LLE).
• Šiuo metodu atvaizduojant daugiamačius duomenis į mažesnio skaičiaus matmenų erdvę, išlaikomi kaimynystės ryšiai tik tarp artimiausių taškų ir atskleidžiama netiesinės daugdaros globali struktūra.
• Algoritmą sudaro trys etapai: – Nustatoma kiekvieno vizualizuojamo duomenų taško Xi, i∈{1, …, m}, k
artimiausių kaimynų. Artimumo matas yra Euklido atstumas. Taškų kaimynų paieška gali būti organizuojama dvejopai:
• arba ieškoma nustatyto skaičiaus kaimynų, • arba ieškoma kaimynų iš tam tikro fiksuoto dydžio spindulio hipersferos, kurios
centras yra taškas Xi
35
– Kiekvienas daugiamatis taškas Xi išreiškiamas jo kaimynų tiesine kombinacija Xi = Σ j=1
m wij Xj
čia svoriai wij ≠ 0, jei taškas Xj yra taško Xi kaimynas, ir wij = 0, jei taškai Xi ir Xj nėra kaimynai. Svoriai wij turi būti parinkti taip, kad paklaida
E(W) = Σ j=1m (Xi –Σ j=1
m wij Xj)2
būtų minimali. Svoriai turi tenkinti sąlygą, kad visiems i: Σ j=1m wij= 1.
– Radus tinkamus svorius wij, projekcijos vektoriai Yi, i = 1, …, m, apskaičiuojami minimizuojant paklaidą
Φ(Y) = Σ i=1m (Yi –Σ j=1
m wij Yj)2
su ribojimais: Σ j=1m Yi = 0; (1/m ) Σ j=1
m YiT Yi = I,
čia I - vienetinė matrica, sudaryta iš d eilučių ir d stulpelių, Yi
T – transponuotas vektorius Yi. Paprasčiausias būdas apskaičiuoti vektorių Yi, i = 1, …, m, d-mates komponentes yra rasti išretintos matricos M = (I – W)T (I – W) d tikrinių vektorių, atitinkančių mažiausias nenulines d tikrines reikšmes, čia I – vienetinė matrica, sudaryta iš m eilučių ir m stulpelių, W = {wij, i, j =1, …, m}. Šie d tikriniai vektoriai ir yra vektoriai Yi, i = 1, …, m
36
• Mažinant daugiamačių duomenų matmenų skaičių lokaliai tiesinio vaizdavimo metodu, pasiseka identifikuoti daugdaros nežinomą struktūrą. Tuo tarpu MDS ir PCA metodais tolimi daugiamačiai taškai ant daugdaros atvaizduojami į artimus taškus plokštumoje, taigi suardoma daugdaros struktūra.
• MDS grupės metodais stengiamasi išlaikyti santykinius atstumus tarp visų duomenų aibės taškų. Lokaliai tiesinio vaizdavimo metodas nereikalauja išlaikyti atstumų tarp labiausiai nutolusių duomenų taškų, o tik tarp artimiausių taškų kaimynų.
• Lokaliai tiesinio vaizdavimo metodas dažnai yra taikomas vizualizuoti daugiamačius vektorius, kurių komponenčių reikšmės atitinka paveikslėlių ar nuotraukų parametrus. Iš analizuojamo paveikslėlio ar nuotraukos taškų spalvinių savybių sudaromas vektorius, kurio matmenų skaičius yra labai didelis. Analizuojamų duomenų aibė ypatinga tuo, kad ją sudaro vektoriai, atitinkantys kelis to paties objekto, pasukto tam tikrais kampais, paveikslėlius ar nuotraukas. Tuo atveju vektoriai vienas nuo kito nedaug skiriasi ir jie sudaro tam tikrą daugdarą.
37
• Pvz., Lokaliai tiesinio vaizdavimo metodu vizualizuoti paveikslėlių duomenys, gauti laipsniškai sukant ančiuką.
• Analizuojamų paveikslėlių, tuo pačiu vektorių skaičius m = 72. Kiekvienas paveikslėlis sudarytas iš 128x128 taškų, taigi vizualizuojamų vektorių matmenų skaičius n = 16 384. Čia pateiktas daugiamačių taškų, atitinkančių pasukto ančiuko paveikslėlius, išsidėstymas dvimatėje plokštumoje. Didesni rutuliukai atitinka šalia pateiktus paveikslėlius. Ančiukas
buvo laipsniškai sukamas aplink 360° kampu, todėl dvimačiai taškai išsidėstė ratu.
• Kaip ir ISOMAP, lokaliai tiesinio vaizdavimo metodas yra labiau tinkamas vizualizuoti duomenis, kurie sudaro vientisą klasterį (grupę). Kai duomenų aibėsudaryta iš kelių visiškai atskirų duomenų klasterių, nėra gaunami geri vizualizavimo rezultatai. To priežastis yra tai, kad analizuojami duomenys nesudaro vientisos daugdaros.
38
Pagrindinės kreivės
• Pagrindinės kreivės (angl., principal curves) yra pagrindinių komponenčių (angl., principal components) apibendrinimas.
• Pagrindinė kreivė – tai glodžioji kreivė, brėžiama per duomenų centrinį tašką taip, kad vidutinis atstumas nuo duomenų taškų iki šios kreivės būtų minimalus, t. y. ši kreivė būtų kiek galima arčiau visų duomenų taškų
• Pagrindine kreive tiksliausiai aproksimuojami duomenų taškai
39
• Projektavimo kintamieji
• Optimizavimo kintamieji apibrėžiami pakeičiant projektavimo kintamųjų mastelį
• Intervalinių ribojimų apibrėžta projektavimo kintamųjų sritis yra vienetinis hiperkubas.
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
• Nagrinėjamas distiliavimo procesas atsižvelgiant į du kriterijus, eksploatacines išlaidas ir kapitalinius įdėjimus, )(),( 21 XfXf
),...,( 91 xxX =
9,...,1],10[ =∈ ixi
• Šis optimalaus projektavimo uždavinys yra tipiškas visai uždavinių klasei, kurią charakterizuoja tokios savybės:
– Leistinoji sritis yra maža, palyginus su intervalinių ribojimų apibrėžta sritimi.
– Tikslo funkcija yra ne tik neiškiloji, bet ir trūkioji. – Tikslo funkcijoje gali atsirasti triukšmas.
Leistinoji sritis
• Leistinosios srities analizė
• Funkcija – indikatorinė funkcija, parodanti ar procesas taške vyksta ar ne. Standartiniais matematinio programavimo metodais sudėtinga rasti šio uždavinio taškus, kuriuose būtų patenkinti visi ribojimai:
• Todėl leistinosios srities analizę pradedam nuo .srities volA0= 0.873
• Taškai patenkantys į leistinąją sritį rasti minimizuojant baudos funkciją:
{ }.4,3,2,1,0)(:]10[ 9 =≤∈= iXgXA i
)(1 Xg X
.4,3,2,1,0)( =≤ iXgi
{ },0)(:]10[ 19
0 =∈= XgXA
∑=
=4
1
2 ).()(i
i XgXP
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
Devynmačio hiperkubo atvaizdas dvimatėje plokštumoje
• Taškams, patenkantiems į leistinąją sritį, artimos hiperkubo viršūnės pažymėtos (+) -2 -1.5 -1 -0.5 0 0.5 1 1.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
1
2
3
4
5
6
7
8
9
10
11
12
1314
15
16
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
Leistinųjų taškų vizualizacija
• Taškų, priklausančių leistinajai sričiai , vizualizavimas (∘) ir jų išsidėstymas hiperkubo viršūnių (⋅) atžvilgiu
-2 -1.5 -1 -0.5 0 0.5 1 1.5-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
4 3 21
1314
1516
5
67
8
9
10
11
12
A
Leistinoji sritis yra arti poaibio, kurį apibrėžia lygybės:
x3=x6=x9=0
x5=x8=1
Šios lygybės apibrėžia keturmatę hiperplokš-tumą devynmatėje erdvėje
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
Statistinės charakteristikos apie leistinuosius taškus
• Leistinųjų taškų koordinačių vidurkių vektorius
• Leistinųjų taškų koordinačių standartinių nuokrypių vektorių
Leistinųjų taškų ir koordinačių
ašių projekcijos į dviejų pirmųjų
pagrindinių komponenčių
plokštumą parodo, kad penkių
koordinačių ašių projekcijos į dvi
pirmąsias komponentes
yra praktiškai nereikšmingos.
-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
pc1
pc2
x1
x4x7
x2
)01.073.050.002.097.049.008.083.049.0(=µ
)01.018.029.002.003.028.007.021.029.0(=σ
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
Vizualizavimo ir duomenų analizės apibendrinimas
• Pritaikius vizualizavimo ir duomenų analizės metodus buvo gauta tokia informacija apie nagrinėjamą optimizavimo uždavinį: – Leistinoji sritis daugiausiai nusidriekusi keturmatėje hiper-plokštumoje, kurią apibrėžia
projektavimo kintamųjų sritis. Likusių kintamųjų reikšmės leistinojoje srityje yra arti nustatytų intervalų galų.
– Tačiau du iš likusių kintamųjų nėra nereikšmingi.
• Pagrindinė idėja - naudojant analizę, apibrėžti mažesnio matmenų skaičiaus erdvės uždavinį, kurį būtų paprasčiau išspręsti negu pradinį, devynmatės erdvės, uždavinį.
• Sprendiniai, gauti išsprendus mažesnio matmenų skaičiaus erdvės uždavinį, naudojami kaip pradiniai taškai didesnio matmenų skaičiaus erdvės uždavinio versijoje.
• Iteratyvus daugiapakopis metodas taikomas tol, kol išsprendžiamas pilnas, pradinio matmenų skaičiaus erdvės, uždavinys.
7421 ,,, xxxx
83, xx
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
Dviejų kriterijų uždavinio efektyvūs taškai
• Pareto aibė glotni kintant reikšmėms intervalo [0 1] viduryje ir netolygiai šokinėjanti Pareto aibės kraštuose
λ
Pvz., daugiakriterinis uždavinys, kai kriterijų funkcijoms būdingi nereguliarumai
• Pvz., gaiviųjų gėrimų duomenų vizualizacija
• Figure 9. Soft drink data image obtained by minimizing STRESS function with Euclidean distance
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9STRESSEuc = 0.19178, STRESSBC = 0.32981
PepsiCokeClassic Coke
Diet Pepsi
Diet SliceDiet 7-Up
dr. Pepper
Slice7-Up
Tab
• Pvz., gaiviųjų gėrimų duomenų vizualizacija
• Figure 10. Soft drink data image obtained by minimizing STRESS function with city block distance
0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.70.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9STRESSEuc = 0.28562, STRESSBC = 0.16755
PepsiCoke
Classic Coke
Diet Pepsi
Diet Slice
Diet 7-Up
dr. Pepper
Slice
7-Up
Tab
• Pvz., gaiviųjų gėrimų duomenų vizualizacija
• Figure 8. Pareto front approximation for multidimensional soft drink data
0.18 0.2 0.22 0.24 0.26 0.28 0.30.16
0.18
0.2
0.22
0.24
0.26
0.28
0.3
0.32
0.34
1
2
3
Stresseuc
Stre
ssci
ty
• Pvz., gaiviųjų gėrimų duomenų vizualizacija
• Figure 11. Soft drink data image obtained by solving multi-objective
multidimensional scaling. Criteria function values in Pareto front approximation marked ‘3’
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9STRESSEuc = 0.19779, STRESSBC = 0.27137
PepsiCoke
Classic Coke
Diet Pepsi
Diet Slice
Diet 7-Up
dr. Pepper
Slice7-Up
Tab
• Chen C., Härdle W., Unwin A., Handbook of data visualization, Springer Handbooks of Computational Statistics, Springer, 2008
• Fast Multidimensional Scaling through Sampling, Springs and Interpolation Alistair Morrison, Greg Ross, Matthew Chalmers, Information Visualization 2(1) March 2003, pp. 68-77
• Jones C.V., Visualization and Optimization, Kluwer Academic Publishers, 1996
• P. N. Tan, M. Steinbach, V. Kumar, “Introduction to Data Mining”, Addison-Wesley (2006)
• G. Dzemyda, O. Kurasova, J. Žilinskas, Daugiamačių duomenų vizualizavimo metodai, Mokslo aidai, Vilnius, 2008
• http://www.cs.manchester.ac.uk/pgt/COMP61021/lectures/
• http://pisuerga.inf.ubu.es/cgosorio/Visualization/?Multidimensional_visualization_methods
• http://www.youtube.com/watch?v=VzPpJXISz-E&feature=related
• http://www.ggobi.org/
51
top related