2012-01-27 109 views
0

我必須找到參考文檔與存儲庫中文檔集之間的相似性。有關LSA的疑問

Method : 

1. I find the term document matrix for all the documents including the reference document 
2. The svd is calculated for this matrix 
3. I take the v array(The third result) 
4. I transpose this matrix so that the each row represents a document . 
5. The first row represents the reference document . 
6. I find the cosine similarity beween this row and the rest of the rows 

我的疑惑:

  1. ,因爲我已經在我的分貝左右7個文件,我只得到8 * 8 VARRAY(文檔矩陣)。如果我單獨發現這8個值的餘弦相似性,我會得到一個正確的結果嗎?

  2. 這種方法一般採用嗎?

我使用java來編寫代碼。我利用jama包來找到svd。

+1

8個文件是一個非常小的數據集 – dave 2012-01-27 02:56:31

+0

確定..但找到餘弦相似度我一定要使用在SVD的的U矩陣或V矩陣( usv)矩陣結果? – CTsiddharth 2012-01-27 03:08:37

回答

0
  • 我已經嘗試過使用TMG工具箱的Matlab。它工作正常。
  • 爲了獲得更好的結果(或爲了更高的準確性)使用更大的數據集。
  • 在LSA中,svd是其中的一部分(用於降維)。對於計算餘弦相似度的 ,您將需要在計算後得到的最後一個矩陣 A = U * S * V^t。

您可以閱讀LSA的例子Here

+0

謝謝!但有可能使用LSA爲了找到兩個文件之間的相似性(不涉及查詢)?在這種情況下,我們應該考慮svd中的第一個矩陣或最後一個矩陣來計算餘弦相似度。請幫忙 ! – CTsiddharth 2012-01-27 06:58:27

+0

在SVD中,我們將一個矩陣分成3個矩陣。再次,我們需要乘以這3個矩陣,然後我們得到另一個矩陣,大約是。類似於A.類似於A = U * S * V^t。然後我們應用餘弦相似度。這不像考慮第一個或最後一個矩陣。按照我提到的例子。按照這個鏈接的餘弦相似度:[鏈接](appliedsoftwaredesign.com/cosineSimilarityCalculator.php) 如果你有任何疑問,然後告訴我。 – Debaditya 2012-01-27 11:08:11

+0

請看看我的問題[鏈接](http://stackoverflow.com/questions/9060168/problems-using-jama-in-java-for-lsa)並告訴我我要去哪裏錯了 – CTsiddharth 2012-01-30 06:30:59