java - 基于字典的字符串匹配算法 - Java

标签 java algorithm similarity

Java有没有基于字典的字符串匹配算法?

根据字典给出两个字符串之间的相似度百分比的东西?

喜欢

 public double getSimilarity(String str1, String str2);

其实现方式如下:

 getSimilarity("Professor", "Teacher")

会给出很高的百分比吗?

提前致谢:)

最佳答案

Shaul Markovitch 和 Evgeniy Gabrilovich 完成了一项伟大的工作,在他们的文章中有所描述:Wikipedia-based Semantic Interpretation for Natural Language Processing .

想法如下:Index wikipedia (or other context source)。
为每个术语(单词)创建一个映射:term -> articles in which the term appears in .

每个项基本上都由一个 vector 表示 - 为简单起见,假设它是一个二元 vector - 因此对于项 t条目 d当且仅当术语 t 为“1”时出现在文档中 d .

现在,给定这些 vector - 找出是否有两项 t1 , t2相似 - 您所要做的就是取代表 t1 的两个 vector 的 vector 相似度t2 .


注意:二进制 vector 是一种简化,实际上文章使用了tf-idf得分,即术语t在文档中有 d .

关于java - 基于字典的字符串匹配算法 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14304684/

相关文章:

java - 文本相似度算法

python - 基于标签的帖子之间的欧氏距离

java - 使用 Java2D 高效绘制数千个形状?

java - LocalDate epochDay 格式为休息一天

java - 如何@SuppressWarnings : "Resource leak: ' client' is never closed"

string - 仅交换的最小成本字符串对齐

c++ - 从另一个 vector 类型中包含的组件构建 vector

java - Java 中的 SQL 构建器

algorithm - 任何渲染多个实体切割平面的方法?

sql - 使用 PostgreSQL 快速查找相似字符串