轻量化的Spark流水线预测模型的构建方法与流程

文档序号:33507247发布日期:2023-03-18 03:18阅读:149来源:国知局
轻量化的Spark流水线预测模型的构建方法与流程
轻量化的spark流水线预测模型的构建方法
技术领域
1.本发明涉及大数据分析技术领域,涉及轻量化的spark流水线预测模型的构建方法。


背景技术:

2.随着大数据技术的发展,企业积累了海量的数据,并结合业务场景采用分布式计算框架如spark,实现海量数据的分析处理,及分析模型的构建。将已有模型部署在生产环境中,提供高性能预测服务,具有重要的意义。
3.目前,部署spark模型,大多采用以下方法:
4.1)基于pmml的方式
5.pmml是一种基于xml的标准语言,用于表达数据挖掘模型,可在不同的应用程序中交换模型,实现模型的预测功能。但目前spark所支持的pmml模型有限,且其不能实现类似缺失值填充等数据处理功能。
6.2)基于mlflow的方式
7.mlflow是一个覆盖从数据准备到模型训练到最终部署机器学习全流程的开源机器学习平台。其通过models概念,提供相应的模型封装格式,从而实现流水线模型的部署,但在预测时需要重新实现数据处理功能,无法保证和训练时同样的性能。
8.3)基于服务的方式
9.即通过webserver的方式,通过接收请求后调用已有模型实现预测,但需要将输入数据转换为spark的dataframe格式,且依赖spark环境。
10.以上三种方法虽然能在一定程度上实现spark流水线模型的预测功能,但存在内存消耗大、预测耗时长、部署难度大、吞吐量低等问题。主要原因有依赖spark环境,需要借助于sparkcontext实现模型的加载及预测,另,需要将输入数据转化为dataframe格式,进而造成所述问题。


技术实现要素:

