将包含拼写错误的句子分类

数据挖掘 Python r nlp
2022-02-26 15:39:27

我的数据是一个句子列表,每个句子包含 1 到 4 个单词。这些句子是手动输入的,因此其中一些包含拼写错误和一些额外的单词,例如GmbHGER等。

但是,我确实知道一组有效句子。作为示例,我们假设这个有效集合{Hello human, Horse, Hello bird}

Hello human
Horse
Hello human GmbH
Hello human GmbH, GER
Horse GmbH
Horse
Hello humn
Hell humn
Hello human
Hello bird

我想给上面的每个句子一个 ID 1、2 或 3,其中 1 是 for Hello world, 2 isHorse和 3 is Hello bird但是由于拼写错误和额外的单词,例如GmbHGER我无法对字符串进行简单的比较。

NLP 或相关领域中是否有一种数值技术可以用来完成这项任务?

1个回答

如果我理解正确,您正在寻找字符串相似性。有几种可用的技术,最简单的是“编辑距离”(又名 levenshtein 距离),它是从一个字符串到另一个字符串所需的最小插入/删除/替换/转置操作的计数。

对于您的特定任务,我怀疑“jaro-winkler 相似性”会更好。JW 与 ED 类似,但专为“实体解析”(即“记录链接”)而设计,看起来就是您想要完成的。您可以在此处看到如何工作的简短演示