CN111708760A - 模型迁移部署方法、装置、电子设备及存储介质 - Google Patents
模型迁移部署方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111708760A CN111708760A CN202010556770.XA CN202010556770A CN111708760A CN 111708760 A CN111708760 A CN 111708760A CN 202010556770 A CN202010556770 A CN 202010556770A CN 111708760 A CN111708760 A CN 111708760A
- Authority
- CN
- China
- Prior art keywords
- model
- node
- data
- prediction
- script
- 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.)
- Granted
Links
Images
Classifications
-
- 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/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- 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/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种模型迁移部署方法、装置、电子设备及存储介质,涉及数据挖掘与迁移技术领域。所述方法包括:基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点;基于数据持久化获取数据处理节点中第一训练脚本输出的数据处理规律模型对应的第一数据模型和预测模型节点中第二训练脚本输出的机器学习模型对应的第二数据模型;将第一训练脚本替换为调用第一数据模型的第三脚本,获得替换数据处理节点;将第二训练脚本替换为调用第二数据模型的第四脚本,获得替换预测模型节点;将输入源节点、替换数据处理节点和替换预测模型节点作为迁移模型部署在目标平台上。
Description
技术领域
本申请涉及数据挖掘与迁移技术领域,具体而言,涉及一种模型迁移部署方法、装置、电子设备及存储介质。
背景技术
随着企业的数字化转型越来越普及,不再满足于建立机器学习模型,而更关注于把该模型部署应用到新业务中,来对新的业务数据的结果进行预测。把通过机器学习算法创建出来的机器学习模型部署于实际应用业务的平台中来对新数据结果进行预测的行为,一般称之为算法模型的跨平台部署。
现有的算法模型的跨平台部署方案在使用机器学习模型对新数据的结果预测之前,构建新数据使用的数据格式处理流程复杂,且构建新数据使用的数据格式与所需要的数据格式不一致,从而导致模型预测准确率低的问题。
发明内容
有鉴于此,本申请实施例的目的在于提供一种模型迁移部署方法、装置、电子设备及存储介质,以改善现有技术中存在的构建新数据使用的数据格式处理流程复杂、模型预测准确率低的问题。
本申请实施例提供了一种模型迁移部署方法,所述方法包括:基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,所述数据处理节点包括第一训练脚本和第一预测脚本,所述预测模型节点包括第二训练脚本和第二预测脚本,所述第一训练脚本用于获取对所述输入源节点的数据进行处理的数据处理规律模型,所述第一预测脚本用于采用所述数据处理规律模型对数据进行处理以获得规范数据,所述第二训练脚本用于基于所述规范数据获得的训练样本构建机器学习模型,所述第二预测脚本用于采用所述机器学习模型进行预测;基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型;将所述第一训练脚本替换为调用所述第一数据模型的第三脚本,获得替换数据处理节点;将所述第二训练脚本替换为调用所述第二数据模型的第四脚本,获得替换预测模型节点;将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上。
在上述实现方式中,将待迁移模型的整体模型创建及预测流程整体迁移,提高了迁移后模型的完整性和预测准确性,同时通过数据持久化使新数据的数据格式与数据挖掘流程中的数据一致,保证机器学习模型对新数据的预测结果不会出错,从而简化了数据处理流程,并进一步提高了迁移后模型的准确性。
可选地,所述基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,包括:采用树结构遍历所述工程节点文件,获取所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
在上述实现方式中,采用树结构遍历工程节点文件确定待迁移模型的节点,能够保证待迁移模型的各部分数据获取准确性和完整性。
可选地,所述采用树结构遍历所述工程节点文件,获取所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点,包括:采用树结构遍历逆向拆分所述工程节点文件,获得所述待迁移模型的逆向全流程;将所述逆向全流程中的所有节点反序排列后,获取符合节点执行顺序的所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
在上述实现方式中,采用逆向全流程的树结构遍历拆分,能够获得待迁移模型的所有节点,并区分其分支,能够更加精确地获取需要的预测模型,提高迁移准确率。
可选地,所述基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型,包括:基于数据持久化将所述数据处理规律模型转换为所述第一数据模型;基于数据持久化将所述机器学习模型转换为所述第二数据模型;采用与所述工程节点文件对应的模型保存模块将所述第一数据模型和所述第二数据模型保存在指定目录下,以供所述替换数据处理节点从所述指定目录调用所述第一数据模型,以及所述替换预测模型节点从所述指定目录调用所述第二数据模型。
在上述实现方式中,基于数据持久化对数据处理规律模型和机器学习模型进行转换,以供迁移后的整体模型进行调用,避免重新进行模型训练,同时提高了后续新输入数据与数据挖掘流程中的数据一致性,提高了新模型的预测准确性。
可选地,所述数据处理节点用于进行标签预处理和/或缺失值处理。
在上述实现方式中,通过数据处理节点对数据进行标签预处理和/或缺失值处理,提高了模型输入数据的准确率。
可选地,所述将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上,包括:基于所述输入源节点、所述替换数据处理节点和所述替换预测模型节点和所述节点执行顺序生成所述迁移模型的控制文件;将所述控制文件发送至所述目标平台的执行环境中完成部署。
在上述实现方式中,将各节点对应的控制文件部署至对应的执行环境中,保证模型迁移的整体性。
可选地,所述将所述控制文件发送至所述目标平台的执行环境中完成部署,包括:基于RESTFUL框架将所述控制文件打包成应用程序接口服务;将所述应用程序接口服务部署到所述目标平台的所述执行环境中完成部署。
在上述实现方式中,把预测模型以及其相关的全流程部署为接口服务,实现了预测模型的跨平台完整迁移,且更加方便调用。
本申请实施例还提供了一种模型迁移部署装置,所述模型迁移部署装置包括:节点确定模块,用于基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,所述数据处理节点包括第一训练脚本和第一预测脚本,所述预测模型节点包括第二训练脚本和第二预测脚本,所述第一训练脚本用于获取对所述输入源节点的数据进行处理的数据处理规律模型,所述第一预测脚本用于采用所述数据处理规律模型对数据进行处理以获得规范数据,所述第二训练脚本用于基于所述规范数据获得的训练样本构建机器学习模型,所述第二预测脚本用于采用所述机器学习模型进行预测;模型转换模块,用于基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型;第一替换模块,用于将所述第一训练脚本替换为调用所述第一数据模型的第三脚本,获得替换数据处理节点;第二替换模块,用于将所述第二训练脚本替换为调用所述第二数据模型的第四脚本,获得替换预测模型节点;部署模块,用于将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上。
在上述实现方式中,将待迁移模型的整体模型创建及预测流程整体迁移,提高了迁移后模型的完整性和预测准确性,同时通过数据持久化使新数据的数据格式与数据挖掘流程中的数据一致,保证机器学习模型对新数据的预测结果不会出错,从而简化了数据处理流程,并进一步提高了迁移后模型的准确性。
可选地,所述节点确定模块具体用于:采用树结构遍历所述工程节点文件,获取所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
在上述实现方式中,采用树结构遍历工程节点文件确定待迁移模型的节点,能够保证待迁移模型的各部分数据获取准确性和完整性。
可选地,所述节点确定模块具体用于:采用树结构遍历逆向拆分所述工程节点文件,获得所述待迁移模型的逆向全流程;将所述逆向全流程中的所有节点反序排列后,获取符合节点执行顺序的所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
在上述实现方式中,采用逆向全流程的树结构遍历拆分,能够获得待迁移模型的所有节点,并区分其分支,能够更加精确地获取需要的预测模型,提高迁移准确率。
可选地,所述模型转换模块用于:基于数据持久化将所述数据处理规律模型转换为所述第一数据模型;基于数据持久化将所述机器学习模型转换为所述第二数据模型;采用与所述工程节点文件对应的模型保存模块将所述第一数据模型和所述第二数据模型保存在指定目录下,以供所述替换数据处理节点从所述指定目录调用所述第一数据模型,以及所述替换预测模型节点从所述指定目录调用所述第二数据模型。
在上述实现方式中,基于数据持久化对数据处理规律模型和机器学习模型进行转换,以供迁移后的整体模型进行调用,避免重新进行模型训练,同时提高了后续新输入数据与数据挖掘流程中的数据一致性,提高了新模型的预测准确性。
可选地,所述数据处理节点用于进行标签预处理和/或缺失值处理。
在上述实现方式中,通过数据处理节点对数据进行标签预处理和/或缺失值处理,提高了模型输入数据的准确率。
可选地,所述部署模块具体用于:基于所述输入源节点、所述替换数据处理节点和所述替换预测模型节点和所述节点执行顺序生成所述迁移模型的控制文件;将所述控制文件发送至所述目标平台的执行环境中完成部署。
在上述实现方式中,将各节点对应的控制文件部署至对应的执行环境中,保证模型迁移的整体性。
可选地,所述部署模块具体用于:基于RESTFUL框架将所述控制文件打包成应用程序接口服务;将所述应用程序接口服务部署到所述目标平台的所述执行环境中完成部署。
在上述实现方式中,把预测模型以及其相关的全流程部署为接口服务,实现了预测模型的跨平台完整迁移,且更加方便调用。
本申请实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器读取并运行所述程序指令时,执行上述任一实现方式中的步骤。
本申请实施例还提供了一种可读取存储介质,所述可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述任一实现方式中的步骤。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种模型迁移部署方法的流程示意图。
图2为本申请实施例提供的一种待迁移模型的构建过程和迁移后预测模型的应用过程的对比示意图。
图3为本申请实施例提供的一种包含逻辑回归和随机森林分类器的待迁移模型示意图。
图4为本申请实施例提供的一种模型迁移部署装置的模块示意图。
图标:20-模型迁移部署装置;21-节点确定模块;22-模型转换模块;23-第一替换模块;24-第二替换模块;25-部署模块。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行描述。
经本申请人研究发现,现有的算法模型的跨平台部署方法主要有两种:通过编程的手段对创建出来的模型打包成机器学习模型文件,新的数据按照一定的数据格式处理过后再输入模型中,根据该模型输出相应的预测结果;或者通过编程的手段对创建出来的模型打包成机器学习模型文件后再进一步把该文件打包成接口服务,业务应用平台再调用接口服务来对输入数据输出相应的预测结果。因为一般意义的上述数据挖掘模型迁移用于挖掘平台上的机器学习成果落地,仅仅是把所创建的机器学习模型进行部署。现有同类技术方案主要存在问题包括:在使用机器学习模型对新数据的结果预测之前,构建新数据使用的数据格式与所需要的数据格式不一致,使用模型预测结果出错;构建新数据使用的数据格式需要进行的数据处理过程较为复杂,开发部署人员没有参与过程,构建准确的数据格式需要较大的工作量。因此,原来机器学习模型的平台化部署只把模型的构建结果进行部署而忽略前面的数据处理环节,并且因为数据挖掘全流程的复杂性,没有很好地体现全流程,所以存在无法进一步地对数据挖掘全流程成果进行跨平台的迁移发布的问题。
为了解决上述问题,本申请实施例提供了一种模型迁移部署方法,本实施例中的模型迁移部署方法可以用于但不限于数据挖掘流程,具体包括数据挖掘流程中的数据处理模型和预测模型等,从而实现对数据挖掘流程中所有模型的完整迁移。请参考图1,图1为本申请实施例提供的一种模型迁移部署方法的流程示意图,该方法的具体步骤可以如下:
步骤S11:基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点。
首先,本实施例中的模型迁移可以视为数据挖掘平台进行,是一种把数据挖掘过程平台化使之成为软件的技术,通过对各种数据处理以及机器学习算法的封装为组件来实现用户的算法模型迁移的数据挖掘工程。数据挖掘平台各不相同,但都同样为了实现数据挖掘的目的。所以基础架构中必须有对应这数据挖掘全流程中步骤的部分。首先,对应数据挖掘流程中的数据接入步骤,平台必须包含一个接入数据源的部分。其次,接入数据之后从数据处理直到模型评估步骤,需要一个实现整个过程的环境用来放置各种组件,然后迁移实现。然后为了实现机器学习模型部署,平台还对应包含这模型部署发布的部分。最后为了实现用户也能参与底层算法的封装以及帮助用户快速入门平台,平台还可以提供自定义组件以及帮助入门的部分。
待迁移模型在迁移后成为目标平台上的预测模型,下面请参考图2,图2为本申请实施例提供的一种待迁移模型的构建过程和迁移后预测模型的应用过程的对比示意图,其中左侧为待迁移模型构建过程,右侧为迁移后预测模型的应用过程,对待迁移模型中的各个节点进行说明:
以贷款风险预测案例为例,数据源节点对应的数据接入代表把对应的数据源例如excel、txt等文件形式或者Oracle、Hive等数据库数据源接入目标平台,对应贷款风险预测接入的就是历史每一笔贷款的逾期结果以及贷款对应的属性。可选地,本实施例的模型迁移部署方法除了应用于贷款风险预测模型,还可以应用于商品销量、房价预测等任意预测模型。
数据处理节点用于对数据进行必要的处理来满足构建机器学习模型的需要,通常来说包含标签处理、数据的清理、转换操作以及数据集划分操作。具体地,标签处理可以采用LabelEncoder、OneHotEncoder等方式对数据属性进行标记。数据的清理包含填充数据中的不完整部分、去除数据中的违反一般规律的噪声数据以及纠正业务上明显的错误数据。填充数据不完整部分即为填补数据中的一些缺失值,例如这里贷款人的个人信息中的学历、性别这些属性因为采集的关系被缺失。而噪声数据就是一些不符合一般业务的异常数据,例如身高5米的贷款人等,而业务上明显的错误数据则是类似于像贷款人所属地为“广东市”这种违反常识的数据。
数据划分节点指的是通过随机的方法对数据样本划分为训练集和测试集,训练集指拿来构建模型的样本,而测试集则用来对这个构建出来的模型的效果进行测试。可选地,一般情况下可以随机划分70%作为训练样本,30%作为测试样本。在贷款风险预测案例中就随机选择70%的贷款数据来作为训练样本,30%的贷款数据作为测试样本。
预测模型节点即根据处理并划分好的训练样本进行机器学习构建,可选地,机器学习模型有分类、回归、聚类、降维、时间序列等等大类分别用来解决对应的业务目标。预测模型节点还可以包含模型评估,主要基于测试样本,用一些统计指标来评估模型在实际生产中的效果。统计指标涉及得比较多,常用的有混淆矩阵、准确率、查全率等等。准确率指的是模型预测结果在实际情况中的命中情况。待迁移模型的迁移部署只是最后对已经构建好的机器学习模型进行部署,用于实际生产数据的预测,不需要再进行训练和评估等。
可选地,本实施例中的工程节点文件可以是待迁移模型在搭建过程中生成的Json文件,Json文件中记录了工程中所有节点的信息,一般可以包括输入源节点、数据处理节点和预测模型节点等。
进一步地,该工程节点文件中可以以树结构的形式存储,其中每个节点对应树结构中的子节点。
可选地,本实施例中的输入源对应的数据接入步骤可以包括:把指定文件格式的数据源或者数据库数据源接入目标平台。其中,指定文件格式可以包括excel、txt等,数据库数据源的文件形式可以包括Oracle、Hive等。
应当理解的是,在目标平台需要从其他渠道进行数据接入,与模型迁移前的输入源不同时,该指定文件格式的数据源或者数据库数据源则对应需要进行数据接入的其他渠道。
通过以上的说明能够看出机器学习模型的构建,最后是用来对目标平台的新数据进行预测,而只要涉及到在训练样本中获得的数据规律在新数据中复用这种情况的数据处理、构建机器学习模型两个步骤的节点都需要包含训练脚本和预测脚本,因此数据处理节点和预测模型节点均包含训练脚本和预测脚本。
具体地,数据处理节点包括第一训练脚本和第一预测脚本,预测模型节点包括第二训练脚本和第二预测脚本,第一训练脚本用于获取对输入源节点的数据进行处理的数据处理规律模型,第一预测脚本用于采用数据处理规律模型对数据进行处理以获得规范数据,第二训练脚本用于基于规范数据获得的训练样本构建机器学习模型,第二预测脚本用于采用机器学习模型进行预测。
可选地,在数据处理节点的对应步骤中,结合贷款风险预测案例来说,第一训练脚本能输出如像缺失值处理、归一化这些从训练样本中获取的数据处理规律沿用到预测数据中。更具体地,缺失值处理步骤用平均值来填充缺失值的话,就需要使用训练样本中的平均值,那么预测脚本就可以使用这个平均值来填充新数据。而像均值方差归一化这样的操作,均值方差归一化转化中使用到数据的均值和方差,而在新数据实际预测生产中,到均值方差归一化这一步骤时,第一预测脚本不需要重新执行均值方差归一化的操作,而是直接使用第一训练脚本输出的均值和方差,即训练得到的数据规律。而在预测模型节点的构建机器学习模型步骤中,第二训练脚本负责构建训练样本对应的机器学习模型,第二测试脚本负责沿用构建出来的机器学习模型进行预测。
可选地,本实施例中步骤S11可以具体基于树结构遍历进行工程节点文件的解析,包括:采用树结构遍历工程节点文件,获取待迁移模型的输入源节点、数据处理节点和预测模型节点。
具体地,由于待迁移模型作为数据挖掘对象,可能基于多个分类器包含多个预测分支,本申请可以基于树结构逆向遍历选择需要的预测分支进行模型迁移。请参考图3,例如其包括逻辑回归和随机森林分类器两个预测分支,但是从输入源节点至数据划分节点为共用节点,而数据处理节点包括标签处理子节点和缺失值处理子节点,预测模型节点包括逻辑回归模型子节点和随机森林分类器子节点(两个子节点分别包括模型构建和评估流程),则可以使输入源节点编号为1,标签处理子节点的编号为2,缺失值处理子节点的编号为3,数据划分节点的编号为4,逻辑回归模型子节点编号为5,根据上述步骤从树结构末端读取逆向全流程,先存储编号5,再存储编号4,以此类推得到5-4-3-2-1的编号结构,将该编号结构存储为Json结构,再通过Json编程语言读取Json结构,把编号结构按照从小到大排列为1-2-3-4-5,再将该正序编号结构存储入数据库中。就能获得实际预测过程需要执行的节点顺序1-2-3-4-5,即输入源节点-标签处理子节点-缺失值处理子节点-数据划分子节点-逻辑回归模型子节点。但在实际预测过程中数据集只有需要预测的新数据,所以在执行实际预测过程中,不需要执行数据集划分的操作,则本实施例中不需要对数据划分节点4进行迁移。
步骤S12:基于数据持久化获取数据处理规律模型对应的第一数据模型和机器学习模型对应的第二数据模型。
在将待迁移模型的数据挖掘中获得的训练脚本输出的数据规律持久化后,才能使迁移后的预测模型采用引用训练脚本的输出结果。数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称。数据模型可以是任何数据结构或对象模型,存储模型可以是关系模型、XML、二进制流等。数据持久化的优点有:程序代码重用性强,即使更换数据库,只需要更改配置文件,不必重写程序代码;业务逻辑代码可读性强,在代码中不会有大量的SQL语言,提高程序的可读性;持久化技术可以自动优化,以减少对数据库的访问量,提高程序运行效率。因此本实施例采用数据持久化进行对训练脚本的输出结果进行沿用。
具体地,本实施例中的转换依靠某种编程语言实现,在实际工程中python语言较为常用,以python语言为例能够通过python的第三方模块joblib把第一训练脚本的训练输出结果转换为第一数据模型保存在指定目录下,将第二训练脚本的训练输出结果转换为第二数据模型保存在指定目录下,供迁移后的预测模型调用。应当理解的是,python只是其中一种实现语言,实际实现语言取决于需要迁移到的目标盘平台中使用到的编程语言。
具体地,步骤S12可以包括如下步骤:
步骤S121:基于数据持久化将数据处理规律模型转换为第一数据模型。
步骤S122:基于数据持久化将机器学习模型转换为第二数据模型。
步骤S123:采用与工程节点文件对应的模型保存模块将第一数据模型和第二数据模型保存在指定目录下,以供替换数据处理节点从指定目录调用第一数据模型,以及替换预测模型节点从指定目录调用第二数据模型。
由于待迁移模型在迁移至目标平台后只需要进行新数据的预测工作,不需要再进行模型训练、数据集划分,因此本实施例后续将获取的待迁移模型中包括训练和预测过程中的训练脚本和预测脚本区分开,在数据处理节点和预测模型节点将训练脚本替换为预测脚本,具体步骤可见步骤S13和步骤S14。
步骤S13:将第一训练脚本替换为调用第一数据模型的第三脚本,获得替换数据处理节点。
步骤S14:将第二训练脚本替换为调用第二数据模型的第四脚本,获得替换预测模型节点。
应当理解的是,在步骤S13和步骤S14中的第三脚本和第四脚本在进行第一数据模型或第二数据模型的调用时,可以是采用joblib把保存在指定目录下的第一数据模型和第二数据模型导入转换为内存模型,从而实现对数据处理规律模型和机器学习模型的沿用。
步骤S15:将输入源节点、替换数据处理节点和替换预测模型节点作为迁移模型部署在目标平台上。
具体地,步骤S15可以包括如下子步骤:
步骤S151:基于输入源节点、替换数据处理节点和替换预测模型节点和节点执行顺序生成迁移模型的控制文件。
步骤S152:将控制文件发送至目标平台的执行环境中完成部署。
部署的操作具体为动态生成控制文件,在生成控制文件的过程中,发送数据挖掘全流程中每个节点的执行代码到执行环境中。控制文件主要控制整个预测过程的实际执行,包括对执行代码的执行顺序。而执行代码的主体为数据挖掘过程中对应节点的代码,每个节点中包含训练脚本的节点则替换为预测脚本。而这个数据挖掘全流程就是节点顺序,例如本实施例中上述的1-2-3-5,而控制文件就同时记录每个节点对应的执行代码的执行顺序。最后控制文件也发送至目标平台的执行环境中。
进一步地,针对步骤S152,其具体可以包括:基于RESTFUL框架将控制文件打包成应用程序接口服务;将应用程序接口服务部署到目标平台的执行环境中。
上述步骤S152的具体实现方式中,接口服务用到了RESTFUL框架风格的应用程序接口服务技术,RESTFUL是一种网络应用程序的设计风格和开发方式。根据这些基础,就能够在实际执行环境即业务应用平台调用接口服务执行控制文件,通过控制文件再进一步执行每个节点对应的执行代码,实现使用全流程数据挖掘过程预测新数据的操作,不需要开发人员额外进行数据处理的过程,还减少出错的机会。
为了配合本申请实施例提供的上述模型迁移部署方法,本申请实施例还提供了一种模型迁移部署装置20。
请参考图4,图4为本申请实施例提供的一种模型迁移部署装置的模块示意图。
模型迁移部署装置20包括:
节点确定模块21,用于基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,数据处理节点包括第一训练脚本和第一预测脚本,预测模型节点包括第二训练脚本和第二预测脚本,第一训练脚本用于获取对输入源节点的数据进行处理的数据处理规律模型,第一预测脚本用于采用数据处理规律模型对数据进行处理以获得规范数据,第二训练脚本用于基于规范数据获得的训练样本构建机器学习模型,第二预测脚本用于采用机器学习模型进行预测;
模型转换模块22,用于基于数据持久化获取数据处理规律模型对应的第一数据模型和机器学习模型对应的第二数据模型;
第一替换模块23,用于将第一训练脚本替换为调用第一数据模型的第三脚本,获得替换数据处理节点;
第二替换模块24,用于将第二训练脚本替换为调用第二数据模型的第四脚本,获得替换预测模型节点;
部署模块25,用于将输入源节点、替换数据处理节点和替换预测模型节点作为迁移模型部署在目标平台上。
可选地,节点确定模块21具体用于:采用树结构遍历工程节点文件,获取待迁移模型的输入源节点、数据处理节点和预测模型节点。
可选地,节点确定模块21具体用于:采用树结构遍历逆向拆分工程节点文件,获得待迁移模型的逆向全流程;将逆向全流程中的所有节点反序排列后,获取符合节点执行顺序的待迁移模型的输入源节点、数据处理节点和预测模型节点。
可选地,模型转换模块22用于:基于数据持久化将数据处理规律模型转换为第一数据模型;基于数据持久化将机器学习模型转换为第二数据模型;采用与工程节点文件对应的模型保存模块将第一数据模型和第二数据模型保存在指定目录下,以供替换数据处理节点从指定目录调用第一数据模型,以及替换预测模型节点从指定目录调用第二数据模型。
可选地,部署模块25具体用于:基于输入源节点、替换数据处理节点和替换预测模型节点和节点执行顺序生成迁移模型的控制文件;将控制文件发送至目标平台的执行环境中完成部署。
可选地,部署模块25具体用于:基于RESTFUL框架将控制文件打包成应用程序接口服务;将应用程序接口服务部署到目标平台的执行环境中。
本申请实施例还提供了一种电子设备,该电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器读取并运行所述程序指令时,执行本实施例提供的模型迁移部署方法中任一项所述方法中的步骤。
应当理解是,该电子设备可以是个人电脑(Personal Computer,PC)、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)等具有逻辑计算功能的电子设备。
本申请实施例还提供了一种可读取存储介质,所述可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行模型迁移部署方法中的步骤。
综上所述,本申请实施例提供了一种模型迁移部署方法、装置、电子设备及存储介质,所述方法包括:基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,所述数据处理节点包括第一训练脚本和第一预测脚本,所述预测模型节点包括第二训练脚本和第二预测脚本,所述第一训练脚本用于获取对所述输入源节点的数据进行处理的数据处理规律模型,所述第一预测脚本用于采用所述数据处理规律模型对数据进行处理以获得规范数据,所述第二训练脚本用于基于所述规范数据获得的训练样本构建机器学习模型,所述第二预测脚本用于采用所述机器学习模型进行预测;基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型;将所述第一训练脚本替换为调用所述第一数据模型的第三脚本,获得替换数据处理节点;将所述第二训练脚本替换为调用所述第二数据模型的第四脚本,获得替换预测模型节点;将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上。
在上述实现方式中,将待迁移模型的整体模型创建及预测流程整体迁移,提高了迁移后模型的完整性和预测准确性,同时通过数据持久化使新数据的数据格式与数据挖掘流程中的数据一致,保证机器学习模型对新数据的预测结果不会出错,从而简化了数据处理流程,并进一步提高了迁移后模型的准确性。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的框图显示了根据本申请的多个实施例的设备的可能实现的体系架构、功能和操作。在这点上,框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图中的每个方框、以及框图的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。因此本实施例还提供了一种可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行区块数据存储方法中任一项所述方法中的步骤。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RanDom Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种模型迁移部署方法,其特征在于,所述方法包括:
基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,所述数据处理节点包括第一训练脚本和第一预测脚本,所述预测模型节点包括第二训练脚本和第二预测脚本,所述第一训练脚本用于获取对所述输入源节点的数据进行处理的数据处理规律模型,所述第一预测脚本用于采用所述数据处理规律模型对数据进行处理以获得规范数据,所述第二训练脚本用于基于所述规范数据获得的训练样本构建机器学习模型,所述第二预测脚本用于采用所述机器学习模型进行预测;
基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型;
将所述第一训练脚本替换为调用所述第一数据模型的第三脚本,获得替换数据处理节点;
将所述第二训练脚本替换为调用所述第二数据模型的第四脚本,获得替换预测模型节点;
将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上。
2.根据权利要求1所述的方法,其特征在于,所述基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,包括:
采用树结构遍历所述工程节点文件,获取所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
3.根据权利要求2所述的方法,其特征在于,所述采用树结构遍历所述工程节点文件,获取所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点,包括:
采用树结构遍历逆向拆分所述工程节点文件,获得所述待迁移模型的逆向全流程;
将所述逆向全流程中的所有节点反序排列后,获取符合节点执行顺序的所述待迁移模型的所述输入源节点、所述数据处理节点和所述预测模型节点。
4.根据权利要求1所述的方法,其特征在于,所述基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型,包括:
基于数据持久化将所述数据处理规律模型转换为所述第一数据模型;
基于数据持久化将所述机器学习模型转换为所述第二数据模型;
采用与所述工程节点文件对应的模型保存模块将所述第一数据模型和所述第二数据模型保存在指定目录下,以供所述替换数据处理节点从所述指定目录调用所述第一数据模型,以及所述替换预测模型节点从所述指定目录调用所述第二数据模型。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述数据处理节点用于进行标签预处理和/或缺失值处理。
6.根据权利要求3所述的方法,其特征在于,所述将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上,包括:
基于所述输入源节点、所述替换数据处理节点和所述替换预测模型节点和所述节点执行顺序生成所述迁移模型的控制文件;
将所述控制文件发送至所述目标平台的执行环境中完成部署。
7.根据权利要求6所述的方法,其特征在于,所述将所述控制文件发送至所述目标平台的执行环境中完成部署,包括:
基于RESTFUL框架将所述控制文件打包成应用程序接口服务;
将所述应用程序接口服务部署到所述目标平台的所述执行环境中完成部署。
8.一种模型迁移部署装置,其特征在于,所述装置包括:
节点确定模块,用于基于工程节点文件确定待迁移模型的输入源节点、数据处理节点和预测模型节点,所述数据处理节点包括第一训练脚本和第一预测脚本,所述预测模型节点包括第二训练脚本和第二预测脚本,所述第一训练脚本用于获取对所述输入源节点的数据进行处理的数据处理规律模型,所述第一预测脚本用于采用所述数据处理规律模型对数据进行处理以获得规范数据,所述第二训练脚本用于基于所述规范数据获得的训练样本构建机器学习模型,所述第二预测脚本用于采用所述机器学习模型进行预测;
模型转换模块,用于基于数据持久化获取所述数据处理规律模型对应的第一数据模型和所述机器学习模型对应的第二数据模型;
第一替换模块,用于将所述第一训练脚本替换为调用所述第一数据模型的第三脚本,获得替换数据处理节点;
第二替换模块,用于将所述第二训练脚本替换为调用所述第二数据模型的第四脚本,获得替换预测模型节点;
部署模块,用于将所述输入源节点、所述替换数据处理节点和所述替换预测模型节点作为迁移模型部署在目标平台上。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器运行所述程序指令时,执行权利要求1-7中任一项所述方法中的步骤。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器运行时,执行权利要求1-7任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010556770.XA CN111708760B (zh) | 2020-06-17 | 2020-06-17 | 模型迁移部署方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010556770.XA CN111708760B (zh) | 2020-06-17 | 2020-06-17 | 模型迁移部署方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111708760A true CN111708760A (zh) | 2020-09-25 |
CN111708760B CN111708760B (zh) | 2023-05-12 |
Family
ID=72541151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010556770.XA Active CN111708760B (zh) | 2020-06-17 | 2020-06-17 | 模型迁移部署方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111708760B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732681A (zh) * | 2021-04-01 | 2021-04-30 | 壹药网科技(上海)股份有限公司 | 数据平台迁移方法及系统 |
CN114168232A (zh) * | 2021-12-20 | 2022-03-11 | 南京星云数字技术有限公司 | 一种算法模型结果转换配置方法、装置、设备和介质 |
CN115617778A (zh) * | 2022-10-08 | 2023-01-17 | 湖北普联东文信息科技有限公司 | 一种复杂存储结构的信息系统间的数据迁移系统 |
CN115987817A (zh) * | 2022-12-23 | 2023-04-18 | 中国电信股份有限公司 | 交换任务调度方法、装置、电子设备及非易失性存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1909713A (zh) * | 2006-08-25 | 2007-02-07 | 华为技术有限公司 | 基站节点迁移方法及其系统 |
WO2014131430A1 (de) * | 2013-02-26 | 2014-09-04 | Siemens Aktiengesellschaft | Verfahren zur modellbasierten softwareentwicklung von programmen mit datenbankzugriff |
US20180365612A1 (en) * | 2017-06-15 | 2018-12-20 | The Travelers Indemnity Company | Systems and methods for strategic maintenance of a production environment utilizing a business rules management system |
-
2020
- 2020-06-17 CN CN202010556770.XA patent/CN111708760B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1909713A (zh) * | 2006-08-25 | 2007-02-07 | 华为技术有限公司 | 基站节点迁移方法及其系统 |
WO2014131430A1 (de) * | 2013-02-26 | 2014-09-04 | Siemens Aktiengesellschaft | Verfahren zur modellbasierten softwareentwicklung von programmen mit datenbankzugriff |
US20180365612A1 (en) * | 2017-06-15 | 2018-12-20 | The Travelers Indemnity Company | Systems and methods for strategic maintenance of a production environment utilizing a business rules management system |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732681A (zh) * | 2021-04-01 | 2021-04-30 | 壹药网科技(上海)股份有限公司 | 数据平台迁移方法及系统 |
CN112732681B (zh) * | 2021-04-01 | 2021-06-08 | 壹药网科技(上海)股份有限公司 | 数据平台迁移方法及系统 |
CN114168232A (zh) * | 2021-12-20 | 2022-03-11 | 南京星云数字技术有限公司 | 一种算法模型结果转换配置方法、装置、设备和介质 |
CN115617778A (zh) * | 2022-10-08 | 2023-01-17 | 湖北普联东文信息科技有限公司 | 一种复杂存储结构的信息系统间的数据迁移系统 |
CN115987817A (zh) * | 2022-12-23 | 2023-04-18 | 中国电信股份有限公司 | 交换任务调度方法、装置、电子设备及非易失性存储介质 |
CN115987817B (zh) * | 2022-12-23 | 2024-05-24 | 中国电信股份有限公司 | 交换任务调度方法、装置、电子设备及非易失性存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111708760B (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111708760B (zh) | 模型迁移部署方法、装置、电子设备及存储介质 | |
US10423403B1 (en) | Utilizing a machine learning model to predict metrics for an application development process | |
Rattenbury et al. | Principles of data wrangling: Practical techniques for data preparation | |
Karnitis et al. | Migration of relational database to document-oriented database: structure denormalization and data transformation | |
Owolabi et al. | Predicting completion risk in PPP projects using big data analytics | |
US9098630B2 (en) | Data selection | |
US9342300B2 (en) | Analyzing components related to a software application in a software development environment | |
Soul et al. | Taxonomy and phylogeny can yield comparable results in comparative paleontological analyses | |
US11494850B1 (en) | Applied artificial intelligence technology for detecting anomalies in payroll data | |
CN105260300B (zh) | 基于会计准则通用分类标准应用平台的业务测试方法 | |
CA3195853A1 (en) | Artificial intelligence driven document analysis, including searching, indexing, comparing or associating datasets based on learned representations | |
Bateman et al. | The The Supervised Learning Workshop: A New, Interactive Approach to Understanding Supervised Learning Algorithms | |
Kattner et al. | Inconsistency management in heterogeneous models-an approach for the identification of model dependencies and potential inconsistencies | |
CN115344504A (zh) | 基于需求规格说明书的软件测试用例自动生成方法及工具 | |
US10983969B2 (en) | Methods and systems for mapping flattened structure to relationship preserving hierarchical structure | |
AU2021204470A1 (en) | Benefit surrender prediction | |
Oliveira et al. | ETL standard processes modelling-a novel BPMN approach | |
Jeyaraman et al. | Practical Machine Learning with R: Define, build, and evaluate machine learning models for real-world applications | |
Khan et al. | An Overview of ETL Techniques, Tools, Processes and Evaluations in Data Warehousing. | |
US20220374801A1 (en) | Plan evaluation apparatus and plan evaluation method | |
CN114926082A (zh) | 基于人工智能的数据波动预警方法及相关设备 | |
US20070276637A1 (en) | Visual optimization programming | |
US11605006B2 (en) | Deep-learning model catalog creation | |
CN113892097A (zh) | 过程的边表表示 | |
CN112365243A (zh) | 一种科目创建方法、装置及计算机设备 |
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 | ||
CB02 | Change of applicant information |
Address after: 519000 Rooms 806, 901 and 902, No. 29, Lanwan Lane, Tangjiawan Town, Xiangzhou District, Zhuhai City, Guangdong Province Applicant after: Hongqiao Hi Tech Group Co.,Ltd. Address before: 519000 1st floor, area D, South Software Park, No.1, Tangjiawan Software Park Road, Xiangzhou District, Zhuhai City, Guangdong Province Applicant before: ZHUHAI HONGQIAO HIGH-TECH Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |