Singulaarisen arvon hajottamisen (SVD) opetusohjelma
BE.400 / 7.548
Singulaarisen arvon hajottaminen ottaa suorakulmaisen matriisin geeniekspressiodatasta (määriteltynä A:ksi, jossa A on n x p-matriisi), jossa n riviä kuvaa geenejä ja p saraketta kuvaa koe-olosuhteita. SVD-teoreeman mukaan:
Anxp= Unxn Snxp VTpxp
Jossa
UTU = Inxn
VTV = Ipxp (ts.U ja V ovat ortogonaalisia)
MissäU:n sarakkeet ovat vasemmanpuoleisia singulaarivektoreita (geenikertoimen vektorit);S:llä (sama ulottuvuus kuin A:lla) on singulaariset arvot ja se on diagonaalinen (moodiamplitudit); ja VT:llä on rivejä, jotka ovat oikeanpuoleisia singulaarisia vektoreita (ekspressiotason vektorit). SVD edustaa alkuperäisen datan laajennusta koordinaatistossa, jossa kovarianssimatriisi on diagonaalinen.
SVD:n laskeminen koostuu AAT:n ja ATA:n omien arvojen ja omien vektoreiden selvittämisestä.ATA:n omien vektoreiden muodostavat V:n sarakkeet, AAT:n omien vektoreiden muodostavat U:n sarakkeet.Myös S:n singulaariset arvot ovat AAT:n tai ATA:n omien arvojen neliöjuuria. Singulaariarvot ovat S-matriisin diagonaalitunnukset, ja ne on järjestetty laskevaan järjestykseen. Singulaariarvot ovat aina reaalilukuja. Jos matriisi A on reaalimatriisi, myös U ja V ovat reaalisia.
Ymmärtääksemme, miten SVD:n ratkaiseminen tapahtuu, otamme esimerkkinä matriisin, joka annettiin Kuruvilla et al:
Tässä esimerkissä matriisi on 4×2 matriisi.Tiedämme, että n x n -matriisille W nollasta poikkeava vektori x on W:n eigenvektori, jos:
W x = l x
Jollekin skalaarille l. Tällöin skalaaria l sanotaan A:n eigenarvoksi, ja x:n sanotaan olevan A:n l:ää vastaava A:n omavektori.
Edellä olevan matriisin omien arvojen etsimistä varten laskemme matriisit AAT ja ATA. Aiemmin todettiin ,että AAT:n ominaisvektorit muodostavat U:n sarakkeet, joten voimme tehdä seuraavan analyysin löytääksemme U:n.
Nyt, kun meillä on nx n-matriisi, voimme määritellä matriisin W ominaisarvot.
Koska W x = l x, niin (W- lI) x = 0
Jos on olemassa yksikäsitteinen joukko ominaissuureita, matriisin (W-lI) determinantin on oltava nolla. Näin ollen ominaisarvoyhtälön ratkaisusta |W-lI|=0 saadaan:
l=0, l=0; l = 15+Ö221.5 ~ 29.883; l = 15-Ö221.5 ~ 0.117 (neljä ominaisarvoa, koska kyseessä on neljännen asteen epolynomi). Tätä arvoa voidaan käyttää määrittämäänominavektori, joka voidaan sijoittaa U:n sarakkeisiin. Näin saadaan seuraavat yhtälöt:
19.883 x1 + 14 x2= 0
14 x1 + 9.883 x2 =0
x3 = 0
x4 = 0
Yksinkertaistamalla kahta ensimmäistä yhtälöä saamme suhdeluvun, joka suhteuttaa x1:n arvon x2:een. x1:n ja x2:n arvot valitaan siten, ettäS:n alkiot ovat ominaisarvojen neliöjuuria. Näin ollen ratkaisu, joka täyttää edellä esitetyn yhtälönx1 = -0,58 ja x2 = 0,82 ja x3 = x4 = 0 (tämä on Umatrixin toinen sarake).
Substituoimalla toinen ominaisarvo saadaan:
-9.883×1 + 14 x2 = 0
14 x1 – 19.883 x2= 0
x3 = 0
x4 = 0
Siten ratkaisu, joka tyydyttää tämän yhtälösarjan, on x1 = 0.82 ja x2 = -0.58 ja x3 = x4 = 0 (tämä on U-matriisin ensimmäinen sarake). Yhdistämällä nämä saadaan:
Samoin ATA muodostaa V:n sarakkeet, joten voimme tehdä samanlaisen analyysin V:n arvon löytämiseksi.
ja vastaavasti saamme lausekkeen:
Loppujen lopuksi, kuten aiemmin mainittiin, S on AAT:sta tai ATA:sta saatujen ominaisarvojen neliöjuuri. ja se saadaansuoraan antaen meille:
Huomaa, että: s1 > s2 > s3 > … mitäKuruvillapaperin kuvio 4 osoitti. Kyseisessä paperissa arvot laskettiin ja normalisoitiin siten, että suurin singulaariarvo oli 1.
Todistus:
A=USVT ja AT=VSUT
ATA = VSUTUSVT
ATA = VS2VT
ATAV = VS2
- Alter O, Brown PO, Botstein D. (2000) Singular value decomposition for genome-wide expression data processing and modeling. Proc Natl Acad Sci U S A, 97, 10101-6.
- Golub, G.H. ja Van Loan, C.F. (1989) Matrix Computations, 2nd ed. (Baltimore: Johns Hopkins University Press).
- Greenberg, M. (2001) Differentiaaliyhtälöt & Lineaarialgebra (Upper Saddle River, N.J. : Prentice Hall).
- Strang, G. (1998) Introduction to linear algebra (Wellesley, MA : Wellesley-Cambridge Press).