11.本发明提供了一种spark流水线模型的轻量化预测方法,解决了spark模型部署时依赖spark框架,造成的内存消耗大、实时预测能低的问题,进而提供高吞吐、低消耗的实时预测服务。
12.为了实现上述技术效果,本发明通过以下技术方案予以实现。
13.轻量化的spark流水线预测模型的构建方法,包括以下步骤:
14.spark transformer的算法模型的构建,以及基于mleap bundle的模型算子序列化模型的构建;
15.构建spark流水线模型,同时记录各算法模型间的依赖关系,进而调用各模型算子bundle序列化方法,生成轻量化后的spark流水线模型;
16.所述各算法模型间的依赖关系具体为缺失值处理算子、数据标准化处理算子以及
逻辑回归算子之间的依赖关系;
17.基于mleap runtime依据bundle中各算法模型的依赖关系,加载轻量化后的spark流水线模型,生成用于预测结果的预测模型。
18.作为本发明的进一步改进,所述spark transformer的算法模型为算法框架,其用于将一个输入dataframe转换到另一个dataframe,并向其添加一个或一个以上的特征,进而通过transformer分别获得缺失值处理算子、数据标准化算子和逻辑回归算子。
19.作为本发明的进一步改进,所述通过transformer获得缺失值处理算子具体为:构建缺失值处理类的spark transformer和缺失值处理类leap transformer,并分别通过fit方法以及apply方法对上述的缺失值进行填充。
20.作为本发明的进一步改进,所述通过transformer获得数据标准化算子具体为;通过继承spark框架的transformer类,计算出数据的均值和标准差后对数据进行变换,将数据进行转换,得到数据标准化算子。
21.作为本发明的进一步改进,所述通过transformer获得逻辑回归算子具体为:通过构建优化器训练逻辑回归系数,得到逻辑回归算子。
22.作为本发明的进一步改进,所述基于mleap bundle的模型为问价序列化框架,使得所述缺失值处理算子、数据标准化算子和逻辑回归算子均继承mleap框架,分别实现对应算子的序列化或反序列化。
23.作为本发明的进一步改进,所述构建spark流水线模型中,各算法模型之间的依赖关系为,在流水线模型中,先缺失值处理算子,再数据标准化处理算子,最后逻辑回归算子的顺序关系。
24.作为本发明的进一步改进,所述spark流水线模型中,包括若干个转换器和预测器,若干个所述转换器和预测器形成机器学习工作流。
25.作为本发明的进一步改进,所述生成用于预测结果的预测模型具体为:
26.脱离spark框架,实现将前端传递的json数据转化为leapframe,接着将工具类json2leapframe和轻量化模型封装通过基于mleap的springboot服务工程发布为服务,最终将轻量化的流水线模型以docker镜像方式展示输出结果。
27.作为本发明的进一步改进,所述脱离spark框架具体为:构建基于spark bundle context的leapframe,开发json2leapframe方法。
28.本发明的有益效果如下:
29.本发明通过对spark算子扩展开发,通过对spark流水线创建、训练、保存、发布等过程,实现spark模型不依赖spark框架,在不损失准确度的情况下,提供高性能、实时预测功能,同时降低了存储及计算资源的消耗,解决了spark模型在实时预测场景下耗时长、吞吐量低的问题。
附图说明
30.图1是本发明的spark流水线模型的轻量化流程;
31.图2是本发明的算子封装流程;
32.图3是本发明的spark流水线模型构建流程;
33.图4是本发明的spark流水线轻量化模型目录结构;
34.图5是本发明的服务构建发布流程;
35.图6为本发明的实际应用案例中的设备故障预测模型训练流程;
36.图7为本发明的实际应用案例中的设备故障设备模型预测流程。
具体实施方式
37.下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
38.在本实施例的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明创造和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明创造的限制
39.此外,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明创造的描述中,除非另有说明,“多个”的含义是两个或两个以上。术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明创造中的具体含义。
40.首先,结合原理进行本发明的大致方案介绍。
41.为了便于理解,故先对本发明中所涉及的带有英文的专业词,进行解释,具体如下:
42.1)spark:具体是一个面向海量数据集合的高效率集群分布式计算系统,依托于该平台开展大数据挖掘有助于获得更好的效果,属于现有技术公知的词语。
43.mleap:是适用于机器学习pipeline存储的通用序列化格式,又是pipeline的通用执行引擎。mleap支持spark、scikit-learn、tensorflow等机器学习框架的pipeline的训练,属于现有技术公知的词语。
44.spark transformer:是一种可以将一个数据转换为另一个数据的算法。比如一个模型就是一个transformer。它可以把一个不包含预测标签的测试数据集打上标签,转化成另一个包含预测标签的数据集,属于现有技术公知的词语。
45.mleap bundle:是一个基于图、跨平台的文件格式,它可以用于序列化和反序列化,属于现有技术公知的词语。
46.fit:spark模型训练的标准方法,属于现有技术公知的词语。
47.dataframe:是一种以spark框架为基础的分布式数据集,是一种特殊的数据集是一个分布式的表,类似于传统数据库中的二维表格,属于现有技术公知的词语。
48.参照附图1-5所示,本发明中,为了解决spark模型在实时预测场景下耗时长、吞吐量低的问题,故需要构建spark流水线轻量化预测的框架流程。
49.如图1所示,本发明中的核心等,主要如下:
50.步骤一,基于spark transformer的算法模型开发,实现模型参数的配置、模型的训练、保存及预测功能,同时开发基于mleap bundle的模型算子序列化方法,以实现spark模型的轻量化输出。
51.步骤二,基于实现的各算法模型,构建spark流水线模型,同时记录各算法模型间的依赖关系,进而调用各模型算子bundle序列化方法,生成轻量化后的spark流水线模型。
52.步骤三、基于mleap runtime依据bundle中各算法模型的依赖关系,加载轻量化后的spark流水线模型,提供高性能的模型预测服务。
53.具体如下:
54.开始构建spark流水线模型时,首先根据具体的分析场景梳理需要使用到的机器学习算子,包含数据预处理算子,特征工程算子,机器学习算子,下面以预处理算子选择缺失值处理,特征工程算子选择数据标准化,机器学习算子选择逻辑回归为例,讲解步骤1流程
55.本发明中的原理主要通过机器学习任务流程构建,机器学习任务流程如下:
56.首先是业务场景解析,场景解析就是将业务逻辑,抽象成为通过算法能够解决的问题。场景解析完,选择适合处理此类数据的算法后,需要对数据进行清洗工作,对空值、异常数据处理。
57.其次,数据处理,本发明中,数据预处理的主要目的就是:减少噪音数据对训练数据的影响,接着对数据进行特征加工,特征工程指的是把原始数据转变为模型的训练数据的过程,它的目的就是获取更好的训练数据特征,使得机器学习模型逼近这个上限。
58.最后,在经过以上过程后,进入训练模块,比如:预测一个设备未来是否会发生故障,那么就可以抽象为二分类问题——要么有故障,要么没有,逻辑回归属于分类算法,所以在模型训练阶段可以选择逻辑回归算法。
59.其次,结合本发明中的各个流程步骤为主进行介绍。
60.本发明中的详细过程如下:
61.步骤1流程-自定义轻量化算子实现
62.参照附图2所示,该部分整体流程主要包含以下步骤:
63.1.构建核心模型逻辑用于在spark和mleap之间共享数据。核心模型是包含转换输入数据的相关逻辑,在数据预处理算子中模型的核心逻辑为计算出均值,对数据中的缺失值填充,在数据标准化算子中,模型的核心逻辑为计算出数据的均值和标准差对数据进行变换,在逻辑回归算子中模型的核心逻辑为构建优化器训练逻辑回归系数。
64.2.通过继承spark框架的transformer类实现transform()方法实现数据从一个dataframe转换成另一个dataframe,实现核心模型需求的数据转换。
65.3.通过继承mleap框架的model类实现transform()方法实现数据从一个leapframe转换成另一个leapframe,实现核心模型的数据转换。
66.4.基于mleap框架实现核心模型的bundle序列化器,实现mleap bundle模型的序列化和反序列化。
67.5.基于spark框架实现核心模型的spark序列化器,实现spark模型的序列化和反序列化。
68.6.加载配置表通过使用mleap typesafe config来注册mleap transformer和
spark transformer到mleap bundle注册表中。
69.本实施例中,首先实现核心模型逻辑,核心模型包含转换输入数据的相关逻辑。核心模型不包含任何对spark和mleap的依赖。在缺失值处理的例子中,核心模型是一个类,它会计算出每一行数据需要填充的缺失值。
70.构建缺失值处理类spark transformer,在spark端实现缺失值处理missvalueprocess类,设计功能为使用均值填充缺失值,该类继承spark estimator抽象类,实现fit方法,fit方法会计算参数建模数据列的均值信息,返回missvalueprocessmodel类,missvalueprocessmodel类继承spark transformer抽象类,实现transform方法,transform会根据模型保存的均值对数据做对应的填充。
71.构建缺失值处理类mleap transformer,在mleap端实现missvalueprocessmleapmodel,实现输入输出数据转换,该类继承mleap的model实现apply方法,apply方法主要实现单条数据的缺失值填充。
72.构建缺失值处理mleap端bundle序列化器,在mleap端实现missvalueprocessop类,该类继承mleapop,实现了两个方法,分别时store方法和load方法,store方法通过bundlecontext将missvalueprocessmleapmodel转为bundle序列化model,load方法将bundle序列化model转化为missvalueprocessmleapmodel。
73.构建缺失值处理spark端bundle序列化器,在spark端实现missvalueprocessop类,继承mleap的simplesparkop类实现store方法,该方法通过bundlecontext将missvalueprocessmodel转为bundle序列化model,实现load方法,该方法将bundle序列化model转化为missvalueprocessmodel。
74.配置注册表,一个注册表包含了所有的自定义transformers,以及给定的执行引擎的类型。在缺失值处理例子中,提供了missvalueprocess的mleap/spark执行引擎,因为必须要分别配置spark和mleap的注册表,以让mleap知道如何序列化两者各自的transformers。需要注册missvalueprocessop到mleap bundle注册表中,以让mleap在运行时知道它的存在。同样需要注册spark端类到mleap注册表中,从而让mleap知道如何序列化spark transformer。
75.同理按照上述思路,实现数据标准化算子,逻辑回归算子,最终实现3个算子的模型参数的配置、模型的训练、保存及预测接口。
76.步骤2基于以上算子构建spark流水线模型
77.pipeline由一系列stage组成,每个stage为一个转换(transformer)或预测器(estimator)。这些stage的执行是按一定顺序的,输入的dataframe在通过每个stage时被改变。在转换器阶段,transform()方法作用在dataframe上。预测器阶段,调用fit()方法来产生一个转换器,然后该转换器的transform()方法作用在dataframe上。
78.参照附图3所示,该部分整体流程中,spark流水线模型是连接多个转换器和预测器在一起,形成一个机器学习工作流。首先创建一个spark pipeline依次设置pipeline第一个stage为缺失值处理算子、第二个stage为数据标准化算子,第三个stage逻辑回归算子,pipeline会保存stage的前后依赖关系,对于输入的dataframe在通过每个stage时被改变,在训练阶段调用fit()方法来产生一个转换器(模型),然后该转换器的transform()方法作用在dataframe上。本文中的分类工作流中,经过缺失值处理算子调用fit()计算缺失
值填充信息,并返回一个缺失值处理模型,调用该模型的transform()返回经过缺失值处理好的数据;接着通过数据标准化算子,调用fit()方法来产生数据标准化模型,然后该模型transform()方法作用在dataframe上,返回标准化后的数据;接着调用逻辑回归算子的fit()方法生成逻辑回归模型,到此pipeline的训练完成。接着序列化pipelinemodel为bundle.ml,调用该模型的writebundle方法,writebundle方法会内部调用每个mleapop的store方法将模型序列化为json文件,然后将每个stage mleapop的json文件打包为bundle轻量化模型bundle.zip,保存的模型目录结构如图4,bundle的根目录下面会有一个bundle.json文件,它包含了bundle序列化相关的基础元数据。bundle里面会有一个root目录,包含了pipeline的每个stage node信息,node目录下的model.json文件记录了模型的参数,node.json记录了模型输出、输出、参数配置信息。
79.下面将模型部署来进行实时预测。
80.步骤3部署spark流水线模型,实现实时预测
81.该部分整体流程如图5所示,基于mleapruntime环境开发预测接口,为了使服务具有轻量化,高性能的预测能力,预测时必须脱离spark框架,因此做预测时不能使用依赖sparkcontext分布式dataframe,需要构建基于sparkbundlecontext的leapframe,开发json2leapframe方法,实现将前端传递的json数据转化为leapframe,接着将工具类json2leapframe和轻量化模型封装发布为服务。在将模型发布为服务时,需要搭建restful api服务,具体可通过基于mleap的springboot服务工程实现,将轻量化后的流水线模型以docker镜像方式提供,进而实现流水线模型的预测服务。
82.再次,结合具体使用中的详细实施例进行介绍。
83.本实施例中,1.轻量化的spark流水线预测模型的构建方法,其特征在于,包括以下步骤:
84.第一,spark transformer的算法模型的构建,以及基于mleap bundle的模型算子序列化模型的构建;
85.本实施例中,spark transformer是一个算法框架,用来将一个输入dataframe转换到另一个dataframe,并向其添加一个或多个特征。
86.transformer的设计目的是通过在特征工程步骤和模型训练步骤中操作一个或多个列来转换dataframe中的数据,本发明中的缺失值处理算子,数据标准化算子,逻辑回归算子均是transformer的具体实现;
87.mleap bundle是一个基于图、跨平台的文件序列化框架,它可以用于序列化和反序列化,在专利中缺失值处理算子,数据标准化算子,逻辑回归算子均继承mleap框架,实现自己模型的序列化和反序列化方法。
88.本发明中,缺失值处理算子:缺失值处理针对存在缺失值的变量进行填充,具体按照数据类型的不同,可选择多种方式进行变量的缺失值处理。最后输出满足设置方式处理后的数据表。进一步地,构建缺失值处理类的spark transformer和缺失值处理类leap transformer,并分别通过fit方法以及apply方法对上述的缺失值进行填充。
89.数据标准化:数据标准化是将操作字段按照给定的方法完成由原始数据到新的数据的映射,以此消除多字段组合分析情况下存在的数量级和量纲的不同造成的不利影响,算法支持最大最小归一化、最大值归一化及z标准化等方法。进一步地,通过transformer获
得数据标准化算子具体为;通过继承spark框架的transformer类,计算出数据的均值和标准差后对数据进行变换,将数据进行转换,得到数据标准化算子。
90.逻辑回归算子:逻辑回归是分类算法中的一种。通过历史数据的表现对未来结果发生的概率进行预测。进一步地,通过transformer获得逻辑回归算子具体为:通过构建优化器训练逻辑回归系数,得到逻辑回归算子。
91.实际应用案例:
92.本实施例中,详细包含应用的案例使用过程如下:
93.本实施例中的场景案例为:利用数据挖掘技术进行预测性维修,通过分析故障历史数据及其实时监控数据,对设备故障进行提前预测预警,并以此为依据进行检修维护,从而减少设备停机时间,降低维护成本。
94.本实施例中的实现过程如下:
95.设备故障预测模型的构建(相当于本发明中用于预测结果的预测模型):利用设备历史运行传感器检测数据及设备故障历史记录数据,构建分类模型,通过传感器参数集预测在指定时间内设备发生故障的概率,识别设备故障。为备品备件,检修调度提供科学依据。
96.参照附图6所示,还包括以下步骤:
97.1)数据输入:加载训练数据,训练数据样例如下:
98.数据中,设备_id列未设备编号,过程参数_1到过程参数_25为设备运行时传感器采集的数据,故障与否表示在当前设备运行参数下设备是否发生故障1表示发生,0表示不发生。可以看出,由于数据采集原因,数据中存在缺失值。
99.2)缺失值处理:对数据的缺失值进行填充,填充后的数据如表1所述:
100.表1:
101.设备_id过程参数_1过程参数_2过程参数_3过程参数_4过程参数_5过程参数_6过程参数_7过程参数_过程参数_25故障与否m_00012.63310.91784.228613.792323.40296.7857126.0541

