一种面向模型构建的特征自动化衍生方法与流程

文档序号:21836341发布日期:2020-08-14 16:02阅读:401来源:国知局
本发明属于机器学习
技术领域
:,特别涉及一种特征自动化衍生方法。
背景技术
::在机器学习
技术领域
:中,“数据和特征决定了机器学习的上限,而模型只是在逼近这个上限而已”,也就是说,好的数据和特征是所有模型发挥到极致的前提。特征是数据中抽取出来的对结果预测有用的信息,特征工程是指以已有的数据为基础,根据专业领域的知识和经验,构造新的特征,获取高效准确的模型的过程,该过程是机器学习的关键。随着计算机技术和大数据应用的不断发展,越来越多的
技术领域
:都会基于大数据进行建模,以实现对用户群体进行准确分类,回归预测。建模的关键是将有限的业务数据进行尽可能多的变量衍生,从而能在其中找到有效的关键的变量。但是在日常建模中,建模人员在进行特征的加工处理,并从中衍生出新的特征这一过程中,通常需要花费大量的精力和时间,并依赖于个人的领域知识、直觉和数据操作,这是一个冗长的人工过程,且可能是极其枯燥的,同时最终得到的特征将会受到人的主观性和时间的限制。由此可知,在现有技术中,特征工程的人工处理方式局限性很大,一方面,人的有限经验,仅能衍生出有限的变量;另一方面,要将各维度切分再形成新的变量,需要人工耗费大量的时间和精力去编写和维护代码,并且,最终得到的大量特征却不一定能给模型带来较大的提升,这最终也会打击建模人员的积极性,还会成为建模人员不愿意投入更大的精力,以及花费更多的时间去完善以衍生出新变量的重要因素之一。技术实现要素:为解决上述问题,本发明提供一种面向模型构建的特征自动化衍生方法,用于实现自动化生成大量新特征,该方法不仅能把建模人员从数据衍生的繁杂中脱离出来,还能为模型效果增加可能性,该方法还大大缩短建模时间,快速实现业务需求,并加快模型的迭代速度。为实现上述目的,本发明的技术方案如下:一种面向模型构建的特征自动化衍生方法,包括以下步骤:s1:根据常用数据的衍生模式来构建出基本算子,并预留出与基本算子对应的相关配置;s2:将一个或多个基本算子用来构建模板,并且在该模板中,对应基本算子的可配置项完成算子参数的设定,最终生成变量映射接口,每个基本算子各不相同;s3:映射数据与模板的关系,以实现模板接口的调用;s4:调用模板接口,完成数据与基本算子的内在映射,并由基本算子实现变量衍生,从而产生新特征。在本发明中,该特征自动化衍生方法可用于从原始小维度明细数据中自动化的衍生出大量新特征,该方法基于数据库,采用常用数据的衍生模式来构建出基本算子,并将这些基本算子集成在模板上,对应设定算子参数,便于后续步骤的实现,本发明中的方法不仅能把建模人员从数据衍生的繁杂中脱离出来,还能为模型效果增加可能性,该方法还缩短了建模时间。具体地,在步骤s1中,根据当前定义的算子内容来构建基本算子,基本算子包括运算模式、变量配置、运算方法、时间衍生设定(可选)和衍生规则,且这五个部分之间各自独立又相互配合,最终决定要衍生的变量,时间衍生设定为可选项。具体地,运算模式包括直接运算模式和合并模式,直接运算模式包括从变量与变量间的直接运算产生新变量。在本发明中,直接运算模式主要用于1:1场景,不做数据合并,主要根据一个列或多个列直接衍生出新的特征来。具体地,合并模式包括变量通过聚合运算汇聚到唯一标志变量维度的方式产生新变量,如计算某一客户的全量交易总金额、总交易次数。具体地,变量配置主要用于指定基本算子调用时需要使用到的调用变量,调用变量包括唯一标志变量(如客户唯一编号)、日期变量(如交易日期)、汇聚变量(如金额)以及自动衍生规则变量(如渠道、交易类型)。变量配置可以相当于存储变量、新变量的数据库,而在进行运算时从变量配置中调用需要的数据,最终用于形成模板对外接口。在本发明中,汇聚变量可以是单个值,也可以多个值运算后的结果变量。例如,对于交易流水数据,可以衍生出大量的流水特征;针对征信数据,可以衍生出大量的风控特征,如未结清账户近12个月逾期总金额,未结清账户应还款总额等。具体地,运算方法一般包括四则运算,加减乘除;以及汇聚运算,汇聚运算包括:求总和、求总次数、求均值、求最大值和求最小值;当存在时间衍生设定时,还有基于时间常规汇聚运算后,按汇聚时间片的不同,计算当前时间分片较前一个时间分片的比率、差值等。在运算方法中,生成新变量过程中,根据采用的运算模式来选择对应的运算方法;当运算模式为合并模式(1:n)时,可选求总和、求总次数、求均值、求最大值、求最小值等;当运算模式为直接运算模式(1:1)时,可自定义运算算式,如计算剩余本金与贷款额度之比;或基于当前只有的支持配置来做列的衍生,如身份证抽取出生日。具体地,衍生规则主要包括以下两种模式的衍生规则:一种为人为指定衍生规则,如限定衍生变量取值为“消费”、“取现”的变量衍生;另一种则是自动化的衍生规则,如只需要指定一个或多个衍生变量后,系统会自动采用穷举法,查找出所有的规则组合,并实现在不同规则下的变量衍生。在本发明中,运算模式决定数据应该用汇聚还是直接衍生,变量配置定义了算子对外的接口,运算方法、时间衍生设定和衍生规则决定需要衍生怎样的变量。具体地,在步骤s2中,其具体步骤包括:s21:根据应用场景需求,模板对应集成了一个或多个相同运算模式的不同基本算子;s22:在模板中设定基本算子需要的变量配置、运算方法、时间衍生设定和衍生规则内容对应的参数,之后生成供用户调用的模板接口;s23:在完成一个或多个基本算子的配置后,自动汇聚所有基本算子的变量配置,合成模板接口及调用参数。在本发明中,模板完成每个基本算子中五个部分的配置后,基本算子有依赖的变量配置,会汇总去重后形成模板接口,在最终应用时,用户的数据库数据调用模板接口,即可完成数据在数据库中的大量衍生。例如:时间切片算子,需要依赖用户id变量,时间变量,汇聚变量,衍生变量;部分占比算子,需要依赖用户id变量,汇聚变量,衍生变量;模板a配置了以上两个算子,那么最终只需要映射用户id变量,时间变量,汇聚变量,衍生变量这四个变量。本发明的方法大大缩短建模时间,能更快速实现业务需求,并加快模型的迭代速度。具体地,在步骤s3中,数据来源于一个或多个数据表,且当来源于多个数据表时,将配置多个数据表之间的关联关系,以合并成一张初始表,且在形成初始表之后,调用模板接口。在本发明中,在调用模板接口时,会遍历模板内的所有算子并逐个实现变量衍生,单个算子运算并衍生新特征时,需将数据转换为算子所需原始变量,并使用模板设定的算子参数,最终基于多维度组合的运算逻辑,实现特征的大量衍生,输出高维数据表。如此可具体延衍生出如:近一月消费交易总额、近一年取现交易总次数等以时间切片和自动化规则构建的大量新特征。本发明的优势在于:相比于现有技术,本发明的面向模型构建的特征自动化衍生方法,用于实现自动化生成大量新特征,该方法不仅能把建模人员从数据衍生的繁杂中脱离出来,还能为模型效果增加可能性,该方法还大大缩短建模时间,更快速实现业务需求,并加快模型的迭代速度。附图说明图1是本发明一实施例的原理框图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明的技术方案如下:如图1,本发明实施了面向模型构建的特征自动化衍生方法,包括以下步骤:s1:根据常用数据的衍生模式来构建出基本算子,并预留出与基本算子对应的相关配置;其中,根据当前定义的算子内容来构建基本算子,基本算子包括运算模式、变量配置、运算方法、时间衍生设定(可选)和衍生规则,且这五个部分之间各自独立又相互配合,最终决定要衍生的变量;s2:将一个或多个不同的基本算子用来构建模板,并且在该模板中,对应基本算子的可配置项完成算子参数的设定,最终生成变量映射接口;其中,在步骤s2中,具体包括以下步骤:s21:根据应用场景需求,模板对应集成了一个或多个相同运算模式的不同基本算子;s22:在模板中设定基本算子需要的变量配置、运算方法、时间衍生设定和衍生规则内容对应的参数,之后生成供用户调用的模板接口;s23:在完成一个或多个基本算子的配置后,自动汇聚所有基本算子的变量配置,合成模板接口及调用参数,如cust_id、tran_dt、channel、tran_type;s3:映射数据与模板的关系,以实现模板接口的调用;其中,在步骤s3中,数据来源于一个或多个数据表,且当来源于多个数据表时,将配置多个数据表之间的关联关系,以合并成一张初始表,且在形成初始表之后,调用模板接口;s4:调用模板接口,完成数据与基本算子的内在映射,并由基本算子实现变量衍生,从而产生新特征。在本发明中,该特征自动化衍生方法可用于从原始小维度明细数据中自动化的衍生出大量新特征,该方法基于数据库,采用常用数据的衍生模式来构建出基本算子,并将这些基本算子集成在模板上,对应设定算子参数,便于后续步骤的实现,本发明中的方法不仅能把建模人员从数据衍生的繁杂中脱离出来,还能为模型效果增加可能性,该方法还缩短了建模时间,能更快速实现业务需求,并加快模型的迭代速度。在本发明中,在模板中预设的参数,如变量配置为唯一标志为cust_id、日期变量为tran_dt、自动衍生规则变量为channel、tran_type,时间衍生的方式为按自然月切片衍生,运算方法上指定了需要计算按时间切片后的求总和、求总次数、以及相对上一时间切片的比率、差值、周平均、月平均、有数据天数等,衍生规则上指定以channel、tran_type两个变量的值,用于自动化衍生规则。在本具体实施方法中,运算模式包括直接运算模式和合并模式,直接运算模式包括从变量与变量间的直接运算产生新变量,如a+b得到c。在本发明中,直接运算模式主要用于1:1场景,不做数据合并,主要根据一个列或多个列直接衍生出新的特征来,例如在风控中,计算申请贷款时间与开户时间的相差天数;又如,从身份证号码中抽取出出生年月、性别、地区;再如,从征信数据中计算剩余本金与贷款额度之比。在本具体实施方法中,合并模式包括变量通过聚合运算汇聚到唯一标志变量维度的方式产生新变量,如计算某一客户的全量交易总金额、总交易次数。例如:当需要根据基本算子的运算模式,经过配置后,运算出多个新特征。当运算方式为合并模式(1:n)时,即一个用户拥有多条交易数据;变量需要设置(变量配置):用户id,交易类型,交易金额,交易日期;运算方式(运算方法):求总和;时间衍生:选择回溯前六个月时间切片数据;衍生规则:按交易类型获取规则;具体运算:选取前【n个月】的交易数据,对交易类型为【type】的数据,按用户【sum/count/avg/max/min】交易金额;n为1,2,3,4,5,6;type包括消费、取现等,根据数据使用穷举法获取,再根据统计抽取出部分规则,作为最终衍生规则。在本具体实施方法中,变量配置主要用于指定基本算子调用时需要使用到的调用变量,调用变量包括唯一标志变量(如客户唯一编号)、日期变量(如交易日期)、汇聚变量(如金额)以及自动衍生规则变量(如渠道、交易类型)。变量配置可以相当于存储变量、新变量的数据库,而在进行运算时从变量配置中调用需要的数据,最终用于形成模板对外接口。在本发明中,汇聚变量可以是单个值,也可以多个值运算后的结果变量。例如,对于交易流水数据,可以衍生出大量的流水特征;针对征信数据,可以衍生出大量的风控特征,如未结清账户近12个月逾期总金额,未结清账户应还款总额等。在本具体实施方法中,运算方法一般包括四则运算,加减乘除;以及汇聚运算,汇聚运算包括:求总和、求总次数、求均值、求最大值和求最小值;当存在时间衍生设定时,还有基于时间常规汇聚运算后,按汇聚时间片的不同,计算当前时间分片较前一个时间分片的比率、差值等。在运算方法中,生成新变量过程中,根据采用的运算模式来选择对应的运算方法;当运算模式为合并模式(1:n)时,可选求总和、求总次数、求均值、求最大值、求最小值等;当运算模式为直接运算模式(1:1)时,可自定义运算算式,如计算剩余本金与贷款额度之比;或基于当前只有的支持配置来做列的衍生,如身份证抽取出生日。在本具体实施方法中,衍生规则主要包括以下两种模式的衍生规则:一种为人为指定衍生规则,如限定衍生变量取值为“消费”、“取现”的变量衍生;另一种则是自动化的衍生规则,如只需要指定一个或多个衍生变量后,系统会自动采用穷举法,查找出所有的规则组合,并实现在不同规则下的变量衍生。在本发明中,运算模式决定数据应该用汇聚还是直接衍生,变量配置定义了算子对外的接口,运算方法、时间衍生设定和衍生规则决定需要衍生怎样的变量。例如:营销模型特征需要计算前一个月消费交易总金额;运算方式为合并模式(1:n),一个用户拥有多条交易数据;变量需要设置:用户id,交易类型,交易金额,交易日期;运算方式:求总和;时间衍生:选择回溯前一个月时间切片数据;衍生规则:按交易类型获取规则;具体运算:选取前【一个月】的交易数据,对交易类型为【消费】的数据,按用户【汇总】交易金额。在本具体实施方法中,如图1所示,应用场景选取:对银行借记卡交易数据做自动化特征衍生。首先基于当前定义的算子内容来构建两个基本算子:时间切片算子、部分占比算子;时间切片算子负责根据不同时间做切片,得到与时间相关的新变量,如前6个月消费总交易笔数;部分占比算子负责计算不同衍生规则下与占比相关的新变量,如渠道为线上的消费总交易笔数占全部交易笔数的百分比。再使用时间切片算子与部分占比算子构成交易数据衍生模板,在模板完成每个算子中五个部分的配置后,这两个算子都有依赖的变量配置,会汇总去重后形成模板接口,在最终应用时,用户的数据库数据调用模板接口,即可完成数据在数据库中的大量衍生。在此过程中,时间切片算子需要依赖用户id变量、时间变量、衍生变量和汇聚变量;部分占比算子需要依赖用户id变量,汇聚变量,衍生变量;交易数据衍生模板配置了以上两个算子,那么最终只需要映射用户id变量,时间变量,汇聚变量,衍生变量这四个变量。又由于使用的数据是来自不同的表,在进行映射前需要进行表关联以形成初始表(结果数据表)。再从结果数据表中,将用户id、交易时间、渠道/交易类型、交易金额分别映射到用户id变量,时间变量,汇聚变量,衍生变量,即可完成模板调用,使用算子完成变量衍生。根据上述,假设初始表table有数十个变量分别为var1、var2..var10,调用接口时,仅需要设置var1对应cust_id、var3对应tran_dt、var10对应channel、var4对应tran_type。在本发明中,在调用模板接口时,会遍历模板内的所有算子并逐个实现变量衍生,单个算子运算并衍生新特征时,需将数据转换为算子所需原始变量,并使用模板设定的算子参数,最终基于多维度组合的运算逻辑,实现特征的大量衍生,输出高维数据表。如此可具体延衍生出如:近一月消费交易总额、近一年取现交易总次数等以时间切片和自动化规则构建的大量新特征。本发明的优势在于:相比于现有技术,本发明所实施的面向模型构建的特征自动化衍生方法,用于实现自动化生成大量新特征,该方法不仅能把建模人员从数据衍生的繁杂中脱离出来,还能为模型效果增加可能性,该方法还大大缩短建模时间,更快速实现业务需求(如需要对银行借记卡交易数据做特征衍生),并加快模型的迭代速度。以上列举了本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1