CN111208980B - 一种数据分析处理方法和系统 - Google Patents
一种数据分析处理方法和系统 Download PDFInfo
- Publication number
- CN111208980B CN111208980B CN201911423447.9A CN201911423447A CN111208980B CN 111208980 B CN111208980 B CN 111208980B CN 201911423447 A CN201911423447 A CN 201911423447A CN 111208980 B CN111208980 B CN 111208980B
- Authority
- CN
- China
- Prior art keywords
- data
- computing node
- analysis processing
- data analysis
- processing workflow
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007405 data analysis Methods 0.000 title claims abstract description 283
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 263
- 230000000875 corresponding effect Effects 0.000 claims description 52
- 238000000034 method Methods 0.000 claims description 48
- 238000012549 training Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 21
- 230000002596 correlated effect Effects 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 12
- 238000012517 data analytics Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 19
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种数据分析处理方法和系统,涉及大数据处理领域,该数据分析处理方法包括:获取数据分析处理工作流的配置信息;根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;基于确定出的运行方式,运行所述数据分析处理工作流。本发明实施例中的数据分析处理系统可以兼容单机式运行方式和分布式运行方式,灵活地运用单机式运行方式或分布式运行方式运行数据分析处理工作流,实现了对大数据分析系统中资源的有效分配,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大。
Description
技术领域
本发明涉及大数据处理领域,尤其涉及一种数据处理处理方法和系统。
背景技术
随着社会信息化和智能化水平提高,使用大数据分析系统训练业务模型,并使用训练好的业务模型实现大数据业务智能化处理也逐渐成为大数据行业的通用手段。现有大数据分析系统在进行大数据分析时可以选择单机式或分布式方式处理数据、训练模型。然而,现有的大数据分析系统无法兼容单机式运行和分布式运行方式,大数据分析系统的资源利用效率低。
发明内容
本发明实施例提供一种数据分析处理方法和系统,解决现有的大数据分析系统无法兼容单机式运行和分布式运行方式,资源利用效率低的问题。
为解决上述技术问题,本发明提供一种数据分析处理方法,所述方法包括:
获取数据分析处理工作流的配置信息;
根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;
基于确定出的运行方式,运行所述数据分析处理工作流。
优选的,上述方法中,所述根据所述配置信息确定所述数据分析处理工作流的运行方式的步骤包括:
基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式;
或者,
基于所述数据分析处理工作流对应的工作流模板,确定所述数据分析处理工作流的运行方式。
优选的,上述方法中,所述基于确定出的运行方式,运行所述数据分析处理工作流包括:
配置分布式资源;
各个计算节点基于所述分布式资源,运行所述数据分析处理工作流。
优选的,上述方法中,所述各个计算节点基于所述分布式资源,运行所述数据分析处理工作流的步骤包括:
主计算节点分发子数据;
各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
优选的,上述方法中,所述配置分布式资源步骤包括:
所述各个计算节点同步初始信息;和/或,
根据计算节点数量更新学习率和批大小。
优选的,上述方法中,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
优选的,上述方法中,所述批大小与所述计算节点数量呈正相关;所述学习率与所述计算节点数量呈正相关。
优选的,上述方法中,所述各个计算节点基于得到的子数据,运行所述数据分析处理工作流的步骤包括:
所述各个计算节点运行所述数据分析处理工作流,训练所述数据分析处理工作流中的模型;
所述各个计算节点分别获取所述模型参数更新信息;
所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点中模型的参数信息。
优选的,上述方法中,所述计算节点为N个,N为大于或等于1的正整数,所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点的模型的参数信息的步骤包括:
将所述各个计算节点的数据划分为N份;
将所述各个计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将所述第一计算节点的第N份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-2份数据传输至第i计算节点,将第N计算节点的第N-1份数据传输至第一计算节点完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步过程:
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
优选的,上述方法中,使用更新的所述学习率和所述批大小对所述模型进行训练。
优选的,上述方法中,所述主计算节点免密登陆到其他各个所述计算节点。
优选的,上述方法中,所述基于确定出的运行方式,运行所述数据分析处理工作流的步骤,包括:
获取所述数据分析处理工作流对应的代码类库;
根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
基于获取的所述组件运行所述数据分析处理工作流。
优选的,上述方法中,所述根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件的步骤包括:
基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;
适配与所述数据处理工作流对应的所述框架类型下的组件。
本发明实施例还提供了一种数据分析处理系统,所述数据分析处理系统包括:
获取模块,用于获取数据分析处理工作流的配置信息;
确定模块,用于根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;
运行模块,用于基于确定出的运行方式,运行所述数据分析处理工作流。
优选的,上述数据分析处理系统中,所述确定模块具体用于:
基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式;
或者,
基于所述数据分析处理工作流对应的工作流模板,确定所述数据分析处理工作流的运行方式。
优选的,上述数据分析处理系统中,所述运行模块包括:
配置单元,用于配置分布式资源;
第一运行单元,用于各个计算节点基于所述分布式资源,运行所述数据分析处理工作流。
优选的,上述数据分析处理系统中,所述第一运行单元包括:
分发子单元,用于主计算节点分发子数据;
运行子单元,用于各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
优选的,上述数据分析处理系统中,所述配置单元包括:
同步子单元,用于所述各个计算节点同步初始信息;和/或,
更新子单元,用于根据计算节点数量更新学习率和批大小。
优选的,上述数据分析处理系统中,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
优选的,上述数据分析处理系统中,所述批大小与所述计算节点数量呈正相关;所述学习率与所述计算节点数量呈正相关。
优选的,上述数据分析处理系统中,所述运行子单包括:
训练子单元,用于所述各个计算节点运行所述数据分析处理工作流,训练所述数据分析处理工作流中的模型;
获取子单元,用于所述各个计算节点分别获取所述模型参数更新信息;
更新子单元,用于所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点中模型的参数信息。
优选的,上述数据分析处理系统中,所述计算节点为N个,N为大于或等于1的正整数,所述更新子单元具体用于:
将所述各个计算节点的数据划分为N份;
将所述各个计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将第i-1计算节点的第i-2份数据传输至第i计算节点,相应的依序同步进行,将第N计算节点的第N-1份数据传输至第一计算节点,将所述第一计算节点的第N份数据传输至第二计算节点,完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步过程:
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
优选的,上述数据分析处理系统中,所述训练子单元还用于使用更新的所述学习率和所述批大小对所述模型进行训练。
优选的,上述数据分析处理系统中,所述主计算节点免密登陆到其他各个所述计算节点。
优选的,上述数据分析处理系统中,所述运行模块包括:
获取单元,用于获取所述数据分析处理工作流对应的代码类库;
确定单元,用于根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
第二运行单元,用于基于获取的所述组件运行所述数据分析处理工作流。
优选的,上述数据分析处理系统中,所述确定单元还用于:
基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件。
本发明实施例还提供了一种数据分析处理系统,所述数据分析处理系统包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述数据分析处理方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如上述数据分析处理方法的步骤。
本发明提供一种数据分析处理方法和系统,包括:获取数据分析处理工作流的配置信息;根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;基于确定出的运行方式,运行所述数据分析处理工作流。本发明实施例中的数据分析处理系统可以兼容单机式运行方式和分布式运行方式,灵活地运用单机式运行方式或分布式运行方式运行数据分析处理工作流,实现了对大数据分析系统中资源的有效分配,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供一种数据分析处理方法的流程图;
图2是本发明一实施例提供一种数据分析处理方法步骤103的流程图;
图3是本发明一实施例提供的基于参数更新算法更新并同步所各计算节点的参数信息的示意图;
图4是本发明一实施例提供的分布式运行的架构图的示意图;
图5是本发明一实施例提供的模型训练的工作流示意图;
图6是本发明又一实施例提供一种数据分析处理方法步骤103的流程图;
图7是本发明一实施例提供的数据分析处理系统的结构图;
图8是本发明一实施例提供的数据分析处理系统的运行模块的结构图;
图9是本发明又一实施例提供的数据分析处理系统的运行模块的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1是本发明一实施例提供的数据分析处理方法的流程图。所述方法可以应用于数据分析处理系统,如图1所示,所述方法包括以下步骤:
步骤101,获取数据分析处理工作流的配置信息。
这里,在数据分析处理系统中,为实现数据分析处理工作流的准确运行,需要对其进行配置。具体的配置信息至少包括下述之一:运行环境参数、数据量大小,以及数据分析处理工作流模板等。
步骤102,根据所述配置信息确定所述数据分析处理工作流的运行方式。所述运行方式包括单机式或分布式。
可选的,所述根据所述配置信息确定所述数据分析处理工作流的运行方式的步骤包括:基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式。
具体的,数据分析处理系统可以根据运行环境参数和/或数据量大小,自动判断据分析处理工作流的运行方式是单机式还是分布式。其中,运行环境参数是数据分析处理工作流的环境参数的一部分,运行环境参数包括下述至少之一:需要启动的计算节点数量、需分配的CPU和内存资源等。
示例性的,对于创建好的数据分析处理工作流,数据分析处理系统可以基于整体计算量以及计算资源等,判断据分析处理工作流的运行方式是单机式还是分布式。如果数据量大,硬件资源满足,例如训练用数据量超过1G、有多个可用计算节点,确定数据分析处理工作流的运行方式是分布式。如果数据量不大、硬件资源不足,确定数据分析处理工作流的运行方式是单机式。如果数据量较大、硬件资源不足,确定数据分析处理工作流的运行方式是单机式。
当然,用户也可以基于数据分析处理系统的推荐自定义选择数据分析处理工作流的运行方式是单机式还是分布式。具体可以为,数据分析处理系统根据配置信息,推荐所述数据分析处理工作流的运行方式,然后,数据分析处理系统可以向用户展示其推荐的运行方式,并且获取用于指示自定义运行方式的用户操作,进一步,基于用户操作确定运行方式。例如,数据分析处理系统根据该数据分析处理工作流的运行环境和/或数据量等配置信息,推荐采用分布式运行,数据分析处理系统在用户界面显示分布式运行对应的第一按键,若用户点击该第一按键,则数据分析系统确定该数据分析处理工作流的运行方式为分布式;或用户点击该用户界面中显示自定义运行方式对应的第二按键,并设置运行方式为单机式运行,则数据分析系统确定该数据分析处理工作流的运行方式为单机式。
除上述方式之外,还可以基于数据分析处理工作流对应的工作流模板,确定该数据分析处理工作流是单机式运行还是分布式运行。
具体的,每一种工作流模板具有与之对应的运行方式。在该数据分析处理系统中,在配置工作流模板时,还会为每一个工作流模板配置运行方式。例如,数据分析处理系统中,配置有单机式运行的金融产品推荐的工作流模板,和分布式运行的图像处理的工作流模板。
示例性的,在新建数据分析处理工作流过程中,数据分析处理系统根据用户创建的数据分析处理工作流任务,向用户展示供用户选择的工作流模板,获取用户选择工作流模板的操作,从而确定数据分析处理工作流对应的工作流模板,进而确定该工作流模板对应的运行方式为该数据分析处理工作流的运行方式。其中,显示的工作流模板可以包括金融产品推荐模板、图像处理模板等。除了由用户自定义数据分析处理工作流的工作流模板,还可以由数据分析处理系统根据用户创建的数据分析处理工作流的业务场景自动选择对应的模板。以上方式仅是示例性说明,本发明对此不做具体限定。
步骤103,基于确定出的运行方式,运行所述数据分析处理工作流。
其中,在确定出运行方式是单机式还是分布式后,可以调用相应的框架,运行该数据分析处理工作流,例如,若确定为分布式运行,可以调用分布式框架运行所述数据分析处理工作流。其中,分布式框架包含计算任务的拆解、分发和整合应用统一的规范。分布式框架可以提交到分布式集群上,使得分布式集群中的各个计算节点可以分布式运行方式。其中,在使用分布式框架运行数据分析处理工作流之前,需要进行初始化,例如配置分布式资源、建立连接。
本发明提供一种数据分析处理方法,包括:获取数据分析处理工作流的配置信息;根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;基于确定出的运行方式,运行所述数据分析处理工作流。本发明实施例中的数据分析处理系统可以兼容单机式运行方式和分布式运行方式,灵活地运用单机式运行方式或分布式运行方式运行数据分析处理工作流,实现对大数据分析系统中资源的有效分配,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大。
可选的,如图2所示,若该数据分析处理工作流原本为基于单机式运行的数据分析处理工作流,若基于运行环境和/或数据量等,确定该数据分析处理工作流应分布式运行,步骤103具体包括如下步骤:
1031,配置分布式资源;
可选的,所述配置分布式资源步骤包括:配置用于运行该数据分析处理工作流的计算节点;同步各个计算节点中的信息,以及确定学习率和批大小。
其中,配置用于运行该数据分析处理工作流的计算节点包括:分别统计每个候选计算节点当前可用资源,若该候选计算节点当前可用资源能够满足该数据分析处理工作流对应的运行条件,则确定该候选计算节点用于运行该数据分析处理工作流的目标计算节点。
a:所述各个计算节点同步初始信息;
其中,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
这里,数据分析处理系统启动初始化进程,多个计算节点(即机器)之间进行信息同步。不仅启动阶段信息同步,后续处理过程的信息也同步。
可选的,在运行数据分析处理工作流之前,可以指定计算节点。开始运行后每个计算节点会加入该分布式运行的数据分析处理工作流。指定计算节点可以是系统自动分配计算节点,基于资源配置信息及系统拥有的有效资源进行分配。
b:根据计算节点数量更新学习率和批大小。
学习率(learning rate)即步长,用于控制模型的学习进度。学习率影响模型的准确率,在模型训练过程中,每轮训练的模型参数更新量与学习率是正相关的,即学习率决定了模型参数移动到最优值的速度快慢;如果学习率过大,很可能会越过最优值;而如果学习率过小,优化的效率可能过低,算法长时间无法收敛,因此,在实现模型训练时,合理地选择用于模型训练的学习率,有效控制模型参数移动到最优值的速度,并且有效提升模型性能。
其中,所述批大小与所述计算节点数量呈正相关。批大小batchsize用于分批处理样本,分批读取和训练样本,批大小batchsize是指每一批读取或训练的样本量。
进一步来说,学习率和批大小是正相关的,学习率和批大小的关系具体可以采用如下公式进行计算:
上述公式中,new learning rate为更新的学习率,old learning rate为原学习率,new batchsize为更新的批大小,old batchsize为原批大小。
由于学习率learning rate与批大小batchsize呈正相关,批大小与计算节点数量呈正相关;学习率也与计算节点数量呈正相关,即批大小batchsize根据计算节点数量放大,学习率learning rate也随之放大。
示例性的,单机式运行时,初始参数设置为w1=0.1、w2=0.2、w3=0.3,学习率是0.01,经过一轮训练,参数变化为w1=0.11、w2=0.21、w3=0.31;分布式运行时,有多个计算节点,例如有3个计算节点A、B、C,学习率是0.03,A、B、C的原参数w1、w2、w3均为,w1=0.1、w2=0.2、w3=0.3,经过一轮训练,其中计算节点A的参数变化为w1=0.13、w2=0.23、w3=0.33。上述举例仅用于说明学习率与计算节点数量的变化是正相关的。
需要说明的是,由于批大小和学习率均与计算节点数量呈正相关,因此,当计算节点数量改变,需要基于当前的计算节点数量相应调整批大小和学习率的值。
本发明实施例中,批大小和学习率根据计算节点数量的增大而放大,有利于提高训练的速度(收敛速度快),获得最优参数,提高模型性能。
1032,各个计算节点基于所述分布式资源,运行所述数据分析处理工作流。
可选的,所述各个计算节点基于所述分布式资源,运行所述数据分析处理工作流的步骤包括:
主计算节点分发子数据;
各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
这里,在运行数据分析处理工作流前,由主计算节点将初始变量和进程信息广播到所有计算节点。其中,广播初始变量的目的是为保证使各个计算节点的计算进度(例如训练的轮次)保持一致。
在运行数据分析处理工作流时,调用运行接口,使得各个计算节点开始运行数据分析处理工作流。
具体的,执行启动命令的计算节点master节点即主计算节点,可以由系统自动指定主计算节点。主计算节点将数据分析处理工作流以及数据读取到主计算节点内存中,除主计算节点之外的其他计算节点将数据分析处理工作流读取到各个其他计算节点的内存中。然后,主计算节点将初始信息例如初始变量、进程信息等发送给其他各个计算节点,实现各个计算节点初始信息同步。主计算节点和其他计算节点之间的信息同步可以基于通信协议进行。其中,上述各个计算节点将数据分析处理工作流读取到自身内存中具体为:将该数据分析处理工作流对应的代码程序读入到内存中。
其中,主计算节点读取模型训练用的数据,然后,将这些数据分发给其他各个计算节点,从而每个计算节点得到较小批量的子数据。
所有的计算节点基于得到的子数据以及数据分析处理工作流,运行数据分析处理工作流,以进行模型训练,从而确定模型参数更新信息,基于参数更新算法将各个计算节点模型训练得到的模型参数更新信息在各个计算节点之间进行更新同步,从而在经过上述更新同步后,各个计算节点中模型的参数保持一致。其中,模型参数更新信息是指训练前后模型的参数的变化情况。
可选的,为了有效控制模型参数移动到最优值的速度,并且有效提升模型性能,使用更新的所述学习率和所述批大小对所述模型进行训练,实现模型的参数调优。
可选的,主计算节点能够免密登陆到其他各个计算节点。
在模型训练完成后,可以选择在一个计算节点中保存训练完成的模型。例如选择在master节点保存训练完成的模型。
可选的,所述计算节点根据训练后的所述参数信息,基于参数更新算法,更新并同步所述各计算节点的参数信息的步骤包括:
所述计算节点为N个,将所述各个计算节点的数据划分为N份;其中,N为大于或等于1的正整数;
将各个所述计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将所述第一计算节点的第N份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-2份数据传输至第i计算节点,将第N计算节点的第N-1份数据传输至第一计算节点,完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步的过程:即,
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
示例性的,如图3所示,假设有三个计算节点1、2、3,将每个计算节点的数据分成三份。三个计算节点1、2、3排序成环。各个计算节点每次分别向右侧相邻的计算节点传递一份数据,经过N-1次同步即可实现每份数据的更新。图3所示的状态(1),为对该3个计算节点中的数据划分为3份数据后的状态,其中,计算节点1包括:a1、b1、c1,计算节点2包括:a2、b2、c2,计算节点3包括:a3、b3、c3;在状态(1)后,计算节点1将自身的第一份数据a1发送给计算节点2,使得计算节点2的第一份数据更新为a1+a2,同时计算节点2将自身的第二份数据b2发送给计算节点3,使得计算节点3的第二份数据更新为b2+b3,同时计算节点3将自身的第三份数据c3发送给计算节点1,使得计算节点1的第三份数据更新为c1+c3,从而,经过该第一轮数据同步,得到图3所示的状态(3);然后,计算节点2将自身的第一份数据a1+a2发送给计算节点3,使得计算节点3的第一份数据更新为a1+a2+a3,同时计算节点3将自身的第二份数据b2+b3发送给计算节点1,使得计算节点1的第二份数据更为b1+b2+b3,同时计算节点1将自身的第三份数据c1+c3发送给计算节点2,使得计算节点2的第三份数据更新为c1+c2+c3,从而,经过该第二轮数据同步,得到图3所示的状态(4);此时,经过两轮数据同步后,各个计算节点1、2、3均已完成一份数据的更新。然后,在图3所示的状态(4)的基础上,再经过两轮数据传递,到达如图3所示的状态(6),即:在图3所示的状态(4)的基础上,计算节点1将自身的第二份数据b1+b2+b3发送给计算节点2,使得计算节点2的第二份数据更新为b1+b2+b3,同时计算节点2将自身的第三份数据c1+c2+c3发送给计算节点3,使得计算节点3的第三份数据更新为c1+c2+c3,同时计算节点3将自身的第一份数据发送给计算节点1,使得计算节点1的第一份数据更新为a1+a2+a3,经过该第三轮数据同步,得到图3所示的状态(5);再次,图3所示的状态(5)的基础上,在计算节点1将自身的第一份数据a1+a2+a3发送给计算节点2,使得计算节点2的第一份数据更新为a1+a2+a3,同时计算节点2将自身的第二份数据b1+b2+b3发送给计算节点3,使得计算节点3的第三份数据更新为b1+b2+b3,同时计算节点3将自身的第三份数据c1+c2+c3发送给计算节点1,使得计算节点1的第三份数据更新为c1+c2+c3,经过该第四轮数据同步,得到图3所示的状态(6),实现了3份数据在各个所述计算节点的更新同步。
假设计算节点间传输数据量S需要T秒,则本发明实施例所使用的参数更新算法,整体使用时间为2*(N-1)*T,传递数据量2(N-1)*S,相比传统的数据更新算法,算法使用时间和传递的数据量都有了极大的改善。
示例性的,如图4所示,本发明实施例提供了一种分布式运行的架构图的示意图。如图4所示,该分布式运行的架构包括3个计算节点1、2、3,计算节点1为主计算节点,计算节点2和计算节点3为其他计算节点。其中,主计算节点中运行P1和P2两个进程。其中,P1主要用于分发数据以及分发初始信息,P2主要用于模型训练、节点之间更新同步参数。如图4,计算节点1、2、3中的P2构成一个环,基于如图3所示的参数更新算法实现在1、2、3三个计算节点的参数同步更新。
上述实施例中的数据分析处理工作流可以用于实现模型训练的数据分析处理工作流,通过运行工作流进行模型训练,产生训练完成的模型,以用于特定业务场景。其中用于模型训练的数据分析处理工作流通常包括模型训练模块、特征工程模块以及数据处理模块等。
如图5所示,是一种用于实现模型训练的数据分析处理工作流。通过数据模块获取用于模型训练的数据。通过数据预处理模型对模型训练的数据进行数据预处理,例如清洗、采样、缺失值处理、标准化、归一化、数据集拆分、数据类型转换等。使用特征选择模块对预处理后的数据进行特征挑选,使用特征选择模块挑选的特征进行模型训练。
其中,模型训练模块可以是机器学习模型训练模块。模型训练模块中的算法具体可以为以下至少一项:决策树,逻辑回归、额外随机数,梯度渐进树,神经网络,随机森林,随机梯度下降,支持向量机,XGBoost(eXtreme Gradient Boosting,极限梯度提升,是提升树可扩展的机器学习,是一个优化的分布式梯度增强库)等,训练完成后,可以将模型训练模块的模型输出以用于具体业务场景,实际应用的业务场景可以包括以下至少之一:用于预测(例如,客户流失预测、产品推荐预测)、用于异常检测(例如,识别欺诈、异常交易)、用于语言处理(例如,语义分析、词频分析)。
本发明实施例,通过配置分布式资源,让单机式运行方式适配分布式运行方式,将单机式的资源调度转为分布式资源调度,实现各个计算节点的数据一致性和计算状态,仅需要一套框架即可以实现单机式运行也可以实现分布式运行,使得单机式运行和分布式运行可以兼容,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大。
可选的,如图6所示,步骤103还包括如下步骤:
步骤1033,获取所述数据分析处理工作流对应的代码类库;
步骤1034,根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
步骤1035,基于获取的所述组件运行所述数据分析处理工作流。
可选的,根据所述确定出的运行方式,所述基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件的步骤包括:基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件。
其中,组件可以是数据分析处理工作流的模块。
其中,所述代码类库为数据分析处理系统在上层数据分析处理工作流与底层组件之间增加的一层框架抽象层,数据分析处理系统通过该代码类库获取该指定运行方式对应的框架下的组件,实现数据处理工作流的运行。
具体的,代码类库可以包括但不限于:各个框架类型对应的应用程序接口API。数据分析处理系统在上层数据分析处理工作流与底层组件之间进行一层框架抽象具体为:将单机式框架类型和/或分布式框架类型分别封装成一套应用程序接口API。其中,单机式框架包括单机Scikit-learn、tensorflow、Mxne等。分布式框架包括spark、tensorflow、PyTorch、Mxnet等。调用相应的应用程序接口API可以获取单机式框架或分布式框架。例如,调用单机Scikit-learn对应的应用程序接口API,获取单机Scikit-learn框架;调用单机tensorflow对应的应用程序接口API,获取单机tensorflow框架。
此外,基于不同的框架有不同的计算引擎。所有的计算引擎会集成在数据分析处理系统中。
具体的,数据分析处理系统根据数据分析处理工作流的配置信息,确定出该数据分析处理工作流的运行方式为单机式运行,并且通过解析数据分析处理工作流,获取数据分析处理工作流对应的代码类库,例如,获取到的代码类库指示为Scikit-learn,因此,基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型则为单机式运行的Scikit-learn;从而,数据分析处理系统适配与所述数据处理工作流对应的所述框架类型下的组件。
进一步的,数据分析处理系统适配与所述数据处理工作流对应的所述框架类型下的组件的步骤包括:基于框架类型对应的应用程序接口API,调用与该数据处理工作流对应的框架,然后,基于该框架类型的代码编写规则,自动编写对应的代码,从而得到该框架类型下对应的组件。其中,代码包括类库的引用、功能逻辑代码等。其中,代码编写规则包括:数据格式、参数,处理规则等。
数据分析处理系统调用生成的框架组件运行所述数据分析处理工作流。
示例性说明:如下为用户输入数据分析处理工作流对应的代码:
from aps.preprocessing import MinMaxScaler
#归一化
min_max=MinMaxScaler()
min_max.fit(X,input_cols=select_cols)
X=min_max.transform(X)
上述具体代码用于数据分析处理工作流中的特征工程模块,进行数据的归一化,实现将数据处理为0-1之间的数据。其中,基于代码中引用的类库MinMaxScaler。若基于系统自动推断或基于用户选择,确定运行方式为单机式运行时,基于该代码中的代码类库系统自动判断,将上述实现归一化功能代码,转换成Scikit-learn框架下的代码,从而,实现基于确定出的单机式运行方式,将用户在数据分析处理系统中编写的功能代码,适配为该Scikit-learn框架下的组件;若基于系统自动推断或基于用户选择,确定运行方式为分布式运行时,基于该代码中的代码类库系统自动判断,将上述实现归一化功能代码,转换成spark框架下的代码,从而,实现基于确定出的分布式运行方式,将用户在数据分析处理系统中编写的功能代码,适配为该spark框架下的组件。
本发明实施例中的数据分析处理方法,基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件;仅需要一套代码即可以单机式运行也可以分布式运行,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大,且可以支持不同的数据量和硬件资源。
基于以上实施例提供的数据分析处理方法,本发明实施例还提供了实施上述方法的数据分析处理系统,请参照图7,本发明实施例提供的数据分析处理系统600包括:
获取模块701,用于获取数据分析处理工作流的配置信息;
确定模块702,用于根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;
运行模块703,用于基于确定出的运行方式,运行所述数据分析处理工作流。
可选的,所述数据分析处理系统中,所述确定模块702具体用于:
基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式;
或者,
基于数据分析处理工作流的模板,确定所述数据分析处理工作流的运行方式。
可选的,所述数据分析处理系统中,如图8所示,所述运行模块703包括:
配置单元7031,用于配置分布式资源;
第一运行单元7032,用于各个计算节点基于所述分布式资源,运行所述数据分析处理工作流。
可选的,所述数据分析处理系统中,所述第一运行单元7032包括:
分发子单元,用于主计算节点分发子数据;
运行子单元,用于各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
可选的,所述数据分析处理系统中,所述配置单元7031包括:
同步子单元,用于所述各个计算节点同步初始信息;和/或,
更新子单元,用于根据计算节点数量更新学习率和批大小。
可选的,所述数据分析处理系统中,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
可选的,所述数据分析处理系统中,所述批大小与所述计算节点数量呈正相关;所述学习率与所述计算节点数量呈正相关。
可选的,所述数据分析处理系统中,所述运行子单包括:
训练子单元,用于所述各个计算节点运行所述数据分析处理工作流,训练所述数据分析处理工作流中的模型;
获取子单元,用于所述各个计算节点分别获取所述模型参数更新信息;
更新子单元,用于所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点中模型的参数信息。
可选的,所述数据分析处理系统中,所述计算节点为N个,N为大于或等于1的正整数,所述更新子单元具体用于:
将各个所述计算节点的数据划分为N份;
将所述各个计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将第i-1计算节点的第i-2份数据传输至第i计算节点,相应的依序同步进行,将第N计算节点的第N-1份数据传输至第一计算节点,将所述第一计算节点的第N份数据传输至第二计算节点,完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步过程:
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
可选的,所述数据分析处理系统中,所述训练子单元还用于使用更新的所述学习率和所述批大小对所述模型进行训练。
可选的,所述数据分析处理系统中,所述主计算节点免密登陆到其他各个所述计算节点。
可选的,所述数据分析处理系统中,如图9所示,所述运行模块703还包括:
获取单元7033,用于获取所述数据分析处理工作流对应的代码类库;
确定单元7034,用于根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
第二运行单元7035,用于基于获取的所述组件运行所述数据分析处理工作流。
可选的,所述确定单元还用于:
基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件。
本发明实施例中的数据分析处理方法基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件;仅需要一套代码即可以单机式运行也可以分布式运行,克服了大数据分析系统的资源瓶颈,提高了大数据分析系统的资源利用效率,使得大数据分析系统计算速度更快、计算量更大,且可以支持不同的数据量和硬件资源。
本发明实施例提供一种数据分析处理系统,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述的数据分析处理方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数据分析处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (24)
1.一种数据分析处理方法,其特征在于,所述方法包括:
获取数据分析处理工作流的配置信息;
根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;
基于确定出的运行方式,运行所述数据分析处理工作流;
若所述数据分析处理工作流为基于单机式运行的数据分析处理工作流,所述根据所述配置信息确定所述数据分析处理工作流应分布式运行,所述基于确定出的运行方式,运行所述数据分析处理工作流包括:
配置分布式资源;
各个计算节点基于所述分布式资源,运行所述数据分析处理工作流;
所述配置分布式资源步骤包括:
所述各个计算节点同步初始信息;和/或
根据计算节点数量更新学习率和批大小。
2.根据权利要求1所述的方法,其特征在于,所述根据所述配置信息确定所述数据分析处理工作流的运行方式的步骤包括:
基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式;
或者,
基于所述数据分析处理工作流对应的工作流模板,确定所述数据分析处理工作流的运行方式。
3.根据权利要求1所述的方法,其特征在于,所述各个计算节点基于所述分布式资源,运行所述数据分析处理工作流的步骤包括:
主计算节点分发子数据;
各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
4.根据权利要求1所述的方法,其特征在于,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
5.根据权利要求1所述的方法,其特征在于,所述批大小与所述计算节点数量呈正相关;所述学习率与所述计算节点数量呈正相关。
6.根据权利要求4所述的方法,其特征在于,所述各个计算节点基于得到的子数据,运行所述数据分析处理工作流的步骤包括:
所述各个计算节点运行所述数据分析处理工作流,训练所述数据分析处理工作流中的模型;
所述各个计算节点分别获取所述模型参数更新信息;
所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点中模型的参数信息。
7.根据权利要求6所述的方法,其特征在于,所述计算节点为N个,N为大于或等于1的正整数,所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点的模型的参数信息的步骤包括:
将所述各个计算节点的数据划分为N份;
将所述各个计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将所述第一计算节点的第N份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-2份数据传输至第i计算节点,将第N计算节点的第N-1份数据传输至第一计算节点,完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步过程:
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
8.根据权利要求6所述的方法,其特征在于,使用更新的所述学习率和所述批大小对所述模型进行训练。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述主计算节点免密登录 到其他各个所述计算节点。
10.根据权利要求1或2所述的方法,其特征在于,所述基于确定出的运行方式,运行所述数据分析处理工作流的步骤,包括:
获取所述数据分析处理工作流对应的代码类库;
根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
基于获取的所述组件运行所述数据分析处理工作流。
11.根据权利要求10所述的方法,其特征在于,所述根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件的步骤包括:
基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;
适配与所述数据处理工作流对应的所述框架类型下的组件。
12.一种数据分析处理系统,其特征在于,所述数据分析处理系统包括:
获取模块,用于获取数据分析处理工作流的配置信息;
确定模块,用于根据所述配置信息确定所述数据分析处理工作流的运行方式;所述运行方式包括单机式或分布式;若所述数据分析处理工作流为基于单机式运行的数据分析处理工作流,所述根据所述配置信息确定所述数据分析处理工作流应分布式运行;
运行模块,用于基于确定出的运行方式,运行所述数据分析处理工作流;
所述运行模块包括:
配置单元,用于配置分布式资源;
第一运行单元,用于各个计算节点基于所述分布式资源,运行所述数据分析处理工作流;
所述配置单元包括:
同步子单元,用于所述各个计算节点同步初始信息;和/或
更新子单元,用于根据计算节点数量更新学习率和批大小。
13.根据权利要求12所述的数据分析处理系统,其特征在于,所述确定模块具体用于:
基于运行环境参数和/或数据量大小,确定所述数据分析处理工作流的运行方式;
或者,
基于所述数据分析处理工作流对应的工作流模板,确定所述数据分析处理工作流的运行方式。
14.根据权利要求12所述的数据分析处理系统,其特征在于,所述第一运行单元包括:
分发子单元,用于主计算节点分发子数据;
运行子单元,用于各个计算节点基于得到的子数据,运行所述数据分析处理工作流。
15.根据权利要求12所述的数据分析处理系统,其特征在于,所述初始信息包括以下至少一项:初始变量、进程信息、数据信息和参数信息。
16.根据权利要求12所述的数据分析处理系统,其特征在于,所述批大小与所述计算节点数量呈正相关;所述学习率与所述计算节点数量呈正相关。
17.根据权利要求15所述的数据分析处理系统,其特征在于,所述运行子单包括:
训练子单元,用于所述各个计算节点运行所述数据分析处理工作流,训练所述数据分析处理工作流中的模型;
获取子单元,用于所述各个计算节点分别获取所述模型参数更新信息;
更新子单元,用于所述各个计算节点根据所述模型参数更新信息,基于参数更新算法,更新并同步所述各个计算节点中模型的参数信息。
18.根据权利要求17所述的数据分析处理系统,其特征在于,所述计算节点为N个,N为大于或等于1的正整数,所述更新子单元具体用于:
将所述各个计算节点的数据划分为N份;
将所述各个计算节点排序成环;
将第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行将第i-1计算节点的第i-1份数据传输至第i计算节点,将所述第N计算节点的第N份数据传输至第一计算节点,完成第一轮数据同步,其中,i为大于2且小于N的正整数;
将第i-1计算节点的第i-2份数据传输至第i计算节点,相应的依序同步进行,将第N计算节点的第N-1份数据传输至第一计算节点,将所述第一计算节点的第N份数据传输至第二计算节点,完成第二轮数据同步;
依次类推,直到完成第N-1轮数据同步;
在第N-1轮数据同步的基础上,再次进行N-1轮数据同步过程:
将第一计算节点的第二份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i份数据传输至第i计算节点,将所述第N计算节点的第一份数据传输至第一计算节点,完成第N轮数据同步;
将所述第一计算节点的第一份数据传输至第二计算节点,相应的依序同步进行,将第i-1计算节点的第i-1份数据传输至第i计算节点,将第N计算节点的第N份数据传输至第一计算节点,完成第N+1轮数据同步;
依次类推,直到完成第2(N-1)轮数据同步。
19.根据权利要求17所述的数据分析处理系统,其特征在于,所述训练子单元还用于使用更新的所述学习率和所述批大小对所述模型进行训练。
20.根据权利要求12-19任一项所述的数据分析处理系统,其特征在于,所述主计算节点免密登录 到其他各个所述计算节点。
21.根据权利要求12或13所述的数据分析处理系统,其特征在于,所述运行模块包括:
获取单元,用于获取所述数据分析处理工作流对应的代码类库;
确定单元,用于根据所述确定出的运行方式,基于所述代码类库获取与所述确定出的运行方式对应的框架下的组件;
第二运行单元,用于基于获取的所述组件运行所述数据分析处理工作流。
22.根据权利要求21所述的数据分析处理系统其特征在于,所述确定单元还用于:
基于所述代码类库以及所述确定出的运行方式,确定运行所述数据分析处理工作流的框架类型;适配与所述数据处理工作流对应的所述框架类型下的组件。
23.一种数据分析处理系统,其特征在于,所述数据分析处理系统包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至11中任一项所述的数据分析处理方法的步骤。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如权利要求1至11任一项所述的数据分析处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423447.9A CN111208980B (zh) | 2019-12-31 | 2019-12-31 | 一种数据分析处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423447.9A CN111208980B (zh) | 2019-12-31 | 2019-12-31 | 一种数据分析处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111208980A CN111208980A (zh) | 2020-05-29 |
CN111208980B true CN111208980B (zh) | 2021-04-06 |
Family
ID=70789508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911423447.9A Active CN111208980B (zh) | 2019-12-31 | 2019-12-31 | 一种数据分析处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111208980B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9713342B2 (en) * | 2004-08-25 | 2017-07-25 | Decopac, Inc. | Online decorating system for edible products |
US11270201B2 (en) * | 2017-12-29 | 2022-03-08 | Intel Corporation | Communication optimizations for distributed machine learning |
CN109189750B (zh) * | 2018-09-06 | 2019-05-31 | 北京九章云极科技有限公司 | 数据分析工作流的运行方法、数据分析系统及存储介质 |
-
2019
- 2019-12-31 CN CN201911423447.9A patent/CN111208980B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111208980A (zh) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11016673B2 (en) | Optimizing serverless computing using a distributed computing framework | |
US20190279088A1 (en) | Training method, apparatus, chip, and system for neural network model | |
CN110019651A (zh) | 一种流式规则引擎及业务数据处理方法 | |
CN108280023B (zh) | 任务执行方法、装置和服务器 | |
CN111552550A (zh) | 一种基于图形处理器gpu资源的任务调度方法、设备及介质 | |
CN115373861B (zh) | Gpu资源调度方法、装置、电子设备及存储介质 | |
CN111860853A (zh) | 在线预测系统、设备、方法及电子设备 | |
CN112906206A (zh) | 数字孪生模型构建方法和装置 | |
CN116127899A (zh) | 芯片设计系统、方法、电子设备和存储介质 | |
CN112799782A (zh) | 模型生成系统、方法、电子设备及存储介质 | |
US20140223410A1 (en) | Application architecture design method, application architecture design system, and recording medium | |
CN111208980B (zh) | 一种数据分析处理方法和系统 | |
CN115186738B (zh) | 模型训练方法、装置和存储介质 | |
CN116302448A (zh) | 任务调度方法和系统 | |
CN110290206A (zh) | 一种用于网吧环境的分布式计算系统及方法 | |
CN114997401A (zh) | 自适应推理加速方法、装置、计算机设备和存储介质 | |
CN114187259A (zh) | 视频质量分析引擎的创建方法、视频质量分析方法及设备 | |
CN113391795A (zh) | 一种应用场景和软件开发包自适应映射的实现方法和系统 | |
CN111241159A (zh) | 确定任务执行时间的方法及装置 | |
CN115480745B (zh) | 基于配置文件的代码生成方法及装置 | |
CN116700703B (zh) | 一种业务处理方法、装置、设备及存储介质 | |
CN111459576B (zh) | 一种数据分析处理系统和模型运行方法 | |
CN113778642B (zh) | 网络服务的调度方法、装置、智能终端及存储介质 | |
WO2024087844A1 (zh) | 图神经网络的训练方法、训练系统及异常账号识别方法 | |
CN111767085B (zh) | Storm平台参数配置方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |