基于矩阵乘法的特征编码方法、装置、设备及介质制造方法及图纸

技术编号:25186895 阅读:43 留言:0更新日期:2020-08-07 21:14
本发明专利技术公开了一种基于矩阵乘法的特征编码方法,涉及机器学习技术领域,用于解决现有循环遍历效率低的问题,该方法包括以下步骤:获取特征编码映射关系及原始数据;建立编码条件矩阵和编码值矩阵;建立原始数据矩阵;对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵;将所述升维矩阵和所述编码值矩阵进行矩阵乘法运算,得到目标矩阵。本发明专利技术还公开了一种基于矩阵乘法的特征编码装置、电子设备和计算机存储介质。本发明专利技术通过构建矩阵,通过矩阵逻辑运算,进而完成快速计算编码值的过程。

【技术实现步骤摘要】
基于矩阵乘法的特征编码方法、装置、设备及介质
本专利技术涉及机器学习
,尤其涉及一种基于矩阵乘法的特征编码方法、装置、设备及介质。
技术介绍
机器学习或深度学习,在训练模型之前,往往需要先对特征进行编码。特征编码一般为为两个步骤:1.确定特征编码的映射关系,例如分箱字典。2.根据映射关系,对数据进行编码。这里的数据包括训练数据,也包括海量的新数据。现有技术通常是通过两层循环遍历的方式,完成数据的编码,具体地,先循环遍历各个特征,再循环遍历各个bin(特征编码的条件),匹配到bin时就返回bin对应的woe值(具体编码值),如果都没有匹配到,返回指定的woe值。现有技术通过两层循环遍历的进行数据编码的方式运行效率较低,经常需要遍历多个bin之后,才能返回对应的woe值。
技术实现思路
为了克服现有技术的不足,本专利技术的目的之一在于提供一种基于矩阵乘法的特征编码方法,其通过对原始数据、编码条件及编码值建立矩阵,并进行逻辑运算,进而得到原始数据对应的编码值。本专利技术的目的之一采用以下技术方案实现:一种基于矩阵乘法的特征编码方法,包括以下步骤:获取特征编码映射关系及原始数据;根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值矩阵Wk*1,其中,k为所述特征编码映射关系中特征编码条件的数量,n为特征维度;根据所述原始数据建立原始数据矩阵,其中,m为所述原始数据的数量;根据所述特征编码映射关系中的编码条件,对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵Em*k;将所述升维矩阵Em*k和所述编码值矩阵Wk*1进行矩阵乘法运算,得到目标矩阵;将所述目标矩阵转换为特征编码数组。进一步地,所述特征编码映射关系为分箱字典。进一步地,根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值矩阵Wk*1,其中,k为所述特征编码映射关系中特征编码条件的数量,包括以下步骤:根据所述特征编码映射关系中的特征数量确定特征维度n,所述特征维度n为一维或二维;根据所述特征维度建立编码条件矩阵Bk*n和编码值矩阵Wk*1;其中,k为所述特征编码条件的数量。进一步地,根据所述特征维度建立编码条件矩阵Bk*n,还包括以下步骤:根据所述特征编码映射关系得到特征切割点:cutoff[c1,c2,……,ck-1];根据所述特征切割点建立编码条件矩阵Bk*n,所述编码条件矩阵Bk*n包括B1,B2两部分:,,其中,为所述编码条件的起始值,为所述编码条件的终止值。进一步地,根据所述特征编码映射关系中的编码条件,对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵Em*k,包括以下步骤:将所述原始数据矩阵与所述编码条件矩阵B1和B2进行比较运算;其中,所述比较运算根据所述特征编码映射关系中的编码条件进行,当所述编码条件为左闭右开区间时,所述比较运算为,反之,所述比较运算为;计算所述原始数据矩阵和B1的比较运算结果及所述原始数据矩阵和B2的比较运算结果的交集,得到所述升维矩阵Em*k。进一步地,将所述升维矩阵Em*k和所述编码值矩阵Wk*1进行矩阵乘法运算,得到目标矩阵,包括以下步骤:将所述升维矩阵Em*k中转换为稠密矩阵;将转换后的所述升维矩阵Em*k与编码值矩阵Wk*1进行矩阵乘法,得到目标矩阵。进一步地,将所述升维矩阵Em*k和所述编码值矩阵Wk*1进行矩阵乘法运算,得到目标矩阵,包括以下步骤:根据等价公式计算所述升维原始数据矩阵Em*k与编码值矩阵Wk*1的结果,所述等价公式为:,其中,为目标矩阵,为目标矩阵在x,y位置的数值。本专利技术的目的之二在于提供一种基于矩阵乘法的特征编码装置,其通过对原始数据、编码条件及编码值建立矩阵,并进行逻辑运算,进而得到原始数据对应的编码值。本专利技术的目的之二采用以下技术方案实现:一种基于矩阵乘法的特征编码装置,其包括:获取模块,用于获取特征编码映射关系及原始数据;矩阵构建模块,用于根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值矩阵Wk*1,其中,k为所述特征编码映射关系中特征编码条件的数量;并根据所述原始数据建立原始数据矩阵,其中,m为所述原始数据的数量,n为特征维度;计算模块,用于根据所述特征编码映射关系中的编码条件,对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵Em*k;将所述升维矩阵Em*k和所述编码值矩阵Wk*1进行矩阵乘法运算,得到目标矩阵,并将所述目标矩阵转换为特征编码数组。本专利技术的目的之三在于提供执行专利技术目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的基于矩阵乘法的特征编码方法。本专利技术的目的之四在于提供存储专利技术目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于矩阵乘法的特征编码方法。相比现有技术,本专利技术的有益效果在于:本专利技术通过建立原始数据、编码条件及编码值的矩阵,并根据编码条件进行矩阵的逻辑运算,进而快速得到原始数据对应的编码值,无需进行两层循环遍历,大大加快了计算机的运算效率。附图说明图1是实施例一的基于矩阵乘法的特征编码方法的原理图;图2是实施例一的矩阵构建方法的流程图;图3是实施例一的逻辑运算方法的流程图;图4是实施例三的基于矩阵乘法的特征编码装置的结构框图;图5是实施例四的电子设备的结构框图。具体实施方式以下将结合附图,对本专利技术进行更为详细的描述,需要说明的是,以下参照附图对本专利技术进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。实施例一实施例一提供了一种基于矩阵乘法的特征编码方法,旨在通过特征编码条件,进行矩阵乘法,进而快速得到编码值。请参照图1所示,一种基于矩阵乘法的特征编码方法,包括以下步骤:S110、获取特征编码映射关系及原始数据;上述的特征编码映射关系为表示编码条件与编码值的映射关系,本实施例中选用分箱字典,当然,在其他实施例中特征映射关系也可以是其他形式的表现方式,本实施例中分箱字典的形式表现为:{bin1:woe1,bin2,woe2...},bin为编码条件,woe为编码条件对应的编码值,例如一个年龄分箱字典,[15,20):woe1,[20,35):woe2,表示如果年龄介于15和20岁之间,替换为woe1,介于20和35岁之间,则替换为woe2。S120、根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值本文档来自技高网...

