赞
踩
在做自然语言处理的过程中,现在智能对话比较火,例如智能客服,智能家电,智能音箱等,我们需要获取用户说话的意图,方便做出正确的回答,这里面就涉及到句子相似度计算的问题,那么本节就来了解一下怎么样来用 Python 实现句子相似度的计算。
编辑距离,英文叫做 Edit Distance,又称 Levenshtein 距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数,
如果它们的距离越大,说明它们越是不同。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。
例如我们有两个字符串:string 和 setting,如果我们想要把 string 转化为 setting,需要这么两步:
第一步,在 s 和 t 之间加入字符 e。
第二步,把 r 替换成 t。
所以它们的编辑距离差就是 2,这就对应着二者要进行转化所要改变(添加、替换、删除)的最小步数。
安装:pip3 install distance
- import distance
-
- def edit_distance(s1, s2):
- return distance.levenshtein(s1, s2)
-
- if __name__ == "__main__":
- str1 = "公司地址是哪里"
- str2 = "公司在什么位置"
- print(edit_distance(str1, str2))
想要获取相似的文
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。