Java中是否有任何基于字典的字符串匹配算法?
可以根据字典给出两个字符串之间相似性百分比的东西?
像
public double getSimilarity(String str1, String str2);
实现如下:
getSimilarity("Professor", "Teacher")
会给出很高的百分比吗?
提前致谢 :)
Java中是否有任何基于字典的字符串匹配算法?
可以根据字典给出两个字符串之间相似性百分比的东西?
像
public double getSimilarity(String str1, String str2);
实现如下:
getSimilarity("Professor", "Teacher")
会给出很高的百分比吗?
提前致谢 :)
Shaul Markovitch 和 Evgeniy Gabrilovich 完成了一项伟大的工作,在他们的文章中进行了描述:基于 Wikipedia 的自然语言处理语义解释。
思路如下:索引维基百科(或其他上下文来源)。
为每个术语(单词)创建一个映射:term -> articles in which the term appears in
.
每个术语基本上由一个向量表示——为简单起见,假设它是一个二进制向量——因此对于该术语,当且仅当该术语出现在文档中时t
,条目d
才会为“1” 。t
d
现在,给定这些向量 - 找出两个术语t1
,t2
是否相似 - 你所要做的就是获取表示和的两个向量的向量相似度。t1
t2
注意:二进制向量是一种简化,实际上这篇文章使用了tf-idf分数,即该术语t
在文档中的分数d
。