一种用户客群分类方法和装置转让专利

申请号 : CN201710293870.6

文献号 : CN108304427B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈玲户保田

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明实施例公开了一种用户客群分类方法和装置;本发明实施例可以采集多个用户的用户数据,按照预设策略从这些用户数据中选择数据样本,然后,对这些数据样本进行聚类运算,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,再基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。

权利要求 :

1.一种用户客群分类方法,其特征在于,包括:

采集多个用户的用户数据,所述用户数据包括多种用户行为类别的数据,所述用户行为类别根据用户行为特性来进行划分;

将采集到的用户数据进行去除奇异点、补齐缺失值和/或去掉重复采集的数据的操作,得到数据样本集;

根据数据样本的用户行为类别对所述数据样本集中的数据样本进行聚类运算,得到多个聚类;

采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测;

根据预测结果计算相应数据样本的最大信息量,所述最大信息量指的是数据样本所能够提供的信息的最大含量;

根据最大信息量分别计算每个聚类中的数据样本的相似度;

根据所述相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集;

基于所述待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。

2.根据权利要求1所述的方法,其特征在于,所述根据最大信息量分别计算每个聚类中的数据样本的相似度,包括:根据最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集,其中,K为正整数;

计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度。

3.根据权利要求1所述的方法,其特征在于,所述采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测之前,还包括:从每个聚类中随机选择预定数量的数据样本进行人工标注;

根据人工标注后的数据样本对预设的原始模型进行训练,得到初始分类模型;

所述采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测,包括:采用得到的初始分类模型,对每个聚类中的其他未进行人工标注的数据样本的客群分类进行预测。

4.根据权利要求1所述的方法,其特征在于,所述根据所述相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集的步骤包括:获取相似度大于预设阈值的数据样本,得到候选集;

从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集。

5.根据权利要求4所述的方法,其特征在于,所述从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集,包括:统计所述候选集中每个数据样本所具有的高度相似度的数量,得到高度相似计数,所述高度相似度为大于预设阈值的相似度;

从所述候选集中剔除高度相似计数最高的前N个数据样本,得到待训练样本集,其中,N为正整数。

6.根据权利要求1至5任一项所述的方法,其特征在于,所述基于所述待训练样本集进行分类模型训练,包括:获取预设的初始分类模型;

对所述待训练样本集中的数据样本进行标注;

根据标注后的数据样本对所述初始分类模型进行训练,得到训练后分类模型。

7.根据权利要求1至5任一项所述的方法,其特征在于,所述根据训练后分类模型对待分类数据进行客群分类,包括:获取待分类数据;

将所述待分类数据导入训练后分类模型中,得到输出结果;

根据所述输出结果确定所述待分类数据的客群分类。

8.一种数据分类装置,其特征在于,包括采集单元、选择单元、聚类单元、去冗余单元和分类单元,所述去冗余单元包括计算子单元和筛选子单元;

采集单元,用于采集多个用户的用户数据,所述用户数据包括多种用户行为类别的数据,所述用户行为类别根据用户行为特性来进行划分;

选择单元,用于将采集到的用户数据进行去除奇异点、补齐缺失值和/或去掉重复采集的数据的操作,得到数据样本集;

聚类单元,用于根据数据样本的用户行为类别对所述数据样本集中的数据样本进行聚类运算,得到多个聚类;

计算子单元,用于采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测,根据预测结果计算相应数据样本的最大信息量,根据最大信息量分别计算每个聚类中的数据样本的相似度,所述最大信息量指的是数据样本所能够提供的信息的最大含量;

筛选子单元,用于根据所述相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集;

分类单元,用于基于所述待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。

9.根据权利要求8所述的装置,其特征在于,

所述计算子单元,具体用于采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测,根据预测结果计算相应数据样本的最大信息量,根据最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集,其中,K为正整数;计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度。

10.根据权利要求8所述的装置,其特征在于,

所述筛选子单元,具体用于获取相似度大于预设阈值的数据样本,得到候选集,从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集。

11.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的用户客群分类方法中的步骤。

说明书 :

一种用户客群分类方法和装置

技术领域

[0001] 本发明涉及通信技术领域,具体涉及一种用户客群分类方法和装置。

背景技术

[0002] 在许多数据分类应用中,如文本分类、图像分类、以及特殊客群的挖掘等,都需要大量的标注样本来进行分类模型训练,而标注样本通常难以自动获取,一般都需要人工进行标注。
[0003] 为了标注尽可能少的样本,现有通常采用随机选择样本的方式来进行标注,但这种方式可能会使样本分布与预期样本分布不一致,导致分类模型过拟合或者准确率不高,因此,现有技术又提出了“主动学习算法”方案。该主动学习算法,可以通过有选择性的从大量未标注的样本中选择最有价值的样本进行人工标注,从而达到在有效控制样本集大小的基础上,提高准确率的目的。其中,主动学习的过程主要分为两部分:学习器和选择器。学习器即分类算法模型(简称分类模型),负责对已标注的样本进行学习预测,而选择器则用于有针对性地选择未标注样本进行人工标注,然后再放到已标注样本集中供学习器学习。目前选择器算法有最大化信息量算法,最小化解释空间算法等。这些算法每次迭代都需要对所有未标注样本计算信息熵或者置信度,并进行排序,然后基于排序记过选择值较大的样本进行人工标注。

