多列基准列聚合特征生成方法、系统及可读存储介质技术方案

技术编号:35644986 阅读:13 留言:0更新日期:2022-11-19 16:37
本发明专利技术提供了一种多列基准列聚合特征生成方法、系统及可读存储介质,所述多列基准列聚合特征生成方法包括:S1:对每基准列进行编码;S2:生成一列对所有基准列组合编码的组合基准列;S3:基于S2中组合基准列生成统计特征,本发明专利技术能够有效加速生成多列基准列的聚合特征,同时提高了数据分析和数据挖掘的效率。同时提高了数据分析和数据挖掘的效率。同时提高了数据分析和数据挖掘的效率。

【技术实现步骤摘要】
多列基准列聚合特征生成方法、系统及可读存储介质


[0001]本专利技术涉及数据处理
,尤其涉及多列基准列聚合特征生成方法、系统及可读存储介质。

技术介绍

[0002]在对表数据进行数据分析或者数据挖掘的过程中,通常需要对表数据做转换或统计,来挖掘数据中的特征。其中一种统计方式非常常用,它就是基于一列或多列类别特征对数据分类,然后对其他特征量进行统计。例如,在电商推荐系统中,统计基于用户ID对商品价格求平均值和总和,在和整体均值做比较,反映了用户过去的购买力;统计基于用户ID和商品类别ID对商品价格求平均值和总和,这能够更加细致的反映出用户的偏好;更进一步还能统计基于用户ID,商品类别ID和品牌ID的其他列的统计量。统计基于用户ID对商品价格求平均值和总和,在和整体均值做比较,是列基准列的统计,统计基于用户ID和商品类别ID对商品价格求平均值和总和,是多列基准列的统计。然而当作为基准的列越多,统计的复杂度就越高,有些数据分析的代码库里面的实现方法,随着基准列的增加,复杂度甚至呈指数级增加。所以基于多列统计的算法效率的优化很重要,尤其是当表数据本身就很大的时候。
[0003]现有的解决方法无非采用工具,例如python,现在python是最常用的数据分析与挖掘工具,而Pandas是python中最出名的开源数据分析与操作工具,以下例子都由Pandas进行说明。使用Pandas做基于单列或者多列的统计,可以通过Groupby单列或者多列特征,在计算统计量得以实现。尽管不同数据分析的工具对这类问题的效率都进行了优化,但是对于多列统计的方法,由于需要多层索引,复杂度与复杂度的优化表现还是差强人意,还是有很多提升的空间。
[0004]因此,针对现有方法的不足所带来的问题,亟需寻找一种行之有效的解决方法。

技术实现思路

[0005]有鉴于此,本专利技术提供了一种多列基准列聚合特征生成方法、系统及可读存储介质,本专利技术基于Pandas,优化基于多列统计算法的处理效果,随着数据量的增加,本专利技术的方法的优势更加明显。
[0006]一方面,本专利技术提供一种多列基准列聚合特征生成方法,所述多列基准列聚合特征生成方法包括:
[0007]S1:对每列基准列进行编码;
[0008]S2:获得对所有基准列进行组合编码的组合基准列;
[0009]S3:基于所述组合基准列获取多列基准列聚合特征。
[0010]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述S1具体包括:
[0011]S11:将每列基准列编码成从零开始的稠密连续特征;
[0012]S12:用数字对稠密连续特征中的连续特征进行类别区分标识。
[0013]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,在所述S11中,
[0014]使用pandas的factorize函数将每列基准列编码成从零开始的稠密连续特征。
[0015]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述S2具体包括:
[0016]S21:在稠密连续特征中任取两个连续特征,分别作为矩阵的行标和列标;
[0017]S22:在基准列数量为大于2个时,执行S23;反之,则继续执行S1:
[0018]S23:使用前两列生成的组合编码与第三列再进行矩阵形式的组合编码,再用得到的组合编码与第四列组合编码,依次类推,最终所有的基准列都加入编码,得到完整的组合编码。
[0019]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述S3具体为:通过S2中组合基准列的结果生成统计特征,由基于多列基准列变为一列由基准列得到的组合编码,并由组合编码获得多列基准列聚合特征。
[0020]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述S21中结果由[a*(b+1)+c]表示,其中a为行标,b为列数,c为列标。
[0021]如上所述的方面和任一可能的实现方式,进一步提供一种多列基准列聚合特征生成系统,所述多列基准列聚合特征生成系统包括:
[0022]编码单元,用于对每基准列进行编码;
[0023]组合基准列生成单元,用于获得对所有基准列进行组合编码的组合基准列;
[0024]统计特征生成单元,用于基于所述组合基准列获取多列基准列聚合特征。
[0025]如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,一种可读存储介质,包括:存储器,所述存储器存储有程序;处理器,所述处理器执行所述程序时实现任一项所述的多列基准列聚合特征生成方法。
[0026]与现有技术相比,本专利技术可以获得包括以下技术效果:
[0027]本专利技术能够有效加速生成多列基准列的聚合特征,同时提高了数据分析和数据挖掘的效率。
[0028]当然,实施本专利技术的任一产品并不一定需要同时达到以上所述的所有技术效果。
【附图说明】
[0029]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0030]图1是本专利技术一个实施例提供的利用矩阵形式组合编码的伪代码图;
[0031]图2是本专利技术一个实施例提供的优化前后进行聚合特征的时间差别图;
[0032]图3是本专利技术一个实施例提供的一种多列基准列聚合特征生成方法流程图。
【具体实施方式】
[0033]为了更好的理解本专利技术的技术方案,下面结合附图对本专利技术实施例进行详细描
述。
[0034]应当明确,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。
[0035]在本专利技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本专利技术。在本专利技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0036]如图3所示,本专利技术提供一种多列基准列聚合特征生成方法,所述多列基准列聚合特征生成方法包括:
[0037]S1:对每列基准列进行编码;
[0038]S2:获得对所有基准列进行组合编码的组合基准列;
[0039]S3:基于所述组合基准列获取多列基准列聚合特征。
[0040]所述S1具体包括:
[0041]S11:将每列基准列编码成从零开始的稠密连续特征;
[0042]S12:用数字对稠密连续特征中的连续特征进行类别区分标识。
[0043]在所述S11中,
[0044]使用pandas的factorize函数将每列基准列编码成从零开始的稠密连续特征。
[0045]所述S本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多列基准列聚合特征生成方法,其特征在于,所述多列基准列聚合特征生成方法包括:S1:对每列基准列进行编码;S2:获得对所有基准列进行组合编码的组合基准列;S3:基于所述组合基准列获取多列基准列聚合特征。2.根据权利要求1所述的多列基准列聚合特征生成方法,其特征在于,所述S1具体包括:S11:将每列基准列编码成从零开始的稠密连续特征;S12:用数字对稠密连续特征中的连续特征进行类别区分标识。3.根据权利要求2所述的多列基准列聚合特征生成方法,其特征在于,在所述S11中,使用pandas的factorize函数将每列基准列编码成从零开始的稠密连续特征。4.根据权利要求2所述的多列基准列聚合特征生成方法,其特征在于,所述S2具体包括:S21:在稠密连续特征中任取两个连续特征,分别作为矩阵的行标和列标;S22:在基准列数量为大于2个时,执行S23;反之,则继续执行S1:S23:使用前两列生成的组合编码与第三列再进行矩阵形式的组合编码,再用得...

【专利技术属性】
技术研发人员:陈海波罗志鹏
申请(专利权)人:深延科技北京有限公司
类型:发明
国别省市:

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

1