CN111062521A - 一种在线预测方法、系统及服务器 - Google Patents

一种在线预测方法、系统及服务器 Download PDF

Info

Publication number
CN111062521A
CN111062521A CN201911204376.3A CN201911204376A CN111062521A CN 111062521 A CN111062521 A CN 111062521A CN 201911204376 A CN201911204376 A CN 201911204376A CN 111062521 A CN111062521 A CN 111062521A
Authority
CN
China
Prior art keywords
model
online
offline
file
prediction
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
Application number
CN201911204376.3A
Other languages
English (en)
Other versions
CN111062521B (zh
Inventor
熊乐
甘露
洪庚伟
李羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weimin Insurance Agency Co Ltd
Original Assignee
Weimin Insurance Agency Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Weimin Insurance Agency Co Ltd filed Critical Weimin Insurance Agency Co Ltd
Priority to CN201911204376.3A priority Critical patent/CN111062521B/zh
Publication of CN111062521A publication Critical patent/CN111062521A/zh
Application granted granted Critical
Publication of CN111062521B publication Critical patent/CN111062521B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及互联网技术领域,公开了一种在线预测方法、系统及服务器,所述的在线预测方法,包括:获取离线模型文件;对所述离线模型文件进行在线激活,生成在线模型;获取在线预测指令,基于所述在线模型,生成在线预测结果。通过对离线模型文件在线激活,以直接生成在线模型,能够减少离线模型的上线周期,解决现有离线模型上线周期长的技术问题,提高离线模型在线化的速度。

Description

一种在线预测方法、系统及服务器
技术领域
本发明涉及互联网技术领域,尤其涉及一种在线预测方法、系统及服务器。
背景技术
传统的机器学习算法从离线到在线投入生产,需要专人开发,难以保证离线和在线一致性,以及离线模型在线化的研发速度,并且需要开发人员在算法人员demo模型重新实现高可用服务,导致存在迭代周期长等问题。由于算法人员和应用人员需要端到端的建模后投入生产试验,试验周长,难以多组试验快速对照,随着算法应用场景增多,对人力需要投入,导致离线模型的上线速度慢,无法为用户提供在线预测。
基于此,现有技术亟待改进。
发明内容
本发明实施例的一个目的旨在提供一种在线预测方法、系统及服务器,其能够解决现有离线模型上线周期长的技术问题,提高离线模型在线化的速度。
在第一方面,本发明实施例提供一种在线预测方法,包括:
获取离线模型文件;
对所述离线模型文件进行在线激活,生成在线模型;
获取在线预测指令,基于所述在线模型,生成在线预测结果。
在一些实施例中,所述获取离线模型文件的步骤之前,所述方法还包括:
获取通用模型,将所述通用模型转换为特定格式的离线模型文件。
在一些实施例中,所述获取离线模型文件的步骤之前,所述方法还包括:
获取自定义算法,基于自定义插件脚本,将所述自定义算法对应生成二进制模型文件;
将所述二进制模型文件转换为特定格式的离线模型文件。
在一些实施例中,所述离线模型文件包括多种程序语言,所述获取离线模型文件,包括:
对所述多种程序语言进行容器化部署,基于容器技术,封装多种程序语言的软件开发工具包;
根据所述多种程序语言的软件开发工具包,获取每一程序语言生成的离线模型文件。
在一些实施例中,所述对所述离线模型文件进行在线激活,生成在线模型,具体用于:
基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;
对所述离线模型文件进行离线激活,生成离线激活后的离线模型;
基于离线激活后的离线模型,进行离线预测,生成离线预测结果;
在确定所述离线脚本结果与所述离线预测结果一致的情况下,对所述离线模型文件进行在线激活,生成在线模型。
在一些实施例中,所述获取在线预测指令,基于所述在线模型,生成在线预测结果,包括:
基于特征清单,调用特征服务,获取在线特征;
向所述在线模型输入所述在线特征,生成预测值作为在线预测结果。
在一些实施例中,在获取离线模型文件之后,所述方法还包括:基于所述离线模型文件,确定离线模型,所述基于特征清单,调用特征服务,获取在线特征,包括:
对所述离线模型或在线模型进行特征分析,确定所述离线模型或在线模型对应的特征;
调用特征服务,获取所述离线模型或在线模型对应的特征。
在一些实施例中,所述调用特征服务,获取所述离线模型或在线模型对应的特征,包括:
获取预先建立的特征清单字典;
根据所述特征清单字典,获取所述离线模型或在线模型需要预处理的特征及其对应的处理方法;
基于所述处理方法,对所述需要预处理的特征进行特征变换,以得到离线模型或在线模型对应的特征。
在一些实施例中,所述在线模型包括多个子模型,所述方法还包括:
对所述多个子模型进行融合策略分析,生成多个子模型融合后的预测结果。
在一些实施例中,所述对所述多个子模型进行融合策略分析,包括:
获取所述多个子模型的表达式,将所述多个子模型的表达式解析融合成结构化的抽象语法树。
在一些实施例中,在所述获取离线模型文件的步骤之前,所述方法还包括:
对离线模型进行离线训练,生成离线模型文件,并存储所述离线模型文件。
在一些实施例中,所述在线模型包括PMML模型以及插件化脚本算法模型。
在第二方面,本发明实施例提供一种在线预测装置,包括:
离线模型获取模块,用于获取离线模型文件;
在线模型生成模块,用于对所述离线模型文件进行在线激活,生成在线模型;
在线预测结果模块,用于获取在线预测指令,基于所述在线模型,生成在线预测结果。
在一些实施例中,所述离线模型文件包括多种程序语言,所述离线模型获取模块,具体用于:
对所述多种程序语言进行容器化部署,基于容器技术,封装多种程序语言的软件开发工具包;
根据所述多种程序语言的软件开发工具包,获取每一程序语言生成的离线模型文件。
在一些实施例中,所述在线模型生成模块,具体用于:
基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;
对所述离线模型文件进行离线激活,生成离线激活后的离线模型;
基于离线激活后的离线模型,进行离线预测,生成离线预测结果;
在确定所述离线脚本结果与所述离线预测结果一致的情况下,对所述离线模型文件进行在线激活,生成在线模型。
在一些实施例中,所述在线预测结果模块,具体用于:
基于特征清单,调用特征服务,获取在线特征;
向所述在线模型输入所述在线特征,生成预测值作为在线预测结果。
在第三方面,本发明实施例提供一种在线预测系统,包括:
场景应用系统,用于对接多个应用场景;
计算分数接口,连接所述场景应用系统,用于调用模型服务进行在线预测;
分数计算单元,用于提供在线模型服务,计算预测值;
模型管理平台,用于管理离线模型文件或在线模型文件;
模型管理接口,连接所述模型管理平台,用于获取模型信息,对离线模型和在线模型进行上线或下线;
分布式文件系统,连接所述模型管理平台,用于存储离线模型文件和在线模型文件。
在一些实施例中,所述场景应用系统还包括:
集权管理单元,连接所述场景应用系统以及所述模型管理平台,用于管理所述在线预测系统的工作节点。
在一些实施例中,所述在线预测系统还包括:
桥接单元,连接所述集权管理单元以及所述分数计算单元,用于桥接对应的分数计算单元。
在一些实施例中,每一应用场景对应一个子模型,所述在线预测系统还包括:
融合策略分析单元,用于对多个子模型进行融合策略分析,计算多个子模型融合后的预测结果;
特征分析单元,连接所述融合策略分析单元,用于分析离线模型或在线模型需要的特征,并获取所述离线模型或在线模型需要的特征;
特征转换单元,连接所述特征分析单元,用于对所述离线模型或在线模型需要的特征进行特征变换,以得到离线模型或在线模型对应的特征。
在第四方面,本发明实施例提供一种服务器,包括:
至少一个处理器;和
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的在线预测方法。
在第五方面,本发明实施例提供一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使服务器执行上述的在线预测方法。
在本发明各个实施例提供的在线预测方法中,首先,获取离线模型文件;对所述离线模型文件进行在线激活,生成在线模型;获取在线预测指令,基于所述在线模型,生成在线预测结果。通过对离线模型文件在线激活,以直接生成在线模型,能够减少离线模型的上线周期,解决现有离线模型上线周期长的技术问题,提高离线模型在线化的速度。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种应用环境的示意图;
图2是本发明实施例提供的一种底层架构的示意图;
图3是图2中的底层架构的具体示意图;
图4是本发明实施例提供的一种在线预测系统的结构示意图;
图5是本发明实施例提供的一种在线预测方法的流程示意图;
图6是图5中的步骤S10的细化流程图;
图7是本发明实施例提供的一种导入模型的示意图;
图8是本发明实施例提供的一种离线模型激活的流程示意图;
图9是本发明实施例提供的一种模型列表的示意图;
图10是图5中的步骤S30的细化流程图;
图11是本发明实施例提供的一种在线模型的子模型的示意图;
图12是本发明实施例提供的一种在线预测装置的结构示意图;
图13是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
目前,算法建模人员在通过代码编程生成离线模型后,工程人员将模型投入线上使用,而算法建模人员和工程人员需要从端到端的特征,进行离线模型的训练,在线预测跟进实现一个新场景新需求。
在初期个性化场景少的时候,从端到端虽然算法和工程人员项目接入深,能够深入理解业务,但是整个流程周期长,后期开发实现在线的时间紧张,而且跨语言实现工程算法,存在算法实现不准确问题,算法上线周期长,实验迭代减少,不利于整个项目效果优化。随着场景越来越多,需要算法策略优化各个场景,需要投入人力,快速迭代和实验调优,导致离线模型的上线速度慢,无法为用户提供在线预测。
针对上述问题,本发明提出一种全新的模型服务方案。
对本发明进行详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)预言模型标记语言,(Predictive Model Markup Language,PMML),一种基于XML的标准语言,用于表达数据挖掘模型,利用XML描述和存储数据挖掘模型,可以用来在不同的应用程序中交换模型,是一个已经被万维网联盟所接受的标准。使用PMML储存好模型之后,任何软件栈都可以调用PMML储存好的模型,PMML主要用于跨平台的机器学习模型部署。
2)k8s,又称为Kubernetes,是一个自动化部署、伸缩和操作应用程序容器的开源平台,Kubernetes能在实体机或虚拟机集群上调度和运行程序容器,而且,Kubernetes也能让开发者斩断联系着实体机或虚拟机的“锁链”,从以主机为中心的架构跃至以容器为中心的架构。该架构最终提供给开发者诸多内在的优势和便利,Kubernetes提供给基础架构以真正的以容器为中心的开发环境。
3)容器技术,Docker技术,Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中,容器技术不仅能提高现有应用的安全性和可移植性,还能节约成本。通过容器加速应用管道自动化和应用部署,能够提高交付速度。
4)软件开发工具包,(Software Development Kit,SDK),一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
5)每秒查询率,(Query Per Second,QPS),是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经通用每秒查询率来衡量。
6)Feed流,Feed是将用户主动订阅的若干消息源组合在一起形成内容聚合器,帮助用户持续地获取最新的订阅源内容,feed流即持续更新并呈现给用户内容的信息流。
请参阅图1,图1是本发明实施例提供的一种应用环境的示意图。如图1所示,该应用环境100,包括:服务器11以及终端设备12。
服务器11与终端设备12通过网络通信连接,以完成在线预测,例如:终端设备12向所述服务器11发送在线预测指令,所述在线预测指令包括应用场景,例如:广告推荐、首页推荐、文章推荐、险种推荐等个性化场景,服务器11通过获取所述在线预测指令,调用对应的模型服务,基于在线模型,生成预测值,并将所述预测值发送到所述终端设备12。
在一些实施例中,所述服务器11的数量为多个,多个服务器11可构成服务器集群,例如:该服务器集群包括:第一服务器、第二服务器,…,第N服务器,或者,该服务器集群可以是一个云计算服务中心,该云计算服务中心包括若干台服务器,服务器11包括但不限于:
(1)塔式服务器
一般的塔式服务器机箱和通用的PC机箱差不多,而大型的塔式机箱就要粗大很多,总的来说外形尺寸没有固定标准。
(2)机架式服务器
机架式服务器是由于满足企业的密集部署,形成的以19英寸机架作为标准宽度的服务器类型,高度则从1U到数U。将服务器放置到机架上,并不仅仅有利于日常的维护及管理,也可能避免意想不到的故障。首先,放置服务器不占用过多空间。机架服务器整齐地排放在机架中,不会浪费空间。其次,连接线等也能够整齐地收放到机架里。电源线和LAN线等全都能在机柜中布好线,可以减少堆积在地面上的连接线,从而防止脚踢掉电线等事故的发生。规定的尺寸是服务器的宽(48.26cm=19英寸)与高(4.445cm的倍数)。由于宽为19英寸,所以有时也将满足这一规定的机架称为“19英寸机架”。
(3)刀片式服务器
刀片服务器是一种HAHD(High Availability High Density,高可用高密度)的低成本服务器平台,是专门为特殊应用行业和高密度计算机环境设计的,其中每一块“刀片”实际上就是一块系统母板,类似于一个个独立的服务器。在这种模式下,每一个母板运行自己的系统,服务于指定的不同用户群,相互之间没有关联。不过可以使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来提供高速的网络环境,可以共享资源,为相同的用户群服务。
(4)云服务器
云服务器(Elastic Compute Service,ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效,用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。云服务器的分布式存储用于将大量服务器整合为一台超级计算机,提供大量的数据存储和处理服务。分布式文件系统、分布式数据库允许访问共同存储资源,实现应用数据文件的IO共享。虚拟机可以突破单个物理机的限制,动态的资源调整与分配消除服务器及存储设备的单点故障,实现高可用性。
在一些实施例中,服务器11可被预先配置有多层软件架构,例如,服务器11的软件架构包括:应用层、公共模型层、基础服务层、离线层、ODS层。
在一些实施例中,所述终端设备12的数量可以为一个,亦可以为多个,终端设备12包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类电子设备包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类电子设备包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放视频内容,一般也具备移动上网特性。该类设备包括:视频播放器,掌上游戏机,以及智能玩具和便携式车载导航设备。
(4)其他具有视频播放功能和上网功能的电子设备。
请参阅图2,图2是本发明实施例提供的一种底层架构的示意图;
如图2所示,该底层架构包括:应用层、公共模型层、基础服务层、特征服务层、离线层以及ODS层,其中,所述应用呈连接所述公共模型层以及基础服务层,所述公共模型层连接所述基础服务层以及特征服务层,所述公共模型层还连接离线层,所述基础服务层连接所述公共模型层、应用层以及所述特征服务层,所述特征服务层连接所述基础服务层、公共模型层以及离线层,所述离线层连接所述ODS层。
请再参阅图3,图3是图2中的底层架构的具体示意图;
如图3所示,该应用层,包括:推荐、风控等应用场景,该公共模型层包括:模型服务接口、模型路由、特征清单、模型计算、模型管理以及模型存储、模型监控、模型统计、模型可视化、模型调研等功能模块,该基础服务层包括名单服务等功能模块,该特征服务层包括特征服务、外部模型、在线特征等功能模块,该离线层包括数据仓库、离线特征等功能模块,该ODS层包括流量日志、应用日志、应用消息队列、数据库等功能模块。
请再参阅图4,图4是本发明实施例提供的一种在线预测系统的结构示意图;
如图4所示,该在线预测系统100,包括:场景应用系统10、模型管理平台20、计算分数接口101、模型管理接口201、融合策略分析单元30、特征分析单元40、特征转换单元50、集权管理单元60、分布式文件系统70、桥接单元80、分数计算单元90,其中,所述模型管理平台20通信连接所述场景应用系统10。
具体的,所述场景应用系统10,用于对接多个应用场景,例如:风控场景、推荐场景等应用场景。
具体的,所述计算分数接口101,连接所述场景应用系统10,用于调用模型服务进行在线预测;
具体的,所述模型管理平台20,用于管理离线模型文件或在线模型文件,例如:获取通用模型,将所述通用模型转换为特定格式的离线模型文件,或者,获取自定义算法,基于自定义插件脚本,将所述自定义算法转换为离线模型文件并存储所述离线模型文件。
具体的,所述模型管理接口201,连接所述模型管理平台20,用于获取模型信息,对离线模型和在线模型进行上线或下线,例如:所述模型管理接口201连接所述模型管理平台20,获取离线模型文件,基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;对所述离线模型文件进行离线激活,生成离线激活后的离线模型;基于离线激活后的离线模型,进行离线预测,生成离线预测结果;判断所述离线脚本结果与所述离线预测结果是否一致;若是,则对所述离线模型文件进行在线激活。
具体的,所述融合策略分析单元30,连接所述计算分数接口101,用于对多个子模型进行融合策略分析,计算多个子模型融合后的预测结果,例如:解析融合所述多个子模型的表达式,将所述表达式解析成结构化的抽象语法树(Abstract syntax tree,AST),并根据所述抽象语法树,执行基础的数学变换,从而生成融合后的表达式,其中,所述数学变换包括矩阵变换、向量变换等。通过融合后的表达式,计算多个子模型融合之后的预测结果。
具体的,所述特征分析单元40,连接所述融合策略分析单元,用于分析离线模型或在线模型需要的特征,并获取所述离线模型或在线模型需要的特征;
具体的,所述特征转换单元50,连接所述特征分析单元,用于对所述离线模型或在线模型需要的特征进行特征变换,以得到离线模型或在线模型对应的特征。
具体的,所述分布式文件系统70,用于存储离线模型和在线模型。
具体的,所述桥接单元80,连接所述集权管理单元以及所述分数计算单元,用于桥接对应的分数计算单元,多个所述桥接单元80构成bridge接口转换层,所述bridge接口转换层包括多个bridge接口,每一bridge接口对应一个分数计算单元,相当于每一桥接单元80对应一个分数计算单元,用于桥接所述分数计算单元完成在线预测。其中,所述bridge接口转换层将golang的接口转为java的服务,并提供服务发现,下游重启容错等功能,例如:所述桥接单元80用于完成转发单次请求、转发batch请求、转发PUT请求、转发GET请求,或者,所述桥接单元80用于完成模型守护,即若离线模型或在线模型在分数计算单元90中不存在,而所述离线模型或在线模型存储于所述分布式文件系统70,则所述桥接单元80同步所述分布式文件系统70与所述分数计算单元90中的离线模型或在线模型。
具体的,所述分数计算单元90,连接所述桥接单元80,用于提供在线模型服务,计算预测值,具体的,所述分数计算单元90存储离线模型和在线模型,通过所述离线模型或在线模型进行离线预测或在线预测,计算预测值。
在本发明实施例中,所述在线预测系统100封装多种程序语言的软件开发工具包(Software Development Kit,SDK),例如:Java、Python、C++、C语言,通过容器化部署,例如:基于通用容器技术(k8s),集成多种程序语言的SDK,从而实现多种程序语言开发出的模型文件均能够上线,实现在线预测。
在本发明实施例中,通过提供一种在线预测系统,包括:场景应用系统,用于对接多个应用场景;计算分数接口,连接所述场景应用系统,用于调用模型服务进行在线预测;分数计算单元,用于提供在线模型服务,计算预测值;模型管理平台,用于管理离线模型文件和在线模型文件;模型管理接口,连接所述模型管理平台,用于获取模型信息,对离线模型和在线模型进行上线或下线;分布式文件系统,连接所述模型管理平台,用于存储离线模型文件和在线模型文件。通过场景应用系统对接多个应用场景,结合计算分数接口,对不同应用场景提供在线模型服务,计算预测值,本发明实施例能够更好地提供在线预测服务,满足不同应用场景的预测需求。
请参阅图5,图5是本发明实施例提供的一种在线预测方法的流程示意图;
如图5所示,该在线预测方法,应用于服务器,所述方法包括:
步骤S10:获取离线模型文件;
具体的,所述离线模型文件为算法建模人员通过对离线模型进行离线训练,生成的离线模型文件,所述服务器将保存所述离线模型文件。其中,算法建模人员或开发人员通过终端设备上传离线模型文件和特征清单文件,使服务器获取离线模型文件和特征清单文件,例如:pmml模型文件、json特征清单文件,模型服务提供模型文件和清单文件上传管理,算法建模人员或开发人员只需将所述模型文件转换为通用pmml文件或json文件,则可以通过终端设备将所述pmml文件或json文件上传到所述服务器,以使所述服务器获取所述pmml文件或json文件。
针对通用模型/pmml模型解耦,离线训练和在线加载预测,算法建模人员和工程人员的工作,通过模型服务能够快速实现模型在线预测,但是对一些特定意义的场景,算法无法快速变为通用pmml格式或者对于编程能力强的算法人员,希望自己离线训练的模型能够直接对应语言投入生产,例如:python算法人员,c++算法人员,等等,此时需要解决跨语言诉求的问题,因此,本发明实施例通过容器技术,实现多语言的在线预测服务。
具体的,请参阅图6,图6是图5中的步骤S10的细化流程图;
如图6所示,该获取离线模型文件,包括:
步骤S101:对所述多种程序语言进行容器化部署,基于容器技术,封装多种程序语言的软件开发工具包;
具体的,所述离线模型文件包括多种程序语言,不同的程序语言训练生成的离线模型文件需要投入生产,因此,需要戒托容器化技术,封装对应程序语言的软件开发工具包(Software Development Kit,SDK),例如:封装python,c++,java对应的SDK,从而提供算法在线化。在本发明实施例中,所述容器技术为通用容器技术(k8s)。
步骤S102:根据所述多种程序语言的软件开发工具包,获取每一程序语言生成的离线模型文件。
具体的,根据所述多种程序语言的软件开发工具包,服务器能够获取每一程序语言生成的离线模型文件,在本发明实施例中,通过提供一套通用容器技术(k8s)解决框架,算法建模人员通过对应的程序语言,开发健壮性强的算法代码,直接从离线集成容器SDK,即可通过模型服务对外提供在线预测服务。
在本发明实施例中,在获取离线模型文件的步骤之前,所述方法还包括:
获取通用模型;
将所述通用模型转换为对应的特定格式的离线模型文件。
具体的,由于不同的应用场景对应不同的模型,为了满足多场景的在线预测,需要对通用模型进行上传,以实现在线化部署,通过获取通用模型,将所述通用模型转换为对应的离线模型文件,进一步的,本发明还将所述离线模型文件对应的离线模型进行在线激活,以生成在线模型,方便对多个应用场景的支持。在本发明实施例中,所述通用模型包括各种软件算法模型,例如:xgboost逻辑回归模型、K-近邻算法模型、决策树模型、朴素贝叶斯模型排序算法模型、图论算法模型、最短路径算法模型、遍历算法模型、字符匹配算法模型等算法模型。可以理解的是,每一通用模型对应一个或多个软件算法。
在本发明实施例中,在获取离线模型文件的步骤之前,所述方法还包括:
获取自定义算法,基于自定义插件脚本,将所述自定义算法对应生成二进制模型文件,将所述二进制模型文件转换为离线模型文件,例如:通过工具包将自定义算法,例如:xgboost训练的算法进行存储,比如本地存储为二进制模型文件(bin文件),通过相应的工具命令将所述自定义算法转换为特定格式的离线模型文件,例如:PMML模型文件。
具体的,本发明实施例提供多策略的方案,对不同算法进行在线化部署,例如:
(1)通用型模型和通用软件算法从离线实现在线化,通过将算法生成标准PMML格式文件,本发明通过解析PMML实现算法在线化,支持传统SAS和R语言软件的逻辑回归算法,xgboost随机森林,sparkML机器学习库算法可转成PMML格式的通用标准机器学习算法,本方案能够通过中间文件PMML文件对算法解析实现在线化预测,能够将传统算法工程师的通用标准算法模型,在线化部署实现在线预测;
(2)对于一些存在比较复杂灵活的算法,无法转成PMML标准算法模型,针对复杂场景,本发明通过提高灵活的插件脚本化支持自定义python脚本实现自己算法逻辑,不局限在pmml通用逻辑,每个python脚本内置函数逻辑,算法人员可以灵活实现,比如复杂的特征工程,实现自己的算法逻辑,该解决方案能够框架实现python脚本容器化部署k8s上,模型服务能够对外提供多种模型的算法预测统一输出;
(3)对于局部特征需要特征复杂变化,整个模型可以转pmml(比如通用通用的xgboost算法),可以结合通用型模型和通用软件算法以及复杂灵活的算法两个策略模型组装,对外提供模型通用,特征复杂变化的组合在线模型策略,对外提供实时在线预测。
通过多策略模型预测,本发明可以根据实际建模算法通用和不通用可以提高模型预测的灵活性,由于通用算法和pmml通用存在局限牺牲了灵活性,本发明还根据特征复杂和不复杂,组合在线模型,所述在线模型包括PMML模型以及插件化脚本算法模型,通过通用模型转PMML模型以及PMML模型+脚本插件化、容器化部署,从而实现多策略方案,能够对通用算法和非通用灵活不大众的算法,都能提供在线部署,保证输入特征能够输出对应预测值,极大地拓宽了在线预测的应用场景,提高了在线预测的成功率。
请参阅图7,图7是本发明实施例提供的一种导入模型的示意图;
如图7所示,通过选择文件,例如:pmml文件或json文件,从而上传模型文件或特征清单文件,相当于导入模型文件或特征清单文件,以使所述服务器接收所述模型文件或特征清单文件。
步骤S20:对所述离线模型文件进行在线激活,生成在线模型;
具体的,对于传统模型训练到模型的在线预测,包括离线流程和在线流程,通过激活离线流程方便对齐预测结果和离线脚本结果的一致性,当所述离线模型文件满足所述离线流程和所述在线流程后,对所述离线模型文件进行在线激活,生成在线模型,并将所述在线模型发布到生产系统(Production System,PRD)。
具体的,请再参阅图8,图8是本发明实施例提供的一种离线模型激活的流程示意图;
如图8所示,该离线模型激活的流程,包括:
步骤S201:基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;
具体的,通过所述离线模型文件,获取所述离线模型文件对应的离线模型,基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果,例如:通过获取所述离线模型文件对应的离线模型,所述离线模型为算法建模人员通过离线训练生成的模型,所述离线脚本结果为基于所述离线模型进行预测得到的结果,例如:所述离线模型为风险模型,所述风险模型对风险指标进行预测,则所述离线脚本结果为预期收益。
步骤S202:对所述离线模型文件进行离线激活,生成离线激活后的离线模型;
具体的,在基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果之后,对所述离线模型文件进行离线激活,生成离线激活后的离线模型,其中,所述离线模型文件对应的离线模型在未离线激活之前处于预备环境,作为准备阶段验证,若所述离线模型验证成功,则激活该离线模型生成离线激活后的离线模型,进行上线到生产环境正式投入生产,所述离线模型文件对应的离线模型在未激活之前和激活之后可以相同,也可以不同,例如:若离线激活后的离线模型的特征清单与离线激活之前的离线模型的相同,则该离线模型在激活前和激活后的参数相同,若所述离线激活后的离线模型的特征清单与离线激活之前的离线模型的不同,则该离线模型在激活前和激活后的参数不同。
可以理解的是,本发明可以在接收到用户发送的离线激活指令后,对所述离线模型文件进行离线激活。
步骤S203:基于离线激活后的离线模型,进行离线预测,生成离线预测结果;
具体的,在对所述离线模型文件进行离线激活,生成离线激活后的离线模型之后,基于离线激活后的离线模型,进行离线预测,以生成离线预测结果。
步骤S204:判断所述离线脚本结果与所述离线预测结果是否一致;
具体的,通过判断所述离线脚本结果与所述离线预测结果是否一致,确认所述离线模型文件在离线激活之前与离线激活之后的预测结果是否一致,若是,则确认所述离线模型的一致性,并进入步骤S205:对所述离线模型文件进行在线激活;若否,则进入步骤S206:修改离线模型文件。
步骤S205:对所述离线模型文件进行在线激活;
具体的,若所述离线脚本结果与所述离线预测结果一致,则对所述离线模型文件进行在线激活。
可以理解的是,本发明可以在接收到用户发送的在线激活指令后,对所述离线模型文件进行在线激活。
步骤S206:修改离线模型文件;
具体的,当所述离线脚本结果与所述离线预测结果不一致时,此时离线模型文件存在算法人员和工程人员算法预测的不一致问题,此时需要修改所述离线模型文件,或者,对所述离线模型文件进行调试。
请再参阅图9,图9是本发明实施例提供的一种模型列表的示意图;
如图9所示,该模型列表包括每一模型的创建时间、模型名称、更新时间、线上状态、离线状态,通过上传离线模型文件,以及上传在线模型文件,从而确定该离线模型文件或在线模型文件对应的离线模型或在线模型的状态,例如:线上状态为已激活或已上传,离线状态为已激活或已上传。
在本发明实施例中,通过判断离线脚本结果与离线预测结果的一致性,本发明能够解决算法人员和工程人员算法预测的不一致问题,从而加速模型在线化的速度。
步骤S30:获取在线预测指令,基于所述在线模型,生成在线预测结果。
具体的,请参阅图10,图10是图5中的步骤S30的细化流程图;
如图10所示,该获取在线预测指令,基于所述在线模型,生成在线预测结果,包括:
步骤S301:基于特征清单,调用特征服务,获取在线特征;
具体的,在线模型预测需要输入在线特征到在线模型,由在线模型计算结果,而本发明中的模型服务解决方案支持在线预测的业务场景,模型服务通过特征清单,内部调用特征服务,获取在线特征,比如年龄特征,模型服务通过内部调用下游的特征服务,获取对应的年龄特征。
其中,在线特征是指通过调用特征服务获取到的在线模型需要的特征,例如:年龄特征、性别特征、身高特征、工资特征、投保金额等特征,可以理解的是,不同在线模型对应的在线特征可以不同。
具体的,在获取离线模型文件之后,所述方法还包括:基于所述离线模型文件,确定离线模型,所述基于特征清单,调用特征服务,获取在线特征,包括:
对所述离线模型或在线模型进行特征分析,确定所述离线模型或在线模型对应的特征;
具体的,通过对所述离线模型或在线模型进行特征分析,分析所述离线模型或在线模型需要使用的特征,获取所述离线模型或在线模型对应的特征。其中,所述离线模型和在线模型对应的特征可能相同,也可能不同,例如:若所述离线模型上线后,变成在线模型,若离线模型需要获取的特征和在线模型需要获取的特征均包含性别特征,此时不需要特征变换,则离线模型和在线模型对应的特征相同;若离线模型需要获取的特征为年龄特征,其需要的特征字段为年龄字段,而在线模型需要的特征字段为年龄分区字段,例如:离线模型需要的特征为age=40的特征,而在线模型需要的特征为age>30的特征,此时需要进行特征变换,将age=40的特征变换为age>30的特征,以得到离线模型或在线模型对应的特征,则离线模型和在线模型对应的特征不同。
调用特征服务,获取所述离线模型或在线模型对应的特征。
具体的,所述调用特征服务,获取所述离线模型或在线模型对应的特征,包括:
获取预先建立的特征清单字典;
具体的,在本发明实施例中,所述特征清单字典用于记录所述离线模型或在线模型需要的特征,为了快速确定离线模型或在线模型需要的特征,因此需要维护一份特征清单字典,所述特征清单字典为预先建立的,算法建模人员通过终端设备上传特征清单文件,所述在线预测系统的服务器接收所述终端设备发送的特征清单文件,获取所述特征清单文件对应的特征,组合多个特征清单文件以生成所述特征清单字典,并且,所述特征清单字典保存在所述服务器的高速寄存器中,以方便快速确定某一离线模型或在线模型对应的特征清单,通过特征清单字典的特征清单调用特征服务,获取所述特征清单中的在线特征,特征清单具体指的是某一模型需要获取的特征,例如:股市预测模型需要获取的特征为恒生指数、当前股价、昨日收盘股价等特征。
其中,所述特征服务是指在线预测系统对外部提供的特征服务接口,终端设备可以通过调用所述特征服务接口获取在线特征。所述特征服务包括在线特征服务以及离线特征服务,分别对应所述在线模型和所述离线模型,例如:通过配置特征清单字典,所述特征清单字典包括多个特征清单,所述模型服务通过解析特征清单字典,获取某一模型对应的特征清单,从而调用下游的特征服务,从而获取该模型对应的特征,并返回该模型对应的特征的特征值,将该特征值输入给模型计算逻辑,从而计算获取预测值,所述预测值代表该模型的预测结果,比如股票预测值,例如:模型为股票预测模型,通过配置特征清单字典,配置所述股票预测模型对应的特征清单,模型服务通过解析所述特征清单字典,获取所述特征清单字典中的股票预测模型对应的特征清单,进而调用特征服务,获取所述特征清单对应的特征,将所述特征的特征值输入该股票预测模型,获取预测值。
在本发明实施例中,通过基于特征清单,内部调用特征服务,获取在线特征,将所述在线特征输入PMML模型计算逻辑或者插件化脚本算法模型,并生成预测值,通过建立特征清单字典,所述特征清单字典用于存储所述离线模型或在线模型对应的特征,并且,所述特征清单字典用于调用在线特征服务,获取对应的特征清单,将所述特征清单中的特征值输入到模型计算逻辑,获取最终预测值。
根据所述特征清单字典,获取所述离线模型或在线模型需要预处理的特征及其对应的处理方法;基于所述处理方法,对所述需要预处理的特征进行特征变换,以得到离线模型或在线模型对应的特征。
具体的,所述特征清单字典包括所述离线模型或在线模型需要预处理的特征及其对应的处理方法,所述处理方法包括:特征变换方法,例如:连续数据分段、枚举类型独热编码、向量化等处理方法,比如:月工资是连续数据,连续分段的策略为:月工资>10000的是有钱人,月工资>20000是超级有钱人,月工资<5000是没钱的人,那么根据这种分段方式,可以将工资这个特征,分段成新的字段,比如某人的月工资为19000,则特征为:财务情况=有钱人,比如存在x1 x2 x3原始特征,组合新的特征x=2*x1+x2*x2+x1*x3,从而处理成新的特征,也比如独热编码:性别=F、性别=M,字符串处理为0、1的值,则处理后的特征为:性别#F=0,性别#M=1。
可以理解的是,在离线模型或在线模型进行发布时,将一并发布所述离线模型或在线模型对应的需要预处理的特征,通过在线模型提供在线预测服务,将所述在线模型线上发布,以提供在线预测服务。
步骤S302:向所述在线模型输入所述在线特征,生成预测值。
具体的,在所述模型服务获取到所述在线特征后,向所述在线模型输入所述在线特征,根据所述在线特征,进行在线预测以生成预测值,例如:在模型服务获取到年龄特征后,输入给pmml模型计算逻辑或者插件化脚本算法模型,由pmml模型计算逻辑或者插件化脚本算法模型进行计算,进行在线预测以生成预测值,从而实现模型预测的流程。
可以理解的是,随着算法应用场景增多,对人力需要投入,不同场景的模型不能复用,导致A系统应用的子模型,在B系统应用需要重新实现等等这些客观存在的缺陷,导致在线模型的产出周期长。
基于上述问题,本发明通过建立多个子模型,每一子模型对应一种应用场景,解决多个应用场景不能复用的技术问题,具体的,所述在线模型包括多个子模型,每一子模型对应一种应用场景,所述方法还包括:
对所述多个子模型进行融合策略分析,生成多个子模型融合后的预测结果。
请再参阅图11,图11是本发明实施例提供的一种在线模型的子模型的示意图;
如图11所示,该在线模型的子模型包括:复购模型、风控模型、相关性模型等,其中,所述复购模型对应保险场景,所述风控模型对应风控场景,所述相关性模型对应广告推荐场景等。
具体的,所述对所述多个子模型进行融合策略分析,生成多个子模型融合后的预测结果,包括:
解析融合所述多个子模型的表达式,将所述表达式解析成结构化的抽象语法树(Abstract syntax tree,AST),并根据所述抽象语法树,执行基础的数学变换,从而生成融合后的表达式,其中,所述数学变换包括矩阵变换、向量变换等。通过融合后的表达式,计算多个子模型融合之后的预测结果。
下面以风控场景为例,对本发明的在线预测方法进行阐述。
(1)首先,算法建模人员通过进行离线训练,对通用模型进行生成特定格式的离线模型文件,例如PMML格式文件,并且,基于自定义插件脚本,对算法建模人员生成的自定义算法对应生成二进制模型文件,并将所述二进制模型文件转换为特定格式的离线模型文件,并将该离线模型文件上传到模型管理平台,以使所述模型管理平台获取离线模型文件,所述离线模型文件可以为不同的程序语言开发的文件;
(2)其次,基于通用容器技术,对所述离线模型文件进行容器化部署,基于多种程序语言的软件开发工具包,识别不同的程序语言开发的离线模型文件,对所述离线模型文件进行在线激活,将该离线模型文件进行在线化部署,其中,所述风控模型包括保险模型、反欺诈模型等子模型;
(3)再次,终端设备通过在线预测系统对外部提供的特征服务接口,调用特征服务,通过特征清单字典获取所述风控模型需要的在线特征,所述在线特征包括用户特征,比如年龄特征、性别特征、籍贯特征;交易数据特征,比如交易频次特征、交易金额特征;第三方数据特征,比如征信特征等;
(4)最后,在线预测系统提供模型服务,通过模型服务在线预测接口,调用模型服务,将特征服务获取到的在线特征输入风控模型进行模型计算,获取预测值,在风控模型中,该预测值为预期收益,通过对多个子模型,例如:保险模型、反欺诈模型等子模型进行融合策略分析,获取多个子模型的表达式,将所述多个子模型的表达式解析融合成结构化的抽象语法树,生成融合后的表达式,基于所述融合后的表达式,对所述在线特征进行模型计算,得到预测值,即得到预期收益,将该预期收益作为预测结果。
在本发明实施例中,通过提供一种在线预测方法,所述方法包括:对所述离线模型文件进行在线激活,生成在线模型;获取在线预测指令,基于所述在线模型,生成在线预测结果。通过对离线模型文件在线激活,以直接生成在线模型,能够减少离线模型的上线周期,解决现有离线模型上线周期长的技术问题,提高离线模型在线化的速度,通过解耦离线训练和在线预测,对模型标准化提供在线预测,能够更好地提供模型的在线化服务。
请再参阅图12,图12是本发明实施例提供的一种在线预测装置的结构示意图;
如图12所示,该在线预测装置120,应用于服务器,所述在线预测装置120,包括:
离线模型获取模块121,用于获取离线模型文件;
在线模型生成模块122,用于对所述离线模型文件进行在线激活,生成在线模型;
在线预测结果模块123,用于获取在线预测指令,基于所述在线模型,生成在线预测结果。
在本发明实施例中,所述离线模型文件包括多种程序语言,所述离线模型获取模块121,具体用于:
对所述多种程序语言进行容器化部署,基于容器技术,封装多种程序语言的软件开发工具包;
根据所述多种程序语言的软件开发工具包,获取每一程序语言生成的离线模型文件。
在本发明实施例中,所述在线模型生成模块122,具体用于:
基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;
对所述离线模型文件进行离线激活,生成离线激活后的离线模型;
基于离线激活后的离线模型,进行离线预测,生成离线预测结果;
在确定所述离线脚本结果与所述离线预测结果一致的情况下,对所述离线模型文件进行在线激活,生成在线模型。
在本发明实施例中,所述在线预测结果模块123,具体用于:
基于特征清单,调用特征服务,获取在线特征;
向所述在线模型输入所述在线特征,生成预测值作为在线预测结果。
在本发明实施例中,通过提供一种在线预测装置,应用于服务器,包括:离线模型获取模块,用于获取离线模型文件;在线模型生成模块,用于对所述离线模型文件进行在线激活,生成在线模型;在线预测结果模块,用于获取在线预测指令,基于所述在线模型,生成在线预测结果。通过对离线模型文件在线激活,以直接生成在线模型,能够减少离线模型的上线周期,解决现有离线模型上线周期长的技术问题,提高离线模型在线化的速度。
请再参阅图13,图13是本发明实施例提供的一种服务器的结构示意图;
如图13所示,该服务器130包括一个或多个处理器131以及存储器132。其中,图13中以一个处理器131为例。
处理器131和存储器132可以通过总线或者其他方式连接,图13中以通过总线连接为例。
存储器132作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的车险数据测试方法对应的程序指令/模块。处理器131通过运行存储在存储器132中的非易失性软件程序、指令以及模块,从而执行各种功能应用以及数据处理,即实现上述方法实施例提供的在线预测方法以及上述装置实施例的各个模块或单元的功能。
存储器132可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器132可选包括相对于处理器131远程设置的存储器,这些远程存储器可以通过网络连接至处理器131。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令/模块存储在所述存储器132中,当被所述一个或者多个处理器131执行时,执行上述任意方法实施例中的在线预测方法。
本发明实施例的服务器130以多种形式存在,在执行以上描述的图5所示的各个步骤;也可实现所述的各个单元的功能时,上述服务器130包括但不限于:塔式服务器、机架式服务器、刀片式服务器、云服务器等服务器。
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图13中的一个处理器131,可使得上述一个或多个处理器可执行上述任意方法实施例中的在线预测方法。
本发明实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被服务器执行时,使所述服务器执行上述的在线预测方法。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (16)

1.一种在线预测方法,其特征在于,包括:
获取离线模型文件;
对所述离线模型文件进行在线激活,生成在线模型;
获取在线预测指令,基于所述在线模型,生成在线预测结果。
2.根据权利要求1所述的方法,其特征在于,所述获取离线模型文件的步骤之前,所述方法还包括:
获取通用模型,将所述通用模型转换为特定格式的离线模型文件。
3.根据权利要求1所述的方法,其特征在于,所述获取离线模型文件的步骤之前,所述方法还包括:
获取自定义算法,基于自定义插件脚本,将所述自定义算法对应生成二进制模型文件;
将所述二进制模型文件转换为特定格式的离线模型文件。
4.根据权利要求1所述的方法,其特征在于,所述离线模型文件包括多种程序语言,所述获取离线模型文件,包括:
对所述多种程序语言进行容器化部署,基于容器技术,封装多种程序语言的软件开发工具包;
根据所述多种程序语言的软件开发工具包,获取每一程序语言生成的离线模型文件。
5.根据权利要求1所述的方法,其特征在于,所述对所述离线模型文件进行在线激活,生成在线模型,具体用于:
基于所述离线模型文件对应的离线模型进行预测,生成离线脚本结果;
对所述离线模型文件进行离线激活,生成离线激活后的离线模型;
基于离线激活后的离线模型,进行离线预测,生成离线预测结果;
在确定所述离线脚本结果与所述离线预测结果一致的情况下,对所述离线模型文件进行在线激活,生成在线模型。
6.根据权利要求1所述的方法,其特征在于,所述获取在线预测指令,基于所述在线模型,生成在线预测结果,包括:
基于特征清单,调用特征服务,获取在线特征;
向所述在线模型输入所述在线特征,生成预测值作为在线预测结果。
7.根据权利要求6所述的方法,其特征在于,在获取离线模型文件之后,所述方法还包括:基于所述离线模型文件,确定离线模型,所述基于特征清单,调用特征服务,获取在线特征,包括:
对所述离线模型或在线模型进行特征分析,确定所述离线模型或在线模型对应的特征;
调用特征服务,获取所述离线模型或在线模型对应的特征。
8.根据权利要求7所述的方法,其特征在于,所述调用特征服务,获取所述离线模型或在线模型对应的特征,包括:
获取预先建立的特征清单字典;
根据所述特征清单字典,获取所述离线模型或在线模型需要预处理的特征及其对应的处理方法;
基于所述处理方法,对所述需要预处理的特征进行特征变换,以得到离线模型或在线模型对应的特征。
9.根据权利要求1所述的方法,其特征在于,所述在线模型包括多个子模型,所述方法还包括:
对所述多个子模型进行融合策略分析,生成多个子模型融合后的预测结果。
10.根据权利要求9所述的方法,其特征在于,所述对所述多个子模型进行融合策略分析,包括:
获取所述多个子模型的表达式,将所述多个子模型的表达式解析融合成结构化的抽象语法树。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述在线模型包括PMML模型以及插件化脚本算法模型。
12.一种在线预测系统,其特征在于,包括:
场景应用系统,用于对接多个应用场景;
计算分数接口,连接所述场景应用系统,用于调用模型服务进行在线预测;
分数计算单元,用于提供在线模型服务,计算预测值;
模型管理平台,用于管理离线模型文件和在线模型文件;
模型管理接口,连接所述模型管理平台,用于获取模型信息,对离线模型和在线模型进行上线或下线;
分布式文件系统,连接所述模型管理平台,用于存储离线模型文件和在线模型文件。
13.根据权利要求12所述的在线预测系统,其特征在于,所述场景应用系统还包括:
集权管理单元,连接所述场景应用系统以及所述模型管理平台,用于管理所述在线预测系统的工作节点。
14.根据权利要求13所述的在线预测系统,其特征在于,所述在线预测系统还包括:
桥接单元,连接所述集权管理单元以及所述分数计算单元,用于桥接对应的分数计算单元。
15.根据权利要求12所述的在线预测系统,其特征在于,每一应用场景对应一个子模型,所述在线预测系统还包括:
融合策略分析单元,用于对多个子模型进行融合策略分析,计算多个子模型融合后的预测结果;
特征分析单元,连接所述融合策略分析单元,用于分析离线模型或在线模型需要的特征,并获取所述离线模型或在线模型需要的特征;
特征转换单元,连接所述特征分析单元,用于对所述离线模型或在线模型需要的特征进行特征变换,以得到离线模型或在线模型对应的特征。
16.一种服务器,其特征在于,包括:
至少一个处理器;和
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-11任一项所述的在线预测方法。
CN201911204376.3A 2019-11-29 2019-11-29 一种在线预测方法、系统及服务器 Active CN111062521B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911204376.3A CN111062521B (zh) 2019-11-29 2019-11-29 一种在线预测方法、系统及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911204376.3A CN111062521B (zh) 2019-11-29 2019-11-29 一种在线预测方法、系统及服务器

Publications (2)

Publication Number Publication Date
CN111062521A true CN111062521A (zh) 2020-04-24
CN111062521B CN111062521B (zh) 2023-09-12

Family

ID=70299180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911204376.3A Active CN111062521B (zh) 2019-11-29 2019-11-29 一种在线预测方法、系统及服务器

Country Status (1)

Country Link
CN (1) CN111062521B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752556A (zh) * 2020-06-28 2020-10-09 自然资源部信息中心 基于双层模型结构的数据预测系统及方法
CN112418930A (zh) * 2020-11-23 2021-02-26 恩亿科(北京)数据科技有限公司 一种测试方法、系统及计算机设备
CN112631719A (zh) * 2020-12-23 2021-04-09 平安银行股份有限公司 数据预测模型调用方法、装置、设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108510082A (zh) * 2018-03-27 2018-09-07 苏宁易购集团股份有限公司 对机器学习模型进行处理的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108510082A (zh) * 2018-03-27 2018-09-07 苏宁易购集团股份有限公司 对机器学习模型进行处理的方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752556A (zh) * 2020-06-28 2020-10-09 自然资源部信息中心 基于双层模型结构的数据预测系统及方法
CN111752556B (zh) * 2020-06-28 2021-04-30 自然资源部信息中心 基于双层模型结构的数据预测系统及方法
CN112418930A (zh) * 2020-11-23 2021-02-26 恩亿科(北京)数据科技有限公司 一种测试方法、系统及计算机设备
CN112418930B (zh) * 2020-11-23 2024-02-27 恩亿科(北京)数据科技有限公司 一种测试方法、系统及计算机设备
CN112631719A (zh) * 2020-12-23 2021-04-09 平安银行股份有限公司 数据预测模型调用方法、装置、设备和存储介质
CN112631719B (zh) * 2020-12-23 2023-11-10 平安银行股份有限公司 数据预测模型调用方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111062521B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
Vögele et al. WESSBAS: extraction of probabilistic workload specifications for load testing and performance prediction—a model-driven approach for session-based application systems
McChesney et al. Defog: fog computing benchmarks
CN109067890B (zh) 一种基于docker容器的CDN节点边缘计算系统
CN110192210A (zh) 构建和处理用于动态结构化机器学习模型的计算图
US8843889B2 (en) Managing application template artifacts in a networked computing environment
CN111062521B (zh) 一种在线预测方法、系统及服务器
CN110851167B (zh) 容器环境更新方法、装置、设备及存储介质
US20230289828A1 (en) Data processing method, computer device, and readable storage medium
CN108304201A (zh) 对象更新方法、装置及设备
US20200026577A1 (en) Allocation of Shared Computing Resources Using Source Code Feature Extraction and Clustering-Based Training of Machine Learning Models
CN109842563A (zh) 内容分发网络流量调度方法、装置和计算机可读存储介质
US11301226B2 (en) Enterprise deployment framework with artificial intelligence/machine learning
CN111459610B (zh) 一种模型部署方法和装置
US12001273B2 (en) Software validation framework
CN111177541A (zh) 基于用户标签生成时间的数据分析方法及装置、服务器、存储介质
CN114564374A (zh) 算子性能评估方法、装置、电子设备及存储介质
US11501155B2 (en) Learning machine behavior related to install base information and determining event sequences based thereon
CN114253798A (zh) 指标数据采集方法和装置、电子设备、存储介质
Ciccozzi et al. An automated round-trip support towards deployment assessment in component-based embedded systems
US20180005249A1 (en) Optimize a resource allocation plan corresponding to a legacy software product sustenance
Zeller Disaggregated heterogeneous system for retrieval-augmented language models
CN110414021A (zh) 工业物联网的边缘设备事件规则产生系统、装置和方法
US20210286785A1 (en) Graph-based application performance optimization platform for cloud computing environment
US11316747B2 (en) Method and system for efficient multi agent computer simulation
Grzech et al. Methodology and platform for business process optimization

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