使用潜在语义分析来测量通道相似性

时间:2014-10-13 12:05:05

标签: nlp similarity cosine-similarity lingpipe latent-semantic-analysis

我目前正在开发一个程序,根据其语义(含义)比较两段文本。我知道有一些像lingpipe这样的库提供了比较字符串距离的有用方法,但是我听说LSA是测量文本相似度的最佳方法。

我对使用LSA测量文本相似性感到困惑。据我所知,这个过程是LSA,

1.Two passages are represented as two matrices X and Y. 

2.Using SVD, the matrices each are reduced to 3 different matrices 

3.And then the cosine distance is measured between the two matrices

4. The cosine distance determines how similar they are

我只是想知道...

一个。在SVD中,矩阵减少到3个更小的矩阵。那么这些较小的矩阵中的哪一个用于余弦距离测量?

B中。余弦距离通常应用于矢量。因此,在将它们应用于矩阵的情况下,我假设迭代矩阵并且在每2个矢量之间测量余弦距离。然后假设所有这些距离的平均值是这两个矩阵之间的最终余弦距离?

我知道这是一个非常小众的话题,但我希望对这两个问题有所了解。谢谢

1 个答案:

答案 0 :(得分:2)

我认为你开始走错了路。

段落集合表示为type x document矩阵。 也就是说,行代表'字'收集;列代表集合的段落。

(这里您可能希望将TF-IDF加权方案应用于矩阵。)

使用SVD,您可以将这样的矩阵(M)分解为三个矩阵(U,S和V),以便

  

M = U * S * Vt

S是以递减顺序排序的M的奇异值的对角矩阵。 您可以通过保留k第一个奇异值并将其他值设置为0来执行降维。

现在,您可以使用前面的等式重新生成type x document矩阵,并开始计算行向量(即类型相似性)或列向量(即通过相似度)之间的余弦相似性。

相关问题