我有两组字符串示例:
Set1 = ["Which product do you use?",
"How would you rate the product?", "Would you purchase again?"]
Set2 = ["Would you buy it again?", "Select the product used?",
"Provide a rating to the product"]
现在我想将“您使用哪种产品?”与“选择使用的产品?”进行匹配,但仅基于简单的字符串匹配(由于时间复杂度增加,因此没有上下文相关的机器学习算法)
莱文施泰因距离是正确的选择吗?
另外,匹配字符串的最佳方法是什么?创建nC2组合并选择得分最高的组合?
1条答案
按热度按时间c3frrgcw1#
IMO对字符串的“盲目”比较不会给人给予什么满意的结果,因为它根本没有考虑到语义。
无论如何,对于一个聊胜于无的方法,我会选择一个两级Levenshtein距离:第一级基于整个单词而不是字符,第二级基于通过标准Levenshtein距离的单词比较。在单词级,根据被替换单词之间的距离对替换进行加权。删除或插入可以接收固定权重或以某种方式与单词频率相关的权重。