一种变量分箱方法、装置、终端设备及存储介质制造方法及图纸

技术编号:19691829 阅读:50 留言:0更新日期:2018-12-08 11:10
本发明专利技术涉及计算机技术领域,提供了一种变量分箱方法、装置、终端设备及存储介质,变量分箱方法包括:获取样本数据;根据预设的变量配置,从样本数据中确定待分箱的名义变量和该名义变量对应的特征值;将特征值存储到预设的特征值集合中;针对特征值集合中的每个特征值,以该特征值为测试分裂点将名义变量分为两箱,并计算特征值对应的关联指标值;将关联指标值中的最大值对应的特征值作为目标分裂点执行分箱操作,并将该特征值从所述特征值集合中移除;若分箱结果达到预设的箱数阈值则停止分箱,否则继续执行分箱操作。本发明专利技术的技术方案实现了基于关联指标值对名义变量进行自动分箱操作,减少人工干预及耗时,提高分箱操作的分箱效率。

【技术实现步骤摘要】
一种变量分箱方法、装置、终端设备及存储介质
本专利技术涉及计算机
,尤其涉及一种变量分箱方法、装置、终端设备及存储介质。
技术介绍
目前,常见的分箱方法是等宽分箱或者等频分箱,等宽分箱是指将特征的取值范围分为a个等宽的区间,每个区间当作一个分箱,等频分箱是指把特征值按照从小到大的顺序排列,根据特征值的个数等分为a部分,每部分当作一个分箱。但是无论是等宽分箱还是等频分箱,都需要预先人工设定分箱的箱数,如果设定的箱数太小,则会损失较多的信息,如果设定的箱数太大,则达不到分箱的目的。若在等频分箱或者等宽分箱之后,再通过人工方式进行合并,由于这种人工合并需要依赖主观经验,无法确保提高特征预测能力,并且需要耗费较多时间,效率低下。在样本数据量较小的情况下,还可以通过人工方式分析特征值的分布情况,并根据分布情况对特征值进行人工分段,进行分箱,但是,一方面,这种方式依赖主观经验,并且特征值的分布并不能真实的反映样本变量本身的特征,无法确保提高模型预测能力,另一方面给,在样本数据量巨大的情况下,人工方式会带来巨大的工作量,导致分箱效率低。
技术实现思路
本专利技术实施例提供一种变量分箱方法、装置、终端设备及存储介质,以解决现有技术中等频分箱或等宽分箱的分箱结果不准确,以及分箱效率低的问题。第一方面,本专利技术实施例提供一种变量分箱方法,包括:获取样本数据;根据预设的变量配置,从所述样本数据中确定待分箱的名义变量和所述名义变量对应的m个特征值,其中,m为大于1的正整数;将m个所述特征值存储到预设的特征值集合中,并设置分箱轮数k的初始值为0,以及第0轮分箱的分箱结果为空,其中,k∈[0,m-1];针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,计算所述特征值对应的关联指标值,得到m-k个所述关联指标值;将m-k个所述关联指标值中的最大值对应的特征值作为目标分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,作为第k+1轮分箱的分箱结果,并将该特征值从所述特征值集合中移除;若k+2达到预设的箱数阈值,则停止分箱,并将所述第k+1轮分箱的分箱结果确定为最终分箱结果,否则,对k进行加1操作后返回所述针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上,将所述名义变量分为k+2箱,计算该特征值对应的关联指标值,得到m-k个所述关联指标值的步骤继续执行。第二方面,本专利技术实施例提供一种变量分箱装置,包括:获取模块,用于获取样本数据;确定模块,用于根据预设的变量配置,从所述样本数据中确定待分箱的名义变量和所述名义变量对应的m个特征值,其中,m为大于1的正整数;存储模块,用于将m个所述特征值存储到预设的特征值集合中,并设置分箱轮数k的初始值为0,以及第0轮分箱的分箱结果为空,其中,k∈[0,m-1];计算模块,用于针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,计算所述特征值对应的关联指标值,得到m-k个所述关联指标值;移除模块,用于将m-k个所述关联指标值中的最大值对应的特征值作为目标分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,作为第k+1轮分箱的分箱结果,并将该特征值从所述特征值集合中移除;循环模块,用于若k+2达到预设的箱数阈值,则停止分箱,并将所述第k+1轮分箱的分箱结果确定为最终分箱结果,否则,对k进行加1操作后返回所述针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上,将所述名义变量分为k+2箱,计算该特征值对应的关联指标值,得到m-k个所述关联指标值的步骤继续执行。第三方面,本专利技术实施例提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述变量分箱方法的步骤。第四方面,本专利技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述变量分箱方法的步骤。本专利技术实施例提供的变量分箱方法、装置、终端设备及存储介质中,通过从预设的数据库中获取样本数据,根据预设的变量配置从样本数据中确定待分箱的名义变量和该名义变量对应的特征值,并将特征值存储到预设的特征值集合中,以特征值集合中的每个特征值作为测试分裂点将名义变量分为两箱,并计算每个特征值对应的关联指标值,从关联指标值中选取最大值对应的特征值作为目标分裂点执行分箱操作,若分箱结果达到预设的箱数阈值则停止分箱操作,否则继续执行分箱操作,实现了基于关联指标值对名义变量进行自动分箱操作,使得在最大程度保存原始样本数据信息的同时,快速准确地进行特征提取,从而减少人工干预及耗时,提高分箱操作的分箱效率,以便能够快速构建特征编码模型。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例1中提供的变量分箱方法的实现流程图;图2是本专利技术实施例1中提供的变量分箱方法中一个具体分箱过程的示例图;图3是本专利技术实施例1中提供的变量分箱方法中步骤S2的实现流程图;图4是本专利技术实施例2中提供的变量分箱装置的示意图;图5是本专利技术实施例4中提供的终端设备的示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1请参阅图1,图1示出本实施例提供的变量分箱方法的实现流程。该变量分箱方法应用在基于spark平台的特征编码过程中,用于实现对样本数据进行自动分箱,在最大程度保存原始样本数据信息的同时,能够快速准确地进行特征提取,实现快速建模。详述如下:S1:获取样本数据。在本专利技术实施例中,从预设的数据库中采集样本数据,该样本数据主要为保险业务数据。S2:根据预设的变量配置,从样本数据中确定待分箱的名义变量和名义变量对应的m个特征值,其中,m为大于1的正整数。在本专利技术实施例中,预设的变量配置用于配置需要进行分箱的变量,该变量配置可以由用户根据建模需求或者应用需要进行灵活设置。变量包括连续变量和名义变量,连续变量是指其特征值在一定区间内可以任意取值的变量,其特征值是连续不断的,任意两个特征值之间可以无限分割,有单位并且可以排序,例如距离;名义变量是指其特征值可以一一列举,但没有单位也没有顺序,例如性别。若根据样本数据确定预设的变量配置为连续变量,则首先对连续变量进行离散化,并对离散化后的连续变量提取对应的名义变量及其对应的m个特征值,即将连续变量转化为名义变量;若根据样本数据确定预设的变量配置为名义变量,则直接从样本数据中确定该待分箱的名义变量对应的m个特征值。分箱,是对数据进一步划分,按照预设条件分布到不同的箱之中。本文档来自技高网...

