数据处理方法、装置以及系统的制作方法

文档序号:8380919阅读:241来源:国知局
数据处理方法、装置以及系统的制作方法
【技术领域】
[0001] 本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、装置以及系统。
【背景技术】
[0002] 矩阵相乘计算运用于诸多领域中,尤其是当下的大数据情况下,大矩阵相乘可以 应用于改进搜索结果的网页排序(Page-Rank)算法,以及应用于各种基于大数据的推荐服 务等。
[0003] -类传统的矩阵相乘计算方法是行列相乘方法,即用左矩阵的行乘以右矩阵的 列;另一类比较流行的矩阵相乘方法是分块相乘方法,该类方法的本质依旧是传统的行列 相乘方法。
[0004] 应该注意,上面对技术背景的介绍只是为了方便对本发明的技术方案进行清楚、 完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的
【背景技术】部分进行了阐述而认为上述技术方案为本领域技术人员所公知。

【发明内容】

[0005] 本发明的发明人在实施现有技术时发现:对于传统的行列相乘方法,单计算节点 的内存大小与存储大小限制了相乘的两个矩阵的规模,此外,传统的行列相乘方法需要左 矩阵中的元素与右矩阵列中的元素一一对应,而大规模矩阵往往是稀疏矩阵,这样就造成 了计算资源的极大浪费;对于流行的分块相乘方法,由于本质上还是传统的行列相乘方法, 因此,仍然存在稀疏矩阵中的无效计算问题,此外,该方法在逻辑控制上也非常繁琐。
[0006] 本发明实施例提供一种数据处理方法、装置以及系统,其目的在于提高矩阵相乘 的可扩展性以及提高矩阵相乘的效率。
[0007] 根据本发明实施例的第一方面,提供一种数据处理装置,该装置包括:
[0008] 第一确定单元,其用于根据左矩阵和右矩阵中元素的位置和元素的数量,对所述 左矩阵和所述右矩阵分段,以确定所述分段的分段信息;
[0009] 第一复制单元,其用于根据所述分段信息,对所述左矩阵和所述右矩阵进行复 制;
[0010] 第一计算单元,其用于根据所述复制的结果,对所述左矩阵和所述右矩阵进行相 乘计算。
[0011] 根据本发明实施例的第二方面,提供一种数据处理系统,其具有如本发明实施例 的第一方面所述的数据处理装置。
[0012] 根据本发明实施例的第三方面,提供一种数据处理方法,该方法包括:
[0013] 根据左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分 段,以确定所述分段的分段信息;
[0014] 根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;
[0015] 根据所述复制的结果,对所述左矩阵和所述右矩阵进行相乘计算。
[0016] 本发明的有益效果在于:对左矩阵和右矩阵进行分段并复制,并根据复制的结果 进行矩阵相乘计算,由此,提高了矩阵相乘的可扩展性,并提高了矩阵相乘的效率。
[0017] 参照后文的说明和附图,详细公开了本发明的特定实施方式,指明了本发明的原 理可以被采用的方式。应该理解,本发明的实施方式在范围上并不因而受到限制。在所附 权利要求的精神和条款的范围内,本发明的实施方式包括许多改变、修改和等同。
[0018] 针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更 多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特 征。
[0019] 应该强调,术语"包括/包含"在本文使用时指特征、整件、步骤或组件的存在,但 并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。
【附图说明】
[0020] 所包括的附图用来提供对本发明实施例的进一步的理解,其构成了说明书的一部 分,用于例示本发明的实施方式,并与文字描述一起来阐释本发明的原理。显而易见地,下 面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创 造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0021] 图1是本发明实施例1的数据处理装置的组成示意图;
[0022] 图2是本发明实施例1的第一确定单元的组成示意图;
[0023] 图3是本发明实施例1中预处理前文本文件的记录结构示意图;
[0024] 图4是本发明实施例1中预处理后文本文件的记录结构示意图;
[0025] 图5是存储于第二存储单元的左矩阵和右矩阵分段的信息的示意图;
[0026] 图6是本发明实施例1的第一复制单元1的组成示意图;
[0027] 图7是本发明实施例1的上一级节点向下一级节点发送控制信号的示意图;
[0028] 图8是本发明实施例1的第一计算单元的组成示意图;
[0029] 图9是本发明实施例1的左矩阵和右矩阵相乘的原理图;
[0030] 图10是本发明实施例2的数据处理系统的构成示意框图;
[0031] 图11是本发明实施例3的数据处理方法的流程图;
[0032] 图12是本发明实施例3的确定分段信息的方法流程图;
[0033] 图13是本发明实施例3的对矩阵进行复制的方法流程图;
[0034] 图14是本发明实施例3的对矩阵进行相乘的方法流程图。
【具体实施方式】
[0035] 参照附图,通过下面的说明书,本发明的前述以及其它特征将变得明显。在说明书 和附图中,具体公开了本发明的特定实施方式,其表明了其中可以采用本发明的原则的部 分实施方式,应了解的是,本发明不限于所描述的实施方式,相反,本发明包括落入所附权 利要求的范围内的全部修改、变型以及等同物。
[0036] 实施例1
[0037] 本发明实施例1提供一种数据处理装置,如图1所示,数据处理装置100包括第一 确定单元101、第一复制单元102和第一计算单元103。
[0038] 其中,第一确定单元101,用于根据输入到数据处理装置100中的左矩阵和右矩阵 中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定该分段的分段信息; 第一复制单元102,用于根据该分段信息,对左矩阵和右矩阵进行复制;第一计算单元103, 用于根据复制的结果,对左矩阵和右矩阵进行相乘计算。
[0039] 本发明实施例1的数据处理装置可以应用于大规模矩阵的相乘运算中,其中,大 规模矩阵可以是元素数量为百亿量级的矩阵。
[0040] 本发明实施例1的数据处理装置对相乘的矩阵进行分段,获得分段的分段信息, 其中,该分段信息可以是左矩阵的每一列被分段的段数,以及右矩阵的每一行被分段的段 数;通过将每一分段复制为多份,可以在多个分布式的计算节点上并行分段相乘,由此,将 大规模的矩阵相乘分解为分布式计算节点上的分段相乘,提高了矩阵相乘的规模与计算效 率。
[0041] 可见,根据本发明的实施例1,对左矩阵和右矩阵进行分段并复制,并根据复制的 结果进行矩阵相乘计算,能够提高矩阵相乘的可扩展性,并提高矩阵相乘的效率。
[0042] 图2是本发明实施例1的第一确定单元101的组成示意图。如图2所示,第一确 定单元101包括,预处理单元201、第二确定单元202和第三确定单元203。
[0043] 其中,预处理单元201用于根据该左矩阵中元素的列号,以及该右矩阵中元
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1