【技术保护点】
1.一种基于矩阵乘法的特征编码方法,其特征在于,包括以下步骤:/n获取特征编码映射关系及原始数据;/n根据所述特征编码映射关系建立编码条件矩阵B

【技术特征摘要】
1.一种基于矩阵乘法的特征编码方法,其特征在于,包括以下步骤:
获取特征编码映射关系及原始数据;
根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值矩阵Wk*1,其中,k为所述特征编码映射关系中特征编码条件的数量,n为特征维度;
根据所述原始数据建立原始数据矩阵,其中,m为所述原始数据的数量;
根据所述特征编码映射关系中的编码条件,对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵Em*k;
将所述升维矩阵Em*k和所述编码值矩阵Wk*1进行矩阵乘法运算,得到目标矩阵;
将所述目标矩阵转换为特征编码数组。


2.如权利要求1所述的基于矩阵乘法的特征编码方法,其特征在于,所述特征编码映射关系为分箱字典。


3.如权利要求1或2所述的基于矩阵乘法的特征编码方法,其特征在于,根据所述特征编码映射关系建立编码条件矩阵Bk*n和编码值矩阵Wk*1,其中,k为所述特征编码映射关系中特征编码条件的数量,包括以下步骤:
根据所述特征编码映射关系中的特征数量确定特征维度n,所述特征维度n为一维或二维;
根据所述特征维度建立编码条件矩阵Bk*n和编码值矩阵Wk*1;其中,k为所述特征编码条件的数量。


4.如权利要求3所述的基于矩阵乘法的特征编码方法,其特征在于,根据所述特征维度建立编码条件矩阵Bk*n,还包括以下步骤:
根据所述特征编码映射关系得到特征切割点:cutoff[c1,c2,……,ck-1];
根据所述特征切割点建立编码条件矩阵Bk*n,所述编码条件矩阵Bk*n包括B1,B2两部分:

,,
其中,为所述编码条件的起始值,为所述编码条件的终止值。


5.如权利要求4所述的基于矩阵乘法的特征编码方法,其特征在于,根据所述特征编码映射关系中的编码条件,对所述原始数据矩阵和所述编码条件矩阵进行逻辑运算,得到升维矩阵Em*k,包括以下步骤:
将所述原始数据矩阵与所述编码条件矩阵B1和B2进行比较运算;其中,所述比较运算根据所述特征编码映射关系中...

【专利技术属性】
技术研发人员:张文会赵争超
申请(专利权)人:同盾控股有限公司
类型:发明
国别省市:浙江;33

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

1