本发明专利技术实施例提供一种数据处理方法、装置以及数据处理系统。本发明专利技术实施例的数据处理装置包括:第一确定单元,其用于根据左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定所述分段的分段信息;第一复制单元,其用于根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;第一计算单元,其用于根据所述复制的结果,对所述左矩阵和所述右矩阵进行相乘计算。根据本发明专利技术的实施例,能够提高矩阵相乘的可扩展性,并提高矩阵相乘的效率。
【技术实现步骤摘要】
本专利技术涉及数据处理
,尤其涉及一种数据处理方法、装置以及系统。
技术介绍
矩阵相乘计算运用于诸多领域中,尤其是当下的大数据情况下,大矩阵相乘可以应用于改进搜索结果的网页排序(Page-Rank)算法,以及应用于各种基于大数据的推荐服务等。一类传统的矩阵相乘计算方法是行列相乘方法,即用左矩阵的行乘以右矩阵的列;另一类比较流行的矩阵相乘方法是分块相乘方法,该类方法的本质依旧是传统的行列相乘方法。应该注意,上面对技术背景的介绍只是为了方便对本专利技术的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的
技术介绍
部分进行了阐述而认为上述技术方案为本领域技术人员所公知。
技术实现思路
本专利技术的专利技术人在实施现有技术时发现:对于传统的行列相乘方法,单计算节点的内存大小与存储大小限制了相乘的两个矩阵的规模,此外,传统的行列相乘方法需要左矩阵中的元素与右矩阵列中的元素一一对应,而大规模矩阵往往是稀疏矩阵,这样就造成了计算资源的极大浪费;对于流行的分块相乘方法,由于本质上还是传统的行列相乘方法,因此,仍然存在稀疏矩阵中的无效计算问题,此外,该方法在逻辑控制上也非常繁琐。本专利技术实施例提供一种数据处理方法、装置以及系统,其目的在于提高矩阵相乘的可扩展性以及提高矩阵相乘的效率。根据本专利技术实施例的第一方面,提供一种数据处理装置,该装置包括:第一确定单元,其用于根据左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定所述分段的分段信息;第一复制单元,其用于根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;第一计算单元,其用于根据所述复制的结果,对所述左矩阵和所述右矩阵进行相乘计算。根据本专利技术实施例的第二方面,提供一种数据处理系统,其具有如本专利技术实施例的第一方面所述的数据处理装置。根据本专利技术实施例的第三方面,提供一种数据处理方法,该方法包括:根据左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定所述分段的分段信息;根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;根据所述复制的结果,对所述左矩阵和所述右矩阵进行相乘计算。本专利技术的有益效果在于:对左矩阵和右矩阵进行分段并复制,并根据复制的结果进行矩阵相乘计算,由此,提高了矩阵相乘的可扩展性,并提高了矩阵相乘的效率。参照后文的说明和附图,详细公开了本专利技术的特定实施方式,指明了本专利技术的原理可以被采用的方式。应该理解,本专利技术的实施方式在范围上并不因而受到限制。在所附权利要求的精神和条款的范围内,本专利技术的实施方式包括许多改变、修改和等同。针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。附图说明所包括的附图用来提供对本专利技术实施例的进一步的理解,其构成了说明书的一部分,用于例示本专利技术的实施方式,并与文字描述一起来阐释本专利技术的原理。显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:图1是本专利技术实施例1的数据处理装置的组成示意图;图2是本专利技术实施例1的第一确定单元的组成示意图;图3是本专利技术实施例1中预处理前文本文件的记录结构示意图;图4是本专利技术实施例1中预处理后文本文件的记录结构示意图;图5是存储于第二存储单元的左矩阵和右矩阵分段的信息的示意图;图6是本专利技术实施例1的第一复制单元1的组成示意图;图7是本专利技术实施例1的上一级节点向下一级节点发送控制信号的示意图;图8是本专利技术实施例1的第一计算单元的组成示意图;图9是本专利技术实施例1的左矩阵和右矩阵相乘的原理图;图10是本专利技术实施例2的数据处理系统的构成示意框图;图11是本专利技术实施例3的数据处理方法的流程图;图12是本专利技术实施例3的确定分段信息的方法流程图;图13是本专利技术实施例3的对矩阵进行复制的方法流程图;图14是本专利技术实施例3的对矩阵进行相乘的方法流程图。具体实施方式参照附图,通过下面的说明书,本专利技术的前述以及其它特征将变得明显。在说明书和附图中,具体公开了本专利技术的特定实施方式,其表明了其中可以采用本专利技术的原则的部分实施方式,应了解的是,本专利技术不限于所描述的实施方式,相反,本专利技术包括落入所附权利要求的范围内的全部修改、变型以及等同物。实施例1本专利技术实施例1提供一种数据处理装置,如图1所示,数据处理装置100包括第一确定单元101、第一复制单元102和第一计算单元103。其中,第一确定单元101,用于根据输入到数据处理装置100中的左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定该分段的分段信息;第一复制单元102,用于根据该分段信息,对左矩阵和右矩阵进行复制;第一计算单元103,用于根据复制的结果,对左矩阵和右矩阵进行相乘计算。本专利技术实施例1的数据处理装置可以应用于大规模矩阵的相乘运算中,其中,大规模矩阵可以是元素数量为百亿量级的矩阵。本专利技术实施例1的数据处理装置对相乘的矩阵进行分段,获得分段的分段信息,其中,该分段信息可以是左矩阵的每一列被分段的段数,以及右矩阵的每一行被分段的段数;通过将每一分段复制为多份,可以在多个分布式的计算节点上并行分段相乘,由此,将大规模的矩阵相乘分解为分布式计算节点上的分段相乘,提高了矩阵相乘的规模与计算效率。可见,根据本专利技术的实施例1,对左矩阵和右矩阵进行分段并复制,并根据复制的结果进行矩阵相乘计算,能够提高矩阵相乘的可扩展性,并提高矩阵相乘的效率。图2是本专利技术实施例1的第一确定单元101的组成示意图。如图2所示,第一确定单元101包括,预处理单元201、第二确定单元202和第三确定单元203。其中,预处理单元201用于根据该左矩阵中元素的列号,以及该右矩阵中元素的行号,对该左矩阵和右矩阵进行预处理;第二确定单元202用于根据预处理单元201的处理结果,确定该左矩阵每一列元素的数量以及该右矩阵每一行元素的数量;第三确定单元203用于根据第二确定单元203的确定结果,对该左矩阵的每一列以及该右矩阵的每一行分段,以确定对该左矩阵本文档来自技高网...
【技术保护点】
一种数据处理装置,其特征在于,所述装置包括:第一确定单元,其用于根据左矩阵和右矩阵中元素的位置和元素的数量,对所述左矩阵和所述右矩阵分段,以确定所述分段的分段信息;第一复制单元,其用于根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;第一计算单元,其用于根据所述复制的结果,对所述左矩阵和所述右矩阵进行相乘计算。
【技术特征摘要】
1.一种数据处理装置,其特征在于,所述装置包括:
第一确定单元,其用于根据左矩阵和右矩阵中元素的位置和元素的数量,对所述
左矩阵和所述右矩阵分段,以确定所述分段的分段信息;
第一复制单元,其用于根据所述分段信息,对所述左矩阵和所述右矩阵进行复制;
第一计算单元,其用于根据所述复制的结果,对所述左矩阵和所述右矩阵进行相
乘计算。
2.如权利要求1所述的数据处理装置,第一确定单元包括:
预处理单元,其用于根据所述左矩阵中元素的列号,以及所述右矩阵中元素的行
号,对所述左矩阵和右矩阵进行预处理;
第二确定单元,其根据所述预处理单元的处理结果,确定所述左矩阵每一列元素
的数量以及所述右矩阵每一行元素的数量;
第三确定单元,其用于根据所述第二确定单元的确定结果,对所述左矩阵的每一
列以及所述右矩阵的每一行分段,以确定对所述左矩阵的每一列分段的第一信息以及
对所述右矩阵的每一行分段的第二信息。
3.如权利要求2所述的数据处理装置,其中,所述第一信息包括对所述左矩阵
的每一列分段的段数,所述第二信息包括对所述右矩阵的每一行分段的段数。
4.如权利要求1所述的数据处理装置,其中,所述第一复制单元包括:
第四确定单元,其用于根据所述分段信息,确定对参与所述复制的节点分级的数
目;
第二复制单元,...
【专利技术属性】
技术研发人员:周恩策,张军,邹纲,孙俊,张沈斌,
申请(专利权)人:富士通株式会社,
类型:发明
国别省市:日本;JP
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。