发明内容

[0004] 在对现有技术的研究和实践过程中,本发明的发明人发现,由于在现有方案中,一般都会将信息熵或者置信度较大的样本挑选出来进行标注,但是,这些样本之间的相似性也可能较大,因此,往往会出现样本过于集中的情况,不利于分类模型的收敛,大大影响分类模型的准确率和泛化能力,导致数据分类的效率较低。
[0005] 本发明实施例提供一种用户客群分类方法和装置,不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。
[0006] 本发明实施例提供一种用户客群分类方法,包括:
[0007] 采集多个用户的用户数据,所述用户数据包括多种用户行为类别的数据;
[0008] 按照预设策略从所述多个用户的用户数据中选择数据样本,得到数据样本集;
[0009] 对所述数据样本集中的数据样本进行聚类运算,得到多个聚类;
[0010] 分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集;
[0011] 基于所述待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。
[0012] 相应的,本发明实施例还提供一种数据分类装置,包括:
[0013] 采集单元,用于采集多个用户的用户数据,所述用户数据包括多种用户行为类别的数据;
[0014] 选择单元,用于按照预设策略从所述多个用户的用户数据中选择数据样本,得到数据样本集;
[0015] 聚类单元,用于对所述数据样本集中的数据样本进行聚类运算,得到多个聚类;
[0016] 去冗余单元,用于分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集;
[0017] 分类单元,用于基于所述待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。
[0018] 本发明实施例在从采集到的用户数据中选择数据样本后,可以对这些数据样本进行聚类运算,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,然后,才基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;由于该方案在进行分类模型训练之前,先进行了聚类,然后,再分别从每个聚类中选择样本进行训练,所以,可以保证每个聚类中都有样本被选中进入到分类模型的训练样本中,最大程度上使分类模型能从每个聚类中去学习,覆盖样本预期分布,大大提高分类模型的准确率和泛化能力;此外,由于该方案可以对每个聚类中的数据样本进行去冗余操作,以剔除相似度高的冗余样本,使得可以尽可能减少标注相似的样本,因此,可以大大加快分类模型的收敛;总而言之,该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。

附图说明

[0019] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020] 图1a是本发明实施例提供的用户客群分类方法的场景示意图;
[0021] 图1b是本发明实施例提供的用户客群分类方法的流程图;
[0022] 图2a是本发明实施例提供的用户客群分类方法的框架示例图;
[0023] 图2b是本发明实施例提供的用户客群分类方法的另一流程图;
[0024] 图3a是本发明实施例提供的用户客群分类装置的结构示意图;
[0025] 图3b是本发明实施例提供的用户客群分类装置的另一结构示意图;
[0026] 图4是本发明实施例提供的服务器的结构示意图。

具体实施方式

