[发明专利]一种获取矩阵中向量相似度的方法和系统在审
申请号: | 201510359140.2 | 申请日: | 2015-06-25 |
公开(公告)号: | CN104881395A | 公开(公告)日: | 2015-09-02 |
发明(设计)人: | 王巍;许子立 | 申请(专利权)人: | TCL集团股份有限公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
地址: | 516006 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 矩阵 向量 相似 方法 系统 | ||
技术领域
本发明属于算法领域,尤其涉及一种获取矩阵中向量相似度的方法和系统。
背景技术
现实生活中,人们往往会遇到将物品进行分类的问题,比如:将电脑、手机和MP3分类为电子产品,而如果要使计算机对物品进行分类,则需要根据物品之间的相似度进行分类,将相似度高于预设的阈值的两件物品归为一个类别,即将分类问题转化为求相似度的问题。
假设现在有M篇不同的文章,每篇文章由L个互不重复的单词(以英文文章为例,如果是中文文章,则为互不重复的字)组成,如果要找出这些文章中任意两个单词wi和wj的相似度,现有技术是将这M篇文章组成一个M行N列的矩阵,N为M篇文章中所有出现的单词的个数,其中N≥L。对于大规模数据的处理一般使用Map-Reduce映射-归约模型来处理。在Map阶段,如果一篇文章中同时存在wi和wj,则将wi和wj进行映射,记为(wi,wj—>1)<i>,i表示wi和wj两者映射的个数,其中i的取值为(1,M);如果一篇文章中未同时存在wi和wj,则将wi和wj进行映射,记为(wi,wj—>0);在Reduce阶段,对映射进行求和,并除以根号下M篇文章中wi和wj分别出现的次数的乘积,从而得到wi和wj的相似度。现有技术整个算法的复杂度为O(M*N2),当M的数值特别巨大时(如1010),耗费的计算量相当大。
发明内容
鉴于此,本发明实施例提供一种获取矩阵中向量相似度的方法和系统,以解决现有技术相似度计算过程中计算量巨大的问题。
本发明实施例是这样实现的,一种获取矩阵中向量相似度的方法,所述方法包括以下步骤:
对待获取矩阵进行预处理,所述预处理包括:去除所述待获取矩阵中的零值以及出现率低于预设的出现率阈值的值;
将所述预处理后的待获取矩阵中的值按行向量的方式存储到分布式系统;
根据Map-Reduce映射-归约模型通过抽样计算所述分布式系统中任意两个行向量的相似度。
进一步的,
所述根据Map-Reduce映射-归约模型通过抽样计算所述分布式系统中任意两个行向量的相似度包括:
在Map阶段,按行从所述分布式系统中抽取向量对wi、wj;
获取所述向量对wi、wj的Reduce概率;
映射所述向量对wi、wj:((wi,wj)—>1),并根据所述Reduce概率将所述映射提交到Map-Reduce模型的Reduce阶段;
在Reduce阶段,获取所述向量对wi、wj的和获取所述向量对的相似度,其中ri表示(wi,wj)对应的映射个数,R表示文章的篇数,表示对R篇文章中(wi,wj)对应的映射个数进行求和。
进一步的,所述获取所述向量对wi、wj的Reduce概率具体为:
根据公式获取所述向量对wi、wj的Reduce概率,其中p为Reduce概率、e为取值范围为(0,1)的预设的向量相似度阈值、#wi为向量wi在所述分布式系统中出现的次数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于TCL集团股份有限公司,未经TCL集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510359140.2/2.html,转载请声明来源钻瓜专利网。