[发明专利]一种获取相似对象集合的方法和装置有效
申请号: | 201711484743.0 | 申请日: | 2017-12-29 |
公开(公告)号: | CN110019531B | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 李陈程;程苏珺;于海;殷大伟;赵一鸿 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;杨晓伟 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 相似 对象 集合 方法 装置 | ||
本发明公开了一种获取相似对象集合的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取目标对象集合、待相似对象集合;设置局部敏感对比步长r;采用局部敏感‑最小哈希值算法,根据目标对象对应的特征数据、待相似对象对应的特征数据、局部敏感对比步长r,从待相似对象集合中获取目标对象的相似对象集合。该实施方式采用局部敏感‑最小哈希值算法,从待相似对象集合中获取目标对象的相似对象集合,克服了Hive SQL分布式的方法只比较具有某一相同属性的对象而漏掉了大部分的其他相似对象的问题,同时减小了计算的复杂度,加快了计算速度,又提高了计算结果的准确率和相似对象的覆盖率。
技术领域
本发明涉及计算机技术领域,尤其涉及一种获取相似对象集合的方法和装置。
背景技术
随着计算机技术的发展,很多情况下一个对象集合需要在大量数据中快速找到其相似集合。例如,在电商领域中,需要根据用户购买记录中的商品,在大规模商品中找到相似的商品推荐,实现个性化推荐。通常采用计算两两对象的相似度的办法来获取相似集合,但是对于包含多个对象的对象集合来说,两两计算会耗费巨大的时间和计算资源,难以满足需要。也可以使用分布式计算框架HiveSQL的平台分布式的计算对象间的相似度。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1.使用Hive SQL分布式的方法,只比较具有某一相同属性的对象,漏掉了大部分的其他相似对象。
2.耗费巨大的时间和计算资源,难以有效的迭代更新。
3.数据特征分布不均匀,导致得到的相似对象集合的准确率降低。
发明内容
有鉴于此,本发明实施例提供一种获取相似对象集合的方法,采用局部敏感-最小哈希值算法,从待相似对象集合中获取目标对象的相似对象集合,克服了HiveSQL分布式的方法只比较具有某一相同属性的对象而漏掉了大部分的其他相似对象的问题,同时减小了计算的复杂度,加快了计算速度,又提高了计算结果的准确率和相似对象的覆盖率。
为实现上述目的,根据本发明实施例的一个方面,提供了一种获取相似对象集合的方法,包括:获取目标对象集合,所述目标对象集合中包括多个目标对象、目标对象对应的特征数据;获取待相似对象集合,所述待相似对象集合中包括多个待相似对象、待相似对象对应的特征数据;设置局部敏感对比步长r,r为正整数;采用局部敏感-最小哈希值算法,根据目标对象对应的特征数据、待相似对象对应的特征数据、局部敏感对比步长r,从待相似对象集合中获取目标对象的相似对象集合。
可选地,从待相似对象集合中获取目标对象的相似对象集合之后,还包括:对于每个目标对象,若该目标对象的相似对象集合中的待相似对象数量小于第一设定阈值,则将该目标对象及其对应的特征数据放入新的目标对象集合中;按照以下步骤重新计算:减小局部敏感对比步长r;采用局部敏感-最小哈希值算法,根据新目标对象集合中的目标对象对应的特征数据、待相似对象对应的特征数据、局部敏感对比步长r,从待相似对象集合中获取目标对象的相似对象集合;直至所有目标对象的相似对象集合中的待相似对象数量,皆大于或等于第一设定阈值。
可选地,从待相似对象集合中获取目标对象的相似对象集合之后,还包括:计算目标对象与该目标对象的相似对象集合中的待相似对象的相似度,从相似对象集合中删除相似度小于第二设定阈值的待相似对象。
可选地,对所述相似对象集合中的待相似对对象进行去重处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711484743.0/2.html,转载请声明来源钻瓜专利网。