文本相似度的计算常用夹余弦值来计算;
1.为什么用夹角的余弦值类计算文本相似度更好?这里举一个例子
文本一般长短不一,
假设文本1内容:我喜欢看书;
文本2内容:我喜欢喜欢看看看书书书;
文本3 内容:我喜欢看图;
将三个文本向量映射到高维空间后发现欧氏距离文本1,3比文本1,2更近,但是能说明文本3比文本2更接近文本1吗?
实际如果看三个向量的夹角,发现文本2与文本1的夹角要比文本3与文本1的夹角小,所以通过夹角来比较相似,在这里看是更合理的。
由以上看出使用夹角余弦对文本相似的进行比较是更好的。
比较一堆文本与某一给出文本的相似度一般步骤:
1)对已知文本及另外一堆文本分词(结巴),去停用词;
2)提取比较文本关键词(一般取前多少个)
3)合并成词袋(每一个文本都与已知文本形成一个词袋),对于当前两比较分别计算两比较文本在词袋中对应词的词频
4)如已知文本中关键词的前三(根据需要确定)在被比较文本中出现,3)步骤中的计算的词频增大;
5)根据计算的夹角余弦值比较当前文本与已知文本相似度;