[0027] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028] 本发明实施例提供一种用户客群分类方法和装置。
[0029] 其中,该数据分类装置具体可以集成在服务器,如业务服务器等设备中。例如,以集成在服务器中为例,参见图1a,该服务器可以采集多个用户的用户数据,按照预设策略从该用户数据中选择数据样本,得到数据样本集,然后,对该数据样本集中的数据样本进行聚类运算,得到多个聚类,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,比如,以多个聚类分别为A类、B类、……N类等为例,则此时,可以分别对A类、B类、……N类等聚类中的数据样本进行去冗余操作,得到去冗余后的多个聚类,如A”类、B”类、……N”类等,其中,为了描述方便,在本发明实施例中,将这去冗余后的多个聚类统称为待训练样本集;此后,服务器便可以基于该待训练样本集进行分类模型训练,比如,可以对该待训练样本集中的数据样本进行标注,然后,根据标注后的数据样本对初始分类模型进行训练,并根据训练后分类模型对待分类数据进行客群分类。
[0030] 以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
[0031] 实施例一、
[0032] 本实施例将从数据分类装置的角度进行描述,该数据分类装置具体可以集成在服务器,比如业务服务器等设备中。
[0033] 一种用户客群分类方法,包括:采集多个用户的用户数据,按照预设策略从该多个用户的用户数据中选择数据样本,得到数据样本集,对该数据样本集中的数据样本进行聚类运算,得到多个聚类,分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。
[0034] 如图1b所示,该用户客群分类方法的具体流程可以如下:
[0035] 101、采集多个用户的用户数据。
[0036] 例如,具体可以从网络中采集各种类型用户的用户数据,或者,也可以由其他的采集设备对各种类型用户的用户数据进行采集,然后在需要使用该用户数据时,数据分类装置从该采集设备中进行获取,等等。
[0037] 其中,该用户数据可以包括多种用户行为类别的数据,其中,用户行为类别可以根据用户行为特性来进行划分,比如,与社交相关的数据可以划分为社交信息,与支付相关的数据可以划分为支付行为数据,与娱乐休闲相关的数据可以划分为娱乐休闲行为数据,等等;即该用户数据可以包括用户的帐号信息、社交信息、支付行为数据、娱乐休闲行为数据、教育行为数据、和/或其他网络行为数据,等等,例如,可以如下:
[0038] 1)用户的帐号信息,比如性别、区域、年龄、和/或通用设置等。
[0039] 2)用户的社交信息,比如聊天、电子邮件、语音通话、微博空间发表的信息、社区评论、和/或公众号文章阅读等。
[0040] 3)用户的支付行为数据,比如网上购物、游戏点卡支付、和/或音乐流量包等。
[0041] 4)娱乐休闲行为数据:如视频点播、音乐播放、K歌、和/或新闻阅读等。
[0042] 4)教育行为数据:如线上读书、公开课学习、职业考试练习、技能培训、和/或翻译软件使用等.
[0043] 5)其网络行为数据:如终端应用(App,Application)下载、和/或搜索等。
[0044] 102、按照预设策略从该多个用户的用户数据中选择数据样本,得到数据样本集。
[0045] 其中,该预设策略可以根据实际应用的需求进行设置,例如,可以设置为“对用户数据进行清洗”。即步骤“按照预设策略从该用户数据中选择数据样本,得到数据样本集”具体可以包括:
[0046] 将采集到的用户数据进行清洗,得到数据样本集。即此时可以将采集到的用户数据进行清洗,然后,将清洗后的用户数据作为数据样本,添加至数据样本集中。
[0047] 其中,清洗的方式可以多种,比如“去除奇异点”、“补齐缺失值”、和/或“去掉重复采集的数据”,等等;例如,可以如下:
[0048] (1)去除奇异点;
[0049] 将该用户数据中的奇异点剔除,并将剩余的用户数据作为数据样本,添加至数据样本集中。
[0050] 其中,该奇异点指的是“由于数据采集过程中的错误或者其他行为造成的数据可能性取值外的数据”。
[0051] (2)补齐缺失值;
[0052] 根据该用户数据确定本应采集但没有采集到数据,对没有采集到的数据赋予预设值(即赋默认值),然后,将采集到的用户数据和该赋值后的数据作为数据样本,添加至数据样本集中。
[0053] (3)去掉重复采集的数据;
[0054] 将该用户数据中重复采集的数据进行剔除,并将剩余的用户数据作为数据样本,添加至数据样本集中。
[0055] 在将用户数据进行清洗后,便可以将清洗后的数据,即数据样本集中的数据样本进行归类,并写入预设数据库中,以供后续步骤使用。
[0056] 103、对该数据样本集中的数据样本进行聚类运算,得到多个聚类;例如,具体可以如下:
[0057] 获取数据样本的用户行为类别,根据该用户行为类别对该数据样本集中的数据样本进行聚类运算,得到多个聚类。
[0058] 其中,聚类算法也可以根据实际应用的需求而定,比如,可以采用邻近算法(kNN,k-NearestNeighbor)、或k-means算法(一种硬聚类算法)等。
[0059] 比如,以用户行为类别包括社交信息和娱乐休闲信息为例,则经过聚类运算后,可以将属于社交信息的数据样本组成一个聚类,以及将属于娱乐休闲信息的数据样本组成一个聚类,以此类推,等等。
[0060] 104、分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集。
[0061] 例如,具体可以分别计算每个聚类中的数据样本的相似度,根据该相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集,具体可以如下:
[0062] (1)分别计算每个聚类中的数据样本的相似度,比如,具体可以包括步骤S1、S2和S3,如下:
[0063] S1、利用最大化信息量算法分别计算每个聚类中的数据样本的最大信息量。
[0064] 其中,最大信息量,指的是所能够提供的信息的最大含量,即同一数据样本的最大信息量和信息量的和为1,比如,若数据样本的最大信息量为0.8,则其信息量为0.2,以此类推,等等。其中,信息量指的是从M个相等可能事件中选出一个事件所需要的信息度量或含量,也就是在辩识M个事件中特定的一个事件的过程中所需要提问“是或否”的最少次数。一个事件的可能性愈小(及出现的概率小),不确定性越多,其所需获取的信息越多,即信息量愈大;而事件的可能性愈大(即出现的概率大),不确定性越少,则其所需获取的信息愈少,即信息量越小,可见,该信息量的多少是与事件发生的概率大小有关,而最大信息量的多少同样与事件发生的概率大小有关,所以,可以通过计算事件发生的概率来计算该最大信息量,进而确定不确定性的大小。其中,最大信息量越小(即信息量越大),不确定性越大,最大信息量越大(即信息量越小),不确定性越小。比如,在本发明实施例中,事件发生的概率主要指的是“分类模型预测数据样本为某一类”的概率值,因此,在本发明实施例中,可以通过计算该概率值来得到该最大信息量。即,可选的,步骤“利用最大化信息量算法分别计算每个聚类中的数据样本的最大信息量”可以包括:
[0065] 采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测,根据预测结果计算相应数据样本的最大信息量,比如,可以直接根据预测结果(如该用户属于某一分类的概率)计算相应数据样本的最大信息量,或者,也可以计算预测结果的置信度,然后,根据该置信度来计算相应数据样本的最大信息量,等等。
[0066] 其中,该初始分类模型可以由维护人员进行预设,也可以由该数据分类装置通过训练来得到,比如,可以从每个聚类中随机选择一定数量的数据样本进行人工标注,构成初始训练样本(这些初始训练样本构成初始训练样本集),然后,利用这些初始训练样本对预设的原始模型进行训练,得到初始分类模型;即,可选的,在步骤“采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测”之前,该用户客群分类方法还可以包括:
[0067] 从每个聚类中随机选择预定数量的数据样本进行人工标注,根据人工标注后的数据样本对预设的原始模型进行训练,得到初始分类模型。
[0068] 则此时,步骤“采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测”可以包括:采用得到的初始分类模型,对每个聚类中的其他未进行人工标注的数据样本的客群分类进行预测。
[0069] 其中,训练时所采用的原始模型可以根据实际应用的需求进行设置,而该预定数量也可以根据实际应用的需求进行设置,比如,以需要选择1000个初始训练样本为例,若总共有5个聚类,则每个聚类可以随机挑选200个数据样本作为相应聚类的初始训练样本,以此类推,等等。
[0070] 例如,以二元分类(即存在两种分类:分类1和分类2)为例,则其相应的最大信息量计算公式可以如下:
[0071]
[0072] 其中L为初始训练样本集(即人工标注后的数据样本),C为一个或一组分类模型(也称为分类器),Pr[x=1|L]为在初始训练样本集L上训练出来的分类模型C对数据样本预测为“分类1”的概率值, 为使得 取得最小值的数据样本,U为未标注样本集(即该聚类中未标注的数据样本)。
[0073] 从公式 可以看出,概率值越接近 的样本越容易被选中,因为越接近 表示分类模型对数据样本属于哪一类的预测越不能确定。例如聚类后某一聚类A中包括数据样本x1、x2和x3,用分类模型C算出属于分类1的概率分别为
0.49、0.1和0.8,则通过公式 算出的最大信息量分别
为0.01、0.4和0.3,即x1的不确定性最大,x3的不确定性次之,x2的不确定性最小,按照最不确定性原则,三个样本入选待标注样本集的优先级是:x1,x3,x2。依此类推,在此不再赘述。
[0074] S2、根据最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集。
[0075] 其中,K为正整数,具体取值可以根据实际应用的需求进行设置,比如,以K为2为例,若在步骤S1中,三个样本入选待标注样本集的优先级是:x1,x3,x2,则此时,可以将x1和x3添加至待标注样本集中。
[0076] S3、计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度。
[0077] 例如,若该待标注样本集中包括数据样本x1、x3、x5和x6,则此时,需要计算x1和x3的相似度、x1和x5的相似度、x1和x6的相似度、x3和x5的相似度、x3和x6的相似度、以及x5和x6的相似度,等等。
[0078] 需说明的是,相似度的计算可以先将数据样本的用户信息进行量化,转换为向量空间,然后,用标准化欧氏距离、夹角余弦、以及相关系数等计算出相似度。
[0079] 此外,还需说明的,在计算出相似度之后,可以根据得到的相似度设置一个阈值,高于该阈值的则认为两个数据样本高度相似,为了描述方便,在发明实施例中,将该大于该预设阈值的相似度称为高度相似度。其中,该阈值可以根据实际应用的需求进行设置,在此不再赘述。
[0080] (2)根据该相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集。
[0081] 例如,具体可以获取相似度大于预设阈值的数据样本,得到候选集,从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集。
[0082] 其中,该预设条件可以根据实际应用的需求而定,比如,可以通过统计高度相似计数,并将高度相似计数较多的样本进行剔除,等等。即可选的,步骤“从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集”可以包括:
[0083] 统计该候选集中每个数据样本所具有的高度相似度(大于预设阈值的相似度)的数量,得到高度相似计数,从该候选集中剔除高度相似计数最高的前N个数据样本,得到待训练样本集。
[0084] 其中,N为正整数,N的取值可以根据实际应用的需求而定。
[0085] 105、基于该待训练样本集进行分类模型训练。
[0086] 例如,具体可以获取预设的初始分类模型,对该待训练样本集中的数据样本进行标注,然后,根据标注后的数据样本对该初始分类模型进行训练,得到训练后分类模型。
[0087] 106、根据训练后分类模型对待分类数据进行客群分类。
[0088] 例如,可以获取待分类数据,将该待分类数据导入训练后分类模型中,得到输出结果,根据该输出结果确定该待分类数据的客群分类。
[0089] 其中,客群指的是客户群体,比如可以划分为“学生”、“白领”和“金领”等,又比如,还可以划分为“儿童”、“青年”、“中年”和“老年”,等等,客群的具体划分需求可以根据实际应用的需求而定,在此不再赘述。
[0090] 由上可知,本实施例在从采集到的用户数据中选择数据样本后,可以对这些数据样本进行聚类运算,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,然后,才基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;由于该方案在进行分类模型训练之前,先进行了聚类,然后,再分别从每个聚类中选择样本进行训练,所以,可以保证每个聚类中都有样本被选中进入到分类模型的训练样本中,最大程度上使分类模型能从每个聚类中去学习,覆盖样本预期分布,大大提高分类模型的准确率和泛化能力;此外,由于该方案可以对每个聚类中的数据样本进行去冗余操作,以剔除相似度高的冗余样本,使得可以尽可能减少标注相似的样本,因此,可以大大加快分类模型的收敛;总而言之,该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。
[0091] 实施例二、
[0092] 根据实施例一所描述的方法,以下将举例作进一步详细说明。
[0093] 在本实施例中,将以该数据分类装置具体集成在服务器中为例进行说明。
[0094] 如图2a和图2b所示,一种用户客群分类方法,具体流程可以如下:
[0095] 201、服务器采集多个用户的用户数据。
[0096] 例如,服务器具体可以从网络中采集各种类型用户的用户数据,或者,也可以由其他的采集设备对各种类型用户的用户数据进行采集,然后在需要使用该用户数据时,数据分类装置从该采集设备中进行获取,等等。
[0097] 其中,该用户数据可以包括多种用户行为类别的数据,比如,可以包括用户的帐号信息、社交信息、支付行为数据、娱乐休闲行为数据、教育行为数据、和/或其他网络行为数据等信息。
[0098] 202、服务器将采集到的用户数据进行清洗,得到数据样本集。
[0099] 其中,清洗的方式可以多种,比如“去除奇异点”、“补齐缺失值”、和/或“去掉重复采集的数据”,等等;即步骤“服务器将采集到的用户数据进行清洗,得到数据样本集”具体可以如下:
[0100] 服务器具体可以将该用户数据中的奇异点剔除,并将剩余的用户数据作为数据样本,添加至数据样本集中;
[0101] 或者,服务器也可以根据该用户数据确定本应采集但没有采集到数据,对没有采集到的数据赋予预设值(即赋默认值),然后,将采集到的用户数据和该赋值后的数据作为数据样本,添加至数据样本集中;
[0102] 又或者,服务器还可以将该用户数据中重复采集的数据进行剔除,并将剩余的用户数据作为数据样本,添加至数据样本集中,等等。
[0103] 需说明的是,该数据样本集的数据样本均为未标注的数据样本。
[0104] 203、服务器获取数据样本的用户行为类别,根据该用户行为类别对该数据样本集中的数据样本进行聚类运算,得到多个聚类。
[0105] 例如,服务器具体可以根据该用户行为类别,采用kNN或k-means算法等聚类算法对该数据样本集中的数据样本进行聚类运算,得到多个聚类;为了描述方便,在本实施例中,将均以最终聚成5类:聚类A、聚类B、聚类C、聚类D、以及聚类E为例进行说明,比如,具体可参见图2a。
[0106] 204、服务器从每个聚类中随机选择预定数量的数据样本进行人工标注,根据人工标注后的数据样本对预设的原始模型进行训练,得到初始分类模型。
[0107] 其中,训练时所采用的原始模型可以根据实际应用的需求进行设置,而该预定数量也可以根据实际应用的需求进行设置。
[0108] 例如,如图2a所示,如果总共需要挑选1000个数据样本,则此时,可以分别从聚类A、聚类B、聚类C、聚类D、以及聚类E等5个聚类中随机选择一定数量,如大约200个左右的未标注的数据样本进行人工标注,构成初始训练样本,然后,利用这些初始训练样本对预设的原始模型进行训练,得到初始分类模型。
[0109] 需说明的是,为了描述方便,可以将这些初始训练样本所在的集合称为初始训练样本集,该初始训练样本集中可以多个初始训练样本子集,每个初始训练样本子集对应一个聚类,比如,可以包括聚类A对应的初始训练样本子集、聚类B对应的初始训练样本子集、聚类C对应的初始训练样本子集、聚类D对应的初始训练样本子集、以及聚类E对应的初始训练样本子集,等等。其中,聚类A对应的初始训练样本子集可以包括聚类A对应的已标注的数据样本,聚类B对应的初始训练样本子集可以包括聚类B对应的已标注的数据样本,聚类C对应的初始训练样本子集可以包括聚类C对应的已标注的数据样本,聚类D对应的初始训练样本子集可以包括聚类D对应的已标注的数据样本,而聚类E对应的初始训练样本子集可以包括聚类E对应的已标注的数据样本,等等,具体可参见图2a,在此不再赘述。
[0110] 205、服务器采用步骤204中得到的初始分类模型对每个聚类中的数据样本的客群分类进行预测,根据预测结果计算相应数据样本的最大信息量。
[0111] 例如,参见图2a,还是以最终聚成聚类A、聚类B、聚类C、聚类D、以及聚类E为例进行说明,则此时,服务器可以采用初始分类模型分别对聚类A、聚类B、聚类C、聚类D、以及聚类E中的数据样本的客群分类进行预测,然后,根据预测结果分别计算相应数据样本的最大信息量。
[0112] 比如,以计算聚类A中的数据样本的最大信息量,且用户存在两种分类“学生”和“白领”为例,若聚类A中包括数据样本x1、x2和x3,则此时,服务器可以采用初始分类模型对数据样本x1、x2和x3的客群分类进行预测,若预测数据样本x1、x2和x3均可能属于“学生”,且该属于“学生”的概率分别为0.49、0.1和0.8,则可以通过如下公式分别算出x1、x2和x3的最大信息量:0.01、0.4和0.3。
[0113] 其中,L为初始训练样本集(即人工标注后的数据样本),C为一个或一组分类模型,Pr[x=1|L]为在初始训练样本集L上训练出来的分类模型C对数据样本预测为“学生”的概率值, 为使得 取得最小值的数据样本,U为未标注样本集(即该聚类中未标注的数据样本)。
[0114] 同理,对于聚类B、C、D和E中的数据样本的最大信息量,也可以采用上述方式进行计算,在此不再赘述。
[0115] 206、服务器对每个聚类进行筛选,得到待标注样本集。
[0116] 其中,该待标注样本集可以多个待标注样本子集,每个待标注样本子集对应一个聚类,比如,可以包括聚类A对应的待标注样本子集、聚类B对应的待标注样本子集、聚类C对应的待标注样本子集、聚类D对应的待标注样本子集、以及聚类E对应的待标注样本子集,等等。其中,A对应的待标注样本子集称为聚类A',B对应的待标注样本子集称为聚类B',C对应的待标注样本子集称为聚类C',D对应的待标注样本子集称为聚类D',D对应的待标注样本子集称为聚类D',具体可参见图2a。
[0117] 其中,筛选的方式可以有多种,例如,服务器具体可以根据最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集。
[0118] 其中,K为正整数,具体取值可以根据实际应用的需求进行设置。
[0119] 比如,以K为2为例,若在步骤205中,聚类A中有三个数据样本的最大信息量分别为:0.01、0.4和0.3,则按照不确定性从大到小进行排序,这三个数据样本的次序依次为:x1,x3,x2,由于K为2,因此,此时可以将确定性最大的前两个数据样本,即x1和x3添加至待标注样本集中的聚类A'中(即聚类A对应的待标注样本子集中)。
[0120] 同理,可以采用同样的方式从聚类B、C、D和E中选取最大信息量最大的前K个数据样本,分别添加至待标注样本集中的聚类B'、C'、D'和E'中。
[0121] 207、服务器计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度。
[0122] 例如,还是以聚类A为例,若该待标注样本集中(即该待标注样本集的聚类A对应的待标注样本子集中)包括数据样本x1、x3、x5、x6和x7,则此时,需要计算x1和x3的相似度、x1和x5的相似度、x1和x6的相似度、x1和x7的相似度、x3和x5的相似度、x3和x6的相似度、x3和x7的相似度、x5和x6、x5和x7、以及x 6和x7的相似度,即此时:
[0123] 这个聚类中数据样本x1的相似度为:x1和x3的相似度、x1和x5的相似度、x1和x6的相似度、以及x1和x7的相似度;
[0124] 聚类A中数据样本x3的相似度为:x1和x3的相似度、x3和x5的相似度、x3和x6的相似度、以及x3和x7的相似度;
[0125] 聚类A中数据样本x5的相似度为:x1和x5的相似度、x3和x5的相似度、x5和x6的相似度、以及x5和x7的相似度;
[0126] 聚类A中数据样本x6的相似度为:x1和x6的相似度、x3和x6的相似度、x5和x6的相似度、以及x5和x7的相似度;
[0127] 聚类A中数据样本x7的相似度为:x1和x7的相似度、x3和x7的相似度、x5和x7的相似度、以及x6和x7的相似度。
[0128] 需说明的是,在计算相似度时,可以先将数据样本的用户信息进行量化,转换为向量空间,然后,再用标准化欧氏距离、夹角余弦、以及相关系数等计算出相似度。
[0129] 比如,参见表一,每个聚类中的数据样本的相似度可以如下:
[0130] 表一:
[0131]数据样本 x1 x3 x5 x6 x7
x1 1 0.8 0.2 0.3 0.4
x3 0.8 1 0.6 0.7 0.8
x5 0.2 0.6 1 0.9 0.5
x6 0.3 0.7 0.9 1 0.3
x7 0.4 0.8 0.5 0.3 1
[0132] 需说明的是,在计算出相似度之后,可以根据得到的相似度设置一个阈值,高于该阈值的则认为两个数据样本高度相似,称为高度相似度。其中,该阈值可以根据实际应用的需求进行设置,比如,该阈值可以设置为0.6,等等。
[0133] 208、服务器根据该相似度对每个聚类中的冗余样本进行剔除(即进行去冗余操作),得到待训练样本集。
[0134] 其中,该待训练样本集可以包括多个待训练样本子集,每个待训练样本子集对应一个聚类,比如,可以包括聚类A对应的待训练样本子集、聚类B对应的待训练样本子集、聚类C对应的待训练样本子集、聚类D对应的待训练样本子集、以及聚类E对应的待训练样本子集,等等。其中,聚类A对应的待训练样本子集称为聚类A”,聚类B对应的待训练样本子集称为聚类B”,聚类C对应的待训练样本子集称为聚类C”,聚类D对应的待训练样本子集称为聚类D”,聚类E对应的待训练样本子集称为聚类E”,具体可参见图2a。
[0135] 其中,去冗余的方式可以由多种,例如,服务器具体可以获取相似度大于预设阈值的数据样本,得到候选集,然后,统计该候选集中每个数据样本所具有的高度相似度的数量,得到高度相似计数,并从该候选集中剔除高度相似计数最高的前N个数据样本,得到待训练样本集。
[0136] 其中,N为正整数,N的取值可以根据实际应用的需求而定。
[0137] 比如,以值大于0.6的相似度称为高度相似度为例,则根据表一可知,数据样本x1的高度相似计数为1,数据样本x3的高度相似计数为3,数据样本x5的高度相似计数为1,数据样本x6的高度相似计数为3,数据样本x7的高度相似计数为1,可见,其中数据样本x3的高度相似计数最高,若N为1,则此时,需要从该候选集中剔除数据样本x3,以得到待训练样本集,即此时待训练样本集可以包括数据样本x1、x5、x6和x7。
[0138] 209、服务器基于该待训练样本集进行分类模型训练。
[0139] 例如,参见图2a,服务器具体可以获取预设的初始分类模型,对该待训练样本集中的数据样本进行标注,然后,根据标注后的数据样本对该初始分类模型进行训练,得到训练后分类模型。
[0140] 其中,标注时可以采用人工标注,也可以由该服务器按照预设策略进行标注,在此不再赘述。
[0141] 需说明的是,原始模型、初始分类模型、以及训练后分类模型分别为同一“分类模型”在不同训练期间的表现形式,因此,为了描述方便,在图2a中,将原始模型、初始分类模型、以及训练后分类模型均表示为“分类模型”,应当理解的是,在不同的时间,该分类模型的表现形式可以有所不同。
[0142] 210、服务器根据训练后分类模型对待分类数据进行客群分类。
[0143] 例如,服务器可以获取待分类数据,将该待分类数据导入训练后分类模型中,以进行客群分类预测,然后,根据训练后分类模型输出的结果确定该待分类数据的客群分类,得到分类后数据,具体可参见图2a。
[0144] 比如,还是以用户存在两种分类“学生”和“白领”为例,则此时,可以将该待分类数据,比如待分类用户的帐号信息、社交信息、支付行为数据、娱乐休闲行为数据、教育行为数据、和/或其他网络行为数据等信息导入训练后分类模型中,然后,根据训练后分类模型输出的结果确定该待分类数据是“学生”对应的数据还是“白领”对应的数据,从而将相应的用户归类到相应的客群,比如“学生”或“白领”中。
[0145] 由上可知,本实施例在从采集到的用户数据中选择数据样本后,可以对这些数据样本进行聚类运算,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,然后,才基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;由于该方案在进行分类模型训练之前,先进行了聚类,然后,再分别从每个聚类中选择样本进行训练,所以,可以保证每个聚类中都有样本被选中进入到分类模型的训练样本中,最大程度上使分类模型能从每个聚类中去学习,覆盖样本预期分布,大大提高分类模型的准确率和泛化能力;此外,由于该方案可以对每个聚类中的数据样本进行去冗余操作,以剔除相似度高的冗余样本,使得可以尽可能减少标注相似的样本,因此,可以大大加快分类模型的收敛;总而言之,该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。
[0146] 实施例三、
[0147] 为了更好地实施以上方法,本发明实施例还提供一种数据分类装置,该数据分类装置具体可以集成在服务器,比如业务服务器等设备中。
[0148] 如图3a所示,该数据分类装置包括采集单元301、选择单元302、聚类单元303、去冗余单元304、以及分类单元305,如下:
[0149] (1)采集单元301;
[0150] 采集单元301,用于采集多个用户的用户数据。
[0151] 例如,该采集单元301可以从网络中采集各种类型用户的用户数据,或者,也可以由其他的采集设备对各种类型用户的用户数据进行采集,然后在需要使用该用户数据时,由采集单元301从该采集设备中进行获取,等等。
[0152] 其中,该用户数据可以包括多种用户行为类别的数据,比如,可以包括用户的帐号信息、社交信息、支付行为数据、娱乐休闲行为数据、教育行为数据、和/或其他网络行为数据等信息。
[0153] (2)选择单元302;
[0154] 选择单元302,用于按照预设策略从该用户数据中选择数据样本,得到数据样本集。
[0155] 其中,该预设策略可以根据实际应用的需求进行设置,例如,可以设置为“对用户数据进行清洗”。其中,清洗的方式可以多种,比如“去除奇异点”、“补齐缺失值”、和/或“去掉重复采集的数据”,等等。
[0156] (3)聚类单元303;
[0157] 聚类单元303,用于对该数据样本集中的数据样本进行聚类运算,得到多个聚类。
[0158] 例如,该聚类单元303,具体可以用于获取数据样本的用户行为类别,根据该用户行为类别对该数据样本集中的数据样本进行聚类运算,得到多个聚类。
[0159] 其中,该聚类算法也可以根据实际应用的需求而定,比如,可以采用kNN,或k-means算法等。
[0160] (4)去冗余单元304;
[0161] 去冗余单元304,用于分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集。
[0162] 例如,该去冗余单元304可以包括计算子单元和筛选子单元,如下:
[0163] 该计算子单元,用于分别计算每个聚类中的数据样本的相似度。
[0164] 该筛选子单元,用于根据该相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集。
[0165] 比如,该计算子单元,具体可以用于利用最大化信息量算法分别计算每个聚类中的数据样本的最大信息量,根据该最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集,计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度;其中,K为正整数。
[0166] 该筛选子单元,具体可以用于获取相似度大于预设阈值的数据样本,得到候选集,从候选集中筛选最大信息量满足预设条件的数据样本,得到待训练样本集;比如,可以统计该候选集中每个数据样本所具有的高度相似度的数量,得到高度相似计数,从该候选集中剔除高度相似计数最高的前N个数据样本,得到待训练样本集,等等。
[0167] 其中,计算该最大信息量的方式可以有多种,比如,可以如下:
[0168] 该计算子单元,具体可以用于采用预设的初始分类模型对每个聚类中的数据样本的客群分类进行预测,根据预测结果计算相应数据样本的最大信息量;比如,可以直接根据预测结果(如该用户属于某一分类的概率)计算相应数据样本的最大信息量,或者,也可以计算预测结果的置信度,然后,根据该置信度来计算相应数据样本的最大信息量,等等。
[0169] 其中,该初始分类模型可以由维护人员进行预设,也可以由该数据分类装置通过训练来得到,比如,可以从每个聚类中随机选择一定数量的数据样本进行人工标注,构成初始训练样本,然后,利用这些初始训练样本对预设的原始模型进行训练,得到初始分类模型;即,可选的,如图3b所示,该数据分类装置还可以包括模型建立单元306,如下:
[0170] 模型建立单元306,可以用于从每个聚类中随机选择预定数量的数据样本进行人工标注,根据人工标注后的数据样本对预设的原始模型进行训练,得到初始分类模型。
[0171] 则此时,计算子单元,具体可以用于采用模型建立单元得到的初始分类模型,对每个聚类中的其他未进行人工标注的数据样本的客群分类进行预测。
[0172] 其中,训练时所采用的原始模型可以根据实际应用的需求进行设置,而该预定数量也可以根据实际应用的需求进行设置,在此不再赘述。
[0173] (5)分类单元305;
[0174] 分类单元305,用于基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。
[0175] 例如,该分类单元305,具体用于获取预设的初始分类模型,对该待训练样本集中的数据样本进行标注,根据标注后的数据样本对该初始分类模型进行训练,得到训练后分类模型,获取待分类数据,将该待分类数据导入训练后分类模型中,得到输出结果,根据该输出结果确定该待分类数据的客群分类。
[0176] 具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的实施例,在此不再赘述。
[0177] 由上可知,本实施例的数据分类装置在从采集到的用户数据中选择数据样本后,可以有聚类单元303对这些数据样本进行聚类运算,并由去冗余单元304分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,然后,才由分类单元305基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;由于该方案在进行分类模型训练之前,先进行了聚类,然后,再分别从每个聚类中选择样本进行训练,所以,可以保证每个聚类中都有样本被选中进入到分类模型的训练样本中,最大程度上使分类模型能从每个聚类中去学习,覆盖样本预期分布,大大提高分类模型的准确率和泛化能力;此外,由于该方案可以对每个聚类中的数据样本进行去冗余操作,以剔除相似度高的冗余样本,使得可以尽可能减少标注相似的样本,因此,可以大大加快分类模型的收敛;总而言之,该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。
[0178] 实施例四、
[0179] 本发明实施例还提供一种服务器,如图4所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
[0180] 该服务器可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0181] 处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
[0182] 存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
[0183] 服务器还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0184] 该服务器还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
[0185] 尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
[0186] 采集多个用户的用户数据,该用户数据包括多种用户行为类别的数据,按照预设策略从该用户数据中选择数据样本,得到数据样本集,对该数据样本集中的数据样本进行聚类运算,得到多个聚类,分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类。
[0187] 其中,去冗余的方式可以有多种,例如,可以分别计算每个聚类中的数据样本的相似度,根据该相似度对每个聚类中的冗余样本进行剔除,得到待训练样本集。
[0188] 比如,可以利用最大化信息量算法分别计算每个聚类中的数据样本的最大信息量,根据最大信息量从每个聚类中选取不确定性最大的前K个数据样本,得到待标注样本集,计算待标注样本集中两两数据样本之间的相似度,得到每个聚类中的数据样本的相似度,获取相似度大于预设阈值的数据样本,得到候选集,统计该候选集中每个数据样本所具有的高度相似度的数量,得到高度相似计数,从该候选集中剔除高度相似计数最高的前N个数据样本,得到待训练样本集,等等。
[0189] 以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0190] 由上可知,本实施例的服务器在从采集到的用户数据中选择数据样本后,可以对这些数据样本进行聚类运算,并分别对每个聚类中的数据样本进行去冗余操作,得到待训练样本集,然后,才基于该待训练样本集进行分类模型训练,并根据训练后分类模型对待分类数据进行客群分类;由于该方案在进行分类模型训练之前,先进行了聚类,然后,再分别从每个聚类中选择样本进行训练,所以,可以保证每个聚类中都有样本被选中进入到分类模型的训练样本中,最大程度上使分类模型能从每个聚类中去学习,覆盖样本预期分布,大大提高分类模型的准确率和泛化能力;此外,由于该方案可以对每个聚类中的数据样本进行去冗余操作,以剔除相似度高的冗余样本,使得可以尽可能减少标注相似的样本,因此,可以大大加快分类模型的收敛;总而言之,该方案不仅可以大大加快分类模型的收敛,而且可以提高分类模型的准确率和泛化能力,有利于提高数据分类的效率。
[0191] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
[0192] 以上对本发明实施例所提供的一种用户客群分类方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。