一种用户分类方法、装置、电子设备及存储介质与流程

文档序号:30428526发布日期:2022-06-15 16:03阅读:81来源:国知局
一种用户分类方法、装置、电子设备及存储介质与流程

1.本发明涉及分析领域,具体涉及一种用户分类方法、装置、电子设备及存储介质。


背景技术:

2.在对用户进行精准营销的过程中,首先需要对用户进行分类。在用户行为埋点的过程中,一般会获取十几个甚至上百个维度的用户数据。在这些数据中,有很多数据是相互影响的,具有多重共线性。然而在实际过程中,我们通常无法区分哪些数据之间会相互影响,哪些数据对用户分类无用;我们在用户分类的过程中,数据维度过大会提高模型的复杂度,特别对于一些样本数据不足的情况,在对用户聚类时,训练的模型会泛化性差,且会显著的延长模型的训练时间。


技术实现要素:

3.为解决现有数据维度过多所造成的用户分类时间过长的技术问题,本发明提供了一种用户分类方法,包括以下步骤:
4.对所采集的用户的行为数据进行抽样得到抽样数据;
5.基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵;
6.基于所述特征向量矩阵和所述行为数据来确定主成分数据;
7.基于所述主成分数据来对所述用户进行分类。
8.在一些实施例中,所述基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵,包括:
9.基于所述抽样数据的平均值来确定去均值矩阵;
10.基于所述去均值矩阵之间的协方差来确定协方差矩阵;
11.确定所述协方差矩阵的特征值和特征向量;
12.基于所述特征值和所述特征向量来确定所述主成分参数所对应的特征向量矩阵。
13.在一些实施例中,所述基于所述特征值和所述特征向量来确定所述主成分参数所对应的特征向量矩阵,包括:
14.将所述特征值按照从大到小的第一顺序排序;
15.分别确定每个所述特征值的数据贡献率;
16.按照所述第一顺序逐个累计每个所述特征值的数据贡献率得到累计数据贡献率;
17.在所述累计数据贡献率达到第一阈值的情况下,确定此时所述累计数据贡献率中每个数据贡献率所对应的特征值为主成分参数,所述主成分参数所对应的特征向量即为所述主成分参数所对应的特征向量矩阵。
18.在一些实施例中,所述分别确定每个所述特征值的数据贡献率,包括:
19.基于以下表达式来分别确定所述每个特征值的数据贡献率:
[0020][0021]
其中,σi表示第i个特征值的标准差,表示第一个特征值到第k个特征值得方差之和,表示第一个特征值到第n个特征值得方差之和,n表示与原始维度数量相等的特征值数量。
[0022]
在一些实施例中,所述基于所述特征向量矩阵和所述行为数据来确定主成分数据,包括:
[0023]
将所述行为数据所组成的原始数据矩阵与所述特征向量矩阵相乘的结果确定为所述主成分数据。
[0024]
在一些实施例中,所述基于所述主成分数据来对所述用户进行分类,包括:
[0025]
获取每个用户组所对应的最终中心点;
[0026]
确定所述主成分数据中各个主成分数据与所述每个用户组所对应的最终中心点之间的距离;
[0027]
将距离最小的最终中心点所对应的用户组确定为所述用户的分类。
[0028]
在一些实施例中,所述方法还包括:
[0029]
获取所述用户组与所述用户组所对应的第一中心点;
[0030]
基于样本主成分数据与所述用户组所对应的第一中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第一划分结果;
[0031]
基于所述第一划分结果来确定所述每个用户组所对应的第二中心点;
[0032]
基于所述样本主成分数据与所述每个用户组所对应的第二中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第二划分结果;
[0033]
基于所述第二划分结果来确定所述每个用户组所对应的第n中心点;
[0034]
基于所述每个用户组所对应的第n中心点来确定所述每个用户组所对应的最终中心点。
[0035]
在一些实施例中,所述基于所述每个用户组所对应的第n中心点来确定所述每个用户组所对应的最终中心点,包括:
[0036]
在确定所述每个用户组所对应的第n中心点与所述每个用户组所对应的第n-1中心点之间没有变化的情况下,将所述每个用户组所对应的第n中心点确定为所述每个用户组所对应的最终中心点。
[0037]
在一些实施例中,所述方法还包括:
[0038]
获取所述用户组与所述用户组所对应的第一初始中心点;
[0039]
基于样本主成分数据与所述用户组所对应的第一初始中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第三划分结果;
[0040]
基于所述第三划分结果来确定所述每个用户组中各数据的方差,所述方差记为所述第一初始中心点所对应的方差信息;
[0041]
获取所述用户组与所述用户组所对应的第n初始中心点;
[0042]
确定所述第n初始中心点所对应的第n方差信息,此时存在n个方差信息;
[0043]
将所述n个方差信息中最小的方差信息所对应的初始中心点确定为最终中心点。
[0044]
本发明还提供了一种用户分类装置,包括:
[0045]
抽样模块,用于对所采集的用户的行为数据进行抽样得到抽样数据;
[0046]
第一确定模块,用于基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵;
[0047]
第二确定模块,用于基于所述特征向量矩阵和所述行为数据来确定主成分数据;
[0048]
分类模块,用于基于所述主成分数据来对所述用户进行分类。
[0049]
本发明还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,该计算机程序被所述处理器执行时,执行如上所述的用户分类方法。
[0050]
本发明还提供了一种存储介质,该存储介质存储的计算机程序能够被一个或多个处理器执行,能够用来实现如上所述的用户分类方法。
[0051]
与现有技术相比,上述方案中的一个或多个实施例可以具有如下优点或有益效果:
[0052]
本技术通过采用主成分分析方法,降低了训练用户分类模型的时间,实现了对用户进行分类的目的。
附图说明
[0053]
通过结合附图阅读下文示例性实施例的详细描述可更好地理解本公开的范围。其中所包括的附图是:
[0054]
图1示出了本发明实施例提供的一种用户分类方法的实现流程示意图;
[0055]
图2示出了本发明实施例提供的一种用户分类方法的实现流程示意图;
[0056]
图3示出了本发明实施例提供的一种显示装置的结构示意图;
[0057]
图4示出了本发明实施例提供的电子设备的组成结构示意图。
具体实施方式
[0058]
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0059]
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
[0060]
如果申请文件中出现“第一/第二/第三”的类似描述则增加以下的说明,在以下的描述中,所涉及的术语“第一/第二/第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一/第二/第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
[0061]
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
[0062]
目前的用户分类技术,对于数据降维有两种方式,一种是根据经验选择维度,一种是基于维度选择算法剔除影响较小的维度。这两种方案都会删除一些维度,删除维度的会造成丢失部分的信息,导致最终的结果不够精确。
[0063]
基于相关技术中存在的问题,本发明实施例提供了一种用户分类方法,所述方法应用于电子设备,所述电子设备可以是计算机、移动终端等,本发明实施例提供的用户分类方法所实现的功能可以通过电子设备的处理器调用程序代码来实现,其中,程序代码可以保存在计算机存储介质中。
[0064]
本发明实施例提供了一种用户分类方法,图1为本发明实施例提供的一种用户分类方法的实现流程示意图,如图1所示,包括如下步骤。
[0065]
步骤s10:对所采集的用户的行为数据进行抽样得到抽样数据。
[0066]
具体地,可以通过在app或者终端设备中进行埋点来采集用户行为数据。
[0067]
需要注意的是,本实施例中的数据一般为连续型数值数据,即为一个区间,不能一一列出其中的每个数据。
[0068]
步骤s20:基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵。
[0069]
步骤s30:基于所述特征向量矩阵和所述行为数据来确定主成分数据。
[0070]
步骤s40:基于所述主成分数据来对所述用户进行分类。
[0071]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,降低了训练用户分类模型的时间,实现了对用户进行分类的目的。
[0072]
在一些实施例中,所述基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵,包括:
[0073]
基于所述抽样数据的平均值来确定去均值矩阵;
[0074]
基于所述去均值矩阵之间的协方差来确定协方差矩阵;
[0075]
确定所述协方差矩阵的特征值和特征向量;
[0076]
基于所述特征值和所述特征向量来确定所述主成分参数所对应的特征向量矩阵。
[0077]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,对数据进行降维,从而降低了用户分类的模型训练的时间,消除了数据间的相互影响,解决了多重共线性问题,实现了对用户进行分类的目的。
[0078]
在一些实施例中,所述基于所述特征值和所述特征向量来确定所述主成分参数所对应的特征向量矩阵,包括:
[0079]
将所述特征值按照从大到小的第一顺序排序;
[0080]
分别确定每个所述特征值的数据贡献率;
[0081]
按照所述第一顺序逐个累计每个所述特征值的数据贡献率得到累计数据贡献率;
[0082]
在所述累计数据贡献率达到第一阈值的情况下,确定此时所述累计数据贡献率中每个数据贡献率所对应的特征值为主成分参数,所述主成分参数所对应的特征向量即为所述主成分参数所对应的特征向量矩阵。
[0083]
需要注意的是,此阈值可以根据业务自行设定,范围在0到1之间即可。一般来讲,阈值通常要求大于85%,如果需要更高的准确度,阈值也可以调整到99.97%或者更高。阈值越高,模型准确度越精确,但模型也更加复杂。
[0084]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,对数据进行降维,从而降低了用户分类的模型训练的时间,消除了数据间的相互影响,解决了多重共线性问题,实现了对用户进行分类的目的。
[0085]
在一些实施例中,所述分别确定每个所述特征值的数据贡献率,包括:
[0086]
基于以下表达式来分别确定所述每个特征值的数据贡献率:
[0087][0088]
其中,σi表示第i个特征值的标准差,表示第一个特征值到第k个特征值得方差之和,表示第一个特征值到第n个特征值得方差之和,n表示与原始维度数量相等的特征值数量。
[0089]
基于此,本实施例所提供的用户分类方法,实现了对用户进行分类的目的。
[0090]
在一些实施例中,所述基于所述特征向量矩阵和所述行为数据来确定主成分数据,包括:
[0091]
将所述行为数据所组成的原始数据矩阵与所述特征向量矩阵相乘的结果确定为所述主成分数据。
[0092]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,实现了对用户进行分类的目的。
[0093]
在一些实施例中,所述基于所述主成分数据来对所述用户进行分类,包括:
[0094]
获取每个用户组所对应的最终中心点;
[0095]
确定所述主成分数据中各个主成分数据与所述每个用户组所对应的最终中心点之间的距离;
[0096]
将距离最小的最终中心点所对应的用户组确定为所述用户的分类。
[0097]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,实现了对用户进行分类的目的。
[0098]
在一些实施例中,所述方法还包括:
[0099]
获取所述用户组与所述用户组所对应的第一中心点;
[0100]
基于样本主成分数据与所述用户组所对应的第一中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第一划分结果;
[0101]
基于所述第一划分结果来确定所述每个用户组所对应的第二中心点;
[0102]
基于所述样本主成分数据与所述每个用户组所对应的第二中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第二划分结果;
[0103]
基于所述第二划分结果来确定所述每个用户组所对应的第n中心点;
[0104]
基于所述每个用户组所对应的第n中心点来确定所述每个用户组所对应的最终中心点。
[0105]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,对数据进行降维后进行用户的聚类,降低了用户分类的模型训练的时间,消除了数据间的相互影响,解决了多重共线性问题,实现了对用户进行分类的目的。
[0106]
在一些实施例中,所述基于所述每个用户组所对应的第n中心点来确定所述每个用户组所对应的最终中心点,包括:
[0107]
在确定所述每个用户组所对应的第n中心点与所述每个用户组所对应的第n-1中心点之间没有变化的情况下,将所述每个用户组所对应的第n中心点确定为所述每个用户组所对应的最终中心点。
[0108]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,对数据进行降维后进行用户的聚类,降低了用户分类的模型训练的时间,消除了数据间的相互影响,解决了多重共线性问题,实现了对用户进行分类的目的。
[0109]
在一些实施例中,所述方法还包括:
[0110]
获取所述用户组与所述用户组所对应的第一初始中心点;
[0111]
基于样本主成分数据与所述用户组所对应的第一初始中心点之间的距离分别将所述样本主成分数据中的每个样本主成分数据划分到相应的用户组,得到第三划分结果;
[0112]
基于所述第三划分结果来确定所述每个用户组中各数据的方差,所述方差记为所述第一初始中心点所对应的方差信息;
[0113]
获取所述用户组与所述用户组所对应的第n初始中心点;
[0114]
确定所述第n初始中心点所对应的第n方差信息,此时存在n个方差信息;
[0115]
将所述n个方差信息中最小的方差信息所对应的初始中心点确定为最终中心点。
[0116]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,对数据进行降维后进行用户的聚类,降低了用户分类的模型训练的时间,消除了数据间的相互影响,解决了多重共线性问题,实现了对用户进行分类的目的。
[0117]
下面以一个具体流程作为示例进行说明。如图2所示,本流程包括以下步骤。
[0118]
1、数据采集:在app或者终端设备中进行埋点,采集用户行为数据。
[0119]
2、抽样:对用户行为数据进行抽样。
[0120]
3、主成分分析:对抽样数据进行主成分分析。
[0121]
其中,步骤3包括以下步骤。
[0122]
3.1、对抽样数据中的每一项数据进行去平均值处理,即用每个数据减去各自的平均值,生成去均值后的数据矩阵。
[0123]
需要注意的是,本实施例中的数据一般为连续型数值数据,即为一个区间,不能一一列出其中的每个数据。
[0124]
3.2、计算数据矩阵的协方差,得到协方差矩阵。
[0125]
3.3、计算协方差矩阵的特征值与特征向量。
[0126]
3.4、对特征值从大到小进行排序。
[0127]
3.5、使用以下公式依次对排序后的特征值计算前k项特征值对整体数据的贡献率:
[0128][0129]
其中,σi表示第i个特征值的标准差,表示第一个特征值到第k个特征值得方差之和,表示第一个特征值到第n个特征值得方差之和,n为特征值数量,与原始
维度数量相等。
[0130]
当累计贡献率达到阈值时,停止计算,前k项即为用户行为的主成分参数。
[0131]
需要注意的是,此阈值可以根据业务自行设定,范围在0到1之间即可。一般来讲,阈值通常要求大于85%,如果需要更高的准确度,阈值也可以调整到99.97%或者更高。阈值越高,模型准确度越精确,但模型也更加复杂。
[0132][0133]
3.6、保留前k个特征值对应的特征向量矩阵。
[0134]
4、将用户原始数据矩阵与特征向量矩阵相乘,将原始数据转换为主成分数据。
[0135]
5、对用户基于主成分进行聚类。
[0136]
其中,步骤5包括以下步骤。
[0137]
5.1、确定需要将用户分为多少类,并指定初始的各类的中心点。
[0138]
5.2、计算每个数据点到中心点的距离,数据点距离哪个中心点最近就划分到哪一类中。
[0139]
5.3、计算每一类中中心点作为新的中心点。
[0140]
5.4、重复以上步骤,直到每一类中心在每次迭代后变化不大为止。也可以多次随机初始化中心点,然后选择运行结果最好的一个。
[0141]
需要说明的是,在迭代次数足够的情况下,变化不大是指没有变化;运行效果最好的结果则表现为每个类里面的所有数据的方差最小。初始中心点的确定可以凭借经验随意指定,也可以将数据生成散点图,按照散点图的分布情况指定。
[0142]
5.5、最终的中心点即为每个分类的中心点。
[0143]
6、每收到一个用户的行为数据,可将数据与特征向量矩阵相乘,将原始数据转换为主成分数据后,再通过步骤5的方法将用户划分到距离最近的中心点的分类。
[0144]
基于此,本实施例采用主成分分析,不会删除维度,而是将各个维度的数据进行拆解重新组合,不会丢失信息,因此所得结果的精确度会有所提升。
[0145]
本发明还提供了一种用户分类装置。图3为本发明实施例提供的一种用户分类装置的结构示意图。如图3所示,用户分类装置300包括以下模块。
[0146]
抽样模块301,用于对所采集的用户的行为数据进行抽样得到抽样数据。
[0147]
具体地,可以通过在app或者终端设备中进行埋点来采集用户行为数据。
[0148]
需要注意的是,本实施例中的数据一般为连续型数值数据,即为一个区间,不能一一列出其中的每个数据。
[0149]
第一确定模块302,用于基于所述抽样数据进行主成分分析以确定主成分参数所对应的特征向量矩阵。
[0150]
第二确定模块303,用于基于所述特征向量矩阵和所述行为数据来确定主成分数据。
[0151]
分类模块304,用于基于所述主成分数据来对所述用户进行分类。
[0152]
基于此,本实施例所提供的用户分类方法,通过采用主成分分析方法,降低了训练用户分类模型的时间,实现了对用户进行分类的目的。
[0153]
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述的用户分了方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read only memory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
[0154]
本发明实施例还提供了一种电子设备。图4为本发明实施例提供的电子设备的组成结构示意图。如图4所示,所述电子设备400包括:一个处理器401、至少一个通信总线402、用户接口403、至少一个外部通信接口404、存储器405。
[0155]
其中,通信总线402可以配置为实现这些组件之间的连接通信。
[0156]
其中,用户接口403可以包括显示屏,外部通信接口404可以包括标准的有线接口和无线接口。所述处理器401配置为执行存储器中存储的用户分类方法的程序,以实现以上述实施例提供的用户分类方法中的步骤。
[0157]
本发明实施例还提供了一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现上述实施例中提供的用户分类方法中的步骤。
[0158]
以上电子设备和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明计算机设备和存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
[0159]
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明存储介质和设备实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
[0160]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0161]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0162]
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部
分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0163]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0164]
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0165]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read only memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0166]
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台控制器执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。
[0167]
以上所述,仅为本发明的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1