[发明专利]一种计算字符串间相似度的方法及装置有效
申请号: | 201611130125.1 | 申请日: | 2016-12-09 |
公开(公告)号: | CN106650803B | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 韦强申;刘鹏 | 申请(专利权)人: | 北京锐安科技有限公司 |
主分类号: | G06K9/62 | 分类号: | G06K9/62;G06F17/27 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 胡彬;邓猛烈 |
地址: | 100044 北京市海淀区西小口*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算 字符串 相似 方法 装置 | ||
本发明实施例公开了一种计算字符串间相似度的方法及装置。该方法包括:获取至少两个字符串的核心词汇的权重;获取所述至少两个字符串的最大公共序列,并根据所述最大公共序列的长度和词汇确定所述最大公共序列的权重;根据预设常用词汇的权重表获取所述至少两个字符串中的常用词汇的权重;根据所述核心词汇的权重、所述最大公共序列的权重和所述常用词汇的权重获取所述至少两个字符串的相似度。本发明加入了句子结构的分析,还加入了词汇权重信息,作为字符串相似度计算的调和值,由于分词工具的准确率,分词结果会产生一些误差,句子结构分析也会有一定的误差,经过词频权重调和后,计算结果更加准确。
技术领域
本发明实施例涉及计算机的技术领域,尤其涉及一种计算字符串间相似度的方法及装置。
背景技术
对于中文字符串相似度的计算方法,一般采用英文的字符串相似度计算方法,就是计算两个字符串中相同字符的个数。采用的方法有:Levenshtein方法即编辑距离计算方法、Jaccard系数计算方法、余弦相似度计算方法、以及Ngram计算方法。
编辑距离计算方法,是计算两个字符串之间通过将一个字符替换成另一个字符,插入一个字符,删除一个字符的编辑操作,所需最小的编辑次数,衡量两个字符串的相似度。编辑距离计算方法的缺点是:不同的语法表示形式,对编辑距离的计算影响较大,计算两个字符串相似度误差较大。
Jaccard系数计算方法,是首先对两个字符串依据一定的规则拆分为多个子串,计算多个子串的交集与并集的比值,衡量两个字符串的相似度。Jaccard系数计算方法的缺点是:因字符串的切分方法不同,计算字符串的相似度误差较大。
余弦相似度计算方法,首先对两个字符串依据一定的规则拆分为多个子串,形成一个子串集合,再依据子串集合将两个句子转化为向量,计算两个向量间的余弦值,衡量两个字符串的相似度。余弦相似度计算方法的缺点是:因字符串的切分方法不同,计算字符串的相似度误差较大。
Ngram计算方法,是将两个字符串拆分为N元组,计算两个字符串中相同的N元组,衡量两个字符串的相似度。Ngram计算方法的缺点是:元组的先后顺序会影响相似度的计算,计算字符串相似度误差较大。
发明内容
本发明实施例的目的在于提出一种计算字符串间相似度的方法及装置,旨在解决如何提高中文字符串相似度计算的准确率。
为达此目的,本发明实施例采用以下技术方案:
第一方面,一种计算字符串间相似度的方法,所述方法包括:
获取至少两个字符串的核心词汇的权重;
获取所述至少两个字符串的最大公共序列,并根据所述最大公共序列的长度和词汇确定所述最大公共序列的权重;
根据预设常用词汇的权重表获取所述至少两个字符串中的常用词汇的权重;
根据所述核心词汇的权重、所述最大公共序列的权重和所述常用词汇的权重获取所述至少两个字符串的相似度。
优选地,所述获取至少两个字符串的核心词汇的权重,包括:
根据分词结果的词性以及词汇间的语义关系,获取至少两个字符串的词汇序列中的核心词汇,所述核心词汇包括主语人名、机构名、名词宾语、动词和地名;
根据预设核心词汇权重表获取所述核心词汇的权重。
优选地,所述获取所述至少两个字符串的最大公共序列,包括:
获取所述至少两个字符串的分词结果序列,去除所述分词结果序列中的标点符号,合并所述分词结果序列中相同的子序列,得到所述至少两个字符串的最大公共序列。
优选地,所述根据预设常用词汇的权重表获取所述至少两个字符串中的常用词汇的权重,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611130125.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:被芯(恒温37℃)
- 下一篇:一种基于深度学习特征的人脸样本清洗方法及系统