为了找出相似的文章,需要用到”余弦相似性”(cosine similarity)。下面,我举一个例子来说明,什么是”余弦相似性”。
如果两句话用词越相似,它们的内容就应该越相似。因此,可以从词频入手,计算它们的相似程度。
1. 分词(把句子按照单词拆分开)
句子A:我/喜欢/看/电视,不/喜欢/看/电影。
句子B:我/不/喜欢/看/电视,也/不/喜欢/看/电影。
- 列出所有的词
我,喜欢,看,电视,电影,不,也。
- 计算词频
句子A:我 1,喜欢 2,看 2,电视 1,电影 1,不 1,也 0。
句子B:我 1,喜欢 2,看 2,电视 1,电影 1,不 2,也 1。
- 写出词频向量
句子A:[1, 2, 2, 1, 1, 1, 0]
句子B:[1, 2, 2, 1, 1, 2, 1]
到这里,问题就变成了计算这两个向量的相似程度。可以通过夹角的大小,来判断向量的相似程度
cosθ=A⃗ B⃗ ∣∣A⃗ ∣∣∣∣B⃗ ∣∣
cos
θ
=
A
→
B
→
|
A
→
|
|
B
→
|