【技术保护点】
1.一种变量分箱方法,其特征在于,所述变量分箱方法包括:获取样本数据;根据预设的变量配置,从所述样本数据中确定待分箱的名义变量和所述名义变量对应的m个特征值,其中,m为大于1的正整数;将m个所述特征值存储到预设的特征值集合中,并设置分箱轮数k的初始值为0,以及第0轮分箱的分箱结果为空,其中,k∈[0,m‑1];针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,计算所述特征值对应的关联指标值,得到m‑k个所述关联指标值;将m‑k个所述关联指标值中的最大值对应的特征值作为目标分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,作为第k+1轮分箱的分箱结果,并将该特征值从所述特征值集合中移除;若k+2达到预设的箱数阈值,则停止分箱,并将所述第k+1轮分箱的分箱结果确定为最终分箱结果,否则,对k进行加1操作后返回所述针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上,将所述名义变量分为k+2箱,计算该特征值对应的关联指标值,得到m‑k个所述关联指标值的步骤继续执行。

【技术特征摘要】
1.一种变量分箱方法,其特征在于,所述变量分箱方法包括:获取样本数据;根据预设的变量配置,从所述样本数据中确定待分箱的名义变量和所述名义变量对应的m个特征值,其中,m为大于1的正整数;将m个所述特征值存储到预设的特征值集合中,并设置分箱轮数k的初始值为0,以及第0轮分箱的分箱结果为空,其中,k∈[0,m-1];针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,计算所述特征值对应的关联指标值,得到m-k个所述关联指标值;将m-k个所述关联指标值中的最大值对应的特征值作为目标分裂点,在第k轮分箱的分箱结果的基础上将所述名义变量分为k+2箱,作为第k+1轮分箱的分箱结果,并将该特征值从所述特征值集合中移除;若k+2达到预设的箱数阈值,则停止分箱,并将所述第k+1轮分箱的分箱结果确定为最终分箱结果,否则,对k进行加1操作后返回所述针对所述特征值集合中的每个特征值,以该特征值为测试分裂点,在第k轮分箱的分箱结果的基础上,将所述名义变量分为k+2箱,计算该特征值对应的关联指标值,得到m-k个所述关联指标值的步骤继续执行。2.如权利要求1所述的变量分箱方法,其特征在于,所述获取待分箱的名义变量和所述名义变量对应的m个特征值之前,所述变量分箱方法还包括:从预设的配置文件中获取分箱配置参数,其中,所述分箱配置参数包括所述箱数阈值。3.如权利要求1所述的变量分箱方法,其特征在于,所述根据预设的变量配置,从所述样本数据中确定待分箱的名义变量和所述名义变量对应的m个特征值包括:若所述变量配置为连续变量,则对所述连续变量进行等宽分箱或者等频分箱,得到初始分箱结果;根据所述初始分箱结果,确定待分箱的名义变量和所述名义变量对应的m个特征值。4.如权利要求1所述的变量分箱方法,其特征在于,所述计算所述特征值对应的关联指标值包括:若所述名义变量属于二元分类特征,则按照如下公式计算所述关联指标值:其中,IV为所述关联指标值,ni1为第i箱中根据所述二元分类特征确定的白样本的样本数,ni2为第i箱中根据所述二元分类特征确定的黑样本的样本数,n*1为所述样本数据中所述白样本的样本总数,n*2为所述样本数据中所述黑样本的样本总数。5.如权利要求1所述的变量分箱方法,其特征在于,所述计算所述特征值对应的关联指标值还包括:若所述名义变量属于多元分类特征,则按照如下公式计算所述关联指标值:其中,Gr为所述关联指标值,Y为所述样本数据的总样本集,n为根据所述多元分类特征确定的样本类别数,pg为属于第g类别的样本在所述总样本集中的占比,Gini(Y)为所述总样本集的基尼指数,Gini(Yj)为第j箱的基尼指数,Yj为第j箱的名义变量的样本集合,|Yj|为Yj中的样本数量,|Y|为所述总样本集中的样本数量。6.一种变量分箱装置,其特征在于,所述变量分箱包括:获取...

【专利技术属性】
技术研发人员:黄严汉曾凡刚
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1