计算两篇文章相似度
假如新闻 X
和新闻 Y
对应向量分别是 x1, x2, ..., xn
和 y1, y2, ..., yn
那么它们夹角的余弦等于
\(cosQ = \frac{x_{1} \times y_{1} + x_{2} \times y_{2} + ... + x_{n} \times y_{n}} {\sqrt{(x_{1}) ^ 2 + (x_{2}) ^ 2 + ... + (x_{n}) ^ 2} \times \sqrt{(y_{1}) ^ 2 + (y_{2}) ^ 2 + ... + (y_{n}) ^ 2}}\)
文本相似度计算的处理流程是
- 对所有文章进行分词
- 分词的同时计算各个词的
TF
值TF
——代表一个词在一篇文章中出现的次数,次数越多,这个词就越重要。
- 所有文章分词完毕后计算
IDF
值IDF
——代表一个词在整个库中出现的次数,次数越多,这个词就越不重要。(如“的”)
- 生成每篇文章对应的n维向量(n是切分出来的词数,向量的项就是各个词的
TF-IDF
值)TF/IDF
——计算“词”的重要性
- 对文章的向量两篇代入余弦定理公式计算,得出的cos值就是它们之间的相似度了,值越大就表示越相似。