CN110956278A - 重新训练机器学习模型的方法和系统 - Google Patents

重新训练机器学习模型的方法和系统 Download PDF

Info

Publication number
CN110956278A
CN110956278A CN201911172318.7A CN201911172318A CN110956278A CN 110956278 A CN110956278 A CN 110956278A CN 201911172318 A CN201911172318 A CN 201911172318A CN 110956278 A CN110956278 A CN 110956278A
Authority
CN
China
Prior art keywords
machine learning
learning model
feature
features
automatically
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
Application number
CN201911172318.7A
Other languages
English (en)
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN201911172318.7A priority Critical patent/CN110956278A/zh
Publication of CN110956278A publication Critical patent/CN110956278A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Artificial Intelligence (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Educational Administration (AREA)
  • Technology Law (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种用于重新训练机器学习模型的方法,包括:在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量;基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型;如果确定需要重新训练所述机器学习模型,则至少基于所述时间段内的原始数据自动生成样本特征;以及至少使用所述自动生成的样本特征来重新训练所述机器学习模型。本申请还涉及相应的系统和计算机可读存储介质。本申请能够自动、高效地重新训练机器学习模型。

Description

重新训练机器学习模型的方法和系统
技术领域
本说明书的一个或多个实施例涉及用于重新训练机器学习模型的方法和系统。
背景技术
在风险防控领域(例如网络交易中的风险防控)中,机器学习模型得到了越来越广泛的应用。
然而,在风险防控中,风险形势可能会发生变化。例如,恶意用户可能逐渐学会了规避原机器学习模型的识别和处置。或者,出现了新的恶意行为,而原机器学习模型无法识别这些恶意行为。
为了解决上述问题,可能需要识别出风险形势的变化、生成新训练样本并使用新的训练样本对机器学习模型进行重新训练。然而,现有技术无法识别风险形势的变化,或者需要人工识别风险形势的变化。另外,现有技术中通常可能需要人工生成新训练样本,并人工对机器学习模型进行重新训练。现在也存在自动生成训练样本的方式。然而,现有的生成训练样本的方式大都比较复杂或者效率不高。
因此,存在对于自动化的、简易、高效的重新训练机器学习模型的方案的需要。
发明内容
为了克服现有技术的缺陷,本说明书的一个或多个实施例提供了自动化且高效的重新训练机器学习模型的方案。
本说明书的一个或多个实施例通过以下技术方案来实现其上述目的。
在一个方面中,公开了一种用于重新训练机器学习模型的方法,包括:在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量;基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型;如果确定需要重新训练所述机器学习模型,则至少基于所述时间段内的原始数据自动生成样本特征;以及至少使用所述自动生成的样本特征来重新训练所述机器学习模型。
优选地,监控所述机器学习模型在一时间段内的一个或多个性能度量包括:获取机器学习模型在该时间段内对样本的预测;确定所述机器学习模型对所述样本的预测是否正确;以及基于所述机器学习模型在该时间段内对样本的预测是否正确来计算机器学习模型的性能度量。
优选地,述一个或多个性能度量包括准确率、精确率、召回率、F1值、ROC曲线下面积、PR曲线下面积或其任何组合。
优选地,基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型包括基于性能度量、性能度量组合以及性能度量或性能度量组合的变化中的一者或多者来确定是否需要重新训练所述机器学习模型。
优选地,在确定需要重新训练所述机器学习模型后,请求开发者确认是否重新训练机器学习模型,且只有在从开发者接收到重新训练机器学习模型的确认之后,才自动重新训练机器学习模型。
优选地,自动生成样本特征包括:检测与机器学习模型相关联的事件;在检测到所述事件时,记录所述事件的属性以作为原始数据的一部分;以及自动对所述原始数据执行特征工程,以获得所述样本特征。
优选地,自动对所述原始数据执行特征工程包括:对所述原始数据自动地执行数据清洗;对经数据清洗的原始数据自动地执行特征转换和/或特征提取以获得候选特征集;以及执行特征选择以自动地从所述候选特征集中选择特征子集,作为所述样本特征。
优选地,自动对所述原始数据执行特征工程包括:对所述原始数据执行滑窗处理,以便以移动窗口的方式执行对原始数据的划分和处理。
优选地,以增量方式将所述原始数据存储到数据库。
优选地,所述数据库为HBase数据库。
优选地,所述方法还包括:将自动生成的样本特征的量与阈值量进行比较;以及只有所述自动生成的样本特征的量达到或超过阈值时,才重新训练所述机器学习模型。
优选地,所述方法还包括:将经重新训练的机器学习模型的性能与原机器学习模型的性能进行比较,并在所述经重新训练的机器学习模型的性能优于所述原机器学习模型的性能时用所述经重新训练的机器学习模型来取代所述原机器学习模型。
优选地,所述方法还包括:使用LSTM模型自动生成velocity特征,且所述velocity特征也被用于重新训练所述机器学习模型。
优选地,所述方法还包括:通过将两个或更多个特征执行整合以生成经整合的特征,且所述经整合的特征也被用于重新训练所述机器学习模型。
在另一方面中,公开了一种用于自动重新训练机器学习模型的系统,包括:
监控模块,用于:
在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量,以及
基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型;
样本特征生成模块,用于至少基于所述时间段内的原始数据自动生成样本特征;以及
重新训练模块,用于至少使用所述自动生成的样本特征来重新训练所述机器学习模型。
优选地,所述样本生成模块包括数据获取模块、特征提取模块以及特征选择模块。
优选地,所述系统还包括velocity特征生成模块,用于使用LSTM模型自动生成velocity特征,且所述velocity特征也被用于重新训练所述机器学习模型。
优选地,所述系统还包括特征整合模块,用于通过将两个或更多个特征执行整合以生成经整合的特征,且所述经整合的特征也被用于重新训练所述机器学习模型。
在又一方面中,公开了一种存储指令的计算机可读存储介质,所述指令当被计算机执行时,使所述计算机执行上述方法。
在再一方面中,公开了一种系统,所述系统包括用于执行上述方法的装置。
与现有技术相比,本说明书的一个或多个实施例可具有如下有益效果:
能自动识别机器学习模型性能的下降;
能自动且高效地自动重新训练机器学习模型。
当然,实施本申请的任一技术方案无需同时达到所有上述技术效果。
附图说明
以上发明内容以及下面的具体实施方式在结合附图阅读时会得到更好的理解。需要说明的是,附图仅作为所请求保护的发明的示例。在附图中,相同的附图标记代表相同或类似的元素。
图1示出根据本说明书实施例的用于生成训练样本的系统的框图。
图2示出用于确定一时间段内机器学习模型的性能度量的示例方法的流程图。
图3示出根据本说明书实施例的样本特征生成模块的示例框图。
图4示出根据本说明书实施例的用于自动重新训练机器学习模型的方法的流程图。
具体实施方式
以下具体实施方式的内容足以使任何本领域技术人员了解本说明书的一个或多个实施例的技术内容并据以实施,且根据本说明书所揭露的说明书、权利要求及附图,本领域技术人员可轻易地理解本说明书的一个或多个实施例相关的目的及优点。
在风险防控领域(例如网络交易中的风险防控)中,机器学习模型得到了越来越广泛的应用。然而,在风险防控中,风险形势可能会发生变化。例如,恶意用户可能逐渐学会了规避现有机器学习模型的识别和处置。或者,出现了新的恶意行为,而原机器学习模型无法识别这些恶意行为。
为了解决上述问题,本说明书实施例提供了自动使用新训练样本对机器学习模型进行重新训练。
要自动使用新训练样本对机器学习模型进行重新训练要解决两个重要问题:一个问题是确定是否需要对机器学习模型进行重新训练,即确定重新训练机器学习模型的时机;另一个问题是如何自动生成新的训练样本。
参见图1,其示出了根据本说明书实施例的用于生成训练样本的系统100的框图。
如图1所示,系统100可包括性能监控模块102、样本特征生成模块104、以及重新训练模块106。
如同前面所述,风险形势可能会发生变化,导致现有机器学习模型对恶意行为执行识别的效果变差。在本说明书的实施例中,监控模块102可被用来监控机器学习模型的性能度量。
在本说明书的实施例中,监控模块102可自动采集机器学习模型在一时间段内的性能度量。监控模块102可采集的性能度量包括但不限于:准确率(accuracy)、覆盖率(sensitivity)、精确率(precision)、召回率(recall)、F1值(F1-score)、ROC曲线下面积(ROC-AUC)、PR曲线下面积(PR-AUC)或其任何组合。
为了能够计算机器学习模型的性能度量,监控模块102可执行如图2所示的用于确定一时间段内机器学习模型的性能度量的示例方法200。
方法200可包括:在步骤202,可在机器学习模型执行期间获取机器学习模型对样本的预测。
例如,对于非法交易检测模型,当交易事件发生时,机器学习模型将预测该交易事件是否为非法交易事件。此时,监控模块102可获取机器学习模型的预测。
方法200还可包括:在步骤204,可确定机器学习模型的预测是否正确。例如,监控模块102可确定该样本的真实标签。例如,监控模块102可从数据库中读取样本的真实标签。
在一些情况下,该真实标签可以是由监控模块102、机器学习模型或其它模块自动确定的。例如,在使用机器学习模型来预测用户是否将点击特定链接的情况下,在用户点击(或不点击)该特定链接后,即可知晓该特定链接的标签(点击或不点击),从而自动确定该预测是否正确。
在另一些情况下,可由用户来输入该真实标签。例如,在上面的非法交易检测模型的示例中,可能需要由用户(例如负责风险管理的管理人员)手动输入该特定交易的真实标签(是否为非法交易)。
样本的真实标签可被存储在数据库中以供监控模块102访问。该数据库可以是集中式数据库或分布式数据库。
此时,监控模块102可能需要将机器学习模型对样本的预测与样本的真实标签进行对比。因此,监控模块102可不断收集样本的真实标签。
方法200还可包括:在步骤206,可基于该时间段内机器学习模型对样本的预测是否正确来计算机器学习模型的性能度量。
在确定机器学习模型的预测是否正确之后,监控模块102可基于该时间段内的数据来计算机器学习模型的性能度量。该时间段可由开发者根据需要设置。例如,该时间段可以为最近一天、一周、一月、一年等。例如,当数据累积速度较快时,可选择较短的时间段;而当数据累积速度较慢时,可选择较短的时间段。还可基于其它因素例如开发者的偏好、机器学习模型的具体应用场景等来选择该时间段。例如,在将机器学习模型应用于风险防控类事件时,可选择相对较短的时间段,以更灵敏地捕捉机器学习模型的性能的变化以应对风险形势的快速变化。
例如,可根据以下公式来计算机器学习模型的精确度:
精确度=真正例/(真正例+假正例)
在上面的非法交易检测模型的示例中,精确度可被计算为:
精确度=该时间段内被预测为非法交易的事件的确为非法交易的数量/该时间段内被预测为非法交易事件的总数量。
类似地,可确定其它性能度量。本领域技术人员理解如何确定机器学习模型的各种性能度量,在此不再赘述。
优选地,监控模块102可周期性地采集机器学习模型的性能度量。例如,监控模块102可每月、每周、每天、每小时采集性能度量。性能度量的采集周期可根据多种因素来确定。例如,可根据机器学习模型的具体应用场景、服务器的运算能力等来确定。
优选地,根据需要,不同的性能度量可具有不同的采集周期。例如,准确率可每周采集一次,而ROC曲线下面积可每月采集一次。
此外,针对不同类型的机器学习模型,可选择监控不同的性能度量或性能度量组合。例如,对于用于分类的机器学习模型和用于排序的机器学习模型,可监控不同的性能度量组合。
在采集到性能度量后,监控模块102可基于采集到的一时间段内的机器学习模型的性能度量,确定是否需要重新训练机器学习模型。具体而言,监控模块102可基于机器学习模型的性能度量、性能度量组合以及性能度量或性能度量组合的变化中的一者或多者来确定是否需要重新训练机器学习模型。
例如,监控模块102可采用指定的规则来基于性能度量、性能度量组合和/或其变化来确定是否需要重新训练机器学习模型。
在一个示例中,监控模块102可基于所采集到的性能度量与阈值进行比较。当所采集到的性能度量低于阈值时,可确定需要重新训练机器学习模型。
例如,假设所采集的性能度量可以是准确率,且阈值是95%。在此情况下,当所采集到的准确率低于95%时,可确定需要重新训练机器学习模型。
在另一个示例中,监控模块102可基于多个性能度量的组合来确定是否需要重新训练机器学习模型。
例如,假设所采集的性能度量是精确率和召回率,且规则设置为精确率大于0.8且召回率小于0.2,则当精确率小于等于0.8或者召回率大于等于0.2时,可确定需要重新训练机器学习模型。
当然,可根据需要指定更复杂的规则来基于性能度量确定是否需要重新训练机器学习模型。
一种示例规则如下:在精确率大于0.8的情况下,如果召回率小于0.2,则当ROCAUC在0.6-0.8之间时,则确定不需要重新训练机器学习模型;在其它任何情况下则确定需要重新训练机器学习模型。本领域技术人员可根据需要指定更复杂的规则。
在又一个示例中,监控模块102可基于性能度量或性能度量组合的变化来确定是否需要重新训练机器学习模型。
例如,监控模块102可确定机器学习模型的精确率的变化速度或变化幅度。当精确度突然变化(例如,精确度突然从前次采集的0.9减小到本次采集的0.6)或大幅变化(例如,精确度在较长时间段内出现了稳定且显著的下降)时,可能意味着出现了现有的机器学习模型无法处理的新情况。例如,在风控模型中,可能意味着风险形势的变化。
在一些示例中,在确定需要重新训练机器学习模型之后,可直接自动重新训练机器学习模型。
在另一些示例中,在确定需要重新训练机器学习模型之后,可首先请求开发者确认是否重新训练机器学习模型。只有在从开发者接收到重新训练机器学习模型的确认之后,才自动重新训练机器学习模型。这为开发者提供了更多的选择权,从而允许开发者可以人工地研究风险形势变化的程度和原因等,来更合理地确定是否重新训练机器学习模型。
通过以上方式,可自动或半自动地确定发起机器学习模型的重新训练的时机,减少了机器学习模型表现不佳时改进机器学习模型的滞后时间,提升了机器学习模型的总体表现。
在确定要重新训练机器学习模型后,需要生成用于重新训练机器学习模型的训练样本的特征向量。
在现有技术中,通常需要手动来执行训练样本的生成和预处理,这不仅需要熟知样本生成和特征工程技术的专业人员的参与,而且效率较低。
在一些现有技术中,已经使用一些工具(例如模型工厂)来生成训练样本。然而,使用模型工厂来生成训练样本也需要由开发者进行复杂的配置,在开发者大量介入的情况下才能实现训练样本的生成。
因此,存在对于自动化程度更高、更简易、效率更高的生成训练样本的方案。
在本说明书的实施例中,样本特征生成模块104可被用来自动生成训练样本的特征向量。
参见图3,其示出了根据本说明书实施例的样本特征生成模块104的示例框图。如图3所示,样本特征生成模块104可包括数据获取模块302、特征提取模块304以及特征选择模块306。
数据获取模块302用于获取待处理的原始数据。原始数据可包括旧数据,如在确定要重新训练机器学习模型之前生成的数据。该旧数据可从数据库获取。通过使用旧数据,可立即开始机器学习模型的重新训练,从而减少了时间,提高了效率。
通常,该原始数据可包括用于确定要重新训练机器学习模型的数据。例如,假设基于一时间段(例如最近一个月)内的机器学习模型的性能度量确定要重新训练机器学习模型。如上所述,该确定可能是基于该时间段(例如最近一个月)内机器学习模型的性能度量、性能度量组合和/或其变化来确定的,例如在最近一个月内精确度显著下降。在此情况下,通常,该原始数据可包括该时间段(即,此示例中的最近一个月)内的数据。
待处理的原始数据也可包括新数据。所谓新数据,是指在确定要重新训练机器学习模型之后生成的数据,或可称为在线数据。新数据可被不断积累,并在新数据的数据量积累达到或超过阈值之后,重新训练机器学习模型。使用新数据可以增加数据量,从而能够提升重新训练的机器学习模型的性能。
也就是说,用于重新训练机器学习模型的数据通常需要包括风险形势发生变化之后的数据,其可包括用于确定要重新训练机器学习模型的监控时间段内的数据、在确定要重新训练机器学习模型之后的数据或者这两类数据。这些数据可被实时收集并存储。用于重新训练机器学习模型的数据也可包括旧数据,使用旧数据允许尽快地以足够的数据量重新训练机器学习模型。
在许多示例中,待处理的数据来自事件(例如在线事件或者历史事件)。数据获取模块302或其他模块可检测事件的发生。该事件通常是与机器学习模型相关联的事件。例如,在机器学习模型被用于风控(例如网络交易中的风控)时,该事件可以是与风控相关联的事件,后文将其简称为风控事件。在一些示例中,该风控事件可以是UCT事件。又例如,每当用户创建交易时,该用户创建交易事件成为风控事件。在该机器学习模型被用于营销时,该事件可以是与营销相关联的事件。
在检测到事件时,可记录事件的属性。可以领会,事件具有多个属性。例如,假设该事件为用户通过在线交易网站(例如淘宝网等)购买商品。此时,事件的属性可包括交易时间、交易金额、用户购买的商品名称、用户用于购买商品的设备ID等等。此外,还可具有与该风控事件相关联的历史信息,例如用户近期的登录记录、用户近期的购买记录等。用户近期的购买记录同样存在如上所述的各种属性,例如交易时间、交易金额、用户购买的商品名称、用户用于购买商品的设备ID等。用户近期的登录记录可存在例如用户近期登录时间、用户登录频率、用户用于登录的设备ID、用户进行登录的IP地址、用户进行登录的物理地址(例如城市)等。
假设本说明书实施例的应用场景为营销购物场景,则事件的属性可具有以下几个维度:
用户维度:购买的产品数、购买历史、订单数、订单频率、支付方式、购买的门店、同店复购率和用户消费趋势、商家平均买家数。
产品维度:购买特定产品的用户数、订单数、订购频率、复购率、加入到购物车的订单数。
用户-产品交叉维度:特定用户购买特定产品数、复购率、最后一次购买日、最后一次购买数。
用户时间序列维度:用户最喜欢购买的日期段、用户最喜欢购买的时间段。
可设想事件的其它维度。
所记录的事件的属性可被存储到数据库中,以作为原始数据或原始数据的一部分。该数据库可以是集中式数据库或分布式数据库。该数据库可以是任何类型的数据库。
优选地,可使用HBase数据库执行数据增量操作。HBase(Hadoop Database)是Apache的Hadoop项目的子项目,是一种分布式的、面向列的开源数据库。HBase数据库相对于传统数据库具有更大的弹性,离线导入效率高,能够更方便地批量写入数据,从而适合执行数据库的增量累积。而且,HBase数据库的存储和计算分离,能更好地实现负载均衡。
优选地,可采用离线表的方式执行增量累积。例如,可周期性地将新增的数据存储到离线数据库。可使用T+1的方式执行批量增量累积。也就是说,当日产生的新记录作为一个批次的数据在下一日被写入到离线表中。也可采用其它增量累积方式。通过这种方式,可在兼顾时效性的同时提升存储系统的效率。
在数据获取模块302获取原始数据之后,可对原始数据执行特征工程,例如对原始数据执行特征提取和特征选择等操作。
特征提取模块304可对该原始数据执行特征提取以获得候选特征集。所谓特征提取,是指将机器学习算法不能识别的原始数据转化为算法可以识别的特征的过程。
优选地,特征提取模块304可首先对原始数据执行数据清洗。数据清洗可包括对原始数据执行无量纲化、缺失值处理、数据去重、数据采样、噪音数据处理等操作。可采用本领域已知的任何方式来执行数据清洗。
随后,特征提取模块304还可对原始数据执行特征转换。对于不同类型的数据,可采用不同的数据转换方法,以将原始数据(例如所记录的事件的属性)表达为不同类型的特征。这些不同类型的特征可包括但不限于统计特征、类别特征、时间序列特征等。下面以风控事件为例,对各类特征进行简要描述。
统计特征是指通过对属性执行统计得到的统计值生成的特征。
例如,假设风控事件具有交易金额,则可对该用户在一时间段内的交易金额执行统计,并将统计值作为特征。以交易金额为例,常用的统计特征的示例可包括但不限于:
最小值(min):一时间段内该用户的所有交易的交易金额的最小值;
最大值(max):一时间段内该用户的所有交易的交易金额的最大值;
平均值(mean):一时间段内该用户的所有交易的交易金额的平均值。
此类统计值还可包括中值(median)、标准差(std)、极差(ptp)、偏态(skew)、峰度(kurt)、第一值(first)、最后值(last)等。本领域技术人员可根据需要可设想其它统计特征。
类别(category)特征是指对所述属性执行类别编码所得到的特征。风控事件的属性可被转换成的类别特征的示例可包括但不限于:
独热(one-hot)编码;
散列编码;
标签编码;
计数编码;
标签-计数编码;
目标编码;
类别嵌入;
等等。
本领域技术人员知晓如何基于属性来获得上述类别特征。本领域技术人员可根据需要可设想其它类别特征。
时间序列特征是指基于风控事件的历史时间序列生成的特征。这样的时间序列特征的示例包括但不限于:
1、样本滑窗:对历史事件的属性直接执行滑窗处理。划窗处理是指数据在时间矩阵中各区域的统计值。滑窗处理的参数(例如窗口大小)可由开发者根据需要确定。
2、特征滑窗:对历史特征执行滑窗处理,可执行的特征可选自上面所例示的特征。类似地,滑窗处理的参数(例如窗口大小)可由开发者根据需要确定。
3、指数衰减加权平均:此处理可对更近期的数据赋予更高的权重,而对更远期的数据赋予更低的权重。其可用∑a^x来表示,其中a为属性值,x为衰减速度。可对样本的属性或者特征执行指数衰减加权平均。此处理的参数(例如取值范围、衰减速度等)可由开发者根据需要确定。例如,可通过线下调参来确定衰减速度x。
4、差分特征、积分特征:差分特征可对数据执行差分处理;积分特征可对数据执行积分处理。
从上面的示例可以看出,滑窗处理被大量利用。通过滑窗处理,可以用移动窗口的方式来执行原始数据(例如时间序列数据)的划分和处理,从而能够提高系统的效率和及时性。
特征提取模块304还可执行特征提取,以便创建维度较低且更有效的数据表示法,进而减少特征的数量。可使用的特征提取方法包括但不限于:主成分分析、线性判别分析、多维尺度分析、独立成分分析、流型学习等。本领域技术人员知晓如何执行所述特征提取方法,在此不再对其进行详细描述。
优选地,可使用更复杂的算法来提取特征。
例如,针对事件类变量,可采用遗传算法来提取特征。遗传算法是一种搜索方法,其模仿自然界中的遗传行为,可通过选择、变异等遗传操作对被编码的特征空间进行高效搜索,从而能够高效地找到适合的复杂特征。还可使用其它算法,例如强化学习等来提取特征。
在本说明书的优选实施例中,可使用机器学习框架来自动实现上述各种操作。例如,可使用zark框架来执行上述操作。zark框架是一种提供机器学习的基础功能组件的框架。例如,zark框架提供了缓存、KV存储、消息管道、word2vector、分词、gbdt等处理功能。此外,zark框架还提供了相关的数据结构,如字典、配置或者模型等。这些可被定义为资源,配置到要使用的组件中。开发者可使用python等编程语言,调用基础功能组件来实现数据清洗、数据预处理、特征转换、特征提取等功能。通过使用机器学习框架来实现上述功能,可以大大提高开发效率。
在由特征提取模块304执行完特征提取之后,特征选择模块306可执行特征选择。特征选择的目标是寻找最优特征子集。特征选择能剔除不相关(irrelevant)或冗余(redundant)的特征,从而达到减少特征个数,提高模型精确度,减少运行时间的目的。另一方面,特征选择可选取出真正相关的特征简化模型,协助理解数据产生的过程。自动特征选择可根据特征的重要性、特征的发散性、特征的相关性等,自动选择出最优的特征子集。
特征选择可采用过滤式、包装式和/或嵌入式方法,其具体实现是本领域计算人员所熟知的,在此不再对其进行详细描述。
例如,可使用python语言,通过conf plugin等工具来实现特征的自动选择。例如,可通过python语言调用Light GBM模块。LigthGBM是boosting集合模型中的新进成员,由微软提供,它和XGBoost一样是对GBDT的高效实现,原理上它和GBDT及XGBoost类似,都采用损失函数的负梯度作为当前决策树的残差近似值,去拟合新的决策树。使用Light GBM,通过计算特征分裂次数以及特征分裂增益,可以计算特征重要性(feature_importances)。
在具体实现中,可以采用置换重要性作为评价标准。例如,通过将使用某特征与不使用该特征(例如将该特征置为随机数或特定值)时机器学习模型的效果进行比较,可确定该特征的重要性。此外,还可使用其它评价标准,例如K-Fold标准等,在此对其不再赘述。
通过Light GBM来调用资源的部分代码如下:
Figure BDA0002289051490000131
Figure BDA0002289051490000141
以上代码主要通过设置__init__来读取数据库的资源和线上数据,并可在随后通过Light GBM执行相关处理。
通过特征选择模块306,从特征提取模块304所提取的特征中选择出最优的特征子集。所选择的特征子集可被重新训练模块106用作重新训练机器学习模型的样本特征。
优选地,系统100还可包括velocity变量生成模块108。velocity特征是时间序列类变量。Velocity特征生成模块108可实时累计事件属性。在具体实现中,velocity特征生成模块108可采用LSTM模型来生成velocity特征。LSTM网络作为特殊的RNN具备链状结构,能够学习到长期依赖关系并记忆长期信息,因此适合用来获取序列变量的特征。
优选地,系统100还可包括特征整合模块110。该特征整合模块110可通过将两个或更多个变量相加、相乘或执行其它整合来生成新的经整合变量。
系统100还可包括本领域技术人员能够想到的其它自动特征生成模块。
根据具体实现,velocity特征生成模块108和特征整合模块110等所得到的特征在经过或不经过特征选择后,也可被用作重新训练机器学习模型的样本特征。
重新训练模块106可使用从样本特征生成模块104(和/或velocity特征生成模块106以及特征整合模块108等)自动生成的样本特征来重新训练机器学习模型。
优选地,仅在新增的自动生成的样本特征的量达到或超过阈值量时才重新训练机器学习模型。
例如,重新训练模块102可将新增特征的量与阈值量进行比较。当所述新增特征的量达到或超过阈值时,重新训练模块102可重新训练所述机器学习模型。该阈值量可由开发者根据实际情况确定。
在一些示例中,重新训练模块102可使用新增的自动生成的特征与原有特征共同训练机器学习模型。
优选地,可将经重新训练模块102重新训练的机器学习模型的性能与原机器学习模型的性能进行比较,并在重新训练的机器学习模型的性能优于原机器学习模型的性能时用经重新训练的机器学习模型来取代原机器学习模型。
参见图4,其示出了根据本说明书实施例的用于自动重新训练机器学习模型的方法400的流程图。
方法400可包括:在步骤402,可在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量。所述一个或多个性能度量包括准确率、精确率、召回率、F1值、ROC曲线下面积、PR曲线下面积或其任何组合。具体而言,此步骤可通过以下操作来实现:获取机器学习模型在该时间段内对样本的预测;确定所述机器学习模型对所述样本的预测是否正确;以及基于所述机器学习模型在该时间段内对样本的预测是否正确来计算机器学习模型的性能度量。例如,可周期性地采集机器学习模型的性能度量。此步骤的具体细节可参考上面对监控模块102的描述。
方法400还可包括:在步骤404,可基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型。例如,可基于性能度量、性能度量组合以及性能度量或性能度量组合的变化中的一者或多者来确定是否需要重新训练所述机器学习模型。可基于所采集到的性能度量与阈值进行比较。当所采集到的性能度量低于阈值时,可确定需要重新训练机器学习模型。此步骤的具体细节可参考上面对监控模块102的描述。
方法400还可包括:在步骤406,如果确定需要重新训练所述机器学习模型,则可至少基于所述时间段内的原始数据自动生成样本特征。例如,可采用以下方式来实现:检测与机器学习模型相关联的事件;在检测到所述事件时,记录所述事件的属性以作为原始数据的一部分;以及自动对所述原始数据执行特征工程,以获得所述样本特征。优选地,以增量方式将所述原始数据存储到数据库,例如HBase数据库。优选地,可对所述原始数据执行滑窗处理,以便以移动窗口的方式执行对原始数据的划分和处理。
其中,自动对所述原始数据执行特征工程可包括:对所述原始数据自动地执行数据清洗;对经数据清洗的原始数据自动地执行特征转换和/或特征提取以获得候选特征集;以及执行特征选择以自动地从所述候选特征集中选择特征子集,作为所述样本特征。
其具体实现可参考上面针对样本特征生成模块104的描述。
方法400还可包括:在步骤408,可至少使用所述自动生成的样本特征来重新训练所述机器学习模型。
优选地,在确定需要重新训练所述机器学习模型后,可首先请求开发者确认是否重新训练机器学习模型,且只有在从开发者接收到重新训练机器学习模型的确认之后,才自动重新训练机器学习模型。
其具体实现可参考上面针对重新训练模块106的描述。
方法400还可包括使用LSTM模型自动生成velocity特征以及通过将两个或更多个特征执行整合以生成经整合的特征。Velocity特征与经整合的特征可与自动生成的特征一起被用于重新训练机器学习模型。
可以领会,虽然在上面描述了用于重新训练机器学习模型的方法和系统,然而在实际应用中,上面描述的生成训练样本的方法可独立使用。例如,也就是说,可自动生成训练样本。
例如,这些训练样本可用来重新训练现有机器学习模型。例如,可人工确定需要重新训练机器学习模型。此时,可采用上面描述的生成训练样本的方法来生成训练样本。或者,可用来训练新开发的机器学习模型。例如,开发者开发了新的机器学习模型之后,可首先采用上面描述的方法来生成训练样本,然后使用所生成的训练样本来训练机器学习模型。
而且,本申请还公开了一种包括存储于其上的计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被处理器执行时使得所述处理器执行本文所述的各实施例的方法。
此外,本申请还公开了一种系统,该系统包括用于实现本文所述的各实施例的方法的装置。
可以理解,根据本说明书的一个或多个实施例的方法可以用软件、固件或其组合来实现。
应该理解,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
应该理解,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
应该理解,本文用单数形式描述或者在附图中仅显示一个的元件并不代表将该元件的数量限于一个。此外,本文中被描述或示出为分开的模块或元件可被组合为单个模块或元件,且本文中被描述或示出为单个的模块或元件可被拆分为多个模块或元件。
还应理解,本文采用的术语和表述方式只是用于描述,本说明书的一个或多个实施例并不应局限于这些术语和表述。使用这些术语和表述并不意味着排除任何示意和描述(或其中部分)的等效特征,应认识到可能存在的各种修改也应包含在权利要求范围内。其他修改、变化和替换也可能存在。相应的,权利要求应视为覆盖所有这些等效物。
同样,需要指出的是,虽然已参照当前的具体实施例来描述,但是本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本说明书的一个或多个实施例,在没有脱离本发明精神的情况下还可做出各种等效的变化或替换,因此,只要在本发明的实质精神范围内对上述实施例的变化、变型都将落在本申请的权利要求书的范围内。

Claims (19)

1.一种用于重新训练机器学习模型的方法,其特征在于,包括:
在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量;
基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型;
如果确定需要重新训练所述机器学习模型,则至少基于所述时间段内的原始数据自动生成样本特征;以及
至少使用所述自动生成的样本特征来重新训练所述机器学习模型。
2.如权利要求1所述的方法,其特征在于,监控所述机器学习模型在一时间段内的一个或多个性能度量包括:
获取机器学习模型在该时间段内对样本的预测;
确定所述机器学习模型对所述样本的预测是否正确;以及
基于所述机器学习模型在该时间段内对样本的预测是否正确来计算机器学习模型的性能度量。
3.如权利要求1所述的方法,其特征在于,所述一个或多个性能度量包括准确率、精确率、召回率、F1值、ROC曲线下面积、PR曲线下面积或其任何组合。
4.如权利要求1所述的方法,其特征在于,基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型包括基于性能度量、性能度量组合以及性能度量或性能度量组合的变化中的一者或多者来确定是否需要重新训练所述机器学习模型。
5.如权利要求1所述的方法,其特征在于,在确定需要重新训练所述机器学习模型后,请求开发者确认是否重新训练机器学习模型,且只有在从开发者接收到重新训练机器学习模型的确认之后,才自动重新训练机器学习模型。
6.如权利要求1所述的方法,其特征在于,自动生成样本特征包括:
检测与机器学习模型相关联的事件;
在检测到所述事件时,记录所述事件的属性以作为原始数据的一部分;以及
自动对所述原始数据执行特征工程,以获得所述样本特征。
7.如权利要求6所述的方法,其特征在于,自动对所述原始数据执行特征工程包括:
对所述原始数据自动地执行数据清洗;
对经数据清洗的原始数据自动地执行特征转换和/或特征提取以获得候选特征集;以及
执行特征选择以自动地从所述候选特征集中选择特征子集,作为所述样本特征。
8.如权利要求7所述的方法,其特征在于,自动对所述原始数据执行特征工程包括:
对所述原始数据执行滑窗处理,以便以移动窗口的方式执行对原始数据的划分和处理。
9.如权利要求6所述的方法,其特征在于,以增量方式将所述原始数据存储到数据库。
10.如权利要求9所述的方法,其特征在于,所述数据库为HBase数据库。
11.如权利要求1所述的方法,其特征在于,所述方法还包括:
将自动生成的样本特征的量与阈值量进行比较;以及
只有所述自动生成的样本特征的量达到或超过阈值时,才重新训练所述机器学习模型。
12.如权利要求1所述的方法,其特征在于,所述方法还包括:
将经重新训练的机器学习模型的性能与原机器学习模型的性能进行比较,并在所述经重新训练的机器学习模型的性能优于所述原机器学习模型的性能时用所述经重新训练的机器学习模型来取代所述原机器学习模型。
13.如权利要求1所述的方法,其特征在于,所述方法还包括:
使用LSTM模型自动生成velocity特征,且所述velocity特征也被用于重新训练所述机器学习模型。
14.如权利要求1所述的方法,其特征在于,所述方法还包括:
通过将两个或更多个特征执行整合以生成经整合的特征,且所述经整合的特征也被用于重新训练所述机器学习模型。
15.一种用于自动重新训练机器学习模型的系统,其特征在于,包括:
监控模块,用于:
在使用机器学习模型的过程中监控所述机器学习模型在一时间段内的一个或多个性能度量,以及
基于所述一个或多个性能度量确定是否需要重新训练所述机器学习模型;
样本特征生成模块,用于至少基于所述时间段内的原始数据自动生成样本特征;以及
重新训练模块,用于至少使用所述自动生成的样本特征来重新训练所述机器学习模型。
16.如权利要求15所述的系统,其特征在于,所述样本生成模块包括数据获取模块、特征提取模块以及特征选择模块。
17.如权利要求15所述的系统,其特征在于,还包括velocity特征生成模块,用于使用LSTM模型自动生成velocity特征,且所述velocity特征也被用于重新训练所述机器学习模型。
18.如权利要求15所述的系统,其特征在于,还包括特征整合模块,用于通过将两个或更多个特征执行整合以生成经整合的特征,且所述经整合的特征也被用于重新训练所述机器学习模型。
19.一种存储指令的计算机可读存储介质,所述指令当被计算机执行时,使所述计算机执行如权利要求1-14中任一项所述的方法。
CN201911172318.7A 2019-11-26 2019-11-26 重新训练机器学习模型的方法和系统 Pending CN110956278A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911172318.7A CN110956278A (zh) 2019-11-26 2019-11-26 重新训练机器学习模型的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911172318.7A CN110956278A (zh) 2019-11-26 2019-11-26 重新训练机器学习模型的方法和系统

Publications (1)

Publication Number Publication Date
CN110956278A true CN110956278A (zh) 2020-04-03

Family

ID=69978557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911172318.7A Pending CN110956278A (zh) 2019-11-26 2019-11-26 重新训练机器学习模型的方法和系统

Country Status (1)

Country Link
CN (1) CN110956278A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112540861A (zh) * 2020-12-08 2021-03-23 北京奇艺世纪科技有限公司 数据采集方法、数据处理方法、装置及电子设备
WO2021208774A1 (zh) * 2020-04-17 2021-10-21 第四范式(北京)技术有限公司 辅助机器学习模型上线的方法及装置
US20220092472A1 (en) * 2020-09-18 2022-03-24 Paypal, Inc. Meta-Learning and Auto-Labeling for Machine Learning
US11822447B2 (en) 2020-10-06 2023-11-21 Direct Cursus Technology L.L.C Methods and servers for storing data associated with users and digital items of a recommendation system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682067A (zh) * 2016-11-08 2017-05-17 浙江邦盛科技有限公司 一种基于交易数据的机器学习反欺诈监测系统
CN108985489A (zh) * 2018-06-08 2018-12-11 阿里巴巴集团控股有限公司 一种风险预测方法、风险预测装置和终端设备
CN109472318A (zh) * 2018-11-27 2019-03-15 阿里巴巴集团控股有限公司 为构建的机器学习模型选取特征的方法及装置
CN109544166A (zh) * 2018-11-05 2019-03-29 阿里巴巴集团控股有限公司 一种风险识别方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682067A (zh) * 2016-11-08 2017-05-17 浙江邦盛科技有限公司 一种基于交易数据的机器学习反欺诈监测系统
CN108985489A (zh) * 2018-06-08 2018-12-11 阿里巴巴集团控股有限公司 一种风险预测方法、风险预测装置和终端设备
CN109544166A (zh) * 2018-11-05 2019-03-29 阿里巴巴集团控股有限公司 一种风险识别方法和装置
CN109472318A (zh) * 2018-11-27 2019-03-15 阿里巴巴集团控股有限公司 为构建的机器学习模型选取特征的方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021208774A1 (zh) * 2020-04-17 2021-10-21 第四范式(北京)技术有限公司 辅助机器学习模型上线的方法及装置
US20220092472A1 (en) * 2020-09-18 2022-03-24 Paypal, Inc. Meta-Learning and Auto-Labeling for Machine Learning
US12088621B2 (en) * 2020-09-18 2024-09-10 Paypal, Inc. Meta-learning and auto-labeling for machine learning
US11822447B2 (en) 2020-10-06 2023-11-21 Direct Cursus Technology L.L.C Methods and servers for storing data associated with users and digital items of a recommendation system
CN112540861A (zh) * 2020-12-08 2021-03-23 北京奇艺世纪科技有限公司 数据采集方法、数据处理方法、装置及电子设备
CN112540861B (zh) * 2020-12-08 2023-09-08 北京奇艺世纪科技有限公司 数据采集方法、数据处理方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN110956278A (zh) 重新训练机器学习模型的方法和系统
CN110163647B (zh) 一种数据处理方法及装置
CN106095942B (zh) 强变量提取方法及装置
US20120173465A1 (en) Automatic Variable Creation For Adaptive Analytical Models
Sridhar et al. Multi-head self-attention transformer for dogecoin price prediction
CN117041017B (zh) 数据中心的智能运维管理方法及系统
KR20200039852A (ko) 기업 경영 현황 분석 예측 모델링을 위한 기계학습 알고리즘 제공 방법
KR20200053005A (ko) 상황인지 기반의 기업주가예측 알고리즘 제공 방법
CN115565038A (zh) 内容审核、内容审核模型的训练方法及相关装置
CN113435900A (zh) 交易风险确定方法、装置和服务器
CN112070559A (zh) 状态获取方法和装置、电子设备和存储介质
CN111951008A (zh) 一种风险预测方法、装置、电子设备和可读存储介质
Vieira et al. An Enhanced Seasonal-Hybrid ESD technique for robust anomaly detection on time series
Sarma et al. Stock market analysis with the usage of machine learning and deep learning algorithms
CN111523826B (zh) 一种数据采集方法、装置及设备
CN116883181B (zh) 基于用户画像的金融服务推送方法、存储介质及服务器
CN115794898B (zh) 一种金融资讯推荐方法、装置、电子设备及存储介质
CN117540336A (zh) 时间序列预测方法、装置及电子设备
CN116883179A (zh) 金融产品投资策略的确定方法、装置、处理器及电子设备
CN116664306A (zh) 风控规则的智能推荐方法、装置、电子设备及介质
Jadhav et al. Leveraging Market Sentiment for Stock Price Prediction using GAN
CN116703466A (zh) 基于改进灰狼算法的系统访问量预测方法及其相关设备
CN114550460B (zh) 轨道交通异常检测方法、装置及存储介质
CN113377640B (zh) 解释业务场景下模型的方法、介质、装置和计算设备
Macedo et al. A Machine Learning Approach for Spare Parts Lifetime Estimation.

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200403