LSI bağlamında Tekil Değer Ayrışmasını Anlama


9

Sorum genellikle Tekil Değer Ayrışması (SVD) ve özellikle Gizli Semantik İndeksleme (LSI) ile ilgili.

Diyelim, 7 belge için 5 kelimelik sıklıklar içeren var.Aword×document

A =  matrix(data=c(2,0,8,6,0,3,1,
                   1,6,0,1,7,0,1,
                   5,0,7,4,0,5,6,
                   7,0,8,5,0,8,5,
                   0,10,0,0,7,0,0), ncol=7, byrow=TRUE)
rownames(A) <- c('doctor','car','nurse','hospital','wheel')

I matris çarpanlara elde SVD kullanılarak: .AA=UDVT

s = svd(A)
D = diag(s$d) # singular value matrix
S = diag(s$d^0.5 ) # diag matrix with square roots of singular values.

In 1 ve 2'de , bu belirtilmektedir:

WordSim=US , satırlarının farklı kelimeleri temsil ettiği benzerlik matrisini verir . WordSim

WordSim = s$u %*% S

DocSim=SVT , sütunlarının farklı belgeleri temsil ettiği belge benzerlik matrisini verir .DocSim

DocSim = S %*% t(s$v)

Sorular:

  1. Cebirsel olarak, ve kelime / belge benzerlik matrisleri neden? Sezgisel bir açıklama var mı?WordSimDocSimS
  2. Verilen R örneğine dayanarak, sadece ve (satırlar / sütunlar arasında kosinüs benzerliği veya korelasyon katsayısı kullanmadan) sezgisel kelime sayımı / benzerlik gözlemleri yapabilir miyiz ?WordSimDocSim

resim açıklamasını buraya girin


LSI hakkında çok az şey biliyorum, ancak bir matrisin SVD'si doğrusal boyutsal küçültme, Temel bileşenler, biplots, Yazışma analizi gibi haritalama yöntemlerinin merkezinde yer almaktadır. SVD'nin ana "yasaları" = sıralarının ana eksenlere izdüşümüdür ; ve = sütunlarının ana eksenlere izdüşümü . Bir anlamda, noktalar (satırlar veya sütunlar) ile ana eksenler arasındaki "benzerlik" değerleridir. Noktalar arasında benzerlik olarak muamele görüp göremeyeceği bağlama bağlıdır. AV=UDAAU=VDA
ttnphns

Ah .. Vikipedi'de LSI'nin sadece yazışma analizi (CA) olduğunu görüyorum . Bu daha iyi. CA, özel olarak hazırlanmış bir veri tablosunun iki bileşenidir . Yukarıda belirtilen projeksiyonlar veya koordinatlar - bunları ana eksenlerin uzayındaki satır ve sütun noktalarını çizmek için kullanırsınız. Satır sırası, col-col ve satır-col noktaları arasındaki yakınlık benzerliklerini gösterir. Bununla birlikte, arsa üzerindeki düzen ataleti (varyans) satır ve sütun noktalarına nasıl yaydığınıza bağlıdır.
ttnphns

@ttnphns. Teşekkür ederiz, " = A satırlarının ana eksenlere izdüşümü ve = A sütunlarının ana eksenlere izdüşümü " verebilir misiniz ? Sanırım bu benim için bir şeyi açıklığa kavuşturacak. Temel eksenlerle, deki en üst m tekil değerlerine karşılık gelen öz vektörler mi demek istediniz ? Ben de rastladım: "PCA için sol tekil vektörleri hesaplamamız gerekmiyor", ancak bunun neden böyle olduğunu tam olarak anlayamıyorum. AV=UDAU=VDD
Zhubarb

2
Sorunuz, dokümanın belirttiklerini doğru bir şekilde yansıtacak şekilde düzenleyerek geliştirilebilir. Üzerinde s. 22 tanımladığı ihtiva eden karekök ait , "kısıtlı" büyük olanlar için geçerlidir. Bu nedenle ne ne de dahil değildir ve "benzerlik matrisleri" olarak yorumları yoktur. İlgili matrisler bunun yerine ve . bir yaklaşımını yeniden yapılandırmak için kullanılabilirlerSDUDDVUSSVA=UDVU(S2)V=(US)(SV).
whuber

1
D=svd(A)$dR'de sıfır olmayan öz değerlerin kareköklerini döndürdüğünü varsaydım , bu yüzden kullandım . Boyutsallık azaltma yönü ile ilgili bir sorunum yok ve A'nın daha düşük bir sıra yaklaşımının tanımladıkları gibi oluşturulabileceğini anlıyorum. Ben cevap buldum bu bağlantıyı kısmen sorumu cevaplar. UD
Zhubarb

Yanıtlar:


2

SVD kullanarak matris çarpanlarına ayırma, giriş matrisini üç parçaya ayırır:

  • Sol tekil vektörler . Bu matrisin ilk sütunu, giriş matrisinin satırlarının en çok hangi eksende değiştiğini belirtir. Sizin durumunuzda, ilk sütun size en çok hangi kelimelerin birlikte değiştiğini söyler.U
  • Tekil değerler . Bunlar ölçeklendirmeler. Bunlar birbirine göredir. nin ilk değeri ikincinin iki katı büyüklüğünde ise, ilk tekil vektörün ( ve cinsinden) saniye tekil vektörünün iki katı varyasyonu açıkladığı anlamına gelir .DDUVT
  • Sağ tekil vektörler . Bu matrisin ilk satırı, giriş matrisinin sütunlarının en çok hangi eksende değiştiğini belirtir. Sizin durumunuzda, ilk satır en çok hangi belgelerin birlikte değiştiğini gösterir.VT

Kelimeler veya belgeler birlikte değiştiğinde , benzer olduklarını gösterir. Örneğin, doktor kelimesi bir belgede daha sık ortaya çıkarsa, hemşire ve hastane kelimesi de daha fazla ortaya çıkar. Bu, ilk ölçeklendirilmiş sol tekil vektör, ilk sütunu ile gösterilir.Giriş bakarak bu sonucu doğrulayabilirsiniz. Hemşire oluştuğunda, hastanenin de oluştuğunu ve gerçekleşmediğinde hastanenin de meydana gelmediğine dikkat edin.WordSim

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.