2.26641m_00029.244222.732315.30668.55345.70712.99881.4279

2.780m_00033.183128.52578.73544.89843.68492.96022.3983

0.09871m_00042.7852.64212.672047.417112.1627916.18254.8759

0.09570m_00054.888714.414723.903212.98525.86523.77962.5881

1.6516750m_00060.78435.49815.23223.477112.10684.82544.0775

3.00651m_00076.214126.377213.0636.31254.13032.93654.240477

0.09721m_00082.5916.258412.672043.5247.29279.880811.75

2.55490m_00093.01870124.493515.68193.45063.70222.3871.9408

0.1951m_00100.34811.80016.921630.65826.96532.00111.4785

1.71520m_00111.10541.28313.77417.04529.73256.33173.8416

0.27540m_00121.54073.555815.497318.722612.1627910.48910.5163

3.0780m_00131.04267.3603160.497432.32170.60041.20080.6938

0.28961m_00143.20413.92514.65897.155427.698311.16574.0823

1.6516750
102.数据标准化:选择最大最小归一化,将数据转换到0和1之间消除量纲对建模的影响,标准化后的数据如表2所示:
103.表2
104.过程参数_1_标准化过程参数_2_标准化过程参数_3_标准化过程参数_4_标准化过程参数_5_标准化过程参数_6_标准化过程参数_7_标准化过程参数_标准过程参数_25_标准化故障与否_标准化0.219532090.011679510.120658270.416137560.727463850.240447460.29521322

