CN110288093A - 数据处理方法、装置、存储介质及处理器 - Google Patents
数据处理方法、装置、存储介质及处理器 Download PDFInfo
- Publication number
- CN110288093A CN110288093A CN201910491095.4A CN201910491095A CN110288093A CN 110288093 A CN110288093 A CN 110288093A CN 201910491095 A CN201910491095 A CN 201910491095A CN 110288093 A CN110288093 A CN 110288093A
- Authority
- CN
- China
- Prior art keywords
- data
- historical
- learning model
- time window
- machine learning
- 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.)
- Pending
Links
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/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/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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Abstract
本发明公开了一种数据处理方法、装置、存储介质及处理器。其中,该方法包括:监测流数据,确定流数据中的历史数据和更新数据,其中,更新数据处于更新时间窗口内,历史数据处于历史时间窗口内;根据历史数据训练历史机器学习模型;根据更新数据训练更新机器学习模型;根据历史机器学习模型和更新机器学习模型,生成有效机器学习模型,其中,有效机器学习模型用于对流数据进行处理。本发明解决了无法根据流数据对机器模型进行自动更新的技术问题。
Description
技术领域
本发明涉及机器学习领域,具体而言,涉及一种数据处理方法、装置、存储介质及处理器。
背景技术
大数据具有规模性(volume)、多样性(variety)、高速性(velocity)和准确性(veracity)四个特点,其前期研究工作主要集中在规模性和多样性上展开,而目前广泛存在并应用的数据是像金融、交通等场景下产生的流式数据(即流数据)。但是,流数据不同于传统的静态数据形态,作为一种新型大数据的数据形态更多的体现了大数据要求的数据量大和实时性的特点。流数据需要我们从海量信息中更快的提取有价值的信息。因此,面向大数据的流分类挖掘研究显得尤为重要。流式数据分为稳定流数据和动态流数据,稳定流数据中的数据具有稳定独立同分布的特点,而在动态流数据中,不同数据批不总是独立同分布的,相邻两条数据之间也可能来自不同的分布(例如写字楼的周五至周一的每天门禁记录数,周五与周六分布不同,但周六与周日分布可能相同,而周日与周一分布不同。)因此会产生概念漂移。
目前的数据挖掘算法系统(即机器学习)大多数都是针对静态数据的,但是漂移时流数据中的数据分布发生变化,例如流数据中的历史数据和当前数据之间的数据分布差异较大,按照针对静态数据的方式建立的机器学习模型,本质上都不具有抵抗流式数据概念漂移的能力。
针对上述无法根据流数据对机器模型进行自动更新的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法、装置、存储介质及处理器,以至少解决无法根据流数据对机器模型进行自动更新的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理方法,包括:监测流数据,确定所述流数据中的历史数据和更新数据,其中,所述更新数据处于更新时间窗口内,所述历史数据处于历史时间窗口内;根据所述历史数据训练历史机器学习模型;根据所述更新数据训练更新机器学习模型;根据所述历史机器学习模型和所述更新机器学习模型,生成有效机器学习模型,其中,所述有效机器学习模型用于对所述流数据进行处理。
进一步地,确定所述流数据中的历史数据包括:识别所述流数据的自然周期;根据所述自然周期确定所述历史时间窗口的长度;将在所述流数据中所述历史时间窗口采集的数据作为历史数据存入历史数据库。
进一步地,识别所述流数据的自然周期包括以下至少之一:识别所述流数据的来源特征,确定所述流数据的自然周期,其中,所述来源特征用于表示所述流数据中的数据对应的多个数据源,所述流数据的自然周期为多个所述数据源自然更新的周期的最小公倍数;识别所述流数据的数据分布特征,根据所述数据分布特征确定所述流数据的自然周期。
进一步地,确定所述流数据中的更新数据包括:根据所述流数据确定所述更新时间窗口的长度,其中,所述更新时间窗口的长度随所述更新数据的增加而增长的;将在所述流数据中所述更新时间窗口采集的数据作为所述更新数据存入更新数据库。
进一步地,在将所述流数据中所述更新时间窗口对应的数据存入更新数据库之后,所述方法还包括:监测所述更新时间窗口的长度;在所述更新时间窗口的长度达到所述历史时间窗口的长度的情况下,使用所述更新数据库替换所述历史数据库,并将所述更新数据库作为新的历史数据库。
进一步地,在确定所述流数据中的历史数据和更新数据之后,所述方法还包括以下至少之一:监视所述更新数据的数据特征和所述历史数据的数据特征是否发生改变;监视所述流数据在所述更新时间窗口内的数据分布与所述历史时间窗口内的数据分布是否一致。
根据本发明实施例的另一方面,还提供了一种数据处理装置,包括:监视单元,用于监测流数据,确定所述流数据中的历史数据和更新数据,其中,所述更新数据处于更新时间窗口内,所述历史数据处于历史时间窗口内;第一训练单元,用于根据所述历史数据训练历史机器学习模型;第二训练单元,用于根据所述更新数据训练更新机器学习模型;生成单元,用于根据所述历史机器学习模型和所述更新机器学习模型,生成有效机器学习模型,其中,所述有效机器学习模型用于对所述流数据进行处理。
进一步地,所述监视单元包括:识别模块,用于识别所述流数据的自然周期;第一确定模块,用于根据所述自然周期确定所述历史时间窗口的长度;第一存储模块,用于将在所述流数据中所述历史时间窗口采集的数据作为历史数据存入历史数据库。
根据本发明实施例的另一个方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的数据处理方法。
根据本发明实施例的又一个方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的数据处理方法。
在本发明实施例中,流数据中包括历史数据和更新数据,通过对流数据进行监测,可以在流数据中采集更新时间窗口对应的更新数据,还可以在流数据中采集历史时间窗口对应的历史数据,然后根据历史数据训练历史机器学习模型,根据更新数据训练更新机器学习模型,再将历史机器学习模型与更新机器学习模型进行结合,生成可以对流数据进行有效处理的有效机器学习模型,通过有效机器学习模型,从而在流数据中数据发生变化的情况下,生成的有效机器学习模型也会随之生改变,达到了对流数据的概念漂移进行有效对抗的目的,实现了根据流数据自动更新有效机器学习模型的技术效果,进而解决了无法根据流数据对机器模型进行自动更新的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了一种用于实现数据处理方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本发明实施例的一种数据处理方法的流程图;
图3是根据本发明实施例的一种生产有效机器学习模型的示意图;
图4是根据本发明实施例的一种数据处理系统的示意图;
图5是根据本发明实施例的一种流数据采集组件的示意图;
图6是根据本发明实施例的一种流数据窗口组件的示意图;
图7是根据本发明实施例的一种流数据监视组件的示意图;
图8是根据本发明实施例的一种模型生成组件的示意图;
图9是根据本发明实施例的一种窗口维护组件的示意图;
图10是根据本发明实施例的一种数据处理装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
名词解释:流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,流数据可被视为一个随时间延续而无限增长的动态数据集合。
根据本发明实施例,还提供了一种数据处理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现数据处理方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输模块106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
图2是根据本发明实施例的一种数据处理方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,监测流数据,确定流数据中的历史数据和更新数据,其中,更新数据处于更新时间窗口内,历史数据处于历史时间窗口内;
步骤S204,根据历史数据训练历史机器学习模型;
步骤S206,根据更新数据训练更新机器学习模型;
步骤S208,根据历史机器学习模型和更新机器学习模型,生成有效机器学习模型,其中,有效机器学习模型用于对流数据进行处理。
通过上述步骤,流数据中包括历史数据和更新数据,通过对流数据进行监测,可以在流数据中采集更新时间窗口对应的更新数据,还可以在流数据中采集历史时间窗口对应的历史数据,然后根据历史数据训练历史机器学习模型,根据更新数据训练更新机器学习模型,再将历史机器学习模型与更新机器学习模型进行结合,生成可以对流数据进行有效处理的有效机器学习模型,通过有效机器学习模型,从而在流数据中数据发生变化的情况下,生成的有效机器学习模型也会随之生改变,达到了对流数据的概念漂移进行有效对抗的目的,实现了根据流数据自动更新有效机器学习模型的技术效果,进而解决了无法根据流数据对机器模型进行自动更新的技术问题。
可选地,更新时间窗口与历史时间窗口相邻。
需要说明的是,概念漂移大致分为:突变漂移、渐变漂移和重复漂移(如节假日影响)。因为漂移时流数据中的数据分布发生变化,其中历史数据和更新数据的数据分布差异较大,如果不加以区分,可能出现使用历史数据越多机器学习模型的当前能力越差的情况(例如最近一年数据训练的期指模型能力不如最近一月数据训练的模型能力)。因此,本发明提供的技术方案,通过使用不同时间窗口(如更新时间窗口与历史时间窗口)叠加的方式迭代模型,动态且自适应地处理含有周期且可能存在概念漂移的数据,并以此解决模型通常存在的随时间衰减的问题。
可选地,历史机器学习模型还可以是在当前更新数据之前确定的有效机器学习模型。
需要说明的是,流数据中的更新数据可以随时变化,更新机器学习模型也可以随之发生改变,实时进行更新,则根据历史机器学习模型和更新机器学习模型得到的有效机器模型也会自动发生改变。在流数据实时发生改变的情况下,若根据完整的流数据实时训练机器学习模型,数据的训练量较大;而在流数据发生变化的情况下,变化主要体现在流数据中的更新数据部分,根据变化的更新数据训练更新机器学习模型,数据的训练量较小,进而再由于有效机器学习模型是根据更新机器学习模型和历史机器学习模型得到的,从而减低对有效机器学习模型进行更新的更新难度。
可选地,时间窗口用于对流数据中指定时间范围内数据进行采集,其中,时间窗口包括:历史时间窗口和更新时间窗口,历史时间窗口的长度固定,即历史时间窗口用于按照固定的时间范围对流数据中的数据进行采集;更新时间窗口的长度实时发生改变,即更新时间窗口用于按照实时变化的时间范围对流数据中的数据进行采集。
需要说明的是,定长窗(即历史时间窗口)存在的目的是覆盖流数据中的自然周期,这部分训练出来的模型用来区分流数据中正常的周期变化(渐变或重复);变长窗(即更新时间窗口)存在的目的是用更小粒度的当前窗口适应有可能出现的突变。
通过定长窗(即历史时间窗口)和变长窗(即更新时间窗口)叠加,再辅以其他数据库技术(例如能定向区分数据分布差异的数据库抽样),使用特定的机器学习模型(如有效机器学习模型),可以将概念漂移的影响控制在一定边界内,并实现自适应控制及更新。
可选地,历史时间窗口的长度可以根据流数据的自然周期确定。
需要说明的是,有效机器学习模型指的是,将更新机器学习模型集成到历史机器学习模型后得到的,可同时适用于历史时间窗口和更新时间窗口内数据的模型。
可选地,更新机器学习模型集成到历史机器学习模型包括:采用串行的集成方式(如stacking栈堆泛化的集成方式),集成更新机器学习模型和历史机器学习模型。
例如,使用更新机器学习模型和历史机器学习模型的输出,作为有效机器学习模型的输入,从而训练出有效机器学习模型。
可选地,更新机器学习模型集成到历史机器学习模型包括:采用并行的集成方式(如bagging自助聚集的集成方式),集成更新机器学习模型和历史机器学习模型。
例如,在多次通过历史数据训练历史机器学习模型后,可以将多次训练得到的历史机器学习模型放入模型池中,然后更新机器模型与模型池中的多个历史机器学习模型结合,从而得到有效机器学习模型。
图3是根据本发明实施例的一种生产有效机器学习模型的示意图,如图3所示,机器学习模型包括:历史机器学习模型和更新机器学习模型,可以根据历史数据训练得到更新机器学习模型,还可以根据更新数据训练得到更新机器学习模型。
可选地,当更新窗口到达一个完整周期后,可以将该完整周期内的更新数据作为新的历史数据,从而训练得到新的更新机器学习模型,以达到抛弃上上个周期的数据而消除对原有模型的影响的目的。
可选地,假定图3的最后一步所示,表示此更新时间窗口中的最后一批更新数据正在被使用执行机器学习模型训练过程。
作为一种可选的实施例,确定流数据中的历史数据包括:识别流数据的自然周期;根据自然周期确定历史时间窗口的长度;将在流数据中历史时间窗口采集的数据作为历史数据存入历史数据库。
作为一种可选的实施例,识别流数据的自然周期包括以下至少之一:识别流数据的来源特征,确定流数据的自然周期,其中,来源特征用于表示流数据中的数据对应的多个数据源,流数据的自然周期为多个数据源自然更新的周期的最小公倍数;识别流数据的数据分布特征,根据数据分布特征确定流数据的自然周期。
可选地,流数据的自然周期还可以为多个数据源自然更新的周期的最小公倍数的正整数倍。
需要说明的是,由于过多的自然周期会加大历史周期数据的权重,减小更新数据的权重,导致应对概念漂移时的敏感程度降低,因此流数据的自然周期为多个数据源自然更新的周期的最小公倍数。
作为一种可选的示例,通过家用路由器的流量包含用户在使用设备产生的活跃流量及所有其他设备(如路由器本身的通信协议流量或者IOT场景下的智能家电)产生的系统流量。因为人的活动一本受限于自身活动周期(即以天为单位),而系统流量的周期均小于等于此,即可认为自然周期为24小时。
作为一种可选的示例,写字楼里分别有24*7三班倒、996及955的三种工时制,其门禁刷卡数就包含了3种三班倒、996、985及偶然加班6种刷卡周期数据,其中3种3班倒的数据为3种起始时间的8小时*7天,996为12小时*6天,955为8小时*5天,各种工时制度下每天的小周期固定,加上固定出现的周末,可以认为写字楼的门禁刷卡数据周期为周一0:00:00至周日23:59:59一个大周期即一个完整周期。
可选地,更新时间窗口的长度可以随更新数据的增加而增长。例如,流数据中的更新数据增长,则更新时间窗口的长度也随之增长。
作为一种可选的实施例,确定流数据中的更新数据包括:根据流数据确定更新时间窗口的长度,其中,更新时间窗口的长度随更新数据的增加而增长的;将在流数据中更新时间窗口采集的数据作为更新数据存入更新数据库。
需要说明的是,更新窗口是流数据本身的特性决定的,由于更新时间窗会随着更新数据的增加而增长,若更新数据的长度过长,则更新机器学习模型的训练量也会增大,因此,为了降低更新机器学习模型的训练量,需要适当改变更新数据的数据量,也即改变更新时间窗口的长度。
作为一种可选的实施例,在将流数据中更新时间窗口对应的数据存入更新数据库之后,数据处理方法还可以包括:监测更新时间窗口的长度;在更新时间窗口的长度达到历史时间窗口的长度的情况下,使用更新数据库替换历史数据库,并将更新数据库作为新的历史数据库。
本发明上述实施例,通过监测更新时间窗口的长度,在更新时间窗口的长度达到历史时间窗口长度的情况下,可以对更新时间窗口进行调整,将更新数据库作为新的历史数据库,然后将流数据中新增加的数据作为新的更新数据,再根据新的更新数据调整更新时间窗口的长度,实现对更新时间窗口的调整。
需要说明的是,在将更新数据库作为新的历史数据库时,根据更新数据训练的更新机器学习模型作为新的历史机器学习模型,进而根据新生成的历史机器学习模型和更新机器模型,生成新的有效机器学习模型。
作为一种可选的实施例,在确定流数据中的历史数据和更新数据之后,数据处理方法还可以包括以下至少之一:监视更新数据的数据特征和历史数据的数据特征是否发生改变;监视流数据在更新时间窗口内的数据分布与历史时间窗口内的数据分布是否一致。
本发明还提供了一种优选实施例,该优选实施例提供了一种叠加时间窗口对抗流数据概念漂移的自适应机器学习方法。
本发明提供的技术方案,是关于存在或可能存在概念漂移的流数据的机器学习的算法,尤其是隐含周期的流数据的在线算法。
本发明提供的技术方案,使用定长时间窗口与变长时间窗口叠加的方式,能够针对突变及渐变概念漂移,自适应更新机器学习模型,对抗概念漂移导致的机器学习模型失效,保证机器学习模型准确。
图4是根据本发明实施例的一种数据处理系统的示意图,如图4所示,该系统包括:流数据处理模块41、模型训练模块43、在线服务模块45;其中,流数据处理模块41包括:流数据采集组件411、流数据监视组件413和流数据窗口组件415;模型训练模块43包括:分别与流数据采集组件411和流数据监视组件413相连的模型生成组件431,以及与流数据窗口组件415相连的窗口维护组件433;在线服务模块45包括:分别与模型生成组件431和窗口维护组件433相连的在线服务组件451。
本发明提供的叠加时间窗口对抗流数据概念漂移的自适应机器学习方法,包括以下步骤:
a)从流数据中采集初始数据(即历史数据)。
b)确定流数据中隐含的自然周期。
c)从初始数据中对一个自然周期内的数据采样加工,建立历史时间窗口并存入初始数据库(即历史数据库)。
d)用历史时间窗口内的初始数据库数据(即历史数据库)训练历史机器学习模型。
e)监视并采样流数据中的更新数据,建立当前时间窗口(即更新时间窗口)存入更新数据库。
f)用更新数据训练更新机器学习模型。
g)将更新机器学习模型与历史机器学习模型结合,生成有效机器学模型。
h)使用有效机器学习模型完成在线服务请求。
i)若未完成一个完整自然周期,则跳转至步骤e),重复上述步骤;若已完成一个完整自然周期,则跳转至步骤j),继续步骤。
j)在一个完整自然周期后,用更新数据库取代初始数据库并清空更新数据库,用更新数据库对应的所有时间窗口的集合取代历史时间窗口,然后跳转至d)重复步骤。
可选地,上述步骤a)和步骤b)需要由流数据采集组件执行。
图5是根据本发明实施例的一种流数据采集组件的示意图,如图5所示,该流数据采集组件用于实现以下步骤:
步骤S502,流数据中将进行机器学习所需数据依照字段过滤并提取;
步骤S504,将提取的数据以时间为索引切片,并对流数据中数据的缺失值依照其他相关信息及统计信息进行合理填充,对流数据中不符合其他相关信息及统计信息的错误数值进行合理修正。
步骤S506,确定流数据中隐含的自然周期。
可选地,上述步骤c)和步骤e)需要由流数据窗口组件执行。
图6是根据本发明实施例的一种流数据窗口组件的示意图,如图6所示,该流数据窗口组件用于实现以下步骤:
步骤S602,从初始数据中对一个自然周期内的数据采样加工,建立历史时间窗口并存入初始数据库(即历史数据库);
步骤S604,监视并采样流数据中的更新数据,建立当前时间窗口(即更新时间窗口)存入更新数据库。
可选地,上述步骤c)中进行的数据采样加工包括但不限于:对数据进行简单随机抽样;对数据进行分层随机抽样;对数据依据时间和分布特征进行分割;对数据依据数据库架构和应用场景进行组合。
可选地,上述步骤e)还需要由流数据监视组件执行。
图7是根据本发明实施例的一种流数据监视组件的示意图,如图7所示,该流数据监视组件用于实现以下步骤:
步骤S702,监视流数据中的数据特征是否改变;
步骤S704,监视流数据在当前时间窗(即更新时间窗)内的数据分布,与历史时间窗内的数据分布是否一致;
步骤S706,监视当前有效机器学习模型的性能指标。
可选地,上述步骤d)、步骤f)和步骤g)需要由模型生成组件执行。
图8是根据本发明实施例的一种模型生成组件的示意图,如图8所示,该模型生成组件用于实现以下步骤:
步骤S802,用历史时间窗口内的初始数据库数据(即历史数据库)训练历史机器学习模型;
步骤S804,将更新机器学习模型与历史机器学习模型结合,生成有效机器学模型。
可选地,上述步骤j)需要由窗口维护组件执行。
图9是根据本发明实施例的一种窗口维护组件的示意图,如图9所示,该窗口维护组件用于实现以下步骤:
步骤S902,用更新数据库取代初始数据库并清空更新数据库;
步骤S904,用更新数据库对应的所有时间窗口的集合取代历史时间窗口。
可选地,上述步骤f)中训练更新机器学习模型包括,但不限于:利用当前时间窗口(即更新时间窗)内的更新数据训练新的机器学习模型;利用当前时间窗口(即更新时间窗)内的更新数据作为新的批次数据对更新机器学习模型进行更新。
可选地,上述步骤g)中有效机器学习模型包括,但不限于:
将根据更新数据训练的更新机器学习模型补充历史机器学习模型后得到的新的机器学习模型集合;将更新数据作为新的批次数据更新当前的有效机器学习模型后得到的新的机器学习模型。
本发明提供的技术方案,使用了定长时间窗和变长时间窗叠加,从而解决了定长时间窗无法解决在模型更新周期之间突然出现数据分布改变而出现概念漂移的问题。
本发明提供的技术方案,使用了定长时间窗和变长时间窗叠加,从而解决了变长时间窗在检测到突然出现数据分布改变而出现概念漂移后直接抛弃原有数据和模型并收集一定数量的新数据后再重新训练模型所造成的冷启动问题。
本发明提供的技术方案,以自适应的方式动态地结合了原有的历史机器学习模型和更新机器学习模型,从而解决了传统机器学习模型无法克服数据分布随时间逐渐发生改变的渐次概念漂移的问题。
本发明提供的技术方案,在一个完整自然周期后,将这个自然周期内的数据集成并训练新的历史机器学习模型,将包含更早之前的数据生成的原先的有效机器学习模型遗忘,用新的更新时间窗内的数据训练更新机器学习模型,再结合新的历史机器学习模型和更新机器学习模型生成新的有效机器学习模型,从而解决了简单随时间增加新模型无法处理数据突然发生不可逆的分布改变而产生的突变概念漂移的问题。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行上述任一项所述的数据处理方法。
根据本发明的又一个实施例,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述任一项所述的数据处理方法。
根据本发明实施例,还提供了一种数据处理装置实施例,需要说明的是,该数据处理装置可以用于执行本发明实施例中的数据处理方法,本发明实施例中的数据处理方法可以在该数据处理装置中执行。
图10是根据本发明实施例的一种数据处理装置的示意图,如图10所示,该装置可以包括:监视单元101,用于监测流数据,确定流数据中的历史数据和更新数据,其中,更新数据处于更新时间窗口内,历史数据处于历史时间窗口内,更新时间窗口与历史时间窗口相邻;第一训练单元103,用于根据历史数据训练历史机器学习模型;第二训练单元105,用于根据更新数据训练更新机器学习模型;生成单元107,用于根据历史机器学习模型和更新机器学习模型,生成有效机器学习模型,其中,有效机器学习模型用于对流数据进行处理。
需要说明的是,该实施例中的监视单元101可以用于执行本申请实施例中的步骤S202,该实施例中的第一训练单元103可以用于执行本申请实施例中的步骤S204,该实施例中的第二训练单元105可以用于执行本申请实施例中的步骤S206,该实施例中的生成单元107可以用于执行本申请实施例中的步骤S208。上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。
在本发明实施例中,流数据中包括历史数据和更新数据,通过对流数据进行监测,可以在流数据中采集更新时间窗口对应的更新数据,还可以在流数据中采集历史时间窗口对应的历史数据,然后根据历史数据训练历史机器学习模型,根据更新数据训练更新机器学习模型,再将历史机器学习模型与更新机器学习模型进行结合,生成可以对流数据进行有效处理的有效机器学习模型,通过有效机器学习模型,从而在流数据中数据发生变化的情况下,生成的有效机器学习模型也会随之生改变,达到了对流数据的概念漂移进行有效对抗的目的,实现了根据流数据自动更新有效机器学习模型的技术效果,进而解决了无法根据流数据对机器模型进行自动更新的技术问题。
作为一种可选的实施例,监视单元包括:识别模块,用于识别流数据的自然周期;第一确定模块,用于根据自然周期确定历史时间窗口的长度;第一存储模块,用于将在流数据中历史时间窗口采集的数据作为历史数据存入历史数据库。
作为一种可选的实施例,识别模块包括以下至少之一:第一识别子模块,用于识别流数据的来源特征,确定流数据的自然周期,其中,来源特征用于表示流数据中的数据对应的多个数据源,流数据的自然周期为多个数据源自然更新的周期的最小公倍数;第二识别子模块,用于识别流数据的数据分布特征,根据数据分布特征确定流数据的自然周期。
作为一种可选的实施例,监视单元还包括:第二确定模块,用于根据流数据确定更新时间窗口的长度,其中,更新时间窗口的长度随更新数据的增加而增长的;第二存储模块,用于将在流数据中更新时间窗口采集的数据作为更新数据存入更新数据库。
作为一种可选的实施例,数据处理装置还包括:监测单元,用于在将流数据中更新时间窗口对应的数据存入更新数据库之后,监测更新时间窗口的长度;替换单元,用于在更新时间窗口的长度达到历史时间窗口的长度的情况下,使用更新数据库替换历史数据库,并将更新数据库作为新的历史数据库。
作为一种可选的实施例,数据处理装置还包括以下至少之一:第一监视单元,用于在确定流数据中的历史数据和更新数据之后,监视更新数据的数据特征和历史数据的数据特征是否发生改变;第二监视单元,用于在确定流数据中的历史数据和更新数据之后,监视流数据在更新时间窗口内的数据分布与历史时间窗口内的数据分布是否一致。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
监测流数据,确定所述流数据中的历史数据和更新数据,其中,所述更新数据处于更新时间窗口内,所述历史数据处于历史时间窗口内;
根据所述历史数据训练历史机器学习模型;
根据所述更新数据训练更新机器学习模型;
根据所述历史机器学习模型和所述更新机器学习模型,生成有效机器学习模型,其中,所述有效机器学习模型用于对所述流数据进行处理。
2.根据权利要求1所述方法,其特征在于,确定所述流数据中的历史数据包括:
识别所述流数据的自然周期;
根据所述自然周期确定所述历史时间窗口的长度;
将在所述流数据中所述历史时间窗口采集的数据作为历史数据存入历史数据库。
3.根据权利要求2所述的方法,其特征在于,识别所述流数据的自然周期包括以下至少之一:
识别所述流数据的来源特征,确定所述流数据的自然周期,其中,所述来源特征用于表示所述流数据中的数据对应的多个数据源,所述流数据的自然周期为多个所述数据源自然更新的周期的最小公倍数;
识别所述流数据的数据分布特征,根据所述数据分布特征确定所述流数据的自然周期。
4.根据权利要求2所述的方法,其特征在于,确定所述流数据中的更新数据包括:
根据所述流数据确定所述更新时间窗口的长度,其中,所述更新时间窗口的长度随所述更新数据的增加而增长的;
将在所述流数据中所述更新时间窗口采集的数据作为所述更新数据存入更新数据库。
5.根据权利要求4所述的方法,其特征在于,在将所述流数据中所述更新时间窗口对应的数据存入更新数据库之后,所述方法还包括:
监测所述更新时间窗口的长度;
在所述更新时间窗口的长度达到所述历史时间窗口的长度的情况下,使用所述更新数据库替换所述历史数据库,并将所述更新数据库作为新的历史数据库。
6.根据权利要求1所述的方法,其特征在于,在确定所述流数据中的历史数据和更新数据之后,所述方法还包括以下至少之一:
监视所述更新数据的数据特征和所述历史数据的数据特征是否发生改变;
监视所述流数据在所述更新时间窗口内的数据分布与所述历史时间窗口内的数据分布是否一致。
7.一种数据处理装置,其特征在于,包括:
监视单元,用于监测流数据,确定所述流数据中的历史数据和更新数据,其中,所述更新数据处于更新时间窗口内,所述历史数据处于历史时间窗口内;
第一训练单元,用于根据所述历史数据训练历史机器学习模型;
第二训练单元,用于根据所述更新数据训练更新机器学习模型;
生成单元,用于根据所述历史机器学习模型和所述更新机器学习模型,生成有效机器学习模型,其中,所述有效机器学习模型用于对所述流数据进行处理。
8.根据权利要求7所述装置,其特征在于,所述监视单元包括:
识别模块,用于识别所述流数据的自然周期;
第一确定模块,用于根据所述自然周期确定所述历史时间窗口的长度;
第一存储模块,用于将在所述流数据中所述历史时间窗口采集的数据作为历史数据存入历史数据库。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序执行权利要求1至6中任意一项所述的数据处理方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910491095.4A CN110288093A (zh) | 2019-06-06 | 2019-06-06 | 数据处理方法、装置、存储介质及处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910491095.4A CN110288093A (zh) | 2019-06-06 | 2019-06-06 | 数据处理方法、装置、存储介质及处理器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110288093A true CN110288093A (zh) | 2019-09-27 |
Family
ID=68003510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910491095.4A Pending CN110288093A (zh) | 2019-06-06 | 2019-06-06 | 数据处理方法、装置、存储介质及处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110288093A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111652379A (zh) * | 2020-05-29 | 2020-09-11 | 京东城市(北京)数字科技有限公司 | 模型管理方法、装置、电子设备及存储介质 |
CN112036579A (zh) * | 2020-09-04 | 2020-12-04 | 平安科技(深圳)有限公司 | 多分类模型自学习在线更新方法、系统及装置 |
CN112085103A (zh) * | 2020-09-10 | 2020-12-15 | 北京百度网讯科技有限公司 | 基于历史行为的数据增强方法、装置、设备以及存储介质 |
CN113297481A (zh) * | 2021-05-08 | 2021-08-24 | 武汉卓尔数字传媒科技有限公司 | 基于流数据处理的信息推送方法、信息推送装置及服务器 |
CN112036579B (zh) * | 2020-09-04 | 2024-05-03 | 平安科技(深圳)有限公司 | 多分类模型自学习在线更新方法、系统及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1666201A (zh) * | 2002-04-25 | 2005-09-07 | 雅虎公司 | 用于网络上流的实时分配的方法 |
CN105023170A (zh) * | 2015-06-26 | 2015-11-04 | 深圳市腾讯计算机系统有限公司 | 一种点击流数据的处理方法及装置 |
CN107391719A (zh) * | 2017-07-31 | 2017-11-24 | 南京邮电大学 | 一种云环境中分布式流数据处理方法及系统 |
CN107527091A (zh) * | 2016-10-14 | 2017-12-29 | 腾讯科技(北京)有限公司 | 数据处理方法和装置 |
CN109522138A (zh) * | 2018-11-14 | 2019-03-26 | 北京中电普华信息技术有限公司 | 一种分布式流数据的处理方法及系统 |
-
2019
- 2019-06-06 CN CN201910491095.4A patent/CN110288093A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1666201A (zh) * | 2002-04-25 | 2005-09-07 | 雅虎公司 | 用于网络上流的实时分配的方法 |
CN105023170A (zh) * | 2015-06-26 | 2015-11-04 | 深圳市腾讯计算机系统有限公司 | 一种点击流数据的处理方法及装置 |
CN107527091A (zh) * | 2016-10-14 | 2017-12-29 | 腾讯科技(北京)有限公司 | 数据处理方法和装置 |
CN107391719A (zh) * | 2017-07-31 | 2017-11-24 | 南京邮电大学 | 一种云环境中分布式流数据处理方法及系统 |
CN109522138A (zh) * | 2018-11-14 | 2019-03-26 | 北京中电普华信息技术有限公司 | 一种分布式流数据的处理方法及系统 |
Non-Patent Citations (2)
Title |
---|
孙杜靖: "基于Storm的流关联挖掘算法实现及应用", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
李培培: "数据流中概念漂移检测与分类方法研究", 《中国优秀博士学位论文全文数据库信息科技辑》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111652379A (zh) * | 2020-05-29 | 2020-09-11 | 京东城市(北京)数字科技有限公司 | 模型管理方法、装置、电子设备及存储介质 |
CN111652379B (zh) * | 2020-05-29 | 2024-04-16 | 京东城市(北京)数字科技有限公司 | 模型管理方法、装置、电子设备及存储介质 |
CN112036579A (zh) * | 2020-09-04 | 2020-12-04 | 平安科技(深圳)有限公司 | 多分类模型自学习在线更新方法、系统及装置 |
WO2021159749A1 (zh) * | 2020-09-04 | 2021-08-19 | 平安科技(深圳)有限公司 | 多分类模型自学习在线更新方法、系统及装置 |
CN112036579B (zh) * | 2020-09-04 | 2024-05-03 | 平安科技(深圳)有限公司 | 多分类模型自学习在线更新方法、系统及装置 |
CN112085103A (zh) * | 2020-09-10 | 2020-12-15 | 北京百度网讯科技有限公司 | 基于历史行为的数据增强方法、装置、设备以及存储介质 |
CN112085103B (zh) * | 2020-09-10 | 2023-06-27 | 北京百度网讯科技有限公司 | 基于历史行为的数据增强方法、装置、设备以及存储介质 |
CN113297481A (zh) * | 2021-05-08 | 2021-08-24 | 武汉卓尔数字传媒科技有限公司 | 基于流数据处理的信息推送方法、信息推送装置及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110288093A (zh) | 数据处理方法、装置、存储介质及处理器 | |
CN106155780A (zh) | 一种基于时间的节点选举方法及装置 | |
CN109146381A (zh) | 物流数据监控方法、装置、电子设备及计算机存储介质 | |
CN110245056A (zh) | 运维告警信息处理方法及装置 | |
CN110362377A (zh) | 虚拟机的调度方法和装置 | |
US9696694B2 (en) | Parameter setting device | |
CN106980703A (zh) | 用于群组搜索的方法及装置、电子设备、计算机可读介质 | |
CN108564416A (zh) | 限时活动倒计时处理方法、计算设备、存储介质 | |
CN108830177A (zh) | 农事操作行为稽查方法及装置 | |
CN109568948A (zh) | 网络游戏中对象的运动状态同步方法及装置 | |
CN109147325A (zh) | 路况预测方法及装置、存储介质、处理器 | |
CN109284199A (zh) | 服务器异常处理方法、设备、以及处理器 | |
CN109389518A (zh) | 关联分析方法及装置 | |
CN110414778A (zh) | 案件派工方法和装置 | |
CN109461067A (zh) | 一种外汇报价异常数据的检测方法、装置及系统 | |
CN110297742A (zh) | 数据监控系统、方法及服务器 | |
CN110019337A (zh) | 确定数据库中有效分区的方法、装置和系统 | |
WO2016089914A1 (en) | Method and system for computational epidemiology and environmental services | |
CN105354056B (zh) | 一种app推荐信息展示方法和装置 | |
Rahmaniani et al. | Variable neighborhood search based evolutionary algorithm and several approximations for balanced location–allocation design problem | |
CN113342939B (zh) | 数据质量监控方法、装置及相关设备 | |
CN109660508A (zh) | 数据可视化方法、电子装置、计算机设备及存储介质 | |
CN113608751A (zh) | 推理服务平台的运行方法、装置、设备及存储介质 | |
CN109669807A (zh) | 业务事件的校验方法及装置、处理器、存储介质 | |
CN110164541A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190927 |
|
RJ01 | Rejection of invention patent application after publication |