文本相似度算法
1■信息检索中的重要发明TF-IDF
Termfrequency即关键词词频,是指一篇文章中关键词出现的频率,比如在一篇M个词的文章中有N个该关键词,则
为该关键词在这篇文章中的词频。
、不适于中文。
局限:仅适用于英文、无语义相似判别功能
编译安装:
进入代码主目录里的/bin
将第一行改为#!/usr/bin/perl
退回代码主目录,分别执行
make
maketest
makeinstall
重新进入主目录/bin进行测试
(leril>ft血讥门剖驭s軒打“片.
"—litM■!■M41■WflTtiliilv«a
a
Lr«41«l4£«lh-gaCp・r*FEi;.......Ilin“・・・・・・・T・l・11
Jr4«*E#c«SWi<Et|F•>!triljRSbiiiklaLFLlf13(hrvrS«-|>hlt>it11*m'・・・hi
E
1bMi:I»l1erkTtaiiiliHitrtlfiJr*・It«m-'\b(H>ibi«ih
Irwt*!«c«J1«41bul*
-1代码效果
可以看见语句“thisisone”与“????thisistwo”;
“thisisone”与“thisistwo”;
“thisisone”与“thisisone”的匹配度是1;
“thisisone”与“..()()thisisone”的匹配度是1。
说明匹配的算法去停用字功能存在。
2・4缺陷
这类算法没有很好地解决文本数据中存在的自然语言问题,即同义词和多义词。这样对于搜索的精度产生很大的影响。
2・5算法变体
分」|、去円冃回
蔓「口暇車
的词錚计畢
Ifi据阖直判斷
K1誓度
权重向凰空间
计算金強怕
il算內积
计岸观明距剧
-1算法变体(红)
3■改进算法
3・1隐形语义引标
隐性语义标引(LSI)利用矩阵理论中的''奇异值分解(SVD)”技术,将词频矩阵转化为奇异矩阵:首先从全部的文档集中生成一个文档矩阵,该矩阵的每个分量为整数值,代表某个特定的文档矩阵出现在某个特定文档中次数。然后将该矩阵进行奇异值分解,较小的奇异值被剔除。结果奇异向量以及奇异值矩阵用于将文档向量和查询向量映射到一个子空间中,在该空间中,来自文档矩阵的语义关系被保留。最后,可以通过标准化的内积计算来计算向量之间的夹角余弦相似度,进而根据计算结果比较文本间的相似度。LSI引入的唯一变化就是剔除小的奇异值,因为与小的奇异值相关联的特征实际上在计算相似度时并不相关,将它们包括进来将降低相关性判断的精确度。保留下来的特征是那些对文档向量在m维空间中的位置大有影响的特征。剔除小的奇异值将文档特征空间变为文档概念空间。概念向量之问使用内积的夹角余弦相似度计算比原来基于原文本向量的相似度计算更可靠,这也是使用LSI方法的主要原因所在。LSI的缺点在于它的效果依赖于上下文信息,过于稀疏的语料不能很好的体现其潜在的语义。
文本相似度算法 来自淘豆网m.daumloan.com转载请标明出处.