一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种材料数据处理平台的搭建、运行方法及系统

2022-11-30 14:04:16 来源:中国专利 TAG:


1.本发明涉及材料数据处理技术领域,特别是涉及一种材料数据处理平台的搭建、运行方法及系统。


背景技术:

2.2014年,材料基因组计划提出依据材料科学理论,基于实验数据,利用人工智能方法,通过对数据进行处理,有效解决材料领域的热点问题。然而人工智能算法学习的成本高,需要领域研究人员具备一定的计算机基础知识,导致许多开发过的数据处理算法无法直接利用。更为重要的是一个复杂的材料学研究往往涉及数据采集、数据预处理、建模、结果可视化等多种数据处理的集成。科研人员的精力主要集中于某一特定方向及专业算法的研究,而不擅长将完整的解决问题的过程以模块化的形式集成、调试、并进行复用,因此,现有的材料数据处理方法的通用性差,效率低。


技术实现要素:

3.本发明的目的是提供一种材料数据处理平台的搭建、运行方法及系统,弥补了材料领域算法集成的空白,提高了材料领域数据处理的通用性,提高了效率,便于科研人员的后续研究工作。
4.为实现上述目的,本发明提供了如下方案:
5.一种材料数据处理平台的搭建方法,所述搭建方法包括:
6.确定待集成算法;所述待集成算法为多个用于材料数据处理和分析的算法;所述算法包括:反向传播神经网络、径向基神经网络、支持向量机、经验模态分解、小波去噪、非局部均值、变分模态分解、余弦相似度、灰色关联度、肯德尔相关系数、皮尔逊相关系数、斯皮尔曼相关系数、等距特征映射、核主成分分析、局部线性嵌入、多维尺度分析、主成分分析、t分布随机邻域嵌入、基于遗传算法的支持向量回归、非等间隔非线性灰色贝努利模型、非等间隔灰色模型、自适应增强、梯度提升决策树、极端梯度提升、多元线性回归、随机森林回归、普通克里金插值法、基于加权特征证据融合的监督型分类模型、基于软证据标签传播的半监督分类模型和基于信度峰的软标签传播聚类模型;
7.根据预设算法分类规则将所述待集成算法中的各个算法进行归类,得到归类信息;
8.根据通用算法模板设计所述待集成算法的算法程序、算法配置信息、算法接口和运行环境,得到算法单元;
9.在云端服务器中部署后台服务模块和数据处理模块;在所述数据处理模块中部署所述算法单元;将所述算法配置信息、所述归类信息注册于所述云端服务器的数据库中,得到材料数据处理平台;
10.所述材料数据处理平台包括:客户端和云端服务器;
11.所述云端服务器中部署有后台服务模块和数据处理模块;
12.所述数据处理模块中部署有所述算法单元、算法接口服务单元和任务调度服务单元;
13.所述客户端用于获取使用者的数据处理任务,并将所述数据处理任务发送至所述后台服务模块;
14.所述后台服务模块用于根据所述数据处理任务向所述数据处理模块调用相应的算法,生成数据处理结果,并将所述数据处理结果发送至所述客户端;
15.所述客户端还用于展示所述数据处理结果。
16.可选地,所述确定待集成算法,具体包括:
17.确定第一算法集合和第二算法集合;所述第一算法集合为用于材料数据分析和处理的算法,所述第二算法集合为通用领域数据分析和处理常用算法;
18.计算所述第一算法集合和所述第二算法集合的并集;
19.根据实际需求从所述并集中筛选得到所述待集成算法。
20.可选地,所述通用算法模板,具体包括:
21.所述通用算法模板定义了一般算法通用的数据处理过程,包括算法程序、算法配置信息、算法接口和算法程序运行环境;
22.基于所述算法通用模板的数据处理过程是:
23.所述后台服务模块向所述数据处理模块调用相应的算法,算法接口查询算法配置信息返回至所述后台服务模块;
24.所述后台服务模块根据所述算法配置信息,向所述数据处理模块发送数据处理所需要的数据和超参数,并请求进行数据处理;
25.所述算法接口根据所述算法配置信息调用算法程序,完成数据分析过程,并将得到的结果或模型返回至所述后台服务模块。
26.一种材料数据处理平台的运行方法,应用于上述的运行方法搭建的材料数据处理平台中,所述运行方法包括:
27.获取客户端上传的待处理数据集和请求算法列表;
28.根据所述待处理数据集和所述请求算法列表确定相应的算法,并提交数据处理任务;
29.处理所述数据处理任务,并将处理结果发送至所述客户端。
30.可选地,所述根据所述待处理数据集和所述请求算法列表确定相应的算法,并提交数据处理任务,之后还包括:
31.将所述数据处理任务加入到任务队列中。
32.一种材料数据处理平台的搭建系统,包括:
33.待集成算法确定模块,用于确定待集成算法;所述待集成算法为多个用于材料数据处理和分析的算法;所述算法包括:反向传播神经网络、径向基神经网络、支持向量机、经验模态分解、小波去噪、非局部均值、变分模态分解、余弦相似度、灰色关联度、肯德尔相关系数、皮尔逊相关系数、斯皮尔曼相关系数、等距特征映射、核主成分分析、局部线性嵌入、多维尺度分析、主成分分析、t分布随机邻域嵌入、基于遗传算法的支持向量回归、非等间隔非线性灰色贝努利模型、非等间隔灰色模型、自适应增强、梯度提升决策树、极端梯度提升、多元线性回归、随机森林回归、普通克里金插值法、基于加权特征证据融合的监督型分类模
型、基于软证据标签传播的半监督分类模型和基于信度峰的软标签传播聚类模型;
34.归类模块,用于根据预设算法分类规则将所述待集成算法中的各个算法进行归类,得到归类信息;
35.算法单元确定模块,用于根据通用算法模板设计所述待集成算法的算法程序、算法配置信息、算法接口和运行环境,得到算法单元;
36.平台确定模块,用于在云端服务器中部署后台服务模块和数据处理模块;在所述数据处理模块中部署所述算法单元;将所述算法配置信息、所述归类信息注册于所述云端服务器的数据库中,得到材料数据处理平台;
37.所述材料数据处理平台包括:客户端和云端服务器;
38.所述云端服务器中部署有后台服务模块和数据处理模块;
39.所述数据处理模块中部署有算法单元;
40.所述客户端用于获取使用者的数据处理任务,并将所述数据处理任务发送至所述后台服务模块;
41.所述后台服务模块用于根据所述数据处理任务向所述数据处理模块调用相应的算法,生成数据处理结果,并将所述数据处理结果发送至所述客户端;
42.所述客户端还用于展示所述数据处理结果。
43.可选地,所述待集成算法确定模块,具体包括:
44.算法集合确定单元,用于确定第一算法集合和第二算法集合;所述第一算法集合为用于材料数据分析和处理的算法,所述第二算法集合为通用领域数据分析和处理常用算法;
45.并集计算单元,用于计算所述第一算法集合和所述第二算法集合的并集;
46.筛选单元,用于根据实际需求从所述并集中筛选得到所述待集成算法。
47.一种材料数据处理平台的运行系统,应用于上述的运行方法搭建的材料数据处理平台中,包括:
48.客户端数据获取模块,用于获取客户端上传的待处理数据集和请求算法列表;
49.算法确定模块,用于根据所述待处理数据集和所述请求算法列表确定相应的算法,并提交数据处理任务;
50.处理模块,用于处理所述数据处理任务,并将处理结果发送至所述客户端。
51.可选地,所述运行系统还包括:
52.任务队列确定模块,用于在根据所述待处理数据集和所述请求算法列表确定相应的算法,并提交数据处理任务之后,将所述数据处理任务加入到任务队列中。
53.根据本发明提供的具体实施例,本发明公开了以下技术效果:
54.本发明公开了一种材料数据处理平台的搭建、运行方法及系统,搭建方法包括:确定待集成算法;根据预设算法分类规则将待集成算法中的各个算法进行归类,得到归类信息;根据通用算法模板设计待集成算法的算法程序、算法配置信息、算法接口和运行环境,得到算法单元;在云端服务器中部署后台服务模块和数据处理模块;在数据处理模块中部署算法单元;将算法配置信息、归类信息注册于云端服务器的数据库中,得到材料数据处理平台。本发明将材料领域进行数据处理的算法集成在一个平台上,弥补了材料领域算法集成的空白,提高了材料领域数据处理的通用性,提高了效率,便于科研人员的后续研究工
作。
附图说明
55.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
56.图1为本发明实施例提供的材料数据处理平台的搭建方法流程图;
57.图2为本发明实施例提供的材料数据处理平台的结构图;
58.图3为本发明实施例提供的材料数据处理平台的运行方法流程图;
59.图4为本发明实施例提供的材料数据处理平台的搭建系统结构图;
60.图5为本发明实施例提供的材料数据处理平台的运行系统结构图。
61.附图说明:1-客户端,2-云端服务器,21-后台服务模块,22-数据处理模块,23-客户端服务模块,24-数据库,221-算法单元,222-算法接口服务单元,223-任务调度服务单元。
具体实施方式
62.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
63.本发明的目的是提供一种材料数据处理平台的搭建、运行方法及系统,旨在弥补材料领域算法集成的空白,提高材料领域数据处理的通用性,提高效率,便于科研人员的后续研究工作,可应用于材料数据处理技术领域。
64.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
65.图1为本发明实施例提供的材料数据处理平台的搭建方法流程图,图2为本发明实施例提供的材料数据处理平台的结构图。如图1-2所示,本实施例中的一种材料数据处理平台的搭建方法,包括:
66.步骤101:确定待集成算法;待集成算法为多个用于材料数据处理和分析的算法。算法包括:反向传播神经网络、径向基神经网络、支持向量机、经验模态分解、小波去噪、非局部均值、变分模态分解、余弦相似度、灰色关联度、肯德尔相关系数、皮尔逊相关系数、斯皮尔曼相关系数、等距特征映射、核主成分分析、局部线性嵌入、多维尺度分析、主成分分析、t分布随机邻域嵌入、基于遗传算法的支持向量回归、非等间隔非线性灰色贝努利模型、非等间隔灰色模型、自适应增强、梯度提升决策树、极端梯度提升、多元线性回归、随机森林回归、普通克里金插值法、基于加权特征证据融合的监督型分类模型、基于软证据标签传播的半监督分类模型和基于信度峰的软标签传播聚类模型;。
67.步骤102:根据预设算法分类规则将待集成算法中的各个算法进行归类,得到归类信息;
68.步骤103:根据通用算法模板设计待集成算法的算法程序、算法配置信息、算法接口和运行环境,得到算法单元;
69.步骤104:在云端服务器中部署后台服务模块和数据处理模块;在数据处理模块中部署算法单元;将算法配置信息、归类信息注册于云端服务器的数据库中,得到材料数据处理平台;
70.材料数据处理平台包括:客户端和云端服务器;
71.云端服务器中部署有后台服务模块和数据处理模块;
72.数据处理模块中部署有算法单元、算法接口服务单元和任务调度服务单元;
73.客户端用于获取使用者的数据处理任务,并将数据处理任务发送至后台服务模块;
74.后台服务模块用于根据数据处理任务向数据处理模块调用相应的算法,生成数据处理结果,并将数据处理结果发送至客户端;
75.客户端还用于展示数据处理结果。
76.作为一种可选的实施方式,步骤101,具体包括:
77.确定第一算法集合和第二算法集合;第一算法集合为用于材料数据分析和处理的算法,第二算法集合为通用领域数据分析和处理常用算法;
78.计算第一算法集合和第二算法集合的并集;
79.根据实际需求从并集中筛选得到待集成算法。
80.作为一种可选的实施方式,通用算法模板,具体包括:
81.通用算法模板定义了一般算法通用的数据处理过程,包括算法程序、算法配置信息、算法接口和算法程序运行环境;
82.基于算法通用模板的数据处理过程是:
83.后台服务模块向数据处理模块调用相应的算法,算法接口查询算法配置信息返回至后台服务模块;
84.后台服务模块根据算法配置信息,向数据处理模块发送数据处理所需要的数据和超参数,并请求进行数据处理;
85.算法接口根据算法配置信息调用算法程序,完成数据分析过程,并将得到的结果或模型返回至后台服务模块
86.图3为本发明实施例提供的材料数据处理平台的运行方法流程图。如图3所示,一种材料数据处理平台的运行方法,包括:
87.步骤201:获取客户端上传的待处理数据集和请求算法列表;
88.步骤202:根据待处理数据集和请求算法列表确定相应的算法,并提交数据处理任务;
89.步骤203:处理数据处理任务,并将处理结果发送至客户端。
90.作为一种可选的实施方式,步骤202,之后还包括:
91.将数据处理任务加入到任务队列中。
92.图4为本发明实施例提供的材料数据处理平台的搭建系统结构图。如图4所示,一种材料数据处理平台的搭建系统,包括:
93.待集成算法确定模块301,用于确定待集成算法;待集成算法为多个用于材料数据
处理和分析的算法;算法包括:反向传播神经网络、径向基神经网络、支持向量机、经验模态分解、小波去噪、非局部均值、变分模态分解、余弦相似度、灰色关联度、肯德尔相关系数、皮尔逊相关系数、斯皮尔曼相关系数、等距特征映射、核主成分分析、局部线性嵌入、多维尺度分析、主成分分析、t分布随机邻域嵌入、基于遗传算法的支持向量回归、非等间隔非线性灰色贝努利模型、非等间隔灰色模型、自适应增强、梯度提升决策树、极端梯度提升、多元线性回归、随机森林回归、普通克里金插值法、基于加权特征证据融合的监督型分类模型、基于软证据标签传播的半监督分类模型和基于信度峰的软标签传播聚类模型。
94.归类模块302,用于根据预设算法分类规则将待集成算法中的各个算法进行归类,得到归类信息;
95.算法单元确定模块303,用于根据通用算法模板设计待集成算法的算法程序、算法配置信息、算法接口和运行环境,得到算法单元;
96.平台确定模块304,用于在云端服务器中部署后台服务模块和数据处理模块;在数据处理模块中部署算法单元;将算法配置信息、归类信息注册于云端服务器的数据库中,得到材料数据处理平台;
97.材料数据处理平台包括:客户端和云端服务器;
98.云端服务器中部署有后台服务模块和数据处理模块;
99.数据处理模块中部署有算法单元、算法接口服务单元和任务调度服务单元;
100.客户端用于获取使用者的数据处理任务,并将数据处理任务发送至后台服务模块;
101.后台服务模块用于根据数据处理任务向数据处理模块调用相应的算法,生成数据处理结果,并将数据处理结果发送至客户端;
102.客户端还用于展示数据处理结果。
103.作为一种可选的实施方式,待集成算法确定模块301,具体包括:
104.算法集合确定单元,用于确定第一算法集合和第二算法集合;第一算法集合为用于材料数据分析和处理的算法,第二算法集合为通用领域数据分析和处理常用算法;
105.并集计算单元,用于计算第一算法集合和第二算法集合的并集;
106.筛选单元,用于根据实际需求从并集中筛选得到待集成算法。
107.图5为本发明实施例提供的材料数据处理平台的运行系统结构图。如图5所示,一种材料数据处理平台的运行系统,包括:
108.客户端数据获取模块401,用于获取客户端上传的待处理数据集和请求算法列表;
109.算法确定模块402,用于根据待处理数据集和请求算法列表确定相应的算法,并提交数据处理任务;
110.处理模块403,用于处理数据处理任务,并将处理结果发送至客户端。
111.作为一种可选的实施方式,运行系统还包括:
112.任务队列确定模块,用于在根据待处理数据集和请求算法列表确定相应的算法,并提交数据处理任务之后,将数据处理任务加入到任务队列中。
113.具体的,材料数据处理平台包括:材料数据处理平台包括:客户端1和云端服务器2。
114.云端服务器2中部署有后台服务模块21和数据处理模块22。
115.数据处理模块22中部署有算法单元、算法接口服务单元和任务调度服务单元,通用算法模板通过算法单元221部署在数据处理模块22中。
116.客户端1用于获取使用者的数据处理任务,并将数据处理任务发送至后台服务模块21。
117.后台服务模块21用于根据数据处理任务向数据处理模块22调用相应的算法,生成数据处理结果,并将数据处理结果发送至客户端1。
118.客户端1还用于展示数据处理结果。
119.具体的,云端服务器2中还部署有客户端服务模块23;客户端服务模块23与后台服务模块21连接。
120.客户端服务模块23用于将客户端1获取的数据处理任务发送至后台服务模块21。
121.具体的,云端服务器2中还部署有数据库24;数据库24与后台服务模块21连接。
122.数据库24用于存储数据处理任务的相关信息;相关信息包括:数据处理任务的内容、相应的算法以及相应的数据处理结果。
123.具体的,数据处理模块22中还部署有算法接口服务单元222;算法接口服务单元222分别与后台服务模块21和算法单元221连接。
124.算法接口服务单元222用于根据后台服务模块21发送的数据处理任务向算法单元221调用相应的算法,并将调用的算法发送至后台服务模块21。
125.具体的,数据处理模块22中还部署有任务调度服务单元223;任务调度服务单元223分别与客户端服务模块23和算法接口服务单元222连接。
126.任务调度服务单元223用于将数据处理任务加入至任务队列,并按照任务队列将数据处理任务发送至算法接口服务单元222。
127.任务调度服务单元223还用于将数据处理结果发送至数据库24中。
128.具体的,算法单元221包括算法分类子单元;
129.算法分类子单元用于根据设定分类规则将算法进行分类。
130.具体的,客户端服务模块23通过http协议与后台服务模块21连接。
131.具体的,云端服务器2至少为一台。
132.具体的,材料领域数据处理平台搭建和运行的具体步骤如下:
133.s1:确定用于材料领域数据处理分析的算法作为需要集成的算法,定义通用算法模板,并根据通用算法模板设计算法程序及其运行环境,构成算法配置信息和算法环境。
134.本步骤根据材料领域的数据处理目标任务和专家经验,列举用于材料领域数据处理、分析、可视化的算法作为需要集成的算法,具体过程是:
135.s11:查阅材料领域教材、文献,获取材料领域常见数据处理目的和对应的常用算法,作为具体实施例,通过文献检索可知材料领域用于数据降维的常用算法为主成分分析(pca)、用于性能预测的常见算法为随机森林(rf)和支持向量机(svm)等,形成第一算法集合其中其中分别指从材料领域教材、文献中获取的算法pca、rf和svm,上角标a1和a2分别指该算法在材料领域中应用的数据降维和性能用测目的;
136.s12:查阅数据分析领域教材、综述性文献,获取数据分析常用算法,例如本实施例中通过计算机领域教材获取到svm、局部线性嵌入降维(lle)等,构成第二算法集合
其中,分别指从数据分析领域教材、综述性文献中获取到的svm、lle算法,上角标0表示该算法在数据分析的应用中常见;
137.s13:计算第三算法集合由材料领域专家根据集成平台开发的实际需求,从m中筛选需要集成的算法。在本实施例中,和算法具有材料领域应用背景,且在材料领域应用广泛、效果稳定,故保留;和实际均为svm算法,但算法的应用过程有材料领域背景可用于材料性能预测,故二者保留算法的应用过程有材料领域背景可用于材料性能预测,故二者保留虽是常见的数据降维算法,但实施例所述的集成平台主要面向材料性能分析,无需过多的数据降维算法,且该算法在材料领域的应用较少,操作人员学习较为困难,故舍弃。最终确定需要集成的算法为pca、rf、svm等,可表示为总算法集合
138.通用算法模板描述了算法程序的组成部分,包括算法程序、算法配置信息、算法接口,算法程序具有具体的运行环境,其中,具体的包括:
139.1、算法程序指实现算法功能的核心程序代码。
140.2、算法配置信息包括算法的可调超参数定义和程序入口定义。如果算法运行需要具体模型,算法配置信息则包括算法的可调超参数定义、模型定义、训练程序入口定义、测试程序入口定义和应用程序入口定义。可调超参数定义描述了运行算法所需要的超参数及其数据要求,模型定义描述了算法对数据处理后生成的模型文件类型与存储规范,训练程序入口定义描述了这一算法在训练模型时调用的接口信息,测试程序入口定义描述了这一算法在测试模型时调用的接口信息,应用程序入口定义描述了这一算法在应用模型时调用的接口信息。
141.作为具体实施例,依据通用算法模板设计pca和rf算法配置信息,pca算法属于无监督算法,运行时不需要具体模型,因此算法配置信息包括可调超参数定义和程序入口定义。可调超参数定义包含可调超参数和初始建议值。
142.程序入口定义为一段程序,可以通过算法接口调用,目的是使pca算法的程序调用过程适用于材料数据处理平台标准。
143.rf算法属于监督算法,对数据进行预测时需要模型。因此算法配置信息包括算法的可调超参数定义、模型定义、训练程序入口定义、测试程序入口定义和应用程序入口定义。
144.rf算法的模型定义为使用二进制编码保存rf生成的森林变量。
145.训练程序入口定义将rf算法的模型训练过程对材料数据处理平台进行了适配。
146.测试程序入口定义将rf算法调用训练好的模型,并对数据进行测试的过程对材料数据处理平台进行了适配。
147.应用程序入口定义将rf算法调用训练好的模型,并对数据直接进行预测的过程对材料数据处理平台进行了适配。
148.算法配置信息的作用是将各类算法的调用过程规范为材料数据处理平台标准的读取过程,提高材料数据处理平台开发代码的重用性。
149.3、算法接口将算法程序包装为可以被算法接口服务单元222调用的程序或服务,
由数据集输入模块、超参数输入模块、模型参数输入模块、运行结果输出模块、评价指标输出模块和运行信息通信模块组成,用于提供调用算法时所需要的数据集、超参数、模型参数,并回收运行结果、评价指标和运行信息。在本实施例中,算法接口将集成平台的各个算法程序包可执行程序,每个算法有相同的算法接口,接收算法接口服务单元222提供的数据集、超参数和模型参数等,利用相应的算法配置信息将上述数据和参数调用具体算法,并将运行结果、评价指标和运行信息等返回至算法接口服务单元222。
150.4、运行环境指支持算法程序运行的硬件、操作系统、支持库和虚拟环境信息。例如本实施例中,运行算法的硬件环境为8核心cpu*1、rtx3080ti gpu*1、32g内存,操作系统为centos,软件环境为python 3.7,通过anaconda管理不同算法的python环境。
151.5、各个算法的运行环境可以不同,算法接口与算法接口服务单元222通过通信规范连接,信息以特定方式编码传输,可实现算法在各自运行环境下与后台服务模块21的通信。本实施例中,由于算法接口被设计为可执行程序,算法接口与算法接口服务单元222通过进程通信方式传输信息,若算法接口被设计为服务,算法接口与算法接口服务单元222则可以通过http协议,例如post方式传输信息。
152.s2:在至少一台云端服务器2中构建算法集成框架,包括客户端服务模块23、后台服务模块21。
153.客户端1服务模块为操作人员所使用的客户端1提供可视化界面和人机交互能力,并将操作人员的操作指令通过通讯协议发送至后台服务模块21,并呈现后台服务模块21产生的结果。在本实施例中使用tomcat作为客户端服务模块23,发布客户端1,操作人员在客户端1的网页浏览器中输入网址,通过互联网服务即可显示操作界面;操作人员操作可视化界面发送指令时,客户端服务模块23将指令包装为get/post参数,并向后台服务模块21发送基于http协议的get/post请求,获得响应后,呈现于客户端1中。
154.在上述过程中,后台服务模块21响应客户端服务模块23的get/post请求时,根据get/post请求中的参数,解析具体指令,通过对文件管理服务、算法接口服务单元222、任务调度服务单元223和数据库24的一系列确定操作的组合,得到操作结果并返回至客户端服务模块23。具体响应过程,由s5-s9的实施例描述。
155.云端服务器2的数量影响到提供服务的能力和成本,具体确定公式为:
156.n=ceil(max(k
×
peak_qps/single_qps,1))
157.其中,ceil为向上取整运算;max为最大值运算,即取集合中的最大元素;n为云端服务器2的数量;k为大于1的系数,可为云端服务器2数量提供余量;peak_qps为峰值时间后台服务模块21每秒请求数;single_qps为单台机器能承受的最大每秒请求数。n台服务器能够满足访问峰值时响应操作人员的访问请求,并保持具有一定的余量,避免了因服务器数据过多导致的管理效率低下和资源浪费。例如在本实施例中,k取1.5,peak_qps取7.5,single_qps取5,根据公式计算n为3,故将算法集成框架部署在3台服务器上为宜。
158.s3:将算法程序部署于云端服务器2中,并将算法配置信息、云端服务器2地址注册于后台服务模块21的数据库24中;
159.具体过程为:
160.根据第三算法集合m中各个算法的运行环境要求,将算法部署于满足运行环境要求的至少一台云端服务器2中,并在部署有算法的云端服务器2上部署算法接口服务单元
222。每台云端服务器2可部署一种算法或多种算法,某一算法也可以部署于一台或多台云端服务器2上。在本实施例中,各个算法的运行环境要求为centos 7操作系统、python=3.7和一系列开源依赖库。由于实施例中的3台云端服务器26均为centos 7系统,于是可在云端服务器26上配置python和相关运行环境,为每台服务器均部署pca、rf、svm算法程序。
161.s32:各算法的配置信息、算法环境信息和算法在云端服务器2中的算法接口信息注册于后台服务模块21数据库24中。
162.s4:按预设算法分类规则对各个算法进行归类,将归类信息注册于后台服务模块21的数据库24中,供操作人员获取所需算法,最终形成材料数据处理平台的框架。
163.所属算法分类规则的维度包括:根据算法在材料数据处理分析中所处的阶段,将算法分为滤波、插值、降维、分类、聚类、建模、可视化和其他;根据算法是否需要训练,分为无需训练算法和需要训练算法,其中需要训练算法根据训练时输入数据是否需要标签,分为监督算法、半监督算法、无监督算法;根据算法的适用范围,分为材料领域算法和通用算法。其中,具体包括:
164.算法分类规则是一种多维度的算法分类规则,将对具体算法形成多标签描述。对于一种算法按照某一算法分类规则分类属于多种算法类别的情况,应参考算法在材料领域教材、文献和工程实际中的常见应用,为算法记录算法分类标签,当有多种材料领域应用时,应同时记录所有常见标签。对于算法mi在分类维度的具体分类过程为:
165.其中,ds表示分类维度da中的一个类别,d(m)表示算法m的类别是d,add(m,d)表示为算法m添加标签d。
166.在实施例中,经过上述过程,可推出pca算法的标签为“降维”、“无需训练”、“无监督算法”、“通用算法”;rf算法为“分类、建模”、“需要训练”、“监督算法”、“通用算法”;svm算法为“分类、建模”、“需要训练”、“监督算法”、“通用算法”。
167.s5:算法集成框架获取操作人员上传的待处理的材料领域数据集,初步处理后存储至云端服务器2硬件存储器;具体包括:
168.s51:客户端服务模块23向客户端1提供可视化界面,操作人员通过客户端1设备操作可视化界面上传待处理数据集文件。
169.在本实施例中,数据集文件及有关信息通过post协议传至后台服务模块21。
170.s52:后台服务模块21对数据集文件进行重命名、格式转换、空白格识别和列识别等初步处理后将数据集文件通过文件管理服务保存至云端服务器2的硬件存储器,并将数据集文件及其有关信息注册至数据库24。
171.在本实施例中,后台服务模块21根据文件上传的时间戳和随机数对文件重新命名,以保证文件名的唯一性,并将材料数据处理平台所支持的csv、xls、json、xml等数据格式解码并转化为csv格式,同时对数据输入输出列、空白单元格进行标记,校验数据合法之后,通过数据文件管理服务保存至云端服务器2,并将数据集文件及其有关信息注册至数据库24。
172.s6:材料数据处理平台通过操作人员确定具体运行算法和算法的信息,提交数据处理任务,具体包括:
173.s61:操作人员通过客户端1请求算法列表,后台服务模块21获取所有集成算法的信息,返回至客户端1以可视化的方式呈现。
174.s62:操作人员通过客户端1的可视化界面,浏览所有算法,结合数据集及数据处理目标,根据算法分类标签筛选,选择算法。
175.在本实施例中,客户端1的可视化界面将算法按照不同分类维度和分类标签展示算法的信息,方便操作人员选择合适的算法。例如操作人员需要完成钢q235大气腐蚀速率与环境因素的建模任务时,根据任务目标和数据集demo.csv的信息,可筛选“建模”、“监督算法”标签,得到rf和svm等算法,并了解到这两种算法属于“需要训练”算法,可以通过浏览算法原理进一步确定合适的算法或对这几种算法依次进行实验;
176.s63:后台服务模块21根据操作人员所选算法,查询该算法配置信息,按照超参数生成规则,生成初始算法超参数表,通过可视化界面由操作人员进行调整。如果算法运行需要模型,操作人员通过客户端1的可视化界面,选择训练模型,或者选择测试模型、应用并选择之前训练的模型,具体包括:
177.s631:超参数生成规则具体为:后台服务模块21通过算法接口服务单元222查询算法的可调超参数定义,解析后生成可调超参数模板,并根据算法配置信息为每个可调超参数生成初始参数,编码为初始超参数表。
178.s632:操作人员调整超参数表中的超参数时,客户端服务模块23或后台服务模块21根据超参数模板进行校验,如果操作人员提交的每个超参数与超参数模板中的对应超参数数据类型相同,则校验通过继续进行,如果不同则校验不通过,给出建议修改提示。
179.在本实施例中,操作人员根据实际情况将超参数修改为4,并通过post协议传回后台服务模块21,后台服务模块21校验数据类型为int型,则校验通过,否则将提示操作人员提供正确的超参数值。
180.s64:操作人员通过客户端1的可视化界面确认所选数据集、算法信息和模型信息并确认算法超参数信息后,提交数据处理任务。
181.s7:后台服务模块21接收数据处理任务并加入任务队列,具体包括:
182.s71:后台服务模块21获取操作人员所选算法、数据集、超参数表,如果算法需要模型则还包括模型后,根据算法通过算法接口服务单元222查询算法配置信息、算法环境信息和算法接口信息,获得任务运行所需的入口、环境信息。
183.在本实施例中,后台服务模块21通过post协议获取操作人员所选算法、超参数表,并获取数据集。
184.s72:后台服务模块21初始化算法并提交数据处理任务至任务调度服务单元223,数据处理任务加入任务队列。
185.在本实施例中,任务队列为一列表数据,每个任务通过数据集、超参数、算法接口、算法环境、配置信息描述。
186.s8:任务调度服务单元223启动任务队列任务,并保存数据处理结果,具体包括:
187.s81:任务调度服务单元223监控各云端服务器2资源占用情况,并根据任务调度规则,有序启动任务队列任务,将任务提交至算法接口服务单元222,具体包括:
188.任务调度规则综合考虑服务器运行压力、任务优先级与任务运行效率,具体规则如下:
189.s811:根据每台算法云端服务器2性能,生成一个在线任务池,记录最大任务运行数tmi。
190.tmi=ceil(max(number_cpui×
(wait/compute 1),1))
191.其中,i指第i台算法云端服务器;ceil()为向上取整运算;max()为最大值运算,即取集合中的最大元素;number_cpu指云端服务器的cpu核心数量;指云端服务器各算法的加权平均任务调度等待时间,其中m为云端服务器中注册的算法总数量,pj为第j个算法的加权系数,可使用该算法的任务调用概率,为第j个算法的调度等待时间;指云端服务器各算法的加权平均计算时间,其中m为云端服务器中注册的算法总数量,pj为第j个算法的加权系数,可使用该算法的任务调用概率,为第j个算法的计算时间。
192.在本实施例中,一共使用了三台算法云端服务器2,每台云端服务器2配置相同,部署的算法相同,可以看作服务器负载相似,故为每台云端服务器2均生成一个在线任务池,其形式与任务队列相似。根据服务器核心数为8,加权平均任务调度等待时间为0.8秒,各算法的加权平均计算时间为7秒,最大任务运行数为9;
193.s812:首先查看各云端服务器2的在线任务池是否有空闲,如果无空闲,则转至步骤s813;否则有空闲,如果任务队列为空,则等待,并持续检查任务队列,否则任务队列不为空,则从任务队列中,按照任务优先级和任务加入任务队列的先后顺序,遍历任务队列列表,若出现一个任务可以在任务池有空闲的云端服务器2运行时,通过算法接口服务单元222将数据处理任务发送至云端服务器2的在线任务池,若遍历任务队列列表后均无算法能够在任务池有空闲的云端服务器2运行,则转至步骤s813;
194.在本实施例中,首先查看各云端服务器2的在线任务池是否有空闲,如果无空闲,则转至步骤s813,否则,
195.若此前没有操作人员提交数据处理任务,任务队列为空,则应当持续检查任务队列,直至任务队列不为空;此时,当某一操作人员将pca数据处理任务提交至后台服务模块21,并在步骤s7中加入到任务队列,说明任务队列不为空,则按照任务加入任务队列的顺序遍历任务队列列表,发现pca算法可以在三台云端服务器2的任一台上运行,且存在一台云端服务器2的任务池任务数小于最大任务运行数,则将该任务从任务队列中取出,加入到该云端服务器2的任务池中;若云端服务器2的任务池任务数都不小于最大任务运行数,则转至步骤s813。
196.s813:检查每台算法云端服务器2性能。如果算法服务器剩余性能低于5%,则将该服务器任务池最大任务运行数临时降为目前运行的任务数量,不再允许加入新任务,当服务器剩余性能恢复时,恢复初始服务器任务池最大任务运行数。转至步骤s812。
197.在本实施例中,依次检查三台服务器性能,指标为cpu占用率、gpu占用率和内存占用大小,当剩余综合性能低于5%,则将该服务器任务池最大任务运行数临时降为目前运行的任务数量,当服务器剩余性能恢复时恢复初始服务器任务池最大任务运行数。转至步骤s812。
198.s814:在执行步骤s812-s813的同时,当云端服务器2在线任务池不为空时,将任务提交至算法服务接口,开启新线程执行该任务,当任务执行完成后,将任务从在线任务池中取出。
199.s82:算法接口服务单元222根据算法环境信息,配置系统运行环境,加载数据集、参数表,如果算法需要模型,则加载模型,通过算法接口启动算法入口程序,并将算法运行状态和最终运行结果返回至后台服务模块21。
200.在本实施例中,算法接口服务单元222根据算法环境信息,通过anaconda配置程序运行虚拟环境,并加载数据集,通过与算法接口通信,传输超参数信息,并启动pca算法程序。程序运行结束后,运行结果通过算法接口返回至算法接口服务单元222,被后台服务模块21接收。
201.s83:后台服务模块21获取算法运行状态和算法运行结果,将任务运行信息注册至数据库24,并通过文件管理服务将算法运行结果存储至装置的硬件存储器并注册至数据库24。
202.后台服务模块21获取到算法运行状态,根据运行状态可判断算法运行成功,将算法运行结果保存为result.csv,并将信息注册于数据库24中。
203.s9:操作人员通过客户端1的可视化界面,查询提交的算法任务,并获取结果。
204.在本实施例中,操作人员通过客户端1操作,发出查看本次数据处理的指令,指令通过post请求传至后台服务模块21,后台服务模块21查询本次数据处理的结果,并响应该访问请求,客户端服务模块23将数据处理结果进行渲染,并最终在客户端1实现可视化展示。操作人员亦可以通过客户端1下载到数据处理结果文件或报告。
205.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
206.本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的装置及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献