[发明专利]基于Spark的节点相似度计算方法、装置及终端有效
申请号: | 201810811936.0 | 申请日: | 2018-07-23 |
公开(公告)号: | CN110751161B | 公开(公告)日: | 2023-08-22 |
发明(设计)人: | 魏红亮 | 申请(专利权)人: | 阿里巴巴(中国)有限公司 |
主分类号: | G06F18/22 | 分类号: | G06F18/22 |
代理公司: | 上海知锦知识产权代理事务所(特殊普通合伙) 31327 | 代理人: | 潘彦君 |
地址: | 310052 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 spark 节点 相似 计算方法 装置 终端 | ||
1.一种基于Spark的节点相似度计算方法,其特征在于,包括:
获取待处理的二部图中的节点数据,对所述节点数据进行序列化处理;
根据处理后的所述节点数据生成概率转移矩阵和相似度矩阵,其中,所述二部图中包括多个节点,所述概率转移矩阵包括多个节点的概率,所述概率为二部图中边的一端节点随机游走到另一端节点的概率,所述相似度矩阵包括多个节点与自身的相似度;
对所述概率转移矩阵和相似度矩阵进行多级自适应分片迭代处理,获得中间结果矩阵,其中,所述多级自适应分片迭代处理,包括:将矩阵按照预设的矩阵行和/或矩阵列进行迭代切割处理,获得多个矩阵分片;
将所述中间结果矩阵与预先设置的衰减系数做乘积运算,获得最终结果矩阵;
根据所述最终结果矩阵获得节点之间的相似度。
2.根据权利要求1所述的方法,其特征在于,对所述概率转移矩阵和相似度矩阵进行多级自适应分片迭代处理,获得中间结果矩阵,包括:
对所述概率转移矩阵和相似度矩阵进行多级自适应分片迭代处理;
计算处理后的所述概率转移矩阵的转置与相似度矩阵的乘积,获得过渡矩阵;
根据所述过渡矩阵和相似度矩阵获得中间结果矩阵。
3.根据权利要求2所述的方法,其特征在于,根据所述过渡矩阵和相似度矩阵获得中间结果矩阵,包括:
对所述过渡矩阵和相似度矩阵进行多级自适应分片迭代处理;
计算处理后的所述过渡矩阵与相似度矩阵的乘积,获得中间结果矩阵。
4.根据权利要求1所述的方法,其特征在于,根据所述最终结果矩阵获得节点之间的相似度,包括:
将所述最终结果矩阵的对角线置为1;
对所述最终结果矩阵中的相似对中的节点进行反序列化处理,获得节点之间的相似度。
5.根据权利要求1-4中任意一项所述的方法,其特征在于,在获得中间结果矩阵之前,所述方法还包括:
获取对所述概率转移矩阵和相似度矩阵进行多级迭代自适应分片处理的迭代次数;
若所述迭代次数大于或等于预设的次数阈值,则停止对所述概率转移矩阵和相似度矩阵进行多级迭代自适应分片处理;或者,
若所述迭代次数小于预设的次数阈值,则继续对所述概率转移矩阵和相似度矩阵进行多级迭代自适应分片处理。
6.一种基于Spark的节点相似度计算装置,其特征在于,包括:
获取模块,用于获取待处理的二部图中的节点数据,并对所述节点数据进行序列化处理;
生成模块,用于根据处理后的所述节点数据生成概率转移矩阵和相似度矩阵,其中,所述二部图中包括多个节点,所述概率转移矩阵包括多个节点的概率,所述概率为二部图中边的一端节点随机游走到另一端节点的概率,所述相似度矩阵包括多个节点与自身的相似度;
处理模块,用于对所述概率转移矩阵和相似度矩阵进行多级自适应分片迭代处理,获得中间结果矩阵;
运算模块,用于将所述中间结果矩阵与预先设置的衰减系数做乘积运算,获得最终结果矩阵;
确定模块,用于根据所述最终结果矩阵获得节点之间的相似度;
其中,所述处理模块,具体用于:将矩阵按照预设的矩阵行和/或矩阵列进行迭代切割处理,获得多个矩阵分片。
7.根据权利要求6所述的装置,其特征在于,所述处理模块,用于:
对所述概率转移矩阵和相似度矩阵进行多级自适应分片迭代处理;
计算处理后的所述概率转移矩阵的转置与相似度矩阵的乘积,获得过渡矩阵;
根据所述过渡矩阵和相似度矩阵获得中间结果矩阵。
8.根据权利要求7所述的装置,其特征在于,所述处理模块,用于:
对所述过渡矩阵和相似度矩阵进行多级自适应分片迭代处理;
计算处理后的所述过渡矩阵与相似度矩阵的乘积,获得中间结果矩阵。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴(中国)有限公司,未经阿里巴巴(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810811936.0/1.html,转载请声明来源钻瓜专利网。