0.7220785910.818792430.694376810.478894830.251059530.162918090.093508460.05594145

0.8860161500.269386610.875684590.266397620.135890270.098404220.092010710.10613153

0.030163751
0.2333010.065639340.393699460.215254650.36887290.605059750.23427552

0.0292061700.423989990.434072740.756888730.390705790.167961920.12380490.11594818

0.525862500.051948410.15501950.476482440.721306150.367086510.164383830.19298146

0.9583133810.544130310.808446050.406342060.180448640.112613730.091091110.2014108

0.0296849610.215625310.491772390.393699460.092582850.213503180.360542450.58981096

0.8141657900.254484770.749494580.491031150.090270010.098956140.069769520.08246916

0.0609020410.012409240.039291590.207743580.947583020.20305820.05479590.05855854

0.5461393600.081054380.023111780.10596080.203529760.929395890.222830980.18078047

0.0865651600.120511960.094237230.485061620.571491590.36887290.38414170.52600274

0.9811356900.07536190.213301730100.023742820.01797305

0.0910977110.271290140.105794690.134573160.207008470.864499190.410398880.19322972

0.52586250
105.逻辑回归:输入归一化后的数据,利用逻辑回归算法进行训练故障分类模型。
106.模型保存:是将训练的模型输出保存。
107.保存的模型中,模型内容为bundle序列化后的json文件,记录了模型的参数信息。
108.模型预测流程如下图7所示,具体如下:
109.加载读取的模型,传入数据进行模型利用得出预测结果,如表3所示。
110.表3
[0111][0112]
本实施例的预测数据中,prediction列为预测是否发生故障,probability为是否发生故障。
[0113]
通过上述过程可知,本实施例中,开发新的缺失值处理算子,数据标准化算子,逻辑回归算子,每个算子继承bundle model类,实现load方法为加载方法,实现save方法为保存方法,实现transform方法为预测方法。
[0114]
通过上述过程可知,本实施例中,spark流水线是由若干的算子组成的数据转换的管道,在本专利示例管道中包含了三子算子分别是缺失值处理算子,数据标准化算子,逻辑回归算子,管道中的算子具有前后依赖关系,后一个算子的输入依赖前一个算子的输出,模型训练阶段数据依次经过管道中算子的处理,会生成对应的模型,调用模型bundle序列化方法,会对各算子对应的算法模型进行序列化处理,得到有序的序列化模型,整个管道模型是有向无环图结构的序列化模型。
[0115]
具体地,所述spark流水线模型中,包括若干个转换器和预测器,若干个所述转换器和预测器形成机器学习工作流。
[0116]
第二,构建spark流水线模型,同时记录各算法模型间的依赖关系,进而调用各模型算子bundle序列化方法,生成轻量化后的spark流水线模型;
[0117]
所述各算法模型间的依赖关系具体为缺失值处理算子、数据标准化处理算子以及逻辑回归算子之间的依赖关系;
[0118]
进一步地,各算法模型之间的依赖关系为,在流水线模型中,先缺失值处理算子,
再数据标准化处理算子,最后逻辑回归算子的顺序关系。
[0119]
第三,基于mleap runtime依据bundle中各算法模型的依赖关系,加载轻量化后的spark流水线模型,生成用于预测结果的预测模型。
[0120]
进一步地,所述生成用于预测结果的预测模型具体为:
[0121]
脱离spark框架,实现将前端传递的json数据转化为leapframe,接着将工具类json2leapframe和轻量化模型封装通过基于mleap的springboot服务工程发布为服务,最终将轻量化的流水线模型以docker镜像方式展示输出结果。
[0122]
具体地,所述脱离spark框架具体为:构建基于spark bundle context的leapframe,开发json2leapframe方法。
[0123]
本发明中,开发基于spark模型的算子,缺失值处理算子,数据标准化算子,逻辑回归算子,算子实现分别继承了bundle序列化接口和spark序列化接口,算子实现了spark接口的保存、加载、预测功能和mleap接口的保存、加载、预测功能而且可以使spark模型和mleap bundle模型之间互相转换。
[0124]
本发明中,预测方法最终的结果是可以生成轻量化的模型,轻量化指spark模型预测不依赖spark框架,模型预测时运行环境占用内存少,具有低消耗,速度快的预测效果,大大提升了模型的预测效率。
[0125]
本发明通过核心方案,得到的技术效果如下:
[0126]
spark原生模型与轻量化模型预测性能对比,对比结果如表4;
[0127]
表4
[0128][0129]
通过表4可知,从性能对比可以看出,本发明中的轻量化模型预测性能相比spark原生模型预测性能提升100倍。
[0130]
spark原生模型与轻量化模型大小及环境依赖对比,对比结果如表5;
[0131]
表5
[0132][0133]
通过表5可知,从相关依赖可以看出,本发明中的轻量化模型,模型压缩比更强,而且依赖少,部署简单。
[0134]
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
[0135]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将权利要求落在等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0136]
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1